https://cacontology.projectvic.org/sex-offender-registry#RegisteredSexOffenderShape
Validation shape for registered sex offender instances.
Focus nodes of this shape (cacontology-registry:RegisteredSexOffender) can have the following properties:
| PROPERTY | DESCRIPTION | MIN | MAX | VALUE TYPE | OTHER CONSTRAINTS |
|---|---|---|---|---|---|
| cacontology-registry:dateOfBirth | Date of birth of registered sex offender. sh:message Offender must have a date of birth. |
1 | 1 | xsd:date | |
| cacontology-registry:fullName | Legal full name of registered sex offender. sh:message Offender must have a full name (2-100 characters). |
1 | 1 | xsd:string |
sh:minLength
2
sh:maxLength
100
|
| cacontology-registry:registeredIn | Registry system where offender is registered. sh:message Offender must be registered in at least one registry. |
1 | * | cacontology-registry:SexOffenderRegistry | |
| cacontology-registry:sex | Sex of registered sex offender. sh:message Sex must be Male, Female, or Unknown. |
1 | 1 | xsd:string |
sh:in
Male, Female, Unknown
|
| cacontology-registry:socialSecurityNumber | Social Security Number (restricted access). sh:message SSN must follow format XXX-XX-XXXX when provided. |
0 | 1 | xsd:string |
sh:pattern
^[0-9]{3}-[0-9]{2}-[0-9]{4}$
|
@prefix cacontology-registry: <https://cacontology.projectvic.org/sex-offender-registry#> .
@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 xsd: <http://www.w3.org/2001/XMLSchema#> .
cacontology-registry:RegisteredSexOffenderShape a sh:NodeShape ;
rdfs:label "Registered Sex Offender Shape"@en ;
rdfs:comment "Validation shape for registered sex offender instances."@en ;
sh:property [ sh:class cacontology-registry:SexOffenderRegistry ;
sh:message "Offender must be registered in at least one registry."@en ;
sh:minCount 1 ;
sh:path cacontology-registry:registeredIn ],
[ sh:datatype xsd:string ;
sh:maxCount 1 ;
sh:maxLength 100 ;
sh:message "Offender must have a full name (2-100 characters)."@en ;
sh:minCount 1 ;
sh:minLength 2 ;
sh:path cacontology-registry:fullName ],
[ sh:datatype xsd:date ;
sh:maxCount 1 ;
sh:message "Offender must have a date of birth."@en ;
sh:minCount 1 ;
sh:path cacontology-registry:dateOfBirth ],
[ sh:datatype xsd:string ;
sh:maxCount 1 ;
sh:message "SSN must follow format XXX-XX-XXXX when provided."@en ;
sh:minCount 0 ;
sh:path cacontology-registry:socialSecurityNumber ;
sh:pattern "^[0-9]{3}-[0-9]{2}-[0-9]{4}$" ],
[ sh:datatype xsd:string ;
sh:in ( "Male" "Female" "Unknown" ) ;
sh:maxCount 1 ;
sh:message "Sex must be Male, Female, or Unknown."@en ;
sh:minCount 1 ;
sh:path cacontology-registry:sex ] ;
sh:targetClass cacontology-registry:RegisteredSexOffender .