[poe] IM wording for class relationships

nitmws has just created a new issue for https://github.com/w3c/poe:

== IM wording for class relationships ==
Going over the [Information Model (IM) document](https://w3c.github.io/poe/model) I notice that the wording of relationships between classes is not clear and/or inconsistent.

1. Is RDF the data model behind the IM? No clear statement about it anywhere. But [1.2 Conformance](https://w3c.github.io/poe/model/#conformance) tells "The examples throughout the document are serialized as [json-ld]" and many examples use properties from the rdfs: namespace - my conclusion: the IM builds on RDF (and it would help to write this down), and my suggestion: RDF terms should be used.
2. Among the key "building blocks" of ODRL only Policy is named as Class in the headline, all others not but [2. ODRL Information Model](https://w3c.github.io/poe/model/#infoModel) claims all are classes. My suggestions: name Asset, Party, Action, Rule and Constraint as ... Class in the headline and in the free-text definition ...
3. ... and do the same for subclasses like Set, Offer, Agreement, AssetCollection, PartyCollection, Permission, Prohibition and Duty.
4. ... and do something equivalent for the definition of properties like Relation, PartOf, ...: add Property already to the headline.
4. open issue: are the Atomic Constraint class and the Compound Constraint class a subclass of Constraint or independent classes? ("subclass" does not occur in 2.6 Constraint)
5. Properties of a class: from the Policy class down to the Compound Constraint class all classes have a list of properties with this heading "The .... class has the following properties:" - that's good.
6. How the properties are defined is inconsistent. Many of the Github issue discussions show a need for a/ a definition of the cardinality of the property in the (domain) class and b/ a definition of the class(es) a property establishes a relationship to (the Range in RDF terms).
Example: the Rules class defines "... must have an Action via the action property" and "... may have one or more Parties via a sub-property of the function property" - my assumption was "a single action property only, but many e.g. assignees", but that's contradicted in 2.7 Policy Rule Composition.
7. "containing" classes: e.g.  section [2.7 Policy Rule Composition](https://w3c.github.io/poe/model/#composition) says "A Policy may **contain** multiple Rules, and each Rule may contain multiple Assets, Parties, Actions, Constraints, and Duties." Sorry, but what is the **contain** property or is this meant "A Policy may contain Rules by permission and prohibition properties ..."? 
As in RDF a relationship between classes can only be established by a property this must be reflected in the normative wording of the IM.
8. ... therefore this statement in 2.7 is unclear: "A Policy may also contain Assets, Parties, and Actions at the Policy level, ..." by which properties, please? The [list of properties of Policy Class](https://w3c.github.io/poe/model/#policy) does not include a single property for this purpose. But in e.g. example 26 an "assigner" is shown at the top level. 



Please view or discuss this issue at https://github.com/w3c/poe/issues/200 using your GitHub account

Received on Friday, 23 June 2017 10:42:40 UTC