From: Ian Horrocks ([email protected])
Date: 05/16/01
Dan,
DAML+OIL can express this already. e.g., for UniqueProperty:
<daml:Class rdf:about="#Family">
<rdfs:subClassOf>
<daml:Restriction daml:maxCardinality="1">
<daml:onProperty rdf:resource="#surName"/>
</daml:Restriction>
</rdfs:subClassOf>
</daml:Class>
(i.e., every instance of Family has at most one name), and for
UnambiguousProperty:
<daml:Class rdf:about="#Thing">
<rdfs:subClassOf>
<daml:Restriction daml:maxCardinalityQ="1">
<daml:onProperty>
<daml:inverseOf rdf:resource="#surName"/>
</daml:onProperty>
<daml:hasClassQ rdf:resource="#Family"/>
</daml:Restriction>
</rdfs:subClassOf>
</daml:Class>
(i.e., every instance of Thing is the surName of at most 1 Family).
Please forgive any syntax errors (was going to try n3 but didn't have
time to check out the necessary details).
Note that I am not commenting on whether or not DAML+OIL needs to
provide this idiom directly.
Ian
On May 16, Dan Connolly writes:
> Just like we make a domain-dependent version
> of RDF's range, I'd like UniqueProperty
> and UnambiguousProperty to be domain-dependent;
> i.e. make them into properties that relate
> a property to a class.
>
> So I could say
>
> :surName ont:unambiguousOver :Family.
>
> This has come up before in my work; oh yeah...
> I specified it pretty carefully a while ago...
>
> [[[
> unambiugousOver is a class-specific form of daml:Unambiguous; in the
> style of the DAML+OIL axiomatic semantics, the following is a
> specification for
> it:
>
> (<=> (PropertyValue ?p unambiguousOver ?c)
> (forall (?x ?y ?v)
> (=> (and (Type ?x ?c) (Type ?y ?c)
> (PropertyValue ?p ?x ?v)
> (PropertyValue ?p ?y ?v))
> (= ?x ?y)))))
> ]]]
>
> -- Using XML Schema Datatypes in RDF and DAML+OIL
> http://www.w3.org/2001/01/ct24
> Thu, 15 Feb 2001 22:23:12 GMT
>
> --
> Dan Connolly, W3C http://www.w3.org/People/Connolly/
This archive was generated by hypermail 2.1.4 : 04/02/02 EST