subclassing examples

Hi Everyone,

So, my task before the next meeting is to take a stab at the OWL  
answer to the issues posed here....

http://lists.w3.org/Archives/Public/public-xg-emotion/2008Feb/0003.html

....the focal aspect of the question at that URL, I copy here...

In each case, it should be possible for John to indicate clearly where
he is taking his labels from, so that it is possible to verify that his
documents are valid with respect to the specification.
Ideally, it should not be necessary to define new "dialects" of the
language as we had done with EARL [1], but it would be sufficient to
refer to a set of categories or dimensions, which *instantiate* or
*subclass* a generic concept of "EmotionML category set" or "EmotionML
dimension set".

....So, one way we can do The RIght Thing is to have different  
namespaces.  Specifically we might have a bunch of owl files each  
with their own namespace like so....

(a) generic.owl -- this file would contain very generic ontology  
components.  For example it would have
a class called EmotionMLCategorySet and a class called  
EmotionMLDimensionSet.

(b) big-six-categories.owl -- this file would contain "Big Six"  
classes.  These would be a "Big Six" inspired taxonomy consisting of  
subclasses corresponding to anger, fear, sadness, surprise, disgust,  
joy appropriately arranged such that every one subclasses  
EmotionMLCategorySet.

(c) fontaine-dimensions.owl -- this file would contain Fontaine et  
al's dimensions, evaluation, potency,
activation, unpredictability.  I suspect that each of these would  
have a corresponding owl property.  Each such property would be an  
instance-of EmotionMLDimensionSet.  Hrm, on second thought I want to  
think about that more.  Doing it that way, I *think* (I'll verify  
later on Wed) would take us out of OWL-DL and into OWL-Full.  Is this  
a big deal?  The answer to this question is kind of like asking a  
person from the USA whether Republicans or Democrats are evil (i.e.  
you will get emphatic answers and contradictory answers depending on  
who you ask).  I might be able to find a way out of OWL-Full.

(d) subway-emotions.owl -- subclasses of EmotionMLCategorySet  e.g.  
relaxed, friendly etc.

(e) custom-dimensions.owl --things that refer to socially-open,  
degree-of-time-pressure (whether as owl properties or what).

Further, all will import (a).

(d) markup.owl  -- This is where John will actually store his markup  
assertions.  E.g. he might assert that "line 25 of document 6  
contains the big 6 emotion Fear."

.......So, how does John know in some markup where he is taking his  
labels from?  Well, he would look through markup.owl and look at the  
namespace prefix in front of each markup thing.  E.g. in front of a  
reference to Fear he would see the namespace label for (b) big-six- 
catgories.owl.

Secondly, how would John verify that everything was valid?  Well, you  
can use an owl validator, like vowlidator (spelling?, check google).   
If you e.g. referred to Fear invalidly by associating it with the  
namespace for, say, subway-emotions.owl, the vowlidator would let you  
know!  If you were using protege, I doubt you'd be able to make such  
a blasphemous assertion.

Is this a step in the right direction?  Am I given at least a fuzzy  
answer to the original question?

What next?  I suppose it would be best to spell this out with a  
working bit of owl code, run it through the vowldidator and prove  
that it screams "Invalid" when I predict it should?   (And of course  
I should make up my mind regarding the OWL-DL vs OWL-Full technical  
issue too).

Am I correct in thinking what I should do next?  (If so, I will try  
to address this before we meet).

Bill 

Received on Wednesday, 27 February 2008 08:59:37 UTC