inferred classes vs SQWRL

classic Classic list List threaded Threaded
2 messages Options
Reply | Threaded
Open this post in threaded view
|

inferred classes vs SQWRL

aros
Hi,

I would like to aks help about using inferred classes or SQWRL to obtain
information from my ontologies.

Assume that I have the pizza example and I want to obtain all the pizzas that
contain tomatoe. Is is better to create a new class where the condition "has
tomatoe" is stated and the caculate the inferred model or is it better to use a
SQWRL query where all the pizzas that contain tomatoe are returned?

Thanks

Ana

 

_______________________________________________
protege-owl mailing list
[hidden email]
https://mailman.stanford.edu/mailman/listinfo/protege-owl

Instructions for unsubscribing: http://protege.stanford.edu/doc/faq.html#01a.03
Reply | Threaded
Open this post in threaded view
|

Re: inferred classes vs SQWRL

Thomas Russ

On Feb 18, 2011, at 4:37 AM, Ana wrote:

> Hi,
>
> I would like to aks help about using inferred classes or SQWRL to obtain
> information from my ontologies.
>
> Assume that I have the pizza example and I want to obtain all the pizzas that
> contain tomatoe. Is is better to create a new class where the condition "has
> tomatoe" is stated and the caculate the inferred model or is it better to use a
> SQWRL query where all the pizzas that contain tomatoe are returned?

Ultimately this comes down to a design decision, since you could go either way.

For inference, my general preference would be to use OWL whenever you can reasonably write OWL constructs that will do the inference you want.  And then use SWRL rules to handle inferences that go beyond the expressive power of OWL.  That gives you maximum portability to other systems.

For queries it is a bit less clear.  I would think that you would only want to create new OWL constructs in the ontology if the query concept is one that you expect to be generally useful and for which you could think up a name.  In effect, what you are doing through the query process is identifying additional terms or abstractions that it would make sense to include in the ontology.  For transient queries -- looking for terms that you don't think are generally useful and don't want to reuse -- I would go with SQWRL since it doesn't involve adding anything to the ontology.

=Tom Russ

_______________________________________________
protege-owl mailing list
[hidden email]
https://mailman.stanford.edu/mailman/listinfo/protege-owl

Instructions for unsubscribing: http://protege.stanford.edu/doc/faq.html#01a.03