https://cacontology.projectvic.org/sentencing#ConvictionRecordShape
Validation shape for conviction record instances.
@prefix cacontology-sentencing: <https://cacontology.projectvic.org/sentencing#> .
@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-sentencing:ConvictionRecordShape a sh:NodeShape ;
rdfs:label "Conviction Record Shape"@en ;
rdfs:comment "Validation shape for conviction record instances."@en ;
sh:property [ sh:datatype xsd:nonNegativeInteger ;
sh:maxCount 1 ;
sh:maxInclusive 100 ;
sh:message "Conviction record must have between 1 and 100 charges."@en ;
sh:minCount 1 ;
sh:minInclusive 1 ;
sh:path cacontology-sentencing:chargeCount ],
[ sh:datatype xsd:nonNegativeInteger ;
sh:maxCount 1 ;
sh:maxInclusive 50 ;
sh:message "Prior convictions must be between 0 and 50."@en ;
sh:minCount 0 ;
sh:minInclusive 0 ;
sh:path cacontology-sentencing:priorConvictions ],
[ sh:datatype xsd:dateTime ;
sh:maxCount 1 ;
sh:message "Conviction record must specify conviction date."@en ;
sh:minCount 1 ;
sh:path cacontology-sentencing:convictionDate ],
[ sh:datatype xsd:string ;
sh:in ( "jury_verdict" "bench_trial" "plea_agreement" "default_judgment" "summary_conviction" ) ;
sh:maxCount 1 ;
sh:message "Conviction record must specify conviction type from the allowed list."@en ;
sh:minCount 1 ;
sh:path cacontology-sentencing:convictionType ] ;
sh:targetClass cacontology-sentencing:ConvictionRecord .