@enervance/insight-cim-model 0.0.372 → 0.0.373-beta1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (206) hide show
  1. package/dist/analysis/analysis-neplan/contingency-analysis.neplan.westnetz.js +1 -1
  2. package/dist/analysis/analysis-neplan/contingency-analysis.neplan.westnetz.js.map +1 -1
  3. package/dist/config/load.confings.js +1 -2
  4. package/dist/config/load.confings.js.map +1 -1
  5. package/dist/constants/cim-class-names.d.ts +2 -1
  6. package/dist/constants/cim-class-names.js +2 -1
  7. package/dist/constants/cim-class-names.js.map +1 -1
  8. package/dist/converter/integral7/config/integral-prefix.d.ts +6 -0
  9. package/dist/converter/integral7/config/integral-prefix.js +7 -1
  10. package/dist/converter/integral7/config/integral-prefix.js.map +1 -1
  11. package/dist/converter/integral7/converter.integral7.d.ts +1 -0
  12. package/dist/converter/integral7/converter.integral7.js +198 -62
  13. package/dist/converter/integral7/converter.integral7.js.map +1 -1
  14. package/dist/converter/integral7/dl-convert/db/database.interface.types.d.ts +28 -0
  15. package/dist/converter/integral7/dl-convert/dl-converter-i7.d.ts +11 -4
  16. package/dist/converter/integral7/dl-convert/dl-converter-i7.js +308 -31
  17. package/dist/converter/integral7/dl-convert/dl-converter-i7.js.map +1 -1
  18. package/dist/converter/integral7/dl-convert/dl-graphs/convert-graph-keys.d.ts +10 -1
  19. package/dist/converter/integral7/dl-convert/dl-graphs/convert-graph-keys.js +6 -0
  20. package/dist/converter/integral7/dl-convert/dl-graphs/convert-graph-keys.js.map +1 -1
  21. package/dist/converter/integral7/dl-convert/dl-graphs/db-object-graph.js +5 -12
  22. package/dist/converter/integral7/dl-convert/dl-graphs/db-object-graph.js.map +1 -1
  23. package/dist/converter/integral7/dl-convert/executor.js +15 -3
  24. package/dist/converter/integral7/dl-convert/executor.js.map +1 -1
  25. package/dist/converter/integral7/interface-i7/data-structures-i7.d.ts +3 -1
  26. package/dist/converter/integral7/interface-i7/data-structures-i7.js.map +1 -1
  27. package/dist/converter/integral7/interface-i7/default-values-config.interface.d.ts +8 -0
  28. package/dist/converter/integral7/interface-i7/export-frame-i7.d.ts +3 -1
  29. package/dist/converter/integral7/interface-i7/export-frame-i7.js +3 -2
  30. package/dist/converter/integral7/interface-i7/export-frame-i7.js.map +1 -1
  31. package/dist/converter/integral7/model/dl-utils/util-functions.d.ts +9 -1
  32. package/dist/converter/integral7/model/dl-utils/util-functions.js +32 -3
  33. package/dist/converter/integral7/model/dl-utils/util-functions.js.map +1 -1
  34. package/dist/converter/integral7/model/integral/BaseClass.d.ts +0 -2
  35. package/dist/converter/integral7/model/integral/BaseClass.js +0 -3
  36. package/dist/converter/integral7/model/integral/BaseClass.js.map +1 -1
  37. package/dist/converter/integral7/model/integral/KnotenZw.d.ts +7 -0
  38. package/dist/converter/integral7/model/integral/KnotenZw.js +13 -0
  39. package/dist/converter/integral7/model/integral/KnotenZw.js.map +1 -0
  40. package/dist/converter/integral7/model/integral/Netzbereich.d.ts +15 -0
  41. package/dist/converter/integral7/model/integral/Netzbereich.js +23 -0
  42. package/dist/converter/integral7/model/integral/Netzbereich.js.map +1 -0
  43. package/dist/converter/integral7/model/integral/NetzbereichAussen.d.ts +7 -0
  44. package/dist/converter/integral7/model/integral/NetzbereichAussen.js +12 -0
  45. package/dist/converter/integral7/model/integral/NetzbereichAussen.js.map +1 -0
  46. package/dist/converter/integral7/model/integral/NetzbereichInnen.d.ts +7 -0
  47. package/dist/converter/integral7/model/integral/NetzbereichInnen.js +12 -0
  48. package/dist/converter/integral7/model/integral/NetzbereichInnen.js.map +1 -0
  49. package/dist/converter/integral7/model/integral/NetzbereichRand.d.ts +7 -0
  50. package/dist/converter/integral7/model/integral/NetzbereichRand.js +12 -0
  51. package/dist/converter/integral7/model/integral/NetzbereichRand.js.map +1 -0
  52. package/dist/converter/integral7/sql/integral.sql.js +3 -0
  53. package/dist/converter/integral7/sql/integral.sql.js.map +1 -1
  54. package/dist/converter/integral7/tp-bd-profile/convert-functions/convert-netzbereiche.d.ts +0 -0
  55. package/dist/converter/integral7/tp-bd-profile/convert-functions/convert-netzbereiche.js +2 -0
  56. package/dist/converter/integral7/tp-bd-profile/convert-functions/convert-netzbereiche.js.map +1 -0
  57. package/dist/converter/integral7/tp-bd-profile/model/BoundaryPoint.d.ts +8 -0
  58. package/dist/converter/integral7/tp-bd-profile/model/BoundaryPoint.js +13 -0
  59. package/dist/converter/integral7/tp-bd-profile/model/BoundaryPoint.js.map +1 -0
  60. package/dist/converter/integral7/tp-bd-profile/model/BoundarySet.d.ts +15 -0
  61. package/dist/converter/integral7/tp-bd-profile/model/BoundarySet.js +38 -0
  62. package/dist/converter/integral7/tp-bd-profile/model/BoundarySet.js.map +1 -0
  63. package/dist/converter/integral7/tp-bd-profile/model/ExternalPoint.d.ts +8 -0
  64. package/dist/converter/integral7/tp-bd-profile/model/ExternalPoint.js +13 -0
  65. package/dist/converter/integral7/tp-bd-profile/model/ExternalPoint.js.map +1 -0
  66. package/dist/converter/integral7/tp-bd-profile/model/InternalPoint.d.ts +8 -0
  67. package/dist/converter/integral7/tp-bd-profile/model/InternalPoint.js +13 -0
  68. package/dist/converter/integral7/tp-bd-profile/model/InternalPoint.js.map +1 -0
  69. package/dist/converter/integral7/tp-bd-profile/model/convert-net-equivalent.model.d.ts +8 -0
  70. package/dist/converter/integral7/tp-bd-profile/model/convert-net-equivalent.model.js +9 -0
  71. package/dist/converter/integral7/tp-bd-profile/model/convert-net-equivalent.model.js.map +1 -0
  72. package/dist/converter/integral7/tp-bd-profile/tb-bd-converter.utilities.d.ts +9 -0
  73. package/dist/converter/integral7/tp-bd-profile/tb-bd-converter.utilities.js +82 -0
  74. package/dist/converter/integral7/tp-bd-profile/tb-bd-converter.utilities.js.map +1 -0
  75. package/dist/converter/integral7/tp-bd-profile/tb-bd-converter.utilities.types.d.ts +25 -0
  76. package/dist/converter/integral7/tp-bd-profile/tb-bd-converter.utilities.types.js +3 -0
  77. package/dist/converter/integral7/tp-bd-profile/tb-bd-converter.utilities.types.js.map +1 -0
  78. package/dist/converter/integral7/tp-bd-profile/tp-bd-converter.d.ts +23 -0
  79. package/dist/converter/integral7/tp-bd-profile/tp-bd-converter.js +244 -0
  80. package/dist/converter/integral7/tp-bd-profile/tp-bd-converter.js.map +1 -0
  81. package/dist/converter/integral7/utils-cgmes-export.js +2 -0
  82. package/dist/converter/integral7/utils-cgmes-export.js.map +1 -1
  83. package/dist/converter/integral7/utils.d.ts +1 -0
  84. package/dist/converter/integral7/utils.js +28 -2
  85. package/dist/converter/integral7/utils.js.map +1 -1
  86. package/dist/etl/etl-neplan/etl-neplan-feederline.js.map +1 -1
  87. package/dist/interfaces/model/core/IConnectivityNode.d.ts +6 -6
  88. package/dist/interfaces/model/core/ISubstation.d.ts +2 -2
  89. package/dist/interfaces/model/core/IVoltageLevel.d.ts +2 -0
  90. package/dist/model/assetinfo/SwitchInfo.d.ts +2 -0
  91. package/dist/model/assetinfo/SwitchInfo.js +6 -1
  92. package/dist/model/assetinfo/SwitchInfo.js.map +1 -1
  93. package/dist/model/core/BaseVoltage.d.ts +3 -0
  94. package/dist/model/core/BaseVoltage.js +6 -0
  95. package/dist/model/core/BaseVoltage.js.map +1 -1
  96. package/dist/model/core/ConnectivityNode.js +1 -2
  97. package/dist/model/core/ConnectivityNode.js.map +1 -1
  98. package/dist/model/core/ConnectivityNodeContainer.d.ts +3 -3
  99. package/dist/model/core/ConnectivityNodeContainer.js.map +1 -1
  100. package/dist/model/core/Substation.d.ts +2 -1
  101. package/dist/model/core/Substation.js +1 -2
  102. package/dist/model/core/Substation.js.map +1 -1
  103. package/dist/model/core/VoltageLevel.d.ts +9 -3
  104. package/dist/model/core/VoltageLevel.js +12 -3
  105. package/dist/model/core/VoltageLevel.js.map +1 -1
  106. package/dist/model/dc/DCNode.js +3 -3
  107. package/dist/model/dc/DCNode.js.map +1 -1
  108. package/dist/model/extensions/amprion/additionalassetvalue/AMPRIONAdditionalBayValue.js +1 -1
  109. package/dist/model/extensions/amprion/core/AMPRIONConnectivityNode.js +1 -1
  110. package/dist/model/extensions/amprion/core/AMPRIONConnectivityNode.js.map +1 -1
  111. package/dist/model/extensions/amprion/core/AMPRIONSubstation.d.ts +25 -0
  112. package/dist/model/extensions/amprion/core/AMPRIONSubstation.js +114 -0
  113. package/dist/model/extensions/amprion/core/AMPRIONSubstation.js.map +1 -0
  114. package/dist/model/extensions/integral/core/INTEGRALTerminal.d.ts +12 -0
  115. package/dist/model/extensions/integral/core/INTEGRALTerminal.js +37 -0
  116. package/dist/model/extensions/integral/core/INTEGRALTerminal.js.map +1 -0
  117. package/dist/model/extensions/integral/dc/DCConverterUnit.d.ts +11 -0
  118. package/dist/model/extensions/integral/dc/DCConverterUnit.js +34 -0
  119. package/dist/model/extensions/integral/dc/DCConverterUnit.js.map +1 -0
  120. package/dist/model/extensions/integral/dc/DCLineSegment.d.ts +10 -0
  121. package/dist/model/extensions/integral/dc/DCLineSegment.js +31 -0
  122. package/dist/model/extensions/integral/dc/DCLineSegment.js.map +1 -0
  123. package/dist/model/extensions/neplan-westnetz/assets/WNFacility.d.ts +30 -0
  124. package/dist/model/extensions/neplan-westnetz/assets/WNFacility.js +189 -0
  125. package/dist/model/extensions/neplan-westnetz/assets/WNFacility.js.map +1 -0
  126. package/dist/model/extensions/neplan-westnetz/assets/WNFacilityKind.d.ts +12 -0
  127. package/dist/model/extensions/neplan-westnetz/assets/WNFacilityKind.js +21 -0
  128. package/dist/model/extensions/neplan-westnetz/assets/WNFacilityKind.js.map +1 -0
  129. package/dist/model/extensions/neplan-westnetz/assets/WNWireInfo.d.ts +21 -0
  130. package/dist/model/extensions/neplan-westnetz/assets/WNWireInfo.js +102 -0
  131. package/dist/model/extensions/neplan-westnetz/assets/WNWireInfo.js.map +1 -0
  132. package/dist/model/extensions/neplan-westnetz/assets/WNZUWOHealthScore.d.ts +12 -0
  133. package/dist/model/extensions/neplan-westnetz/assets/WNZUWOHealthScore.js +60 -0
  134. package/dist/model/extensions/neplan-westnetz/assets/WNZUWOHealthScore.js.map +1 -0
  135. package/dist/model/extensions/neplan-westnetz/assets/WNZUWOImportanceScore.d.ts +11 -0
  136. package/dist/model/extensions/neplan-westnetz/assets/WNZUWOImportanceScore.js +55 -0
  137. package/dist/model/extensions/neplan-westnetz/assets/WNZUWOImportanceScore.js.map +1 -0
  138. package/dist/model/extensions/neplan-westnetz/assets/WNZUWOPriority.d.ts +12 -0
  139. package/dist/model/extensions/neplan-westnetz/assets/WNZUWOPriority.js +60 -0
  140. package/dist/model/extensions/neplan-westnetz/assets/WNZUWOPriority.js.map +1 -0
  141. package/dist/model/extensions/neplan-westnetz/assets/WNZUWOState.d.ts +7 -0
  142. package/dist/model/extensions/neplan-westnetz/assets/WNZUWOState.js +12 -0
  143. package/dist/model/extensions/neplan-westnetz/assets/WNZUWOState.js.map +1 -0
  144. package/dist/model/extensions/neplan-westnetz/common/WNLocation.d.ts +24 -0
  145. package/dist/model/extensions/neplan-westnetz/common/WNLocation.js +89 -0
  146. package/dist/model/extensions/neplan-westnetz/common/WNLocation.js.map +1 -0
  147. package/dist/model/extensions/neplan-westnetz/core/WNBay.d.ts +22 -0
  148. package/dist/model/extensions/neplan-westnetz/core/WNBay.js +87 -0
  149. package/dist/model/extensions/neplan-westnetz/core/WNBay.js.map +1 -0
  150. package/dist/model/extensions/neplan-westnetz/core/WNConnectivityNode.d.ts +71 -0
  151. package/dist/model/extensions/neplan-westnetz/core/WNConnectivityNode.js +570 -0
  152. package/dist/model/extensions/neplan-westnetz/core/WNConnectivityNode.js.map +1 -0
  153. package/dist/model/extensions/neplan-westnetz/core/WNFeeder.d.ts +44 -0
  154. package/dist/model/extensions/neplan-westnetz/core/WNFeeder.js +234 -0
  155. package/dist/model/extensions/neplan-westnetz/core/WNFeeder.js.map +1 -0
  156. package/dist/model/extensions/neplan-westnetz/core/WNSwitchTypeKind.d.ts +5 -0
  157. package/dist/model/extensions/neplan-westnetz/core/WNSwitchTypeKind.js +10 -0
  158. package/dist/model/extensions/neplan-westnetz/core/WNSwitchTypeKind.js.map +1 -0
  159. package/dist/model/extensions/neplan-westnetz/faults/WNFaultConnectivityNode.d.ts +22 -0
  160. package/dist/model/extensions/neplan-westnetz/faults/WNFaultConnectivityNode.js +98 -0
  161. package/dist/model/extensions/neplan-westnetz/faults/WNFaultConnectivityNode.js.map +1 -0
  162. package/dist/model/extensions/neplan-westnetz/operations/WNOutage.d.ts +21 -0
  163. package/dist/model/extensions/neplan-westnetz/operations/WNOutage.js +100 -0
  164. package/dist/model/extensions/neplan-westnetz/operations/WNOutage.js.map +1 -0
  165. package/dist/model/extensions/neplan-westnetz/wires/WNACLineSegment.d.ts +20 -0
  166. package/dist/model/extensions/neplan-westnetz/wires/WNACLineSegment.js +105 -0
  167. package/dist/model/extensions/neplan-westnetz/wires/WNACLineSegment.js.map +1 -0
  168. package/dist/model/extensions/neplan-westnetz/wires/WNEnergyConsumer.d.ts +75 -0
  169. package/dist/model/extensions/neplan-westnetz/wires/WNEnergyConsumer.js +505 -0
  170. package/dist/model/extensions/neplan-westnetz/wires/WNEnergyConsumer.js.map +1 -0
  171. package/dist/model/generic-data-set/ChangeSetMember.d.ts +0 -5
  172. package/dist/model/generic-data-set/ChangeSetMember.js +0 -10
  173. package/dist/model/generic-data-set/ChangeSetMember.js.map +1 -1
  174. package/dist/model/generic-data-set/ObjectCreation.js.map +1 -1
  175. package/dist/model/generic-data-set/ObjectInsertion.d.ts +10 -0
  176. package/dist/model/generic-data-set/ObjectInsertion.js +60 -0
  177. package/dist/model/generic-data-set/ObjectInsertion.js.map +1 -0
  178. package/dist/model/generic-data-set/ObjectRemoval.d.ts +10 -0
  179. package/dist/model/generic-data-set/ObjectRemoval.js +60 -0
  180. package/dist/model/generic-data-set/ObjectRemoval.js.map +1 -0
  181. package/dist/model/topology/TopologicalNode.d.ts +2 -0
  182. package/dist/model/topology/TopologicalNode.js +62 -0
  183. package/dist/model/topology/TopologicalNode.js.map +1 -1
  184. package/dist/model/wires/Breaker.js +1 -1
  185. package/dist/model/wires/Breaker.js.map +1 -1
  186. package/dist/model/wires/Disconnector.js +1 -1
  187. package/dist/model/wires/Disconnector.js.map +1 -1
  188. package/dist/model/wires/TransformerEnd.d.ts +2 -3
  189. package/dist/model/wires/TransformerEnd.js.map +1 -1
  190. package/dist/model-container/model/EVModelsContainer.d.ts +0 -2
  191. package/dist/model-container/model/EVModelsContainer.js +0 -99
  192. package/dist/model-container/model/EVModelsContainer.js.map +1 -1
  193. package/dist/model-container/model/ModelContainer.d.ts +9 -4
  194. package/dist/model-container/model/ModelContainer.js +17 -11
  195. package/dist/model-container/model/ModelContainer.js.map +1 -1
  196. package/dist/util/collection/util-graph2tree.js +2 -2
  197. package/dist/util/collection/util-graph2tree.js.map +1 -1
  198. package/dist/utils2/cim.model.utils.js +99 -6
  199. package/dist/utils2/cim.model.utils.js.map +1 -1
  200. package/dist/utils2/model.modification.utils.d.ts +13 -3
  201. package/dist/utils2/model.modification.utils.js +188 -28
  202. package/dist/utils2/model.modification.utils.js.map +1 -1
  203. package/dist/utils2/parser.utils.d.ts +0 -3
  204. package/dist/utils2/parser.utils.js +2 -5
  205. package/dist/utils2/parser.utils.js.map +1 -1
  206. package/package.json +1 -1
