Skip to main content

61970-301_ShortCircuit-AP-Con-Complex-NotSolvedMAS-SHACL

sc301n:MutualCoupling

Severity: sh:Violation

Targets:

  • targetClass: cim:MutualCoupling

Nested Properties:

sc301n:MutualCoupling-terminalsAssignment

Path: rdf:type
Normally MutualCoupling would only be used for terminals of AC line segments. The first and second terminals of a mutual coupling should point to different AC line segments.

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 ?typeline1 ?typeline2
WHERE {
#$this cim:MutualCoupling.First_Terminal ?firstterminal .
#$this cim:MutualCoupling.Second_Terminal ?secondterminal .
#?firstterminal cim:Terminal.ConductingEquipment ?line1 .
#?secondterminal cim:Terminal.ConductingEquipment ?line2 .
$this cim:MutualCoupling.First_Terminal/cim:Terminal.ConductingEquipment ?line1 .
$this cim:MutualCoupling.Second_Terminal/cim:Terminal.ConductingEquipment ?line2 .
?line1 rdf:type ?typeline1 .
?line2 rdf:type ?typeline2 .
FILTER (?typeline1 NOT IN (cim:ACLineSegment, cim:Equipment) || ?typeline2 NOT IN (cim:ACLineSegment, cim:Equipment) || ?line1=?line2) .
}
  • Messages: ["The terminals are either not related to ACLineSegment or the first and the second terminal associations are not pointing to different ACLineSegments. Type line 1: {?typeline1}. Type line 2: {?typeline2}."]