61970-456_Topology-AP-Con-Complex-NotSolvedMAS-SHACL
tp456n:Switch
Severity: sh:Violation
Targets:
- targetClass: cim:GroundDisconnector
- targetClass: cim:DisconnectingCircuitBreaker
- targetClass: cim:Switch
- targetClass: cim:Fuse
- targetClass: cim:Jumper
- targetClass: cim:Breaker
- targetClass: cim:LoadBreakSwitch
- targetClass: cim:Cut
- targetClass: cim:Disconnector
Nested Properties:
tp456n:Switch-sameTopologicalNode
Path: cim:Switch.retained
The Terminal-s of the two sides of a retained Switch (Switch.retained=true) or any of its subclasses shall not be connected to the same TopologicalNode.
Severity: sh:Violation
Constraints:
- sh:SPARQLConstraintComponent (Severity: sh:Violation)
PREFIX cim: <http://iec.ch/TC57/CIM100#>
PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
PREFIX eu: <http://iec.ch/TC57/CIM100-European#>
SELECT $this ?value ?cntn1 ?tn1
WHERE {
$this $PATH ?value .
?terminal1 cim:Terminal.ConductingEquipment $this .
?terminal1 cim:ACDCTerminal.sequenceNumber 1 .
OPTIONAL {?terminal1 cim:Terminal.ConnectivityNode ?cn1}.
OPTIONAL {?terminal1 cim:Terminal.TopologicalNode ?tn1}.
?cn1 cim:ConnectivityNode.TopologicalNode ?cntn1 .
?terminal2 cim:Terminal.ConductingEquipment $this .
?terminal2 cim:ACDCTerminal.sequenceNumber 2 .
OPTIONAL {?terminal2 cim:Terminal.ConnectivityNode ?cn2}.
OPTIONAL {?terminal2 cim:Terminal.TopologicalNode ?tn2}.
?cn2 cim:ConnectivityNode.TopologicalNode ?cntn2 .
FILTER (?value=true && (?terminal1!=?terminal2 && (?tn1=?tn2 || ?cntn1=?cntn2))) .
}
- Messages:
["Terminal-s of retained Switch (or its subclasses) connect same TopologicalNode (ID via cim:ConnectivityNode.TopologicalNode: {?cntn1}; ID via cim:Terminal.TopologicalNode: {?tn1})."]