@enervance/insight-cim-model 0.0.25 → 0.0.27

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 (480) hide show
  1. package/dist/analysis/analysis-neplan/digi-ons.d.ts +58 -0
  2. package/dist/analysis/analysis-neplan/digi-ons.js +361 -0
  3. package/dist/analysis/analysis-neplan/digi-ons.js.map +1 -0
  4. package/dist/config/config.utils.d.ts +1 -0
  5. package/dist/config/config.utils.js +37 -0
  6. package/dist/config/config.utils.js.map +1 -0
  7. package/dist/config/westnetz-neplan/callbacks/cb-connectivitynode.js +1 -1
  8. package/dist/config/westnetz-neplan/callbacks/cb-connectivitynode.js.map +1 -1
  9. package/dist/config/westnetz-neplan/neplan-load.config.d.ts +1 -0
  10. package/dist/config/westnetz-neplan/neplan-load.config.js +37 -1
  11. package/dist/config/westnetz-neplan/neplan-load.config.js.map +1 -1
  12. package/dist/constants/cim-class-definition.js +12 -0
  13. package/dist/constants/cim-class-definition.js.map +1 -1
  14. package/dist/constants/cim-class-names.d.ts +8 -0
  15. package/dist/constants/cim-class-names.js +8 -0
  16. package/dist/constants/cim-class-names.js.map +1 -1
  17. package/dist/constants/init-data/JENA_SPARQL.js +1 -1
  18. package/dist/constants/init-data/xml/settings.d.ts +1 -0
  19. package/dist/constants/init-data/xml/settings.js +70 -0
  20. package/dist/constants/init-data/xml/settings.js.map +1 -0
  21. package/dist/constants/rdf-xml.d.ts +7 -2
  22. package/dist/constants/rdf-xml.js +7 -2
  23. package/dist/constants/rdf-xml.js.map +1 -1
  24. package/dist/converter/cgmes-validator.js +2 -0
  25. package/dist/converter/cgmes-validator.js.map +1 -1
  26. package/dist/converter/integral7/ConverterIntegral7.d.ts +51 -21
  27. package/dist/converter/integral7/ConverterIntegral7.js +1097 -1385
  28. package/dist/converter/integral7/ConverterIntegral7.js.map +1 -1
  29. package/dist/converter/integral7/converter-i7.d.ts +175 -0
  30. package/dist/converter/integral7/converter-i7.js +3175 -0
  31. package/dist/converter/integral7/converter-i7.js.map +1 -0
  32. package/dist/converter/integral7/interface-i7/IDefaultValuesConfig.d.ts +207 -157
  33. package/dist/converter/integral7/interface-i7/IObjectMappingConfig.d.ts +8 -0
  34. package/dist/converter/integral7/interface-i7/IObjectMappingConfig.js +3 -0
  35. package/dist/converter/integral7/interface-i7/IObjectMappingConfig.js.map +1 -0
  36. package/dist/converter/integral7/interface-i7/IUkzExportConfig.d.ts +5 -0
  37. package/dist/converter/integral7/interface-i7/{db-config.js → IUkzExportConfig.js} +1 -1
  38. package/dist/converter/integral7/interface-i7/IUkzExportConfig.js.map +1 -0
  39. package/dist/converter/integral7/interface-i7/data-structures-i7.d.ts +34 -0
  40. package/dist/converter/integral7/interface-i7/data-structures-i7.js +3 -0
  41. package/dist/converter/integral7/interface-i7/data-structures-i7.js.map +1 -0
  42. package/dist/converter/integral7/interface-i7/export-frame-i7.d.ts +20 -0
  43. package/dist/converter/integral7/interface-i7/export-frame-i7.js +185 -0
  44. package/dist/converter/integral7/interface-i7/export-frame-i7.js.map +1 -0
  45. package/dist/converter/integral7/model/interfaces.d.ts +30 -7
  46. package/dist/converter/integral7/sql/integral.sql.d.ts +3 -1
  47. package/dist/converter/integral7/sql/integral.sql.js +236 -2
  48. package/dist/converter/integral7/sql/integral.sql.js.map +1 -1
  49. package/dist/converter/integral7/utils-cgmes-export.d.ts +15 -0
  50. package/dist/converter/integral7/utils-cgmes-export.js +119 -0
  51. package/dist/converter/integral7/utils-cgmes-export.js.map +1 -0
  52. package/dist/converter/integral7/utils.d.ts +33 -6
  53. package/dist/converter/integral7/utils.js +352 -66
  54. package/dist/converter/integral7/utils.js.map +1 -1
  55. package/dist/data-structures/Settings.d.ts +16 -0
  56. package/dist/data-structures/Settings.js +74 -0
  57. package/dist/data-structures/Settings.js.map +1 -0
  58. package/dist/data-structures/graph/GraphObject.d.ts +4 -2
  59. package/dist/data-structures/graph/GraphObject.js +3 -1
  60. package/dist/data-structures/graph/GraphObject.js.map +1 -1
  61. package/dist/data-structures/graph/Types.d.ts +2 -1
  62. package/dist/data-structures/graph/Types.js +1 -0
  63. package/dist/data-structures/graph/Types.js.map +1 -1
  64. package/dist/data-structures/graph/edges/GraphEdge.d.ts +2 -1
  65. package/dist/data-structures/graph/edges/GraphEdge.js +2 -2
  66. package/dist/data-structures/graph/edges/GraphEdge.js.map +1 -1
  67. package/dist/data-structures/graph/graph.js +3 -3
  68. package/dist/data-structures/graph/graph.js.map +1 -1
  69. package/dist/data-structures/graph/nodes/GraphNode.d.ts +2 -1
  70. package/dist/data-structures/graph/nodes/GraphNode.js +2 -2
  71. package/dist/data-structures/graph/nodes/GraphNode.js.map +1 -1
  72. package/dist/data-structures/tree/GraphTree.js +3 -3
  73. package/dist/data-structures/tree/GraphTree.js.map +1 -1
  74. package/dist/data-structures/tree/GraphTreeEdge.d.ts +1 -1
  75. package/dist/data-structures/tree/GraphTreeEdge.js +2 -2
  76. package/dist/data-structures/tree/GraphTreeEdge.js.map +1 -1
  77. package/dist/data-structures/tree/GraphTreeNode.d.ts +1 -1
  78. package/dist/data-structures/tree/GraphTreeNode.js +2 -2
  79. package/dist/data-structures/tree/GraphTreeNode.js.map +1 -1
  80. package/dist/data-structures/tree/GraphTreeObject.d.ts +2 -1
  81. package/dist/data-structures/tree/GraphTreeObject.js +2 -1
  82. package/dist/data-structures/tree/GraphTreeObject.js.map +1 -1
  83. package/dist/etl/etl-neplan/etl-neplan-csv.js +70 -63
  84. package/dist/etl/etl-neplan/etl-neplan-csv.js.map +1 -1
  85. package/dist/etl/etl-neplan/etl-neplan-feederline.d.ts +20 -0
  86. package/dist/etl/etl-neplan/etl-neplan-feederline.js +83 -2
  87. package/dist/etl/etl-neplan/etl-neplan-feederline.js.map +1 -1
  88. package/dist/etl/etl-neplan/etl-neplan-geo.d.ts +5 -0
  89. package/dist/etl/etl-neplan/etl-neplan-geo.js +221 -1
  90. package/dist/etl/etl-neplan/etl-neplan-geo.js.map +1 -1
  91. package/dist/etl/etl-neplan/etl-neplan.js +4 -1
  92. package/dist/etl/etl-neplan/etl-neplan.js.map +1 -1
  93. package/dist/etl/etl-neplan/neplan-contingency-analysis.js +4 -4
  94. package/dist/etl/etl-neplan/neplan-contingency-analysis.js.map +1 -1
  95. package/dist/index.d.ts +6 -4
  96. package/dist/index.js +22 -0
  97. package/dist/index.js.map +1 -1
  98. package/dist/interfaces/ILogger.d.ts +2 -0
  99. package/dist/interfaces/model/core/IIdentifiedObject.d.ts +3 -1
  100. package/dist/model/assetinfo/PowerTransformerInfo.js +2 -2
  101. package/dist/model/assetinfo/PowerTransformerInfo.js.map +1 -1
  102. package/dist/model/assetinfo/TapChangerInfo.js +17 -15
  103. package/dist/model/assetinfo/TapChangerInfo.js.map +1 -1
  104. package/dist/model/assetinfo/TransformerEndInfo.js +7 -5
  105. package/dist/model/assetinfo/TransformerEndInfo.js.map +1 -1
  106. package/dist/model/assetinfo/WireInfo.js +4 -3
  107. package/dist/model/assetinfo/WireInfo.js.map +1 -1
  108. package/dist/model/assets/Structure.d.ts +6 -0
  109. package/dist/model/assets/Structure.js +11 -0
  110. package/dist/model/assets/Structure.js.map +1 -0
  111. package/dist/model/assets/TowerConstructionKind.d.ts +4 -0
  112. package/dist/model/assets/TowerConstructionKind.js +9 -0
  113. package/dist/model/assets/TowerConstructionKind.js.map +1 -0
  114. package/dist/model/common/CoordinateSystem.js +4 -2
  115. package/dist/model/common/CoordinateSystem.js.map +1 -1
  116. package/dist/model/common/Location.js +4 -3
  117. package/dist/model/common/Location.js.map +1 -1
  118. package/dist/model/common/PositionPoint.js +6 -5
  119. package/dist/model/common/PositionPoint.js.map +1 -1
  120. package/dist/model/core/ACDCTerminal.d.ts +3 -1
  121. package/dist/model/core/ACDCTerminal.js +9 -4
  122. package/dist/model/core/ACDCTerminal.js.map +1 -1
  123. package/dist/model/core/BaseVoltage.js +5 -4
  124. package/dist/model/core/BaseVoltage.js.map +1 -1
  125. package/dist/model/core/Bay.d.ts +1 -0
  126. package/dist/model/core/Bay.js +13 -8
  127. package/dist/model/core/Bay.js.map +1 -1
  128. package/dist/model/core/ConductingEquipment.js +2 -1
  129. package/dist/model/core/ConductingEquipment.js.map +1 -1
  130. package/dist/model/core/ConnectivityNode.d.ts +8 -1
  131. package/dist/model/core/ConnectivityNode.js +22 -6
  132. package/dist/model/core/ConnectivityNode.js.map +1 -1
  133. package/dist/model/core/Curve.js +5 -5
  134. package/dist/model/core/Curve.js.map +1 -1
  135. package/dist/model/core/CurveData.js +8 -7
  136. package/dist/model/core/CurveData.js.map +1 -1
  137. package/dist/model/core/Equipment.js +7 -9
  138. package/dist/model/core/Equipment.js.map +1 -1
  139. package/dist/model/core/Feeder.js +4 -3
  140. package/dist/model/core/Feeder.js.map +1 -1
  141. package/dist/model/core/GeographicalRegion.js +3 -3
  142. package/dist/model/core/GeographicalRegion.js.map +1 -1
  143. package/dist/model/core/IdentifiedObject.d.ts +5 -3
  144. package/dist/model/core/IdentifiedObject.js +18 -9
  145. package/dist/model/core/IdentifiedObject.js.map +1 -1
  146. package/dist/model/core/PSRType.js +2 -2
  147. package/dist/model/core/PSRType.js.map +1 -1
  148. package/dist/model/core/PowerSystemResource.js +2 -1
  149. package/dist/model/core/PowerSystemResource.js.map +1 -1
  150. package/dist/model/core/SubGeographicalRegion.js +5 -5
  151. package/dist/model/core/SubGeographicalRegion.js.map +1 -1
  152. package/dist/model/core/Substation.d.ts +1 -0
  153. package/dist/model/core/Substation.js +7 -4
  154. package/dist/model/core/Substation.js.map +1 -1
  155. package/dist/model/core/Terminal.d.ts +7 -3
  156. package/dist/model/core/Terminal.js +31 -13
  157. package/dist/model/core/Terminal.js.map +1 -1
  158. package/dist/model/core/VoltageLevel.js +10 -14
  159. package/dist/model/core/VoltageLevel.js.map +1 -1
  160. package/dist/model/dc/ACDCConverter.js +22 -21
  161. package/dist/model/dc/ACDCConverter.js.map +1 -1
  162. package/dist/model/dc/ACDCConverterDCTerminal.js +4 -4
  163. package/dist/model/dc/ACDCConverterDCTerminal.js.map +1 -1
  164. package/dist/model/dc/CsConverter.js +18 -18
  165. package/dist/model/dc/CsConverter.js.map +1 -1
  166. package/dist/model/dc/DCBaseTerminal.js +3 -3
  167. package/dist/model/dc/DCBaseTerminal.js.map +1 -1
  168. package/dist/model/dc/DCConverterUnit.js +4 -4
  169. package/dist/model/dc/DCConverterUnit.js.map +1 -1
  170. package/dist/model/dc/DCLine.js +2 -2
  171. package/dist/model/dc/DCLine.js.map +1 -1
  172. package/dist/model/dc/DCLineSegment.js +6 -6
  173. package/dist/model/dc/DCLineSegment.js.map +1 -1
  174. package/dist/model/dc/DCNode.js +3 -3
  175. package/dist/model/dc/DCNode.js.map +1 -1
  176. package/dist/model/dc/DCTerminal.js +3 -3
  177. package/dist/model/dc/DCTerminal.js.map +1 -1
  178. package/dist/model/dc/VsConverter.js +17 -17
  179. package/dist/model/dc/VsConverter.js.map +1 -1
  180. package/dist/model/diagram/Diagram.js +4 -4
  181. package/dist/model/diagram/Diagram.js.map +1 -1
  182. package/dist/model/diagram/DiagramObject.d.ts +4 -3
  183. package/dist/model/diagram/DiagramObject.js +22 -9
  184. package/dist/model/diagram/DiagramObject.js.map +1 -1
  185. package/dist/model/diagram/DiagramObjectPoint.d.ts +6 -5
  186. package/dist/model/diagram/DiagramObjectPoint.js +22 -9
  187. package/dist/model/diagram/DiagramObjectPoint.js.map +1 -1
  188. package/dist/model/diagram/DiagramStyle.js +4 -3
  189. package/dist/model/diagram/DiagramStyle.js.map +1 -1
  190. package/dist/model/dynamics/standard-models/synchronous-machine-dynamics/DynamicsEnums.d.ts +16 -0
  191. package/dist/model/dynamics/standard-models/synchronous-machine-dynamics/DynamicsEnums.js +23 -0
  192. package/dist/model/dynamics/standard-models/synchronous-machine-dynamics/DynamicsEnums.js.map +1 -0
  193. package/dist/model/dynamics/standard-models/synchronous-machine-dynamics/DynamicsFunctionBlock.d.ts +8 -0
  194. package/dist/model/dynamics/standard-models/synchronous-machine-dynamics/DynamicsFunctionBlock.js +22 -0
  195. package/dist/model/dynamics/standard-models/synchronous-machine-dynamics/DynamicsFunctionBlock.js.map +1 -0
  196. package/dist/model/dynamics/standard-models/synchronous-machine-dynamics/RotatingMachineDynamics.d.ts +9 -0
  197. package/dist/model/dynamics/standard-models/synchronous-machine-dynamics/RotatingMachineDynamics.js +8 -0
  198. package/dist/model/dynamics/standard-models/synchronous-machine-dynamics/RotatingMachineDynamics.js.map +1 -0
  199. package/dist/model/dynamics/standard-models/synchronous-machine-dynamics/SynchronousMachineDetailed.d.ts +8 -0
  200. package/dist/model/dynamics/standard-models/synchronous-machine-dynamics/SynchronousMachineDetailed.js +8 -0
  201. package/dist/model/dynamics/standard-models/synchronous-machine-dynamics/SynchronousMachineDetailed.js.map +1 -0
  202. package/dist/model/dynamics/standard-models/synchronous-machine-dynamics/SynchronousMachineDynamics.d.ts +7 -0
  203. package/dist/model/dynamics/standard-models/synchronous-machine-dynamics/SynchronousMachineDynamics.js +16 -0
  204. package/dist/model/dynamics/standard-models/synchronous-machine-dynamics/SynchronousMachineDynamics.js.map +1 -0
  205. package/dist/model/dynamics/standard-models/synchronous-machine-dynamics/SynchronousMachineTimeConstantReactance.d.ts +25 -0
  206. package/dist/model/dynamics/standard-models/synchronous-machine-dynamics/SynchronousMachineTimeConstantReactance.js +61 -0
  207. package/dist/model/dynamics/standard-models/synchronous-machine-dynamics/SynchronousMachineTimeConstantReactance.js.map +1 -0
  208. package/dist/model/equivalents/EquivalentBranch.js +19 -17
  209. package/dist/model/equivalents/EquivalentBranch.js.map +1 -1
  210. package/dist/model/equivalents/EquivalentInjection.d.ts +25 -0
  211. package/dist/model/equivalents/EquivalentInjection.js +93 -0
  212. package/dist/model/equivalents/EquivalentInjection.js.map +1 -0
  213. package/dist/model/extensions/amprion/assets/AMPRIONConstructionContainer.d.ts +22 -0
  214. package/dist/model/extensions/amprion/assets/AMPRIONConstructionContainer.js +90 -0
  215. package/dist/model/extensions/amprion/assets/AMPRIONConstructionContainer.js.map +1 -0
  216. package/dist/model/extensions/amprion/assets/AMPRIONFacility.d.ts +25 -0
  217. package/dist/model/extensions/amprion/assets/AMPRIONFacility.js +98 -0
  218. package/dist/model/extensions/amprion/assets/AMPRIONFacility.js.map +1 -0
  219. package/dist/model/extensions/amprion/assets/AMPRIONSpanField.d.ts +27 -0
  220. package/dist/model/extensions/amprion/assets/AMPRIONSpanField.js +99 -0
  221. package/dist/model/extensions/amprion/assets/AMPRIONSpanField.js.map +1 -0
  222. package/dist/model/extensions/amprion/assets/AMPRIONStatusTypeKind.d.ts +9 -0
  223. package/dist/model/extensions/amprion/assets/AMPRIONStatusTypeKind.js +14 -0
  224. package/dist/model/extensions/amprion/assets/AMPRIONStatusTypeKind.js.map +1 -0
  225. package/dist/model/extensions/amprion/assets/AMPRIONTower.d.ts +34 -0
  226. package/dist/model/extensions/amprion/assets/AMPRIONTower.js +103 -0
  227. package/dist/model/extensions/amprion/assets/AMPRIONTower.js.map +1 -0
  228. package/dist/model/extensions/amprion/assets/AMPRIONWire.d.ts +38 -0
  229. package/dist/model/extensions/amprion/assets/AMPRIONWire.js +120 -0
  230. package/dist/model/extensions/amprion/assets/AMPRIONWire.js.map +1 -0
  231. package/dist/model/extensions/amprion/common/AMPRIONStateTypeKind.d.ts +5 -0
  232. package/dist/model/extensions/amprion/common/AMPRIONStateTypeKind.js +10 -0
  233. package/dist/model/extensions/amprion/common/AMPRIONStateTypeKind.js.map +1 -0
  234. package/dist/model/extensions/amprion/common/AMPRIONWireIsolationTypeKind.d.ts +11 -0
  235. package/dist/model/extensions/amprion/common/AMPRIONWireIsolationTypeKind.js +16 -0
  236. package/dist/model/extensions/amprion/common/AMPRIONWireIsolationTypeKind.js.map +1 -0
  237. package/dist/model/extensions/amprion/common/AMPRIONWireLayoutKind.d.ts +6 -0
  238. package/dist/model/extensions/amprion/common/AMPRIONWireLayoutKind.js +11 -0
  239. package/dist/model/extensions/amprion/common/AMPRIONWireLayoutKind.js.map +1 -0
  240. package/dist/model/extensions/amprion/common/AMPRIONWireOperatingTypeKind.d.ts +10 -0
  241. package/dist/model/extensions/amprion/common/AMPRIONWireOperatingTypeKind.js +15 -0
  242. package/dist/model/extensions/amprion/common/AMPRIONWireOperatingTypeKind.js.map +1 -0
  243. package/dist/model/extensions/amprion/core/AMPRIONBay.js +5 -4
  244. package/dist/model/extensions/amprion/core/AMPRIONBay.js.map +1 -1
  245. package/dist/model/extensions/amprion/core/AMPRIONConnectivityNode.js +5 -5
  246. package/dist/model/extensions/amprion/core/AMPRIONConnectivityNode.js.map +1 -1
  247. package/dist/model/extensions/amprion/core/AMPRIONLine.d.ts +5 -0
  248. package/dist/model/extensions/amprion/core/AMPRIONLine.js +33 -0
  249. package/dist/model/extensions/amprion/core/AMPRIONLine.js.map +1 -0
  250. package/dist/model/extensions/amprion/core/AMPRIONSubstation.d.ts +15 -0
  251. package/dist/model/extensions/amprion/core/AMPRIONSubstation.js +93 -0
  252. package/dist/model/extensions/amprion/core/AMPRIONSubstation.js.map +1 -0
  253. package/dist/model/extensions/amprion/model/AMPRIONModel.d.ts +22 -2
  254. package/dist/model/extensions/amprion/model/AMPRIONModel.js +57 -3
  255. package/dist/model/extensions/amprion/model/AMPRIONModel.js.map +1 -1
  256. package/dist/model/extensions/amprion/project/AMPRIONConstructionProject.d.ts +2 -0
  257. package/dist/model/extensions/amprion/project/AMPRIONConstructionProject.js +2 -2
  258. package/dist/model/extensions/amprion/project/AMPRIONConstructionProject.js.map +1 -1
  259. package/dist/model/extensions/amprion/project/AMPRIONErpProjectPhase.js +30 -30
  260. package/dist/model/extensions/amprion/project/AMPRIONErpProjectPhase.js.map +1 -1
  261. package/dist/model/extensions/amprion/wires/AMPRIONACLineSegment.d.ts +13 -0
  262. package/dist/model/extensions/amprion/wires/AMPRIONACLineSegment.js +80 -0
  263. package/dist/model/extensions/amprion/wires/AMPRIONACLineSegment.js.map +1 -0
  264. package/dist/model/extensions/amprion/wires/AMPRIONSeriesCompensator.js +4 -4
  265. package/dist/model/extensions/amprion/wires/AMPRIONSeriesCompensator.js.map +1 -1
  266. package/dist/model/extensions/enervance/assetinfo/EVPowerTransformerEndInfo.js +9 -8
  267. package/dist/model/extensions/enervance/assetinfo/EVPowerTransformerEndInfo.js.map +1 -1
  268. package/dist/model/extensions/enervance/assetinfo/EVPowerTransformerInfo.js +9 -8
  269. package/dist/model/extensions/enervance/assetinfo/EVPowerTransformerInfo.js.map +1 -1
  270. package/dist/model/extensions/enervance/assetinfo/EVWireInfo.js +14 -13
  271. package/dist/model/extensions/enervance/assetinfo/EVWireInfo.js.map +1 -1
  272. package/dist/model/extensions/enervance/assets/EVWireObject.d.ts +1 -1
  273. package/dist/model/extensions/enervance/assets/EVWireObject.js +10 -5
  274. package/dist/model/extensions/enervance/assets/EVWireObject.js.map +1 -1
  275. package/dist/model/extensions/enervance/core/EVTerminal.d.ts +3 -0
  276. package/dist/model/extensions/enervance/core/EVTerminal.js +19 -0
  277. package/dist/model/extensions/enervance/core/EVTerminal.js.map +1 -1
  278. package/dist/model/extensions/enervance/wires/EVACLineSegment.d.ts +1 -1
  279. package/dist/model/extensions/enervance/wires/EVACLineSegment.js +3 -3
  280. package/dist/model/extensions/enervance/wires/EVACLineSegment.js.map +1 -1
  281. package/dist/model/extensions/enervance/wires/EVACLineSubSegment.js.map +1 -1
  282. package/dist/model/extensions/neplan-westnetz/assets/WNFacility.d.ts +1 -1
  283. package/dist/model/extensions/neplan-westnetz/assets/WNFacility.js +22 -2
  284. package/dist/model/extensions/neplan-westnetz/assets/WNFacility.js.map +1 -1
  285. package/dist/model/extensions/neplan-westnetz/assets/WNFacilityKind.d.ts +5 -0
  286. package/dist/model/extensions/neplan-westnetz/assets/WNFacilityKind.js +14 -0
  287. package/dist/model/extensions/neplan-westnetz/assets/WNFacilityKind.js.map +1 -0
  288. package/dist/model/extensions/neplan-westnetz/assets/WNWireInfo.js +3 -2
  289. package/dist/model/extensions/neplan-westnetz/assets/WNWireInfo.js.map +1 -1
  290. package/dist/model/extensions/neplan-westnetz/core/WNConnectivityNode.d.ts +10 -3
  291. package/dist/model/extensions/neplan-westnetz/core/WNConnectivityNode.js +147 -98
  292. package/dist/model/extensions/neplan-westnetz/core/WNConnectivityNode.js.map +1 -1
  293. package/dist/model/extensions/neplan-westnetz/core/WNFeeder.d.ts +8 -2
  294. package/dist/model/extensions/neplan-westnetz/core/WNFeeder.js +80 -9
  295. package/dist/model/extensions/neplan-westnetz/core/WNFeeder.js.map +1 -1
  296. package/dist/model/extensions/neplan-westnetz/wires/WNEnergyConsumer.d.ts +5 -4
  297. package/dist/model/extensions/neplan-westnetz/wires/WNEnergyConsumer.js +114 -45
  298. package/dist/model/extensions/neplan-westnetz/wires/WNEnergyConsumer.js.map +1 -1
  299. package/dist/model/generation/FossilFuel.js +4 -4
  300. package/dist/model/generation/FossilFuel.js.map +1 -1
  301. package/dist/model/generation/GeneratingUnit.js +7 -6
  302. package/dist/model/generation/GeneratingUnit.js.map +1 -1
  303. package/dist/model/generation/HydroGeneratingUnit.d.ts +3 -0
  304. package/dist/model/generation/HydroGeneratingUnit.js +21 -0
  305. package/dist/model/generation/HydroGeneratingUnit.js.map +1 -1
  306. package/dist/model/generation/SolarGeneratingUnit.d.ts +2 -0
  307. package/dist/model/generation/SolarGeneratingUnit.js +13 -0
  308. package/dist/model/generation/SolarGeneratingUnit.js.map +1 -1
  309. package/dist/model/generation/ThermalGeneratingUnit.js +2 -2
  310. package/dist/model/generation/ThermalGeneratingUnit.js.map +1 -1
  311. package/dist/model/generation/WindGeneratingUnit.js +3 -3
  312. package/dist/model/generation/WindGeneratingUnit.js.map +1 -1
  313. package/dist/model/loadmodel/ConformLoad.js +3 -3
  314. package/dist/model/loadmodel/ConformLoad.js.map +1 -1
  315. package/dist/model/loadmodel/ConformLoadGroup.js +2 -2
  316. package/dist/model/loadmodel/ConformLoadGroup.js.map +1 -1
  317. package/dist/model/loadmodel/LoadArea.js +2 -2
  318. package/dist/model/loadmodel/LoadArea.js.map +1 -1
  319. package/dist/model/loadmodel/LoadGroup.js +2 -2
  320. package/dist/model/loadmodel/LoadGroup.js.map +1 -1
  321. package/dist/model/loadmodel/SubLoadArea.js +3 -3
  322. package/dist/model/loadmodel/SubLoadArea.js.map +1 -1
  323. package/dist/model/model/Model.d.ts +34 -2
  324. package/dist/model/model/Model.js +86 -12
  325. package/dist/model/model/Model.js.map +1 -1
  326. package/dist/model/operationallimits/CurrentLimit.js +3 -2
  327. package/dist/model/operationallimits/CurrentLimit.js.map +1 -1
  328. package/dist/model/operationallimits/OperationalLimit.js +7 -14
  329. package/dist/model/operationallimits/OperationalLimit.js.map +1 -1
  330. package/dist/model/operationallimits/OperationalLimitSet.js +5 -8
  331. package/dist/model/operationallimits/OperationalLimitSet.js.map +1 -1
  332. package/dist/model/operationallimits/OperationalLimitType.js +4 -4
  333. package/dist/model/operationallimits/OperationalLimitType.js.map +1 -1
  334. package/dist/model/operationallimits/VoltageLimit.d.ts +9 -0
  335. package/dist/model/operationallimits/VoltageLimit.js +38 -0
  336. package/dist/model/operationallimits/VoltageLimit.js.map +1 -0
  337. package/dist/model/statevariables/SvPowerFlow.js +5 -5
  338. package/dist/model/statevariables/SvPowerFlow.js.map +1 -1
  339. package/dist/model/statevariables/SvStatus.js +5 -5
  340. package/dist/model/statevariables/SvStatus.js.map +1 -1
  341. package/dist/model/statevariables/SvTapStep.js +5 -5
  342. package/dist/model/statevariables/SvTapStep.js.map +1 -1
  343. package/dist/model/topology/TopologicalNode.js +5 -4
  344. package/dist/model/topology/TopologicalNode.js.map +1 -1
  345. package/dist/model/wires/ACLineSegment.js +12 -11
  346. package/dist/model/wires/ACLineSegment.js.map +1 -1
  347. package/dist/model/wires/AsynchronousMachine.js +20 -20
  348. package/dist/model/wires/AsynchronousMachine.js.map +1 -1
  349. package/dist/model/wires/Breaker.js +2 -2
  350. package/dist/model/wires/Breaker.js.map +1 -1
  351. package/dist/model/wires/BusbarSection.js +3 -3
  352. package/dist/model/wires/BusbarSection.js.map +1 -1
  353. package/dist/model/wires/Conductor.js +8 -2
  354. package/dist/model/wires/Conductor.js.map +1 -1
  355. package/dist/model/wires/Disconnector.js +2 -2
  356. package/dist/model/wires/Disconnector.js.map +1 -1
  357. package/dist/model/wires/EarthFaultCompensator.js +2 -1
  358. package/dist/model/wires/EarthFaultCompensator.js.map +1 -1
  359. package/dist/model/wires/EnergyConsumer.js +10 -9
  360. package/dist/model/wires/EnergyConsumer.js.map +1 -1
  361. package/dist/model/wires/EnergySource.js +13 -12
  362. package/dist/model/wires/EnergySource.js.map +1 -1
  363. package/dist/model/wires/ExternalNetworkInjection.js +20 -19
  364. package/dist/model/wires/ExternalNetworkInjection.js.map +1 -1
  365. package/dist/model/wires/GroundingImpedance.js +3 -3
  366. package/dist/model/wires/GroundingImpedance.js.map +1 -1
  367. package/dist/model/wires/Junction.js +3 -3
  368. package/dist/model/wires/Junction.js.map +1 -1
  369. package/dist/model/wires/Line.d.ts +3 -0
  370. package/dist/model/wires/Line.js +20 -5
  371. package/dist/model/wires/Line.js.map +1 -1
  372. package/dist/model/wires/LinearShuntCompensator.js +6 -6
  373. package/dist/model/wires/LinearShuntCompensator.js.map +1 -1
  374. package/dist/model/wires/PetersenCoil.js +9 -9
  375. package/dist/model/wires/PetersenCoil.js.map +1 -1
  376. package/dist/model/wires/PhaseTapChanger.d.ts +9 -0
  377. package/dist/model/wires/PhaseTapChanger.js +27 -0
  378. package/dist/model/wires/PhaseTapChanger.js.map +1 -0
  379. package/dist/model/wires/PhaseTapChangerAsymmetrical.d.ts +10 -0
  380. package/dist/model/wires/PhaseTapChangerAsymmetrical.js +41 -0
  381. package/dist/model/wires/PhaseTapChangerAsymmetrical.js.map +1 -0
  382. package/dist/model/wires/PhaseTapChangerLinear.d.ts +12 -0
  383. package/dist/model/wires/PhaseTapChangerLinear.js +51 -0
  384. package/dist/model/wires/PhaseTapChangerLinear.js.map +1 -0
  385. package/dist/model/wires/PhaseTapChangerNonLinear.d.ts +10 -0
  386. package/dist/model/wires/PhaseTapChangerNonLinear.js +37 -0
  387. package/dist/model/wires/PhaseTapChangerNonLinear.js.map +1 -0
  388. package/dist/model/wires/PhaseTapChangerSymmetrical.d.ts +6 -0
  389. package/dist/model/wires/PhaseTapChangerSymmetrical.js +24 -0
  390. package/dist/model/wires/PhaseTapChangerSymmetrical.js.map +1 -0
  391. package/dist/model/wires/PhaseTapChangerTable.d.ts +14 -0
  392. package/dist/model/wires/PhaseTapChangerTable.js +44 -0
  393. package/dist/model/wires/PhaseTapChangerTable.js.map +1 -0
  394. package/dist/model/wires/PhaseTapChangerTablePoint.d.ts +15 -0
  395. package/dist/model/wires/PhaseTapChangerTablePoint.js +54 -0
  396. package/dist/model/wires/PhaseTapChangerTablePoint.js.map +1 -0
  397. package/dist/model/wires/PhaseTapChangerTabular.d.ts +10 -0
  398. package/dist/model/wires/PhaseTapChangerTabular.js +38 -0
  399. package/dist/model/wires/PhaseTapChangerTabular.js.map +1 -0
  400. package/dist/model/wires/PowerTransformer.js +3 -2
  401. package/dist/model/wires/PowerTransformer.js.map +1 -1
  402. package/dist/model/wires/PowerTransformerEnd.js +21 -21
  403. package/dist/model/wires/PowerTransformerEnd.js.map +1 -1
  404. package/dist/model/wires/RatioTapChanger.d.ts +2 -0
  405. package/dist/model/wires/RatioTapChanger.js +21 -24
  406. package/dist/model/wires/RatioTapChanger.js.map +1 -1
  407. package/dist/model/wires/RatioTapChangerTable.d.ts +3 -0
  408. package/dist/model/wires/RatioTapChangerTable.js +16 -2
  409. package/dist/model/wires/RatioTapChangerTable.js.map +1 -1
  410. package/dist/model/wires/RatioTapChangerTablePoint.js +4 -4
  411. package/dist/model/wires/RatioTapChangerTablePoint.js.map +1 -1
  412. package/dist/model/wires/ReactiveCapabilityCurve.js +2 -2
  413. package/dist/model/wires/ReactiveCapabilityCurve.js.map +1 -1
  414. package/dist/model/wires/RegulatingCondEq.js +3 -2
  415. package/dist/model/wires/RegulatingCondEq.js.map +1 -1
  416. package/dist/model/wires/RegulatingControl.js +9 -8
  417. package/dist/model/wires/RegulatingControl.js.map +1 -1
  418. package/dist/model/wires/RotatingMachine.d.ts +1 -0
  419. package/dist/model/wires/RotatingMachine.js +21 -7
  420. package/dist/model/wires/RotatingMachine.js.map +1 -1
  421. package/dist/model/wires/SeriesCompensator.js +9 -8
  422. package/dist/model/wires/SeriesCompensator.js.map +1 -1
  423. package/dist/model/wires/ShuntCompensator.js +15 -15
  424. package/dist/model/wires/ShuntCompensator.js.map +1 -1
  425. package/dist/model/wires/StaticVarCompensator.js +14 -14
  426. package/dist/model/wires/StaticVarCompensator.js.map +1 -1
  427. package/dist/model/wires/Switch.js +4 -3
  428. package/dist/model/wires/Switch.js.map +1 -1
  429. package/dist/model/wires/SynchronousMachine.d.ts +2 -0
  430. package/dist/model/wires/SynchronousMachine.js +28 -31
  431. package/dist/model/wires/SynchronousMachine.js.map +1 -1
  432. package/dist/model/wires/TapChanger.d.ts +2 -0
  433. package/dist/model/wires/TapChanger.js +15 -15
  434. package/dist/model/wires/TapChanger.js.map +1 -1
  435. package/dist/model/wires/TapChangerControl.js +3 -3
  436. package/dist/model/wires/TapChangerControl.js.map +1 -1
  437. package/dist/model/wires/TapChangerTablePoint.d.ts +3 -0
  438. package/dist/model/wires/TapChangerTablePoint.js +34 -7
  439. package/dist/model/wires/TapChangerTablePoint.js.map +1 -1
  440. package/dist/model/wires/TransformerEnd.d.ts +3 -0
  441. package/dist/model/wires/TransformerEnd.js +12 -19
  442. package/dist/model/wires/TransformerEnd.js.map +1 -1
  443. package/dist/util/collection/util-dot.d.ts +2 -0
  444. package/dist/util/collection/util-dot.js +71 -0
  445. package/dist/util/collection/util-dot.js.map +1 -0
  446. package/dist/util/collection/util-excel.d.ts +10 -0
  447. package/dist/util/collection/util-excel.js +58 -0
  448. package/dist/util/collection/util-excel.js.map +1 -0
  449. package/dist/util/collection/util-graph.d.ts +7 -0
  450. package/dist/util/collection/util-graph.js +168 -0
  451. package/dist/util/collection/util-graph.js.map +1 -0
  452. package/dist/util/collection/util-graph2tree.d.ts +39 -0
  453. package/dist/util/collection/util-graph2tree.js +172 -0
  454. package/dist/util/collection/util-graph2tree.js.map +1 -0
  455. package/dist/util/collection/util-tree.d.ts +65 -0
  456. package/dist/util/collection/util-tree.js +236 -0
  457. package/dist/util/collection/util-tree.js.map +1 -0
  458. package/dist/util/database/mysql-controller.d.ts +16 -0
  459. package/dist/util/database/mysql-controller.js +45 -0
  460. package/dist/util/database/mysql-controller.js.map +1 -0
  461. package/dist/util/sparql/sparql-utils.d.ts +1 -0
  462. package/dist/util/sparql/sparql-utils.js +5 -1
  463. package/dist/util/sparql/sparql-utils.js.map +1 -1
  464. package/dist/util/util-create.d.ts +5 -2
  465. package/dist/util/util-create.js +18 -6
  466. package/dist/util/util-create.js.map +1 -1
  467. package/dist/util/util-test.d.ts +18 -0
  468. package/dist/util/util-test.js +300 -0
  469. package/dist/util/util-test.js.map +1 -0
  470. package/dist/util/util-topology.js +0 -2
  471. package/dist/util/util-topology.js.map +1 -1
  472. package/dist/util/utils.d.ts +0 -12
  473. package/dist/util/utils.js +17 -33
  474. package/dist/util/utils.js.map +1 -1
  475. package/dist/util/xml/xml.serializer.d.ts +12 -0
  476. package/dist/util/xml/xml.serializer.js +33 -3
  477. package/dist/util/xml/xml.serializer.js.map +1 -1
  478. package/package.json +11 -5
  479. package/dist/converter/integral7/interface-i7/db-config.d.ts +0 -13
  480. package/dist/converter/integral7/interface-i7/db-config.js.map +0 -1
