-
Notifications
You must be signed in to change notification settings - Fork 17
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Refine refinements #312
Comments
Hi @joshcornejo |
Hard to recall from March what was the source of the issue, but I think the problem (at least for me) is that JSON has implicit/invisible/unnamed nodes (which create some confusion). I am trying to clarify what would be the proper way of articulating the refinement (as I am only refining the party/asset/action in the context of the rule).
|
Not Simon's SHACL, but I've found this
As I suspected (because it was also my understanding), it looks from the above that the model assumes that an odrl:Asset and odrl:AssetCollection are not references to an Asset, but to an envelop that lives within the policy and the refinement modifies the Asset.
In this case, this is going to sprawl a lot of IRI and duplication happens when ex:ActualParty now has other roles
|
If I consider a JSON Policy as just a piece of text to be interpreted, there is "no problem", as JSON doesn't have the concepts of explicit linkage and the content is effectively just text. If you want to represent the policy in JSON-LD or RDF (a semantic graph), now there is an IRI to represents your target/action/function as a unique node in that graph. I can't see how to reference this example with the current properties (2 permissions, one prohibition needs refinement on the asset). I have internal intermediary nodes to represent the duality between refined and unrefined:
That intermediary node deals with the treatment of the (xone - from the SHACL), but leaves me with a weird choice on the output (in RDF):
|
Continuing my analysis: If I slightly modify examples 14 and 15 (to use the same action and same constraint/refinement)
Is there an equivalent dereferencing for an Asset or Party?
|
In section 2.5, the diagram:
The relationship "refinement" from [Party Collection | Asset Collection | Action ] implies a bounded relationship between the target/assignee/action and the constraint/logical constraint.
Since applying the Constraint is inherent to the Rule defining/using it (only applicable in the context of the Rule?), the relationship between the source/action, Rule, and the Constraint should (for clarity) be separated.
I propose that a better illustration of the relationship is (illustrating with the party collection):
(IMHO, would recommend to create more examples with explicit naming references to nodes, having only implicit names and unravelled definitions might mislead the reader).
Submitted by @joshcornejo
The text was updated successfully, but these errors were encountered: