/
RDF Validation in a Linked Data world RDF Validation in a Linked Data world

RDF Validation in a Linked Data world - PowerPoint Presentation

phoebe-click
phoebe-click . @phoebe-click
Follow
351 views
Uploaded On 2018-10-13

RDF Validation in a Linked Data world - PPT Presentation

A vision beyond structural and value range validation Miguel Esteban Gutiérrez Raúl García Castro Nandana Mihindukulasooriya RDF Validation Workshop September 10 th 11 th 2013 ID: 689113

prefix http upm data http prefix data upm dia ldp xsd products aranjuez resources validation foaf asset oslc string

Share:

Link:

Embed:

Download Presentation from below link

Download Presentation The PPT/PDF document "RDF Validation in a Linked Data world" is the property of its rightful owner. Permission is granted to download and print the materials on this web site for personal, non-commercial use only, and to display it on your personal computer provided you do not modify the materials and that you retain all copyright notices contained in the materials. By downloading content from our website, you accept the terms of this agreement.


Presentation Transcript

Slide1

RDF Validation in a Linked Data world A vision beyond structural and value range validation

Miguel Esteban Gutiérrez, Raúl García Castro, Nandana Mihindukulasooriya

RDF Validation Workshop

September 10

th

-11

th

, 2013Slide2

Linked Data & the ALM iStack Project

2Objective: To foster the adoption of Linked Data technologies as the means

for

facilitating application integration in enterprise-grade

environments in the ALM domain

Challenge:Provide the means for ensuring that the data exchanged between the applications of the enterprise portfolio is consistent and valid whilst keeping the integrity of the data in each of these applicationsSlide3

Use case3

Simplified Corrective Maintenance Process

http://

sites.google.com

/a/

centeropenmiddleware.com/alm-istack/

deliverables/R1.3_ALM_iStack_Proof-of-Concept.pdfSlide4

Use case

scenario4

Change

Management

Requirement

Management

Configuration Management

Quality

Management

Asset

Management

OrganizationManagement

ALM

Application

Data

model

Remote

API

User

Interface

LDPSlide5

Linked Data Application “Maturity

Model”5

Linked Data Enabled Application

Expose all or part of its data

following the Linked Data

principles The data exposed is “sound and complete” from the application perspectiveLinked Data Capable ApplicationConsumes data published following the Linked Data principles

Linked Data Aware ApplicationLinked Data Enabled and Linked Data Capable application

Capable of integrating its own data with other Linked Data

Require

RDF

validation

processSlide6

Designing the RDF validation process

6Data source

factors

Behavioral

aspectsStructural aspectsProcedure factorsData aspects

Temporal aspectsContext

factors

Operational

aspectsSlide7

Data source factors (I)

7DynamicsStatic data (i.e.,

periodic

bug

reports

)One-time validation (i.e., validation caching)Variable data (i.e., live

data)Timely updated data (i.e., statistical

bug

reports

)

Periodic

validation

(i.e.,

validation

caching

+

validation

triggering)

Randomly updated data (i.e., a particular bug)

Per-operation validationSlide8

Data source factors (II)

8Publication strategyDisallow

inline

resource definitionAllow inline resource definitionResource

aggregation patternResource

composition

pattern

products:prod3231

a

ai:Product

;

dc:title

"SEALS

Platform

"@

en;

ai:isInvolvedIn

roles:role1002;

ai:hasWorkingGroup

wg:wg44.products:prod3231 a ai:Product

; dc:title

"SEALS

Platform

"@en; ai:isInvolvedIn

roles:role1002; ai:hasWorkingGroup wg:wg44.wg:wg44 a foaf:Group; ai:belongsToWorkArea ai:workAreaDevelopment; ai:member

person:pr82; ai:worksInProduct products:prod3231.roles:role1002 a ai:ProductRole;

ai:involves ai:roleMaintainer; ai:involves products:prod3231;

ai:involves person:pr82.

products:prod3231 a ai:Product; dc:title "SEALS Platform"@en;

ai:isInvolvedIn comp:mpr; ai:hasWorkingGroup

comp:wg.comp:wg a

foaf:Group; ai:belongsToWorkArea

ai:workAreaDevelopment; ai:member person:pr82; ai:worksInProduct products:prod3231.comp:mpr a ai:ProductRole;

ai:involves ai:roleMaintainer; ai:involves products:prod3231;

ai:involves person:pr82. @

prefix dc: <http://purl.org/dc/elements/1.1/> . @prefix foaf: <http://xmlns.com/foaf/0.1/> .@prefix ai: <http://delicias.dia.fi.upm.es/ontologies/alm-istack#> .

@prefix

products: <http://aranjuez.dia.fi.upm.es/oms/ldp/resources/products/> .@prefix comp: <http://aranjuez.dia.fi.upm.es/oms/ldp/resources/products/prod3231#>

.@

prefix

roles: <http://aranjuez.dia.fi.upm.es/oms/ldp/resources/roles/> .@prefix wg

: <http://aranjuez.dia.fi.upm.es/oms/ldp/resources/groups/> .@prefix

