Skip to content

#1113: Moved SHACL-SPARQL Rules section into its own shacl12-inference-rules document - #1186

Open
HolgerKnublauch wants to merge 20 commits into
gh-pagesfrom
issue-1113
Open

#1113: Moved SHACL-SPARQL Rules section into its own shacl12-inference-rules document#1186
HolgerKnublauch wants to merge 20 commits into
gh-pagesfrom
issue-1113

Conversation

@HolgerKnublauch

Copy link
Copy Markdown
Contributor

Closes #1113

I basically moved the Rules section without changing semantics. A few editorial improvements were made on this opportunity.

There is a broken reference to shacl12-inference-rules from the SPARQL document right now, which I hope will disappear once the new document has been published.

@nicholascar @caribouW3 do I need to change anything so that the new document can be published?

@simonstey you were one of the editors of the SHACL-AF document and I believe you deserve either to be included as one of the authors of Inference Rules, or be mentioned as former editor. Please let me know your preference. Happy to add you as author if you can still identify with the content :)

@nicholascar nicholascar added the SHACL Rules For SHACL 1.2 Rules spec (formerly part of SHACL-SPARQL) label Aug 24, 2026
@nicholascar

Copy link
Copy Markdown
Contributor

I wonder if Sections 11 - SPARQL Rules & 12 - Triple Rules can be collapsed down into subsections within a Section 11 - Rule Types? This will better match with Section 2's examples of Rule Types.

I don't have a comment on the changes needed for publication yet.

@HolgerKnublauch

Copy link
Copy Markdown
Contributor Author

I wonder if Sections 11 - SPARQL Rules & 12 - Triple Rules can be collapsed down into subsections within a Section 11 - Rule Types? This will better match with Section 2's examples of Rule Types.

There are arguments in both directions. I see Triple Rules as sufficiently distinct from SPARQL rules to go into their own top-level section. But I don't mind either way. If anyone else supports this change, I'll do it.

@nicholascar

Copy link
Copy Markdown
Contributor

I wonder if Sections 11 - SPARQL Rules & 12 - Triple Rules can be collapsed down into subsections within a Section 11 - Rule Types? This will better match with Section 2's examples of Rule Types.

There are arguments in both directions. I see Triple Rules as sufficiently distinct from SPARQL rules to go into their own top-level section. But I don't mind either way. If anyone else supports this change, I'll do it.

Oh yes, I recognise they are entirely distinct but by putting the SPARQL & Triple rule types in a Rule Types section, their distinction is preserved but it just emphasises their being part of an (open ended) set of potential rule types.

@HolgerKnublauch

Copy link
Copy Markdown
Contributor Author

I wonder if Sections 11 - SPARQL Rules & 12 - Triple Rules can be collapsed down into subsections within a Section 11 - Rule Types? This will better match with Section 2's examples of Rule Types.

There are arguments in both directions. I see Triple Rules as sufficiently distinct from SPARQL rules to go into their own top-level section. But I don't mind either way. If anyone else supports this change, I'll do it.

Oh yes, I recognise they are entirely distinct but by putting the SPARQL & Triple rule types in a Rule Types section, their distinction is preserved but it just emphasises their being part of an (open ended) set of potential rule types.

Ok I have moved them into a shared section "Built-in Rule Types" now. This had the added benefit of forcing me to think about compliance. I have added a sentence that engines must report a failure when they encounter unknown rule types.

I hope this allows us to proceed for this first version.

@afs

afs commented Aug 24, 2026

Copy link
Copy Markdown
Contributor

This would be a good time to rename shacl12-sparql as

"SHACL SPARQL-based extensions"

#1116

Comment thread shacl12-inference-rules/index.html Outdated
Comment thread shacl12-inference-rules/index.html
Comment thread shacl12-inference-rules/index.html Outdated
Comment thread shacl12-inference-rules/index.html
Comment thread shacl12-inference-rules/index.html
Comment thread shacl12-common/specifications.html
@afs

afs commented Aug 24, 2026

Copy link
Copy Markdown
Contributor

This does not close #1113.

There is no decision on whether there is a separate top rules doc.
This document has no material, as content or placeholders, for that.

Comment thread shacl12-inference-rules/index.html

@mgberg mgberg left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

I agree that that it might be a good opportunity to do this

This would be a good time to rename shacl12-sparql as

"SHACL SPARQL-based extensions"

#1116

Comment thread shacl12-inference-rules/index.html Outdated
Comment thread shacl12-sparql/index.html
@HolgerKnublauch

Copy link
Copy Markdown
Contributor Author

I agree that that it might be a good opportunity to do this

This would be a good time to rename shacl12-sparql as
"SHACL SPARQL-based extensions"
#1116

We'll do that in the dedicated ticket #1116. I want to avoid sidetracking discussions that may delay publishing this new document ASAP.

@HolgerKnublauch

Copy link
Copy Markdown
Contributor Author

This does not close #1113.

There is no decision on whether there is a separate top rules doc. This document has no material, as content or placeholders, for that.

Right, that topic was a spin-off from the #1113 thread so I have moved it to its own ticket #1196. It shouldn't hold off moving SHACL rules into its own document.

@HolgerKnublauch
HolgerKnublauch requested review from afs and mgberg August 24, 2026 22:38
@afs

afs commented Aug 25, 2026

Copy link
Copy Markdown
Contributor

This PR makes some unrelated changes SHACL SPARQL(-based) Extensions.
Was that intended? Can they go in directly now?

