https://ontology.caseontology.org/icac/educational-exploitation/shapes/TemporalConsistencyValidationShape
Validates temporal consistency across gUFO Events, Phases, and Situations in educational context.
@prefix cacontology-educational-shapes: <https://ontology.caseontology.org/icac/educational-exploitation/shapes/> .
@prefix gufo: <http://purl.org/nemo/gufo#> .
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
@prefix sh: <http://www.w3.org/ns/shacl#> .
cacontology-educational-shapes:TemporalConsistencyValidationShape a sh:NodeShape ;
rdfs:label "gUFO Temporal Consistency Validation Shape"@en ;
rdfs:comment "Validates temporal consistency across gUFO Events, Phases, and Situations in educational context."@en ;
sh:sparql [ sh:message "Exploitation events must occur during educator employment period"@en ;
sh:select """
SELECT ?this
WHERE {
?this rdf:type cacontology-educational:EducatorPerpetratedExploitation ;
cacontology-educational:perpetratedBy ?educator ;
cacontology-gufo:beginTimePoint ?exploitBegin .
?educator cacontology-gufo:employmentBeginTimePoint ?empBegin ;
cacontology-gufo:employmentEndTimePoint ?empEnd .
FILTER (?exploitBegin < ?empBegin || ?exploitBegin > ?empEnd)
}
""" ],
[ sh:message "Investigation must begin after or during exploitation period"@en ;
sh:select """
SELECT ?this
WHERE {
?this rdf:type cacontology-educational:EducationalInvestigation ;
cacontology-educational:investigates ?exploitation ;
cacontology-gufo:beginTimePoint ?invBegin .
?exploitation cacontology-gufo:beginTimePoint ?exploitBegin .
FILTER (?invBegin < ?exploitBegin)
}
""" ],
[ sh:message "Academic phases must have logical temporal sequence"@en ;
sh:select """
SELECT ?this
WHERE {
?this rdf:type cacontology-educational:AcademicTermPhase ;
cacontology-gufo:beginTimePoint ?begin ;
cacontology-gufo:endTimePoint ?end .
FILTER (?begin >= ?end)
}
""" ] ;
sh:targetNode gufo:Event,
gufo:Phase,
gufo:Situation .