Comments about the Concepts in the SHACL Document

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256

I read over https://w3c.github.io/data-shapes/shacl/ and noticed a bunch of
problems.  I have gathered these by concept and added some comments.


Shape
WRONG - "describes a group of constraints with the same focus node"
WRONG - "is a group of constraints that have the same focus node"
 - Mentioning focus node at this level is incorrect.
 - Ignores scope aspect of shapes.

Closed Shape
? - closed shape as one of the "other shape-based constraints"
- - Is closed shape a constraint?

Scope
AMBIGUOUS - "pre-conditions that must hold before a constraint is applied to
      a given focus node"
- - No notion of constraint application defined in document.
- - Scope is used on both shapes and constraints.

Class Scope -
AMBIGUOUS - "apply to all instances of these linked classes"
- - What is an instance of a class?

Constraint
WRONG - "a condition that can be validated against a graph"
WRONG - "defines restrictions on the structure of an RDF graph"
- - Most constraints are validated against a graph and a node in the graph.
WRONG - "evaluated against a focus node"
- - Not for global constraints.

Global Constraint
- - Different from other constraints as they don't have a real scope.

Constraint Violation
POOR NAME - violations of component constraints may not be an overall
          violation
INCORRECT BEHAVIOUR - violations of component constraints are reported, even
          for OR and NOT
UNSPECIFIED BEHAVIOUR - constraints with components only specify how to
             handle errors
INCOMPLETE - no way of producing different kinds of violations in high-level
      language

Template
INCOMPLETE - no connection betweeen query results and violations

Supported Operations
INCORRECT - validateConstraint needs a focus node for most constraints
BADLY SPECIFIED - validateNodeAgainstShape ignores shape scope
BADLY SPECIFIED - validateNode ignores some kinds of scopes
BADLY SPECIFIED - validateGraph ignores some kinds of scopes
        - validateGraph does not handle global constraints


Missing:
- - a firm definition of RDF graphs that encode valid SHACL constructs
  - e.g., optionality of various parts of property constraints
- - an integrated definition of how SHACL works
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2

iQEcBAEBCAAGBQJVaMdvAAoJECjN6+QThfjzfIsIAJuhdgirBou0nD77I9BpxT6S
j0AwcU2ZkHJUF01sYDUdlmRrwA3M9AmHmH1PCM2YHTk9mEzrL/f5YvWgZm8IIw/o
3AAaS2vJuaI3K5V1a82FjmENUcyZNbhL2/xkR9vA/mDmsRBDTMykcs7KtSUgGZSE
PJMxDmsuc6+JMm9vboz9EgZVKLw2Nt9zjcgSKQfeYzYkVquPIFa0RN25jWY33JVz
dATrN3VUXbBloXjP+JHlxM2YAajGdJP08vxXxYtArV6Tq9ZlUrKvRIrPDrRNiKU9
t0z3y0t62MN+BgC0nLjHHLoxu+CsCYLUOKz+94XUluwemo7tDqRUZDbByIL7yTM=
=iiu2
-----END PGP SIGNATURE-----

Received on Friday, 29 May 2015 20:09:51 UTC