Although never explicitly mentioned in the IM, the Vocab (i.e. ontology) defines all types of rules and all types of policies as being mutually disjoint (which was also briefly touched upon in #247) .
and while that arguably makes sense for e.g. some types of rules (as pointed out by @vroddon #247 (comment)):
Another example we have always had in the spec is the disjointness between Permission, Prohibition and Duty. I don't see how can a Permission be a Prohibition a the same time, for example.
it doesn't for certain policy types or ones added by profiles, e.g.:
http://w3c.github.io/poe/model/#policy-set
For the examples in this document, the ODRL Policy subclasses are mapped to the JSON-LD @type tokens. The above example could have also used
Policy
type instead ofSet
type (as they are equivalent).
-> odrl:Policy owl:equivalentClass odrl:Set
https://w3c.github.io/poe/vocab/#term-Agreement
Parent class: Policy
-> odrl:Agreement rdfs:subClassOf odrl:Policy
Disjoint classes: Assertion, Offer, Privacy, Request, Set, Ticket
-> odrl:Agreement owl:disjointWith odrl:Set, ...
=>odrl:Agreement owl:disjointWith odrl:Set, odrl:Policy, ...
odrl:Agreement rdfs:subClassOf odrl:Set, odrl:Policy .
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.3