SlideShare a Scribd company logo
1 of 22
Guidance, Please!
Towards a Framework
for RDF-based Constraint Languages.
Thomas Bosch, GESIS – Lebniz Institute for the Social Sciences
Kai Eckert, Stuttgart Media University
Prerequisites
• For RDF data, we want to express constraints, as it is common for XML
files using for example XML Schema: „Every Book must have at least
one author.“
• Several languages exist or are in development that support this, for
instance Description Set Profiles, OWL 2 (despite not intended to be a
constraint language), Shape Expressions or Resource Shapes.
• For the further development of constraint languages, the DCMI RDF
Application Profiles task group collected requirements in a public
database.
Bosch, Eckert: Guidance, please! Towards a Framework for RDF-based Constraint Languages. September, 2nd 2015
2
http://purl.org/net/rdf-application-profiles
Bosch, Eckert: Guidance, please! Towards a Framework for RDF-based Constraint Languages. September, 2nd 2015
3
September, 2nd 2015Bosch, Eckert: Guidance, please! Towards a Framework for RDF-based Constraint Languages.
4
Disclaimer: This is not an
accurate visualization!
Bosch, Eckert: Guidance, please! Towards a Framework for RDF-based Constraint Languages. September, 2nd 2015
5
A publication needs an author!
OWL 2: Publication a owl:Restriction ;
owl:minQualifiedCardinality 1 ;
owl:onProperty author ;
owl:onClass Person .
ShEx: Publication { author @Person{1, } }
ReSh: Publication a rs:ResourceShape ; rs:property [
rs:propertyDefinition author ;
rs:valueShape Person ;
rs:occurs rs:One-or-many ; ] .
DSP: [ dsp:resourceClass Publication ; dsp:statementTemplate [
dsp:minOccur 1 ;
dsp:property author ;
dsp:nonLiteralConstraint [ dsp:valueClass Person ] ] ] .
Bosch, Eckert: Guidance, please! Towards a Framework for RDF-based Constraint Languages. September, 2nd 2015
6
Let‘s spin….
SPIN: CONSTRUCT { [ a spin:ConstraintViolation ... . ] } WHERE {
?this
a ?C1 ;
?p ?o .
BIND ( qualifiedCardinality( ?this, ?p, ?C2 ) AS ?c ) .
BIND( STRDT ( STR ( ?c ), xsd:nonNegativeInteger ) AS ?cardinality ) .
FILTER ( ?cardinality < 1 ) .
FILTER ( ?C1 = Publication ) .
FILTER ( ?C2 = Person ) .
FILTER ( ?p = author ) . }
SPIN function qualifiedCardinality:
SELECT ( COUNT ( ?arg1 ) AS ?c ) WHERE { ?arg1 ?arg2 ?o . ?o a ?arg3 . }
Bosch, Eckert: Guidance, please! Towards a Framework for RDF-based Constraint Languages. September, 2nd 2015
7
From high-level to low-level
Low Level Language: Constraint Validation
SPIN/SPARQL
High Level Languages: Constraint Formulation
DSP OWL 2 ReSh ShEx
SPIN
SPARQL
Bosch, Eckert: Guidance, please! Towards a Framework for RDF-based Constraint Languages. September, 2nd 2015
8
Mapping from DSP to SPIN using SPARQL
CONSTRUCT {
_:constraintViolation a spin:ConstraintViolation ;
rdfs:label ?violationMessage ;
spin:violationRoot ?this ;
spin:violationPath ?property ;
spin:violationSource ?violationSource . }
WHERE {
?this a ?resourceClass .
?descriptionTemplate dsp:resourceClass ?resourceClass ;
dsp:statementTemplate ?statementTemplate .
?statementTemplate dsp:minOccur ?minimum ;
dsp:property ?property ;
dsp:nonLiteralConstraint ?nonLiteralConstraint .
?nonLiteralConstraint dsp:valueClass ?valueClass .
BIND ( qualifiedCardinality( ?this, ?property, ?valueClass ) AS ?cardinality ) .
FILTER ( ?cardinality < ?minimum ) . }
SPIN
SPARQL
Bosch, Eckert: Guidance, please! Towards a Framework for RDF-based Constraint Languages. September, 2nd 2015
9
Step by step:
Constraint validation using DSP
1. Write down your data constraints:
:authorNeeded dsp:resourceClass Publication ; dsp:statementTemplate [
dsp:minOccur 1 ;
dsp:property author ;
dsp:nonLiteralConstraint [ dsp:valueClass Person ] ].
2. Create a mapping from DSP to SPARQL:
• As shown before.
• One mapping per DSP element.
• This only has to be done once for DSP.
3. Load constraints and mappings and execute the validation using SPIN.
 This was our approach in our DC-2014 paper and is implemented in our demo:
http://purl.org/net/rdfval-demo
Bosch, Eckert: Guidance, please! Towards a Framework for RDF-based Constraint Languages. September, 2nd 2015
10
Challenge 1
A SPIN mapping constitutes two different aspects:
1. The definition of each language element (e.g. dsp:minOccur).
2. The definition of the violation that is created when validation fails.
The latter might be application specific. A consistent violation representation
across mappings is desirable.
 How can we ensure that two semantically equivalent constraints are
actually validated consistently?
Bosch, Eckert: Guidance, please! Towards a Framework for RDF-based Constraint Languages. September, 2nd 2015
11
Challenge 2
Many constraint languages exist. Semantically equivalent constraints
can be mapped from one language to another. But:
Supporting 5 languages requires 20 mappings,
10 languages require already 90 mappings,
generally 𝑛 ∙ 𝑛 − 1 mappings (both directions) are required.
Every single language element need to be mapped. This is not feasible
practically.
 How can we support the transformation of semantically equivalent
