logic as the compact syntax for SHACL

If the differences with ShEx can't be worked out, perhaps the compact syntax
for SHACL can be a version of variable-free first-order logic.

Here are two examples of SHACL in this syntax (using ASCII representations
of some of the mathematical symbols).  The first example includes the first
shape from my previous message (with explicit numbers).

ex:ClassForScope -> 5 <= | ex:p / C | <= 10
  &  | ex:p / B | = 1
  &  A ex:p ( C v B )

ex:nodeforscope -> A ex:av { ex:v1 ex:v2 ex:v3 }
        &  ex:hv "5"^^xsd:integer
        &  5 <= | ex:mc |
        &  5 <= ex:mi <= 10
        &  5 < ex:me < 10
        &  A ex:vc ex:Class
        & ~ ( A ex:vc ex:shape )


peter

Received on Wednesday, 9 September 2015 11:14:52 UTC