diff --git a/shacl12-sparql/index.html b/shacl12-sparql/index.html index 826bd282..462f5760 100644 --- a/shacl12-sparql/index.html +++ b/shacl12-sparql/index.html @@ -1253,7 +1253,7 @@

Annotation Properties

sh:annotationValue - Constant RDF terms that shall be used as default values. + Constant RDF terms that shall be used as default values. diff --git a/shacl12-vocabularies/shacl-shacl.ttl b/shacl12-vocabularies/shacl-shacl.ttl index dc0f2c72..31b563fb 100644 --- a/shacl12-vocabularies/shacl-shacl.ttl +++ b/shacl12-vocabularies/shacl-shacl.ttl @@ -409,3 +409,54 @@ shsh:EntailmentShape a sh:NodeShape ; sh:targetObjectsOf sh:entailment ; sh:nodeKind sh:IRI . # entailment-nodeKind + +shsh:SPARQLExecutableShape + a sh:NodeShape ; + sh:targetClass sh:SPARQLExecutable ; + sh:targetSubjectsOf sh:prefixes ; + sh:property [ + sh:path sh:prefixes ; + sh:nodeKind sh:BlankNodeOrIRI ; # prefixes-nodeKind + ] . + +shsh:SPARQLAskExecutableShape + a sh:NodeShape ; + sh:targetSubjectsOf sh:ask , sh:resultAnnotation ; + sh:property [ + sh:path sh:ask ; + sh:minCount 1 ; # ask-count + sh:maxCount 1 ; # ask-count + sh:datatype xsd:string ; # ask-datatype + ] . + +shsh:SPARQLSelectExecutableShape + a sh:NodeShape ; + sh:targetSubjectsOf sh:select , sh:resultAnnotation ; + sh:property [ + sh:path sh:select ; + sh:minCount 1 ; # SPARQLConstraint-select-count + sh:maxCount 1 ; # SPARQLConstraint-select-count + sh:datatype xsd:string ; # SPARQLConstraint-select-datatype + ] . + +shsh:ResultAnnotationShape + a sh:NodeShape ; + sh:targetObjectsOf sh:resultAnnotation ; # sparql-constraints-annotations + sh:nodeKind sh:BlankNodeOrIRI ; # resultAnnotation-nodeKind + sh:property + [ + sh:path sh:annotationProperty ; # annotationProperty + sh:minCount 1 ; + sh:maxCount 1 ; + sh:nodeKind sh:IRI ; + ] , + [ + sh:path sh:annotationVarName ; # annotationVarName + sh:datatype xsd:string ; + sh:maxCount 1 ; + sh:nodeKind sh:Literal ; + ] , + [ + sh:path sh:annotationValue ; # annotationValue + sh:nodeKind sh:IRI ; + ] .