[data-shapes] syntax-rule-prefixes-duplicates should be more lenient (#239)

VladimirAlexiev has just created a new issue for https://github.com/w3c/data-shapes:

== syntax-rule-prefixes-duplicates should be more lenient ==
https://w3c.github.io/data-shapes/shacl/#syntax-rule-prefixes-duplicates
> If ... prefix declarations contains multiple namespaces for the same [value](https://w3c.github.io/data-shapes/shacl/#dfn-values) of sh:prefix, then the [shapes graph](https://w3c.github.io/data-shapes/shacl/#dfn-shapes-graphs) is [ill-formed](https://w3c.github.io/data-shapes/shacl/#dfn-ill-formed).

I think this should be changed to "multiple **different** namespaces".

Rationale: this will facilitate more flexible management of imports. Scenario:
- shape "module (ontology) A declares prefix `x:`
- now you discover shape "module" B that has useful shapes, so in A you do `import B`
- but it happens that B also declares prefix `x:`: that would not be unusual, if A and B talk of related domains!
- now A is invalid. You need to fish out the duplicated prefix `x:` and remove it from A
- if later you decide that `import B` was not so useful after all, you need to put the prefix back in

To summarize: the rule requires each prefix to be declared **exactly once** in any collection of related shapes that may want to include one another.
That makes module refactoring harder than it needs to be.

---

In other languages:
- SPARQL https://github.com/w3c/sparql-update/issues/54
- Turtle https://github.com/w3c/rdf-turtle/issues/87

Please view or discuss this issue at https://github.com/w3c/data-shapes/issues/239 using your GitHub account


-- 
Sent via github-notify-ml as configured in https://github.com/w3c/github-notify-ml-config

Received on Thursday, 13 February 2025 08:46:26 UTC