Skip to content
125 changes: 101 additions & 24 deletions shacl12-shacl-shacl/index.html → shacl12-overview/index.html
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
<head>
<meta charset="utf-8" />
<meta name="color-scheme" content="light dark">
<title>SHACL 1.2 SHACL Validator</title>
<title>SHACL 1.2 Overview</title>
<script src="https://www.w3.org/Tools/respec/respec-w3c" class="remove"></script>
<script class="remove">
var respecConfig = {
Expand All @@ -14,8 +14,8 @@
group: "wg/data-shapes",
github: "w3c/data-shapes",
//preProcess: [ ],
edDraftURI: "https://w3c.github.io/data-shapes/shacl-shacl/",
shortName: "shacl12-shacl-shacl",
edDraftURI: "https://w3c.github.io/data-shapes/shacl12-overview/",
shortName: "shacl12-overview",
copyrightStart: "2025",
xref: ["SHACL-CORE"],
//xref: ["RDF12-CONCEPTS"],
Expand Down Expand Up @@ -346,30 +346,118 @@

<body>
<section id="abstract">
<p>This document describes the Shapes Constraint Language (SHACL) validator for SHACL data, referred to as "SHACL-SHACL".</p>
<p>
This specification is published by the <a href="https://www.w3.org/groups/wg/data-shapes/">Data Shapes Working Group</a>.
The <em>Shapes Constraint Language</em>, "SHACL", is a language for validating RDF graphs against a set
of conditions. SHACL has a core specification, extensions for related query languages, User Interface
generation, rule-based reasoning and a data profiling mechanism. This document overviews all these
parts of SHACL and serves as an introduction to all of them and related on-going work such as libraries
of examples.
</p>
<p>
This documentation is published by the <a href="https://www.w3.org/groups/wg/data-shapes/">Data Shapes Working Group</a>.
</p>
</section>

<section id="sotd"></section>

<section id="introduction">
<h2>Introduction</h2>
<p class="todo">TODO</p>
<p>
This document provides a non-normative, high-level, overview of the various Shapes Constraint Language (SHACL) specifications.
</p>
<p>
The second iteration of the World Wide Web Consortium's <a href="https://www.w3.org/groups/wg/data-shapes/">Data Shapes Working Group</a> aimed to "...update data shapes standards in line with the versions of core Semantic Web standards that cater for RDF-star and to extend the applications of data shapes with new packaging and use specifications". The outcome of the Working Group's operations was a set of specifications - W3C 'Recommendations' - that cover core SHACL elements, extended ones and SHACL functions beyond RDF validation, such as User Interface generation.
</p>
<p>
The <em>What's new in SHACL 1.2</em> section below describes the changes between SHACL, as published in 2017 and SHACL 1.2, including all the new SHACL elements such as SHACL for User Interface generation.
</p>
<p>
The <em>Specifications</em> section below lists all the Data Shapes Working Group's specifications which are also listed in each specification's Introduction.
</p>
<p>
The appendixes below contain material supporting the set of SHACL specifications and provide SHACL users with additional support, such as validators for shapes graphs.
</p>
</section>

<section id="shapes">
<h2>Shapes</h2>
<p class="todo">TODO: This section will describe the Shapes created for SHACL-SHACL.</p>
<section id="whatsnew">
<h2>What's New in SHACL 1.2</h2>
<p>
These shapes are available in the RDF resource at <a href="http://www.w3.org/ns/shacl-shacl">http://www.w3.org/ns/shacl-shacl</a>.
<em>coming soon</em>
</p>
</section>

<section id="governance">
<h2>Governance</h2>
<p class="todo">TODO: This section will describe the governance arrangements in place for the continued maintenance of this NOTE.</p>
<section id="specifications">
<h2>Specifications</h2>
<p>
SHACL 1.2:
</p>
<ol>
<li>SHACL 1.2 Overview (this document)
<ul><li>overviews the set of SHACL specifications</li></ul>
</li>
<li>
<a href="https://w3c.github.io/data-shapes/shacl12-core/">SHACL 1.2 Core</a>
<ul><li>defines the Core of SHACL</li></ul>
</li>
<li>
<a href="https://w3c.github.io/data-shapes/shacl12-sparql/">SHACL 1.2 SPARQL Extensions</a>
<ul><li>defines SPARQL-related extensions of the SHACL</li></ul>
</li>
<li>
<a href="https://w3c.github.io/data-shapes/shacl12-node-expr/">SHACL 1.2 Node Expressions</a>
<ul><li>defines graph expressions used to determine focus nodes SHACL</li></ul>
</li>
<li>
<a href="https://w3c.github.io/data-shapes/shacl12-inf-rules/">SHACL 1.2 Inference Rules</a>
<ul><li>defines SHACL's methods of rule-based inference</li></ul>
</li>
<li>
<s><a href="https://w3c.github.io/data-shapes/shacl12-ui/">SHACL 1.2 UI</a></s>
<ul><li>defines SHACL's use for User Interface generation</li></ul>
</li>
<li>
<s><a href="https://w3c.github.io/data-shapes/shacl12-profiling/">SHACL 1.2 Profiling</a></s>
<ul><li>defines the use of SHACL for profiling data, including SHACL data</li></ul>
</li>
</ol>
</section>

<section id="x">
<h2>Section X</h2>
<p class="todo">TODO: This section will describe...</p>
</section>

<section id="shacl-shacl" class="appendix informative">
<h2>SHACL-SHACL</h2>
<p>
The <a href="https://www.w3.org/groups/wg/data-shapes/">Data Shapes Working Group</a> maintains SHACL graphs that can be used to validate other SHACL Shapes graphs, called "SHACL-SHACL". There is more than one to allow for the validation of subsets of the total body of SHACL elements defined in the various SHACL specifications.
</p>
<p>
Each SHACL-SHACL graph corresponds to the scope of individual SHACL specifications and are available as RDF resources:
</p>
<ul>
<li>
<a href="">SHACL-SHACL all</a> - <em>the union of all other SHACL-SHACL graphs</em>
</li>
<li>
<a href="">SHACL-SHACL Core</a>
</li>
<li>
<a href="">SHACL-SHACL SPARQL</a>
</li>
<li>
<a href="">SHACL-SHACL Node Expressions</a>
</li>
<li>
<a href="">SHACL-SHACL Inference Rules</a>
</li>
<li>
<a href="">SHACL-SHACL UI</a>
</li>
<li>
<a href="">SHACL-SHACL Profiling</a>
</li>
</ul>
</section>

<section id="security" class="appendix informative">
Expand All @@ -384,13 +472,6 @@ <h2>Security and Privacy Considerations</h2>
</p>
</section>

<section id="validator" class="appendix normative">
<h2>Validator</h2>
<p>
The shapes graph of SHACL-SHACL is available as an RDF resource at <a href="http://www.w3.org/ns/shacl-shacl">http://www.w3.org/ns/shacl-shacl</a>.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

What will this link be? I missed some of the nuance about whether we need to have "shacl12" somewhere in this path.

If we need to reflect SHACL 1.2 outside of the link and instead inlined in the graph-file, would owl:versionIRI be an option?

Please feel free to split this comment out to its own Issue if that'll be a big discussion. I somewhat suspect it will be.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This info's location is actually already superseded with the Appendix called "SHACL-SHACL", not "Validator", but the question about the IRI remains.

There is a plan to harmonise all SHACL namespaces into one, after development slows down/ceases, but I'm not sure if SHACL-SHACL will live in there with the rest of SHACL's definitions. I think we will retain /shacl-shacl, since it's already there.

I suggest we will make SHACL-SHACL all (the comprehensive 1.2 validator) be the default at http://www.w3.org/ns/shacl-shacl, that we create other IRIs for the part validators and that we point a versionIRI, as you say, at the soon-to-be old validator from 1.0.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Understood on the superseding.

I think SHACL-SHACL should remain in its own namespace. It is an adopter of SHACL, making it distinct enough in purpose (to me, anyway) from the definitions of SHACL.

And, already having the namespace helps the decision.

</p>
</section>

<section id="ack" class="appendix informative">
<h2>Acknowledgements</h2>
<p>Many people contributed to this document, including members of the RDF Data Shapes Working Group.</p>
Expand All @@ -407,9 +488,5 @@ <h2>Changes between SHACL 1.0 Core and SHACL 1.2 Core</h2>
A reference to this Note is retained in SHACL 1.2 Core.
</p>
</section>

<!-- <section class="appendix" id="issue-summary">-->
<!-- &lt;!&ndash; A list of issues will magically appear here &ndash;&gt;-->
<!-- </section>-->
</body>
</html>