https://cacontology.projectvic.org/sex-offender-registry#RegistrationOffenseCrossReferenceShape
Validates that registration records are based on convicting offenses.
Instances of cacontology-registry:RegistrationRecord can have the following properties:
PROPERTY |
MIN COUNT |
MAX COUNT |
TYPE |
|
|---|---|---|---|---|
| cacontology-registry:RegistrationRecord | ||||
| cacontology-registry:expirationDate | 0 | 1 |
xsd:date
|
|
| cacontology-registry:lifetimeRegistration | 1 | 1 |
xsd:boolean
|
|
| cacontology-registry:registrationDate | 1 | 1 |
xsd:date
|
|
| cacontology-registry:registrationNumber | 1 | 1 |
xsd:string
|
|
| cacontology-registry:tier | 1 | 1 |
xsd:integer
|
|
@prefix cacontology-registry: <https://cacontology.projectvic.org/sex-offender-registry#> .
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
@prefix sh: <http://www.w3.org/ns/shacl#> .
cacontology-registry:RegistrationOffenseCrossReferenceShape a sh:NodeShape ;
rdfs:label "Registration Offense Cross Reference Shape"@en ;
rdfs:comment "Validates that registration records are based on convicting offenses."@en ;
sh:sparql [ sh:message "Registration record must be based on at least one convicting offense."@en ;
sh:select """
SELECT $this
WHERE {
$this a cacontology-registry:RegistrationRecord .
FILTER NOT EXISTS {
$this cacontology-registry:basedOnOffense ?offense .
?offense a cacontology-registry:ConvictingOffense .
}
}
""" ] ;
sh:targetClass cacontology-registry:RegistrationRecord .