https://cacontology.projectvic.org/production#ProductionOffenseShape
Validation shape for CSAM production offense instances.
Instances of cacontology-production:ProductionOffense can have the following properties:
PROPERTY |
MIN COUNT |
MAX COUNT |
TYPE |
|
|---|---|---|---|---|
| cacontology-production:ProductionOffense | ||||
| 0 | 1 |
xsd:decimal
|
||
| cacontology-production:productionMethod | 1 | 1 |
xsd:string
|
|
| cacontology-production:sessionCount | 0 | 1 |
xsd:nonNegativeInteger
|
|
| cacontology-production:victimCount | 1 | 1 |
xsd:nonNegativeInteger
|
|
| 0 | 1 |
xsd:dateTime
|
||
| 0 | 1 |
xsd:dateTime
|
||
@prefix cacontology-production: <https://cacontology.projectvic.org/production#> .
@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 uco-core: <https://ontology.unifiedcyberontology.org/uco/core/> .
@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
cacontology-production:ProductionOffenseShape a sh:NodeShape ;
rdfs:label "Production Offense Shape"@en ;
rdfs:comment "Validation shape for CSAM production offense instances."@en ;
sh:property [ sh:datatype xsd:string ;
sh:in ( "direct_recording" "photography" "video_recording" "live_streaming" "photography_with_modification" "multi_session_recording" "edited_compilation" ) ;
sh:maxCount 1 ;
sh:message "Production offense must specify exactly one production method from the allowed list."@en ;
sh:minCount 1 ;
sh:path cacontology-production:productionMethod ],
[ sh:datatype xsd:nonNegativeInteger ;
sh:maxCount 1 ;
sh:maxInclusive 1000 ;
sh:message "Session count must be between 1 and 1000 when specified."@en ;
sh:minCount 0 ;
sh:minInclusive 1 ;
sh:path cacontology-production:sessionCount ],
[ sh:datatype xsd:nonNegativeInteger ;
sh:maxCount 1 ;
sh:maxInclusive 50 ;
sh:message "Production offense must specify victim count between 1 and 50."@en ;
sh:minCount 1 ;
sh:minInclusive 1 ;
sh:path cacontology-production:victimCount ],
[ sh:datatype xsd:decimal ;
sh:maxCount 1 ;
sh:maxInclusive 10080.0 ;
sh:message "Duration must be between 1 minute and 1 week (10080 minutes)."@en ;
sh:minCount 0 ;
sh:minInclusive 1.0 ;
sh:path cacontology-production:durationMinutes ],
[ sh:datatype xsd:dateTime ;
sh:maxCount 1 ;
sh:message "Production offense may have a start time."@en ;
sh:minCount 0 ;
sh:path uco-core:startTime ],
[ sh:datatype xsd:dateTime ;
sh:maxCount 1 ;
sh:message "Production offense may have an end time."@en ;
sh:minCount 0 ;
sh:path uco-core:endTime ] ;
sh:targetClass cacontology-production:ProductionOffense .