Reputation: 4924
I'm authoring a vocab currently and would like to suggest a range for a property to give users as hint what resources they could use.
I currently specify an rdfs:range
for the property but this is too restrictive.
Upvotes: 1
Views: 90
Reputation: 2285
The vocabulary Schema.org defines/uses the property schema:rangeIncludes
:
Relates a property to a class that constitutes (one of) the expected type(s) for values of the property.
This property merely gives a hint to authors and consumers; it doesn’t apply rdfs:range
:
schema:rangeIncludes a rdf:Property ;
rdfs:label "rangeIncludes" ;
rdfs:comment "Relates a property to a class that constitutes (one of) the expected type(s) for values of the property." ;
schema:domainIncludes schema:Property ;
schema:isPartOf <https://meta.schema.org> ;
schema:rangeIncludes schema:Class .
FWIW, Schema.org adds this disclaimer to their meta terms:
They are not currently advocated for widespread use across the web.
Upvotes: 1
Reputation: 4886
rdfs:range
restricts nothing. Just because you've stated that some property P
has a range V
does not mean when you assert data :a :P :b
that b
has to be of type V
. It can, in fact, be anything.
If you hook a reasoner up, in the aforementioned case, it will tell you that b
is a V
due to the range assertion, but it will not complain that you've done anything wrong or violated any condition.
Upvotes: 0