Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
Center for
Open
Middleware
Center for
Open
Middleware
RDF Validation in a Linked Data world
A vision beyond structural and...
Center for
Open
Middleware
Linked Data & the ALM iStack Project
2
• Objective:
To foster the adoption of Linked Data techn...
Center for
Open
Middleware
Use case
3
Defect
reception
Verification
Diagnosis
and
solution
Solution
integration
Fix
assign...
Center for
Open
Middleware
Use case scenario
4
Change
Management
Requirement
Management
Configuration
Management
Quality
M...
Center for
Open
Middleware
Linked Data Application “Maturity Model”
5
• Linked Data Enabled Application
• Expose all or pa...
Center for
Open
Middleware
Designing the RDF validation process
6
• Data source factors
• Behavioral aspects
• Structural ...
Center for
Open
Middleware
Data source factors (I)
7
• Dynamics
• Static data (i.e., periodic bug reports)
One-time valida...
Center for
Open
Middleware
Data source factors (II)
8
• Publication strategy
• Disallow inline resource definition
• Allow...
Center for
Open
Middleware
Data source factors (III)
9
• Provision strategy
• Raw data
• Materialized data
• Partial mater...
Center for
Open
Middleware
Data source factors (IV)
10
• Access control
• Granularity
@prefix xsd: <http://www.w3.org/2001...
Center for
Open
Middleware
Data source factors (V)
11
• Resource state management
• Unique state
• Differentiated state (i...
Center for
Open
Middleware
Procedure factors (I)
12
• Number of data sources
Product Resource
Product
Version Resource
Ver...
Center for
Open
Middleware
Procedure factors (II)
13
• Data completeness
• Complete
• Closed world reasoning
• Local-close...
Center for
Open
Middleware
Procedure factors (III)
14
• Validation scope
bugs:b43245 a ai:ClientDefect;
dcterms:title "Bug...
Center for
Open
Middleware
Procedure factors (IV)
15
• Temporal aspects
• Estimated duration
• Short-lived validation proc...
Center for
Open
Middleware
Context factors
16
• Validation as part of a write operation
• Data provenance
• Application ma...
Center for
Open
Middleware
Conclusions
17
• RDF validation in a Linked Data scenario has other
concerns beyond traditional...
Center for
Open
Middleware
Center for
Open
Middleware
RDF Validation in a Linked Data world
A vision beyond structural and...
Upcoming SlideShare
Loading in …5
×

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

541 views

Published on

Data validation is a vital step for ensuring the quality of data and the expressive languages for doing so and their related tools are essential for a data model to be adopted by the industry. Many data representation and storage technologies, like relational databases or XML, use expressive schema languages for defining the structure and the constraints on data and allow ensuring that
the quality and the consistency of data is kept intact. In the context of semantic and Linked Data technologies, which are built upon the Open World Assumption and Non-unique Name Assumption, data validation becomes a challenge as the languages currently used to describe these constraints (i.e., RDF Schema and OWL) are more suited for inferring data than for data validation. There is a clear need for more expressive languages to define rules for validating RDF data.

However, having a wider view on the different use cases where RDF data is being used and considering the applications that consume RDF data as Linked Data, we can discover that there are requirements and concerns that go beyond the structural validation and data value range validation. In this paper, we identify the different requirements and factors that need to be taken into account and discussed in the context of data validation in applications that publish and consume Linked Data. These factors are grouped into three main categories: data source factors, procedure factors, and context factors. We believe that having this broader view will help to identify the concrete requirements for data validation especially in the context of Linked Data.

Published in: Technology
  • Be the first to comment

  • Be the first to like this

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

  1. 1. Center for Open Middleware Center for Open Middleware 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 10th-11th, 2013
  2. 2. Center for Open Middleware Linked Data & the ALM iStack Project 2 • Objective: 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 applications
  3. 3. Center for Open Middleware Use case 3 Defect reception Verification Diagnosis and solution Solution integration Fix assignment Fix certification Simplified Corrective Maintenance Process http://sites.google.com/a/centeropenmiddleware.com/alm-istack/deliverables/R1.3_ALM_iStack_Proof-of-Concept.pdf CENTER FOR OPEN MIDDLEWARE Asistente automático al desarrollo Implementation and Design of the ALM iStack Proof-of-concept Miguel Esteban Gutiérrez, Raúl García-Castro, Nandana Mihindukulasooriya Document Identifier: ALM-iStack/2013/R1.3 Version: 1.00 Class deliverable: ALM iStack – COM 2013 – Area 4 Date: July 25 th , 2013 State: Final Distribution: Public
  4. 4. Center for Open Middleware Use case scenario 4 Change Management Requirement Management Configuration Management Quality Management Asset Management Organization Management ALM Application Data model Remote API User Interface LDP
  5. 5. Center for Open Middleware 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 perspective • Linked Data Capable Application • Consumes data published following the Linked Data principles • Linked Data Aware Application • Linked Data Enabled and Linked Data Capable application • Capable of integrating its own data with other Linked Data Require RDF validation process
  6. 6. Center for Open Middleware Designing the RDF validation process 6 • Data source factors • Behavioral aspects • Structural aspects • Procedure factors • Data aspects • Temporal aspects • Context factors • Operational aspects
  7. 7. Center for Open Middleware Data source factors (I) 7 • Dynamics • Static 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 validation
  8. 8. Center for Open Middleware Data source factors (II) 8 • Publication strategy • Disallow inline resource definition • Allow inline resource definition • Resource aggregation pattern • Resource 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/prod3231
  9. 9. Center for Open Middleware Data source factors (III) 9 • Provision strategy • Raw data • Materialized data • Partial materialization • Full 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/ver1244
  10. 10. Center for Open Middleware Data source factors (IV) 10 • Access control • Granularity @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)
  11. 11. Center for Open Middleware Data source factors (V) 11 • Resource 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 on
  12. 12. Center for Open Middleware Procedure factors (I) 12 • Number 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 Service
  13. 13. Center for Open Middleware Procedure factors (II) 13 • Data completeness • Complete • Closed world reasoning • Local-closed world reasoning • Incomplete • Open world reasoning
  14. 14. Center for Open Middleware Procedure factors (III) 14 • Validation 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. DB
  15. 15. Center for Open Middleware Procedure factors (IV) 15 • Temporal aspects • Estimated duration • Short-lived validation process • Validation 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) • Immediateness • On-the-fly / up-front • Validation happens as soon as the data is available (i.e., user input validation) • Just-in-time / deferred • Validation happens when the data is to be consumed (i.e., batch and/or async operations)
  16. 16. Center for Open Middleware Context factors 16 • Validation as part of a write operation • Data provenance • Application managed vs user provided properties • Write 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 update
  17. 17. Center for Open Middleware Conclusions 17 • RDF validation in a Linked Data scenario has other concerns beyond traditional structural and data range validation issues • Procedures 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 applied
  18. 18. Center for Open Middleware Center for Open Middleware 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 10th-11th, 2013

×