- From: Guus Schreiber <schreiber@cs.vu.nl>
- Date: Wed, 23 Apr 2003 23:14:04 +0100
- To: "Peter F. Patel-Schneider" <pfps@research.bell-labs.com>
- CC: WebOnt WG <www-webont-wg@w3.org>
Peter F. Patel-Schneider wrote: > From: Mike Dean <mdean@bbn.com> > Subject: Re: Case for Reinstatement of Qualified Cardinality Restrictions > Date: Wed, 23 Apr 2003 12:28:41 -0700 > > >>>>Agreed. I normally use multiple Restrictions with the same >>>>value for onProperty. >>> >>>If you are doing this in the RDF encoding you are going to be unpleasantly >>>surprised. >> >>Perhaps I should clarify with an example >> >> <owl:Class rdf:ID="Person"> >> <rdfs:subClassOf> >> <owl:Restriction> >> <owl:onProperty rdf:resource="#father"/> >> <owl:allValuesFrom rdf:resource="#Person"/> >> </owl:Restriction> >> </rdfs:subClassOf> >> <rdfs:subClassOf> >> <owl:Restriction> >> <owl:onProperty rdf:resource="#father"/> >> <owl:cardinality>1</owl:cardinality> >> </owl:Restriction> >> </rdfs:subClassOf> >> </owl:Class> >> >>Why is this a problem? >> >> Mike > > > Sorry, I misread what you said. Your solution is fine. What doesn't work > is > > <owl:Class rdf:ID="Person"> > <rdfs:subClassOf> > <owl:Restriction> > <owl:onProperty rdf:resource="#father"/> > <owl:allValuesFrom rdf:resource="#Person"/> > <owl:cardinality>1</owl:cardinality> > </owl:Restriction> > </rdfs:subClassOf> > </owl:Class> > Agreed, but my and Jeff's point was: you cannot produce these triples from the abstract syntax. Whenn I wa rewriting this part of Reference, I ws first confused about this, so I checked wuth you and others and my conclusion (wrong?) was that one restriction instance should have exactly one "onProperty" triple and exactly one constraint triple. Acordingly, Reference Sec. 3.1 states: [[ Property restrictions have the following general form: <owl:Restriction> <owl:onProperty rdf:resource="(some property)" /> (precisely one value or cardinality constraint, see below) </owl:Restriction> ]] At some point a started writing an alternative version of owl.owl, using OWL itlsef (instead of RDF schema) to define OWL. Maybe I should finish this excercise. Here is a relevant fragment from this alternative owl.owl file: [[ <rdfs:Class rdf:ID="Restriction"> <rdfs:label>Restriction</rdfs:label> <rdfs:subClassOf rdf:resource="#Class"/> <rdfs:subClassOf> <Restriction> <onProperty rdf:resource="#onProperty"/> <cardinality rdf:datatype="&xsd;nonNegativeInteger;">1</cardinality> </Restriction> </rdfs:subClassOf> <rdfs:subClassOf> <Restriction> <onProperty rdf:resource="#propertyConstraint"/> <cardinality rdf:datatype="&xsd;nonNegativeInteger;">1</cardinality> </Restriction> </rdfs:subClassOf> </rdfs:Class> ]] where "propertyConstraint is defined elsewhere as a superclass of the various value and cardinality consraints. Guus > > peter > -- NOTE: new affiliation per April 1, 2003 Free University Amsterdam, Computer Science De Boelelaan 1081a, 1081 HV Amsterdam, The Netherlands Tel: +31 20 444 7739/7718 E-mail: schreiber@cs.vu.nl Home page: http://www.cs.vu.nl/~guus/ [under construction]
Received on Wednesday, 23 April 2003 18:14:02 UTC