diff --git a/.gitignore b/.gitignore index cc1d7656..b9982bc6 100644 --- a/.gitignore +++ b/.gitignore @@ -61,3 +61,5 @@ hs_err_* \#* .#* *.tmp +/tmp +/.roo \ No newline at end of file diff --git a/shacl12-node-expr/index.html b/shacl12-node-expr/index.html index 0200737a..dd38869a 100644 --- a/shacl12-node-expr/index.html +++ b/shacl12-node-expr/index.html @@ -1,415 +1,747 @@ -
- -+ This section introduces SHACL SPARQL function expressions based on [[sparql12-query]] that can be used in node expressions. +
+
+
+ A blank node that uses a SPARQL function URI sparql:<NAME>
+ as its predicate with an rdf:List
of arguments as its object
+ is called a SHACL SPARQL function expression with the corresponding SPARQL function name.
+
+
+ The evaluation follows the SPARQL semantics for the corresponding SPARQL function.
+ Each item in the rdf:List
is evaluated as a node expression to produce argument values,
+ which are then passed to the SPARQL function implementation.
+ If the SPARQL function produces a single result value, it is wrapped as a singleton list containing that output node.
+ If the SPARQL function produces no result or an error, the expression produces an empty list or an evaluation failure respectively.
+
@@ -2176,6 +2532,7 @@
{ - "@graph": [ - { - "@id": "eg:dataset1", - "@type": "qb:DataSet", - "qb:structure": { - "@id": "eg:dsd1" - } - }, - { - "@id": "eg:dsd1", - "@type": "qb:DataStructureDefinition", - "rdfs:comment": { - "@language": "en", - "@value": "shipments by time (multiple measures approach)" - } - "eg:hasShape": { - "@id": "eg:dsd1-shape" - }, - "qb:component": [ - { - "qb:dimension": { - "@id": "sdmx-dimension:refTime" - } - }, - { - "qb:measure": { - "@id": "eg-measure:quantity" - } - }, - { - "qb:measure": { - "@id": "eg-measure:weight" - } - } - ] - }, - { - "@id": "eg:obs1a", - "@type": "qb:Observation", - "qb:dataSet": { - "@id": "eg:dataset1" - }, - "sdmx-dimension:refTime": { - "@type": "xsd:date", - "@value": "2010-07-30" - }, - "eg-measure:quantity": { - "@type": "xsd:integer", - "@value": "42" - }, - "eg-measure:weight": { - "@type": "xsd:decimal", - "@value": "1.3" - } - }, - { - "@id": "eg:obs1b", - "@type": "qb:Observation", - "qb:dataSet": { - "@id": "eg:dataset1" - }, - "sdmx-dimension:refTime": { - "@type": "xsd:dateTime", - "@value": "2010-07-31T12:00:00" - } - "eg-measure:weight": { - "@type": "xsd:decimal", - "@value": "1.4" - }, - } - ] }