odrl:partOf / dcterms:hasPart
I think it misses or should have owl:equivalentProperty
Current definition:
#odrl
:partOf
a rdf:Property , owl:ObjectProperty, skos:Concept ;
rdfs:isDefinedBy odrl: ;
rdfs:label "Part Of"@en ;
skos:definition "Identifies an Asset/PartyCollection that the Asset/Party is a member of."@en ;
rdfs:domain [
a owl:Class ;
owl:unionOf ( :Asset :Party ) ;
] ;
rdfs:range [
a owl:Class ;
owl:unionOf ( :AssetCollection :PartyCollection ) ;
] .
Proposed change:
:partOf
a rdf:Property , owl:ObjectProperty, skos:Concept ;
owl:equivalentProperty dct:hasPart ; # <-----
rdfs:isDefinedBy odrl: ;
rdfs:label "Part Of"@en ;
skos:definition "Identifies an Asset/PartyCollection that the Asset/Party is a member of."@en ;
rdfs:domain [
a owl:Class ;
owl:unionOf ( :Asset :Party ) ;
] ;
rdfs:range [
a owl:Class ;
owl:unionOf ( :AssetCollection :PartyCollection ) ;
]
That would connect seamlessly the different properties in DCAT/DPROD and ODRL for traversal.
Too early (in the day) to know if rdfs:subPropertyOf would work better.
It is probably not equivalent due to the different definitions: DC: "A related resource that is included either physically or logically in the described resource." ODRL: "Identifies an Asset/PartyCollection that the Asset/Party is a member of"
subPropertyOf would suffice.
But is it an "errata" ?
OWL, RDF ... Inclusion ... member ... perhaps too finicky.
IMHO, every "member" (of a Collection) is "included" physically or logically in the described resource.
The property
rdfs:subPropertyOfis an instance of rdf:Property that is used to state that all resources related by one property are also related by another.
"related" ... inclusion ... member ... it is just ether.
Either way, to work seamlessly with the likes of DCAT's "included references that are also members" for refinements, an easy mechanism to infer relationships should be available - otherwise there will be duplication and unnecessary overheads.