negated references

In Section 5.6.4 the ShEx 2.0 specification (http://shex.io/shex-semantics/)
says that "A schema MUST NOT contain any shapeExpr SE which has a shape
which contains negated references, either directly or transitively, to SE."

The usual meaning of having a recursive negated reference would be that there
is an odd number of negations on a path from a shape back to itself.

So the schema
 :a { :p NOT @:a }
would have an illegal recursive reference but the schema
 :a { :p NOT @:b }
 :b { :p NOT @:a }
would not.

However, the wording of the phrase in the specification is some what unusual
and thus its meaning is unclear.


peter

Received on Friday, 23 March 2018 11:43:32 UTC