Re: [shex] semantics of recursive shapes ill-founded

The semantics document is missing the assertion that direct self-referential shape expressions are prohibited. It needs text like:

> No shape expression with `id=S` may be a [`shapeExpr`](http://shex.io/shex-semantics/index.html#dfn-shapeexpr) reference to `S` or a `ShapeAnd`, `ShapeOr`, or `ShapeNot` which transitively references `S`.

to bring it into line with the [test suite](https://github.com/shexSpec/shexTest/blob/master/negativeStructure/manifest.ttl#L32) and implementations. (Note that this text should be simpler when we use [JSON-LD 1.1 Id Maps](https://json-ld.org/spec/latest/json-ld/#id-maps)).

Given that, it makes sense to change pfps's example above to be:
``` turtle
S: <S1> { <p> @<S2> }. <S2> { <p> @<S1> } 
G: <n1> <p> <n2> . <n2> <p> <n1> .
m: <n1>@<S1>
```
I believe Peter's assertion to be that the spec doesn't say we should choose the maximal typing (the test suite assumes it).

These tests recursively validate some node/shape association (should I add a `recursive-data` trait?):
* [3circRefPlus1_pass-recursiveData](https://github.com/shexSpec/shexTest/blob/master/validation/manifest.ttl#L4061)
* [FocusIRI2groupBnodeNested2groupIRIRef_fail](https://github.com/shexSpec/shexTest/blob/master/validation/manifest.ttl#L13343)
* [FocusIRI2groupBnodeNested2groupIRIRef_pass](https://github.com/shexSpec/shexTest/blob/master/validation/manifest.ttl#L13330)
* [recursion_example](https://github.com/shexSpec/shexTest/blob/master/validation/manifest.ttl#L15937)
* [refBNodeORrefIRI_CyclicIRI_BNode](https://github.com/shexSpec/shexTest/blob/master/validation/manifest.ttl#L11886)
* [refBNodeORrefIRI_CyclicIRI_IRI](https://github.com/shexSpec/shexTest/blob/master/validation/manifest.ttl#L11873)
* [refBNodeORrefIRI_CyclicIRI_ShortIRI](https://github.com/shexSpec/shexTest/blob/master/validation/manifest.ttl#L11899)
* [refBNodeORrefIRI_IntoReflexiveBNode](https://github.com/shexSpec/shexTest/blob/master/validation/manifest.ttl#L11860)
* [refBNodeORrefIRI_IntoReflexiveIRI](https://github.com/shexSpec/shexTest/blob/master/validation/manifest.ttl#L11847)
* [refBNodeORrefIRI_ReflexiveIRI](https://github.com/shexSpec/shexTest/blob/master/validation/manifest.ttl#L11821)
* [refBNodeORrefIRI_ReflexiveShortIRI](https://github.com/shexSpec/shexTest/blob/master/validation/manifest.ttl#L11834)


-- 
GitHub Notification of comment by ericprud
Please view or discuss this issue at https://github.com/shexSpec/shex/issues/84#issuecomment-375603041 using your GitHub account

Received on Friday, 23 March 2018 10:08:02 UTC