@finos/legend-graph 4.0.1 → 5.0.0

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 (470) hide show
  1. package/lib/DSLMapping_Exports.d.ts +1 -0
  2. package/lib/DSLMapping_Exports.d.ts.map +1 -1
  3. package/lib/DSLMapping_Exports.js +1 -0
  4. package/lib/DSLMapping_Exports.js.map +1 -1
  5. package/lib/GraphManagerState.d.ts.map +1 -1
  6. package/lib/GraphManagerState.js +2 -1
  7. package/lib/GraphManagerState.js.map +1 -1
  8. package/lib/GraphManagerTestUtils.js +1 -1
  9. package/lib/GraphManagerTestUtils.js.map +1 -1
  10. package/lib/MetaModelConst.d.ts +2 -1
  11. package/lib/MetaModelConst.d.ts.map +1 -1
  12. package/lib/MetaModelConst.js +5 -3
  13. package/lib/MetaModelConst.js.map +1 -1
  14. package/lib/MetaModelUtils.d.ts +1 -0
  15. package/lib/MetaModelUtils.d.ts.map +1 -1
  16. package/lib/MetaModelUtils.js +1 -0
  17. package/lib/MetaModelUtils.js.map +1 -1
  18. package/lib/graph/BasicModel.d.ts +39 -25
  19. package/lib/graph/BasicModel.d.ts.map +1 -1
  20. package/lib/graph/BasicModel.js +107 -54
  21. package/lib/graph/BasicModel.js.map +1 -1
  22. package/lib/graph/DependencyManager.d.ts +22 -24
  23. package/lib/graph/DependencyManager.d.ts.map +1 -1
  24. package/lib/graph/DependencyManager.js +88 -55
  25. package/lib/graph/DependencyManager.js.map +1 -1
  26. package/lib/graph/PureGraphPlugin.d.ts +4 -0
  27. package/lib/graph/PureGraphPlugin.d.ts.map +1 -1
  28. package/lib/graph/PureGraphPlugin.js +4 -0
  29. package/lib/graph/PureGraphPlugin.js.map +1 -1
  30. package/lib/graph/PureModel.d.ts +18 -16
  31. package/lib/graph/PureModel.d.ts.map +1 -1
  32. package/lib/graph/PureModel.js +75 -108
  33. package/lib/graph/PureModel.js.map +1 -1
  34. package/lib/graphManager/AbstractPureGraphManager.d.ts +9 -5
  35. package/lib/graphManager/AbstractPureGraphManager.d.ts.map +1 -1
  36. package/lib/graphManager/AbstractPureGraphManager.js.map +1 -1
  37. package/lib/graphManager/DSLExternalFormat_GraphManagerHelper.d.ts +3 -0
  38. package/lib/graphManager/DSLExternalFormat_GraphManagerHelper.d.ts.map +1 -1
  39. package/lib/graphManager/DSLExternalFormat_GraphManagerHelper.js +4 -2
  40. package/lib/graphManager/DSLExternalFormat_GraphManagerHelper.js.map +1 -1
  41. package/lib/graphManager/PureGraphManagerPlugin.d.ts +4 -0
  42. package/lib/graphManager/PureGraphManagerPlugin.d.ts.map +1 -1
  43. package/lib/graphManager/PureGraphManagerPlugin.js +4 -0
  44. package/lib/graphManager/PureGraphManagerPlugin.js.map +1 -1
  45. package/lib/graphManager/action/TEMPORARY__AbstractEngineConfig.d.ts +4 -0
  46. package/lib/graphManager/action/TEMPORARY__AbstractEngineConfig.d.ts.map +1 -1
  47. package/lib/graphManager/action/TEMPORARY__AbstractEngineConfig.js +4 -0
  48. package/lib/graphManager/action/TEMPORARY__AbstractEngineConfig.js.map +1 -1
  49. package/lib/graphManager/action/changeDetection/DSLMapping_ObserverHelper.d.ts.map +1 -1
  50. package/lib/graphManager/action/changeDetection/DSLMapping_ObserverHelper.js +0 -5
  51. package/lib/graphManager/action/changeDetection/DSLMapping_ObserverHelper.js.map +1 -1
  52. package/lib/graphManager/action/changeDetection/DomainObserverHelper.d.ts +1 -1
  53. package/lib/graphManager/action/changeDetection/DomainObserverHelper.d.ts.map +1 -1
  54. package/lib/graphManager/action/changeDetection/DomainObserverHelper.js +9 -8
  55. package/lib/graphManager/action/changeDetection/DomainObserverHelper.js.map +1 -1
  56. package/lib/graphManager/action/changeDetection/GraphObserverHelper.d.ts +1 -1
  57. package/lib/graphManager/action/changeDetection/GraphObserverHelper.d.ts.map +1 -1
  58. package/lib/graphManager/action/changeDetection/GraphObserverHelper.js +3 -5
  59. package/lib/graphManager/action/changeDetection/GraphObserverHelper.js.map +1 -1
  60. package/lib/graphManager/action/changeDetection/PackageableElementObserver.d.ts +1 -1
  61. package/lib/graphManager/action/changeDetection/PackageableElementObserver.d.ts.map +1 -1
  62. package/lib/graphManager/action/changeDetection/PackageableElementObserver.js +1 -1
  63. package/lib/graphManager/action/changeDetection/PackageableElementObserver.js.map +1 -1
  64. package/lib/graphManager/action/changeDetection/RawValueSpecificationObserver.d.ts +2 -2
  65. package/lib/graphManager/action/changeDetection/RawValueSpecificationObserver.d.ts.map +1 -1
  66. package/lib/graphManager/action/changeDetection/RawValueSpecificationObserver.js +6 -5
  67. package/lib/graphManager/action/changeDetection/RawValueSpecificationObserver.js.map +1 -1
  68. package/lib/graphManager/action/changeDetection/StoreFlatData_ObserverHelper.d.ts.map +1 -1
  69. package/lib/graphManager/action/changeDetection/StoreFlatData_ObserverHelper.js +2 -6
  70. package/lib/graphManager/action/changeDetection/StoreFlatData_ObserverHelper.js.map +1 -1
  71. package/lib/graphManager/action/changeDetection/StoreRelational_ObserverHelper.d.ts.map +1 -1
  72. package/lib/graphManager/action/changeDetection/StoreRelational_ObserverHelper.js +0 -2
  73. package/lib/graphManager/action/changeDetection/StoreRelational_ObserverHelper.js.map +1 -1
  74. package/lib/graphManager/action/changeDetection/ValueSpecificationObserver.d.ts +7 -6
  75. package/lib/graphManager/action/changeDetection/ValueSpecificationObserver.d.ts.map +1 -1
  76. package/lib/graphManager/action/changeDetection/ValueSpecificationObserver.js +153 -32
  77. package/lib/graphManager/action/changeDetection/ValueSpecificationObserver.js.map +1 -1
  78. package/lib/graphManager/action/execution/ExecutionResult.d.ts +1 -1
  79. package/lib/graphManager/action/execution/ExecutionResult.d.ts.map +1 -1
  80. package/lib/graphManager/action/execution/ExecutionResult.js.map +1 -1
  81. package/lib/helpers/DomainHelper.d.ts +7 -3
  82. package/lib/helpers/DomainHelper.d.ts.map +1 -1
  83. package/lib/helpers/DomainHelper.js +78 -5
  84. package/lib/helpers/DomainHelper.js.map +1 -1
  85. package/lib/helpers/MappingHelper.d.ts.map +1 -1
  86. package/lib/helpers/MappingHelper.js +2 -2
  87. package/lib/helpers/MappingHelper.js.map +1 -1
  88. package/lib/index.d.ts +5 -0
  89. package/lib/index.d.ts.map +1 -1
  90. package/lib/index.js +5 -0
  91. package/lib/index.js.map +1 -1
  92. package/lib/models/metamodels/pure/packageableElements/PackageableElement.d.ts +1 -7
  93. package/lib/models/metamodels/pure/packageableElements/PackageableElement.d.ts.map +1 -1
  94. package/lib/models/metamodels/pure/packageableElements/PackageableElement.js +2 -8
  95. package/lib/models/metamodels/pure/packageableElements/PackageableElement.js.map +1 -1
  96. package/lib/models/metamodels/pure/packageableElements/domain/Association.d.ts +3 -3
  97. package/lib/models/metamodels/pure/packageableElements/domain/Association.js +3 -3
  98. package/lib/models/metamodels/pure/packageableElements/domain/Class.d.ts.map +1 -1
  99. package/lib/models/metamodels/pure/packageableElements/domain/Class.js +2 -0
  100. package/lib/models/metamodels/pure/packageableElements/domain/Class.js.map +1 -1
  101. package/lib/models/metamodels/pure/packageableElements/domain/Package.d.ts +0 -7
  102. package/lib/models/metamodels/pure/packageableElements/domain/Package.d.ts.map +1 -1
  103. package/lib/models/metamodels/pure/packageableElements/domain/Package.js +1 -32
  104. package/lib/models/metamodels/pure/packageableElements/domain/Package.js.map +1 -1
  105. package/lib/models/metamodels/pure/packageableElements/mapping/AssociationImplementation.d.ts +2 -3
  106. package/lib/models/metamodels/pure/packageableElements/mapping/AssociationImplementation.d.ts.map +1 -1
  107. package/lib/models/metamodels/pure/packageableElements/mapping/AssociationImplementation.js +1 -12
  108. package/lib/models/metamodels/pure/packageableElements/mapping/AssociationImplementation.js.map +1 -1
  109. package/lib/models/metamodels/pure/packageableElements/mapping/EnumerationMapping.d.ts +2 -3
  110. package/lib/models/metamodels/pure/packageableElements/mapping/EnumerationMapping.d.ts.map +1 -1
  111. package/lib/models/metamodels/pure/packageableElements/mapping/EnumerationMapping.js +0 -11
  112. package/lib/models/metamodels/pure/packageableElements/mapping/EnumerationMapping.js.map +1 -1
  113. package/lib/models/metamodels/pure/packageableElements/mapping/InputData.d.ts +0 -1
  114. package/lib/models/metamodels/pure/packageableElements/mapping/InputData.d.ts.map +1 -1
  115. package/lib/models/metamodels/pure/packageableElements/mapping/InputData.js +0 -1
  116. package/lib/models/metamodels/pure/packageableElements/mapping/InputData.js.map +1 -1
  117. package/lib/models/metamodels/pure/packageableElements/mapping/Mapping.d.ts +0 -5
  118. package/lib/models/metamodels/pure/packageableElements/mapping/Mapping.d.ts.map +1 -1
  119. package/lib/models/metamodels/pure/packageableElements/mapping/MappingTestAssert.d.ts +0 -1
  120. package/lib/models/metamodels/pure/packageableElements/mapping/MappingTestAssert.d.ts.map +1 -1
  121. package/lib/models/metamodels/pure/packageableElements/mapping/MappingTestAssert.js +0 -1
  122. package/lib/models/metamodels/pure/packageableElements/mapping/MappingTestAssert.js.map +1 -1
  123. package/lib/models/metamodels/pure/packageableElements/mapping/OperationSetImplementation.d.ts.map +1 -1
  124. package/lib/models/metamodels/pure/packageableElements/mapping/OperationSetImplementation.js +1 -0
  125. package/lib/models/metamodels/pure/packageableElements/mapping/OperationSetImplementation.js.map +1 -1
  126. package/lib/models/metamodels/pure/packageableElements/mapping/SetImplementation.d.ts +7 -21
  127. package/lib/models/metamodels/pure/packageableElements/mapping/SetImplementation.d.ts.map +1 -1
  128. package/lib/models/metamodels/pure/packageableElements/mapping/SetImplementation.js +3 -37
  129. package/lib/models/metamodels/pure/packageableElements/mapping/SetImplementation.js.map +1 -1
  130. package/lib/models/metamodels/pure/packageableElements/mapping/TEMPORARY__UnresolvedSetImplementation.d.ts +32 -0
  131. package/lib/models/metamodels/pure/packageableElements/mapping/TEMPORARY__UnresolvedSetImplementation.d.ts.map +1 -0
  132. package/lib/models/metamodels/pure/packageableElements/mapping/TEMPORARY__UnresolvedSetImplementation.js +40 -0
  133. package/lib/models/metamodels/pure/packageableElements/mapping/TEMPORARY__UnresolvedSetImplementation.js.map +1 -0
  134. package/lib/models/metamodels/pure/packageableElements/section/Section.d.ts +1 -5
  135. package/lib/models/metamodels/pure/packageableElements/section/Section.d.ts.map +1 -1
  136. package/lib/models/metamodels/pure/packageableElements/section/Section.js +0 -5
  137. package/lib/models/metamodels/pure/packageableElements/section/Section.js.map +1 -1
  138. package/lib/models/metamodels/pure/packageableElements/service/ServiceExecution.d.ts +0 -1
  139. package/lib/models/metamodels/pure/packageableElements/service/ServiceExecution.d.ts.map +1 -1
  140. package/lib/models/metamodels/pure/packageableElements/service/ServiceExecution.js +0 -1
  141. package/lib/models/metamodels/pure/packageableElements/service/ServiceExecution.js.map +1 -1
  142. package/lib/models/metamodels/pure/packageableElements/store/flatData/mapping/EmbeddedFlatDataPropertyMapping.d.ts +4 -4
  143. package/lib/models/metamodels/pure/packageableElements/store/flatData/mapping/EmbeddedFlatDataPropertyMapping.d.ts.map +1 -1
  144. package/lib/models/metamodels/pure/packageableElements/store/flatData/mapping/EmbeddedFlatDataPropertyMapping.js +3 -12
  145. package/lib/models/metamodels/pure/packageableElements/store/flatData/mapping/EmbeddedFlatDataPropertyMapping.js.map +1 -1
  146. package/lib/models/metamodels/pure/packageableElements/store/flatData/mapping/FlatDataInstanceSetImplementation.d.ts.map +1 -1
  147. package/lib/models/metamodels/pure/packageableElements/store/flatData/mapping/FlatDataInstanceSetImplementation.js +2 -2
  148. package/lib/models/metamodels/pure/packageableElements/store/flatData/mapping/FlatDataInstanceSetImplementation.js.map +1 -1
  149. package/lib/models/metamodels/pure/packageableElements/store/flatData/model/FlatDataDataType.d.ts +1 -1
  150. package/lib/models/metamodels/pure/packageableElements/store/flatData/model/FlatDataDataType.js +1 -1
  151. package/lib/models/metamodels/pure/packageableElements/store/relational/connection/AuthenticationStrategy.d.ts +0 -1
  152. package/lib/models/metamodels/pure/packageableElements/store/relational/connection/AuthenticationStrategy.d.ts.map +1 -1
  153. package/lib/models/metamodels/pure/packageableElements/store/relational/connection/AuthenticationStrategy.js +0 -1
  154. package/lib/models/metamodels/pure/packageableElements/store/relational/connection/AuthenticationStrategy.js.map +1 -1
  155. package/lib/models/metamodels/pure/packageableElements/store/relational/connection/DatasourceSpecification.d.ts +0 -1
  156. package/lib/models/metamodels/pure/packageableElements/store/relational/connection/DatasourceSpecification.d.ts.map +1 -1
  157. package/lib/models/metamodels/pure/packageableElements/store/relational/connection/DatasourceSpecification.js +0 -1
  158. package/lib/models/metamodels/pure/packageableElements/store/relational/connection/DatasourceSpecification.js.map +1 -1
  159. package/lib/models/metamodels/pure/packageableElements/store/relational/connection/RelationalDatabaseConnection.d.ts.map +1 -1
  160. package/lib/models/metamodels/pure/packageableElements/store/relational/connection/RelationalDatabaseConnection.js +2 -0
  161. package/lib/models/metamodels/pure/packageableElements/store/relational/connection/RelationalDatabaseConnection.js.map +1 -1
  162. package/lib/models/metamodels/pure/packageableElements/store/relational/mapping/EmbeddedRelationalInstanceSetImplementation.d.ts +4 -4
  163. package/lib/models/metamodels/pure/packageableElements/store/relational/mapping/EmbeddedRelationalInstanceSetImplementation.d.ts.map +1 -1
  164. package/lib/models/metamodels/pure/packageableElements/store/relational/mapping/EmbeddedRelationalInstanceSetImplementation.js +2 -7
  165. package/lib/models/metamodels/pure/packageableElements/store/relational/mapping/EmbeddedRelationalInstanceSetImplementation.js.map +1 -1
  166. package/lib/models/metamodels/pure/packageableElements/store/relational/mapping/RelationalInstanceSetImplementation.d.ts.map +1 -1
  167. package/lib/models/metamodels/pure/packageableElements/store/relational/mapping/RelationalInstanceSetImplementation.js +2 -2
  168. package/lib/models/metamodels/pure/packageableElements/store/relational/mapping/RelationalInstanceSetImplementation.js.map +1 -1
  169. package/lib/models/metamodels/pure/packageableElements/store/relational/model/RelationalOperationElement.d.ts +0 -1
  170. package/lib/models/metamodels/pure/packageableElements/store/relational/model/RelationalOperationElement.d.ts.map +1 -1
  171. package/lib/models/metamodels/pure/packageableElements/store/relational/model/RelationalOperationElement.js +1 -3
  172. package/lib/models/metamodels/pure/packageableElements/store/relational/model/RelationalOperationElement.js.map +1 -1
  173. package/lib/models/metamodels/pure/packageableElements/store/relational/model/Table.d.ts.map +1 -1
  174. package/lib/models/metamodels/pure/packageableElements/store/relational/model/Table.js +4 -2
  175. package/lib/models/metamodels/pure/packageableElements/store/relational/model/Table.js.map +1 -1
  176. package/lib/models/metamodels/pure/packageableElements/store/relational/model/View.d.ts.map +1 -1
  177. package/lib/models/metamodels/pure/packageableElements/store/relational/model/View.js +4 -2
  178. package/lib/models/metamodels/pure/packageableElements/store/relational/model/View.js.map +1 -1
  179. package/lib/models/metamodels/pure/packageableElements/store/relational/model/milestoning/Milestoning.d.ts +2 -2
  180. package/lib/models/metamodels/pure/packageableElements/store/relational/model/milestoning/Milestoning.d.ts.map +1 -1
  181. package/lib/models/metamodels/pure/packageableElements/store/relational/model/milestoning/Milestoning.js.map +1 -1
  182. package/lib/models/metamodels/pure/rawValueSpecification/{RawInstanceValue.d.ts → RawPrimitiveInstanceValue.d.ts} +2 -2
  183. package/lib/models/metamodels/pure/rawValueSpecification/RawPrimitiveInstanceValue.d.ts.map +1 -0
  184. package/lib/models/metamodels/pure/rawValueSpecification/{RawInstanceValue.js → RawPrimitiveInstanceValue.js} +3 -3
  185. package/lib/models/metamodels/pure/rawValueSpecification/RawPrimitiveInstanceValue.js.map +1 -0
  186. package/lib/models/metamodels/pure/rawValueSpecification/RawValueSpecification.d.ts +2 -2
  187. package/lib/models/metamodels/pure/rawValueSpecification/RawValueSpecification.d.ts.map +1 -1
  188. package/lib/models/metamodels/pure/rawValueSpecification/RawValueSpecification.js.map +1 -1
  189. package/lib/models/metamodels/pure/valueSpecification/InstanceValue.js +2 -2
  190. package/lib/models/metamodels/pure/valueSpecification/InstanceValue.js.map +1 -1
  191. package/lib/models/metamodels/pure/valueSpecification/ValueSpecification.d.ts +1 -1
  192. package/lib/models/metamodels/pure/valueSpecification/ValueSpecification.d.ts.map +1 -1
  193. package/lib/models/protocols/pure/DSLExternalFormat_PureProtocolProcessorPlugin.d.ts.map +1 -1
  194. package/lib/models/protocols/pure/DSLExternalFormat_PureProtocolProcessorPlugin.js +8 -7
  195. package/lib/models/protocols/pure/DSLExternalFormat_PureProtocolProcessorPlugin.js.map +1 -1
  196. package/lib/models/protocols/pure/PureProtocolProcessorPlugin.d.ts +4 -0
  197. package/lib/models/protocols/pure/PureProtocolProcessorPlugin.d.ts.map +1 -1
  198. package/lib/models/protocols/pure/PureProtocolProcessorPlugin.js +4 -0
  199. package/lib/models/protocols/pure/PureProtocolProcessorPlugin.js.map +1 -1
  200. package/lib/models/protocols/pure/v1/V1_Core_SystemModels.json +2 -2
  201. package/lib/models/protocols/pure/v1/V1_PureGraphManager.d.ts +5 -4
  202. package/lib/models/protocols/pure/v1/V1_PureGraphManager.d.ts.map +1 -1
  203. package/lib/models/protocols/pure/v1/V1_PureGraphManager.js +74 -52
  204. package/lib/models/protocols/pure/v1/V1_PureGraphManager.js.map +1 -1
  205. package/lib/models/protocols/pure/v1/engine/V1_Engine.js +3 -3
  206. package/lib/models/protocols/pure/v1/engine/V1_Engine.js.map +1 -1
  207. package/lib/models/protocols/pure/v1/engine/V1_EngineServerClient.d.ts.map +1 -1
  208. package/lib/models/protocols/pure/v1/model/packageableElements/V1_PackageableElement.d.ts +0 -1
  209. package/lib/models/protocols/pure/v1/model/packageableElements/V1_PackageableElement.d.ts.map +1 -1
  210. package/lib/models/protocols/pure/v1/model/packageableElements/V1_PackageableElement.js +1 -1
  211. package/lib/models/protocols/pure/v1/model/packageableElements/V1_PackageableElement.js.map +1 -1
  212. package/lib/models/protocols/pure/v1/model/packageableElements/connection/V1_Connection.d.ts +0 -9
  213. package/lib/models/protocols/pure/v1/model/packageableElements/connection/V1_Connection.d.ts.map +1 -1
  214. package/lib/models/protocols/pure/v1/model/packageableElements/connection/V1_Connection.js +0 -10
  215. package/lib/models/protocols/pure/v1/model/packageableElements/connection/V1_Connection.js.map +1 -1
  216. package/lib/models/protocols/pure/v1/model/packageableElements/mapping/V1_InputData.d.ts +0 -1
  217. package/lib/models/protocols/pure/v1/model/packageableElements/mapping/V1_InputData.d.ts.map +1 -1
  218. package/lib/models/protocols/pure/v1/model/packageableElements/mapping/V1_InputData.js +0 -1
  219. package/lib/models/protocols/pure/v1/model/packageableElements/mapping/V1_InputData.js.map +1 -1
  220. package/lib/models/protocols/pure/v1/model/packageableElements/mapping/V1_MappingTestAssert.d.ts +0 -1
  221. package/lib/models/protocols/pure/v1/model/packageableElements/mapping/V1_MappingTestAssert.d.ts.map +1 -1
  222. package/lib/models/protocols/pure/v1/model/packageableElements/mapping/V1_MappingTestAssert.js +0 -1
  223. package/lib/models/protocols/pure/v1/model/packageableElements/mapping/V1_MappingTestAssert.js.map +1 -1
  224. package/lib/models/protocols/pure/v1/model/packageableElements/service/V1_ServiceExecution.d.ts +0 -5
  225. package/lib/models/protocols/pure/v1/model/packageableElements/service/V1_ServiceExecution.d.ts.map +1 -1
  226. package/lib/models/protocols/pure/v1/model/packageableElements/service/V1_ServiceExecution.js +0 -6
  227. package/lib/models/protocols/pure/v1/model/packageableElements/service/V1_ServiceExecution.js.map +1 -1
  228. package/lib/models/protocols/pure/v1/model/packageableElements/service/V1_ServiceTest.d.ts +0 -1
  229. package/lib/models/protocols/pure/v1/model/packageableElements/service/V1_ServiceTest.d.ts.map +1 -1
  230. package/lib/models/protocols/pure/v1/model/packageableElements/service/V1_ServiceTest.js +0 -1
  231. package/lib/models/protocols/pure/v1/model/packageableElements/service/V1_ServiceTest.js.map +1 -1
  232. package/lib/models/protocols/pure/v1/model/packageableElements/store/flatData/model/V1_FlatDataDataType.d.ts +0 -1
  233. package/lib/models/protocols/pure/v1/model/packageableElements/store/flatData/model/V1_FlatDataDataType.d.ts.map +1 -1
  234. package/lib/models/protocols/pure/v1/model/packageableElements/store/flatData/model/V1_FlatDataDataType.js +0 -1
  235. package/lib/models/protocols/pure/v1/model/packageableElements/store/flatData/model/V1_FlatDataDataType.js.map +1 -1
  236. package/lib/models/protocols/pure/v1/model/packageableElements/store/relational/connection/V1_AuthenticationStrategy.d.ts +0 -1
  237. package/lib/models/protocols/pure/v1/model/packageableElements/store/relational/connection/V1_AuthenticationStrategy.d.ts.map +1 -1
  238. package/lib/models/protocols/pure/v1/model/packageableElements/store/relational/connection/V1_AuthenticationStrategy.js +0 -1
  239. package/lib/models/protocols/pure/v1/model/packageableElements/store/relational/connection/V1_AuthenticationStrategy.js.map +1 -1
  240. package/lib/models/protocols/pure/v1/model/packageableElements/store/relational/connection/V1_DatasourceSpecification.d.ts +0 -10
  241. package/lib/models/protocols/pure/v1/model/packageableElements/store/relational/connection/V1_DatasourceSpecification.d.ts.map +1 -1
  242. package/lib/models/protocols/pure/v1/model/packageableElements/store/relational/connection/V1_DatasourceSpecification.js +0 -11
  243. package/lib/models/protocols/pure/v1/model/packageableElements/store/relational/connection/V1_DatasourceSpecification.js.map +1 -1
  244. package/lib/models/protocols/pure/v1/model/packageableElements/store/relational/connection/V1_RelationalDatabaseConnection.d.ts.map +1 -1
  245. package/lib/models/protocols/pure/v1/model/packageableElements/store/relational/connection/V1_RelationalDatabaseConnection.js +2 -0
  246. package/lib/models/protocols/pure/v1/model/packageableElements/store/relational/connection/V1_RelationalDatabaseConnection.js.map +1 -1
  247. package/lib/models/protocols/pure/v1/model/packageableElements/store/relational/connection/postprocessor/V1_PostProcessor.d.ts +0 -1
  248. package/lib/models/protocols/pure/v1/model/packageableElements/store/relational/connection/postprocessor/V1_PostProcessor.d.ts.map +1 -1
  249. package/lib/models/protocols/pure/v1/model/packageableElements/store/relational/connection/postprocessor/V1_PostProcessor.js +0 -1
  250. package/lib/models/protocols/pure/v1/model/packageableElements/store/relational/connection/postprocessor/V1_PostProcessor.js.map +1 -1
  251. package/lib/models/protocols/pure/v1/model/packageableElements/store/relational/model/V1_RelationalDataType.d.ts +0 -1
  252. package/lib/models/protocols/pure/v1/model/packageableElements/store/relational/model/V1_RelationalDataType.d.ts.map +1 -1
  253. package/lib/models/protocols/pure/v1/model/packageableElements/store/relational/model/V1_RelationalDataType.js +0 -1
  254. package/lib/models/protocols/pure/v1/model/packageableElements/store/relational/model/V1_RelationalDataType.js.map +1 -1
  255. package/lib/models/protocols/pure/v1/model/packageableElements/store/relational/model/V1_RelationalOperationElement.d.ts +0 -1
  256. package/lib/models/protocols/pure/v1/model/packageableElements/store/relational/model/V1_RelationalOperationElement.d.ts.map +1 -1
  257. package/lib/models/protocols/pure/v1/model/packageableElements/store/relational/model/V1_RelationalOperationElement.js +0 -1
  258. package/lib/models/protocols/pure/v1/model/packageableElements/store/relational/model/V1_RelationalOperationElement.js.map +1 -1
  259. package/lib/models/protocols/pure/v1/model/packageableElements/store/relational/model/milestoning/V1_Milestoning.d.ts +2 -2
  260. package/lib/models/protocols/pure/v1/model/packageableElements/store/relational/model/milestoning/V1_Milestoning.d.ts.map +1 -1
  261. package/lib/models/protocols/pure/v1/model/packageableElements/store/relational/model/milestoning/V1_Milestoning.js.map +1 -1
  262. package/lib/models/protocols/pure/v1/model/rawValueSpecification/{V1_RawInstanceValue.d.ts → V1_RawPrimitiveInstanceValue.d.ts} +4 -4
  263. package/lib/models/protocols/pure/v1/model/rawValueSpecification/V1_RawPrimitiveInstanceValue.d.ts.map +1 -0
  264. package/lib/models/protocols/pure/v1/model/rawValueSpecification/{V1_RawInstanceValue.js → V1_RawPrimitiveInstanceValue.js} +4 -4
  265. package/lib/models/protocols/pure/v1/model/rawValueSpecification/V1_RawPrimitiveInstanceValue.js.map +1 -0
  266. package/lib/models/protocols/pure/v1/model/rawValueSpecification/V1_RawValueSpecification.d.ts +2 -2
  267. package/lib/models/protocols/pure/v1/model/rawValueSpecification/V1_RawValueSpecification.d.ts.map +1 -1
  268. package/lib/models/protocols/pure/v1/model/rawValueSpecification/V1_RawValueSpecification.js.map +1 -1
  269. package/lib/models/protocols/pure/v1/model/valueSpecification/raw/path/V1_PathElement.d.ts +0 -1
  270. package/lib/models/protocols/pure/v1/model/valueSpecification/raw/path/V1_PathElement.d.ts.map +1 -1
  271. package/lib/models/protocols/pure/v1/model/valueSpecification/raw/path/V1_PathElement.js +0 -1
  272. package/lib/models/protocols/pure/v1/model/valueSpecification/raw/path/V1_PathElement.js.map +1 -1
  273. package/lib/models/protocols/pure/v1/transformation/pureGraph/from/V1_DatabaseTransformer.js +2 -2
  274. package/lib/models/protocols/pure/v1/transformation/pureGraph/from/V1_DatabaseTransformer.js.map +1 -1
  275. package/lib/models/protocols/pure/v1/transformation/pureGraph/from/V1_MappingTransformer.d.ts +2 -1
  276. package/lib/models/protocols/pure/v1/transformation/pureGraph/from/V1_MappingTransformer.d.ts.map +1 -1
  277. package/lib/models/protocols/pure/v1/transformation/pureGraph/from/V1_MappingTransformer.js.map +1 -1
  278. package/lib/models/protocols/pure/v1/transformation/pureGraph/from/V1_MilestoningTransformer.js +3 -3
  279. package/lib/models/protocols/pure/v1/transformation/pureGraph/from/V1_MilestoningTransformer.js.map +1 -1
  280. package/lib/models/protocols/pure/v1/transformation/pureGraph/from/V1_PackageableElementTransformer.d.ts +3 -42
  281. package/lib/models/protocols/pure/v1/transformation/pureGraph/from/V1_PackageableElementTransformer.d.ts.map +1 -1
  282. package/lib/models/protocols/pure/v1/transformation/pureGraph/from/V1_PackageableElementTransformer.js +13 -2
  283. package/lib/models/protocols/pure/v1/transformation/pureGraph/from/V1_PackageableElementTransformer.js.map +1 -1
  284. package/lib/models/protocols/pure/v1/transformation/pureGraph/from/V1_RawValueSpecificationTransformer.d.ts +2 -2
  285. package/lib/models/protocols/pure/v1/transformation/pureGraph/from/V1_RawValueSpecificationTransformer.d.ts.map +1 -1
  286. package/lib/models/protocols/pure/v1/transformation/pureGraph/from/V1_RawValueSpecificationTransformer.js +7 -7
  287. package/lib/models/protocols/pure/v1/transformation/pureGraph/from/V1_RawValueSpecificationTransformer.js.map +1 -1
  288. package/lib/models/protocols/pure/v1/transformation/pureGraph/from/V1_ValueSpecificationTransformer.d.ts.map +1 -1
  289. package/lib/models/protocols/pure/v1/transformation/pureGraph/from/V1_ValueSpecificationTransformer.js +3 -3
  290. package/lib/models/protocols/pure/v1/transformation/pureGraph/from/V1_ValueSpecificationTransformer.js.map +1 -1
  291. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ElementBuilder.d.ts +6 -4
  292. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ElementBuilder.d.ts.map +1 -1
  293. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ElementBuilder.js +22 -8
  294. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ElementBuilder.js.map +1 -1
  295. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_GraphBuilderContext.d.ts +29 -2
  296. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_GraphBuilderContext.d.ts.map +1 -1
  297. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_GraphBuilderContext.js +58 -12
  298. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_GraphBuilderContext.js.map +1 -1
  299. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelClassMappingFirstPassBuilder.d.ts.map +1 -1
  300. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelClassMappingFirstPassBuilder.js +4 -4
  301. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelClassMappingFirstPassBuilder.js.map +1 -1
  302. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelGraphFifthPassBuilder.d.ts +1 -1
  303. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelGraphFifthPassBuilder.d.ts.map +1 -1
  304. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelGraphFifthPassBuilder.js +4 -3
  305. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelGraphFifthPassBuilder.js.map +1 -1
  306. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelGraphFirstPassBuilder.d.ts +5 -2
  307. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelGraphFirstPassBuilder.d.ts.map +1 -1
  308. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelGraphFirstPassBuilder.js +54 -48
  309. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelGraphFirstPassBuilder.js.map +1 -1
  310. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelGraphFourthPassBuilder.d.ts +1 -1
  311. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelGraphFourthPassBuilder.d.ts.map +1 -1
  312. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelGraphFourthPassBuilder.js +5 -4
  313. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelGraphFourthPassBuilder.js.map +1 -1
  314. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelGraphSecondPassBuilder.d.ts +1 -1
  315. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelGraphSecondPassBuilder.d.ts.map +1 -1
  316. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelGraphSecondPassBuilder.js +16 -16
  317. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelGraphSecondPassBuilder.js.map +1 -1
  318. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelGraphThirdPassBuilder.d.ts +1 -1
  319. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelGraphThirdPassBuilder.d.ts.map +1 -1
  320. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelGraphThirdPassBuilder.js +7 -7
  321. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelGraphThirdPassBuilder.js.map +1 -1
  322. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelPropertyMappingBuilder.d.ts +1 -1
  323. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelPropertyMappingBuilder.d.ts.map +1 -1
  324. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelPropertyMappingBuilder.js +5 -5
  325. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelPropertyMappingBuilder.js.map +1 -1
  326. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelRawValueSpecificationBuilder.d.ts +2 -2
  327. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelRawValueSpecificationBuilder.d.ts.map +1 -1
  328. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelRawValueSpecificationBuilder.js +3 -3
  329. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelRawValueSpecificationBuilder.js.map +1 -1
  330. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_AggregationAwareClassMappingBuilderHelper.js +4 -4
  331. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_AggregationAwareClassMappingBuilderHelper.js.map +1 -1
  332. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_DomainBuilderHelper.d.ts +1 -1
  333. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_DomainBuilderHelper.d.ts.map +1 -1
  334. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_DomainBuilderHelper.js +9 -8
  335. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_DomainBuilderHelper.js.map +1 -1
  336. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_MappingBuilderHelper.js +2 -2
  337. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_MappingBuilderHelper.js.map +1 -1
  338. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_MilestoningBuilderHelper.js +4 -4
  339. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_MilestoningBuilderHelper.js.map +1 -1
  340. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_SectionBuilderHelper.d.ts +1 -1
  341. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_SectionBuilderHelper.d.ts.map +1 -1
  342. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_SectionBuilderHelper.js +20 -22
  343. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_SectionBuilderHelper.js.map +1 -1
  344. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_ServiceBuilderHelper.js +5 -5
  345. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_ServiceBuilderHelper.js.map +1 -1
  346. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_ValueSpecificationPathResolver.d.ts +11 -1
  347. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_ValueSpecificationPathResolver.d.ts.map +1 -1
  348. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_ValueSpecificationPathResolver.js +39 -24
  349. package/lib/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_ValueSpecificationPathResolver.js.map +1 -1
  350. package/lib/models/protocols/pure/v1/transformation/pureProtocol/V1_PackageableElementSerialization.d.ts +3 -38
  351. package/lib/models/protocols/pure/v1/transformation/pureProtocol/V1_PackageableElementSerialization.d.ts.map +1 -1
  352. package/lib/models/protocols/pure/v1/transformation/pureProtocol/V1_PackageableElementSerialization.js +61 -40
  353. package/lib/models/protocols/pure/v1/transformation/pureProtocol/V1_PackageableElementSerialization.js.map +1 -1
  354. package/lib/models/protocols/pure/v1/transformation/pureProtocol/V1_PureProtocolSerialization.d.ts.map +1 -1
  355. package/lib/models/protocols/pure/v1/transformation/pureProtocol/V1_PureProtocolSerialization.js +2 -2
  356. package/lib/models/protocols/pure/v1/transformation/pureProtocol/V1_PureProtocolSerialization.js.map +1 -1
  357. package/lib/models/protocols/pure/v1/transformation/pureProtocol/serializationHelpers/V1_RawValueSpecificationSerializationHelper.d.ts +2 -2
  358. package/lib/models/protocols/pure/v1/transformation/pureProtocol/serializationHelpers/V1_RawValueSpecificationSerializationHelper.d.ts.map +1 -1
  359. package/lib/models/protocols/pure/v1/transformation/pureProtocol/serializationHelpers/V1_RawValueSpecificationSerializationHelper.js +5 -5
  360. package/lib/models/protocols/pure/v1/transformation/pureProtocol/serializationHelpers/V1_RawValueSpecificationSerializationHelper.js.map +1 -1
  361. package/lib/package.json +1 -1
  362. package/package.json +4 -4
  363. package/src/DSLMapping_Exports.ts +1 -0
  364. package/src/GraphManagerState.ts +2 -1
  365. package/src/GraphManagerTestUtils.tsx +1 -1
  366. package/src/MetaModelConst.ts +6 -4
  367. package/src/MetaModelUtils.ts +8 -0
  368. package/src/graph/BasicModel.ts +188 -83
  369. package/src/graph/DependencyManager.ts +141 -82
  370. package/src/graph/PureGraphPlugin.ts +4 -0
  371. package/src/graph/PureModel.ts +105 -108
  372. package/src/graphManager/AbstractPureGraphManager.ts +9 -7
  373. package/src/graphManager/DSLExternalFormat_GraphManagerHelper.ts +15 -5
  374. package/src/graphManager/PureGraphManagerPlugin.ts +4 -0
  375. package/src/graphManager/action/TEMPORARY__AbstractEngineConfig.ts +4 -0
  376. package/src/graphManager/action/changeDetection/DSLMapping_ObserverHelper.ts +1 -6
  377. package/src/graphManager/action/changeDetection/DomainObserverHelper.ts +13 -12
  378. package/src/graphManager/action/changeDetection/GraphObserverHelper.ts +3 -5
  379. package/src/graphManager/action/changeDetection/PackageableElementObserver.ts +1 -1
  380. package/src/graphManager/action/changeDetection/RawValueSpecificationObserver.ts +10 -7
  381. package/src/graphManager/action/changeDetection/StoreFlatData_ObserverHelper.ts +4 -5
  382. package/src/graphManager/action/changeDetection/StoreRelational_ObserverHelper.ts +0 -2
  383. package/src/graphManager/action/changeDetection/ValueSpecificationObserver.ts +269 -55
  384. package/src/graphManager/action/execution/ExecutionResult.ts +1 -1
  385. package/src/helpers/DomainHelper.ts +148 -6
  386. package/src/helpers/MappingHelper.ts +7 -5
  387. package/src/index.ts +8 -0
  388. package/src/models/metamodels/pure/packageableElements/PackageableElement.ts +3 -10
  389. package/src/models/metamodels/pure/packageableElements/domain/Association.ts +3 -3
  390. package/src/models/metamodels/pure/packageableElements/domain/Class.ts +2 -0
  391. package/src/models/metamodels/pure/packageableElements/domain/Package.ts +1 -56
  392. package/src/models/metamodels/pure/packageableElements/mapping/AssociationImplementation.ts +2 -16
  393. package/src/models/metamodels/pure/packageableElements/mapping/EnumerationMapping.ts +2 -16
  394. package/src/models/metamodels/pure/packageableElements/mapping/InputData.ts +0 -2
  395. package/src/models/metamodels/pure/packageableElements/mapping/Mapping.ts +0 -6
  396. package/src/models/metamodels/pure/packageableElements/mapping/MappingTestAssert.ts +0 -2
  397. package/src/models/metamodels/pure/packageableElements/mapping/OperationSetImplementation.ts +1 -0
  398. package/src/models/metamodels/pure/packageableElements/mapping/SetImplementation.ts +9 -57
  399. package/src/models/metamodels/pure/packageableElements/mapping/TEMPORARY__UnresolvedSetImplementation.ts +51 -0
  400. package/src/models/metamodels/pure/packageableElements/section/Section.ts +1 -6
  401. package/src/models/metamodels/pure/packageableElements/service/ServiceExecution.ts +0 -2
  402. package/src/models/metamodels/pure/packageableElements/store/flatData/mapping/EmbeddedFlatDataPropertyMapping.ts +6 -21
  403. package/src/models/metamodels/pure/packageableElements/store/flatData/mapping/FlatDataInstanceSetImplementation.ts +2 -5
  404. package/src/models/metamodels/pure/packageableElements/store/flatData/model/FlatDataDataType.ts +1 -1
  405. package/src/models/metamodels/pure/packageableElements/store/relational/connection/AuthenticationStrategy.ts +0 -2
  406. package/src/models/metamodels/pure/packageableElements/store/relational/connection/DatasourceSpecification.ts +0 -2
  407. package/src/models/metamodels/pure/packageableElements/store/relational/connection/RelationalDatabaseConnection.ts +2 -0
  408. package/src/models/metamodels/pure/packageableElements/store/relational/mapping/EmbeddedRelationalInstanceSetImplementation.ts +4 -10
  409. package/src/models/metamodels/pure/packageableElements/store/relational/mapping/RelationalInstanceSetImplementation.ts +2 -5
  410. package/src/models/metamodels/pure/packageableElements/store/relational/model/RelationalOperationElement.ts +1 -4
  411. package/src/models/metamodels/pure/packageableElements/store/relational/model/Table.ts +4 -4
  412. package/src/models/metamodels/pure/packageableElements/store/relational/model/View.ts +4 -4
  413. package/src/models/metamodels/pure/packageableElements/store/relational/model/milestoning/Milestoning.ts +2 -2
  414. package/src/models/metamodels/pure/rawValueSpecification/{RawInstanceValue.ts → RawPrimitiveInstanceValue.ts} +2 -2
  415. package/src/models/metamodels/pure/rawValueSpecification/RawValueSpecification.ts +4 -2
  416. package/src/models/metamodels/pure/valueSpecification/InstanceValue.ts +2 -2
  417. package/src/models/metamodels/pure/valueSpecification/ValueSpecification.ts +1 -1
  418. package/src/models/protocols/pure/DSLExternalFormat_PureProtocolProcessorPlugin.ts +12 -9
  419. package/src/models/protocols/pure/PureProtocolProcessorPlugin.ts +4 -0
  420. package/src/models/protocols/pure/v1/V1_Core_SystemModels.json +2 -2
  421. package/src/models/protocols/pure/v1/V1_PureGraphManager.ts +112 -95
  422. package/src/models/protocols/pure/v1/engine/V1_Engine.ts +3 -3
  423. package/src/models/protocols/pure/v1/model/packageableElements/V1_PackageableElement.ts +1 -1
  424. package/src/models/protocols/pure/v1/model/packageableElements/connection/V1_Connection.ts +0 -10
  425. package/src/models/protocols/pure/v1/model/packageableElements/mapping/V1_InputData.ts +0 -2
  426. package/src/models/protocols/pure/v1/model/packageableElements/mapping/V1_MappingTestAssert.ts +0 -2
  427. package/src/models/protocols/pure/v1/model/packageableElements/service/V1_ServiceExecution.ts +0 -7
  428. package/src/models/protocols/pure/v1/model/packageableElements/service/V1_ServiceTest.ts +0 -2
  429. package/src/models/protocols/pure/v1/model/packageableElements/store/flatData/model/V1_FlatDataDataType.ts +0 -2
  430. package/src/models/protocols/pure/v1/model/packageableElements/store/relational/connection/V1_AuthenticationStrategy.ts +0 -2
  431. package/src/models/protocols/pure/v1/model/packageableElements/store/relational/connection/V1_DatasourceSpecification.ts +0 -12
  432. package/src/models/protocols/pure/v1/model/packageableElements/store/relational/connection/V1_RelationalDatabaseConnection.ts +2 -0
  433. package/src/models/protocols/pure/v1/model/packageableElements/store/relational/connection/postprocessor/V1_PostProcessor.ts +0 -2
  434. package/src/models/protocols/pure/v1/model/packageableElements/store/relational/model/V1_RelationalDataType.ts +0 -2
  435. package/src/models/protocols/pure/v1/model/packageableElements/store/relational/model/V1_RelationalOperationElement.ts +0 -2
  436. package/src/models/protocols/pure/v1/model/packageableElements/store/relational/model/milestoning/V1_Milestoning.ts +2 -2
  437. package/src/models/protocols/pure/v1/model/rawValueSpecification/{V1_RawInstanceValue.ts → V1_RawPrimitiveInstanceValue.ts} +4 -4
  438. package/src/models/protocols/pure/v1/model/rawValueSpecification/V1_RawValueSpecification.ts +4 -2
  439. package/src/models/protocols/pure/v1/model/valueSpecification/raw/path/V1_PathElement.ts +1 -3
  440. package/src/models/protocols/pure/v1/transformation/pureGraph/from/V1_DatabaseTransformer.ts +2 -2
  441. package/src/models/protocols/pure/v1/transformation/pureGraph/from/V1_MappingTransformer.ts +1 -1
  442. package/src/models/protocols/pure/v1/transformation/pureGraph/from/V1_MilestoningTransformer.ts +3 -3
  443. package/src/models/protocols/pure/v1/transformation/pureGraph/from/V1_PackageableElementTransformer.ts +22 -2
  444. package/src/models/protocols/pure/v1/transformation/pureGraph/from/V1_RawValueSpecificationTransformer.ts +9 -11
  445. package/src/models/protocols/pure/v1/transformation/pureGraph/from/V1_ValueSpecificationTransformer.ts +3 -5
  446. package/src/models/protocols/pure/v1/transformation/pureGraph/to/V1_ElementBuilder.ts +41 -11
  447. package/src/models/protocols/pure/v1/transformation/pureGraph/to/V1_GraphBuilderContext.ts +70 -12
  448. package/src/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelClassMappingFirstPassBuilder.ts +13 -5
  449. package/src/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelGraphFifthPassBuilder.ts +9 -8
  450. package/src/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelGraphFirstPassBuilder.ts +140 -153
  451. package/src/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelGraphFourthPassBuilder.ts +9 -8
  452. package/src/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelGraphSecondPassBuilder.ts +35 -31
  453. package/src/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelGraphThirdPassBuilder.ts +16 -14
  454. package/src/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelPropertyMappingBuilder.ts +15 -9
  455. package/src/models/protocols/pure/v1/transformation/pureGraph/to/V1_ProtocolToMetaModelRawValueSpecificationBuilder.ts +9 -5
  456. package/src/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_AggregationAwareClassMappingBuilderHelper.ts +7 -7
  457. package/src/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_DomainBuilderHelper.ts +22 -13
  458. package/src/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_MappingBuilderHelper.ts +3 -3
  459. package/src/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_MilestoningBuilderHelper.ts +4 -4
  460. package/src/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_SectionBuilderHelper.ts +22 -22
  461. package/src/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_ServiceBuilderHelper.ts +9 -9
  462. package/src/models/protocols/pure/v1/transformation/pureGraph/to/helpers/V1_ValueSpecificationPathResolver.ts +43 -28
  463. package/src/models/protocols/pure/v1/transformation/pureProtocol/V1_PackageableElementSerialization.ts +76 -42
  464. package/src/models/protocols/pure/v1/transformation/pureProtocol/V1_PureProtocolSerialization.ts +2 -4
  465. package/src/models/protocols/pure/v1/transformation/pureProtocol/serializationHelpers/V1_RawValueSpecificationSerializationHelper.ts +7 -7
  466. package/tsconfig.json +3 -2
  467. package/lib/models/metamodels/pure/rawValueSpecification/RawInstanceValue.d.ts.map +0 -1
  468. package/lib/models/metamodels/pure/rawValueSpecification/RawInstanceValue.js.map +0 -1
  469. package/lib/models/protocols/pure/v1/model/rawValueSpecification/V1_RawInstanceValue.d.ts.map +0 -1
  470. package/lib/models/protocols/pure/v1/model/rawValueSpecification/V1_RawInstanceValue.js.map +0 -1
