- From: Jose Emilio Labra Gayo via GitHub <sysbot+gh@w3.org>
- Date: Sat, 26 May 2018 06:24:06 +0000
- To: public-shex-dev@w3.org
labra has just created a new issue for https://github.com/shexSpec/shex:
== Support for circular references that compare their values ==
[This issue](https://github.com/shexSpec/spec/issues/24) wants to express a recursive model where the values refer to themselves.
The example is between a person that owns a dog and a dog that likes a person, but the condition is that the value owned by a person must like that person.
To express that condition, I think we need to solve [this issue](https://github.com/shexSpec/shex/issues/24) before to be able to compare values.
A possible syntax could be:
```turtle
PREFIX : <http://example.org/>
:Person {
$<Dog> :owns @:Dog;
$this = $<Dog>/likes
}
:Dog {
:likes @:Person
}
```
in this way the following example:
```turtle
@prefix : <http://example.org/> .
:Bob :owns :Fido . # Fails because :Fido doesn't like :Bob
:Fido :likes :Jane .
:Jane :owns :Spot . # Conforms, because Spot likes :Jane
:Spot :likes :Jane .
```
Please view or discuss this issue at https://github.com/shexSpec/shex/issues/85 using your GitHub account
Received on Saturday, 26 May 2018 06:24:14 UTC