From 94e865571cde31354e3ab1e3f6398335c4793dbd Mon Sep 17 00:00:00 2001 From: YoucTagh Date: Mon, 24 Mar 2025 18:16:35 +0100 Subject: [PATCH 1/9] initial doc stub --- shacl12-profiling/.prettierrc | 14 + shacl12-profiling/index.html | 610 ++++++++++++++++++++++++++++++++++ 2 files changed, 624 insertions(+) create mode 100644 shacl12-profiling/.prettierrc create mode 100644 shacl12-profiling/index.html diff --git a/shacl12-profiling/.prettierrc b/shacl12-profiling/.prettierrc new file mode 100644 index 00000000..07f3e78b --- /dev/null +++ b/shacl12-profiling/.prettierrc @@ -0,0 +1,14 @@ +{ + "useTabs": true, + "printWidth": 150, + "semi": true, + "singleQuote": false, + "quoteProps": "as-needed", + "jsxSingleQuote": false, + "trailingComma": "none", + "bracketSpacing": true, + "jsxBracketSameLine": false, + "htmlWhitespaceSensitivity": "ignore", + "arrowParens": "always", + "endOfLine": "lf" +} \ No newline at end of file diff --git a/shacl12-profiling/index.html b/shacl12-profiling/index.html new file mode 100644 index 00000000..8dd405d6 --- /dev/null +++ b/shacl12-profiling/index.html @@ -0,0 +1,610 @@ + + + + + SHACL 1.2 Profiling + + + + + +
+

This document describes Shapes Constraint Language (SHACL) Profiling.

+

+ This specification is published by the + Data Shapes Working Group + . +

+
+ +
+ +
+

Introduction

+

SHACL Profiling ...

+ +
+

Terminology

+ +

+ The terminology used throughout this document is consistent with the definitions in the main SHACL [[shacl]] specification, which references + terms from RDF [[rdf11-concepts]]. This includes the terms + + binding + + , + + blank node + + , + + conformance + + , + + constraint + + , + + constraint component + + , + + data graph + + , + + datatype + + , + + failure + + , + + focus node + + , + + RDF graph + + , + ill-formed + , + IRI + , + + literal + + , + + local name + + , + + member + + , + + node + + , + + node shape + + , + + object + + , + + parameter + + , + + pre-binding + + , + + predicate + + , + + property path + + , + + property shape + + , + + RDF term + + , + + SHACL instance + + , + + SHACL list + + , + + SHACL subclass + + , + + shape + + , + + shapes graph + + , + + solution + + , + + subject + + , + + target + + , + + triple + + , + validation + , + + validation report + + , + + validation result + + , + + validator + + , + + value + + , + + value node + + . +

+
+
+

Document Conventions

+

+ Some examples in this document use Turtle [[turtle]]. The reader is expected to be familiar with SHACL [[shacl]] and SPARQL + [[sparql-query]]. +

+

Within this document, the following namespace prefix bindings are used:

+ + + + + + + + + + + + + + + + + + + + + + + + + +
PrefixNamespace
rdf:http://www.w3.org/1999/02/22-rdf-syntax-ns#
rdfs:http://www.w3.org/2000/01/rdf-schema#
sh:http://www.w3.org/ns/shacl#
xsd:http://www.w3.org/2001/XMLSchema#
ex:http://example.com/ns#
+

+ Throughout the document, color-coded boxes containing RDF graphs in Turtle will appear. These fragments of Turtle documents use the prefix + bindings given above. +

+
        # This box represents a shapes graph
+ +
        # This box represents a data graph.
+ +
        # This box represents an output results graph
+ +

Formal definitions appear in blue boxes:

+
+
TEXTUAL DEFINITIONS
+
          # This box contains textual definitions. 
+
+ +

Grey boxes such as this include syntax rules that apply to the shapes graph.

+ +

+ true + denotes the RDF term + "true"^^xsd:boolean + . + false + denotes the RDF term + "false"^^xsd:boolean + . +

