https://cacontology.projectvic.org/stranger-abduction#AmberAlertShape
Validation shape for Amber Alert instances.
@prefix cacontology-stranger: <https://cacontology.projectvic.org/stranger-abduction#> .
@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-stranger:AmberAlertShape a sh:NodeShape ;
rdfs:label "Amber Alert Shape"@en ;
rdfs:comment "Validation shape for Amber Alert instances."@en ;
sh:property [ sh:datatype xsd:string ;
sh:in ( "local" "regional" "statewide" "multi_state" "national" "international" ) ;
sh:maxCount 1 ;
sh:message "Amber Alert must specify alert level from the allowed list."@en ;
sh:minCount 1 ;
sh:path cacontology-stranger:alertLevel ],
[ sh:datatype xsd:dateTime ;
sh:maxCount 1 ;
sh:message "Amber Alert must specify activation time."@en ;
sh:minCount 1 ;
sh:path cacontology-stranger:activationTime ],
[ sh:datatype xsd:dateTime ;
sh:maxCount 1 ;
sh:message "Amber Alert may specify deactivation time."@en ;
sh:minCount 0 ;
sh:path cacontology-stranger:deactivationTime ],
[ sh:datatype xsd:decimal ;
sh:maxCount 1 ;
sh:maxInclusive 720.0 ;
sh:message "Alert duration must be between 0.1 and 720 hours (30 days)."@en ;
sh:minCount 0 ;
sh:minInclusive 0.1 ;
sh:path cacontology-stranger:alertDuration ],
[ sh:datatype xsd:nonNegativeInteger ;
sh:maxCount 1 ;
sh:maxInclusive 50 ;
sh:message "Amber Alert must use between 1 and 50 distribution channels."@en ;
sh:minCount 1 ;
sh:minInclusive 1 ;
sh:path cacontology-stranger:distributionChannels ],
[ sh:datatype xsd:nonNegativeInteger ;
sh:maxCount 1 ;
sh:maxInclusive 10000 ;
sh:message "Public response count must be between 0 and 10000."@en ;
sh:minCount 0 ;
sh:minInclusive 0 ;
sh:path cacontology-stranger:publicResponse ] ;
sh:targetClass cacontology-stranger:AmberAlert .