- From: Jose Emilio Labra Gayo <jelabra@gmail.com>
- Date: Wed, 5 Feb 2014 22:30:32 +0100
- To: public-rdf-shapes@w3.org
- Message-ID: <CAJadXXLcRkmXDiWaB6fF4Cg+hZrfVMyBGCpqw5enenNBqPai-g@mail.gmail.com>
I think a good extension of the current ShEx specification could be to
allow reverse arcs, which would allow to express constraints on the shape
of arcs that arrive to a given node, i.e. not only on the arcs departing
from a node, but also the arcs that receives a node.
For example, if I want to express that countries are the reference area of
zero or more observations, I can express it by:
<Country> {
rdfs:label xsd:string ,
^ :ref-area @<observation>* # ^ means that it receives the arc
":ref-area"
}
<Observation> {
:value xsd:integer ,
:ref-area @<Country>
}
In this way, a model like the following could validate:
:esp rdfs:label "Spain" .
:o1 :value 23, :ref-area :esp .
:o2 :value 45, :ref-area :esp .
I used the symbol "^" but I am not sure if it is reserved for other
purposes.
In fact, I noticed that the BNF grammar (
http://www.w3.org/2013/ShEx/ShEx.bnf) has reserved the symbols "!" and "^"
at the beginning of arc definitions...what is their purpose?
--
Best regards, Labra
Received on Wednesday, 5 February 2014 21:31:19 UTC