Top Banner
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*
42

Automatic policy application and change management - Acting on Change 2016

Jan 22, 2018

Download

Technology

PERICLES_FP7
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Automatic policy application and change management - Acting on Change 2016

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

MANAGEMENTFrom model to real world. A use case demonstration with PERICLES

technologies

Fabio Corubolo (University of Liverpool)and PERICLES partners*

Page 2: Automatic policy application and change management - Acting on Change 2016

▶ 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: Automatic policy application and change management - Acting on Change 2016

▶ How policies can be modelled, implementedand automatically applied using PERICLEStools

▶ How policy change can be managed with the tools

▶ A general architecture for change management

What we want to demonstrate

Page 4: Automatic policy application and change management - Acting on Change 2016

▶ 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: Automatic policy application and change management - Acting on Change 2016

EUMETSAT DEM

Page 6: Automatic policy application and change management - Acting on Change 2016

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: Automatic policy application and change management - Acting on Change 2016

Data Release Date

PolicyStatements: natural

language; SPIN rule

Embargo Period: 24

Web Portal

Service Interface

SEVIRI Image

Digital ObjectCreationDate: timestamp

ReleaseState: public / private

Location: URI

constrains

providesAccessTo

DEM: Focus on policy aspect

Page 8: Automatic policy application and change management - Acting on Change 2016

● 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: Automatic policy application and change management - Acting on Change 2016

PERICLES based Architecture and WF

ERMR

LRM-S

SPIN rule

engine

PERSIsT

APIEcoBuilder

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: Automatic policy application and change management - Acting on Change 2016

▶ Ecobuilder is used to create a DEM (Digital Ecosystem Model) for the EUMETSAT scenario

▶ The model is submitted to the ERMRrepository

Step 1

ERMR

EcoBuilder

DEM

Page 11: Automatic policy application and change management - Acting on Change 2016

▶ GUI & Java API for DEM scenario creation

▶ The policy and SPIN rule are expressed in the model

EcoBuilder

Page 12: Automatic policy application and change management - Acting on Change 2016

▶ 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: Automatic policy application and change management - Acting on Change 2016

Output

java -cp EcoBuilder.jar experiments.SpacePolicyChangeConnector /tmp/ https://127.0.0.1 space user pass

...

...

Page 14: Automatic policy application and change management - Acting on Change 2016

ERMR

LRM-S

SPIN rule

engine

PERSIsT

APIEcoBuilder

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: Automatic policy application and change management - Acting on Change 2016

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: Automatic policy application and change management - Acting on Change 2016

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: Automatic policy application and change management - Acting on Change 2016

DEM:DEM-Scenario:Releasedatepolicytimebeforerelease "24"

Output

DEM2:DEM-Scenario:Releasedatepolicytimebeforerelease "12" .

Page 18: Automatic policy application and change management - Acting on Change 2016

ERMR

LRM-S

SPIN rule

engine

PERSIsT

APIEcoBuilder

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: Automatic policy application and change management - Acting on Change 2016

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: Automatic policy application and change management - Acting on Change 2016

▶ 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: Automatic policy application and change management - Acting on Change 2016

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: Automatic policy application and change management - Acting on Change 2016

ERMR

LRM-S

SPIN rule

engine

PERSIsT

APIEcoBuilder

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: Automatic policy application and change management - Acting on Change 2016

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: Automatic policy application and change management - Acting on Change 2016

▶ 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: Automatic policy application and change management - Acting on Change 2016

SPIN Rule engine processing

DEM2

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: Automatic policy application and change management - Acting on Change 2016

ERMR

LRM-S

SPIN rule

engine

PERSIsT

APIEcoBuilder

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: Automatic policy application and change management - Acting on Change 2016

Step 5

ERMR

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: Automatic policy application and change management - Acting on Change 2016

▶ 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: Automatic policy application and change management - Acting on Change 2016

PERSIsT API processing

LRM-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 triples

queries

Page 30: Automatic policy application and change management - Acting on Change 2016

ERMR

LRM-S

SPIN rule

engine

PERSIsT

APIEcoBuilder

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: Automatic policy application and change management - Acting on Change 2016

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: Automatic policy application and change management - Acting on Change 2016

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 API

4. SPIN RE extracts, executes the rules; sends new deltas for public file release to PERSIsT API

5. 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: Automatic policy application and change management - Acting on Change 2016

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: Automatic policy application and change management - Acting on Change 2016

Questions and Answers

Page 35: Automatic policy application and change management - Acting on Change 2016

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: Automatic policy application and change management - Acting on Change 2016

Part of a complex architecture

Page 37: Automatic policy application and change management - Acting on Change 2016

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 38: Automatic policy application and change management - Acting on Change 2016

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 39: Automatic policy application and change management - Acting on Change 2016

Policy Editor

Page 40: Automatic policy application and change management - Acting on Change 2016

Image WEB portal

Page 41: Automatic policy application and change management - Acting on Change 2016

▶ 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 42: Automatic policy application and change management - Acting on Change 2016

▶ 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