W3C home > Mailing lists > Public > www-webont-wg@w3.org > April 2003

Re: qualified restrictions - syntax proposal

From: Ian Horrocks <horrocks@cs.man.ac.uk>
Date: Thu, 24 Apr 2003 21:56:26 +0100
Message-ID: <16040.20346.417931.469414@merlin.horrocks.net>
To: Jeremy Carroll <jjc@hpl.hp.com>
Cc: www-webont-wg@w3.org

I would much prefer a simple extension of the existing restriction
syntax, e.g., in S&AS change

   'cardinality(' non-negative-integer ')'

to

   'cardinality(' non-negative-integer description ')'

and arrange for the mapping of

   restriction(P cardinality(n C))

into triples to be

   <owl:Restriction>
      <owl:onProperty rdf:resource="#p"/>
      <owl:cardinality rdf:datatype="http://www.w3.org/2001/XMLSchema#nonNegativeInteger">1</owl:cardinality>
      <owl:?Q rdf:resource="#c"/>
   </owl:Restriction>

where ?Q could be some new property we invent for the purpose
(Jeremy's valuesFrom seems suitable), or we could simply re-use
someValuesFrom.

For a non-qualified restriction, simply write

   restriction(P cardinality(n owl:Thing))

which maps into triples as

   <owl:Restriction>
      <owl:onProperty rdf:resource="#p"/>
      <owl:cardinality rdf:datatype="http://www.w3.org/2001/XMLSchema#nonNegativeInteger">1</owl:cardinality>
      <owl:?Q rdf:resource="http://www.w3.org/2002/07/owl#Nothing"/>
   </owl:Restriction>

Ian



On April 24, Jeremy Carroll writes:
> 
> Add to the language:
> owl:QualifiedRestriction
> and
> owl:valuesFrom
> 
> 
> 1: Unqualified restrictions
>    - cardinality, maxCardinality, minCardinality
> 
> all unchanged
> 
> 2: Qualified cardinaltiy restrictions
> 
> <owl:QualifiedRestriction>
>   <owl:onProperty>
>      <owl:ObjectProperty rdf:about="#foo"/>
>   </owl:onProperty>
>   <owl:cardinality rdf:datatype="&xsd;int">3</owl:cardinality>
>   <owl:valuesFrom>
>      <owl:Class rdf:about="#bar"/>
>   </owl:valuesFrom>
> </owl:QualifiedRestriction>
> 
> 
> <owl:QualifiedRestriction>
>   <owl:onProperty>
>      <owl:DatatypeProperty rdf:about="#foo"/>
>   </owl:onProperty>
>   <owl:minCardinality rdf:datatype="&xsd;int">3</owl:cardinality>
>   <owl:valuesFrom>
>      <owl:DataRange>
>  ... ugly ..
>      </owl:DataRange>
>   </owl:valuesFrom>
> </owl:QualifiedRestriction>
> 
> etc.
> 
> 3. someValuesFrom and allValuesFrom changed to use owl:QualifiedRestricition 
> e.g
> 
> <owl:QualifiedRestriction>
>   <owl:onProperty>
>      <owl:ObjectProperty rdf:about="#foo"/>
>   </owl:onProperty>
>   <owl:someValuesFrom>
>      <owl:Class rdf:about="#bar"/>
>   </owl:someValuesFrom>
> </owl:QualifiedRestriction>
> 
> <owl:QualifiedRestriction>
>   <owl:onProperty>
>      <owl:DatatypeProperty rdf:about="#foo"/>
>   </owl:onProperty>
>   <owl:allValuesFrom rdf:resource="&xsd;byte"/>
> </owl:QualifiedRestriction>
> 
> So QualifiedRestricitions have either 3 child elements or 2 child elements.
> Jeremy
> 
> 
Received on Thursday, 24 April 2003 15:56:24 GMT

This archive was generated by hypermail 2.2.0+W3C-0.50 : Monday, 7 December 2009 10:57:58 GMT