https://cacontology.projectvic.org/physical-evidence/shapes#ComputerEquipmentShape
Enhanced validation shape for computer equipment instances.
@prefix cacontology-physical-shapes: <https://cacontology.projectvic.org/physical-evidence/shapes#> .
@prefix cacontology-physical1: <https://cacontology.projectvic.org/physical-evidence#> .
@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-physical-shapes:ComputerEquipmentShape a sh:NodeShape ;
rdfs:label "Computer Equipment Shape"@en ;
rdfs:comment "Enhanced validation shape for computer equipment instances."@en ;
sh:property [ sh:datatype xsd:string ;
sh:maxCount 1 ;
sh:maxLength 50 ;
sh:message "Computer equipment must specify device brand (2-50 characters)."@en ;
sh:minCount 1 ;
sh:minLength 2 ;
sh:path cacontology-physical1:deviceBrand ],
[ sh:datatype xsd:string ;
sh:maxCount 1 ;
sh:maxLength 100 ;
sh:message "Computer equipment must specify device model (2-100 characters)."@en ;
sh:minCount 1 ;
sh:minLength 2 ;
sh:path cacontology-physical1:deviceModel ],
[ sh:datatype xsd:string ;
sh:in ( "unencrypted" "partially_encrypted" "fully_encrypted" "password_protected" "unknown" ) ;
sh:maxCount 1 ;
sh:message "Computer equipment must specify encryption status from the allowed list."@en ;
sh:minCount 1 ;
sh:path cacontology-physical1:encryptionStatus ],
[ sh:datatype xsd:string ;
sh:in ( "working" "non_functional" "partially_functional" "unknown" ) ;
sh:maxCount 1 ;
sh:message "Computer equipment must specify functional status from the allowed list."@en ;
sh:minCount 1 ;
sh:path cacontology-physical1:functionalStatus ] ;
sh:targetClass cacontology-physical1:ComputerEquipment .