- From: Sean B. Palmer <sean@mysterylights.com>
- Date: Tue, 12 Jun 2001 01:45:14 +0100
- To: <www-rdf-logic@w3.org>
Concerning the following RDF Schema issue:-
[[[
Issue rdfs-subPropertyOf-semantics: The inheritance semantics of the
subPropertyOf relationship needs to be clarified.
raised Wed, 14 Jun 2000 by Michel Klein
Summary: The semantics of the subPropertyOf relationship is not clear
with respect to the inheritance of domain and range constraints.
Currently: for discussion
]]] - http://www.w3.org/2000/03/rdf-tracking/
This is a very interesting point: often, people will want to specify a
subClassOf rdf:Property, and then assert that this group of properties
has a certain range and domain; which will be easier than labelling
each property one by one, and will end up with a class of these
properties which can be added to or referred to at will.
This assertion can already be made with logic:-
@prefix : <#>
@prefix log: <http://www.w3.org/2000/10/swap/log#> .
{ { :x a :MyPropClass .
:MyPropClass rdfs:subClassOf rdf:Property }
log:implies
{ :x rdfs:domain :MyDomain; rdfs:range :MyRange } }
a log:Truth; log:forAll :x .
So I think it would be fitting if the RDF Core WG would consider
adding two properties to RDF Schema, to point to the range and domain
of a subClassOf rdf:Property.
:MyPropClass rdfs:instanceDomain :MyDomain .
:MyPropClass rdfs:instanceRange :MyRange .
i.e. that:-
{ { :MyPropClass rdfs:instanceDomain :MyDomain }
log:implies
{ :MyPropClass rdfs:subClassOf rdf:Property .
:x a :MyPropClass; rdfs:domain :MyDomain } }
a log:Truth; log:forAll :MyPropClass , :MyDomain , :x .
and:-
{ { :MyPropClass rdfs:instanceRange :MyRange }
log:implies
{ :MyPropClass rdfs:subClassOf rdf:Property .
:x a :MyPropClass; rdfs:range :MyRange } }
a log:Truth; log:forAll :MyPropClass , :MyRange , :x .
and that:-
@prefix sws: <http://www.w3.org/2001/03swell/finiteSet#>.
rdfs:instanceDomain
rdfs:domain [ sws:setOf rdf:Property ];
rdfs:range rdfs:Class .
rdfs:instanceRange
rdfs:domain [ sws:setOf rdf:Property ];
rdfs:range rdfs:Class .
Hey, DanC's sws:setOf property [1] came in handy! Perhaps that should
be added to RDF Schema/DAML+OIL (leave that for another day).
[1] sws:setOf rdfs:label "set of";
rdfs:comment "for setOf(C, E) read: C is the class of finite sets of
E.";
rdfs:range rdfs:Class;
rdfs:domain sws:Set;
a dpo:UniqueProperty, dpo:UnambiguousProperty.
--
Kindest Regards,
Sean B. Palmer
@prefix : <http://webns.net/roughterms/> .
:Sean :hasHomepage <http://purl.org/net/sbp/> .
Received on Monday, 11 June 2001 20:46:35 UTC