persons: <http://aranjuez.dia.fi.upm.es/oms/ldp/resources/persons/> .

get http

://www.example.org/oms/ldp/products/prod3231Slide9

Data source factors (III)

9Provision strategyRaw

data

Materialized

data

Partial materializationFull materialization

versions:ver1244

a

ai:Version

;

oslc_asset:version

"1.0"^^

xsd:string

;

ai:isVersionOf

products:prod3231.

versions:ver1244

a

ai:Version

,

oslc_asset:Asset

;

oslc_asset:version "1.0"^^

xsd:string;

ai:isVersionOf products:prod3231.

versions:ver1244

a ai:Version,

oslc_asset:Asset; oslc_asset:version "1.0"^^xsd:string; ai:isVersionOf products:prod3231. products:prod3231 a ai:Product

; ai:hasVersion versions:ver1244.

@

prefix oslc_asset: <http://open-services.net/ns/asset#> .

@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .@prefix ai: <http://delicias.dia.fi.upm.es/ontologies/alm-istack#> .@

prefix products: <http://aranjuez.dia.fi.upm.es/oms/ldp/resources/products/> .@prefix versions

: <http://aranjuez.dia.fi.upm.es/oms/ldp/resources/versions/> .get http

://www.example.org/oms/ldp/versions/ver1244Slide10

Data source factors (IV)

10Access controlGranularity

@

prefix

xsd: <http://www.w3.org/2001/XMLSchema#> .@

prefix dcterms

: <http://purl.org/dc/terms/> .

@

prefix

oslc_cm

: <http://open-services.net/ns/cm#> .

@

prefix

oslc_asset

: <http://open-services.net/ns/asset#> .

@

prefix

ai

: <http://delicias.dia.fi.upm.es/ontologies/alm-istack#> .

@

prefix

bugs: <

http://aranjuez.dia.fi.upm.es/ita/ldp/resources/bugs/>

.@prefix versions: <http://

aranjuez.dia.fi.upm.es/ita/ldp/resources/productversions/> .

@prefix

users

: <http://aranjuez.dia.fi.upm.es/ita/ldp/resources/users/> .

bugs:b43245 a ai:ClientDefect; dcterms:title "Bugzilla adapter build is broken"^^xsd:string

; dcterms:description "Bugzilla adapter build

fails due to a test failure"^^

xsd:string; dcterms:creator

users:us09 ; oslc_asset:relatedAsset versions:ver1244 ; oslc_cm:status ai:statusNew

; dcterms:contributor users:us4331 ; ai:relatedIncident <http://example.org/incidents/1>

.

Coarse-grained access

Fine-grained access(public)

Fine-grained

access(logged)Slide11

Data source factors (V)

11Resource state management

Unique

state

Differentiated state (i.e., context aware)

@

prefix

ai

:

<

http://delicias.dia.fi.upm.es/ontologies/alm-istack#> .

@

prefix

foaf

:

<

http://xmlns.com/foaf/0.1/> .

@

prefix

xsd

:

<

http://www.w3.org/2001/XMLSchema#>

.@prefix roles: <

http://aranjuez.dia.fi.upm.es/oms/ldp/resources/roles/> .@

prefix wg

:

<http://aranjuez.dia.fi.upm.es/oms/ldp/resources/groups/> .@prefix

persons: <http://aranjuez.dia.fi.upm.es/oms/ldp/resources/persons/> .get http://www.example.org/oms/ldp/persons/me

persons:me a foaf:Person; foaf:name

"John Doe"@en; foaf:mbox "john.doe@email.com"^^xsd:string

; ai:isMemberOf wg:wg44;