@mgberg mgberg left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Looks good to me, although I'm not 100% sure what Andy's last comment is referring to.

@afs

afs commented Aug 25, 2026

Copy link
Copy Markdown
Contributor

Looks good to me, although I'm not 100% sure what Andy's last comment is referring to.

e.g. sh:sparqlExpr around L1674 is a name change.
L1369 is a link fix.
Various others.

shacl-node-expr has a spelling correction.

@HolgerKnublauch

Copy link
Copy Markdown
Contributor Author

Looks good to me, although I'm not 100% sure what Andy's last comment is referring to.

e.g. sh:sparqlExpr around L1674 is a name change. L1369 is a link fix. Various others.

shacl-node-expr has a spelling correction.

Yes intentional, some of these were detected with Claude and are IMHO bug fixes and non-substantial changes. If you can live with those, it would be great if you could remove the Request Changes tag.

@simonstey

Copy link
Copy Markdown
Contributor

Closes #1113

* [See the new Inference Rules document rendered online here](https://raw.githack.com/w3c/data-shapes/issue-1113/shacl12-inference-rules/index.html)

* [See the new remaining SPARQL document rendered online here](https://raw.githack.com/w3c/data-shapes/issue-1113/shacl12-sparql/index.html)

I basically moved the Rules section without changing semantics. A few editorial improvements were made on this opportunity.

There is a broken reference to shacl12-inference-rules from the SPARQL document right now, which I hope will disappear once the new document has been published.

@nicholascar @caribouW3 do I need to change anything so that the new document can be published?

@simonstey you were one of the editors of the SHACL-AF document and I believe you deserve either to be included as one of the authors of Inference Rules, or be mentioned as former editor. Please let me know your preference. Happy to add you as author if you can still identify with the content :)

I indeed completely missed that comment. yes please! thanks a lot

@simonstey simonstey left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

various minor remarks

Comment thread shacl12-sparql/index.html Outdated
<dd>defines the Core of SHACL</dd>
<dt><a href="https://www.w3.org/TR/shacl12-sparql/">SHACL 1.2 SPARQL Extensions</a></dt>
<dd>defines SPARQL-related extensions of SHACL</dd>
<dt><a href="https://www.w3.org/TR/shacl12-inference-rules/">SHACL 1.2 Inference Rules</a></dt>

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

we also should add an additional entry to local-biblio.js ->

e.g.

"shacl12-inference-rules": {
  title: "SHACL 1.2 Inference Rules",
  href: "https://www.w3.org/TR/shacl12-inference-rules/",
  status: "ED", publisher: "W3C"
},

Comment on lines +1301 to +1304
<p class="note">
Since <a>global</a> SPARQL rules do not use <a>pre-binding</a>, the syntax limitations
required by <a>pre-binding</a> do not apply to them.
</p>

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

what those syntax limitations are exactly isn't mentioned/explained in this (new) document any longer, right?

and fwiw, shacl12-sparql/index.html:2008 only "binds" SHACL-SPARQL processors while this document defines a new class -> SHACL inference rule processors
=> As such, nothing normatively requires an inference-rule processor to reject a sh:construct containing e.g. MINUS or BIND(… AS ?this) right?

Comment thread shacl12-inference-rules/index.html Outdated
Comment on lines +1244 to +1248
<p>
Note that not all implementations are required to implement both of these types for conformance.
However, a <a>rules engine</a> MUST report a <a>failure</a> is it encounters a rule for which it does
not implement any <a>rule type</a>.
</p>

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

this is a duplicate of the normative statement in https://github.com/w3c/data-shapes/pull/1186/changes#diff-cefab4ec6768a5dec43f0c6625a251a899bb7aca4c350010cab57295aa4852c4R1164-R1166 but with a MUST.

suggestion: cross reference back ->

Suggested change
<p>
Note that not all implementations are required to implement both of these types for conformance.
However, a <a>rules engine</a> MUST report a <a>failure</a> is it encounters a rule for which it does
not implement any <a>rule type</a>.
</p>
<p>
Note that not all implementations are required to implement both of these types for conformance.
A <a>rules engine</a> that encounters a rule for which it does not implement any
<a>rule type</a> reports a <a>failure</a>, as defined in <a href="#rules-execution"></a>.
</p>

Comment thread shacl12-inference-rules/index.html Outdated
Comment thread shacl12-inference-rules/index.html Outdated
Comment thread shacl12-inference-rules/index.html Outdated
Comment thread shacl12-inference-rules/index.html Outdated
<p>
SHACL defines the property <code>sh:entailment</code>
to link a <a>shapes graph</a> with <em>entailment regimes</em>.
The <a>IRI</a> <code>sh:Rules</code> represents the <dfn>SHACL rules entailment regime</dfn>.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

HolgerKnublauch and others added 6 commits August 26, 2026 18:22
Co-authored-by: simon <simon.steyskal@siemens.com>
Co-authored-by: simon <simon.steyskal@siemens.com>
Co-authored-by: simon <simon.steyskal@siemens.com>
Co-authored-by: simon <simon.steyskal@siemens.com>
Co-authored-by: simon <simon.steyskal@siemens.com>
Co-authored-by: simon <simon.steyskal@siemens.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

SHACL Rules For SHACL 1.2 Rules spec (formerly part of SHACL-SPARQL)

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Downplay SHACL Rules extension point or move SHACL-SPARQL rules into separate document

5 participants