https://ontology.caseontology.org/icac/educational-exploitation/shapes/DataQualityValidationShape
Validates enhanced data quality constraints with gUFO-enhanced educational domain validation.
@prefix cacontology-educational: <https://ontology.caseontology.org/icac/educational-exploitation/> .
@prefix cacontology-educational-shapes: <https://ontology.caseontology.org/icac/educational-exploitation/shapes/> .
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
@prefix sh: <http://www.w3.org/ns/shacl#> .
cacontology-educational-shapes:DataQualityValidationShape a sh:NodeShape ;
rdfs:label "Enhanced Data Quality Validation Shape"@en ;
rdfs:comment "Validates enhanced data quality constraints with gUFO-enhanced educational domain validation."@en ;
sh:sparql [ sh:message "Educational institution names must be unique within geographic area"@en ;
sh:select """
SELECT ?this
WHERE {
?this rdf:type cacontology-educational:EducationalInstitution ;
cacontology-educational:institutionName ?name ;
cacontology-educational:geographicArea ?area .
?other rdf:type cacontology-educational:EducationalInstitution ;
cacontology-educational:institutionName ?name ;
cacontology-educational:geographicArea ?area .
FILTER (?this != ?other)
}
""" ],
[ sh:message "Victim age must be consistent with grade level and institutional type"@en ;
sh:select """
SELECT ?this
WHERE {
?this cacontology-educational:involvesVictim ?victim ;
cacontology-educational:atInstitution ?institution .
?victim cacontology-educational:victimAge ?age .
?institution rdf:type cacontology-educational:IntermediateSchool .
FILTER (?age < 11 || ?age > 14)
}
""" ] ;
sh:targetClass cacontology-educational:EducationalInstitution,
cacontology-educational:EducatorPerpetratedExploitation,
cacontology-educational:EducatorRole .