@@ -3,7 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.ConformLoad = void 0;
4
4
  const EnergyConsumer_1 = require("../wires/EnergyConsumer");
5
5
  const rdf_xml_1 = require("../../constants/rdf-xml");
6
- const utils_1 = require("../../util/utils");
6
+ const xml_serializer_1 = require("../../util/xml/xml.serializer");
7
7
  class ConformLoad extends EnergyConsumer_1.EnergyConsumer {
8
8
  constructor(uuid, name, shortName, description) {
9
9
  super(uuid, name, shortName, description);
@@ -13,7 +13,7 @@ class ConformLoad extends EnergyConsumer_1.EnergyConsumer {
13
13
  const suffixID = this.getSuffixID(profile);
14
14
  const prefixUUID = this.getPrefixUUID(suffixID);
15
15
  xmlWriter.startElementNS(rdf_xml_1.RDF_XML.CIM_NS_PREFIX, 'ConformLoad', rdf_xml_1.RDF_XML.CIM_NS_16);
16
- utils_1.writeElementAttribute(xmlWriter, suffixID, `${prefixUUID}${this.mrid}`);
16
+ xml_serializer_1.writeElementAttribute(xmlWriter, suffixID, `${prefixUUID}${this.mrid}`);
17
17
  this.toCIMXMLAttributes(xmlWriter, profile);
18
18
  this.toCIMXMLAssociations(xmlWriter, profile);
19
19
  xmlWriter.endElement();
@@ -25,7 +25,7 @@ class ConformLoad extends EnergyConsumer_1.EnergyConsumer {
25
25
  this.loadGroupUUID = this.loadGroup ? this.loadGroup.mrid : this.loadGroupUUID;
26
26
  if (this.loadGroupUUID) {
27
27
  xmlWriter.startElementNS(rdf_xml_1.RDF_XML.CIM_NS_PREFIX, 'ConformLoad.LoadGroup', rdf_xml_1.RDF_XML.CIM_NS_16);
28
- utils_1.writeElementAttribute(xmlWriter, rdf_xml_1.RDF_XML.RDF_RESRC, `${rdf_xml_1.RDF_XML.HASH_UNDERSCORE}${this.loadGroupUUID}`);
28
+ xml_serializer_1.writeElementAttribute(xmlWriter, rdf_xml_1.RDF_XML.RDF_RESRC, `${rdf_xml_1.RDF_XML.HASH_UNDERSCORE}${this.loadGroupUUID}`);
29
29
  xmlWriter.endElement();
30
30
  }
31
31
  }
@@ -1 +1 @@
1
- {"version":3,"file":"ConformLoad.js","sourceRoot":"","sources":["../../../src/model/loadmodel/ConformLoad.ts"],"names":[],"mappings":";;;AAAA,4DAAuD;AACvD,qDAAgD;AAChD,4CAAuD;AAKvD,MAAa,WAAY,SAAQ,+BAAc;IAM7C,YAAY,IAAa,EAAE,IAAa,EAAE,SAAkB,EAAE,WAAoB;QAChF,KAAK,CAAC,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE,WAAW,CAAC,CAAC;IAC5C,CAAC;IAIM,QAAQ,CAAC,SAAoB,EAAE,OAAe;QACnD,IAAG,OAAO,KAAK,iBAAO,CAAC,UAAU,IAAI,OAAO,KAAK,iBAAO,CAAC,WAAW,EAAE;YACpE,MAAM,QAAQ,GAAI,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;YAC5C,MAAM,UAAU,GAAG,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;YAChD,SAAS,CAAC,cAAc,CAAC,iBAAO,CAAC,aAAa,EAAE,aAAa,EAAE,iBAAO,CAAC,SAAS,CAAC,CAAC;YAClF,6BAAqB,CAAC,SAAS,EAAE,QAAQ,EAAE,GAAG,UAAU,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;YACxE,IAAI,CAAC,kBAAkB,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;YAC5C,IAAI,CAAC,oBAAoB,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;YAC9C,SAAS,CAAC,UAAU,EAAE,CAAC;SACxB;IACH,CAAC;IACS,oBAAoB,CAAC,SAAoB,EAAE,OAAe;QAClE,KAAK,CAAC,oBAAoB,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;QAC/C,IAAI,OAAO,KAAK,iBAAO,CAAC,UAAU,EAAE;YAClC,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC;YAC/E,IAAI,IAAI,CAAC,aAAa,EAAE;gBACtB,SAAS,CAAC,cAAc,CAAC,iBAAO,CAAC,aAAa,EAAE,uBAAuB,EAAE,iBAAO,CAAC,SAAS,CAAC,CAAC;gBAC5F,6BAAqB,CAAC,SAAS,EAAE,iBAAO,CAAC,SAAS,EAAE,GAAG,iBAAO,CAAC,eAAe,GAAG,IAAI,CAAC,aAAa,EAAE,CAAC,CAAC;gBACvG,SAAS,CAAC,UAAU,EAAE,CAAC;aACxB;SACF;IACH,CAAC;IAED,gCAAgC,CAAC,mBAAyC;QACxE,IAAI,aAAa,GAAG,KAAK,CAAC,gCAAgC,CAAC,mBAAmB,CAAC,CAAC;QAChF,IAAI,aAAa,CAAC,MAAM;YAAE,IAAI,CAAC,WAAW,GAAG,IAAI,aAAa,GAAG,CAAC;QAClE,OAAO,aAAa,CAAC;IACvB,CAAC;;AAvCH,kCA2EC;AAlCe,uBAAW,GAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;yGAiCkE,CAAC"}
1
+ {"version":3,"file":"ConformLoad.js","sourceRoot":"","sources":["../../../src/model/loadmodel/ConformLoad.ts"],"names":[],"mappings":";;;AAAA,4DAAuD;AACvD,qDAAgD;AAIhD,kEAAsE;AAEtE,MAAa,WAAY,SAAQ,+BAAc;IAM7C,YAAY,IAAa,EAAE,IAAa,EAAE,SAAkB,EAAE,WAAoB;QAChF,KAAK,CAAC,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE,WAAW,CAAC,CAAC;IAC5C,CAAC;IAIM,QAAQ,CAAC,SAAoB,EAAE,OAAe;QACnD,IAAG,OAAO,KAAK,iBAAO,CAAC,UAAU,IAAI,OAAO,KAAK,iBAAO,CAAC,WAAW,EAAE;YACpE,MAAM,QAAQ,GAAI,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;YAC5C,MAAM,UAAU,GAAG,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;YAChD,SAAS,CAAC,cAAc,CAAC,iBAAO,CAAC,aAAa,EAAE,aAAa,EAAE,iBAAO,CAAC,SAAS,CAAC,CAAC;YAClF,sCAAqB,CAAC,SAAS,EAAE,QAAQ,EAAE,GAAG,UAAU,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;YACxE,IAAI,CAAC,kBAAkB,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;YAC5C,IAAI,CAAC,oBAAoB,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;YAC9C,SAAS,CAAC,UAAU,EAAE,CAAC;SACxB;IACH,CAAC;IACS,oBAAoB,CAAC,SAAoB,EAAE,OAAe;QAClE,KAAK,CAAC,oBAAoB,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;QAC/C,IAAI,OAAO,KAAK,iBAAO,CAAC,UAAU,EAAE;YAClC,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC;YAC/E,IAAI,IAAI,CAAC,aAAa,EAAE;gBACtB,SAAS,CAAC,cAAc,CAAC,iBAAO,CAAC,aAAa,EAAE,uBAAuB,EAAE,iBAAO,CAAC,SAAS,CAAC,CAAC;gBAC5F,sCAAqB,CAAC,SAAS,EAAE,iBAAO,CAAC,SAAS,EAAE,GAAG,iBAAO,CAAC,eAAe,GAAG,IAAI,CAAC,aAAa,EAAE,CAAC,CAAC;gBACvG,SAAS,CAAC,UAAU,EAAE,CAAC;aACxB;SACF;IACH,CAAC;IAED,gCAAgC,CAAC,mBAAyC;QACxE,IAAI,aAAa,GAAG,KAAK,CAAC,gCAAgC,CAAC,mBAAmB,CAAC,CAAC;QAChF,IAAI,aAAa,CAAC,MAAM;YAAE,IAAI,CAAC,WAAW,GAAG,IAAI,aAAa,GAAG,CAAC;QAClE,OAAO,aAAa,CAAC;IACvB,CAAC;;AAvCH,kCA2EC;AAlCe,uBAAW,GAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;yGAiCkE,CAAC"}
@@ -3,7 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.ConformLoadGroup = void 0;
4
4
  const LoadGroup_1 = require("./LoadGroup");
5
5
  const rdf_xml_1 = require("../../constants/rdf-xml");
6
- const utils_1 = require("../../util/utils");
6
+ const xml_serializer_1 = require("../../util/xml/xml.serializer");
7
7
  class ConformLoadGroup extends LoadGroup_1.LoadGroup {
8
8
  constructor(mrid, name, shortName, description, baseIRI) {
9
9
  super(mrid, name, shortName, description);
@@ -14,7 +14,7 @@ class ConformLoadGroup extends LoadGroup_1.LoadGroup {
14
14
  const suffixID = this.getSuffixID(profile);
15
15
  const prefixUUID = this.getPrefixUUID(suffixID);
16
16
  xmlWriter.startElementNS(rdf_xml_1.RDF_XML.CIM_NS_PREFIX, this.constructor.name, rdf_xml_1.RDF_XML.CIM_NS_16);
17
- utils_1.writeElementAttribute(xmlWriter, suffixID, `${prefixUUID}${this.mrid}`);
17
+ xml_serializer_1.writeElementAttribute(xmlWriter, suffixID, `${prefixUUID}${this.mrid}`);
18
18
  this.toCIMXMLAttributes(xmlWriter, profile);
19
19
  this.toCIMXMLAssociations(xmlWriter, profile);
20
20
  xmlWriter.endElement();
@@ -1 +1 @@
1
- {"version":3,"file":"ConformLoadGroup.js","sourceRoot":"","sources":["../../../src/model/loadmodel/ConformLoadGroup.ts"],"names":[],"mappings":";;;AAAA,2CAAsC;AAEtC,qDAAgD;AAChD,4CAAuD;AAEvD,MAAa,gBAAiB,SAAQ,qBAAS;IAE7C,YAAY,IAAa,EAAE,IAAa,EAAE,SAAkB,EAAE,WAAoB,EAAE,OAAgB;QAClG,KAAK,CAAC,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE,WAAW,CAAC,CAAC;QAC1C,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IACzB,CAAC;IAEM,QAAQ,CAAC,SAAoB,EAAE,OAAe;QACnD,IAAI,OAAO,KAAK,iBAAO,CAAC,UAAU,EAAE;YAClC,MAAM,QAAQ,GAAG,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;YAC3C,MAAM,UAAU,GAAG,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;YAChD,SAAS,CAAC,cAAc,CAAC,iBAAO,CAAC,aAAa,EAAE,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,iBAAO,CAAC,SAAS,CAAC,CAAC;YAC1F,6BAAqB,CAAC,SAAS,EAAE,QAAQ,EAAE,GAAG,UAAU,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;YACxE,IAAI,CAAC,kBAAkB,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;YAC5C,IAAI,CAAC,oBAAoB,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;YAC9C,SAAS,CAAC,UAAU,EAAE,CAAC;SACxB;IACH,CAAC;;AAjBH,4CA0CC;AAvBe,4BAAW,GAAY;;;;;;;;;;;;;;;;;;;;;;UAsB7B,CAAC"}
1
+ {"version":3,"file":"ConformLoadGroup.js","sourceRoot":"","sources":["../../../src/model/loadmodel/ConformLoadGroup.ts"],"names":[],"mappings":";;;AAAA,2CAAsC;AAEtC,qDAAgD;AAChD,kEAAsE;AAEtE,MAAa,gBAAiB,SAAQ,qBAAS;IAE7C,YAAY,IAAa,EAAE,IAAa,EAAE,SAAkB,EAAE,WAAoB,EAAE,OAAgB;QAClG,KAAK,CAAC,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE,WAAW,CAAC,CAAC;QAC1C,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IACzB,CAAC;IAEM,QAAQ,CAAC,SAAoB,EAAE,OAAe;QACnD,IAAI,OAAO,KAAK,iBAAO,CAAC,UAAU,EAAE;YAClC,MAAM,QAAQ,GAAG,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;YAC3C,MAAM,UAAU,GAAG,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;YAChD,SAAS,CAAC,cAAc,CAAC,iBAAO,CAAC,aAAa,EAAE,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,iBAAO,CAAC,SAAS,CAAC,CAAC;YAC1F,sCAAqB,CAAC,SAAS,EAAE,QAAQ,EAAE,GAAG,UAAU,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;YACxE,IAAI,CAAC,kBAAkB,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;YAC5C,IAAI,CAAC,oBAAoB,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;YAC9C,SAAS,CAAC,UAAU,EAAE,CAAC;SACxB;IACH,CAAC;;AAjBH,4CA0CC;AAvBe,4BAAW,GAAY;;;;;;;;;;;;;;;;;;;;;;UAsB7B,CAAC"}
@@ -3,7 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.LoadArea = void 0;
4
4
  const EnergyArea_1 = require("./EnergyArea");
5
5
  const rdf_xml_1 = require("../../constants/rdf-xml");
6
- const utils_1 = require("../../util/utils");
6
+ const xml_serializer_1 = require("../../util/xml/xml.serializer");
7
7
  class LoadArea extends EnergyArea_1.EnergyArea {
8
8
  constructor(mrid, name, shortName, description, baseIRI) {
9
9
  super(mrid, name, shortName, description);
@@ -18,7 +18,7 @@ class LoadArea extends EnergyArea_1.EnergyArea {
18
18
  const suffixID = this.getSuffixID(profile);
19
19
  const prefixUUID = this.getPrefixUUID(suffixID);
20
20
  xmlWriter.startElementNS(rdf_xml_1.RDF_XML.CIM_NS_PREFIX, this.constructor.name, rdf_xml_1.RDF_XML.CIM_NS_16);
21
- utils_1.writeElementAttribute(xmlWriter, suffixID, `${prefixUUID}${this.mrid}`);
21
+ xml_serializer_1.writeElementAttribute(xmlWriter, suffixID, `${prefixUUID}${this.mrid}`);
22
22
  this.toCIMXMLAttributes(xmlWriter, profile);
23
23
  this.toCIMXMLAssociations(xmlWriter, profile);
24
24
  xmlWriter.endElement();
@@ -1 +1 @@
1
- {"version":3,"file":"LoadArea.js","sourceRoot":"","sources":["../../../src/model/loadmodel/LoadArea.ts"],"names":[],"mappings":";;;AAAA,6CAAwC;AAExC,qDAAgD;AAChD,4CAAuD;AAGvD,MAAa,QAAS,SAAQ,uBAAU;IAItC,YAAY,IAAa,EAAE,IAAa,EAAE,SAAkB,EAAE,WAAoB,EAAE,OAAgB;QAClG,KAAK,CAAC,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE,WAAW,CAAC,CAAC;QAH5C,iBAAY,GAA6B,IAAI,GAAG,EAAE,CAAC;QAIjD,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IACzB,CAAC;IAED,cAAc,CAAC,WAAwB;QACrC,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,WAAW,CAAC,OAAO,EAAE,EAAE,WAAW,CAAC,CAAC;IAC5D,CAAC;IAGM,QAAQ,CAAC,SAAoB,EAAE,OAAe;QACnD,IAAI,OAAO,KAAK,iBAAO,CAAC,UAAU,EAAE;YAClC,MAAM,QAAQ,GAAG,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;YAC3C,MAAM,UAAU,GAAG,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;YAChD,SAAS,CAAC,cAAc,CAAC,iBAAO,CAAC,aAAa,EAAE,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,iBAAO,CAAC,SAAS,CAAC,CAAC;YAC1F,6BAAqB,CAAC,SAAS,EAAE,QAAQ,EAAE,GAAG,UAAU,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;YACxE,IAAI,CAAC,kBAAkB,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;YAC5C,IAAI,CAAC,oBAAoB,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;YAC9C,SAAS,CAAC,UAAU,EAAE,CAAC;SACxB;IACH,CAAC;;AAxBH,4BAgDC;AAtBe,oBAAW,GAAY;;;;;;;;;;;;;;;;;;;;;GAqBpC,CAAC"}
1
+ {"version":3,"file":"LoadArea.js","sourceRoot":"","sources":["../../../src/model/loadmodel/LoadArea.ts"],"names":[],"mappings":";;;AAAA,6CAAwC;AAExC,qDAAgD;AAEhD,kEAAsE;AAEtE,MAAa,QAAS,SAAQ,uBAAU;IAItC,YAAY,IAAa,EAAE,IAAa,EAAE,SAAkB,EAAE,WAAoB,EAAE,OAAgB;QAClG,KAAK,CAAC,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE,WAAW,CAAC,CAAC;QAH5C,iBAAY,GAA6B,IAAI,GAAG,EAAE,CAAC;QAIjD,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IACzB,CAAC;IAED,cAAc,CAAC,WAAwB;QACrC,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,WAAW,CAAC,OAAO,EAAE,EAAE,WAAW,CAAC,CAAC;IAC5D,CAAC;IAGM,QAAQ,CAAC,SAAoB,EAAE,OAAe;QACnD,IAAI,OAAO,KAAK,iBAAO,CAAC,UAAU,EAAE;YAClC,MAAM,QAAQ,GAAG,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;YAC3C,MAAM,UAAU,GAAG,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;YAChD,SAAS,CAAC,cAAc,CAAC,iBAAO,CAAC,aAAa,EAAE,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,iBAAO,CAAC,SAAS,CAAC,CAAC;YAC1F,sCAAqB,CAAC,SAAS,EAAE,QAAQ,EAAE,GAAG,UAAU,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;YACxE,IAAI,CAAC,kBAAkB,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;YAC5C,IAAI,CAAC,oBAAoB,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;YAC9C,SAAS,CAAC,UAAU,EAAE,CAAC;SACxB;IACH,CAAC;;AAxBH,4BAgDC;AAtBe,oBAAW,GAAY;;;;;;;;;;;;;;;;;;;;;GAqBpC,CAAC"}
@@ -3,7 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.LoadGroup = void 0;
4
4
  const IdentifiedObject_1 = require("../core/IdentifiedObject");
5
5
  const rdf_xml_1 = require("../../constants/rdf-xml");
6
- const utils_1 = require("../../util/utils");
6
+ const xml_serializer_1 = require("../../util/xml/xml.serializer");
7
7
  class LoadGroup extends IdentifiedObject_1.IdentifiedObject {
8
8
  toCIMXMLAssociations(xmlWriter, profile) {
9
9
  super.toCIMXMLAssociations(xmlWriter, profile);
@@ -11,7 +11,7 @@ class LoadGroup extends IdentifiedObject_1.IdentifiedObject {
11
11
  this.subLoadAreaUUID = this.subLoadArea ? this.subLoadArea.mrid : this.subLoadAreaUUID;
12
12
  if (this.subLoadAreaUUID) {
13
13
  xmlWriter.startElementNS(rdf_xml_1.RDF_XML.CIM_NS_PREFIX, 'LoadGroup.SubLoadArea', rdf_xml_1.RDF_XML.CIM_NS_16);
14
- utils_1.writeElementAttribute(xmlWriter, rdf_xml_1.RDF_XML.RDF_RESRC, `${rdf_xml_1.RDF_XML.HASH_UNDERSCORE}${this.subLoadAreaUUID}`);
14
+ xml_serializer_1.writeElementAttribute(xmlWriter, rdf_xml_1.RDF_XML.RDF_RESRC, `${rdf_xml_1.RDF_XML.HASH_UNDERSCORE}${this.subLoadAreaUUID}`);
15
15
  xmlWriter.endElement();
16
16
  }
17
17
  }
@@ -1 +1 @@
1
- {"version":3,"file":"LoadGroup.js","sourceRoot":"","sources":["../../../src/model/loadmodel/LoadGroup.ts"],"names":[],"mappings":";;;AAAA,+DAA0D;AAE1D,qDAAgD;AAChD,4CAAuD;AAGvD,MAAa,SAAU,SAAQ,mCAAgB;IAKnC,oBAAoB,CAAC,SAAoB,EAAE,OAAe;QAClE,KAAK,CAAC,oBAAoB,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;QAC/C,IAAI,OAAO,KAAK,iBAAO,CAAC,UAAU,EAAE;YAClC,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC;YACvF,IAAI,IAAI,CAAC,eAAe,EAAE;gBACxB,SAAS,CAAC,cAAc,CAAC,iBAAO,CAAC,aAAa,EAAE,uBAAuB,EAAE,iBAAO,CAAC,SAAS,CAAC,CAAC;gBAC5F,6BAAqB,CAAC,SAAS,EAAE,iBAAO,CAAC,SAAS,EAAE,GAAG,iBAAO,CAAC,eAAe,GAAG,IAAI,CAAC,eAAe,EAAE,CAAC,CAAC;gBACzG,SAAS,CAAC,UAAU,EAAE,CAAC;aACxB;SACF;IACH,CAAC;CAGF;AAlBD,8BAkBC"}
1
+ {"version":3,"file":"LoadGroup.js","sourceRoot":"","sources":["../../../src/model/loadmodel/LoadGroup.ts"],"names":[],"mappings":";;;AAAA,+DAA0D;AAE1D,qDAAgD;AAEhD,kEAAsE;AAEtE,MAAa,SAAU,SAAQ,mCAAgB;IAKnC,oBAAoB,CAAC,SAAoB,EAAE,OAAe;QAClE,KAAK,CAAC,oBAAoB,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;QAC/C,IAAI,OAAO,KAAK,iBAAO,CAAC,UAAU,EAAE;YAClC,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC;YACvF,IAAI,IAAI,CAAC,eAAe,EAAE;gBACxB,SAAS,CAAC,cAAc,CAAC,iBAAO,CAAC,aAAa,EAAE,uBAAuB,EAAE,iBAAO,CAAC,SAAS,CAAC,CAAC;gBAC5F,sCAAqB,CAAC,SAAS,EAAE,iBAAO,CAAC,SAAS,EAAE,GAAG,iBAAO,CAAC,eAAe,GAAG,IAAI,CAAC,eAAe,EAAE,CAAC,CAAC;gBACzG,SAAS,CAAC,UAAU,EAAE,CAAC;aACxB;SACF;IACH,CAAC;CAGF;AAlBD,8BAkBC"}
@@ -3,7 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.SubLoadArea = void 0;
4
4
  const EnergyArea_1 = require("./EnergyArea");
5
5
  const rdf_xml_1 = require("../../constants/rdf-xml");
6
- const utils_1 = require("../../util/utils");
6
+ const xml_serializer_1 = require("../../util/xml/xml.serializer");
7
7
  class SubLoadArea extends EnergyArea_1.EnergyArea {
8
8
  constructor(mrid, name, shortName, description, baseIRI) {
9
9
  super(mrid, name, shortName, description);
@@ -18,7 +18,7 @@ class SubLoadArea extends EnergyArea_1.EnergyArea {
18
18
  const suffixID = this.getSuffixID(profile);
19
19
  const prefixUUID = this.getPrefixUUID(suffixID);
20
20
  xmlWriter.startElementNS(rdf_xml_1.RDF_XML.CIM_NS_PREFIX, this.constructor.name, rdf_xml_1.RDF_XML.CIM_NS_16);
21
- utils_1.writeElementAttribute(xmlWriter, suffixID, `${prefixUUID}${this.mrid}`);
21
+ xml_serializer_1.writeElementAttribute(xmlWriter, suffixID, `${prefixUUID}${this.mrid}`);
22
22
  this.toCIMXMLAttributes(xmlWriter, profile);
23
23
  this.toCIMXMLAssociations(xmlWriter, profile);
24
24
  xmlWriter.endElement();
@@ -30,7 +30,7 @@ class SubLoadArea extends EnergyArea_1.EnergyArea {
30
30
  this.loadAreaUUID = this.loadArea ? this.loadArea.mrid : this.loadAreaUUID;
31
31
  if (this.loadAreaUUID) {
32
32
  xmlWriter.startElementNS(rdf_xml_1.RDF_XML.CIM_NS_PREFIX, 'SubLoadArea.LoadArea', rdf_xml_1.RDF_XML.CIM_NS_16);
33
- utils_1.writeElementAttribute(xmlWriter, rdf_xml_1.RDF_XML.RDF_RESRC, `${rdf_xml_1.RDF_XML.HASH_UNDERSCORE}${this.loadAreaUUID}`);
33
+ xml_serializer_1.writeElementAttribute(xmlWriter, rdf_xml_1.RDF_XML.RDF_RESRC, `${rdf_xml_1.RDF_XML.HASH_UNDERSCORE}${this.loadAreaUUID}`);
34
34
  xmlWriter.endElement();
35
35
  }
36
36
  }
@@ -1 +1 @@
1
- {"version":3,"file":"SubLoadArea.js","sourceRoot":"","sources":["../../../src/model/loadmodel/SubLoadArea.ts"],"names":[],"mappings":";;;AAAA,6CAAwC;AAExC,qDAAgD;AAChD,4CAAuD;AAIvD,MAAa,WAAY,SAAQ,uBAAU;IAOzC,YAAY,IAAa,EAAE,IAAa,EAAE,SAAkB,EAAE,WAAoB,EAAE,OAAgB;QAClG,KAAK,CAAC,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE,WAAW,CAAC,CAAC;QAH5C,eAAU,GAA0B,IAAI,GAAG,EAAE,CAAC;QAI5C,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IACzB,CAAC;IAED,YAAY,CAAC,SAAoB;QAC/B,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,SAAS,CAAC,OAAO,EAAE,EAAE,SAAS,CAAC,CAAC;IACtD,CAAC;IAGM,QAAQ,CAAC,SAAoB,EAAE,OAAe;QACnD,IAAI,OAAO,KAAK,iBAAO,CAAC,UAAU,EAAE;YAClC,MAAM,QAAQ,GAAG,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;YAC3C,MAAM,UAAU,GAAG,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;YAChD,SAAS,CAAC,cAAc,CAAC,iBAAO,CAAC,aAAa,EAAE,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,iBAAO,CAAC,SAAS,CAAC,CAAC;YAC1F,6BAAqB,CAAC,SAAS,EAAE,QAAQ,EAAE,GAAG,UAAU,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;YACxE,IAAI,CAAC,kBAAkB,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;YAC5C,IAAI,CAAC,oBAAoB,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;YAC9C,SAAS,CAAC,UAAU,EAAE,CAAC;SACxB;IACH,CAAC;IAES,oBAAoB,CAAC,SAAoB,EAAE,OAAe;QAClE,KAAK,CAAC,oBAAoB,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;QAE/C,IAAI,OAAO,KAAK,iBAAO,CAAC,UAAU,EAAE;YAClC,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC;YAC3E,IAAI,IAAI,CAAC,YAAY,EAAE;gBACrB,SAAS,CAAC,cAAc,CAAC,iBAAO,CAAC,aAAa,EAAE,sBAAsB,EAAE,iBAAO,CAAC,SAAS,CAAC,CAAC;gBAC3F,6BAAqB,CAAC,SAAS,EAAE,iBAAO,CAAC,SAAS,EAAE,GAAG,iBAAO,CAAC,eAAe,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC,CAAC;gBACtG,SAAS,CAAC,UAAU,EAAE,CAAC;aACxB;SACF;IACH,CAAC;;AAxCH,kCAiEC;AAvBe,uBAAW,GAAY;;;;;;;;;;;;;;;;;;;;;;UAsB7B,CAAC"}
1
+ {"version":3,"file":"SubLoadArea.js","sourceRoot":"","sources":["../../../src/model/loadmodel/SubLoadArea.ts"],"names":[],"mappings":";;;AAAA,6CAAwC;AAExC,qDAAgD;AAGhD,kEAAsE;AAEtE,MAAa,WAAY,SAAQ,uBAAU;IAOzC,YAAY,IAAa,EAAE,IAAa,EAAE,SAAkB,EAAE,WAAoB,EAAE,OAAgB;QAClG,KAAK,CAAC,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE,WAAW,CAAC,CAAC;QAH5C,eAAU,GAA0B,IAAI,GAAG,EAAE,CAAC;QAI5C,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IACzB,CAAC;IAED,YAAY,CAAC,SAAoB;QAC/B,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,SAAS,CAAC,OAAO,EAAE,EAAE,SAAS,CAAC,CAAC;IACtD,CAAC;IAGM,QAAQ,CAAC,SAAoB,EAAE,OAAe;QACnD,IAAI,OAAO,KAAK,iBAAO,CAAC,UAAU,EAAE;YAClC,MAAM,QAAQ,GAAG,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;YAC3C,MAAM,UAAU,GAAG,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;YAChD,SAAS,CAAC,cAAc,CAAC,iBAAO,CAAC,aAAa,EAAE,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,iBAAO,CAAC,SAAS,CAAC,CAAC;YAC1F,sCAAqB,CAAC,SAAS,EAAE,QAAQ,EAAE,GAAG,UAAU,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;YACxE,IAAI,CAAC,kBAAkB,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;YAC5C,IAAI,CAAC,oBAAoB,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;YAC9C,SAAS,CAAC,UAAU,EAAE,CAAC;SACxB;IACH,CAAC;IAES,oBAAoB,CAAC,SAAoB,EAAE,OAAe;QAClE,KAAK,CAAC,oBAAoB,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;QAE/C,IAAI,OAAO,KAAK,iBAAO,CAAC,UAAU,EAAE;YAClC,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC;YAC3E,IAAI,IAAI,CAAC,YAAY,EAAE;gBACrB,SAAS,CAAC,cAAc,CAAC,iBAAO,CAAC,aAAa,EAAE,sBAAsB,EAAE,iBAAO,CAAC,SAAS,CAAC,CAAC;gBAC3F,sCAAqB,CAAC,SAAS,EAAE,iBAAO,CAAC,SAAS,EAAE,GAAG,iBAAO,CAAC,eAAe,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC,CAAC;gBACtG,SAAS,CAAC,UAAU,EAAE,CAAC;aACxB;SACF;IACH,CAAC;;AAxCH,kCAiEC;AAvBe,uBAAW,GAAY;;;;;;;;;;;;;;;;;;;;;;UAsB7B,CAAC"}
@@ -86,6 +86,14 @@ import { EVPowerTransformerEndInfo } from '../extensions/enervance/assetinfo/EVP
86
86
  import { EVTapChangerInfo } from '../extensions/enervance/assetinfo/EVTapChangerInfo';
87
87
  import { EVIndicator } from '../extensions/enervance/assets/EVIndicator';
88
88
  import { EVWireObject } from '../extensions/enervance/assets/EVWireObject';
89
+ import { SynchronousMachineTimeConstantReactance } from "../dynamics/standard-models/synchronous-machine-dynamics/SynchronousMachineTimeConstantReactance";
90
+ import { EquivalentInjection } from '../equivalents/EquivalentInjection';
91
+ import { PhaseTapChangerTabular } from '../wires/PhaseTapChangerTabular';
92
+ import { PhaseTapChangerTable } from '../wires/PhaseTapChangerTable';
93
+ import { PhaseTapChangerSymmetrical } from '../wires/PhaseTapChangerSymmetrical';
94
+ import { PhaseTapChangerAsymmetrical } from '../wires/PhaseTapChangerAsymmetrical';
95
+ import { PhaseTapChangerLinear } from '../wires/PhaseTapChangerLinear';
96
+ import { VoltageLimit } from '../operationallimits/VoltageLimit';
89
97
  export declare class Model {
90
98
  nodeBreaker: boolean;
91
99
  cimVersion: string;
@@ -112,6 +120,11 @@ export declare class Model {
112
120
  tapChangerControls: Map<string, TapChangerControl>;
113
121
  ratioTapChangers: Map<string, RatioTapChanger>;
114
122
  ratioTapChangerTables: Map<string, RatioTapChangerTable>;
123
+ phaseTapChangerTabular: Map<string, PhaseTapChangerTabular>;
124
+ phaseTapChangerLinear: Map<string, PhaseTapChangerLinear>;
125
+ phaseTapChangerTables: Map<string, PhaseTapChangerTable>;
126
+ phaseTapChangerSymmetrical: Map<string, PhaseTapChangerSymmetrical>;
127
+ phaseTapChangerAsymmetrical: Map<string, PhaseTapChangerAsymmetrical>;
115
128
  petersenCoils: Map<string, PetersenCoil>;
116
129
  groundingImpedances: Map<string, GroundingImpedance>;
117
130
  switches: Map<string, Switch>;
@@ -120,8 +133,10 @@ export declare class Model {
120
133
  loadBreakSwitches: Map<string, LoadBreakSwitch>;
121
134
  energySources: Map<string, EnergySource>;
122
135
  energyConsumers: Map<string, IEnergyConsumer>;
136
+ equivalentInjections: Map<string, EquivalentInjection>;
123
137
  externalNetworkInjections: Map<string, ExternalNetworkInjection>;
124
138
  synchronousMachine: Map<string, SynchronousMachine>;
139
+ synchronousMachineTimeConstantReactance: Map<string, SynchronousMachineTimeConstantReactance>;
125
140
  asynchronousMachine: Map<string, AsynchronousMachine>;
126
141
  loadAreas: Map<string, LoadArea>;
127
142
  subLoadAreas: Map<string, SubLoadArea>;
@@ -145,6 +160,7 @@ export declare class Model {
145
160
  operationalLimitSets: Map<string, OperationalLimitSet>;
146
161
  operationalLimitTypes: Map<string, OperationalLimitType>;
147
162
  currentLimits: Map<string, CurrentLimit>;
163
+ voltageLimits: Map<string, VoltageLimit>;
148
164
  svPowerFlow: Array<SvPowerFlow>;
149
165
  svVoltage: Array<SvVoltage>;
150
166
  svStatus: Array<SvStatus>;
@@ -208,6 +224,8 @@ export declare class Model {
208
224
  addOperationalLimitType(operationalLimitType: OperationalLimitType): void;
209
225
  getCurrentLimit(uuid: string): CurrentLimit | undefined;
210
226
  addCurrentLimit(currentLimit: CurrentLimit): void;
227
+ getVoltageLimit(uuid: string): VoltageLimit | undefined;
228
+ addVoltageLimit(voltageLimit: VoltageLimit): void;
211
229
  getRegulatingControl(uuid: string): RegulatingControl | undefined;
212
230
  addRegulatingControl(regulatingControl: RegulatingControl): void;
213
231
  getVoltageLevel(uuid: string): VoltageLevel | undefined;
@@ -270,12 +288,15 @@ export declare class Model {
270
288
  getSolarGeneratingUnit(uuid: string): SolarGeneratingUnit | undefined;
271
289
  getSynchronousMachine(uuid: string): SynchronousMachine | undefined;
272
290
  addSynchronousMachine(value: SynchronousMachine): void;
291
+ getSynchronousMachineTimeConstantReactance(uuid: string): SynchronousMachineTimeConstantReactance;
292
+ addSynchronousMachineTimeConstantReactance(value: SynchronousMachineTimeConstantReactance): void;
273
293
  getAsynchronousMachine(uuid: string): AsynchronousMachine | undefined;
274
294
  addAsynchronousMachine(value: AsynchronousMachine): void;
275
295
  addReactiveCapabilityCurve(value: ReactiveCapabilityCurve): void;
276
296
  getReactiveCapabilityCurve(uuid: string): ReactiveCapabilityCurve | undefined;
277
297
  getEnergySource(uuid: string): EnergySource | undefined;
278
298
  addEnergySource(value: EnergySource): void;
299
+ addEquivalentInjection(value: EquivalentInjection): void;
279
300
  getLoadArea(uuid: string): LoadArea | undefined;
280
301
  addLoadArea(value: LoadArea): void;
281
302
  getSubLoadArea(uuid: string): SubLoadArea | undefined;
@@ -347,20 +368,31 @@ export declare class Model {
347
368
  getSubGeographicalRegion(uuid: string): SubGeographicalRegion | undefined;
348
369
  addSubGeographicalRegion(value: SubGeographicalRegion): void;
349
370
  getObject(uuid: string): IdentifiedObject | undefined;
350
- private addObject;
371
+ protected addObject(object: IIdentifiedObject): void;
372
+ removeObject(object: IIdentifiedObject): void;
351
373
  private addDCObject;
352
374
  toJSON(data: Map<string, IIdentifiedObject>): any[];
353
375
  sortData(): void;
354
376
  clearModel(): void;
355
377
  purgeData(): void;
356
378
  serializeRDFXML(defaultValuesConfig: IDefaultValuesConfig): Map<string, string>;
357
- toCIMXML(xmlWriter: XMLWriter, modelEQUUID: string, profiles: string[], dependentModelUUIDs: string[], mas: string): void;
379
+ toCIMXML(xmlWriter: XMLWriter, modelEQUUID: string, profileUris: string[], dependentModelUUIDs: string[], mas: string): void;
358
380
  getTapChangerControl(uuid: string): TapChangerControl | undefined;
359
381
  addTapChangerControl(tapChangerControl: TapChangerControl): void;
360
382
  getRatioTapChanger(uuid: string): RatioTapChanger | undefined;
361
383
  addRatioTapChanger(ratioTapChanger: RatioTapChanger): void;
362
384
  getRatioTapChangerTable(uuid: string): RatioTapChangerTable | undefined;
363
385
  addRatioTapChangerTable(ratioTapChangerTable: RatioTapChangerTable): void;
386
+ getPhaseTapChangerTabular(uuid: string): PhaseTapChangerTabular | undefined;
387
+ addPhaseTapChangerTabular(phaseTapChanger: PhaseTapChangerTabular): void;
388
+ getPhaseTapChangerTable(uuid: string): PhaseTapChangerTable | undefined;
389
+ addPhaseTapChangerTable(phaseTapChangerTable: PhaseTapChangerTable): void;
390
+ getPhaseTapChangerLinear(uuid: string): PhaseTapChangerLinear | undefined;
391
+ addPhaseTapChangerLinear(phaseTapChanger: PhaseTapChangerLinear): void;
392
+ getPhaseTapChangerSymmetrical(uuid: string): PhaseTapChangerSymmetrical | undefined;
393
+ addPhaseTapChangerSymmetrical(phaseTapChangerSymmetrical: PhaseTapChangerSymmetrical): void;
394
+ getPhaseTapChangerAsymmetrical(uuid: string): PhaseTapChangerAsymmetrical | undefined;
395
+ addPhaseTapChangerAsymmetrical(phaseTapChangerAsymmetrical: PhaseTapChangerAsymmetrical): void;
364
396
  resolveParsedAssociations(): void;
365
397
  getCoordinateSystemByName(name: string): CoordinateSystem | undefined;
366
398
  getObjectByName(name: string, type?: string): IdentifiedObject | undefined;
@@ -39,6 +39,11 @@ class Model {
39
39
  this.tapChangerControls = new Map();
40
40
  this.ratioTapChangers = new Map();
41
41
  this.ratioTapChangerTables = new Map();
42
+ this.phaseTapChangerTabular = new Map();
43
+ this.phaseTapChangerLinear = new Map();
44
+ this.phaseTapChangerTables = new Map();
45
+ this.phaseTapChangerSymmetrical = new Map();
46
+ this.phaseTapChangerAsymmetrical = new Map();
42
47
  this.petersenCoils = new Map();
43
48
  this.groundingImpedances = new Map();
44
49
  this.switches = new Map();
@@ -47,8 +52,10 @@ class Model {
47
52
  this.loadBreakSwitches = new Map();
48
53
  this.energySources = new Map();
49
54
  this.energyConsumers = new Map();
55
+ this.equivalentInjections = new Map();
50
56
  this.externalNetworkInjections = new Map();
51
57
  this.synchronousMachine = new Map();
58
+ this.synchronousMachineTimeConstantReactance = new Map();
52
59
  this.asynchronousMachine = new Map();
53
60
  this.loadAreas = new Map();
54
61
  this.subLoadAreas = new Map();
@@ -72,6 +79,7 @@ class Model {
72
79
  this.operationalLimitSets = new Map();
73
80
  this.operationalLimitTypes = new Map();
74
81
  this.currentLimits = new Map();
82
+ this.voltageLimits = new Map();
75
83
  this.svPowerFlow = [];
76
84
  this.svVoltage = [];
77
85
  this.svStatus = [];
@@ -182,6 +190,13 @@ class Model {
182
190
  this.currentLimits.set(currentLimit.getUUID(), currentLimit);
183
191
  this.addObject(currentLimit);
184
192
  }
193
+ getVoltageLimit(uuid) {
194
+ return this.voltageLimits.get(uuid);
195
+ }
196
+ addVoltageLimit(voltageLimit) {
197
+ this.voltageLimits.set(voltageLimit.getUUID(), voltageLimit);
198
+ this.addObject(voltageLimit);
199
+ }
185
200
  getRegulatingControl(uuid) {
186
201
  return this.regulatingControl.get(uuid);
187
202
  }
@@ -230,7 +245,6 @@ class Model {
230
245
  this.curveData.push(curveData);
231
246
  }
232
247
  addDiagramObjectPoint(diagramObjectPoint) {
233
- ;
234
248
  this.diagramObjectPonts.push(diagramObjectPoint);
235
249
  this.addObject(diagramObjectPoint);
236
250
  }
@@ -442,6 +456,13 @@ class Model {
442
456
  this.synchronousMachine.set(value.getUUID(), value);
443
457
  this.addObject(value);
444
458
  }
459
+ getSynchronousMachineTimeConstantReactance(uuid) {
460
+ return this.synchronousMachineTimeConstantReactance.get(uuid);
461
+ }
462
+ addSynchronousMachineTimeConstantReactance(value) {
463
+ this.synchronousMachineTimeConstantReactance.set(value.mrid, value);
464
+ this.addObject(value);
465
+ }
445
466
  getAsynchronousMachine(uuid) {
446
467
  return this.asynchronousMachine.get(uuid);
447
468
  }
@@ -463,6 +484,10 @@ class Model {
463
484
  this.energySources.set(value.getUUID(), value);
464
485
  this.addObject(value);
465
486
  }
487
+ addEquivalentInjection(value) {
488
+ this.equivalentInjections.set(value.getUUID(), value);
489
+ this.addObject(value);
490
+ }
466
491
  getLoadArea(uuid) {
467
492
  return this.loadAreas.get(uuid);
468
493
  }
@@ -734,6 +759,10 @@ class Model {
734
759
  addObject(object) {
735
760
  this.objects.set(object.getUUID(), object);
736
761
  }
762
+ removeObject(object) {
763
+ this.objects.delete(object.getUUID());
764
+ this.dcObjects.delete(object.getUUID());
765
+ }
737
766
  addDCObject(object) {
738
767
  this.dcObjects.set(object.getUUID(), object);
739
768
  }
@@ -804,6 +833,11 @@ class Model {
804
833
  this.tapChangerControls.clear();
805
834
  this.ratioTapChangers.clear();
806
835
  this.ratioTapChangerTables.clear();
836
+ this.phaseTapChangerTabular.clear();
837
+ this.phaseTapChangerLinear.clear();
838
+ this.phaseTapChangerTables.clear();
839
+ this.phaseTapChangerSymmetrical.clear();
840
+ this.phaseTapChangerAsymmetrical.clear();
807
841
  this.petersenCoils.clear();
808
842
  this.switches.clear();
809
843
  this.breakers.clear();
@@ -873,23 +907,23 @@ class Model {
873
907
  const rdfXmlSerializer = new xml_serializer_1.RdfXmlSerializer(this, defaultValuesConfig);
874
908
  return rdfXmlSerializer.exportCGMES();
875
909
  }
876
- toCIMXML(xmlWriter, modelEQUUID, profiles, dependentModelUUIDs, mas) {
910
+ toCIMXML(xmlWriter, modelEQUUID, profileUris, dependentModelUUIDs, mas) {
877
911
  const dateTime = new Date().toJSON().slice(0, 19);
878
912
  xmlWriter.startElementNS(rdf_xml_1.RDF_XML.MD_NS_PREFIX, 'FullModel', rdf_xml_1.RDF_XML.MD_NS);
879
- utils_1.writeElementAttribute(xmlWriter, rdf_xml_1.RDF_XML.RDF_ABOUT, 'urn:uuid:' + modelEQUUID);
880
- utils_1.writeElement(xmlWriter, `${rdf_xml_1.RDF_XML.MD_NS_PREFIX}:Model.created`, dateTime);
881
- utils_1.writeElement(xmlWriter, `${rdf_xml_1.RDF_XML.MD_NS_PREFIX}:Model.description`, dateTime);
882
- utils_1.writeElement(xmlWriter, `${rdf_xml_1.RDF_XML.MD_NS_PREFIX}:Model.version`, '1');
883
- utils_1.writeElement(xmlWriter, `${rdf_xml_1.RDF_XML.MD_NS_PREFIX}:Model.modelingAuthoritySet`, mas);
884
- if (dependentModelUUIDs && dependentModelUUIDs.length > 0) {
913
+ xml_serializer_1.writeElementAttribute(xmlWriter, rdf_xml_1.RDF_XML.RDF_ABOUT, 'urn:uuid:' + modelEQUUID);
914
+ xml_serializer_1.writeElement(xmlWriter, `${rdf_xml_1.RDF_XML.MD_NS_PREFIX}:Model.created`, dateTime);
915
+ xml_serializer_1.writeElement(xmlWriter, `${rdf_xml_1.RDF_XML.MD_NS_PREFIX}:Model.description`, dateTime);
916
+ xml_serializer_1.writeElement(xmlWriter, `${rdf_xml_1.RDF_XML.MD_NS_PREFIX}:Model.version`, '1');
917
+ xml_serializer_1.writeElement(xmlWriter, `${rdf_xml_1.RDF_XML.MD_NS_PREFIX}:Model.modelingAuthoritySet`, mas);
918
+ if (dependentModelUUIDs.length) {
885
919
  for (const dependentModelUUID of dependentModelUUIDs) {
886
920
  xmlWriter.startElementNS(rdf_xml_1.RDF_XML.MD_NS_PREFIX, 'Model.DependentOn', rdf_xml_1.RDF_XML.MD_NS);
887
- utils_1.writeElementAttribute(xmlWriter, rdf_xml_1.RDF_XML.RDF_RESRC, `urn:uuid:${dependentModelUUID}`);
921
+ xml_serializer_1.writeElementAttribute(xmlWriter, rdf_xml_1.RDF_XML.RDF_RESRC, `urn:uuid:${dependentModelUUID}`);
888
922
  xmlWriter.endElement();
889
923
  }
890
924
  }
891
- for (const profileName of profiles) {
892
- utils_1.writeElement(xmlWriter, `${rdf_xml_1.RDF_XML.MD_NS_PREFIX}:Model.profile`, profileName);
925
+ for (const profileUri of profileUris) {
926
+ xml_serializer_1.writeElement(xmlWriter, `${rdf_xml_1.RDF_XML.MD_NS_PREFIX}:Model.profile`, profileUri);
893
927
  }
894
928
  xmlWriter.endElement();
895
929
  }
@@ -914,9 +948,49 @@ class Model {
914
948
  this.ratioTapChangerTables.set(ratioTapChangerTable.getUUID(), ratioTapChangerTable);
915
949
  this.addObject(ratioTapChangerTable);
916
950
  }
951
+ getPhaseTapChangerTabular(uuid) {
952
+ return this.phaseTapChangerTabular.get(uuid);
953
+ }
954
+ addPhaseTapChangerTabular(phaseTapChanger) {
955
+ this.phaseTapChangerTabular.set(phaseTapChanger.getUUID(), phaseTapChanger);
956
+ this.addObject(phaseTapChanger);
957
+ }
958
+ getPhaseTapChangerTable(uuid) {
959
+ return this.phaseTapChangerTables.get(uuid);
960
+ }
961
+ addPhaseTapChangerTable(phaseTapChangerTable) {
962
+ this.phaseTapChangerTables.set(phaseTapChangerTable.getUUID(), phaseTapChangerTable);
963
+ this.addObject(phaseTapChangerTable);
964
+ }
965
+ getPhaseTapChangerLinear(uuid) {
966
+ return this.phaseTapChangerLinear.get(uuid);
967
+ }
968
+ addPhaseTapChangerLinear(phaseTapChanger) {
969
+ this.phaseTapChangerLinear.set(phaseTapChanger.getUUID(), phaseTapChanger);
970
+ this.addObject(phaseTapChanger);
971
+ }
972
+ getPhaseTapChangerSymmetrical(uuid) {
973
+ return this.phaseTapChangerSymmetrical.get(uuid);
974
+ }
975
+ addPhaseTapChangerSymmetrical(phaseTapChangerSymmetrical) {
976
+ this.phaseTapChangerSymmetrical.set(phaseTapChangerSymmetrical.getUUID(), phaseTapChangerSymmetrical);
977
+ this.addObject(phaseTapChangerSymmetrical);
978
+ }
979
+ getPhaseTapChangerAsymmetrical(uuid) {
980
+ return this.phaseTapChangerAsymmetrical.get(uuid);
981
+ }
982
+ addPhaseTapChangerAsymmetrical(phaseTapChangerAsymmetrical) {
983
+ this.phaseTapChangerAsymmetrical.set(phaseTapChangerAsymmetrical.getUUID(), phaseTapChangerAsymmetrical);
984
+ this.addObject(phaseTapChangerAsymmetrical);
985
+ }
917
986
  resolveParsedAssociations() {
918
987
  this.objects.forEach((cimInstance) => {
919
- cimInstance.resolveParsedAssociations(this);
988
+ try {
989
+ cimInstance.resolveParsedAssociations(this);
990
+ }
991
+ catch (err) {
992
+ console.log('Error resolveParsedAssociations', err);
993
+ }
920
994
  });
921
995
  this.dcObjects.forEach((cimInstance) => {
922
996
  cimInstance.resolveParsedAssociations(this);
@@ -1 +1 @@
1
- {"version":3,"file":"Model.js","sourceRoot":"","sources":["../../../src/model/model/Model.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Model.js","sourceRoot":"","sources":["../../../src/model/model/Model.ts"],"names":[],"mappings":"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"}