Is this an error in the spec?

Hi. I found one confusing exmaple in the shacl core spec:

In the "and" constraint description, there is an example shape graph
(https://w3c.github.io/data-shapes/shacl/#AndConstraintComponent)

=========
ex:SuperShape
  a sh:NodeShape ;
  sh:property [
   sh:path ex:property ;
   sh:minCount 1 ;
  ] .

ex:ExampleAndShape
  a sh:NodeShape ;
  sh:targetNode ex:ValidInstance, ex:InvalidInstance ;
  sh:and (
   ex:SuperShape
   [
    sh:path ex:property ;
    sh:maxCount 1 ;
   ]
  ) .
=========

In this example sh:and combines two shapes - one is
node shape (ex:SuperShape) and another is a property shape
(written inline). Does it make any sense?

I thought that the second shape should also be node shape.
i.e. replace

[
    sh:path ex:property ;
    sh:maxCount 1 ;
]

with:

[
  a sh:NodeShape ;
  sh:property [
   sh:path ex:property ;
   sh:maxCount 1 ;
  ]
]

Is this right? Or am i missing something?

Received on Tuesday, 10 October 2017 10:03:56 UTC