-
Notifications
You must be signed in to change notification settings - Fork 32
Open
Labels
Node ExpressionsFor SHACL 1.2 Node ExpressionsFor SHACL 1.2 Node Expressions
Description
These are some vague ruminations on
- How composable are NodeExprs?
- Are they amenable to partial evaluation?
- How parameterizable are they?
- Is there some Combinator or Lambda calculus hidden behind them?
SPIN and Constraint Components do this sort of stuff, but I don't see them in the current draft https://raw.githack.com/w3c/data-shapes/master/shacl12-node-expr/index.html
Use case 1: Composition
(Inspired by @HolgerKnublauch example in #484)
shnex:filterShape
filters a nodeset by a constraint. Assume a lot of the time that will be a single sh:property
constraint.
- Will it be possible to define a custom shortcut like
ex:filterProperty [...]
that expands toshnex:filterShape [sh:property [ ... ]]
Use case 2: Parametrization
(Inspired by https://raw.githack.com/w3c/data-shapes/master/shacl12-node-expr/index.html#EstonianCompanyShapeExample)
- How to parameterize a generic shape "Organization in Country" with
<type>, <country>
- How to evaluate it partially (substitute the params) to derive "Company in Estonia" and "University in Bulgaria" shapes?
Metadata
Metadata
Assignees
Labels
Node ExpressionsFor SHACL 1.2 Node ExpressionsFor SHACL 1.2 Node Expressions