Giter Site home page Giter Site logo

w3c / poe Goto Github PK

View Code? Open in Web Editor NEW
23.0 20.0 18.0 20.12 MB

Permissions & Obligations Expression WG

License: Other

HTML 45.62% JavaScript 0.32% Makefile 9.49% PHP 9.55% CSS 0.37% CMake 1.41% Roff 4.98% Shell 7.41% M4 0.43% C 19.52% Perl 0.64% Yacc 0.27%
odrl

poe's Introduction

Permissions & Obligations Expression WG

Documents produced by the Permissions & Obligations Expression WG of the W3C.

See also a paged view of the documents served in HTML.

If you are member of the working group, and you wish to contribute to the content of this repo, please contact Ivan Herman ([email protected]), giving him your github login.

poe's People

Contributors

bact avatar benedictws avatar deldrarim avatar dontcallmedom avatar dret avatar iherman avatar nevali avatar nitmws avatar riannella avatar sereabi avatar simonstey avatar stuartmyles avatar vroddon avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

poe's Issues

Add RDF/OWL Encoding section

Add the RDF/OWL encoding section (parts/rdfowl.html).
Anything that is not covered in Vocab section and specific to RDF/OWL encodings.

Check Policy Types

Review each policy type and ensure covers the correct semantics and any constraints.

Add license example

Add the below to the RDF/OWL encoding section (it was par of the Set example)

Because all of the rules associated with this policy have the same target, and do not have any constraints or duties (requirements), one may abbreviate the expression of the policy and use the Dublin Core rights or license predicates to associate the asset with that policy:

@Prefix odrl: http://www.w3.org/ns/odrl/2/ .
@Prefix dct: http://purl.org/dc/terms/ .

http://example.com/asset:9898 dct:license http://example.com/policy:0099 .

http://example.com/policy:0099
a odrl:Set;
odrl:permission odrl:reproduce ;
odrl:prohibition odrl:modify .

Clarify Duty obligation

Need to clarify that Duties must be performed but when (at what point in time) is not specified (by default).

Updated Figure

Create an updated Figure (Section 4) that shows the vocabulary structure

Ontology status property

Do we need the "status" property for each and all of the ontology terms?
The status is reflected at the spec-level.
Suggest we remove them.

JSON examples

All of the JSON examples (except the first) do not show up in the Scenarios section

Documentation properties

We currently use rdfs:comment to capture both the definition and comment from the original ODRL Vocabulary spec.
I propose we now use:
skos:definition for the definition
skos:scopeNote for the comments

Support JSON-LD

We will support JSON-LD serialisation (not current JSON as in V2.1) as close as possible to ODRL Ontology.
Update spec. required.

Permission cardinality

Section 2 says that "an ODRL Policy must contain at least one Permission" but the UML model shows 0..*

Ordering of the contents of the Vocab section

Here is a proposed ordering of the Vocab section:
1 - Model Concepts
2 - Policy Types
3 - Actions for Permissions/Prohibitions
4 - Actions for Duties
5 - Constraints
6 - Constraint Operators
7 - Party Roles
8 - Party Scopes
9 - Asset Relations
10 - Deprecated Concepts

How to do this from the owl ontology?
For classes we can group them into SKOS collections.
For properties?
For individuals?

Versioning of the Encodings

Since we have not completed the final use case and requirements analysis, we are yet to determine if the final ODRL will be a significant change to V2.1 - and maybe backwards incompatible.

For now, we can refer to all encodings as Version 2.2 until we make the final call.

Clarify/Revise outlined semantics of Extended Relations

I've some concerns with the outlined semantics of Extended Relations as defined in Section 6.1 [1].

For example, for Permissions and Prohibitions it reads as follows:

Permission

OR The related party may perform any (at least) one of the Actions
AND The related party MUST perform all of the Actions
XOR The related party MAY perform only one of the Actions

  1. I would argue that by granting someone the permission to perform a certain action does NOT imply that respective party MUST actually perform permitted action. The Assignee is permitted to do it, but doesn't have to.

Prohibition

OR The related party MAY NOT perform at least one of the Actions
AND The related party MAY NOT perform all of the Actions
XOR The related party MAY NOT perform only one of the Actions

  1. There is no definition of "MAY NOT" in RFC 2119 (afaik).
  2. Apart from (1), "MAY NOT" doesn't reflect the intended semantics of, e.g., AND-ed Prohibitions (imho). E.g., if someone is prohibited to neither print nor display a certain asset, that person MUST NOT perform actions print AND display on a certain asset. (cf. SHOULD NOT)

Besides that, I'm actually wondering whether there's any use case that would motivate/require AND-/OR-/XOR-ing Permissions/Prohibitions?

[1] https://w3c.github.io/poe/model/#extended-relations
[2] https://tools.ietf.org/html/rfc2119

ODRL Profiles

Move section to new Top-level Section (to show its importance).
Update the narrative

Concept Table visual look

Need to decide on the visual look of the table describing each concept.
Two options are attached.
Feedback and other options welcome
screen shot 2016-06-14 at 12 53 11
screen shot 2016-06-14 at 12 53 20

Update Vocab terms names and Inheritance in Model

At the TPAC meeting, I took the action [1] to look at some of the minor suggestions published in this ODRL review paper [2].

I recommend we adopt the following changes to the Vocabulary terms (as label changes, not the URI):

undefined: handle Undefined Actions
support: support Undefined Actions
ignore: ignore Undefined Actions
invalid: invalidate Policy

conflict: handle Policy Conflicts
perm: prefer Permissions
prohibit: prefer Prohibitions

I recommend the following changes to the ODRL Information Model:

1 - update the narrative with the new wording described above.
2 - update thge Policy Class (in the UML Diagram Figure 1) and make the inheritFrom attribute an Association (pointing to itself) and the inheritRelation attribute as an Association Class linked to this new Association.

[1] https://www.w3.org/2016/poe/track/actions/26
[2] http://subs.emis.de/LNI/Proceedings/Proceedings220/3081.pdf

Deprecation predicate

Should we use owl:deprecated predicate (instead of ont:deprecatedBy)?
And is rdf:nil the appropriate value for a concept deprecated (but not by another concept)
Should we also remove (ontological) links to deprecated terms?

vCard Ref

Update vCard ref to W3C vCard Ontology spec (as this has URIs to use) and consistent with Vocab spec

Add Appendices for XML/JSON Schemas

Add two Appendices to read in the XML and JSON schemas and show them for human-readability.
They can also be linked directly from the document (as it is now).

Vocabulary naming

Ensure that the Label used for the terms do not differ just in case (eg Action, action) as this will not meet I18N requirements.

Ontology constraints/restrictions

We should look at defining some of the ontology entities (eg the Policy Types) with more constraints that reflect their semantics. eg Agreement class must have assigner and assignee, etc.
We should look into using SHACL as well, were appropriate.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.