[poe] XML Schema design

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

== XML Schema design ==
Having a look a the XML Schema https://github.com/w3c/poe/blob/gh-pages/vocab/ODRL22.xsd of 2 June and trying to take the position of an ODRL newbie:

* In general: why is the naming of elements so different from the JSON shown in the Information Model document? XML has no target, assigner, assignee etc. It looks like the XML schema sets of focus on the classes and asserts a subclass by an attribute. But the Rule class does not appear, only its subclasses Prohibition and Permission - why only these two. (yes, I'm aware that their structure is different - but hard to get for a newbie.)
This makes it hard for an implementer to get familiar with both serializations.
* why is the root element Policy in upper case but all of its children in lower case - does this show any basic difference between them?
* the child choice of Policy claims there must be at least 1 of the children - but that doesn't reflect the Information Model: it claims - see #188 - a policy must have at least 1 permission or prohibition. For the XML Schema a policy with only an asset is ok.
* constraint has xs:ID as datatype of @id. @name (= leftOperand) has anyURI. But a string being a valid xs:ID does not have to be a valid xs:anyURI. In a Compound Constraint the name has to refer to a constraint by its (u)id - that does not fit -> **Bug**!
* constraint @rightOperand has a datatype odrl:listOfValues being a list of xs:string. A URI should fit into that - but why can multiple rightOperand values be applied to the constraint in XML? A bug?

Basic question: must the POE/ODRL XML Schema be close to or even compatible with the ODDRL 2.1 Schema, or would it be possible to rename elements and attributes to names used in the Information Model and in JSON.

Sub-question: did anybody check the backward compatibility of the POE/ODRL XML Schema against the ODRL 2.1 schema. Major issues are if ODRL 2.1 features are not supported by POE/ODRL.


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

Received on Monday, 19 June 2017 14:11:19 UTC