Domains and Ranges, based on Why the encapsulation?

Hello Danny, Michael, Emanuele, and the rest of you subcribers,

I have a recurrent question, inspired again by the "Why the 
encapsulation?" discussion:

I have been told, by more than one source, that domains and ranges should 
*not* be used in (up to) 99% of the cases.  The preference is to use 
restrictions, due to issues with reuse and  inheritance (among others?). 
I'm curious whether subscribers to this list agree.

I have tried to follow this approach, but it seems that I am often 
defining properties that *really* apply only to one domain class and one 
range class, so I use domain and range, violating this "99% rule".

Thanks,
Jim 





"Michael Schneider" <schneid@fzi.de> 
Sent by: public-owl-dev-request@w3.org
09/23/2007 01:15 PM

To
"Danny Ayers" <danny.ayers@gmail.com>
cc
"Emanuele D'Arrigo" <manu3d@gmail.com>, "public-owl-dev-request@w3.org" 
<public-owl-dev@w3.org>
Subject
RE: Why the encapsulation?






Hi, Danny!

>-----Original Message-----
>From: Danny Ayers [mailto:danny.ayers@gmail.com] 
>Sent: Sunday, September 23, 2007 7:19 PM
>To: Michael Schneider
>Cc: Emanuele D'Arrigo; public-owl-dev-request@w3.org
>Subject: Re: Why the encapsulation?
>
>On 23/09/2007, Michael Schneider <schneid@fzi.de> wrote:
>
>> ><owl:ObjectProperty rdf:ID="hasBankAccount">
>> > <rdfs:domain>
>> >       <owl:Class rdf:about="#Person"/>
>> >       <owl:Class rdf:about="#Corporation"/>
>> > </rdfs:domain>
>>
>> This is simply a syntax error: You have to give a /single/ 
>resource to the
>> 'rdfs:domain' property, but you put in /two/ of them.
>
>I'm curious, would I be missing something in saying:
>
><owl:ObjectProperty rdf:ID="hasBankAccount">
>    <rdfs:domain rdf:resource="#Person"/>
>    <rdfs:domain rdf:resource="#Corporation"/>
></owl:ObjectProperty>
>
>- is ok syntax, but the meaning would be different, in that the object
>of an hasBankAccount statement in this case would be both a Person and
>a Corporation, rather than a Person and/or a Corporation in the union
>version?

Right! In this case, this is then the intersection of the two domains. It 
is
explained in the RDF primer at:

  http://www.w3.org/TR/rdf-primer/#properties

There is an example given, similar to yours:

  exterms:weight   rdfs:domain   ex:Book .
  exterms:weight   rdfs:domain   ex:MotorVehicle .

And the text explains:

  "If exterms:weight has more than one domain property, 
  say one specifying ex:Book as the domain and another one 
  specifying ex:MotorVehicle as the domain, this says that 
  any resource that has a exterms:weight property is an 
  instance of all of the classes specified as the domains, 
  i.e., that any resource that has a exterms:weight property 
  is both a ex:Book  and a ex:MotorVehicle (illustrating 
  the need for care in specifying domains and ranges)."

Cheers,
Michael

--
Dipl.-Inform. Michael Schneider
FZI Forschungszentrum Informatik Karlsruhe
Abtl. Information Process Engineering (IPE)
Tel  : +49-721-9654-726
Fax  : +49-721-9654-727
Email: Michael.Schneider@fzi.de
Web  : http://www.fzi.de/ipe/eng/mitarbeiter.php?id=555

FZI Forschungszentrum Informatik an der Universität Karlsruhe
Haid-und-Neu-Str. 10-14, D-76131 Karlsruhe
Tel.: +49-721-9654-0, Fax: +49-721-9654-959
Stiftung des bürgerlichen Rechts
Az: 14-0563.1 Regierungspräsidium Karlsruhe
Vorstand: Rüdiger Dillmann, Michael Flor, Jivka Ovtcharova, Rudi Studer
Vorsitzender des Kuratoriums: Ministerialdirigent Günther Leßnerkraus

Received on Monday, 24 September 2007 04:48:42 UTC