https://cacontology.projectvic.org/grooming#GroomingBehaviorShape
Validation shape for grooming behavior instances with gUFO integration.
Focus nodes of this shape (cacontology-grooming:GroomingBehavior) can have the following properties:
| PROPERTY | DESCRIPTION | MIN | MAX | VALUE TYPE | OTHER CONSTRAINTS |
|---|---|---|---|---|---|
cacontology-grooming:behaviorFrequency |
sh:message Behavior frequency must be from the allowed list (gUFO quality aspect). |
0 | 1 | xsd:string |
sh:in
single_occurrence, occasional, frequent, daily, multiple_daily, constant
|
cacontology-grooming:behaviorIntensity |
sh:message Behavior intensity must be from the allowed list (gUFO quality aspect). |
0 | 1 | xsd:string |
sh:in
low, moderate, high, extreme, overwhelming
|
cacontology-grooming:behaviorType |
sh:message Grooming behavior must specify behavior type from the allowed list. |
1 | 1 | xsd:string |
sh:in
attention_giving, gift_giving, special_treatment, isolation_tactics, boundary_testing, sexual_content_introduction, secrecy_enforcement, threat_making
|
cacontology-grooming:groomingEffectiveness |
sh:message Grooming effectiveness must be between 0.0 and 1.0 (gUFO quality aspect) |
0 | 1 | xsd:double |
sh:minInclusive
0.0
sh:maxInclusive
1.0
|
| cacontology-grooming:groomingStage | Behavior-axis stage tag on GroomingBehavior instances (not the offense-trajectory phase class used in state machines). sh:message Grooming behavior must specify grooming stage from the allowed list (trust_building and sexual_introduction are legacy behavior-axis values). |
1 | 1 | xsd:string |
sh:in
initial_contact, conditioning, trust_building, isolation, dependency_creation, sexualization, sexual_introduction, maintenance, control
|
cacontology-grooming:manipulationLevel |
sh:message Manipulation level must be from allowed list (gUFO quality aspect) |
0 | 1 | xsd:string |
sh:in
subtle, moderate, obvious, aggressive, extreme, coercive
|
gufo:hasBeginPointInXSDDateTimeStamp |
sh:message Grooming behavior may have begin timestamp (gUFO temporal) |
0 | 1 | xsd:dateTimeStamp | |
gufo:hasEndPointInXSDDateTimeStamp |
sh:message Grooming behavior may have end timestamp (gUFO temporal) |
0 | 1 | xsd:dateTimeStamp | |
uco-core:endTime |
sh:message Grooming behavior may have an end time. |
0 | 1 | xsd:dateTime | |
uco-core:startTime |
sh:message Grooming behavior may have a start time. |
0 | 1 | xsd:dateTime |
@prefix cacontology-grooming: <https://cacontology.projectvic.org/grooming#> .
@prefix gufo: <http://purl.org/nemo/gufo#> .
@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-grooming:GroomingBehaviorShape a sh:NodeShape ;
rdfs:label "Grooming Behavior Shape"@en ;
rdfs:comment "Validation shape for grooming behavior instances with gUFO integration."@en ;
sh:property [ sh:datatype xsd:dateTimeStamp ;
sh:maxCount 1 ;
sh:message "Grooming behavior may have begin timestamp (gUFO temporal)"@en ;
sh:path gufo:hasBeginPointInXSDDateTimeStamp ],
[ sh:datatype xsd:dateTimeStamp ;
sh:maxCount 1 ;
sh:message "Grooming behavior may have end timestamp (gUFO temporal)"@en ;
sh:path gufo:hasEndPointInXSDDateTimeStamp ],
[ sh:datatype xsd:string ;
sh:in ( "initial_contact" "conditioning" "trust_building" "isolation" "dependency_creation" "sexualization" "sexual_introduction" "maintenance" "control" ) ;
sh:maxCount 1 ;
sh:message "Grooming behavior must specify grooming stage from the allowed list (trust_building and sexual_introduction are legacy behavior-axis values)."@en ;
sh:minCount 1 ;
sh:path cacontology-grooming:groomingStage ],
[ sh:datatype xsd:string ;
sh:in ( "attention_giving" "gift_giving" "special_treatment" "isolation_tactics" "boundary_testing" "sexual_content_introduction" "secrecy_enforcement" "threat_making" ) ;
sh:maxCount 1 ;
sh:message "Grooming behavior must specify behavior type from the allowed list."@en ;
sh:minCount 1 ;
sh:path cacontology-grooming:behaviorType ],
[ sh:datatype xsd:string ;
sh:in ( "single_occurrence" "occasional" "frequent" "daily" "multiple_daily" "constant" ) ;
sh:maxCount 1 ;
sh:message "Behavior frequency must be from the allowed list (gUFO quality aspect)."@en ;
sh:minCount 0 ;
sh:path cacontology-grooming:behaviorFrequency ],
[ sh:datatype xsd:string ;
sh:in ( "low" "moderate" "high" "extreme" "overwhelming" ) ;
sh:maxCount 1 ;
sh:message "Behavior intensity must be from the allowed list (gUFO quality aspect)."@en ;
sh:minCount 0 ;
sh:path cacontology-grooming:behaviorIntensity ],
[ sh:datatype xsd:double ;
sh:maxCount 1 ;
sh:maxInclusive 1.0 ;
sh:message "Grooming effectiveness must be between 0.0 and 1.0 (gUFO quality aspect)"@en ;
sh:minInclusive 0.0 ;
sh:path cacontology-grooming:groomingEffectiveness ],
[ sh:datatype xsd:string ;
sh:in ( "subtle" "moderate" "obvious" "aggressive" "extreme" "coercive" ) ;
sh:maxCount 1 ;
sh:message "Manipulation level must be from allowed list (gUFO quality aspect)"@en ;
sh:path cacontology-grooming:manipulationLevel ],
[ sh:datatype xsd:dateTime ;
sh:maxCount 1 ;
sh:message "Grooming behavior may have a start time."@en ;
sh:minCount 0 ;
sh:path uco-core:startTime ],
[ sh:datatype xsd:dateTime ;
sh:maxCount 1 ;
sh:message "Grooming behavior may have an end time."@en ;
sh:minCount 0 ;
sh:path uco-core:endTime ] ;
sh:targetClass cacontology-grooming:GroomingBehavior .