+
+
+

TODO

+
+
+ +
+

Section

+

Content.

+
+ +
+

Summary of Syntax Rules from this Document

+
+ +
+

Security Considerations

+

TODO

+
+ +
+

Privacy Considerations

+

TODO

+
+ +
+

Acknowledgements

+

Many people contributed to this document, including members of the RDF Data Shapes Working Group.

+
+ +
+

Internationalization Considerations

+

TODO

+
+ +
+ +
+ +
+ + From 5c3678c67544b7a763e96bcbccb2127d96f321f1 Mon Sep 17 00:00:00 2001 From: Nicholas Car Date: Mon, 7 Apr 2025 22:30:34 +1000 Subject: [PATCH 2/9] add dx-prof defined terms --- shacl12-profiling/index.html | 36 ++++++++++++++++++++++++++++++++++-- 1 file changed, 34 insertions(+), 2 deletions(-) diff --git a/shacl12-profiling/index.html b/shacl12-profiling/index.html index 8dd405d6..376f1bea 100644 --- a/shacl12-profiling/index.html +++ b/shacl12-profiling/index.html @@ -351,8 +351,21 @@

Introduction

Terminology

- The terminology used throughout this document is consistent with the definitions in the main SHACL [[shacl]] specification, which references - terms from RDF [[rdf11-concepts]]. This includes the terms + Terminology used throughout this document is consistent with several sources: +

+
    +
  1. the main SHACL [[shacl]] specification +
      +
    • which references terms from RDF [[rdf11-concepts]]
    • +
    • technical terns for SHACL
    • +
    +
  2. +
  3. the Profiles Vocabulary [[dx-prof]], a W3C Dataset Exchange Working Group Note +
    • which defines general terms to do with profiling including the terms "profiling" / "profile"
    +
  4. +
+

+ The SHACL terms include binding @@ -504,6 +517,25 @@

Terminology

.

+

+ The general profiling terms include + + specification + + , + + [data] profile + + , + + data resource + + , + + metadata + + . +

Document Conventions

From 70ff75b27372686e66e22fb0938e7a5c43ad44d2 Mon Sep 17 00:00:00 2001 From: Nicholas Car Date: Mon, 14 Apr 2025 17:45:08 +1000 Subject: [PATCH 3/9] simple abstract + namespace info --- shacl12-profiling/index.html | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) diff --git a/shacl12-profiling/index.html b/shacl12-profiling/index.html index 376f1bea..062139f5 100644 --- a/shacl12-profiling/index.html +++ b/shacl12-profiling/index.html @@ -333,11 +333,18 @@
-

This document describes Shapes Constraint Language (SHACL) Profiling.

- This specification is published by the - Data Shapes Working Group - . + This document defines extensions of the SHACL Shapes Constraint Language created to allow for the profiling of specifications. +

+

+ SHACL is a language for validating RDF graphs against a set of conditions so this document's scope is limited to the profiling of RDF graph models, including SHACL-defined models. +

+ +

+ The namespace for SHACL Profiling terms is http://www.w3.org/ns/shpr# +

+

+ The suggested prefix for the SHACL Profiling namespace is shpr

From 28e409714eea1cc1602d3b36f1dccca9bbded488 Mon Sep 17 00:00:00 2001 From: Nicholas Car Date: Mon, 14 Apr 2025 17:56:01 +1000 Subject: [PATCH 4/9] test use of definitions in first intro sentense --- shacl12-profiling/index.html | 12 ++++-------- 1 file changed, 4 insertions(+), 8 deletions(-) diff --git a/shacl12-profiling/index.html b/shacl12-profiling/index.html index 062139f5..6afb3056 100644 --- a/shacl12-profiling/index.html +++ b/shacl12-profiling/index.html @@ -352,7 +352,7 @@

Introduction

-

SHACL Profiling ...

+