@@ -0,0 +1,234 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.WNFeeder = void 0;
4
+ const Feeder_1 = require("../../../core/Feeder.js");
5
+ const RegulatingCondEq_1 = require("../../../wires/RegulatingCondEq.js");
6
+ const parser_utils_1 = require("../../../../utils2/parser.utils.js");
7
+ /** Wenstnezu Neplan Erweiterung */
8
+ class WNFeeder extends Feeder_1.Feeder {
9
+ constructor(uuid, name, shortName, description, baseIRI) {
10
+ super(uuid, name, shortName, description);
11
+ this.baseIRI = baseIRI;
12
+ this.normalEnergizedConnectivityNodes = new Map();
13
+ }
14
+ addEnergizedConnectivityNode(connectivityNode) {
15
+ this.normalEnergizedConnectivityNodes.set(connectivityNode.getUUID(), connectivityNode);
16
+ }
17
+ setNumber(number) {
18
+ this.number = number;
19
+ return this.getPropertySparqlTriple(this.baseIRI, this.mrid, 'westnetzneplan', 'WNFeeder', 'number', this.number);
20
+ }
21
+ setCurrent(current) {
22
+ this.current = current;
23
+ return this.getPropertySparqlTriple(this.baseIRI, this.mrid, 'westnetzneplan', 'WNFeeder', 'current', this.current + '');
24
+ }
25
+ setP(p) {
26
+ this.p = p;
27
+ return this.getPropertySparqlTriple(this.baseIRI, this.mrid, 'westnetzneplan', 'WNFeeder', 'p', this.p + '');
28
+ }
29
+ setQ(q) {
30
+ this.q = q;
31
+ return this.getPropertySparqlTriple(this.baseIRI, this.mrid, 'westnetzneplan', 'WNFeeder', 'q', this.q + '');
32
+ }
33
+ getVoltage() {
34
+ var _a, _b;
35
+ for (const equip of this.additionalGroupedEquipment.values()) {
36
+ if (((_a = equip.getBaseVoltage()) === null || _a === void 0 ? void 0 : _a.nominalVoltage.value) > 0) {
37
+ return (_b = equip.getBaseVoltage()) === null || _b === void 0 ? void 0 : _b.nominalVoltage.value;
38
+ }
39
+ }
40
+ return 0;
41
+ }
42
+ getRatedVoltage() {
43
+ var _a, _b, _c, _d;
44
+ /** Die Slackspannung */
45
+ const additionalTerminals = [...this.normalHeadTerminal.values()];
46
+ /** Sonderfall: Simulation eines Schaltfeldes durch eine fiktive Leitung */
47
+ for (const terminal of this.normalHeadTerminal.values()) {
48
+ for (const cnTerminal of terminal.connectivityNode.terminals.values()) {
49
+ if (cnTerminal.conductingEquipment.additionalEquipmentContainer === undefined) {
50
+ additionalTerminals.push(...cnTerminal.conductingEquipment.terminals.values());
51
+ }
52
+ }
53
+ }
54
+ for (const cn of additionalTerminals) {
55
+ const vl = (_a = cn.connectivityNode) === null || _a === void 0 ? void 0 : _a.connectivityNodeContainer;
56
+ if (vl) {
57
+ for (const equip of vl.equipments.values()) {
58
+ if (equip instanceof RegulatingCondEq_1.RegulatingCondEq) {
59
+ const ratedU = (_b = equip.regulatingControl) === null || _b === void 0 ? void 0 : _b.targetValue;
60
+ if (ratedU) {
61
+ return ratedU;
62
+ }
63
+ }
64
+ }
65
+ }
66
+ }
67
+ /** kein Slackspannung verfügbar, dann Nennspannung */
68
+ for (const equip of this.additionalGroupedEquipment.values()) {
69
+ if (((_c = equip.getBaseVoltage()) === null || _c === void 0 ? void 0 : _c.nominalVoltage.value) > 0) {
70
+ return (_d = equip.getBaseVoltage()) === null || _d === void 0 ? void 0 : _d.nominalVoltage.value;
71
+ }
72
+ }
73
+ /** Ansonsten 0 */
74
+ return 0;
75
+ }
76
+ /** ------------------ JSON------------------------*/
77
+ toJSON() {
78
+ super.toJSON();
79
+ this.toJSONAttributes();
80
+ this.toJSONAssociations();
81
+ return this.json;
82
+ }
83
+ toJSONAttributes() {
84
+ var _a, _b;
85
+ super.toJSONAttributes();
86
+ this.json['number'] = this.number;
87
+ this.json['current'] = this.current;
88
+ this.json['apparentpowerdemand'] = Math.sqrt(Math.pow(this.p, 2) + Math.pow(this.q, 2));
89
+ this.json['headConductingEquipmentUUID'] = (_a = this.getHeadConductingEquipment()) === null || _a === void 0 ? void 0 : _a.mrid;
90
+ this.json['headNode'] = (_b = this.getHeadNode()) === null || _b === void 0 ? void 0 : _b.mrid;
91
+ this.json['saifi'] = this.getFailureProbability();
92
+ }
93
+ /* public getCurrent(): number {
94
+ const demandS = this.getFeededApparentPowerDemand();
95
+ const voltage = this.getRatedVoltage() * 1_000;
96
+ const current = (demandS * 1_000_000)/((voltage > 0 ? voltage : 1) * Math.sqrt(3));
97
+ if (isNumericI7(current)) {
98
+ return current;
99
+ }
100
+ else {
101
+ return 0;
102
+ }
103
+ }*/
104
+ getFailureProbability() {
105
+ var _a;
106
+ /** Knoten sind ein Sonderfall -> Ausfallhäufigkeiten pro TP,
107
+ * da das Netzmodell VoltageLevel-Elemente nicht geeignet sind. */
108
+ /** Stationen */
109
+ const tpMap = new Map();
110
+ for (const cn of this.normalEnergizedConnectivityNodes.values()) {
111
+ const tp = ((_a = cn.name) === null || _a === void 0 ? void 0 : _a.substr(0, 21)) || '';
112
+ if (tpMap.has(tp))
113
+ continue;
114
+ for (const asset of cn.assets.values()) {
115
+ const failureRate = asset.getFailureRate();
116
+ if (failureRate > 0) {
117
+ tpMap.set(tp, failureRate);
118
+ break;
119
+ }
120
+ }
121
+ }
122
+ /** Die Raten von Strinkreisabschnitten und -strecken werden über die Assetseite bestimmt */
123
+ const asset = [...this.assets.values()].find(elem => elem);
124
+ let wiresFailureRate = asset ? asset.getFailureRate() : 0;
125
+ for (const tp of tpMap.values()) {
126
+ wiresFailureRate += tp;
127
+ }
128
+ return wiresFailureRate;
129
+ }
130
+ toJSONAssociations() {
131
+ super.toJSONAssociations();
132
+ this.json['normalEnergizedConnectivityNodeUUID'] = [...this.normalEnergizedConnectivityNodes.keys()];
133
+ }
134
+ /** ------------------ Fuseki Parser ------------------------*/
135
+ /** Parst und initialisiert das Objekt aus Fuseki JSON Daten */
136
+ static resolveClassFusekiJSON(data, cimModel) {
137
+ var _a, _b;
138
+ (_b = (_a = data === null || data === void 0 ? void 0 : data.results) === null || _a === void 0 ? void 0 : _a.bindings) === null || _b === void 0 ? void 0 : _b.forEach((value) => {
139
+ const newClass = new WNFeeder();
140
+ newClass.resolveAttributesFusekiJSON(value);
141
+ cimModel.addFeeder(newClass);
142
+ });
143
+ }
144
+ /** Parst die Attributs- und Assoziationsinformationen aus Fuseki JSON Daten */
145
+ resolveAttributesFusekiJSON(value) {
146
+ super.resolveAttributesFusekiJSON(value);
147
+ this.number = parser_utils_1.ParserUtils.getValue(value, 'number');
148
+ if (parser_utils_1.ParserUtils.isBlankNode(value['current']))
149
+ this.current = +parser_utils_1.ParserUtils.getValue(value, 'current_value');
150
+ else
151
+ this.current = +parser_utils_1.ParserUtils.getValue(value, 'current');
152
+ if (parser_utils_1.ParserUtils.isBlankNode(value['p']))
153
+ this.p = +parser_utils_1.ParserUtils.getValue(value, 'p_value');
154
+ else
155
+ this.p = +parser_utils_1.ParserUtils.getValue(value, 'p');
156
+ if (parser_utils_1.ParserUtils.isBlankNode(value['q']))
157
+ this.q = +parser_utils_1.ParserUtils.getValue(value, 'q_value');
158
+ else
159
+ this.q = +parser_utils_1.ParserUtils.getValue(value, 'q');
160
+ }
161
+ /** Initialisiert Assoziationen aus geparsten Daten
162
+ * Fuseki und XML Daten */
163
+ resolveParsedAssociations(cimModel) {
164
+ super.resolveParsedAssociations(cimModel);
165
+ }
166
+ static getQuerySPARQL(graphURI) {
167
+ if (graphURI.length > 0) {
168
+ return WNFeeder.sparqlQuery.replace('<http://default/>', graphURI);
169
+ }
170
+ return WNFeeder.sparqlQuery;
171
+ }
172
+ createNewStatementSPARQL() {
173
+ return `
174
+ <${this.baseIRI}${this.mrid}>
175
+ a westnetzneplan:WNFeeder ;
176
+ cim:IdentifiedObject.name '${this.name}' .
177
+ `;
178
+ }
179
+ getHeadConductingEquipment() {
180
+ for (const headTerminal of this.normalHeadTerminal.values()) {
181
+ return headTerminal.conductingEquipment;
182
+ }
183
+ }
184
+ getHeadNode() {
185
+ for (const headTerminal of this.normalHeadTerminal.values()) {
186
+ return headTerminal.connectivityNode;
187
+ }
188
+ }
189
+ }
190
+ exports.WNFeeder = WNFeeder;
191
+ WNFeeder.sparqlQuery = `
192
+ PREFIX cim: <http://iec.ch/TC57/2013/CIM-schema-cim16#>
193
+ PREFIX enervance: <http://enervance.com/CIM/Extensions#>
194
+ PREFIX westnetzneplan: <http://westnetzneplan.de/CIM/Extensions#>
195
+ PREFIX entsoe: <http://entsoe.eu/CIM/SchemaExtension/3/1#>
196
+ PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
197
+ PREFIX apf: <http://jena.hpl.hp.com/ARQ/property#>
198
+ PREFIX afn: <http://jena.apache.org/ARQ/function#>
199
+
200
+ SELECT (strafter(strafter(str(?fUUID), "#"), "_") AS ?uuid)
201
+ (CONCAT(STRBEFORE(str(?fUUID), '#_'), '#_') AS ?baseIRI)
202
+ ?name
203
+ ?shortName
204
+ ?description
205
+ ?number
206
+ ?current
207
+ ?current_value
208
+ ?p
209
+ ?p_value
210
+ ?q
211
+ ?q_value
212
+ (STRAFTER(str(?negsUUID), '#_') AS ?normalEnergizingSubstationUUID)
213
+ (group_concat(STRAFTER(str(?nedsUUIDs), '#_');separator=',') as ?energizedSubstationUUIDs)
214
+ WHERE {
215
+ GRAPH <http://default/>{
216
+
217
+ ?fUUID rdf:type westnetzneplan:WNFeeder .
218
+ OPTIONAL{?fUUID cim:IdentifiedObject.name ?name .}
219
+ OPTIONAL{?fUUID entsoe:IdentifiedObject.shortName ?shortName .}
220
+ OPTIONAL{?fUUID cim:IdentifiedObject.description ?description .}
221
+ OPTIONAL{?fUUID westnetzneplan:WNFeeder.number ?number .}
222
+ OPTIONAL{?fUUID westnetzneplan:WNFeeder.current ?current .}
223
+ OPTIONAL{?fUUID westnetzneplan:WNFeeder.current [ cim:CurrentFlow.value ?current_value ] } .
224
+ OPTIONAL{?fUUID westnetzneplan:WNFeeder.p ?p .}
225
+ OPTIONAL{?fUUID westnetzneplan:WNFeeder.p [ cim:ActivePower.value ?p_value ] } .
226
+ OPTIONAL{?fUUID westnetzneplan:WNFeeder.q ?q .}
227
+ OPTIONAL{?fUUID westnetzneplan:WNFeeder.q [ cim:ReactivePower.value ?q_value ] } .
228
+ OPTIONAL{?fUUID cim:Feeder.NormalEnergizingSubstation ?negsUUID .}
229
+ OPTIONAL{?fUUID cim:Feeder.NormalEnergizedSubstation ?nedsUUIDs . }
230
+ }
231
+ }
232
+ GROUP BY ?fUUID ?baseIRI ?name ?shortName ?description ?number ?current ?current_multiplier ?current_unit ?current_value ?p ?p_value ?q ?q_value ?negsUUID
233
+ `;
234
+ //# sourceMappingURL=WNFeeder.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"WNFeeder.js","sourceRoot":"","sources":["../../../../../src/model/extensions/neplan-westnetz/core/WNFeeder.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,5 @@
1
+ export declare enum WNSwitchTypeKind {
2
+ S,
3
+ N,
4
+ E
5
+ }
@@ -0,0 +1,10 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.WNSwitchTypeKind = void 0;
4
+ var WNSwitchTypeKind;
5
+ (function (WNSwitchTypeKind) {
6
+ WNSwitchTypeKind[WNSwitchTypeKind["S"] = 'schaltbar'] = "S";
7
+ WNSwitchTypeKind[WNSwitchTypeKind["N"] = 'nicht schaltbar'] = "N";
8
+ WNSwitchTypeKind[WNSwitchTypeKind["E"] = 'eingeschränkt schaltbar'] = "E"; // eingeschränkt schaltbar
9
+ })(WNSwitchTypeKind = exports.WNSwitchTypeKind || (exports.WNSwitchTypeKind = {}));
10
+ //# sourceMappingURL=WNSwitchTypeKind.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"WNSwitchTypeKind.js","sourceRoot":"","sources":["../../../../../src/model/extensions/neplan-westnetz/core/WNSwitchTypeKind.ts"],"names":[],"mappings":";;;AAAA,IAAY,gBAIX;AAJD,WAAY,gBAAgB;IAC1B,yCAAI,WAAkB,OAAA,CAAA;IACtB,yCAAI,iBAAwB,OAAA,CAAA;IAC5B,yCAAI,yBAAiC,OAAA,CAAA,CAAC,0BAA0B;AAClE,CAAC,EAJW,gBAAgB,GAAhB,wBAAgB,KAAhB,wBAAgB,QAI3B"}
@@ -0,0 +1,22 @@
1
+ import { Fault } from '../../../faults/Fault.js';
2
+ import { WNConnectivityNode } from '../core/WNConnectivityNode.js';
3
+ import { IIdentifiedObject } from '../../../../interfaces/model/core/IIdentifiedObject.js';
4
+ import { ModelContainer } from '../../../../model-container/model/ModelContainer.js';
5
+ export declare class WNFaultConnectivityNode extends Fault {
6
+ connectivityNode: WNConnectivityNode;
7
+ connectivityNodeUUID: string;
8
+ constructor(mrid?: string, name?: string, shortName?: string, description?: string, baseIRI?: string);
9
+ getFaultEquipment(): IIdentifiedObject;
10
+ /** ------------------ JSON------------------------*/
11
+ toJSON(): any;
12
+ toJSONAttributes(): void;
13
+ toJSONAssociations(): void;
14
+ /** ------------------ Fuseki Parser ------------------------*/
15
+ static resolveClassFusekiJSON(data: any, cimModel: ModelContainer): void;
16
+ resolveAttributesFusekiJSON(value: any): void;
17
+ resolveParsedAssociations(cimModel: ModelContainer): void;
18
+ static getQuerySPARQL(graphURI: string): string;
19
+ static sparqlQuery: string;
20
+ setConnectivityNode(cn: WNConnectivityNode): string;
21
+ createNewStatementSPARQL(): string;
22
+ }
@@ -0,0 +1,98 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.WNFaultConnectivityNode = void 0;
4
+ const Fault_1 = require("../../../faults/Fault.js");
5
+ const parser_utils_1 = require("../../../../utils2/parser.utils.js");
6
+ class WNFaultConnectivityNode extends Fault_1.Fault {
7
+ constructor(mrid, name, shortName, description, baseIRI) {
8
+ super(mrid, name, shortName, description);
9
+ this.baseIRI = baseIRI;
10
+ }
11
+ getFaultEquipment() {
12
+ return this.connectivityNode;
13
+ }
14
+ /** ------------------ JSON------------------------*/
15
+ toJSON() {
16
+ super.toJSON();
17
+ this.toJSONAttributes();
18
+ this.toJSONAssociations();
19
+ return this.json;
20
+ }
21
+ toJSONAttributes() {
22
+ super.toJSONAttributes();
23
+ }
24
+ toJSONAssociations() {
25
+ super.toJSONAssociations();
26
+ this.json['connectivityNodeUUID'] = this.connectivityNodeUUID;
27
+ }
28
+ /** ------------------ Fuseki Parser ------------------------*/
29
+ static resolveClassFusekiJSON(data, cimModel) {
30
+ var _a, _b;
31
+ (_b = (_a = data === null || data === void 0 ? void 0 : data.results) === null || _a === void 0 ? void 0 : _a.bindings) === null || _b === void 0 ? void 0 : _b.forEach((value) => {
32
+ const newClass = new WNFaultConnectivityNode();
33
+ newClass.resolveAttributesFusekiJSON(value);
34
+ cimModel.addCustomFault(newClass);
35
+ });
36
+ }
37
+ resolveAttributesFusekiJSON(value) {
38
+ super.resolveAttributesFusekiJSON(value);
39
+ this.connectivityNodeUUID = parser_utils_1.ParserUtils.getValue(value, 'connectivityNodeUUID');
40
+ this.outageUUID = parser_utils_1.ParserUtils.getValue(value, 'outageUUID');
41
+ }
42
+ resolveParsedAssociations(cimModel) {
43
+ super.resolveParsedAssociations(cimModel);
44
+ if (cimModel.connectivityNodes.has(this.connectivityNodeUUID)) {
45
+ this.connectivityNode = cimModel.getConnectivityNode(this.connectivityNodeUUID);
46
+ this.connectivityNode.fault = this;
47
+ }
48
+ else {
49
+ //console.log(this.constructor.name + ' ' + this.mrid + ' hat keinen Feeder ' + this.additionalConnectivityNodeContainerUUID);
50
+ }
51
+ }
52
+ static getQuerySPARQL(graphURI) {
53
+ if (graphURI.length > 0) {
54
+ return WNFaultConnectivityNode.sparqlQuery.replace('<http://default/>', graphURI);
55
+ }
56
+ return WNFaultConnectivityNode.sparqlQuery;
57
+ }
58
+ setConnectivityNode(cn) {
59
+ this.connectivityNode = cn;
60
+ cn.fault = this;
61
+ return this.getAssociationSparqlTriple(this.baseIRI, this.mrid, 'westnetzneplan', 'WNFaultConnectivityNode', 'ConnectivityNode', cn.mrid);
62
+ }
63
+ createNewStatementSPARQL() {
64
+ return `
65
+ <${this.baseIRI}${this.mrid}>
66
+ a cim:Fault ;
67
+ cim:IdentifiedObject.name "CNFault" .
68
+ `;
69
+ }
70
+ }
71
+ exports.WNFaultConnectivityNode = WNFaultConnectivityNode;
72
+ WNFaultConnectivityNode.sparqlQuery = `
73
+ PREFIX cim: <http://iec.ch/TC57/2013/CIM-schema-cim16#>
74
+ PREFIX enervance: <http://enervance.com/CIM/Extensions#>
75
+ PREFIX westnetzneplan: <http://westnetzneplan.de/CIM/Extensions#>
76
+ PREFIX entsoe: <http://entsoe.eu/CIM/SchemaExtension/3/1#>
77
+ PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
78
+ PREFIX apf: <http://jena.hpl.hp.com/ARQ/property#>
79
+ PREFIX afn: <http://jena.apache.org/ARQ/function#>
80
+
81
+ SELECT (STRAFTER(str(?MRID), '#_') AS ?uuid)
82
+ (CONCAT(STRBEFORE(str(?MRID), '#_'), '#_') AS ?baseIRI)
83
+ ?name ?shortName ?description ?switchable
84
+ (STRAFTER(str(?cnUUID), '#_') AS ?connectivityNodeUUID)
85
+ (STRAFTER(str(?oUUID), '#_') AS ?outageUUID)
86
+
87
+ WHERE {
88
+ GRAPH <http://default/>{
89
+ ?MRID rdf:type cim:Fault .
90
+ OPTIONAL {?MRID cim:IdentifiedObject.name ?name .}
91
+ OPTIONAL {?MRID entsoe:IdentifiedObject.shortName ?shortName .}
92
+ OPTIONAL {?MRID cim:IdentifiedObject.description ?description .}
93
+ OPTIONAL {?MRID westnetzneplan:WNFaultConnectivityNode.ConnectivityNode ?cnUUID .}
94
+ OPTIONAL {?MRID cim:Fault.Outage ?oUUID .}
95
+ }
96
+ }
97
+ `;
98
+ //# sourceMappingURL=WNFaultConnectivityNode.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"WNFaultConnectivityNode.js","sourceRoot":"","sources":["../../../../../src/model/extensions/neplan-westnetz/faults/WNFaultConnectivityNode.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,21 @@
1
+ import { Outage } from '../../../operations/Outage.js';
2
+ import { WNConnectivityNode } from '../core/WNConnectivityNode.js';
3
+ import { ModelContainer } from '../../../../model-container/model/ModelContainer.js';
4
+ export declare class WNOutage extends Outage {
5
+ /** Von einem N-1 Fall betroffene ConnectivityNodes */
6
+ outageIsolationConnectivityNodes: Map<string, WNConnectivityNode>;
7
+ outageIsolationConnectivityNodesUUIDs: string[];
8
+ constructor(mrid?: string, name?: string, shortName?: string, description?: string, baseIRI?: string);
9
+ addOutageIsolationConnectivityNodes(cn: WNConnectivityNode): string;
10
+ /** ------------------ JSON------------------------*/
11
+ toJSON(): any;
12
+ toJSONAttributes(): void;
13
+ toJSONAssociations(): void;
14
+ /** ------------------ Fuseki Parser ------------------------*/
15
+ static resolveClassFusekiJSON(data: any, cimModel: ModelContainer): void;
16
+ resolveAttributesFusekiJSON(value: any): void;
17
+ resolveParsedAssociations(cimModel: ModelContainer): void;
18
+ static getQuerySPARQL(graphURI: string): string;
19
+ static sparqlQuery: string;
20
+ createNewStatementSPARQL(): string;
21
+ }
@@ -0,0 +1,100 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.WNOutage = void 0;
4
+ const Outage_1 = require("../../../operations/Outage.js");
5
+ const WNConnectivityNode_1 = require("../core/WNConnectivityNode.js");
6
+ const parser_utils_1 = require("../../../../utils2/parser.utils.js");
7
+ class WNOutage extends Outage_1.Outage {
8
+ constructor(mrid, name, shortName, description, baseIRI) {
9
+ super(mrid, name, shortName, description);
10
+ this.outageIsolationConnectivityNodes = new Map();
11
+ this.baseIRI = baseIRI;
12
+ }
13
+ addOutageIsolationConnectivityNodes(cn) {
14
+ if (!this.outageIsolationConnectivityNodes.has(cn.mrid)) {
15
+ this.outageIsolationConnectivityNodes.set(cn.mrid, cn);
16
+ cn.addOutage(this);
17
+ return this.getAssociationSparqlTriple(this.baseIRI, this.mrid, 'westnetzneplan', 'WNOutage', 'OutageIsolationConnectivityNodes', cn.mrid);
18
+ }
19
+ else {
20
+ console.log(`Outage ${this.mrid} add: OutageIsolationEquipment ${cn.mrid} already exists.`);
21
+ }
22
+ return '';
23
+ }
24
+ /** ------------------ JSON------------------------*/
25
+ toJSON() {
26
+ super.toJSON();
27
+ this.toJSONAttributes();
28
+ this.toJSONAssociations();
29
+ return this.json;
30
+ }
31
+ toJSONAttributes() {
32
+ super.toJSONAttributes();
33
+ }
34
+ toJSONAssociations() {
35
+ super.toJSONAssociations();
36
+ }
37
+ /** ------------------ Fuseki Parser ------------------------*/
38
+ static resolveClassFusekiJSON(data, cimModel) {
39
+ var _a, _b;
40
+ (_b = (_a = data === null || data === void 0 ? void 0 : data.results) === null || _a === void 0 ? void 0 : _a.bindings) === null || _b === void 0 ? void 0 : _b.forEach((value) => {
41
+ const newClass = new WNOutage();
42
+ newClass.resolveAttributesFusekiJSON(value);
43
+ cimModel.addOutage(newClass);
44
+ });
45
+ }
46
+ resolveAttributesFusekiJSON(value) {
47
+ super.resolveAttributesFusekiJSON(value);
48
+ this.outageIsolationConnectivityNodesUUIDs = parser_utils_1.ParserUtils.parseCsvLineIntoArray(parser_utils_1.ParserUtils.getValue(value, 'outageIsolationConnectivityNodes'), ',');
49
+ }
50
+ resolveParsedAssociations(cimModel) {
51
+ super.resolveParsedAssociations(cimModel);
52
+ /** connectivityModes parsen */
53
+ for (const cnUUID of this.outageIsolationConnectivityNodesUUIDs) {
54
+ const cn = cimModel.getObject(cnUUID);
55
+ if (cn && cn instanceof WNConnectivityNode_1.WNConnectivityNode) {
56
+ this.outageIsolationConnectivityNodes.set(cn.mrid, cn);
57
+ cn.outages.set(this.mrid, this);
58
+ }
59
+ }
60
+ this.outageIsolationConnectivityNodesUUIDs.length = 0;
61
+ }
62
+ static getQuerySPARQL(graphURI) {
63
+ if (graphURI.length > 0) {
64
+ return WNOutage.sparqlQuery.replace('<http://default/>', graphURI);
65
+ }
66
+ return WNOutage.sparqlQuery;
67
+ }
68
+ createNewStatementSPARQL() {
69
+ return `
70
+ <${this.baseIRI}${this.mrid}>
71
+ a cim:Outage ;
72
+ cim:IdentifiedObject.name "WNOutage" .
73
+ `;
74
+ }
75
+ }
76
+ exports.WNOutage = WNOutage;
77
+ WNOutage.sparqlQuery = `
78
+ PREFIX cim: <http://iec.ch/TC57/2013/CIM-schema-cim16#>
79
+ PREFIX westnetzneplan: <http://westnetzneplan.de/CIM/Extensions#>
80
+ PREFIX entsoe: <http://entsoe.eu/CIM/SchemaExtension/3/1#>
81
+ PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
82
+ PREFIX apf: <http://jena.hpl.hp.com/ARQ/property#>
83
+ PREFIX afn: <http://jena.apache.org/ARQ/function#>
84
+
85
+ SELECT (STRAFTER(str(?MRID), '#_') AS ?uuid)
86
+ (CONCAT(STRBEFORE(str(?MRID), '#_'), '#_') AS ?baseIRI)
87
+ ?name
88
+ (group_concat(STRAFTER(str(?oieUUIDs), '#_');separator=',') as ?outageIsolationEquipments)
89
+ (group_concat(STRAFTER(str(?oicnUUIDs), '#_');separator=',') as ?outageIsolationConnectivityNodes)
90
+
91
+ WHERE {
92
+ GRAPH <http://default/>{
93
+ ?MRID rdf:type cim:Outage .
94
+ OPTIONAL {?MRID cim:IdentifiedObject.name ?name .}
95
+ OPTIONAL {?MRID cim:Outage.OutageIsolationEquipment ?oieUUIDs .}
96
+ OPTIONAL {?MRID westnetzneplan:WNOutage.OutageIsolationConnectivityNodes ?oicnUUIDs .}
97
+ }
98
+ }
99
+ GROUP BY ?MRID ?baseIRI ?name `;
100
+ //# sourceMappingURL=WNOutage.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"WNOutage.js","sourceRoot":"","sources":["../../../../../src/model/extensions/neplan-westnetz/operations/WNOutage.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,20 @@
1
+ import { EVACLineSegment } from '../../enervance/wires/EVACLineSegment.js';
2
+ import { EVACLineSubSegment } from '../../enervance/wires/EVACLineSubSegment.js';
3
+ import { WNBay } from '../core/WNBay.js';
4
+ import { ModelContainer } from '../../../../model-container/model/ModelContainer.js';
5
+ export declare class WNACLineSegment extends EVACLineSegment {
6
+ fromBay: WNBay;
7
+ fromBayUUID: string;
8
+ toBay: WNBay;
9
+ toBayUUID: string;
10
+ constructor(uuid?: string, name?: string, shortName?: string, description?: string, baseIRI?: string, length?: number);
11
+ static sparqlQuery: string;
12
+ static getQuerySPARQL(graphURI: string): string;
13
+ static resolveClassFusekiJSON(data: any, cimModel: ModelContainer): void;
14
+ resolveAttributesFusekiJSON(value: any): void;
15
+ resolveParsedAssociations(cimModel: ModelContainer): void;
16
+ addLineSubSegment(lineSubSegment: EVACLineSubSegment): void;
17
+ toJSON(): any;
18
+ toJSONAttributes(): void;
19
+ toJSONAssociations(): void;
20
+ }
@@ -0,0 +1,105 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.WNACLineSegment = void 0;
4
+ const EVACLineSegment_1 = require("../../enervance/wires/EVACLineSegment.js");
5
+ const rdf_xml_1 = require("../../../../constants/rdf-xml.js");
6
+ const parser_utils_1 = require("../../../../utils2/parser.utils.js");
7
+ class WNACLineSegment extends EVACLineSegment_1.EVACLineSegment {
8
+ constructor(uuid, name, shortName, description, baseIRI, length) {
9
+ super(uuid, name, shortName, description, baseIRI, length);
10
+ }
11
+ static getQuerySPARQL(graphURI) {
12
+ if (graphURI.length > 0) {
13
+ return WNACLineSegment.sparqlQuery.replace('<http://default/>', graphURI);
14
+ }
15
+ return WNACLineSegment.sparqlQuery;
16
+ }
17
+ static resolveClassFusekiJSON(data, cimModel) {
18
+ var _a, _b;
19
+ (_b = (_a = data === null || data === void 0 ? void 0 : data.results) === null || _a === void 0 ? void 0 : _a.bindings) === null || _b === void 0 ? void 0 : _b.forEach((value) => {
20
+ const acLineSegment = new WNACLineSegment();
21
+ acLineSegment.resolveAttributesFusekiJSON(value);
22
+ cimModel.addACLineSegment(acLineSegment);
23
+ });
24
+ }
25
+ resolveAttributesFusekiJSON(value) {
26
+ super.resolveAttributesFusekiJSON(value);
27
+ this.fromBayUUID = parser_utils_1.ParserUtils.getValue(value, 'fromBayUUID');
28
+ this.toBayUUID = parser_utils_1.ParserUtils.getValue(value, 'toBayUUID');
29
+ }
30
+ resolveParsedAssociations(cimModel) {
31
+ super.resolveParsedAssociations(cimModel);
32
+ this.fromBay = cimModel.getBay(this.fromBayUUID);
33
+ if (this.fromBay)
34
+ this.fromBay.addFromACLineSegment(this);
35
+ else
36
+ console.log(this.constructor.name + ' ' + this.mrid + ' besitzt keine FromBay Instanz' + this.fromBayUUID);
37
+ this.toBay = cimModel.getBay(this.toBayUUID);
38
+ if (this.toBay)
39
+ this.toBay.addToACLineSegment(this);
40
+ else
41
+ console.log(this.constructor.name + ' ' + this.mrid + ' besitzt keine ToBay Instanz' + this.toBayUUID);
42
+ }
43
+ addLineSubSegment(lineSubSegment) {
44
+ this.lineSubSegments.set(lineSubSegment.getUUID(), lineSubSegment);
45
+ }
46
+ toJSON() {
47
+ super.toJSON();
48
+ this.toJSONAttributes();
49
+ this.toJSONAssociations();
50
+ return this.json;
51
+ }
52
+ toJSONAttributes() {
53
+ super.toJSONAttributes();
54
+ }
55
+ toJSONAssociations() {
56
+ super.toJSONAssociations();
57
+ }
58
+ }
59
+ exports.WNACLineSegment = WNACLineSegment;
60
+ WNACLineSegment.sparqlQuery = `
61
+ PREFIX cim: <http://iec.ch/TC57/2013/CIM-schema-cim16#>
62
+ PREFIX enervance: <http://enervance.com/CIM/Extensions#>
63
+ PREFIX entsoe: <http://entsoe.eu/CIM/SchemaExtension/3/1#>
64
+ PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
65
+ PREFIX amp: <http://amprion.net/CIM/Extensions#>
66
+ PREFIX apf: <http://jena.hpl.hp.com/ARQ/property#>
67
+ PREFIX afn: <http://jena.apache.org/ARQ/function#>
68
+ PREFIX westnetzneplan: <${rdf_xml_1.RDF_XML.WESTNETZNEPLAN_NS}>
69
+
70
+ SELECT (strafter(strafter(str(?MRID), '#'), '_') AS ?uuid)
71
+ (CONCAT(STRBEFORE(STR(?MRID), '#_'), '#_') AS ?baseIRI)
72
+ ?name ?shortName ?description ?length ?r ?x ?bch ?gch ?installation
73
+ (strafter(strafter(str(?bvUUID), '#'), '_') AS ?baseVoltageUUID)
74
+ (strafter(strafter(str(?ptUUID), '#'), '_') AS ?psrTypeUUID)
75
+ (strafter(strafter(str(?ecUUID), '#'), '_') AS ?equipmentContainerUUID)
76
+ (strafter(strafter(str(?fBayUUID), '#'), '_') AS ?fromBayUUID)
77
+ (strafter(strafter(str(?tBayUUID), '#'), '_') AS ?toBayUUID)
78
+ (group_concat(STRAFTER(str(?aecUUIDs), '#_');separator=',') as ?additionalEquipmentContainerUUIDs)
79
+
80
+ WHERE {
81
+ GRAPH <http://default/>{
82
+ ?acLineSegmentUUID rdf:type cim:ACLineSegment .
83
+ OPTIONAL {?MRID cim:IdentifiedObject.name ?name .}
84
+ OPTIONAL {?MRID entsoe:IdentifiedObject.shortName ?shortName .}
85
+ OPTIONAL {?MRID cim:IdentifiedObject.description ?description .}
86
+ OPTIONAL {?MRID enervance:IdentifiedObject.installation ?installation .}
87
+ OPTIONAL {?MRID cim:Conductor.length ?length .}
88
+ OPTIONAL {?MRID cim:ACLineSegment.r ?r .}
89
+ OPTIONAL {?MRID cim:ACLineSegment.x ?x .}
90
+ OPTIONAL {?MRID cim:ACLineSegment.bch ?bch .}
91
+ OPTIONAL {?MRID cim:ACLineSegment.gch ?gch .}
92
+ OPTIONAL {?MRID cim:ConductingEquipment.BaseVoltage ?bvUUID .}
93
+ OPTIONAL {?MRID cim:PowerSystemResource.PSRType ?ptUUID .}
94
+ OPTIONAL {?MRID cim:Equipment.EquipmentContainer ?ecUUID .}
95
+ OPTIONAL {?MRID westnetzneplan:WNACLineSegment.FromBay ?fBayUUID .}
96
+ OPTIONAL {?MRID westnetzneplan:WNACLineSegment.ToBay ?tBayUUID .}
97
+ OPTIONAL {?MRID cim:Equipment.AdditionalEquipmentContainer ?aecUUIDs .}
98
+
99
+ }
100
+ }
101
+ GROUP BY ?MRID ?baseIRI ?name ?shortName ?description
102
+ ?installation ?length ?r ?x ?bch ?gch ?length ?bvUUID ?ptUUID ?ecUUID
103
+ ?fBayUUID ?tBayUUID
104
+ `;
105
+ //# sourceMappingURL=WNACLineSegment.js.map