W3C home > Mailing lists > Public > semantic-web@w3.org > October 2005

Re: owl:Thing and RDF

From: Ivan Herman <ivan@w3.org>
Date: Fri, 28 Oct 2005 15:07:57 +0200
Message-ID: <436222AD.8090200@w3.org>
To: Hans Teijgeler <hans.teijgeler@quicknet.nl>
Cc: 'Frank Manola' <fmanola@acm.org>, semantic-web@w3.org, "Paap, Onno" <onno.paap@ezzysurf.com>

-------- Original Message --------
From: "Hans Teijgeler" <hans.teijgeler@quicknet.nl>
To: "'Frank Manola'" <fmanola@acm.org>
CC: "'Herman, Ivan'" <ivan@w3.org>, semantic-web@w3.org, "Paap, Onno"
Subject: Re:owl:Thing and RDF
Date: 28/10/2005 08:08

> Thanks, Frank, it is crystal clear to me now.
> I hope Ivan agrees.

Yep... this is, indeed, a question of taste and readability. For outside user of
a large RDF dataset using owl:Thing may make things (sic!) easier to read and
comprehend. I tend to avoid to much implicit knowledge in these syntactical
choices, but that may be only me.


> Hans
> ===========================================
> -----Original Message-----
> From: semantic-web-request@w3.org [mailto:semantic-web-request@w3.org] On
> Behalf Of Frank Manola
> Sent: Thursday, October 27, 2005 11:36 PM
> To: Hans Teijgeler
> Cc: Herman, Ivan; semantic-web@w3.org
> Subject: Re: owl:Thing and RDF
> Hans--
> See embedded comments below.
> Hans Teijgeler wrote:
>>Hi Frank and Ivan,
>>Thank you for your responses!
>>Two opinions, and this poor newbie must make a choice, where he had
>>hoped for a solution:
>>Ivan Herman wrote:
>>I think that
>>- if you use OWL Full, then owl:Thing is equivalent to rdf:Resource, you
>>can't be more general than that:-)
>>- if you use OWL DL or Lite, than you *have* to use owl:Thing, this is
>>the way you identify individuals
>>Ie: the safe bet is to use owl:Thing. You do not loose anything and, if
>>at some point you have a smaller ontology that turns out DL or Lite,
>>then you are all set.
>>Just my personal opinion...
>>Frank Manola wrote:
>>Hi Hans--
>>I'm probably not the most reliable guide on OWL dialects, and I'm not
>>sure I fully understand what you're doing.  However, I don't see the
>>need to use owl:Thing explicitly at all.  My understanding is, if you
>>create a user-defined OWL class, e.g.,
>><owl:Class rdf:ID="UserDefinedClass"/>
>>or as a triple
>>ex:UserDefinedClass rdf:type owl:Class  .
>>then UserDefinedClass is implicitly a subclass of owl:Thing;  you need
>>not say anything else.  Then, if you create an instance myInstance and
>>type it as a member of that OWL class, e.g.,
>>ex:myInstance rdf:type ex:UserDefinedClass  .
>>then myInstance is implicitly an instance of owl:Thing.  This is true in
>>any of the OWL dialects.
>>Since both seem OK to me, the question arises why this is possible at
>>all. Why has the SW been made so complex? Time for a clean-up?
> I'm not sure I understand your concern.  If the problem is that there
> are equivalent ways to say the same thing in the SW, and you expect
> there to be only one way, I don't think that's a very realistic
> expectation if the SW is to get anywhere expressing reasonably complex
> things.  After all, there are certainly lots of ways to say the same
> thing in English (or Dutch, or C), right?
>>Frank, if I would follow Ivan's advice, and typically use something
>>explicit like:
>>    <owl:Thing rdf:ID="PHO-387392"/>
>>    <owl:Thing rdf:about="#PHO-387392">
>>        <rdf:type
>>        <rdfs:label>Joe Blogg</rdfs:label>
>>    </owl:Thing>
>>do you see any REAL disadvantage (other than the neglect of RDF)? Given
>>the fact that we use OWL very rigorously by superimposing the ISO
>>15926-2 data model, clearly and consistently distinguishing individuals
>>from classes by using owl:Thing seems to fit in that rigor (or rigour,
>>if you want).
> Perhaps I'm missing something (or I didn't explain myself very well),
> but I don't really understand the dilemma.  Of course you can use the
> syntax above (and I don't really think that it "neglects" RDF in any
> awful way!).  The only possible disadvantage I see is extra syntax.
> There is an example in Section 3.1.2 of the OWL Guide
> (http://www.w3.org/TR/owl-guide/) that seems to exactly parallel your
> example.  In that example, the Guide notes that, in defining an
> instance, the syntax
>    <Region rdf:ID="CentralCoastRegion" />
> is exactly equivalent in meaning to
>    <owl:Thing rdf:ID="CentralCoastRegion" />
>    <owl:Thing rdf:about="#CentralCoastRegion">
>       <rdf:type rdf:resource="#Region"/>
>    </owl:Thing>
> Thus it seems to me that instead of writing your example
>     <owl:Thing rdf:ID="PHO-387392"/>
>     <owl:Thing rdf:about="#PHO-387392">
>        <rdf:type
>    rdf:resource="http://www.iso15926.org/part2/2003-12#PhysicalObject"/>
>        <rdfs:label>Joe Blogg</rdfs:label>
>     </owl:Thing>
> you could write it instead as something like:
>    <iso:PhysicalObject rdf:ID="PHO-387392">
>       <rdfs:label>Joe Blogg</rdfs:label>
>    </iso:PhysicalObject>
> (where iso: is the namespace prefix that gives you the rest of the full
> ISO URI).  This is a typical RDF "typed node" abbreviation, and it works
> the same way in OWL (as an RDF language).  This is what I meant by
> saying I didn't see the need to use owl:Thing explicitly.
> I'm assuming that http://www.iso15926.org/part2/2003-12#PhysicalObject
> is already defined as an OWL class, since your original message spoke of
> rdf:typing the instances with the applicable OWL classes.  That being
> the case, if you define the instance as an instance of that OWL class,
> the OWL semantics specify that it's also an instance of owl:Thing,
> without you having to explicitly say so.  Thus as I see it the issue
> isn't about whether or not you want to be rigorous in distinguishing
> instances from classes (doing so is always a good idea), it's about
> whether or not you want to take advantage of built-in OWL semantics to
> simplify the syntax you write.
> However, as I said above, I may be missing something, and it won't hurt
> to write owl:Thing explicitly if you want.
>>We have to work with IDs like PHO-387392 anyway, since we deal with more
>>than 20,000 classes and hundreds of thousands of individuals (all the
>>things that make up an entire oil refinery, and the components thereof,
>>and the process streams). We had a discussion about naming, and rejected
>>human-understandable names. What would be the human-understandable name
>>for a Ford Focus with a wide (not yet made) selection of engines,
>>colors, accessories, etc? And what if that selection has been made?
> No problem.  Lots of things are identified (for given applications) by
> non-human understandable names (very few people refer to me in
> conversation by my drivers license number, although the Registry of
> Motor Vehicles insists that I have one anyway).
> Cheers.
> --Frank


Ivan Herman
W3C Communications Team, Head of Offices
C/o W3C Benelux Office at CWI, Kruislaan 413
1098SJ Amsterdam, The Netherlands
tel: +31-20-5924163; mobile: +31-641044153;
URL: http://www.w3.org/People/Ivan/

Received on Friday, 28 October 2005 13:08:09 UTC

This archive was generated by hypermail 2.4.0 : Tuesday, 5 July 2022 08:44:54 UTC