A Review of SHACL: From Data Validation to Schema Reasoning for RDF Graphs

We present an introduction and a review of Shapes Constraint Language (shacl), the W3C recommendation language for validating rdf data. A shacl document describes a set of constraints on rdf nodes, and a graph is valid with respect to the document if its nodes satisfy these constraints. We revisit the basic concepts of the language, its constructs and components and their interaction. We review the different formal frameworks used to study this language and the different semantics proposed. We examine a number of related problems, from containment and satisfiability to the interaction of shacl with inference rules, and exhibit how different modellings of the language are useful for different problems. We also cover practical aspects of shacl, discussing its implementations and state of adoption, to present a holistic review useful to practitioners and theoreticians alike.

[1]  Hao Wang Proving theorems by pattern recognition — II , 1961 .

[2]  Bruno Marnette,et al.  Generalized schema-mappings: from termination to tractability , 2009, PODS.

[3]  Michael Benedikt,et al.  Query Answering with Transitive and Linear-Ordered Data , 2016, IJCAI.

[4]  Ognjen Savkovic,et al.  Semantics and Validation of Recursive SHACL , 2018, SEMWEB.

[5]  Andreas Ekelhart,et al.  Finding Non-compliances with Declarative Process Constraints Through Semantic Technologies , 2019, CAiSE Forum.

[6]  Jean Christoph Jung,et al.  Querying the Unary Negation Fragment with Regular Path Expressions , 2018, ICDT.

[7]  Ognjen Savkovic,et al.  SHACL2SPARQL: Validating a SPARQL Endpoint against Recursive SHACL Constraints , 2019, ISWC Satellites.

[8]  José Emilio Labra Gayo,et al.  Using Shape Expressions (ShEx) to Share RDF Data Models and to Guide Curation with Rigorous Validation , 2019, ESWC.

[9]  Anna Fensel,et al.  Benchmark for Performance Evaluation of SHACL Implementations in Graph Databases , 2020, RuleML+RR.

[10]  Boris Motik,et al.  Benchmarking the Chase , 2017, PODS.

[11]  Lelde Lace,et al.  Schema-Backed Visual Queries over Europeana and Other Linked Data Resources , 2021, ESWC.

[12]  Andrea Cimmino,et al.  Astrea: Automatic Generation of SHACL Shapes from Ontologies , 2020, ESWC.

[13]  Emanuel Kieronski,et al.  Finite Satisfiability of Unary Negation Fragment with Transitivity (Extended Abstract) , 2019, Description Logics.

[14]  Magdalena Ortiz,et al.  Stable Model Semantics for Recursive SHACL , 2020, WWW.

[15]  Fabio Mogavero,et al.  Satisfiability and Containment of Recursive SHACL , 2021, ArXiv.

[16]  Ranjith K Soman Modelling construction scheduling constraints using shapes constraint language (SHACL) , 2019 .

[17]  Andrea Maurino,et al.  Towards Improving the Quality of Knowledge Graphs with Data-driven Ontology Patterns and SHACL , 2018, WOP@ISWC.

[18]  Fajar J. Ekaputra,et al.  SHACL4P: SHACL constraints validation within Protégé ontology editor , 2016, 2016 International Conference on Data and Software Engineering (ICoDSE).

[19]  Declan O'Sullivan,et al.  Using Ontology Design Patterns To Define SHACL Shapes , 2018, WOP@ISWC.

[20]  Steffen Staab,et al.  Type Checking Program Code Using SHACL , 2019, SEMWEB.

[21]  Andrea Maurino,et al.  ABSTAT: Ontology-driven Linked Data Summaries with Pattern Minimalization , 2016, SumPre@ESWC.

[22]  Ognjen Savkovic,et al.  Validating Shacl Constraints over a Sparql Endpoint , 2019, SEMWEB.

[23]  Emidio Stani Design reusable SHACL shapes and implement a linked data validation pipeline , 2019 .

[24]  Armin Haller,et al.  Schímatos: A SHACL-Based Web-Form Generator for Knowledge Graph Editing , 2020, SEMWEB.

[25]  Ruben Verborgh,et al.  Statistics about Data Shape Use in RDF Data , 2020, SEMWEB.

[26]  Carlos Cerrada,et al.  Converting OCL and CGMES Rules to SHACL in Smart Grids , 2020, IEEE Access.

[27]  Aldo Gangemi,et al.  Ontology Design Patterns , 2005 .

[28]  Robert L. Berger The undecidability of the domino problem , 1966 .

[29]  Maria-Esther Vidal,et al.  Trav-SHACL: Efficiently Validating Networks of SHACL Constraints , 2021, WWW.

[30]  José Emilio Labra Gayo,et al.  Shape Designer for ShEx and SHACL constraints , 2019, ISWC Satellites.

[31]  Kosa R. Nenadić,et al.  Validation of CIM datasets using SHACL , 2017, 2017 25th Telecommunication Forum (TELFOR).

[32]  Jens Lehmann,et al.  Test-driven evaluation of linked data quality , 2014, WWW.

[33]  Deciding SHACL Shape Containment through Description Logics Reasoning (Extended Version) , 2020, SEMWEB.

[34]  Mark A. Musen,et al.  The protégé project: a look back and a look forward , 2015, SIGAI.

[36]  Evgeny Kharlamov,et al.  Validation of SHACL Constraints over KGs with OWL 2 QL Ontologies via Rewriting , 2019, ESWC.

[37]  Timothy J. Norman,et al.  SHACL Satisfiability and Containment , 2020, SEMWEB.

[38]  Letizia Tanca,et al.  What you Always Wanted to Know About Datalog (And Never Dared to Ask) , 1989, IEEE Trans. Knowl. Data Eng..

[39]  Pouya Ghiasnezhad Omran,et al.  Learning SHACL shapes from knowledge graphs , 2022, Semantic Web.

[40]  David Senkýr,et al.  SHACL Shapes Generation from Textual Documents , 2019, EOMAS@CAiSE.

[41]  R. Robinson Undecidability and nonperiodicity for tilings of the plane , 1971 .

[42]  Nicolai Spicher,et al.  Automatic Detection of Metadata Errors in a Registry of Clinical Studies Using Shapes Constraint Language (SHACL) Graphs , 2021, MIE.

[43]  Timothy J. Norman,et al.  SHACL Constraints with Inference Rules , 2019, SEMWEB.

[44]  Declan O'Sullivan,et al.  Test-Driven Approach Towards GDPR Compliance , 2019, SEMANTiCS.