W3C home > Mailing lists > Public > public-owl-dev@w3.org > October to December 2009

Re: Inference of class type based on keyword and Modeling data types

From: Thomas Schneider <schneidt@cs.man.ac.uk>
Date: Tue, 29 Dec 2009 12:21:22 +0100
Message-Id: <D4E53205-9AAE-4CC3-9447-ABAB0B81E2B7@cs.man.ac.uk>
To: public-owl-dev@w3.org
Hi Sundar,

On 29 Dec 2009, at 11:11, Saiprasad, Sundar wrote:

> Hi
>
> This is what I want to achieve
>
> Assume I have the following defined
>
> Test:Animal rdf:type owl:Class
> Test:hasKeyword rdf:type owl:DatatypeProperty
> Test:hasKeyword rdf:domain Test:Animal
> Test:hasKeyword rdf:range  xsd:string
> Test:Carnivore  rdfs:subclassof Test:Animal
> Test:Carnivore rdfs:subClassOf [ a owl:Restriction ;
>                                  Owl:onProperty  Test:hasKeyword ;
>                                  Owl:hasValue "Lion" ]

Please note that your last statement says: "everything that is a  
carnivore has a keyword 'Lion'".

> Now if I have the following instance
>
> Test:animal1234  rdf:type Test:Animal
> Test:animal1234  Test:hasKeyword  "Lion"
>
> I would like to infer Test:animal1234 rdf:type Test:Carnivore. This  
> didn’t work for me. Am I missing something?

This only works if the above statement is the other way round:  
"everything that has a keyword 'Lion' is a carnivore".

> I would like to extend this further by having a set of strings  like  
> an enumerated type (For example , lion , tiger , wolf etc) as  
> defined in xsd and if the keyword matches one of it , the  
> corresponding type should get inferred. I would expect a change like  
> the following to support it :
> Test:Carnivore rdfs:subClassOf [ a owl:Restriction ;
>                                  Owl:onProperty  Test:hasKeyword ;
>                                  Owl:someValuesFrom  user-defined- 
> datatype that has the enumeration of all keywords ]
>
> If the data contains Test:animal1234  Test:hasKeyword “wolf”  , then  
> it should infer Test:animal1234 rdf:type Test:Carnivore
>
> Is this possible and if it is can it be modeled?

But why do you want to model "being a lion" via "has a keyword  
'Lion'"? Why not have classes Lion, Tiger etc., of which animal1234  
may or may not be an instance?

Cheers

Thomas

>
>
> How do I model such a user defined data type and refer to it?
>
>
> Thanks
> Sundar
>

+----------------------------------------------------------------------+
|  Dr Thomas Schneider                    schneider (at) cs.man.ac.uk  |
|  School of Computer Science       http://www.cs.man.ac.uk/~schneidt  |
|  Kilburn Building, Room 2.114                 phone +44 161 2756136  |
|  University of Manchester                                            |
|  Oxford Road                                             _///_       |
|  Manchester M13 9PL                                      (o~o)       |
+-----------------------------------------------------oOOO--(_)--OOOo--+

Skagway (n.)
   Sudden outbreak of cones on a motorway.

                   Douglas Adams, John Lloyd: The Deeper Meaning of Liff





Received on Tuesday, 29 December 2009 11:21:55 GMT

This archive was generated by hypermail 2.3.1 : Wednesday, 27 March 2013 09:32:57 GMT