CodeFerret icon

ShapeName_01.ttl

CodeFerret | PRO | 05/29/20 06:20:53 PM UTC | 0 ⭐ | 595 👁️ | Never ⏰ | []
text |

2.26 KB

|

None

|

0 👍

/

0 👎

@prefix rdf:   <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .@prefix rdfs:  <http://www.w3.org/2000/01/rdf-schema#> .@prefix sh:    <http://www.w3.org/ns/shacl#> .@prefix skos:  <http://www.w3.org/2004/02/skos/core#> .@prefix bdo:   <http://purl.bdrc.io/ontology/core/> .@prefix bds:   <http://purl.bdrc.io/ontology/shapes/core/> .@prefix bdr:   <http://purl.bdrc.io/resource/> . bds:PersonLocalShape    a               sh:NodeShape ;    rdfs:label      "Person Shape"@en ;    sh:property     bds:PersonShape-personName ;    sh:targetClass  bdo:Person ;.bds:Pfx_rdf     a sh:PrefixDeclaration ;    sh:declare [         sh:prefix "rdf" ;        sh:namespace "http://www.w3.org/1999/02/22-rdf-syntax-ns#" ;    ] ;.bds:Pfx_rdfs    a sh:PrefixDeclaration ;    sh:declare [         sh:prefix "rdfs" ;        sh:namespace "http://www.w3.org/2000/01/rdf-schema#" ;    ] ;.bds:Pfx_bdo    a sh:PrefixDeclaration ;    sh:declare [         sh:prefix "bdo" ;        sh:namespace "http://purl.bdrc.io/ontology/core/" ;    ] ;.bds:CheckPersonNameClass      a      sh:NodeShape ;    rdfs:label      "Check PersonName Class Shape"@en ;    sh:targetObjectsOf bdo:personName ;    sh:message "focusNode must be subClassOf* bdo:PersonName" ;    sh:sparql [      a sh:SPARQLConstraint ;      sh:prefixes bds:Pfx_rdf , bds:Pfx_rdfs , bds:Pfx_bdo ;      sh:select """        select distinct $this        where {            $this rdf:type ?type .            filter not exists { ?type rdfs:subClassOf* bdo:PersonName . } .        }	        """ ;    ] ;.bds:PersonShape-personName    a               sh:PropertyShape ;    sh:class        bdo:PersonName ;    sh:message      "PersonName is not well-formed, wrong Class or missing rdfs:label"@en ;    sh:minCount     1 ;    sh:node         bds:PersonNameShape ;    sh:nodeKind     sh:IRI ;    sh:path         bdo:personName ;.bds:PersonNameShape  a  sh:NodeShape ;    sh:property     bds:PersonNameShape-personNameLabel ;    sh:targetClass  bdo:PersonName ;.bds:PersonNameShape-personNameLabel    a               sh:PropertyShape ;    sh:datatype     rdf:langString ;    sh:message      ":PersonName must have exactly one rdfs:label"@en ;    sh:maxCount     1 ;    sh:minCount     1 ;    sh:path         rdfs:label ;.

Comments

  •  icon
    01/01/70 12:00:00 AM UTC
    Plain Text |

    0 B

    |

    👍

    /

    👎