@@ -14,7 +14,7 @@
14
14
  * limitations under the License.
15
15
  */
16
16
 
17
- import { assertNonEmptyString, assertTrue } from '@finos/legend-shared';
17
+ import { assertNonEmptyString } from '@finos/legend-shared';
18
18
  import {
19
19
  PRIMITIVE_TYPE,
20
20
  TYPICAL_MULTIPLICITY_TYPE,
@@ -36,7 +36,10 @@ import { PackageableConnection } from '../../../../../../metamodels/pure/package
36
36
  import { GenerationSpecification } from '../../../../../../metamodels/pure/packageableElements/generationSpecification/GenerationSpecification';
37
37
  import { SectionIndex } from '../../../../../../metamodels/pure/packageableElements/section/SectionIndex';
38
38
  import { PackageableElementImplicitReference } from '../../../../../../metamodels/pure/packageableElements/PackageableElementReference';
39
- import type { V1_GraphBuilderContext } from './V1_GraphBuilderContext';
39
+ import {
40
+ V1_buildFullPath,
41
+ type V1_GraphBuilderContext,
42
+ } from './V1_GraphBuilderContext';
40
43
  import type {
41
44
  V1_PackageableElement,
42
45
  V1_PackageableElementVisitor,
@@ -56,21 +59,39 @@ import type { V1_PackageableConnection } from '../../../model/packageableElement
56
59
  import type { V1_FileGenerationSpecification } from '../../../model/packageableElements/fileGeneration/V1_FileGenerationSpecification';
57
60
  import type { V1_Measure } from '../../../model/packageableElements/domain/V1_Measure';
58
61
  import type { V1_SectionIndex } from '../../../model/packageableElements/section/V1_SectionIndex';
59
- import { _package_addElement } from '../../../../../../../helpers/DomainHelper';
62
+ import {
63
+ addElementToPackage,
64
+ getOrCreateGraphPackage,
65
+ } from '../../../../../../../helpers/DomainHelper';
66
+ import { V1_checkDuplicatedElement } from './V1_ElementBuilder';
67
+ import type { Package } from '../../../../../../metamodels/pure/packageableElements/domain/Package';
60
68
 
61
69
  export class V1_ProtocolToMetaModelGraphFirstPassBuilder
62
70
  implements V1_PackageableElementVisitor<PackageableElement>
63
71
  {
64
72
  context: V1_GraphBuilderContext;
73
+ packageCache: Map<string, Package> | undefined;
74
+ elementPathCache: Set<string> | undefined;
65
75
 
66
- constructor(context: V1_GraphBuilderContext) {
76
+ constructor(
77
+ context: V1_GraphBuilderContext,
78
+ packageCache: Map<string, Package> | undefined,
79
+ elementPathCache: Set<string> | undefined,
80
+ ) {
67
81
  this.context = context;
82
+ this.packageCache = packageCache;
83
+ this.elementPathCache = elementPathCache;
68
84
  }
69
85
 
70
86
  visit_PackageableElement(element: V1_PackageableElement): PackageableElement {
71
87
  return this.context.extensions
72
88
  .getExtraBuilderOrThrow(element)
73
- .runFirstPass(element, this.context);
89
+ .runFirstPass(
90
+ element,
91
+ this.context,
92
+ this.packageCache,
93
+ this.elementPathCache,
94
+ );
74
95
  }
75
96
 
76
97
  visit_SectionIndex(element: V1_SectionIndex): PackageableElement {
@@ -83,14 +104,8 @@ export class V1_ProtocolToMetaModelGraphFirstPassBuilder
83
104
  `Section index 'name' field is missing or empty`,
84
105
  );
85
106
  const sectionIndex = new SectionIndex(element.name);
86
- const path = this.context.currentSubGraph.buildPath(
87
- element.package,
88
- element.name,
89
- );
90
- assertTrue(
91
- !this.context.graph.getNullableElement(path),
92
- `Element '${path}' already exists`,
93
- );
107
+ const path = V1_buildFullPath(element.package, element.name);
108
+ V1_checkDuplicatedElement(path, this.context, this.elementPathCache);
94
109
  this.context.currentSubGraph.setOwnSectionIndex(path, sectionIndex);
95
110
  return sectionIndex;
96
111
  }
@@ -105,16 +120,14 @@ export class V1_ProtocolToMetaModelGraphFirstPassBuilder
105
120
  `Profile 'name' field is missing or empty`,
106
121
  );
107
122
  const profile = new Profile(element.name);
108
- const path = this.context.currentSubGraph.buildPath(
109
- element.package,
110
- element.name,
111
- );
112
- assertTrue(
113
- !this.context.graph.getNullableElement(path),
114
- `Element '${path}' already exists`,
115
- );
116
- _package_addElement(
117
- this.context.currentSubGraph.getOrCreatePackage(element.package),
123
+ const path = V1_buildFullPath(element.package, element.name);
124
+ V1_checkDuplicatedElement(path, this.context, this.elementPathCache);
125
+ addElementToPackage(
126
+ getOrCreateGraphPackage(
127
+ this.context.currentSubGraph,
128
+ element.package,
129
+ this.packageCache,
130
+ ),
118
131
  profile,
119
132
  );
120
133
  this.context.currentSubGraph.setOwnProfile(path, profile);
@@ -131,16 +144,14 @@ export class V1_ProtocolToMetaModelGraphFirstPassBuilder
131
144
  `Enumeration 'name' field is missing or empty`,
132
145
  );
133
146
  const pureEnumeration = new Enumeration(element.name);
134
- const path = this.context.currentSubGraph.buildPath(
135
- element.package,
136
- element.name,
137
- );
138
- assertTrue(
139
- !this.context.graph.getNullableElement(path),
140
- `Element '${path}' already exists`,
141
- );
142
- _package_addElement(
143
- this.context.currentSubGraph.getOrCreatePackage(element.package),
147
+ const path = V1_buildFullPath(element.package, element.name);
148
+ V1_checkDuplicatedElement(path, this.context, this.elementPathCache);
149
+ addElementToPackage(
150
+ getOrCreateGraphPackage(
151
+ this.context.currentSubGraph,
152
+ element.package,
153
+ this.packageCache,
154
+ ),
144
155
  pureEnumeration,
145
156
  );
146
157
  this.context.currentSubGraph.setOwnType(path, pureEnumeration);
@@ -157,16 +168,14 @@ export class V1_ProtocolToMetaModelGraphFirstPassBuilder
157
168
  `Measure 'name' field is missing or empty`,
158
169
  );
159
170
  const pureMeasure = new Measure(element.name);
160
- const path = this.context.currentSubGraph.buildPath(
161
- element.package,
162
- element.name,
163
- );
164
- assertTrue(
165
- !this.context.graph.getNullableElement(path),
166
- `Element '${path}' already exists`,
167
- );
168
- _package_addElement(
169
- this.context.currentSubGraph.getOrCreatePackage(element.package),
171
+ const path = V1_buildFullPath(element.package, element.name);
172
+ V1_checkDuplicatedElement(path, this.context, this.elementPathCache);
173
+ addElementToPackage(
174
+ getOrCreateGraphPackage(
175
+ this.context.currentSubGraph,
176
+ element.package,
177
+ this.packageCache,
178
+ ),
170
179
  pureMeasure,
171
180
  );
172
181
  this.context.currentSubGraph.setOwnType(path, pureMeasure);
@@ -183,16 +192,14 @@ export class V1_ProtocolToMetaModelGraphFirstPassBuilder
183
192
  `Class 'name' field is missing or empty`,
184
193
  );
185
194
  const _class = new Class(element.name);
186
- const path = this.context.currentSubGraph.buildPath(
187
- element.package,
188
- element.name,
189
- );
190
- assertTrue(
191
- !this.context.graph.getNullableElement(path),
192
- `Element '${path}' already exists`,
193
- );
194
- _package_addElement(
195
- this.context.currentSubGraph.getOrCreatePackage(element.package),
195
+ const path = V1_buildFullPath(element.package, element.name);
196
+ V1_checkDuplicatedElement(path, this.context, this.elementPathCache);
197
+ addElementToPackage(
198
+ getOrCreateGraphPackage(
199
+ this.context.currentSubGraph,
200
+ element.package,
201
+ this.packageCache,
202
+ ),
196
203
  _class,
197
204
  );
198
205
  this.context.currentSubGraph.setOwnType(path, _class);
@@ -209,16 +216,14 @@ export class V1_ProtocolToMetaModelGraphFirstPassBuilder
209
216
  `Association 'name' field is missing or empty`,
210
217
  );
211
218
  const association = new Association(element.name);
212
- const path = this.context.currentSubGraph.buildPath(
213
- element.package,
214
- element.name,
215
- );
216
- assertTrue(
217
- !this.context.graph.getNullableElement(path),
218
- `Element '${path}' already exists`,
219
- );
220
- _package_addElement(
221
- this.context.currentSubGraph.getOrCreatePackage(element.package),
219
+ const path = V1_buildFullPath(element.package, element.name);
220
+ V1_checkDuplicatedElement(path, this.context, this.elementPathCache);
221
+ addElementToPackage(
222
+ getOrCreateGraphPackage(
223
+ this.context.currentSubGraph,
224
+ element.package,
225
+ this.packageCache,
226
+ ),
222
227
  association,
223
228
  );
224
229
  this.context.currentSubGraph.setOwnAssociation(path, association);
@@ -247,16 +252,14 @@ export class V1_ProtocolToMetaModelGraphFirstPassBuilder
247
252
  TYPICAL_MULTIPLICITY_TYPE.ZEROMANY,
248
253
  ),
249
254
  );
250
- const path = this.context.currentSubGraph.buildPath(
251
- element.package,
252
- element.name,
253
- );
254
- assertTrue(
255
- !this.context.graph.getNullableElement(path),
256
- `Element '${path}' already exists`,
257
- );
258
- _package_addElement(
259
- this.context.currentSubGraph.getOrCreatePackage(element.package),
255
+ const path = V1_buildFullPath(element.package, element.name);
256
+ V1_checkDuplicatedElement(path, this.context, this.elementPathCache);
257
+ addElementToPackage(
258
+ getOrCreateGraphPackage(
259
+ this.context.currentSubGraph,
260
+ element.package,
261
+ this.packageCache,
262
+ ),
260
263
  func,
261
264
  );
262
265
  this.context.currentSubGraph.setOwnFunction(path, func);
@@ -273,16 +276,14 @@ export class V1_ProtocolToMetaModelGraphFirstPassBuilder
273
276
  `Flat data store 'name' field is missing or empty`,
274
277
  );
275
278
  const flatData = new FlatData(element.name);
276
- const path = this.context.currentSubGraph.buildPath(
277
- element.package,
278
- element.name,
279
- );
280
- assertTrue(
281
- !this.context.graph.getNullableElement(path),
282
- `Element '${path}' already exists`,
283
- );
284
- _package_addElement(
285
- this.context.currentSubGraph.getOrCreatePackage(element.package),
279
+ const path = V1_buildFullPath(element.package, element.name);
280
+ V1_checkDuplicatedElement(path, this.context, this.elementPathCache);
281
+ addElementToPackage(
282
+ getOrCreateGraphPackage(
283
+ this.context.currentSubGraph,
284
+ element.package,
285
+ this.packageCache,
286
+ ),
286
287
  flatData,
287
288
  );
288
289
  this.context.currentSubGraph.setOwnStore(path, flatData);
@@ -299,16 +300,14 @@ export class V1_ProtocolToMetaModelGraphFirstPassBuilder
299
300
  `Database store 'name' field is missing or empty`,
300
301
  );
301
302
  const database = new Database(element.name);
302
- const path = this.context.currentSubGraph.buildPath(
303
- element.package,
304
- element.name,
305
- );
306
- assertTrue(
307
- !this.context.graph.getNullableElement(path),
308
- `Element '${path}' already exists`,
309
- );
310
- _package_addElement(
311
- this.context.currentSubGraph.getOrCreatePackage(element.package),
303
+ const path = V1_buildFullPath(element.package, element.name);
304
+ V1_checkDuplicatedElement(path, this.context, this.elementPathCache);
305
+ addElementToPackage(
306
+ getOrCreateGraphPackage(
307
+ this.context.currentSubGraph,
308
+ element.package,
309
+ this.packageCache,
310
+ ),
312
311
  database,
313
312
  );
314
313
  this.context.currentSubGraph.setOwnStore(path, database);
@@ -325,16 +324,14 @@ export class V1_ProtocolToMetaModelGraphFirstPassBuilder
325
324
  `Mapping 'name' field is missing or empty`,
326
325
  );
327
326
  const pureMapping = new Mapping(element.name);
328
- const path = this.context.currentSubGraph.buildPath(
329
- element.package,
330
- element.name,
331
- );
332
- assertTrue(
333
- !this.context.graph.getNullableElement(path),
334
- `Element '${path}' already exists`,
335
- );
336
- _package_addElement(
337
- this.context.currentSubGraph.getOrCreatePackage(element.package),
327
+ const path = V1_buildFullPath(element.package, element.name);
328
+ V1_checkDuplicatedElement(path, this.context, this.elementPathCache);
329
+ addElementToPackage(
330
+ getOrCreateGraphPackage(
331
+ this.context.currentSubGraph,
332
+ element.package,
333
+ this.packageCache,
334
+ ),
338
335
  pureMapping,
339
336
  );
340
337
  this.context.currentSubGraph.setOwnMapping(path, pureMapping);
@@ -351,16 +348,14 @@ export class V1_ProtocolToMetaModelGraphFirstPassBuilder
351
348
  `Service 'name' field is missing or empty`,
352
349
  );
353
350
  const service = new Service(element.name);
354
- const path = this.context.currentSubGraph.buildPath(
355
- element.package,
356
- element.name,
357
- );
358
- assertTrue(
359
- !this.context.graph.getNullableElement(path),
360
- `Element '${path}' already exists`,
361
- );
362
- _package_addElement(
363
- this.context.currentSubGraph.getOrCreatePackage(element.package),
351
+ const path = V1_buildFullPath(element.package, element.name);
352
+ V1_checkDuplicatedElement(path, this.context, this.elementPathCache);
353
+ addElementToPackage(
354
+ getOrCreateGraphPackage(
355
+ this.context.currentSubGraph,
356
+ element.package,
357
+ this.packageCache,
358
+ ),
364
359
  service,
365
360
  );
366
361
  this.context.currentSubGraph.setOwnService(path, service);
@@ -379,16 +374,14 @@ export class V1_ProtocolToMetaModelGraphFirstPassBuilder
379
374
  'File generation element name is missing',
380
375
  );
381
376
  const fileGeneration = new FileGenerationSpecification(element.name);
382
- const path = this.context.currentSubGraph.buildPath(
383
- element.package,
384
- element.name,
385
- );
386
- assertTrue(
387
- !this.context.graph.getNullableElement(path),
388
- `Element '${path}' already exists`,
389
- );
390
- _package_addElement(
391
- this.context.currentSubGraph.getOrCreatePackage(element.package),
377
+ const path = V1_buildFullPath(element.package, element.name);
378
+ V1_checkDuplicatedElement(path, this.context, this.elementPathCache);
379
+ addElementToPackage(
380
+ getOrCreateGraphPackage(
381
+ this.context.currentSubGraph,
382
+ element.package,
383
+ this.packageCache,
384
+ ),
392
385
  fileGeneration,
393
386
  );
394
387
  this.context.currentSubGraph.setOwnFileGeneration(path, fileGeneration);
@@ -408,16 +401,14 @@ export class V1_ProtocolToMetaModelGraphFirstPassBuilder
408
401
  'Generation tree element name is missing',
409
402
  );
410
403
  const generationSpec = new GenerationSpecification(element.name);
411
- const path = this.context.currentSubGraph.buildPath(
412
- element.package,
413
- element.name,
414
- );
415
- assertTrue(
416
- !this.context.graph.getNullableElement(path),
417
- `Element '${path}' already exists`,
418
- );
419
- _package_addElement(
420
- this.context.currentSubGraph.getOrCreatePackage(element.package),
404
+ const path = V1_buildFullPath(element.package, element.name);
405
+ V1_checkDuplicatedElement(path, this.context, this.elementPathCache);
406
+ addElementToPackage(
407
+ getOrCreateGraphPackage(
408
+ this.context.currentSubGraph,
409
+ element.package,
410
+ this.packageCache,
411
+ ),
421
412
  generationSpec,
422
413
  );
423
414
  this.context.currentSubGraph.setOwnGenerationSpecification(
@@ -437,16 +428,14 @@ export class V1_ProtocolToMetaModelGraphFirstPassBuilder
437
428
  `Runtime 'name' field is missing or empty`,
438
429
  );
439
430
  const runtime = new PackageableRuntime(element.name);
440
- const path = this.context.currentSubGraph.buildPath(
441
- element.package,
442
- element.name,
443
- );
444
- assertTrue(
445
- !this.context.graph.getNullableElement(path),
446
- `Element '${path}' already exists`,
447
- );
448
- _package_addElement(
449
- this.context.currentSubGraph.getOrCreatePackage(element.package),
431
+ const path = V1_buildFullPath(element.package, element.name);
432
+ V1_checkDuplicatedElement(path, this.context, this.elementPathCache);
433
+ addElementToPackage(
434
+ getOrCreateGraphPackage(
435
+ this.context.currentSubGraph,
436
+ element.package,
437
+ this.packageCache,
438
+ ),
450
439
  runtime,
451
440
  );
452
441
  this.context.currentSubGraph.setOwnRuntime(path, runtime);
@@ -465,16 +454,14 @@ export class V1_ProtocolToMetaModelGraphFirstPassBuilder
465
454
  `Connection 'name' field is missing or empty`,
466
455
  );
467
456
  const connection = new PackageableConnection(element.name);
468
- const path = this.context.currentSubGraph.buildPath(
469
- element.package,
470
- element.name,
471
- );
472
- assertTrue(
473
- !this.context.graph.getNullableElement(path),
474
- `Element '${path}' already exists`,
475
- );
476
- _package_addElement(
477
- this.context.currentSubGraph.getOrCreatePackage(element.package),
457
+ const path = V1_buildFullPath(element.package, element.name);
458
+ V1_checkDuplicatedElement(path, this.context, this.elementPathCache);
459
+ addElementToPackage(
460
+ getOrCreateGraphPackage(
461
+ this.context.currentSubGraph,
462
+ element.package,
463
+ this.packageCache,
464
+ ),
478
465
  connection,
479
466
  );
480
467
  this.context.currentSubGraph.setOwnConnection(path, connection);
@@ -15,7 +15,10 @@
15
15
  */
16
16
 
17
17
  import { UnsupportedOperationError } from '@finos/legend-shared';
18
- import type { V1_GraphBuilderContext } from './V1_GraphBuilderContext';
18
+ import {
19
+ V1_buildFullPath,
20
+ type V1_GraphBuilderContext,
21
+ } from './V1_GraphBuilderContext';
19
22
  import type {
20
23
  V1_PackageableElement,
21
24
  V1_PackageableElementVisitor,
@@ -90,14 +93,12 @@ export class V1_ProtocolToMetaModelGraphFourthPassBuilder
90
93
  }
91
94
 
92
95
  visit_FlatData(element: V1_FlatData): void {
93
- this.context.graph.getFlatDataStore(
94
- this.context.graph.buildPath(element.package, element.name),
95
- );
96
+ return;
96
97
  }
97
98
 
98
99
  visit_Database(element: V1_Database): void {
99
- const database = this.context.graph.getDatabase(
100
- this.context.graph.buildPath(element.package, element.name),
100
+ const database = this.context.currentSubGraph.getOwnDatabase(
101
+ V1_buildFullPath(element.package, element.name),
101
102
  );
102
103
  database.joins = element.joins.map((join) =>
103
104
  V1_buildDatabaseJoin(join, this.context, database),
@@ -108,8 +109,8 @@ export class V1_ProtocolToMetaModelGraphFourthPassBuilder
108
109
  }
109
110
 
110
111
  visit_Mapping(element: V1_Mapping): void {
111
- const path = this.context.graph.buildPath(element.package, element.name);
112
- const mapping = this.context.graph.getMapping(path);
112
+ const path = V1_buildFullPath(element.package, element.name);
113
+ const mapping = this.context.currentSubGraph.getOwnMapping(path);
113
114
  mapping.associationMappings = element.associationMappings.map(
114
115
  (_associationMapping) =>
115
116
  V1_buildAssociationMapping(_associationMapping, mapping, this.context),
@@ -20,14 +20,16 @@ import {
20
20
  UnsupportedOperationError,
21
21
  IllegalStateError,
22
22
  assertNonNullable,
23
- guaranteeNonNullable,
24
23
  assertTrue,
25
24
  LogEvent,
26
25
  } from '@finos/legend-shared';
27
26
  import { Stereotype } from '../../../../../../metamodels/pure/packageableElements/domain/Stereotype';
28
27
  import { Tag } from '../../../../../../metamodels/pure/packageableElements/domain/Tag';
29
28
  import { Enum } from '../../../../../../metamodels/pure/packageableElements/domain/Enum';
30
- import type { V1_GraphBuilderContext } from '../../../transformation/pureGraph/to/V1_GraphBuilderContext';
29
+ import {
30
+ V1_buildFullPath,
31
+ type V1_GraphBuilderContext,
32
+ } from '../../../transformation/pureGraph/to/V1_GraphBuilderContext';
31
33
  import type { V1_GenerationSpecification } from '../../../model/packageableElements/generationSpecification/V1_GenerationSpecification';
32
34
  import type {
33
35
  V1_PackageableElement,
@@ -91,8 +93,8 @@ export class V1_ProtocolToMetaModelGraphSecondPassBuilder
91
93
  }
92
94
 
93
95
  visit_Profile(element: V1_Profile): void {
94
- const profile = this.context.graph.getProfile(
95
- this.context.graph.buildPath(element.package, element.name),
96
+ const profile = this.context.currentSubGraph.getOwnProfile(
97
+ V1_buildFullPath(element.package, element.name),
96
98
  );
97
99
  const uniqueStereotypes = new Set<string>();
98
100
  profile.stereotypes = element.stereotypes.map((stereotype) => {
@@ -123,8 +125,9 @@ export class V1_ProtocolToMetaModelGraphSecondPassBuilder
123
125
  }
124
126
 
125
127
  visit_Enumeration(element: V1_Enumeration): void {
126
- const path = this.context.graph.buildPath(element.package, element.name);
127
- const enumeration = this.context.graph.getEnumeration(path);
128
+ const enumeration = this.context.currentSubGraph.getOwnEnumeration(
129
+ V1_buildFullPath(element.package, element.name),
130
+ );
128
131
  enumeration.stereotypes = element.stereotypes
129
132
  .map((stereotype) => this.context.resolveStereotype(stereotype))
130
133
  .filter(isNonNullable);
@@ -162,8 +165,8 @@ export class V1_ProtocolToMetaModelGraphSecondPassBuilder
162
165
  element.canonicalUnit,
163
166
  `Measure 'canonicalUnit' field is missing`,
164
167
  );
165
- const measure = this.context.graph.getMeasure(
166
- this.context.graph.buildPath(element.package, element.name),
168
+ const measure = this.context.currentSubGraph.getOwnMeasure(
169
+ V1_buildFullPath(element.package, element.name),
167
170
  );
168
171
  measure.canonicalUnit = V1_buildUnit(
169
172
  element.canonicalUnit,
@@ -177,8 +180,8 @@ export class V1_ProtocolToMetaModelGraphSecondPassBuilder
177
180
  }
178
181
 
179
182
  visit_Class(element: V1_Class): void {
180
- const _class = this.context.graph.getClass(
181
- this.context.graph.buildPath(element.package, element.name),
183
+ const _class = this.context.currentSubGraph.getOwnClass(
184
+ V1_buildFullPath(element.package, element.name),
182
185
  );
183
186
  _class.stereotypes = element.stereotypes
184
187
  .map((stereotype) => this.context.resolveStereotype(stereotype))
@@ -205,8 +208,8 @@ export class V1_ProtocolToMetaModelGraphSecondPassBuilder
205
208
  protocol.returnMultiplicity,
206
209
  `Function 'returnMultiplicity' field is missing`,
207
210
  );
208
- const func = this.context.graph.getFunction(
209
- this.context.graph.buildPath(protocol.package, protocol.name),
211
+ const func = this.context.currentSubGraph.getOwnFunction(
212
+ V1_buildFullPath(protocol.package, protocol.name),
210
213
  );
211
214
  func.returnType = this.context.resolveType(protocol.returnType);
212
215
  func.returnMultiplicity = this.context.graph.getMultiplicity(
@@ -226,8 +229,8 @@ export class V1_ProtocolToMetaModelGraphSecondPassBuilder
226
229
  }
227
230
 
228
231
  visit_FlatData(element: V1_FlatData): void {
229
- const flatData = this.context.graph.getFlatDataStore(
230
- this.context.graph.buildPath(element.package, element.name),
232
+ const flatData = this.context.currentSubGraph.getOwnFlatDataStore(
233
+ V1_buildFullPath(element.package, element.name),
231
234
  );
232
235
  flatData.sections = element.sections.map((section) =>
233
236
  V1_buildFlatDataSection(section, flatData, this.context),
@@ -235,8 +238,8 @@ export class V1_ProtocolToMetaModelGraphSecondPassBuilder
235
238
  }
236
239
 
237
240
  visit_Database(element: V1_Database): void {
238
- const database = this.context.graph.getDatabase(
239
- this.context.graph.buildPath(element.package, element.name),
241
+ const database = this.context.currentSubGraph.getOwnDatabase(
242
+ V1_buildFullPath(element.package, element.name),
240
243
  );
241
244
  database.includes = element.includedStores.map((includedStore) =>
242
245
  this.context.resolveDatabase(includedStore),
@@ -247,8 +250,8 @@ export class V1_ProtocolToMetaModelGraphSecondPassBuilder
247
250
  }
248
251
 
249
252
  visit_Mapping(element: V1_Mapping): void {
250
- const mapping = this.context.graph.getMapping(
251
- this.context.graph.buildPath(element.package, element.name),
253
+ const mapping = this.context.currentSubGraph.getOwnMapping(
254
+ V1_buildFullPath(element.package, element.name),
252
255
  );
253
256
  const mappingIncludesSet = new Set<string>();
254
257
  mapping.includes = element.includedMappings.map((i) => {
@@ -274,8 +277,8 @@ export class V1_ProtocolToMetaModelGraphSecondPassBuilder
274
277
  element.pattern,
275
278
  `Service 'pattern' field is missing or empty`,
276
279
  );
277
- const service = this.context.graph.getService(
278
- this.context.graph.buildPath(element.package, element.name),
280
+ const service = this.context.currentSubGraph.getOwnService(
281
+ V1_buildFullPath(element.package, element.name),
279
282
  );
280
283
  service.stereotypes = element.stereotypes
281
284
  .map((stereotype) => this.context.resolveStereotype(stereotype))
@@ -297,8 +300,8 @@ export class V1_ProtocolToMetaModelGraphSecondPassBuilder
297
300
  }
298
301
 
299
302
  visit_SectionIndex(element: V1_SectionIndex): void {
300
- const sectionIndex = guaranteeNonNullable(
301
- this.context.graph.getOwnSectionIndex(element.path),
303
+ const sectionIndex = this.context.currentSubGraph.getOwnSectionIndex(
304
+ element.path,
302
305
  );
303
306
  sectionIndex.sections = element.sections.map((section) =>
304
307
  V1_buildSection(section, this.context, sectionIndex),
@@ -310,8 +313,8 @@ export class V1_ProtocolToMetaModelGraphSecondPassBuilder
310
313
  element.type,
311
314
  `File generation 'type' field is missing or empty`,
312
315
  );
313
- const fileGeneration = this.context.graph.getFileGeneration(
314
- this.context.graph.buildPath(element.package, element.name),
316
+ const fileGeneration = this.context.currentSubGraph.getOwnFileGeneration(
317
+ V1_buildFullPath(element.package, element.name),
315
318
  );
316
319
  fileGeneration.type = element.type;
317
320
  fileGeneration.configurationProperties =
@@ -323,9 +326,10 @@ export class V1_ProtocolToMetaModelGraphSecondPassBuilder
323
326
  }
324
327
 
325
328
  visit_GenerationSpecification(element: V1_GenerationSpecification): void {
326
- const generationSpec = this.context.graph.getGenerationSpecification(
327
- this.context.graph.buildPath(element.package, element.name),
328
- );
329
+ const generationSpec =
330
+ this.context.currentSubGraph.getOwnGenerationSpecification(
331
+ V1_buildFullPath(element.package, element.name),
332
+ );
329
333
  generationSpec.generationNodes = element.generationNodes.map((node) =>
330
334
  V1_buildGenerationTreeNode(node, this.context),
331
335
  );
@@ -335,8 +339,8 @@ export class V1_ProtocolToMetaModelGraphSecondPassBuilder
335
339
  }
336
340
 
337
341
  visit_PackageableRuntime(element: V1_PackageableRuntime): void {
338
- const runtime = this.context.graph.getRuntime(
339
- this.context.graph.buildPath(element.package, element.name),
342
+ const runtime = this.context.currentSubGraph.getOwnRuntime(
343
+ V1_buildFullPath(element.package, element.name),
340
344
  );
341
345
  runtime.runtimeValue = V1_buildEngineRuntime(
342
346
  element.runtimeValue,
@@ -345,8 +349,8 @@ export class V1_ProtocolToMetaModelGraphSecondPassBuilder
345
349
  }
346
350
 
347
351
  visit_PackageableConnection(element: V1_PackageableConnection): void {
348
- const connection = this.context.graph.getConnection(
349
- this.context.graph.buildPath(element.package, element.name),
352
+ const connection = this.context.currentSubGraph.getOwnConnection(
353
+ V1_buildFullPath(element.package, element.name),
350
354
  );
351
355
  if (element.connectionValue instanceof V1_ConnectionPointer) {
352
356
  throw new IllegalStateError(