- From: Arthur Ryman <arthur.ryman@gmail.com>
- Date: Thu, 7 Jan 2016 17:14:19 -0500
- To: "public-data-shapes-wg@w3.org" <public-data-shapes-wg@w3.org>
Today Eric said that sometimes one wants to use a shapes graph to define a typing on the nodes of a data graph. We have not defined this operation in the WG, but I realize that this is a ShEx use case. When defining a typing, one wants to know which shapes are satisfied by which nodes. This means that conceptually we evaluate every shape on every node. Therefore, in this use case scopes play no role and would be ignored by a processor. Since scopes are ignored, I believe that my proposed use of filters still has some benefit since it provides easier-to-understand shapes. Logically, if a shape has a filter F and constraints C then the result of evaluating the shape on a node is equal to the boolean expression IF F THEN C. However, SHACL already has AND, OR, and NOT which are enough to define any boolean combination. IF F THEN C == (NOT F) OR C Therefore the proposed use of filters does not increase the expressive power of SHACL but does provide some clarity about the intension. -- Arthur
Received on Thursday, 7 January 2016 22:14:47 UTC