- From: Antoine Zimmermann <antoine.zimmermann@emse.fr>
- Date: Wed, 07 Mar 2012 09:00:12 +0100
- To: Sarven Capadisli <info@csarven.ca>
- CC: Linking Open Data <public-lod@w3.org>
If you care about what the OWL spec says and don't want to write something invalid (or inconsistent), you first have to distinguish between OWL DL and OWL Full. In OWL Full, everything is an instance of owl:Thing. Classes, Properties, Literals, Datatypes, etc are instances of owl:Thing. Even owl:Thing itself is an instance of owl:Thing. That is to say that owl:Thing is equivalent to rdfs:Resource. So, owl:sameAs can be used for anything. Which does not mean that it should! In OWL DL, there are restrictions but since OWL 2 is standard, it's been more complicated. owl:Thing does not contain classes. So, in principle, owl:sameAs must not be used to relate an individual to a class. But OWL 2 introduced the idea of "punning" which says that you can use a *class name* as an *individual name*. So, for example, this is legal in OWL 2 DL (Turtle syntax): :c a owl:Class . :x a :c . :x owl:sameAs :c . The fact is that :c on line 2 is a class, while :c on line 3 is an individual. Morever, :c on line 2 and :c on line 3 have absolutely no semantic relationship. They simply have the same name. But again, it's not because it's allowed that it is necessarily good. Now, if you really *need* to say that :a owl:sameAs :b, then by all means do. But remember that this means that :a and :b *is* only one individual. If you don't need to assert this identity, maybe it's better using something like skos:exactMatch. If your application does not treat owl:sameAs in any special way (e.g., you use an OWL reasoner, or you display the owl:sameAs link in a special way) then you really don't need owl:sameAs. If you are doing something special for the owl:sameAs predicate, you have to be conscious of the implications. In any case, there is no problem having a skos:Concept of type owl:Thing in either OWL DL or OWL Full. A skos:Concept is not necessarily a class. AZ Le 07/03/2012 07:43, Sarven Capadisli a écrit : > Hi, > > I'm sure this is talked somewhere, I'd love a pointer if you know any: > > I often see resources of type owl:Class get paired with resources of > type owl:Thing using owl:sameAs. As far as I understand, this is > incorrect since domain and range of owl:sameAs should be owl:Thing. > > I'm tempted to change my resource that is a skos:Concept > skos:exactMatch'ed with a resource of type owl:Thing, and use > owl:sameAs. Sort of like "everyone else is doing it, it should be okay", > and "don't need to fear the thought police". > > However, I don't wish to do that with a clear conscience, hence, I'd > appreciate it if anyone can shed some light here for me and help me > understand to make an informed decision based on reason (no pun intended). > > Related to this, I was wondering whether it makes sense to claim a > resource to be of type owl:Class as well as of type owl:Thing, where may > be appropriate, or one could get away with it e.g., a country. If this > is okay, I imagine it is okay to use owl:sameAs for the subject at hand > and point to yet another thing. > > Thanks all. > > -Sarven > > -- Antoine Zimmermann ISCOD / LSTI - Institut Henri Fayol École Nationale Supérieure des Mines de Saint-Étienne 158 cours Fauriel 42023 Saint-Étienne Cedex 2 France Tél:+33(0)4 77 42 83 36 Fax:+33(0)4 77 42 66 66 http://zimmer.aprilfoolsreview.com/
Received on Wednesday, 7 March 2012 08:00:40 UTC