Models¶
This specification is leveraging several existing models for its architecture. Those will be reused later in the document.
Nesting and recursive models
The models used here can be used recursively and can be nested, to adapt to the various needs without having to envision all the possible domain specific usecases.
ArchiMate®¶
The model is inspired by the ArchiMate 3 metamodel, and most specifically, by:
-
Passive Structure Element which is manufactured/grown by
Producers
, likeData Product
. -
External Behaviour Element which is made available by
Providers
, likeService
. -
Active Structure Elements which are used to detail
Service
composition.
Provider and Producer
Passive Structure Element, like a Data Product
from a Data Product Producer
, can only be accessed via an External Behavior Element, like a Service
operated by a Service Provider
.
Provider and Producer
As a consequence of the above definition, should there be compliance rules for Data Product
exchange, those rules shall apply to the Service
and Service Provider
too.
As general notes:
- Data is static, is does nothing by itself.
- To be stored, transfered or processed, data require services as actively running software or computer code.
- Policies, access controls, monitoring, auditing, \(\dots\) can only be performed on services
Each of the Resource, Service Offer, Request and Agreement has attached Rules
Open Digital Rights Language Information Model¶
This section is rather short but extremely important and the reader is highly encouraged to read the linked ODRL specifications.
Policy expression language
This specification recommends to use ODRL Information Model and ODRL Vocabulary to express policies.
The policies are directly expressed and embedded in VC(s) as rules and can be about:
Data Product
andService
access and usage policies- requests, data offers and agreements
- basic regulatory policies
- VC terms of use, rights delegation between parties
The specific attribute names to store policies are specified in this ecosystem Ontology.
ODRL as intermediate language¶
flowchart LR
eFlint --> ODRL
Cicero --> ODRL
LegalRuleML --> ODRL
t1["..."] --> ODRL
ODRL --> Rego
ODRL --> Ergo
ODRL --> IAM
ODRL --> SPARQL
ODRL --> t2["..."]
Extra reading
ODRL Policy Modelling and Compliance Checking
De Vos, M., Kirrane, S., Padget, J., Satoh, K. (2019). ODRL Policy Modelling and Compliance Checking. In: Fodor, P., Montali, M., Calvanese, D., Roman, D. (eds) Rules and Reasoning. RuleML+RR 2019. Lecture Notes in Computer Science(), vol 11784. Springer, Cham. https://doi.org/10.1007/978-3-030-31095-0_3
Using Semantic Web Technologies and Production Rules for Reasoning on Obligations and Permissions
Fornara, N., Chiappa, A., Colombetti, M. (2019). Using Semantic Web Technologies and Production Rules for Reasoning on Obligations and Permissions. In: Lujak, M. (eds) Agreement Technologies. AT 2018. Lecture Notes in Computer Science(), vol 11327. Springer, Cham. https://doi.org/10.1007/978-3-030-17294-7_4