Search Mailing List Archives


Limit search to: Subject & Body Subject Author
Sort by: Reverse Sort
Limit to: All This Week Last Week This Month Last Month
Select Date Range     through    

[protege-discussion] Protege - OWL compatible software tool

Jonathan Carter jonathan.carter at e-asolutions.com
Wed Jul 9 02:57:17 PDT 2008


Hi Deepti,

On your first question, I think it's important to note that you are  
representing knowledge here and not building Java classes. Personally,  
I often find that I model my classes in a somewhat OO fashion, so the  
less specific things tend to be Abstract with 'leaf' classes as  
concrete. However, this isn't always the case and I think it depends  
on your domain as to what's important. So, in the example you mention,  
this reflects real life. I find a useful heuristic is to think about  
whether it makes sense to have instances of that class. So, yes, we  
want to have instances of Person, but we want to use Employee as a  
generalisation over the specific types of employee that a Person could  
be.
In summary, I think the use of Abstract and Concrete classes is even  
more diverse than being in reverse to the normal OO approach. From a  
class model perspective, then can be used arbitrarily, it depends on  
how you need to work with the instances of your classes and the  
semantics that you wish to model.

The second question, yes sounds like the right use of the inverse- 
slot. So you have 2 classes that you wish to be able to relate by  
using a slot of type Instance. On the Faculty class you add a slot  
that allows Instances of Student class (probably multiple cardinality)  
called, e.g. 'students' and you define an inverse slot on 'students'.  
You can have Protege create this inverse slot automatically - in which  
case it will create a slot on the Student class called 'inverse-of- 
students'. You can then rename this to something more meaningful, such  
as 'taught_by'. The nice thing about the inverse slot is that when you  
define the Faculty that a student is taught by, that Student instance  
appears in the 'students' slot of the selected Faculty instance - and  
vice versa.
HOWEVER, a word of caution on the inverse slots. These are defined at  
the slot level between the slots, not the classes and Protege doesn't  
always do what you'd expect when you use inheritance with the classes.  
What it does allow you to do is to override the types of classes, for  
example, that are allowed in these slots in sub-classes. HOWEVER, I've  
recently found it important to understand that what you can't do is  
change or override the inverse slot at the sub-class. A slot can have  
only 1 inverse slot. This is worth considering when implementing your  
class inheritance hierarchy.

Hope this helps

Jonathan
__________________________________________
Jonathan Carter - Head of Technical Architecture
Enterprise Architecture Solutions Ltd
__________________________________________

Assess your EA maturity at:
www.enterprise-architecture.com/EAvaluator
__________________________________________

On 9 Jul 2008, at 10:28, Deepti Misra wrote:

>
>
>    Dear community
>
>   I am an engineering student working on my summer project and  
> trying to understand and create   ontology using protege .
>
> Can anyone help me in understanding the following issues :
>
> 1)  NewsPAper example available with protege download indicates  
> Employee class (Abstract) is subclass of Person(Concrete).  In my  
> understanding superclasses are usually treated as Absract and more  
> we more down (specialises), the abstraction reduces and concreteness  
> increases. Here, it is in reverse order! Why it is so ?
>
> 2. I have two classes Faculty and Student in my project ontology. .  
> Now, the relation....Faculty "teaches" student and Student is  
> "taught-by" faculty. Is it 'right' application of inverse property ?
> How do I  input it using  Protege-editor ?
>
> Sorry for raising too trivial a query..
>
> Deepti
>
>
>
>
>
> On 7/9/08, Tania Tudorache <tudorache at stanford.edu> wrote:
> Berkan,
>
> Please ask Protege-OWL related questions on the protege-owl mailing  
> list.
>
> Thanks!
> Tania
>
>
> berkan sesen wrote:
> > Dear Community,
> >
> > I use many Universal and Existential restrictions in my ontology to
> > specify constraints on various object properties:
> >
> > E.g. "ClassA" isRelatedto some "ClassB"
> >
> > Is it possible to use Racer/Java/Any tool to automatically infer  
> from
> > the restriction above that if I have an individual of "ClassA", it
> > should have isRelatedto relationship with at least one "ClassB"
> > individual?
> >
> > I am looking for a tool by which I can enforce this restriction
> > without writing an explicit query (A tool that understands what
> > Protege-OWL is talking about, indeed). Can Racer (or any other tool)
> > "semantically" understand this axiom and do a consistency check on  
> the
> > individuals of the given classes?
> >
> > Any replies will be immensely appreciated.
> >
> > Thank you,
> > Berkan Sesen
> >
> >  
> ------------------------------------------------------------------------
> > Not happy with your email address?
> > Get the one you really want <http://uk.docs.yahoo.com/ymail/ 
> new.html>
> > - millions of new email addresses available now at Yahoo!
> > <http://uk.docs.yahoo.com/ymail/new.html>
> >  
> ------------------------------------------------------------------------
> >
> > _______________________________________________
> > protege-discussion mailing list
> > protege-discussion at lists.stanford.edu
> > https://mailman.stanford.edu/mailman/listinfo/protege-discussion
> >
> > Instructions for unsubscribing: http://protege.stanford.edu/doc/faq.html#01a.03
> >
>
> _______________________________________________
> protege-discussion mailing list
> protege-discussion at lists.stanford.edu
> https://mailman.stanford.edu/mailman/listinfo/protege-discussion
>
> Instructions for unsubscribing: http://protege.stanford.edu/doc/faq.html#01a.03
>
> _______________________________________________
> protege-discussion mailing list
> protege-discussion at lists.stanford.edu
> https://mailman.stanford.edu/mailman/listinfo/protege-discussion
>
> Instructions for unsubscribing: http://protege.stanford.edu/doc/faq.html#01a.03

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mailman.stanford.edu/pipermail/protege-discussion/attachments/20080709/23e015b6/attachment.html>


More information about the protege-discussion mailing list