https://cacontology.projectvic.org/sextortion#SextortionCrossReferenceShape
Validates cross-references between sextortion and related entities.
Instances of cacontology-sextortion:SextortionIncident can have the following properties:
PROPERTY |
MIN COUNT |
MAX COUNT |
TYPE |
|
|---|---|---|---|---|
| cacontology-sextortion:SextortionIncident | ||||
| cacontology-sextortion:incidentDuration | 0 | 1 |
xsd:decimal
|
|
| 1 | 1 |
xsd:string
|
||
| 1 | 1 |
xsd:string
|
||
| cacontology-sextortion:victimCount | 1 | 1 |
xsd:nonNegativeInteger
|
|
| 0 | 1 |
xsd:dateTime
|
||
| 0 | 1 |
xsd:dateTime
|
||
@prefix cacontology-sextortion: <https://cacontology.projectvic.org/sextortion#> .
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
@prefix sh: <http://www.w3.org/ns/shacl#> .
cacontology-sextortion:SextortionCrossReferenceShape a sh:NodeShape ;
rdfs:label "Sextortion Cross Reference Shape"@en ;
rdfs:comment "Validates cross-references between sextortion and related entities."@en ;
sh:sparql [ sh:message "Sextortion incident should have at least one victim or extortion tactic."@en ;
sh:select """
SELECT $this
WHERE {
$this a cacontology-sextortion:SextortionIncident .
FILTER NOT EXISTS {
{ $this cacontology-sextortion:targetsVictim ?victim } UNION
{ $this cacontology-sextortion:usesExtortionTactics ?tactic }
}
}
""" ] ;
sh:targetClass cacontology-sextortion:SextortionIncident .