constraints from one constraint language to another?
Bosch, Eckert: Guidance, please! Towards a Framework for RDF-based Constraint Languages. September, 2nd 2015
12
Adding an additional layer
Low Level Language: Constraint Validation
SPIN/SPARQL
Intermediate Representation: Constraint Type (Requirement)
RDF Constraints Vocabulary (RDF-CV)
High Level Languages: Constraint Formulation
DSP OWL 2 ReSh ShEx
SPIN
SPARQL
SPIN
SPARQL
Bosch, Eckert: Guidance, please! Towards a Framework for RDF-based Constraint Languages. September, 2nd 2015
13
RDF-CV building blocks
Constraints are either…
• Simple Constraints or
• Complex Constraints.
Complex Constraints contain
Simple Constraints and/or other
Complex Constraints.
September, 2nd 2015Bosch, Eckert: Guidance, please! Towards a Framework for RDF-based Constraint Languages.
14
Representing simple constraints
September, 2nd 2015Bosch, Eckert: Guidance, please! Towards a Framework for RDF-based Constraint Languages.
15
„Syntactical“ description of the constraint based on a constraining element and up
to 5 parameters:
1. Context class: the class for which the constraint applies
2. Left property list: Depending on the constraining element the left side.
3. Right property list: the right side.
4. Classes: A class restriction for the constrained value.
5. Constraining value: a value to be used in the constraint.
Examples:
context class left p. list right p. list classes c. element c. value
Publication author - Person ≥ 1
context class left p. list right p. list classes c. element c. value
⊤ authorOf, genre authorOfGenre ⊤ property path -
RDF-CV specification
The list of all 103 constraining elements and the representation of all
81 constraint types using RDF-CV is available in a technical report:
Bosch, T., Nolle, A., Acar, E., & Eckert, K. (2015). RDF Validation
Requirements - Evaluation and Logical Underpinning. Computing
Research Repository (CoRR), abs/1501.03933.
(http://arxiv.org/abs/1501.03933)
September, 2nd 2015Bosch, Eckert: Guidance, please! Towards a Framework for RDF-based Constraint Languages.
16
Mapping implementation
Example constraint:
:Publication a owl:Restriction ;
owl:minQualifiedCardinality 1 ;
owl:onProperty :author ;
owl:onClass :Person .
RDF-CV:
[ a rdfcv:SimpleConstraint ;
rdfcv:contextClass :Publication ;
rdfcv:leftProperties ( :author ) ;
rdfcv:classes ( :Person ) ;
rdfcv:constrainingElement "minimum qualified
cardinality restriction" ;
rdfcv:constrainingValue 1 ] .
September, 2nd 2015Bosch, Eckert: Guidance, please! Towards a Framework for RDF-based Constraint Languages.
17
Mapping 1: To and from RDF-CV
• Using the usual SPARQL CONSTRUCT queries, we create the RDF-CV
representation (Mapping m).
• To support transformations from one constraint language to another,
another mapping m‘ from RDF-CV back to the constraint language is
added.
gc = mα (scα )
scβ = m´β (gc)
 This enables constraint transformations in a scalable way
(Challenge 2).
September, 2nd 2015Bosch, Eckert: Guidance, please! Towards a Framework for RDF-based Constraint Languages.
18
Mapping 2: From RDF-CV to SPIN
• From RDF-CV, the SPIN representation can be created as usual.
• This mapping only has to be created only once.
• It contains the definition how exactly the constraint violations are
created. Depending on the application, different mappings can of
course be used.
 This ensures that irrespective of the constraint language,
semantically equivalent constraints are validated consistently
(Challenge 1).
September, 2nd 2015Bosch, Eckert: Guidance, please! Towards a Framework for RDF-based Constraint Languages.
19
Conclusion
We think that this approach is suitable
• to implement the validation of constraints consistently across constraint
languages,
• to support the extension of constraint languages when additional
constraint types should be supported by means of a simple mapping, and
• to enhance or rather establish the interoperability of different constraint
languages.
September, 2nd 2015Bosch, Eckert: Guidance, please! Towards a Framework for RDF-based Constraint Languages.
20
Thank you!
Acknowledgements: Thanks to all participants in the DCMI RDF Application Profiles
task group and particularly the chairs, Karen Coyle and Antoine Isaac.
September, 2nd 2015Bosch, Eckert: Guidance, please! Towards a Framework for RDF-based Constraint Languages.
21
Licence
These slides are licensed according to the Creative Commons
Attribution-ShareAlike Licence
http://creativecommons.org/licenses/by-sa/3.0
September, 2nd 2015Eckert: JudaicaLink
22

More Related Content

What's hot

Global DSL workshop slides
Global DSL workshop slidesGlobal DSL workshop slides
Global DSL workshop slidesericupnorth
 
[DCSB] Torsten Roeder (BBAW), Yury Arzhanov (Ruhr­Universität Bochum) "The Gl...
[DCSB] Torsten Roeder (BBAW), Yury Arzhanov (Ruhr­Universität Bochum) "The Gl...[DCSB] Torsten Roeder (BBAW), Yury Arzhanov (Ruhr­Universität Bochum) "The Gl...
[DCSB] Torsten Roeder (BBAW), Yury Arzhanov (Ruhr­Universität Bochum) "The Gl...Digital Classicist Seminar Berlin
 
Object oriented slides
Object oriented slidesObject oriented slides
Object oriented slidesahad nadeem
 
Open-DO Update
Open-DO UpdateOpen-DO Update
Open-DO UpdateAdaCore
 
Criterion template
Criterion templateCriterion template
Criterion templatebalham
 
Doppl development iteration #10
Doppl development   iteration #10Doppl development   iteration #10
Doppl development iteration #10Diego Perini
 
In pursuit of expressivity: Groovy and Scala compared
In pursuit of expressivity: Groovy and Scala comparedIn pursuit of expressivity: Groovy and Scala compared
In pursuit of expressivity: Groovy and Scala comparedChris Richardson
 
The Rise of Dynamic Languages
The Rise of Dynamic LanguagesThe Rise of Dynamic Languages
The Rise of Dynamic Languagesgreenwop
 
PLUG : Presentation Layer Universal Generator
PLUG : Presentation Layer Universal GeneratorPLUG : Presentation Layer Universal Generator
PLUG : Presentation Layer Universal GeneratorEmmanuel Fuchs
 
[LibreOffice Asia Conference 2019] CJK Issues on LibreOffice(based on Korean ...
[LibreOffice Asia Conference 2019] CJK Issues on LibreOffice(based on Korean ...[LibreOffice Asia Conference 2019] CJK Issues on LibreOffice(based on Korean ...
[LibreOffice Asia Conference 2019] CJK Issues on LibreOffice(based on Korean ...DaeHyun Sung
 
Historical spelling normalization
Historical spelling normalizationHistorical spelling normalization
Historical spelling normalizationrmarquilhas
 
C language myths & secrets
C language myths & secretsC language myths & secrets
C language myths & secretsankush1510
 
Interaction Choreography Models in BPEL:Choreographies on the Enterprise Serv...
Interaction Choreography Models in BPEL:Choreographies on the Enterprise Serv...Interaction Choreography Models in BPEL:Choreographies on the Enterprise Serv...
Interaction Choreography Models in BPEL:Choreographies on the Enterprise Serv...Oliver Kopp
 
R & CDK: A Sturdy Platform in the Oceans of Chemical Data}
R & CDK: A Sturdy Platform in the Oceans of Chemical Data}R & CDK: A Sturdy Platform in the Oceans of Chemical Data}
R & CDK: A Sturdy Platform in the Oceans of Chemical Data}Rajarshi Guha
 
Introduction to c programming
Introduction to c programmingIntroduction to c programming
Introduction to c programmingSivant Kolhe
 
F# Sample and Resources
F# Sample and ResourcesF# Sample and Resources
F# Sample and ResourcesRhonda Tipton
 
Idn root zone lgr workshop icann53
Idn root zone lgr workshop icann53Idn root zone lgr workshop icann53
Idn root zone lgr workshop icann53ICANN
 

What's hot (20)

Global DSL workshop slides
Global DSL workshop slidesGlobal DSL workshop slides
Global DSL workshop slides
 
[DCSB] Torsten Roeder (BBAW), Yury Arzhanov (Ruhr­Universität Bochum) "The Gl...
[DCSB] Torsten Roeder (BBAW), Yury Arzhanov (Ruhr­Universität Bochum) "The Gl...[DCSB] Torsten Roeder (BBAW), Yury Arzhanov (Ruhr­Universität Bochum) "The Gl...
[DCSB] Torsten Roeder (BBAW), Yury Arzhanov (Ruhr­Universität Bochum) "The Gl...
 
Object oriented slides
Object oriented slidesObject oriented slides
Object oriented slides
 
Lecture 11
Lecture 11Lecture 11
Lecture 11
 
Open-DO Update
Open-DO UpdateOpen-DO Update
Open-DO Update
 
C Language
C LanguageC Language
C Language
 
Criterion template
Criterion templateCriterion template
Criterion template
 
Doppl development iteration #10
Doppl development   iteration #10Doppl development   iteration #10
Doppl development iteration #10
 
In pursuit of expressivity: Groovy and Scala compared
In pursuit of expressivity: Groovy and Scala comparedIn pursuit of expressivity: Groovy and Scala compared
In pursuit of expressivity: Groovy and Scala compared
 
The Rise of Dynamic Languages
The Rise of Dynamic LanguagesThe Rise of Dynamic Languages
The Rise of Dynamic Languages
 
PLUG : Presentation Layer Universal Generator
PLUG : Presentation Layer Universal GeneratorPLUG : Presentation Layer Universal Generator
PLUG : Presentation Layer Universal Generator
 
[LibreOffice Asia Conference 2019] CJK Issues on LibreOffice(based on Korean ...
[LibreOffice Asia Conference 2019] CJK Issues on LibreOffice(based on Korean ...[LibreOffice Asia Conference 2019] CJK Issues on LibreOffice(based on Korean ...
[LibreOffice Asia Conference 2019] CJK Issues on LibreOffice(based on Korean ...
 
Historical spelling normalization
Historical spelling normalizationHistorical spelling normalization
Historical spelling normalization
 
Improving Interoperability of Text Mining Tools with BioC
Improving Interoperability of Text Mining Tools with BioCImproving Interoperability of Text Mining Tools with BioC
Improving Interoperability of Text Mining Tools with BioC
 
C language myths & secrets
C language myths & secretsC language myths & secrets
C language myths & secrets
 
Interaction Choreography Models in BPEL:Choreographies on the Enterprise Serv...
Interaction Choreography Models in BPEL:Choreographies on the Enterprise Serv...Interaction Choreography Models in BPEL:Choreographies on the Enterprise Serv...
Interaction Choreography Models in BPEL:Choreographies on the Enterprise Serv...
 
R & CDK: A Sturdy Platform in the Oceans of Chemical Data}
R & CDK: A Sturdy Platform in the Oceans of Chemical Data}R & CDK: A Sturdy Platform in the Oceans of Chemical Data}
R & CDK: A Sturdy Platform in the Oceans of Chemical Data}
 
Introduction to c programming
Introduction to c programmingIntroduction to c programming
Introduction to c programming
 
F# Sample and Resources
F# Sample and ResourcesF# Sample and Resources
F# Sample and Resources
 
Idn root zone lgr workshop icann53
Idn root zone lgr workshop icann53Idn root zone lgr workshop icann53
Idn root zone lgr workshop icann53
 

Viewers also liked

Workshop on Semantic Statistics - Generic Multilevel Approach Designing Domai...
Workshop on Semantic Statistics - Generic Multilevel Approach Designing Domai...Workshop on Semantic Statistics - Generic Multilevel Approach Designing Domai...
Workshop on Semantic Statistics - Generic Multilevel Approach Designing Domai...Dr.-Ing. Thomas Hartmann
 
IASSIST 2011 - Representation of the Data Documentation Initiative using Sema...
IASSIST 2011 - Representation of the Data Documentation Initiative using Sema...IASSIST 2011 - Representation of the Data Documentation Initiative using Sema...
IASSIST 2011 - Representation of the Data Documentation Initiative using Sema...Dr.-Ing. Thomas Hartmann
 
Doctoral Examination at the Karlsruhe Institute of Technology (08.07.2016)
Doctoral Examination at the Karlsruhe Institute of Technology (08.07.2016)Doctoral Examination at the Karlsruhe Institute of Technology (08.07.2016)
Doctoral Examination at the Karlsruhe Institute of Technology (08.07.2016)Dr.-Ing. Thomas Hartmann
 
2015.09. - The Role of Reasoning for RDF Validation (SEMANTiCS 2015)
2015.09. - The Role of Reasoning for RDF Validation (SEMANTiCS 2015)2015.09. - The Role of Reasoning for RDF Validation (SEMANTiCS 2015)
2015.09. - The Role of Reasoning for RDF Validation (SEMANTiCS 2015)Dr.-Ing. Thomas Hartmann
 
OCAS @ ISWC 2011 - Generic Multilevel Approach Designing Domain Ontologies Ba...
OCAS @ ISWC 2011 - Generic Multilevel Approach Designing Domain Ontologies Ba...OCAS @ ISWC 2011 - Generic Multilevel Approach Designing Domain Ontologies Ba...
OCAS @ ISWC 2011 - Generic Multilevel Approach Designing Domain Ontologies Ba...Dr.-Ing. Thomas Hartmann
 
2012.10 - DDI Lifecycle - Moving Forward - 3
2012.10 - DDI Lifecycle - Moving Forward - 32012.10 - DDI Lifecycle - Moving Forward - 3
2012.10 - DDI Lifecycle - Moving Forward - 3Dr.-Ing. Thomas Hartmann
 

Viewers also liked (9)

2014.12 - Let's Disco - 2 (EDDI 2014)
2014.12 - Let's Disco - 2 (EDDI 2014)2014.12 - Let's Disco - 2 (EDDI 2014)
2014.12 - Let's Disco - 2 (EDDI 2014)
 
2012.11 - ISWC 2012 - DC - 1
2012.11 - ISWC 2012 - DC - 12012.11 - ISWC 2012 - DC - 1
2012.11 - ISWC 2012 - DC - 1
 
Workshop on Semantic Statistics - Generic Multilevel Approach Designing Domai...
Workshop on Semantic Statistics - Generic Multilevel Approach Designing Domai...Workshop on Semantic Statistics - Generic Multilevel Approach Designing Domai...
Workshop on Semantic Statistics - Generic Multilevel Approach Designing Domai...
 
IASSIST 2011 - Representation of the Data Documentation Initiative using Sema...
IASSIST 2011 - Representation of the Data Documentation Initiative using Sema...IASSIST 2011 - Representation of the Data Documentation Initiative using Sema...
IASSIST 2011 - Representation of the Data Documentation Initiative using Sema...
 
Doctoral Examination at the Karlsruhe Institute of Technology (08.07.2016)
Doctoral Examination at the Karlsruhe Institute of Technology (08.07.2016)Doctoral Examination at the Karlsruhe Institute of Technology (08.07.2016)
Doctoral Examination at the Karlsruhe Institute of Technology (08.07.2016)
 
2015.09. - The Role of Reasoning for RDF Validation (SEMANTiCS 2015)
2015.09. - The Role of Reasoning for RDF Validation (SEMANTiCS 2015)2015.09. - The Role of Reasoning for RDF Validation (SEMANTiCS 2015)
2015.09. - The Role of Reasoning for RDF Validation (SEMANTiCS 2015)
 
2014.12 - Let's Disco (EDDI 2014)
2014.12 - Let's Disco (EDDI 2014)2014.12 - Let's Disco (EDDI 2014)
2014.12 - Let's Disco (EDDI 2014)
 
OCAS @ ISWC 2011 - Generic Multilevel Approach Designing Domain Ontologies Ba...
OCAS @ ISWC 2011 - Generic Multilevel Approach Designing Domain Ontologies Ba...OCAS @ ISWC 2011 - Generic Multilevel Approach Designing Domain Ontologies Ba...
OCAS @ ISWC 2011 - Generic Multilevel Approach Designing Domain Ontologies Ba...
 
2012.10 - DDI Lifecycle - Moving Forward - 3
2012.10 - DDI Lifecycle - Moving Forward - 32012.10 - DDI Lifecycle - Moving Forward - 3
2012.10 - DDI Lifecycle - Moving Forward - 3
 

Similar to 2015.09 - Guidance, Please! Towards a Framework for RDF-Based Constraint Languages (DC 2015)

Atlanta MLconf Machine Learning Conference 09-23-2016
Atlanta MLconf Machine Learning Conference 09-23-2016Atlanta MLconf Machine Learning Conference 09-23-2016
Atlanta MLconf Machine Learning Conference 09-23-2016Chris Fregly
 
Chris Fregly, Research Scientist, PipelineIO at MLconf ATL 2016
Chris Fregly, Research Scientist, PipelineIO at MLconf ATL 2016Chris Fregly, Research Scientist, PipelineIO at MLconf ATL 2016
Chris Fregly, Research Scientist, PipelineIO at MLconf ATL 2016MLconf
 
A REVIEW ON RDB TO RDF MAPPING FOR SEMANTIC WEB
A REVIEW ON RDB TO RDF MAPPING FOR SEMANTIC WEB A REVIEW ON RDB TO RDF MAPPING FOR SEMANTIC WEB
A REVIEW ON RDB TO RDF MAPPING FOR SEMANTIC WEB ijfcstjournal
 
A Review on RDB to RDF Mapping for Semantic Web
A Review on RDB to RDF Mapping for Semantic WebA Review on RDB to RDF Mapping for Semantic Web
A Review on RDB to RDF Mapping for Semantic WebAEIJjournal2
 
A REVIEW ON RDB TO RDF MAPPING FOR SEMANTIC WEB
A REVIEW ON RDB TO RDF MAPPING FOR SEMANTIC WEB A REVIEW ON RDB TO RDF MAPPING FOR SEMANTIC WEB
A REVIEW ON RDB TO RDF MAPPING FOR SEMANTIC WEB ijfcstjournal
 
Linked Data (in low-resource) Platforms: a mapping for Constrained Applicatio...
Linked Data (in low-resource) Platforms: a mapping for Constrained Applicatio...Linked Data (in low-resource) Platforms: a mapping for Constrained Applicatio...
Linked Data (in low-resource) Platforms: a mapping for Constrained Applicatio...SisInfLab-SWoT @Politecnico di Bari
 
Encoding and Designing for the Swift Poems Project
Encoding and Designing for the Swift Poems ProjectEncoding and Designing for the Swift Poems Project
Encoding and Designing for the Swift Poems ProjectJames Griffin
 
Realizing the promise of portable data processing with Apache Beam
Realizing the promise of portable data processing with Apache BeamRealizing the promise of portable data processing with Apache Beam
Realizing the promise of portable data processing with Apache BeamDataWorks Summit
 
Language Server Protocol - Why the Hype?
Language Server Protocol - Why the Hype?Language Server Protocol - Why the Hype?
Language Server Protocol - Why the Hype?mikaelbarbero
 
8 Open-Source Concept Coded Graphic Symbol support in OpenOffice.org
8 Open-Source Concept Coded Graphic Symbol support in OpenOffice.org8 Open-Source Concept Coded Graphic Symbol support in OpenOffice.org
8 Open-Source Concept Coded Graphic Symbol support in OpenOffice.orgAEGIS-ACCESSIBLE Projects
 
Introduction to LDP in Apache Marmotta
Introduction to LDP in Apache MarmottaIntroduction to LDP in Apache Marmotta
Introduction to LDP in Apache MarmottaSergio Fernández
 
Present and future of unified, portable and efficient data processing with Ap...
Present and future of unified, portable and efficient data processing with Ap...Present and future of unified, portable and efficient data processing with Ap...
Present and future of unified, portable and efficient data processing with Ap...DataWorks Summit
 
A hands on overview of the semantic web
A hands on overview of the semantic webA hands on overview of the semantic web
A hands on overview of the semantic webMarakana Inc.
 
PL Lecture 02 - Binding and Scope
PL Lecture 02 - Binding and ScopePL Lecture 02 - Binding and Scope
PL Lecture 02 - Binding and ScopeSchwannden Kuo
 
Word embeddings
Word embeddingsWord embeddings
Word embeddingsShruti kar
 
Knowledge-poor and Knowledge-rich Approaches for Multilingual Terminology Ext...
Knowledge-poor and Knowledge-rich Approaches for Multilingual Terminology Ext...Knowledge-poor and Knowledge-rich Approaches for Multilingual Terminology Ext...
Knowledge-poor and Knowledge-rich Approaches for Multilingual Terminology Ext...Christophe Tricot
 

Similar to 2015.09 - Guidance, Please! Towards a Framework for RDF-Based Constraint Languages (DC 2015) (20)

KIT Graduiertenkolloquium 11.05.2016
KIT Graduiertenkolloquium 11.05.2016KIT Graduiertenkolloquium 11.05.2016
KIT Graduiertenkolloquium 11.05.2016
 
Atlanta MLconf Machine Learning Conference 09-23-2016
Atlanta MLconf Machine Learning Conference 09-23-2016Atlanta MLconf Machine Learning Conference 09-23-2016
Atlanta MLconf Machine Learning Conference 09-23-2016
 
Chris Fregly, Research Scientist, PipelineIO at MLconf ATL 2016
Chris Fregly, Research Scientist, PipelineIO at MLconf ATL 2016Chris Fregly, Research Scientist, PipelineIO at MLconf ATL 2016
Chris Fregly, Research Scientist, PipelineIO at MLconf ATL 2016
 
Preparing for Scala 3
Preparing for Scala 3Preparing for Scala 3
Preparing for Scala 3
 
A REVIEW ON RDB TO RDF MAPPING FOR SEMANTIC WEB
A REVIEW ON RDB TO RDF MAPPING FOR SEMANTIC WEB A REVIEW ON RDB TO RDF MAPPING FOR SEMANTIC WEB
A REVIEW ON RDB TO RDF MAPPING FOR SEMANTIC WEB
 
A Review on RDB to RDF Mapping for Semantic Web
A Review on RDB to RDF Mapping for Semantic WebA Review on RDB to RDF Mapping for Semantic Web
A Review on RDB to RDF Mapping for Semantic Web
 
A REVIEW ON RDB TO RDF MAPPING FOR SEMANTIC WEB
A REVIEW ON RDB TO RDF MAPPING FOR SEMANTIC WEB A REVIEW ON RDB TO RDF MAPPING FOR SEMANTIC WEB
A REVIEW ON RDB TO RDF MAPPING FOR SEMANTIC WEB
 
Linked Data (in low-resource) Platforms: a mapping for Constrained Applicatio...
Linked Data (in low-resource) Platforms: a mapping for Constrained Applicatio...Linked Data (in low-resource) Platforms: a mapping for Constrained Applicatio...
Linked Data (in low-resource) Platforms: a mapping for Constrained Applicatio...
 
Encoding and Designing for the Swift Poems Project
Encoding and Designing for the Swift Poems ProjectEncoding and Designing for the Swift Poems Project
Encoding and Designing for the Swift Poems Project
 
Realizing the promise of portable data processing with Apache Beam
Realizing the promise of portable data processing with Apache BeamRealizing the promise of portable data processing with Apache Beam
Realizing the promise of portable data processing with Apache Beam
 
Programming Languages
Programming LanguagesProgramming Languages
Programming Languages
 
Language Server Protocol - Why the Hype?
Language Server Protocol - Why the Hype?Language Server Protocol - Why the Hype?
Language Server Protocol - Why the Hype?
 
8 Open-Source Concept Coded Graphic Symbol support in OpenOffice.org
8 Open-Source Concept Coded Graphic Symbol support in OpenOffice.org8 Open-Source Concept Coded Graphic Symbol support in OpenOffice.org
8 Open-Source Concept Coded Graphic Symbol support in OpenOffice.org
 
Introduction to LDP in Apache Marmotta
Introduction to LDP in Apache MarmottaIntroduction to LDP in Apache Marmotta
Introduction to LDP in Apache Marmotta
 
semanticweb
semanticwebsemanticweb
semanticweb
 
Present and future of unified, portable and efficient data processing with Ap...
Present and future of unified, portable and efficient data processing with Ap...Present and future of unified, portable and efficient data processing with Ap...
Present and future of unified, portable and efficient data processing with Ap...
 
A hands on overview of the semantic web
A hands on overview of the semantic webA hands on overview of the semantic web
A hands on overview of the semantic web
 
PL Lecture 02 - Binding and Scope
PL Lecture 02 - Binding and ScopePL Lecture 02 - Binding and Scope
PL Lecture 02 - Binding and Scope
 
Word embeddings
Word embeddingsWord embeddings
Word embeddings
 
Knowledge-poor and Knowledge-rich Approaches for Multilingual Terminology Ext...
Knowledge-poor and Knowledge-rich Approaches for Multilingual Terminology Ext...Knowledge-poor and Knowledge-rich Approaches for Multilingual Terminology Ext...
Knowledge-poor and Knowledge-rich Approaches for Multilingual Terminology Ext...
 

More from Dr.-Ing. Thomas Hartmann

2016.02 - Validating RDF Data Quality using Constraints to Direct the Develop...
2016.02 - Validating RDF Data Quality using Constraints to Direct the Develop...2016.02 - Validating RDF Data Quality using Constraints to Direct the Develop...
2016.02 - Validating RDF Data Quality using Constraints to Direct the Develop...Dr.-Ing. Thomas Hartmann
 
2015.03 - The RDF Validator - A Tool to Validate RDF Data (KIM)
2015.03 - The RDF Validator - A Tool to Validate RDF Data (KIM)2015.03 - The RDF Validator - A Tool to Validate RDF Data (KIM)
2015.03 - The RDF Validator - A Tool to Validate RDF Data (KIM)Dr.-Ing. Thomas Hartmann
 
2014.10 - How to Formulate and Validate Constraints (DC 2014)
2014.10 - How to Formulate and Validate Constraints (DC 2014)2014.10 - How to Formulate and Validate Constraints (DC 2014)
2014.10 - How to Formulate and Validate Constraints (DC 2014)Dr.-Ing. Thomas Hartmann
 
2014.10 - Towards Description Set Profiles for RDF Using SPARQL as Intermedia...
2014.10 - Towards Description Set Profiles for RDF Using SPARQL as Intermedia...2014.10 - Towards Description Set Profiles for RDF Using SPARQL as Intermedia...
2014.10 - Towards Description Set Profiles for RDF Using SPARQL as Intermedia...Dr.-Ing. Thomas Hartmann
 
2014.10 - Requirements on RDF Constraint Formulation and Validation (DC 2014)
2014.10 - Requirements on RDF Constraint Formulation and Validation (DC 2014)2014.10 - Requirements on RDF Constraint Formulation and Validation (DC 2014)
2014.10 - Requirements on RDF Constraint Formulation and Validation (DC 2014)Dr.-Ing. Thomas Hartmann
 
The Next Generation of the Microdata Information System MISSY - An Integrated...
The Next Generation of the Microdata Information System MISSY - An Integrated...The Next Generation of the Microdata Information System MISSY - An Integrated...
The Next Generation of the Microdata Information System MISSY - An Integrated...Dr.-Ing. Thomas Hartmann
 
The New Microdata Information System (MISSY) - Integration of DDI-based Data ...
The New Microdata Information System (MISSY) - Integration of DDI-based Data ...The New Microdata Information System (MISSY) - Integration of DDI-based Data ...
The New Microdata Information System (MISSY) - Integration of DDI-based Data ...Dr.-Ing. Thomas Hartmann
 
Use Cases and Vocabularies Related to the DDI-RDF Discovery Vocabulary (EDDI ...
Use Cases and Vocabularies Related to the DDI-RDF Discovery Vocabulary (EDDI ...Use Cases and Vocabularies Related to the DDI-RDF Discovery Vocabulary (EDDI ...
Use Cases and Vocabularies Related to the DDI-RDF Discovery Vocabulary (EDDI ...Dr.-Ing. Thomas Hartmann
 
Towards the Discovery of Person-Level Data (SemStats, ISWC 2013) [2013.10]
Towards the Discovery of Person-Level Data (SemStats, ISWC 2013) [2013.10]Towards the Discovery of Person-Level Data (SemStats, ISWC 2013) [2013.10]
Towards the Discovery of Person-Level Data (SemStats, ISWC 2013) [2013.10]Dr.-Ing. Thomas Hartmann
 
2013.02 - 7th Workshop of German Panel Surveys
2013.02 - 7th Workshop of German Panel Surveys2013.02 - 7th Workshop of German Panel Surveys
2013.02 - 7th Workshop of German Panel SurveysDr.-Ing. Thomas Hartmann
 
2012.10 - DDI Lifecycle - Moving Forward - 3
2012.10 - DDI Lifecycle - Moving Forward - 32012.10 - DDI Lifecycle - Moving Forward - 3
2012.10 - DDI Lifecycle - Moving Forward - 3Dr.-Ing. Thomas Hartmann
 
2012.10 - DDI Lifecycle - Moving Forward - 2
2012.10 - DDI Lifecycle - Moving Forward - 22012.10 - DDI Lifecycle - Moving Forward - 2
2012.10 - DDI Lifecycle - Moving Forward - 2Dr.-Ing. Thomas Hartmann
 

More from Dr.-Ing. Thomas Hartmann (20)

2016.02 - Validating RDF Data Quality using Constraints to Direct the Develop...
2016.02 - Validating RDF Data Quality using Constraints to Direct the Develop...2016.02 - Validating RDF Data Quality using Constraints to Direct the Develop...
2016.02 - Validating RDF Data Quality using Constraints to Direct the Develop...
 
2015.03 - The RDF Validator - A Tool to Validate RDF Data (KIM)
2015.03 - The RDF Validator - A Tool to Validate RDF Data (KIM)2015.03 - The RDF Validator - A Tool to Validate RDF Data (KIM)
2015.03 - The RDF Validator - A Tool to Validate RDF Data (KIM)
 
2014.10 - How to Formulate and Validate Constraints (DC 2014)
2014.10 - How to Formulate and Validate Constraints (DC 2014)2014.10 - How to Formulate and Validate Constraints (DC 2014)
2014.10 - How to Formulate and Validate Constraints (DC 2014)
 
2014.10 - Towards Description Set Profiles for RDF Using SPARQL as Intermedia...
2014.10 - Towards Description Set Profiles for RDF Using SPARQL as Intermedia...2014.10 - Towards Description Set Profiles for RDF Using SPARQL as Intermedia...
2014.10 - Towards Description Set Profiles for RDF Using SPARQL as Intermedia...
 
2014.10 - Requirements on RDF Constraint Formulation and Validation (DC 2014)
2014.10 - Requirements on RDF Constraint Formulation and Validation (DC 2014)2014.10 - Requirements on RDF Constraint Formulation and Validation (DC 2014)
2014.10 - Requirements on RDF Constraint Formulation and Validation (DC 2014)
 
The Next Generation of the Microdata Information System MISSY - An Integrated...
The Next Generation of the Microdata Information System MISSY - An Integrated...The Next Generation of the Microdata Information System MISSY - An Integrated...
The Next Generation of the Microdata Information System MISSY - An Integrated...
 
The New Microdata Information System (MISSY) - Integration of DDI-based Data ...
The New Microdata Information System (MISSY) - Integration of DDI-based Data ...The New Microdata Information System (MISSY) - Integration of DDI-based Data ...
The New Microdata Information System (MISSY) - Integration of DDI-based Data ...
 
Use Cases and Vocabularies Related to the DDI-RDF Discovery Vocabulary (EDDI ...
Use Cases and Vocabularies Related to the DDI-RDF Discovery Vocabulary (EDDI ...Use Cases and Vocabularies Related to the DDI-RDF Discovery Vocabulary (EDDI ...
Use Cases and Vocabularies Related to the DDI-RDF Discovery Vocabulary (EDDI ...
 
Towards the Discovery of Person-Level Data (SemStats, ISWC 2013) [2013.10]
Towards the Discovery of Person-Level Data (SemStats, ISWC 2013) [2013.10]Towards the Discovery of Person-Level Data (SemStats, ISWC 2013) [2013.10]
Towards the Discovery of Person-Level Data (SemStats, ISWC 2013) [2013.10]
 
2013.05 - IASSIST 2013 - 3
2013.05 - IASSIST 2013 - 32013.05 - IASSIST 2013 - 3
2013.05 - IASSIST 2013 - 3
 
2013.05 - IASSIST 2013 - 2
2013.05 - IASSIST 2013 - 22013.05 - IASSIST 2013 - 2
2013.05 - IASSIST 2013 - 2
 
2013.05 - IASSIST 2013
2013.05 - IASSIST 20132013.05 - IASSIST 2013
2013.05 - IASSIST 2013
 
2013.05 - LDOW 2013 @ WWW 2013
2013.05 - LDOW 2013 @ WWW 20132013.05 - LDOW 2013 @ WWW 2013
2013.05 - LDOW 2013 @ WWW 2013
 
2013.02 - 7th Workshop of German Panel Surveys
2013.02 - 7th Workshop of German Panel Surveys2013.02 - 7th Workshop of German Panel Surveys
2013.02 - 7th Workshop of German Panel Surveys
 
2012.12 - EDDI 2012 - Poster Demo
2012.12 - EDDI 2012 - Poster Demo2012.12 - EDDI 2012 - Poster Demo
2012.12 - EDDI 2012 - Poster Demo
 
2012.12 - EDDI 2012 - Workshop
2012.12 - EDDI 2012 - Workshop2012.12 - EDDI 2012 - Workshop
2012.12 - EDDI 2012 - Workshop
 
2012.11 - ISWC 2012 - DC - 2
2012.11 - ISWC 2012 - DC -  22012.11 - ISWC 2012 - DC -  2
2012.11 - ISWC 2012 - DC - 2
 
2012.10 - DDI Lifecycle - Moving Forward - 3
2012.10 - DDI Lifecycle - Moving Forward - 32012.10 - DDI Lifecycle - Moving Forward - 3
2012.10 - DDI Lifecycle - Moving Forward - 3
 
2012.10 - DDI Lifecycle - Moving Forward - 2
2012.10 - DDI Lifecycle - Moving Forward - 22012.10 - DDI Lifecycle - Moving Forward - 2
2012.10 - DDI Lifecycle - Moving Forward - 2
 
2012.10 - DDI Lifecycle - Moving Forward
2012.10 - DDI Lifecycle - Moving Forward2012.10 - DDI Lifecycle - Moving Forward
2012.10 - DDI Lifecycle - Moving Forward
 

Recently uploaded

Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostLeverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostZilliz
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLScyllaDB
 
Story boards and shot lists for my a level piece
Story boards and shot lists for my a level pieceStory boards and shot lists for my a level piece
Story boards and shot lists for my a level piececharlottematthew16
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenHervé Boutemy
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Manik S Magar
 
Search Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfSearch Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfRankYa
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):comworks
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfAlex Barbosa Coqueiro
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyAlfredo García Lavilla
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsSergiu Bodiu
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024Lorenzo Miniero
 
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsVertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsMiki Katsuragi
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clashcharlottematthew16
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxNavinnSomaal
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebUiPathCommunity
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brandgvaughan
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Mattias Andersson
 

Recently uploaded (20)

Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostLeverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQL
 
Story boards and shot lists for my a level piece
Story boards and shot lists for my a level pieceStory boards and shot lists for my a level piece
Story boards and shot lists for my a level piece
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache Maven
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!
 
Search Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfSearch Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdf
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdf
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easy
 
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptxE-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platforms
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024
 
DMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special EditionDMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special Edition
 
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsVertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering Tips
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clash
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptx
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio Web
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brand
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?
 

2015.09 - Guidance, Please! Towards a Framework for RDF-Based Constraint Languages (DC 2015)

  • 1. Guidance, Please! Towards a Framework for RDF-based Constraint Languages. Thomas Bosch, GESIS – Lebniz Institute for the Social Sciences Kai Eckert, Stuttgart Media University
  • 2. Prerequisites • For RDF data, we want to express constraints, as it is common for XML files using for example XML Schema: „Every Book must have at least one author.“ • Several languages exist or are in development that support this, for instance Description Set Profiles, OWL 2 (despite not intended to be a constraint language), Shape Expressions or Resource Shapes. • For the further development of constraint languages, the DCMI RDF Application Profiles task group collected requirements in a public database. Bosch, Eckert: Guidance, please! Towards a Framework for RDF-based Constraint Languages. September, 2nd 2015 2
  • 3. http://purl.org/net/rdf-application-profiles Bosch, Eckert: Guidance, please! Towards a Framework for RDF-based Constraint Languages. September, 2nd 2015 3
  • 4. September, 2nd 2015Bosch, Eckert: Guidance, please! Towards a Framework for RDF-based Constraint Languages. 4
  • 5. Disclaimer: This is not an accurate visualization! Bosch, Eckert: Guidance, please! Towards a Framework for RDF-based Constraint Languages. September, 2nd 2015 5
  • 6. A publication needs an author! OWL 2: Publication a owl:Restriction ; owl:minQualifiedCardinality 1 ; owl:onProperty author ; owl:onClass Person . ShEx: Publication { author @Person{1, } } ReSh: Publication a rs:ResourceShape ; rs:property [ rs:propertyDefinition author ; rs:valueShape Person ; rs:occurs rs:One-or-many ; ] . DSP: [ dsp:resourceClass Publication ; dsp:statementTemplate [ dsp:minOccur 1 ; dsp:property author ; dsp:nonLiteralConstraint [ dsp:valueClass Person ] ] ] . Bosch, Eckert: Guidance, please! Towards a Framework for RDF-based Constraint Languages. September, 2nd 2015 6
  • 7. Let‘s spin…. SPIN: CONSTRUCT { [ a spin:ConstraintViolation ... . ] } WHERE { ?this a ?C1 ; ?p ?o . BIND ( qualifiedCardinality( ?this, ?p, ?C2 ) AS ?c ) . BIND( STRDT ( STR ( ?c ), xsd:nonNegativeInteger ) AS ?cardinality ) . FILTER ( ?cardinality < 1 ) . FILTER ( ?C1 = Publication ) . FILTER ( ?C2 = Person ) . FILTER ( ?p = author ) . } SPIN function qualifiedCardinality: SELECT ( COUNT ( ?arg1 ) AS ?c ) WHERE { ?arg1 ?arg2 ?o . ?o a ?arg3 . } Bosch, Eckert: Guidance, please! Towards a Framework for RDF-based Constraint Languages. September, 2nd 2015 7
  • 8. From high-level to low-level Low Level Language: Constraint Validation SPIN/SPARQL High Level Languages: Constraint Formulation DSP OWL 2 ReSh ShEx SPIN SPARQL Bosch, Eckert: Guidance, please! Towards a Framework for RDF-based Constraint Languages. September, 2nd 2015 8
  • 9. Mapping from DSP to SPIN using SPARQL CONSTRUCT { _:constraintViolation a spin:ConstraintViolation ; rdfs:label ?violationMessage ; spin:violationRoot ?this ; spin:violationPath ?property ; spin:violationSource ?violationSource . } WHERE { ?this a ?resourceClass . ?descriptionTemplate dsp:resourceClass ?resourceClass ; dsp:statementTemplate ?statementTemplate . ?statementTemplate dsp:minOccur ?minimum ; dsp:property ?property ; dsp:nonLiteralConstraint ?nonLiteralConstraint . ?nonLiteralConstraint dsp:valueClass ?valueClass . BIND ( qualifiedCardinality( ?this, ?property, ?valueClass ) AS ?cardinality ) . FILTER ( ?cardinality < ?minimum ) . } SPIN SPARQL Bosch, Eckert: Guidance, please! Towards a Framework for RDF-based Constraint Languages. September, 2nd 2015 9
  • 10. Step by step: Constraint validation using DSP 1. Write down your data constraints: :authorNeeded dsp:resourceClass Publication ; dsp:statementTemplate [ dsp:minOccur 1 ; dsp:property author ; dsp:nonLiteralConstraint [ dsp:valueClass Person ] ]. 2. Create a mapping from DSP to SPARQL: • As shown before. • One mapping per DSP element. • This only has to be done once for DSP. 3. Load constraints and mappings and execute the validation using SPIN.  This was our approach in our DC-2014 paper and is implemented in our demo: http://purl.org/net/rdfval-demo Bosch, Eckert: Guidance, please! Towards a Framework for RDF-based Constraint Languages. September, 2nd 2015 10
  • 11. Challenge 1 A SPIN mapping constitutes two different aspects: 1. The definition of each language element (e.g. dsp:minOccur). 2. The definition of the violation that is created when validation fails. The latter might be application specific. A consistent violation representation across mappings is desirable.  How can we ensure that two semantically equivalent constraints are actually validated consistently? Bosch, Eckert: Guidance, please! Towards a Framework for RDF-based Constraint Languages. September, 2nd 2015 11
  • 12. Challenge 2 Many constraint languages exist. Semantically equivalent constraints can be mapped from one language to another. But: Supporting 5 languages requires 20 mappings, 10 languages require already 90 mappings, generally 𝑛 ∙ 𝑛 − 1 mappings (both directions) are required. Every single language element need to be mapped. This is not feasible practically.  How can we support the transformation of semantically equivalent constraints from one constraint language to another? Bosch, Eckert: Guidance, please! Towards a Framework for RDF-based Constraint Languages. September, 2nd 2015 12
  • 13. Adding an additional layer Low Level Language: Constraint Validation SPIN/SPARQL Intermediate Representation: Constraint Type (Requirement) RDF Constraints Vocabulary (RDF-CV) High Level Languages: Constraint Formulation DSP OWL 2 ReSh ShEx SPIN SPARQL SPIN SPARQL Bosch, Eckert: Guidance, please! Towards a Framework for RDF-based Constraint Languages. September, 2nd 2015 13
  • 14. RDF-CV building blocks Constraints are either… • Simple Constraints or • Complex Constraints. Complex Constraints contain Simple Constraints and/or other Complex Constraints. September, 2nd 2015Bosch, Eckert: Guidance, please! Towards a Framework for RDF-based Constraint Languages. 14
  • 15. Representing simple constraints September, 2nd 2015Bosch, Eckert: Guidance, please! Towards a Framework for RDF-based Constraint Languages. 15 „Syntactical“ description of the constraint based on a constraining element and up to 5 parameters: 1. Context class: the class for which the constraint applies 2. Left property list: Depending on the constraining element the left side. 3. Right property list: the right side. 4. Classes: A class restriction for the constrained value. 5. Constraining value: a value to be used in the constraint. Examples: context class left p. list right p. list classes c. element c. value Publication author - Person ≥ 1 context class left p. list right p. list classes c. element c. value ⊤ authorOf, genre authorOfGenre ⊤ property path -
  • 16. RDF-CV specification The list of all 103 constraining elements and the representation of all 81 constraint types using RDF-CV is available in a technical report: Bosch, T., Nolle, A., Acar, E., & Eckert, K. (2015). RDF Validation Requirements - Evaluation and Logical Underpinning. Computing Research Repository (CoRR), abs/1501.03933. (http://arxiv.org/abs/1501.03933) September, 2nd 2015Bosch, Eckert: Guidance, please! Towards a Framework for RDF-based Constraint Languages. 16
  • 17. Mapping implementation Example constraint: :Publication a owl:Restriction ; owl:minQualifiedCardinality 1 ; owl:onProperty :author ; owl:onClass :Person . RDF-CV: [ a rdfcv:SimpleConstraint ; rdfcv:contextClass :Publication ; rdfcv:leftProperties ( :author ) ; rdfcv:classes ( :Person ) ; rdfcv:constrainingElement "minimum qualified cardinality restriction" ; rdfcv:constrainingValue 1 ] . September, 2nd 2015Bosch, Eckert: Guidance, please! Towards a Framework for RDF-based Constraint Languages. 17
  • 18. Mapping 1: To and from RDF-CV • Using the usual SPARQL CONSTRUCT queries, we create the RDF-CV representation (Mapping m). • To support transformations from one constraint language to another, another mapping m‘ from RDF-CV back to the constraint language is added. gc = mα (scα ) scβ = m´β (gc)  This enables constraint transformations in a scalable way (Challenge 2). September, 2nd 2015Bosch, Eckert: Guidance, please! Towards a Framework for RDF-based Constraint Languages. 18
  • 19. Mapping 2: From RDF-CV to SPIN • From RDF-CV, the SPIN representation can be created as usual. • This mapping only has to be created only once. • It contains the definition how exactly the constraint violations are created. Depending on the application, different mappings can of course be used.  This ensures that irrespective of the constraint language, semantically equivalent constraints are validated consistently (Challenge 1). September, 2nd 2015Bosch, Eckert: Guidance, please! Towards a Framework for RDF-based Constraint Languages. 19
  • 20. Conclusion We think that this approach is suitable • to implement the validation of constraints consistently across constraint languages, • to support the extension of constraint languages when additional constraint types should be supported by means of a simple mapping, and • to enhance or rather establish the interoperability of different constraint languages. September, 2nd 2015Bosch, Eckert: Guidance, please! Towards a Framework for RDF-based Constraint Languages. 20
  • 21. Thank you! Acknowledgements: Thanks to all participants in the DCMI RDF Application Profiles task group and particularly the chairs, Karen Coyle and Antoine Isaac. September, 2nd 2015Bosch, Eckert: Guidance, please! Towards a Framework for RDF-based Constraint Languages. 21
  • 22. Licence These slides are licensed according to the Creative Commons Attribution-ShareAlike Licence http://creativecommons.org/licenses/by-sa/3.0 September, 2nd 2015Eckert: JudaicaLink 22