Re: OWL mismatch example: Taxonomies VS. the semantic web?

Morten Christensen (mortench2003@yahoo.dk) schrieb am 10.09.2003:
> <CabernetSauvignonGrape
>    rdf:ID="SomeSpecificArticleAboutCabernetSauvignonGrape" />

>This change facilities use of commonly available OWL Lite 
>reasoners to answer all relevant classification questions, 
>including “which articles exists that is about WineGrape ?”
>(answer: SomeSpecificArticleAboutCabernetSauvignonGrape).

hmm. wouldn't the only question you can ask a reasoner be:
"which articles exist that ARE_A WineGrape?"?
In order to be able to ask "is_about" you would need an 
ObjectProperty beforehand to relate two things plus a class
definition for "Article".
but i guess, that is just what you are saying: 
people may not use predicates but subclass-axioms to
relate things, leading to something like:

- Grape
   - WineGrape
      - CabernetSauvignonGrape
         - RestaurantsThatServeCabernetSauvignon

To be honest, this is such an obvious misuse of not only 
subClassOf but of the whole OWL language that I don't think
that modelers will really go that way. And it will be hard
to use a "commonly available" OWL editor as well: imagine
you want to add separate class for books and websites (e.g.
in order to automatically generate a link to amazon or a 
link to the website, depending on the type of the information
object). Where do you add these classes in your taxonomy?:

- Grape
   - WineGrape
      - CabernetSauvignonGrape
         - RestaurantThatServesCabernetSauvignon
            - Book
            - Website

this would mean, that any book IS_A Restaurant (or 
"is_about" a Restaurant using your semantics). o.k. wrong,
let's put it higher, directly into Grape. 

- Grape
   - Book
   - Website
   - WineGrape
      - CabernetSauvignonGrape
         - RestaurantThatServesCabernetSauvignon

now our owl editor will not let us add a book
to the Restaurant "classification" because "Book" is not
a subClassOf "RestaurantThatServesCabernetSauvignon". 
Sure, we did not think enough. Any individual we add will
be an information object. we have to set "Book" as root 
node. and "Website" as well:

- InfoObject
   - Book
      - Grape
         - WineGrape
            - CabernetSauvignonGrape
               - RestaurantThatServesCabernetSauvignon
   - Website
      - Grape
         - WineGrape
            - CabernetSauvignonGrape
               - RestaurantThatServesCabernetSauvignon

what does the reasoner see? Any Instance of "Grape" is_a 
"Book". And: any instance of "Grape" is_a "Website". so
any information object (that "is_about" "Grape") will 
say: "I'm both a book and a website".

So I conclude (maybe I'm wrong): Reasoners will only return
proper results if the underlying technology is used the way
it's meant to. You will not be able to set up a satisfying
application when you for instance import or link to the
wine ontology and then assert "Book" subClassOf "Grape" or
"Grape" subClassOf "Book". You would be forced to quickly
adjust your taxonomy and would then probably use classes 
such as "GrapeTopic", "WineGrapeTopic" and 
"InformationObject" and attach a property "isAbout"
to your InformationObject instances.

You might say: "Bad example. I only have one type of 
information object. The reasoner works perfectly well. 
Many people will use OWL just this way. The Semantic Web
gets a big problem."

I think we won't get a problem either because if you only
have one type of instance, then your taxonomy is valid.
You just labeled your classes in a way that leads to 
confusion. Rewritten taxonomy:

- InfoObject
     InfoObjectAboutGrape
         InfoObjectAboutWineGrape
            InfoObjectAboutCabernetSauvignonGrape
               ...

All the way nice "isSublassOf" relations...


And I surely missed the point completely, right?

anyway, greetinx ;-)
bnjmn

Received on Wednesday, 10 September 2003 14:50:57 UTC