Pericles in practice 2 automatic policy application
-
Upload
fabio-corubolo -
Category
Engineering
-
view
35 -
download
0
Transcript of Pericles in practice 2 automatic policy application
![Page 1: Pericles in practice 2 automatic policy application](https://reader036.fdocuments.us/reader036/viewer/2022081605/58edc7b11a28abdb078b45c1/html5/thumbnails/1.jpg)
GRANT AGREEMENT: 601138 | SCHEME FP7 ICT 2011.4.3 Promoting and Enhancing Reuse of Information throughout the Content Lifecycle taking account of Evolving Semantics [Digital Preservation]
“This project has received funding from the European Union’s Seventh Framework Programme for research, technological development and demonstration under grant agreement no601138”.
Automatic policy application and change management
From model to real world. A use case demonstration with PERICLES technologies
Fabio Corubolo (University of Liverpool)and PERICLES partners *Acting on Change: New Approaches and Future Practices in LTDPLondon, 2 Dec. 2016
@PericlesFP7 #PERIconf2016
![Page 2: Pericles in practice 2 automatic policy application](https://reader036.fdocuments.us/reader036/viewer/2022081605/58edc7b11a28abdb078b45c1/html5/thumbnails/2.jpg)
▶ Johannes Biermann, Claudio Leone, Anna Eggers (UGOE)▶ Marina Riga, Stratos Kontopoulos (CERTH)▶ David De Weerdt (Spaceapps)▶ Jean-Yves Vion-Dury (XRCE)▶ Jérôme Fuselier (ULIV)▶ Simon Waddington (KCL)
* credits
![Page 3: Pericles in practice 2 automatic policy application](https://reader036.fdocuments.us/reader036/viewer/2022081605/58edc7b11a28abdb078b45c1/html5/thumbnails/3.jpg)
▶ How policies can be modelled, implemented and automatically applied using PERICLES tools
▶ How policy change can be managed with the tools
▶ A general architecture for change management
What we want to demonstrate
![Page 4: Pericles in practice 2 automatic policy application](https://reader036.fdocuments.us/reader036/viewer/2022081605/58edc7b11a28abdb078b45c1/html5/thumbnails/4.jpg)
▶SEVIRI Images are data from the Meteosat Second Generation (MSG) geostationary satellite with Spinning Enhanced Visible and InfraRed Imager (SEVIRI)▶Policy: make images public after an embargo period▶We implement an aspect of the policy: making images public▶We manage change:
the embargo period being changed from 24 to 12 hours▶The rule will automatically publish the images based on the
parameter value
EUMETSAT scenario
![Page 5: Pericles in practice 2 automatic policy application](https://reader036.fdocuments.us/reader036/viewer/2022081605/58edc7b11a28abdb078b45c1/html5/thumbnails/5.jpg)
EUMETSAT DEM
![Page 6: Pericles in practice 2 automatic policy application](https://reader036.fdocuments.us/reader036/viewer/2022081605/58edc7b11a28abdb078b45c1/html5/thumbnails/6.jpg)
EUMETSAT data release policy
“Meteosat Data and Derived Products older than 24 hours are distributed on request from the EUMETSAT Data Archive in digital and graphical form via the associated operational service in formats which represent both full and partial spatial coverage as well as both full and partial spatial resolution.”
(EUMETSAT data policy: http://www.eumetsat.int/website/home/AboutUs/LegalInformation/DataPolicy/index.html, S.14)
Policy
![Page 7: Pericles in practice 2 automatic policy application](https://reader036.fdocuments.us/reader036/viewer/2022081605/58edc7b11a28abdb078b45c1/html5/thumbnails/7.jpg)
Data Release DatePolicy Statements: natural language; SPIN ruleEmbargo Period: 24
Web PortalService Interface
SEVIRI ImageDigital ObjectCreationDate: timestampReleaseState: public / privateLocation: URI
constrains
providesAccessTo
DEM: Focus on policy aspect
![Page 8: Pericles in practice 2 automatic policy application](https://reader036.fdocuments.us/reader036/viewer/2022081605/58edc7b11a28abdb078b45c1/html5/thumbnails/8.jpg)
● Modelling and implementation of a policy with help of PERICLES ontologies and tools
● Change of release policy from 24 hrs into 12 hrs● Model Driven Approach: From reality to model and back to
reality● Architecture of Approach: PERICLES ontologies and tools can
be combined according to a specific use case.
What you will see
![Page 9: Pericles in practice 2 automatic policy application](https://reader036.fdocuments.us/reader036/viewer/2022081605/58edc7b11a28abdb078b45c1/html5/thumbnails/9.jpg)
PERICLES based Architecture and WFERMR
LRM-S
SPIN rule engine
PERSIsT API
EcoBuilder
Policy editor
ProcessesRest API
DEM
DEM LRM-Delta: Change policy parameter
MICE
DEM
DEM2
LRM-delta: change image release state
DEM2
Public web portal
![Page 10: Pericles in practice 2 automatic policy application](https://reader036.fdocuments.us/reader036/viewer/2022081605/58edc7b11a28abdb078b45c1/html5/thumbnails/10.jpg)
▶ Ecobuilder is used to create a DEM (Digital Ecosystem Model) for the EUMETSAT scenario
▶ The model is submitted to the ERMR repository
Step 1ERMR
EcoBuilder
DEM
![Page 11: Pericles in practice 2 automatic policy application](https://reader036.fdocuments.us/reader036/viewer/2022081605/58edc7b11a28abdb078b45c1/html5/thumbnails/11.jpg)
▶GUI & Java API for DEM scenario creation▶The policy and
SPIN rule are expressed in the model
EcoBuilder
![Page 12: Pericles in practice 2 automatic policy application](https://reader036.fdocuments.us/reader036/viewer/2022081605/58edc7b11a28abdb078b45c1/html5/thumbnails/12.jpg)
▶ Large scale distributed data store and model repository (triple store)▶ Used for PERICLES models and data▶ Accessible via Web interface or RESTful API▶ Every action in ERMR triggers a notification that can
be used to execute responding actions
ERMR
![Page 13: Pericles in practice 2 automatic policy application](https://reader036.fdocuments.us/reader036/viewer/2022081605/58edc7b11a28abdb078b45c1/html5/thumbnails/13.jpg)
Outputjava -cp EcoBuilder.jar experiments.SpacePolicyChangeConnector /tmp/ https://127.0.0.1 space user pass...
…
...
![Page 14: Pericles in practice 2 automatic policy application](https://reader036.fdocuments.us/reader036/viewer/2022081605/58edc7b11a28abdb078b45c1/html5/thumbnails/14.jpg)
ERMR
LRM-S
SPIN rule engine
PERSIsT API
EcoBuilder
Policy editor
ProcessesRest API
DEM
DEM LRM-Delta: Change policy parameter
MICE
DEM
DEM2
LRM-delta: change image release state
DEM2
Public web portal
![Page 15: Pericles in practice 2 automatic policy application](https://reader036.fdocuments.us/reader036/viewer/2022081605/58edc7b11a28abdb078b45c1/html5/thumbnails/15.jpg)
Step 2▶User changes the embargo period▶Policy editor sends DEM, DEM2 to the LRM Services (LRM-S)
and SPIN rule engine
LRM-SPolicy editor
DEM
DEM
DEM2
SPIN rule engine
DEM2
![Page 16: Pericles in practice 2 automatic policy application](https://reader036.fdocuments.us/reader036/viewer/2022081605/58edc7b11a28abdb078b45c1/html5/thumbnails/16.jpg)
Web-based tool for creating and modifying a consistent sets of policies.
▶Template-based with automatically propagating variables▶Support for custom policy models▶Can integrate with digital ecosystems▶Can execute processes linked to policies▶Export to PDF, JSON
Policy Editor
![Page 17: Pericles in practice 2 automatic policy application](https://reader036.fdocuments.us/reader036/viewer/2022081605/58edc7b11a28abdb078b45c1/html5/thumbnails/17.jpg)
DEM:DEM-Scenario:Releasedatepolicytimebeforerelease "24"
Output
DEM2:DEM-Scenario:Releasedatepolicytimebeforerelease "12" .
![Page 18: Pericles in practice 2 automatic policy application](https://reader036.fdocuments.us/reader036/viewer/2022081605/58edc7b11a28abdb078b45c1/html5/thumbnails/18.jpg)
ERMR
LRM-S
SPIN rule engine
PERSIsT API
EcoBuilder
Policy editor
ProcessesRest API
DEM
DEM LRM-Delta: Change policy parameter
MICE
DEM
DEM2
LRM-delta: change image release state
DEM2
Public web portal
![Page 19: Pericles in practice 2 automatic policy application](https://reader036.fdocuments.us/reader036/viewer/2022081605/58edc7b11a28abdb078b45c1/html5/thumbnails/19.jpg)
Step 3
LRM-S
PERSIsT API
DEM
LRM-Delta: Change policy parameter
DEM2
▶LRM-S generates and sends the Policy LRM-Delta to PERSIsT
![Page 20: Pericles in practice 2 automatic policy application](https://reader036.fdocuments.us/reader036/viewer/2022081605/58edc7b11a28abdb078b45c1/html5/thumbnails/20.jpg)
▶The LRM Services (LRM-S) provide mechanisms to support the change of LRM based ontologies. ▶It embeds an interpreter for a dedicated Stream-based and
Reactive language (ReAL) for handling RDF triples ▶It offers services through a REST API▶The basic services concern digital resources creation,
deletion and modification, as well as dependency insertion.▶In this workflow, an LRM-Diff service is used to compare RDF
graphs and create LRM-Deltas to describe the change
Linked Resource Model (Services)
![Page 21: Pericles in practice 2 automatic policy application](https://reader036.fdocuments.us/reader036/viewer/2022081605/58edc7b11a28abdb078b45c1/html5/thumbnails/21.jpg)
The two following LRM-Deltas are generated to represent the change between the two models, and sent to PERSIsT:
<urn:delta:b7cb95396767> rdf:type LRM:RDF-Delta; LRM:deletion <urn:stmt:c511641d285a>.
<urn:stmt:c511641d285a> rdf:subject DEM-Scenario:releasedatepolicy ;rdf:predicate DEM-Scenario:releasedatepolicytimebeforerelease;rdf:object "24".
<urn:delta:d77bb0d234c4> rdf:type LRM:RDF-Delta;LRM:insertion <urn:stmt:d96eefaa4d9d>.
<urn:stmt:d96eefaa4d9d> rdf:subject DEM-Scenario:releasedatepolicy;rdf:predicate DEM-Scenario:releasedatepolicytimebeforerelease;rdf:object "12".
Output
![Page 22: Pericles in practice 2 automatic policy application](https://reader036.fdocuments.us/reader036/viewer/2022081605/58edc7b11a28abdb078b45c1/html5/thumbnails/22.jpg)
ERMR
LRM-S
SPIN rule engine
PERSIsT API
EcoBuilder
Policy editor
ProcessesRest API
DEM
DEM LRM-Delta: Change policy parameter
MICE
DEM
DEM2
LRM-delta: change image release state
DEM2
Public web portal
![Page 23: Pericles in practice 2 automatic policy application](https://reader036.fdocuments.us/reader036/viewer/2022081605/58edc7b11a28abdb078b45c1/html5/thumbnails/23.jpg)
Step 4
SPIN rule engine
PERSIsT API
LRM-delta: change image release state
DEM2
▶SPIN Rule Engine receives the new DEM; executes the policy rule reporting the results to the PERSIsT API
![Page 24: Pericles in practice 2 automatic policy application](https://reader036.fdocuments.us/reader036/viewer/2022081605/58edc7b11a28abdb078b45c1/html5/thumbnails/24.jpg)
▶RESTFUL web application and API + CLI▶Uses Apache Jena and TopQuadrant SPIN API ▶Open source, with full documentation
Two modes of operation:
▶DEM/LRM specific:◦ Extracts and executes the rules from DEM models◦ Reports the changes back to models with PERSIsT API.
▶General: Execute SPIN rule inference and constraint checking
SPIN Rule engine
![Page 25: Pericles in practice 2 automatic policy application](https://reader036.fdocuments.us/reader036/viewer/2022081605/58edc7b11a28abdb078b45c1/html5/thumbnails/25.jpg)
SPIN Rule engine processingDEM2
RULE
LRM-delta: change image release state
DEM-Scenario:SPINRULE a DEM-Policy:PolicyStatement ; DEM-Policy:format "formal" ; DEM-Policy:language "SPIN" ; LRM:definition """<http://www.pericles-project.eu/ns/DEM-Core#DigitalObject> spin:rule [ rdf:type sp:Construct ; [...]
DEM-Scenario:SEVIRIImages a DEM-Core:DigitalObject ; rdfs:label "SEVIRI Images"@en ; LRM:hasPart DEM-Scenario:SEVIRIImage1 , DEM-Scenario:SEVIRIImage2 , DEM-Scenario:SEVIRIImage3 , DEM-Scenario:SEVIRIImage4 ; LRM:specifiedBy DEM-Scenario:HDFFormat .
DEM-Scenario:SEVIRIImage3 a DEM-Core:DigitalObject ; [...]
DEM-Scenario:SEVIRIImage2 lrm:changedBy [ a lrm:RDF-Delta ; lrm:deletion [ a rdf:Statement ; rdf:object "private" ; rdf:predicate DEM-Scenario:releaseState ] ; lrm:insertion [ a rdf:Statement ; rdf:object "public" ; rdf:predicate DEM-Scenario:releaseState ] ] .[...]
![Page 26: Pericles in practice 2 automatic policy application](https://reader036.fdocuments.us/reader036/viewer/2022081605/58edc7b11a28abdb078b45c1/html5/thumbnails/26.jpg)
ERMR
LRM-S
SPIN rule engine
PERSIsT API
EcoBuilder
Policy editor
ProcessesRest API
DEM
DEM LRM-Delta: Change policy parameter
MICE
DEM
DEM2
LRM-delta: change image release state
DEM2
Public web portal
![Page 27: Pericles in practice 2 automatic policy application](https://reader036.fdocuments.us/reader036/viewer/2022081605/58edc7b11a28abdb078b45c1/html5/thumbnails/27.jpg)
Step 5ERMR
PERSIsT API
LRM-Delta: Change policy parameter
LRM-delta: change image release state
▶PERSIsT API receive DELTAS from LRM-S and SPIN rule engine, converts to queries and updates the ERMR
![Page 28: Pericles in practice 2 automatic policy application](https://reader036.fdocuments.us/reader036/viewer/2022081605/58edc7b11a28abdb078b45c1/html5/thumbnails/28.jpg)
▶Operates as a semantic interpretation (translation) layer of the ontology stored in the ERMR
▶Ontology in ERMR should be LRM-compliant▶Two main web services
1. Creates dependency graphs2. a) Converts deltas to SPARQL update queries
b) Updates the ERMR repository according to LRM-deltas• Input (same parameters for both services):
• delta_stream• ERMR_repository
PERSIsT API
![Page 29: Pericles in practice 2 automatic policy application](https://reader036.fdocuments.us/reader036/viewer/2022081605/58edc7b11a28abdb078b45c1/html5/thumbnails/29.jpg)
PERSIsT API processingLRM-delta:
change image release state
DEM-Scenario:SEVIRIImage1 lrm:changedBy [ a lrm:RDF-Delta ; lrm:deletion [ a rdf:Statement ; rdf:object "private" ; rdf:predicate DEM-Scenario:releaseState ] ; lrm:insertion [ a rdf:Statement ; rdf:object "public" ; rdf:predicate DEM-Scenario:releaseState ] ] .DEM-Scenario:SEVIRIImage2 lrm:changedBy [ a lrm:RDF-Delta ; lrm:deletion [ a rdf:Statement ; rdf:object "private" ; rdf:predicate DEM-Scenario:releaseState ] ; lrm:insertion [ a rdf:Statement ; rdf:object "public" ; rdf:predicate DEM-Scenario:releaseState ] ] .
"SPARQL_delete": "DELETE DATA { <http://www.pericles-project.eu/ns/DEM-Scenario#SEVIRIImage1> <http://www.pericles-project.eu/ns/DEM-Scenario#releaseState> \"private\" . <http://www.pericles-project.eu/ns/DEM-Scenario#SEVIRIImage2> <http://www.pericles-project.eu/ns/DEM-Scenario#releaseState> \"private\" . }", "SPARQL_insert": "INSERT DATA { <http://www.pericles-project.eu/ns/DEM-Scenario#SEVIRIImage1> <http://www.pericles-project.eu/ns/DEM-Scenario#releaseState> \"public\" . <http://www.pericles-project.eu/ns/DEM-Scenario#SEVIRIImage2> <http://www.pericles-project.eu/ns/DEM-Scenario#releaseState> \"public\"
ERMR
Update triplesqueries
![Page 30: Pericles in practice 2 automatic policy application](https://reader036.fdocuments.us/reader036/viewer/2022081605/58edc7b11a28abdb078b45c1/html5/thumbnails/30.jpg)
ERMR
LRM-S
SPIN rule engine
PERSIsT API
EcoBuilder
Policy editor
ProcessesRest API
DEM
DEM LRM-Delta: Change policy parameter
MICE
DEM
DEM2
LRM-delta: change image release state
DEM2
Public web portal
![Page 31: Pericles in practice 2 automatic policy application](https://reader036.fdocuments.us/reader036/viewer/2022081605/58edc7b11a28abdb078b45c1/html5/thumbnails/31.jpg)
Step 6
▶The ERMR DEM model is updated (images made public);▶The public web portal now shows the new released images
ERMRPublic web portal
![Page 32: Pericles in practice 2 automatic policy application](https://reader036.fdocuments.us/reader036/viewer/2022081605/58edc7b11a28abdb078b45c1/html5/thumbnails/32.jpg)
1. EcoBuilder generate DEM, send to ERMR2. Policy editor modify DEM policy parameter
DEM, DEM2 sent to the LRM ServicesDEM2 sent to the SPIN Rule Engine
3. LRM-S generates, sends the Policy LRM-Delta to PERSIsT API4. SPIN RE extracts, executes the rules; sends new deltas for
public file release to PERSIsT API5. PERSIsT API receive DELTAS and updates ERMR6. The ERMR DEM model is updated (images made public);
ERMR UI can now show the new released images
Complete Workflow
![Page 33: Pericles in practice 2 automatic policy application](https://reader036.fdocuments.us/reader036/viewer/2022081605/58edc7b11a28abdb078b45c1/html5/thumbnails/33.jpg)
Results and Conclusion▶Presented many of the PERICLES tools in context▶Modelling concepts▶Demonstrated a simple case of change management ▶And policy implementation ▶Showed a modular, flexible architecture that can be
extended
▶Still… no memes?
![Page 34: Pericles in practice 2 automatic policy application](https://reader036.fdocuments.us/reader036/viewer/2022081605/58edc7b11a28abdb078b45c1/html5/thumbnails/34.jpg)
Questions and Answers
![Page 35: Pericles in practice 2 automatic policy application](https://reader036.fdocuments.us/reader036/viewer/2022081605/58edc7b11a28abdb078b45c1/html5/thumbnails/35.jpg)
Most tools in this demo are open source GITHUB:https://github.com/pericles-project/ {
DEM, EcoBuilder,ERMR , SPIN-rule-engine, PERSIsT-API}
Thank you!
![Page 36: Pericles in practice 2 automatic policy application](https://reader036.fdocuments.us/reader036/viewer/2022081605/58edc7b11a28abdb078b45c1/html5/thumbnails/36.jpg)
![Page 37: Pericles in practice 2 automatic policy application](https://reader036.fdocuments.us/reader036/viewer/2022081605/58edc7b11a28abdb078b45c1/html5/thumbnails/37.jpg)
Part of a complex architecture
![Page 38: Pericles in practice 2 automatic policy application](https://reader036.fdocuments.us/reader036/viewer/2022081605/58edc7b11a28abdb078b45c1/html5/thumbnails/38.jpg)
Why we adopt complex models?
▶Standard, ▶make use of ontology infrastructure (SPIN engine etc)▶can be parameterized▶common language between PERICLES components
and external tools
Complexity of models
![Page 39: Pericles in practice 2 automatic policy application](https://reader036.fdocuments.us/reader036/viewer/2022081605/58edc7b11a28abdb078b45c1/html5/thumbnails/39.jpg)
Complexity of Digital Ecosystems ▶Digital Ecosystems are interwoven evolving networks of
◦ digital objects,◦ policies, ◦ processes,◦ technical services, ◦ and user communities
within constantly changing and interacting environments influencing digital objects.
Space Science Scenario: Experiment Workflow
![Page 40: Pericles in practice 2 automatic policy application](https://reader036.fdocuments.us/reader036/viewer/2022081605/58edc7b11a28abdb078b45c1/html5/thumbnails/40.jpg)
Policy Editor
![Page 41: Pericles in practice 2 automatic policy application](https://reader036.fdocuments.us/reader036/viewer/2022081605/58edc7b11a28abdb078b45c1/html5/thumbnails/41.jpg)
Image WEB portal
![Page 42: Pericles in practice 2 automatic policy application](https://reader036.fdocuments.us/reader036/viewer/2022081605/58edc7b11a28abdb078b45c1/html5/thumbnails/42.jpg)
▶Base URL: http://persist.iti.gr:5000/api▶Written in Python 2.7, by additionally utilizing existing
libraries: ◦ RDFLib - handles ontology-related data◦ Requests - handles external http requests◦ Flask - wraps all methods and serves them through HTTP
requests ▶Services - POST methods
1. http://persist.iti.gr:5000/api/dependency_graph2. http://persist.iti.gr:5000/api/conversion
PERSIsT API - Technical details
![Page 43: Pericles in practice 2 automatic policy application](https://reader036.fdocuments.us/reader036/viewer/2022081605/58edc7b11a28abdb078b45c1/html5/thumbnails/43.jpg)
▶GUI & Java API▶Simplifies the creation of the model▶Usable by scenario experts without the necessity to write
ontology or Java sources▶Facilitates integration into workflows ▶Uses Java Jena API - can output OWL/XML or Turtle
▶The policy and SPIN rule are expressed in the model
EcoBuilder