SHACL Profiling is the act of creating profile of RDF graphs using SHACL...

Terminology

@@ -526,19 +526,15 @@

Terminology

The general profiling terms include - + specification , - + [data] profile , - - data resource - - , - + metadata . From 4aed2449355625f3c36e591d7c3d88e604009ead Mon Sep 17 00:00:00 2001 From: Yousouf Taghzouti <48333491+YoucTagh@users.noreply.github.com> Date: Mon, 14 Apr 2025 10:34:15 +0200 Subject: [PATCH 5/9] Update shacl12-profiling/index.html Co-authored-by: Ted Thibodeau Jr --- shacl12-profiling/index.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/shacl12-profiling/index.html b/shacl12-profiling/index.html index 6afb3056..ce325b95 100644 --- a/shacl12-profiling/index.html +++ b/shacl12-profiling/index.html @@ -337,7 +337,7 @@ This document defines extensions of the SHACL Shapes Constraint Language created to allow for the profiling of specifications.

- SHACL is a language for validating RDF graphs against a set of conditions so this document's scope is limited to the profiling of RDF graph models, including SHACL-defined models. + SHACL is a language for validating RDF graphs against a set of conditions, so this document's scope is limited to the profiling of RDF graph models, including SHACL-defined models.

From 25d8c588693c2a405b6a72735082e18a2cc3018e Mon Sep 17 00:00:00 2001 From: Yousouf Taghzouti <48333491+YoucTagh@users.noreply.github.com> Date: Mon, 14 Apr 2025 10:43:24 +0200 Subject: [PATCH 6/9] Update shacl12-profiling/index.html Co-authored-by: Ted Thibodeau Jr --- shacl12-profiling/index.html | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/shacl12-profiling/index.html b/shacl12-profiling/index.html index ce325b95..55608fff 100644 --- a/shacl12-profiling/index.html +++ b/shacl12-profiling/index.html @@ -352,7 +352,10 @@

Introduction

-

SHACL Profiling is the act of creating profile of RDF graphs using SHACL... +

SHACL Profiling is the act of creating + a profile + of a RDF graphs + using SHACL...

Terminology

From 5b2e427431d18ea18726cd04b6a08fba86524566 Mon Sep 17 00:00:00 2001 From: Nicholas Car Date: Mon, 14 Apr 2025 19:12:26 +1000 Subject: [PATCH 7/9] Update shacl12-profiling/index.html Co-authored-by: Ted Thibodeau Jr --- shacl12-profiling/index.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/shacl12-profiling/index.html b/shacl12-profiling/index.html index 55608fff..f7ce690b 100644 --- a/shacl12-profiling/index.html +++ b/shacl12-profiling/index.html @@ -354,7 +354,7 @@

Introduction

SHACL Profiling is the act of creating a profile - of a RDF graphs + of an RDF graph using SHACL...

From 8186af3be8541398b801e8333520248240340279 Mon Sep 17 00:00:00 2001 From: Scott Henninger Date: Tue, 15 Apr 2025 13:02:25 -0400 Subject: [PATCH 8/9] Added Scott Henninger to list of editors --- shacl12-profiling/index.html | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/shacl12-profiling/index.html b/shacl12-profiling/index.html index f7ce690b..27383a5e 100644 --- a/shacl12-profiling/index.html +++ b/shacl12-profiling/index.html @@ -48,6 +48,12 @@ companyURL: "https://kurrawong.ai/", mailto: "nick@kurrawong.ai", w3cid: 70131 + }, { + name: "Scott Henninger", + company: "JPMorgan Chase & Co.", + companyURL: "https://www.jpmorganchase.com/", + mailto: "scotthenninger@gmail.com", + w3cid: 80464 }, ] From 4bceba8eab0bbbc591d54585469b05d76a3df312 Mon Sep 17 00:00:00 2001 From: Nicholas Car Date: Wed, 16 Apr 2025 09:53:08 +1000 Subject: [PATCH 9/9] use SHACL 1.2 Core code styling --- shacl12-profiling/index.html | 394 ++++++++++++++++++++++++----------- 1 file changed, 270 insertions(+), 124 deletions(-) diff --git a/shacl12-profiling/index.html b/shacl12-profiling/index.html index 6afb3056..2430d4d5 100644 --- a/shacl12-profiling/index.html +++ b/shacl12-profiling/index.html @@ -5,6 +5,93 @@ SHACL 1.2 Profiling @@ -354,7 +441,7 @@

