# Satisfiability and Containment of Recursive SHACL

arXiv: https://arxiv.org/abs/2108.13063 · HTML: https://mlsanity.com/paper/2108.13063/

## Key facts

- Cited by 4 papers in the map (data through 14 Oct 2026).
- Builds on 4 of its 59 references that are in the map.
- First posted on arXiv 30 Aug 2021.

## Builds on (most cited first, 4 of 4)

- [Deciding SHACL Shape Containment through Description Logics Reasoning (Extended Version)](https://mlsanity.com/paper/2008.13603/) (2020)
- [SHACL Constraints with Inference Rules](https://mlsanity.com/paper/1911.00598/) (2019)
- [Unary negation](https://mlsanity.com/paper/1309.2069/) (2013)
- [Finite Satisfiability of Unary Negation Fragment with Transitivity](https://mlsanity.com/paper/1809.03245/) (2018)

## Built on by (most cited first, 4 of 4)

- [A Review of SHACL: From Data Validation to Schema Reasoning for RDF Graphs](https://mlsanity.com/paper/2112.01441/) (2021)
- [Common Foundations for SHACL, ShEx, and PG-Schema](https://mlsanity.com/paper/2502.01295/) (2025)
- [SHACL Validation under Graph Updates (Extended Paper)](https://mlsanity.com/paper/2508.00137/) (2025)
- [Static Analysis of Recursive SHACL](https://mlsanity.com/paper/2605.02787/) (2026)

## Abstract (arXiv)

The Shapes Constraint Language (SHACL) is the recent W3C recommendation language for validating RDF data, by verifying certain shapes on graphs. Previous work has largely focused on the validation problem and the standard decision problems of satisfiability and containment, crucial for design and optimisation purposes, have only been investigated for simplified versions of SHACL. Moreover, the SHACL specification does not define the semantics of recursively-defined constraints, which led to several alternative recursive semantics being proposed in the literature. The interaction between these different semantics and important decision problems has not been investigated yet. In this article we provide a comprehensive study of the different features of SHACL, by providing a translation to a new first-order language, called SCL, that precisely captures the semantics of SHACL. We also present MSCL, a second-order extension of SCL, which allows us to define, in a single formal logic framework, the main recursive semantics of SHACL. Within this language we also provide an effective treatment of filter constraints which are often neglected in the related literature. Using this logic we provide a detailed map of (un)decidability and complexity results for the satisfiability and containment decision problems for different SHACL fragments. Notably, we prove that both problems are undecidable for the full language, but we present decidable combinations of interesting features, even in the face of recursion.