ai:hasCredentials [ a ai:Credentials; ai:hasUsername "

john"^^xsd:string; ai:hasPassword "

J0hn"^^xsd:string ]; ai:isInvolvedIn

roles:role1002.

persons:me a foaf:Person; foaf:name "Jane Doe"@en; foaf:mbox "jane.doe@email.com"^^

xsd:string; ai:isMemberOf wg:wg173; ai:hasCredentials

[ a ai:Credentials;

ai:hasUsername "jane"^^xsd:string; ai:hasPassword "J@n3"^^

xsd:string ];

ai:isInvolvedIn roles:role310.John

Doe logged on

Jane

Doe

logged

o

nSlide12

Procedure factors (I)

12Number of data sources

Product Resource

Product

Version Resource

Version

User Resource

foaf:Person

Bug Resource

Defect

Issue Tracker Adapter

Version Resource

Version

Person Resource

foaf:Person

Product Resource

Product

Product

Role

foaf:Group

Organization Management System

Entity Resource

Entity

Context Resource

Context

Identity Management ServiceSlide13

Procedure factors (II)

13Data completenessComplete

Closed

world

reasoningLocal-closed world reasoningIncompleteOpen

world reasoningSlide14

Procedure factors (III)

14Validation scope

bugs:b43245

a

ai:ClientDefect

;

dcterms:title "Bugzilla

adapter

build

is

broken

"^^

xsd:string

;

dcterms:description

"Bugzilla

adapter

build

fails

due

to a test failure"^^xsd:string

; dcterms:creator

users:us09; oslc_asset:relatedAsset

versions:ver1244 ;

oslc_cm:status ai:statusNew

; dcterms:contributor users:us4331 ; ai:relatedIncident <http://example.org/incidents/1> .@prefix

ai: <http://delicias.dia.fi.upm.es/ontologies/alm-istack#> .@prefix dcterms: <http://purl.org/dc/terms/> . @prefix

foaf: <http://xmlns.com/foaf/0.1/> .@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .@prefix oslc_asset

: <http://open-services.net/ns/asset#> .@prefix oslc_cm

: <http://open-services.net/ns/cm#> .@prefix bugs: <http://aranjuez.dia.fi.upm.es/ita/ldp/resources/bugs/> .@prefix users: <http://aranjuez.dia.fi.upm.es/ita/ldp/resources/users/> .@prefix persons: <http://aranjuez.dia.fi.upm.es/oms/ldp/resources/persons/> .

@prefix products: <http://aranjuez.dia.fi.upm.es/oms/ldp/resources/products/> .@prefix roles: <http://aranjuez.dia.fi.upm.es/oms/ldp/resources/roles/> .@prefix

versions: <http://aranjuez.dia.fi.upm.es/oms/ldp/resources/versions/> .@prefix wg: <http://aranjuez.dia.fi.upm.es/oms/ldp/resources/groups/> .

products:prod3231 a ai:Product

; dc:title "SEALS Platform"@en; ai:isInvolvedIn roles:role1002; ai:hasWorkingGroup wg:wg44.

roles:role1002 a

ai:ProductRole; ai:involves ai:roleMaintainer

; ai:involves products:prod3231; ai:involves users:us4331.

wg:wg44 a

foaf:Group; ai:belongsToWorkArea

ai:workAreaDevelopment;

ai:member users:us4331;

ai:worksInProduct products:prod3231.

users:us4331 a

foaf:Person

;

foaf:name

"John

Doe

"@en;

foaf:mbox

"john.doe@email.com"^^

xsd:string

;

ai:isMemberOf

wg:wg44;

ai:hasCredentials

[

a

ai:Credentials

;

ai:hasUsername

"

jhon

"^^

xsd:string

;

ai:hasPassword

"Jh0n"^^

xsd:string

];

ai:isInvolvedIn

roles:role1002

.

versions:ver1244

a

ai:Version

;

oslc_asset:version

"1.0"^^

xsd:string

;

ai:isVersionOf

products:prod3231.

DBSlide15

Procedure factors (IV)

15Temporal aspectsEstimated duration

Short-

lived

validation processValidation process is simple enough to be

carried out in a short period of time

Long-

lived

validation

process

Validation

process

requires

complex

and/

or lengthy operations

which span a wide period

of time (i.e., estatistical calculations for reports

)ImmediatenessOn-the-fly / up-front

Validation happens as soon as the

data is available (i.e., user input validation

)Just-in-time / deferredValidation happens when the data is to be

consumed (i.e., batch and/or async

operations)Slide16

Context factors16

Validation as part of a write operation

Data

provenance

Application

managed vs user provided propertiesWrite once-read

many vs read-

write

properties

@

prefix

xsd

: <http://www.w3.org/2001/XMLSchema#> .

@

prefix

dcterms

: <http://purl.org/dc/terms/> .

@

prefix

oslc_cm

: <http://open-services.net/ns/cm#> .

@prefix

oslc_asset: <http://open-services.net/ns/asset#> .

@prefix ai: <http://delicias.dia.fi.upm.es/ontologies/alm-istack#> .@prefix

bugs: <http://aranjuez.dia.fi.upm.es/ita/ldp/resources/bugs/>

.@

prefix

versions: <http://

aranjuez.dia.fi.upm.es/ita/ldp/resources/productversions/> .@prefix users: <http://aranjuez.dia.fi.upm.es/ita/ldp/resources/users/> . bugs:b43245 a ai:ClientDefect; dcterms:title

"Bugzilla adapter build is broken

"^^xsd:string; dcterms:description "Bugzilla adapter

build fails

due to a test failure"^^xsd:string; dcterms:creator users:us09 ;

oslc_asset:relatedAsset versions:ver1244 ; oslc_cm:status

ai:statusNew ; dcterms:contributor users:us4331 ;

ai:relatedIncident <http://example.org/incidents/1>

.Must be an ITA user

Application managed

User

provided

Fixed

on creation

Free

updateSlide17

Conclusions17

RDF validation in a Linked Data scenario has other

concerns

beyond

traditional structural and data range validation issuesProcedures

for validating Linked Data

need

to

be

customized

to

accommodate

the

particularities

of the scenario in terms of

the the data sources to

be consumed,the processes

to be carried out, and the

context in which they are to

be appliedSlide18

RDF Validation in a Linked Data world A vision beyond structural and value range validation

Miguel Esteban Gutiérrez, Raúl García Castro, Nandana Mihindukulasooriya

RDF Validation Workshop

September 10

th

-11

th

, 2013