-
Notifications
You must be signed in to change notification settings - Fork 7
Open
Description
Eg Person.owl has this:
<owl:ObjectProperty rdf:about="http://ontology.eil.utoronto.ca/icity/Person/SchemaOrgProperty">
<dc:description>Added for organizational purposes, to capture the properties reused from Schema.org. Notice that since we cannot import schema.org we must manually reference the individual IRIs.</dc:description>
</owl:ObjectProperty>
<owl:ObjectProperty rdf:about="http://schema.org/address">
<rdfs:subPropertyOf rdf:resource="http://ontology.eil.utoronto.ca/icity/Person/SchemaOrgProperty"/>
<dc:description>Physical address of the item.</dc:description>
</owl:ObjectProperty>
<owl:ObjectProperty rdf:about="http://ontology.eil.utoronto.ca/icity/Person/hasIncome">
<rdfs:subPropertyOf rdf:resource="http://ontology.eil.utoronto.ca/icity/Person/PersonOntologyProperty"/>
</owl:ObjectProperty>If you use RDFS, a repository would have to infer from every instance of the specific props hasIncome and address,
an instance of the "organizational" props PersonOntologyProperty and SchemaOrgProperty.
A forward-chaining repo like GraphDB will have to infer actual new triples.
But one would never use the "organizational" props for querying, so this is wasteful.
- Use
rdfs:isDefinedByto find all props defined by an ontology - Use
rdfs:domain :Person(which is monomorphic) orschema:domainIncludes :Person(which is polymorphic) to find all props that apply to:Person
Using "organizational props" may make a nice hierarchy in Protege, but is not a good thing to use on real data.
Note: I'm not against super-properties in general. Eg schema:identifier has sub-props, which has a useful competency question: "find by any identifier".
Metadata
Metadata
Assignees
Labels
No labels