Introduction

SHACL Profiling is the act of creating profile of RDF graphs using SHACL... -

+

Terminology

@@ -540,13 +627,11 @@

Terminology

.

-
+

Document Conventions

- Some examples in this document use Turtle [[turtle]]. The reader is expected to be familiar with SHACL [[shacl]] and SPARQL - [[sparql-query]]. + Within this document, the following namespace prefix definitions are used:

-

Within this document, the following namespace prefix bindings are used:

@@ -562,7 +647,7 @@

Document Conventions

- + @@ -573,34 +658,95 @@

Document Conventions

Prefix
sh:http://www.w3.org/ns/shacl#http://www.w3.org/ns/shacl#
xsd: http://example.com/ns#
+ +

+ Within this document, the following JSON-LD context is used: +

+
{
+  "@context": {
+    "rdf": "http://www.w3.org/1999/02/22-rdf-syntax-ns#",
+    "rdfs": "http://www.w3.org/2000/01/rdf-schema#",
+    "sh": "http://www.w3.org/ns/shacl#",
+    "xsd": "http://www.w3.org/2001/XMLSchema#",
+    "ex": "http://example.com/ns#"
+  }
+}

- Throughout the document, color-coded boxes containing RDF graphs in Turtle will appear. These fragments of Turtle documents use the prefix - bindings given above. + Note that the URI of the graph defining the SHACL vocabulary itself is equivalent to + the namespace above, i.e., it includes the #. + References to the SHACL vocabulary, e.g., via owl:imports should include the #. +

+

+ Throughout the document, color-coded boxes containing RDF graphs in Turtle and JSON-LD will appear. + These fragments of Turtle documents use the prefix bindings given above. + The JSON-LD document fragments use the context given above. + Only the Turtle documents may highlight certain parts.

-
        # This box represents a shapes graph
-
        # This box represents a data graph.
+
+
+# This box represents an input shapes graph + +# Triples that can be omitted are marked as grey, e.g. -- +<s> <p> <o> . +
+
+
// This box represents an input shapes graph
+
{
+  "@id": "ex:s",
+  "ex:p": {
+    "@id": "ex:o"
+  }
+}
+
+
-
        # This box represents an output results graph
+
+
+# This box represents an input data graph. +# When highlighting is used in the examples: + +# Elements highlighted in blue are focus nodes +ex:Bob a ex:Person . + +# Elements highlighted in red are focus nodes that fail validation +ex:Alice a ex:Person . +
+
+
// This box represents an input data graph
+
{
+	"@graph": [
+		{
+			"@id": "ex:Alice",
+			"@type": "ex:Person"
+		},
+		{
+			"@id": "ex:Bob",
+			"@type": "ex:Person"
+		}
+	]
+}
+
+
-

Formal definitions appear in blue boxes:

-
-
TEXTUAL DEFINITIONS
-
          # This box contains textual definitions. 
+
+
+# This box represents an output results graph +
+
+
// This box represents an output results graph
+
-

Grey boxes such as this include syntax rules that apply to the shapes graph.

+

+ Grey boxes such as this include syntax rules that apply to the shapes graph. +

- true - denotes the RDF term - "true"^^xsd:boolean - . - false - denotes the RDF term - "false"^^xsd:boolean - . + true denotes the RDF term "true"^^xsd:boolean. + false denotes the RDF term "false"^^xsd:boolean.

+

TODO