lutaml 0.10.18 → 0.11.2

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 (632) hide show
  1. checksums.yaml +4 -4
  2. data/.github/workflows/release.yml +8 -1
  3. data/.gitignore +4 -0
  4. data/.rubocop_todo.yml +82 -161
  5. data/CLAUDE.md +32 -8
  6. data/Gemfile +14 -10
  7. data/Rakefile +6 -4
  8. data/lib/lutaml/version.rb +1 -1
  9. data/lib/lutaml.rb +3 -9
  10. data/lutaml.gemspec +2 -18
  11. metadata +5 -860
  12. data/Makefile +0 -2
  13. data/TODO.cleanups/05-replace-marshal-load.md +0 -37
  14. data/TODO.cleanups/06-replace-eval-in-tests.md +0 -41
  15. data/TODO.cleanups/10-split-large-files.md +0 -47
  16. data/config/diagram_styles.yml +0 -200
  17. data/config/model_transformations.yml +0 -266
  18. data/config/package_metadata.example.yml +0 -58
  19. data/config/qea_schema.yml +0 -1024
  20. data/config/static_site.yml +0 -166
  21. data/examples/UML_EA.DTD +0 -6856
  22. data/examples/lur/20251010_current_plateau_v5.1.lur +0 -0
  23. data/examples/lur/basic.lur +0 -0
  24. data/examples/lur/test-output.lur +0 -0
  25. data/examples/lur/test.lur +0 -0
  26. data/examples/lur_basic_usage.rb +0 -220
  27. data/examples/lur_cli_workflow.rb +0 -262
  28. data/examples/lur_statistics.rb +0 -325
  29. data/examples/qea/20251010_current_plateau_v5.1.qea +0 -0
  30. data/examples/qea/ArcGISWorkspace_template.qea +0 -0
  31. data/examples/qea/README_qea_parser.adoc +0 -230
  32. data/examples/qea/UmlModel_template.qea +0 -0
  33. data/examples/qea/basic.qea +0 -0
  34. data/examples/qea/simple.qea +0 -0
  35. data/examples/qea/simple_example.qea +0 -0
  36. data/examples/qea/test.qea +0 -0
  37. data/examples/xmi/20251010_current_plateau_v5.1.xmi +0 -118121
  38. data/examples/xmi/ArcGISWorkspace_template.xmi +0 -1467
  39. data/examples/xmi/Images/EAID_0016F797_D055_4717_AF1A_606413D0A166.svg +0 -158
  40. data/examples/xmi/Images/EAID_00C5C772_5A03_434f_BF30_AC37542A1AAC.svg +0 -659
  41. data/examples/xmi/Images/EAID_0114FD24_9E58_4664_98CD_71305B59AD11.svg +0 -411
  42. data/examples/xmi/Images/EAID_01661E1B_31B6_4167_BCCF_A00678FB4EA2.svg +0 -102
  43. data/examples/xmi/Images/EAID_039FE004_5408_4fc0_89AA_EB319E4F61C7.svg +0 -169
  44. data/examples/xmi/Images/EAID_04EE9625_17A0_4721_BC71_21756DB21D06.svg +0 -403
  45. data/examples/xmi/Images/EAID_05FF9417_1619_4170_B0C9_55AA6B988EF1.svg +0 -175
  46. data/examples/xmi/Images/EAID_09853FB2_AF8A_432f_94C5_6C47461BD937.svg +0 -360
  47. data/examples/xmi/Images/EAID_09927B7F_A657_4819_99E5_AC9DC99227D9.svg +0 -195
  48. data/examples/xmi/Images/EAID_09AF6B8A_557C_43bc_BBB0_47C1E9401EF3.svg +0 -218
  49. data/examples/xmi/Images/EAID_0BE81AC5_031B_4973_A9A0_223CCD92BAA1.svg +0 -471
  50. data/examples/xmi/Images/EAID_0EDEA6EF_4DC8_4979_BB80_28B1B9EBD1D4.svg +0 -56
  51. data/examples/xmi/Images/EAID_0F413534_6AD2_48bc_B4AF_8699D530D91D.svg +0 -262
  52. data/examples/xmi/Images/EAID_1321F39B_AD67_47b5_B5C3_3A42BBFCBDF9.svg +0 -286
  53. data/examples/xmi/Images/EAID_13E09C71_99E7_40b4_B72D_48AF6379BC2E.svg +0 -164
  54. data/examples/xmi/Images/EAID_144955D8_CB4E_4b59_BB0C_E549F7F84943.svg +0 -66
  55. data/examples/xmi/Images/EAID_14E9F5FD_F6CD_4f48_B1CD_F5A40C6D8E83.svg +0 -95
  56. data/examples/xmi/Images/EAID_157826AA_96A7_4278_89A6_94BD0F31409A.svg +0 -63
  57. data/examples/xmi/Images/EAID_159E9DA0_7A54_4817_B72A_401C750F675D.svg +0 -306
  58. data/examples/xmi/Images/EAID_17BC8309_8051_492b_BE87_61CCFE83DB16.svg +0 -45
  59. data/examples/xmi/Images/EAID_1A10EB6D_E2E5_42a6_A31E_B293D93FD07E.svg +0 -193
  60. data/examples/xmi/Images/EAID_1A290AFD_CE96_46a2_8351_A986D77CC727.svg +0 -444
  61. data/examples/xmi/Images/EAID_1B2D9309_C66B_492a_995C_95B2B02E0D7C.svg +0 -168
  62. data/examples/xmi/Images/EAID_1DE6B973_CE8A_416f_909B_54CEA1E5944E.svg +0 -10
  63. data/examples/xmi/Images/EAID_204F4ACC_2230_4c8d_9861_EF5A6844B712.svg +0 -60
  64. data/examples/xmi/Images/EAID_227300E2_4F4B_4955_83B9_FA626CE8680B.svg +0 -188
  65. data/examples/xmi/Images/EAID_22C24D4C_4894_480a_B113_0CB034CB59E9.svg +0 -426
  66. data/examples/xmi/Images/EAID_234BC4F5_8100_4969_BDCB_A24E0E641F23.svg +0 -169
  67. data/examples/xmi/Images/EAID_24446BFC_9FEB_4935_8970_65A4C562A93F.svg +0 -277
  68. data/examples/xmi/Images/EAID_24E8A45C_C99F_49b7_860A_9CF65FF76C76.svg +0 -575
  69. data/examples/xmi/Images/EAID_272F3181_4300_48b7_98A0_A8CFD12B1A72.svg +0 -255
  70. data/examples/xmi/Images/EAID_292E0D94_392C_4da6_A0B5_841501FAE50A.svg +0 -183
  71. data/examples/xmi/Images/EAID_29DD0967_ADAB_4abb_99C5_544821F5E7DA.svg +0 -10
  72. data/examples/xmi/Images/EAID_2A339928_E5EF_4ed2_9E5D_CC2CA5CF248B.svg +0 -310
  73. data/examples/xmi/Images/EAID_2A5E0832_06BE_4381_85D4_9B00E4F95575.svg +0 -155
  74. data/examples/xmi/Images/EAID_2AAB709F_EFCE_496f_8AFE_92809D66A0A9.svg +0 -81
  75. data/examples/xmi/Images/EAID_2C8DD882_8DEA_4065_89F8_DDA796AA0C85.svg +0 -520
  76. data/examples/xmi/Images/EAID_2E98EA19_37D8_4b70_BDCE_CFEE4FA800B0.svg +0 -173
  77. data/examples/xmi/Images/EAID_30D62231_110F_44e8_9C06_6FCDCBA53A09.svg +0 -722
  78. data/examples/xmi/Images/EAID_3206D3FD_1FC4_41c7_8D00_36DB908E9319.svg +0 -181
  79. data/examples/xmi/Images/EAID_3452CC53_9ACB_44eb_9C9D_B90CF862F284.svg +0 -92
  80. data/examples/xmi/Images/EAID_348EE46E_ABD9_40b0_82A1_0285E75BDC52.svg +0 -187
  81. data/examples/xmi/Images/EAID_34FF671B_CFDC_47ad_91DF_ECA6D8358180.svg +0 -217
  82. data/examples/xmi/Images/EAID_359DD694_0100_4bdf_AD5F_712D97E9C69B.svg +0 -157
  83. data/examples/xmi/Images/EAID_35DE714C_49A8_490e_913A_56F39EF317F9.svg +0 -180
  84. data/examples/xmi/Images/EAID_360C79F1_8EDF_41db_A069_DECDC55625BC.svg +0 -31
  85. data/examples/xmi/Images/EAID_36913C58_FF35_4ba2_A04B_9A4824E24609.svg +0 -166
  86. data/examples/xmi/Images/EAID_372F7F7B_57ED_469a_A640_70DB578B3C56.svg +0 -361
  87. data/examples/xmi/Images/EAID_37AC19B9_8433_4fee_A326_763170D54D06.svg +0 -32
  88. data/examples/xmi/Images/EAID_38170608_32B5_4a6f_A68D_A0D7C0C9D019.svg +0 -234
  89. data/examples/xmi/Images/EAID_3A77A5D0_4E1B_4116_8AAD_407FC422B47F.svg +0 -183
  90. data/examples/xmi/Images/EAID_3B8BD087_1683_46b1_8D0D_6F839C46C578.svg +0 -42
  91. data/examples/xmi/Images/EAID_3DC20801_AE8B_4e76_B08C_F574E8A90E13.svg +0 -192
  92. data/examples/xmi/Images/EAID_3DE28C70_C6D4_406c_B49F_EEF52148C8C1.svg +0 -124
  93. data/examples/xmi/Images/EAID_458E093C_BA2B_4292_BEC4_37511C163DDC.svg +0 -140
  94. data/examples/xmi/Images/EAID_45F9B1F7_E568_47c9_B229_953BC2E707E4.svg +0 -266
  95. data/examples/xmi/Images/EAID_46B3041A_8C23_46e6_8E14_ADE7012274C5.svg +0 -80
  96. data/examples/xmi/Images/EAID_47E4600F_CEC9_4245_9BF5_EE38007A9DDB.svg +0 -584
  97. data/examples/xmi/Images/EAID_4881CEEE_792C_4cb0_BEA7_54333B643D0A.svg +0 -155
  98. data/examples/xmi/Images/EAID_48D364F0_DCA4_41e8_B4D4_509B3023B969.svg +0 -17
  99. data/examples/xmi/Images/EAID_4DBDAB9E_4C1C_4cb1_A767_06BD743A50A7.svg +0 -78
  100. data/examples/xmi/Images/EAID_4EB75007_B31D_4f2c_8855_7E9D3A3B17F4.svg +0 -454
  101. data/examples/xmi/Images/EAID_4F421236_FCF3_4aae_B22A_C7E6A5EFBAC7.svg +0 -81
  102. data/examples/xmi/Images/EAID_4FC1D352_2102_4b73_BCB0_1410B29C6BD7.svg +0 -379
  103. data/examples/xmi/Images/EAID_4FE346EA_01E1_4b30_8BE6_BB32EA191E47.svg +0 -126
  104. data/examples/xmi/Images/EAID_5038EEE3_7DD0_4cca_9829_364E044D37E8.svg +0 -199
  105. data/examples/xmi/Images/EAID_508A37DC_9378_4f5a_BD96_48F4D24E03A5.svg +0 -162
  106. data/examples/xmi/Images/EAID_516DA1A2_F0EC_415c_9664_E4CA54E7F05C.svg +0 -136
  107. data/examples/xmi/Images/EAID_52A1DBD3_D3DA_4b6d_8F96_FC6F39F64242.svg +0 -161
  108. data/examples/xmi/Images/EAID_575E87BA_32E9_4a84_AA4E_0EFDFC5D4C07.svg +0 -71
  109. data/examples/xmi/Images/EAID_57E0F1A0_6C72_47ef_B922_B806F9A875E8.svg +0 -209
  110. data/examples/xmi/Images/EAID_5957C373_3FC1_482f_8F35_D809153A17F5.svg +0 -123
  111. data/examples/xmi/Images/EAID_59A66AE2_412C_48a6_BFC7_EA56CF11D269.svg +0 -218
  112. data/examples/xmi/Images/EAID_5A43833E_680B_4a90_8931_0C902304E029.svg +0 -236
  113. data/examples/xmi/Images/EAID_5D6DB5A0_5047_4bac_9E60_69904A60B56D.svg +0 -353
  114. data/examples/xmi/Images/EAID_5DA1E7A7_8E59_4803_A831_E9F3EC27328F.svg +0 -242
  115. data/examples/xmi/Images/EAID_5E2C1E2A_82A8_47f4_B2ED_1398D72BFCFD.svg +0 -246
  116. data/examples/xmi/Images/EAID_6052620C_4BD5_49f6_A21C_AD7E6DCA2795.svg +0 -290
  117. data/examples/xmi/Images/EAID_6481E2CC_35A6_43b0_88D4_10A667A2BC2D.svg +0 -60
  118. data/examples/xmi/Images/EAID_660C7D03_A26C_4977_A7BA_9D0A773DA811.svg +0 -318
  119. data/examples/xmi/Images/EAID_671F3C3D_35B6_4514_B5B6_DD7E84925493.svg +0 -24
  120. data/examples/xmi/Images/EAID_676B9C9A_D85F_4d2f_A46B_73F02090DC87.svg +0 -127
  121. data/examples/xmi/Images/EAID_6797FEFA_5801_48e4_8B9C_3C824C0E165D.svg +0 -412
  122. data/examples/xmi/Images/EAID_6807F4EE_18EF_4e7e_ACCF_D5BD323AFDE9.svg +0 -130
  123. data/examples/xmi/Images/EAID_69E81E34_CF28_4c7f_A48F_5941BA85CEE3.svg +0 -96
  124. data/examples/xmi/Images/EAID_6A3C55E8_3C3C_4f3a_8AAC_0299C5B23070.svg +0 -10
  125. data/examples/xmi/Images/EAID_6BAC333E_E2C2_42c7_8DDF_6B4FA0FFC03B.svg +0 -143
  126. data/examples/xmi/Images/EAID_6D0349D5_3F1B_4b28_82D2_910743DEB5E5.svg +0 -114
  127. data/examples/xmi/Images/EAID_6E95B74E_8A09_4698_9E9E_23BCFD2CE194.svg +0 -37
  128. data/examples/xmi/Images/EAID_70C77F92_5614_4b22_8C8E_67859F59D8FD.svg +0 -254
  129. data/examples/xmi/Images/EAID_71F9216B_E7A7_4083_B08E_6C71B57F3A1F.svg +0 -187
  130. data/examples/xmi/Images/EAID_73025C5A_08FC_47ff_AB2F_C7F79CF54B41.svg +0 -145
  131. data/examples/xmi/Images/EAID_74C974B6_6D07_425d_B7AC_C8899E3B4967.svg +0 -76
  132. data/examples/xmi/Images/EAID_7504FCD2_524C_4e7d_BAE4_4E58A8A8A12C.svg +0 -196
  133. data/examples/xmi/Images/EAID_78030266_3603_4747_9D75_03D16614BE7D.svg +0 -35
  134. data/examples/xmi/Images/EAID_785226C1_12B1_4104_A4C1_F19B70B9FB71.svg +0 -348
  135. data/examples/xmi/Images/EAID_7854470F_26B8_4d3c_AFDF_C05BCE6ED0CD.svg +0 -72
  136. data/examples/xmi/Images/EAID_794F4A8F_18CA_4e9f_8477_A6F0E5ED22D4.svg +0 -187
  137. data/examples/xmi/Images/EAID_7A24839E_C8AE_424d_B7D2_6DA16DC813E7.svg +0 -114
  138. data/examples/xmi/Images/EAID_7A3649FD_E960_4ae6_B9B1_A9001C066AE7.svg +0 -181
  139. data/examples/xmi/Images/EAID_7B2C6765_AB68_439a_87F3_DAC323CB2AF5.svg +0 -196
  140. data/examples/xmi/Images/EAID_7C44AC09_27C1_47b3_9A85_88EC71C081FF.svg +0 -55
  141. data/examples/xmi/Images/EAID_7CE102CA_97C1_4cac_BD3B_0500D3712D2A.svg +0 -195
  142. data/examples/xmi/Images/EAID_7D960BD8_65D8_4934_9C11_4EF860DD8FBA.svg +0 -90
  143. data/examples/xmi/Images/EAID_80939C98_A456_48c3_BCEA_4B72851F2DF6.svg +0 -174
  144. data/examples/xmi/Images/EAID_812FE862_76ED_44f0_B678_7A4601B395CF.svg +0 -142
  145. data/examples/xmi/Images/EAID_81B76F5B_9D64_4bbf_8AC8_34234FB87533.svg +0 -740
  146. data/examples/xmi/Images/EAID_84352F1A_195B_411b_9552_5BFC40BF90B5.svg +0 -105
  147. data/examples/xmi/Images/EAID_846DD800_139C_4d47_A1DF_3FB1AC5D130F.svg +0 -554
  148. data/examples/xmi/Images/EAID_84A9C65B_FD6D_4bb5_818F_E8C35FF5BCD1.svg +0 -228
  149. data/examples/xmi/Images/EAID_853674F5_7DC9_4aae_809B_5728098B5D5B.svg +0 -154
  150. data/examples/xmi/Images/EAID_860CBBFB_2F27_408f_9144_751F9D1F487F.svg +0 -273
  151. data/examples/xmi/Images/EAID_87476527_7B9B_4b92_967E_3D38365470CA.svg +0 -239
  152. data/examples/xmi/Images/EAID_87DAE930_5069_4c58_AC65_4B0B2C0F32C8.svg +0 -10
  153. data/examples/xmi/Images/EAID_88AF6BD7_BC34_406f_BB59_47CFAB4A7D5D.svg +0 -116
  154. data/examples/xmi/Images/EAID_88D0CB44_20D0_44fc_A6E3_B663332EF401.svg +0 -200
  155. data/examples/xmi/Images/EAID_8BB1CA0C_C003_4678_973B_A1C3308E021D.svg +0 -136
  156. data/examples/xmi/Images/EAID_8DAB169F_D189_4320_A0F5_4443E3297F0E.svg +0 -181
  157. data/examples/xmi/Images/EAID_8FD488EF_BAAB_40ec_A7ED_F7CC831D546E.svg +0 -324
  158. data/examples/xmi/Images/EAID_90BCA409_BB45_42c5_AFA5_45FE3D995904.svg +0 -342
  159. data/examples/xmi/Images/EAID_926AFE38_01FA_469e_B6AA_ED5F4D62B66F.svg +0 -105
  160. data/examples/xmi/Images/EAID_92AB0FD0_B0FB_4ceb_8EAE_66B6600D31D7.svg +0 -681
  161. data/examples/xmi/Images/EAID_92C43670_3057_47f1_A576_C60843FF3D26.svg +0 -136
  162. data/examples/xmi/Images/EAID_93F63576_BE01_4cd8_8A91_C674FF77FC3D.svg +0 -718
  163. data/examples/xmi/Images/EAID_9400D9BC_05A5_41fc_83F7_02E5C67F9718.svg +0 -487
  164. data/examples/xmi/Images/EAID_95246DCF_1C09_4a16_9512_98000F56B3D8.svg +0 -292
  165. data/examples/xmi/Images/EAID_9994BF62_51E2_42cd_BB35_16C537B6718A.svg +0 -715
  166. data/examples/xmi/Images/EAID_9AAD6C21_B1E7_4472_B64A_FB5E3569D970.svg +0 -116
  167. data/examples/xmi/Images/EAID_9BD7189A_877B_4ca9_B42C_817DEF144FB2.svg +0 -284
  168. data/examples/xmi/Images/EAID_9DA6C553_94FC_4204_83AD_ECC4B45A53EF.svg +0 -159
  169. data/examples/xmi/Images/EAID_9EE6A41B_5FAA_4c89_B98F_732059778630.svg +0 -10
  170. data/examples/xmi/Images/EAID_9F1A4B54_46F6_435c_9529_E43E54CF6050.svg +0 -172
  171. data/examples/xmi/Images/EAID_9FE1EA7B_4CEF_4976_A281_93A94315BD84.svg +0 -153
  172. data/examples/xmi/Images/EAID_A0695647_6172_4262_8C30_67441399609C.svg +0 -290
  173. data/examples/xmi/Images/EAID_A081C63E_D6F2_41a7_A99C_307836754AFA.svg +0 -149
  174. data/examples/xmi/Images/EAID_A24E2778_5AD9_44f2_AB8F_5CD3913477D6.svg +0 -194
  175. data/examples/xmi/Images/EAID_A264F089_F9B3_406c_A3A8_FF34903797D3.svg +0 -143
  176. data/examples/xmi/Images/EAID_A282E5D1_2A13_4e7f_BC76_5D086DD4A577.svg +0 -357
  177. data/examples/xmi/Images/EAID_A3BCE1D6_9DB5_4272_A020_4C0E194B99CC.svg +0 -171
  178. data/examples/xmi/Images/EAID_A56E3818_D1B8_4b63_B69E_FBAC4A8AF482.svg +0 -218
  179. data/examples/xmi/Images/EAID_A57215D5_75C5_4532_BCF4_264A77CD62F1.svg +0 -204
  180. data/examples/xmi/Images/EAID_A59065AF_9669_486c_9582_9693177CFC7F.svg +0 -263
  181. data/examples/xmi/Images/EAID_A759374D_589A_488c_99EF_537ACB9B1FF9.svg +0 -398
  182. data/examples/xmi/Images/EAID_A7B25F46_F18A_4373_B16D_8C6AC0B868B0.svg +0 -174
  183. data/examples/xmi/Images/EAID_A9FE9E6F_A5F4_47e5_A6BA_26E22C7346B6.svg +0 -310
  184. data/examples/xmi/Images/EAID_AA62CDEB_55EC_498d_B326_4AA2C9AF6A05.svg +0 -144
  185. data/examples/xmi/Images/EAID_AAF52AF6_F7F9_4005_AE46_8920847BEA03.svg +0 -144
  186. data/examples/xmi/Images/EAID_AB281AC1_7CB8_404a_8124_34343DDD84E2.svg +0 -198
  187. data/examples/xmi/Images/EAID_AB7F1FDF_A66B_42a1_B8A3_7F594BAAD508.svg +0 -143
  188. data/examples/xmi/Images/EAID_AC2191E3_76E3_40b2_9E21_0E0B9B5277D2.svg +0 -114
  189. data/examples/xmi/Images/EAID_AD451676_A7C8_4c6a_A925_A9B9CA344142.svg +0 -339
  190. data/examples/xmi/Images/EAID_ADBA40A1_9375_4c1b_9938_0990612EB615.svg +0 -429
  191. data/examples/xmi/Images/EAID_ADC8773C_1B27_48ac_BAC1_14C1C919FAF6.svg +0 -245
  192. data/examples/xmi/Images/EAID_AE0718DF_AF69_4ea1_A099_E20028FE40A1.svg +0 -173
  193. data/examples/xmi/Images/EAID_B0DDB85D_A00C_4a7f_8C06_CCA15E5E4FE5.svg +0 -31
  194. data/examples/xmi/Images/EAID_B27ED282_D5E5_4f33_8AC1_62802F9E0B35.svg +0 -256
  195. data/examples/xmi/Images/EAID_B3AFECCB_17DD_44d6_8A44_2C38D9A64C0B.svg +0 -95
  196. data/examples/xmi/Images/EAID_B3B6C5B1_278E_4714_8244_B6C28B66AB50.svg +0 -176
  197. data/examples/xmi/Images/EAID_B53E76CD_A0F2_4e2f_B3AB_796D85964EF2.svg +0 -179
  198. data/examples/xmi/Images/EAID_B55D6E67_0BDD_4163_B359_11A6FBA89C74.svg +0 -207
  199. data/examples/xmi/Images/EAID_B58D1A53_E860_41a3_8352_11C274093E83.svg +0 -189
  200. data/examples/xmi/Images/EAID_B62C02B3_69DB_49e9_8089_4EE398BDE666.svg +0 -165
  201. data/examples/xmi/Images/EAID_BC008774_B539_4150_8174_B675989053D0.svg +0 -22
  202. data/examples/xmi/Images/EAID_BC1F7E00_082D_4a26_922B_3967A8D66859.svg +0 -266
  203. data/examples/xmi/Images/EAID_BDA613D8_402A_475a_AA15_683D88FD3D23.svg +0 -183
  204. data/examples/xmi/Images/EAID_C028B286_4C85_47d8_B6D5_80B28F556E82.svg +0 -303
  205. data/examples/xmi/Images/EAID_C173A6F4_1D1B_400e_AD8C_64FFF7CD5BE5.svg +0 -178
  206. data/examples/xmi/Images/EAID_C1834072_CADC_4ce4_B0FC_8284AE5CF4A4.svg +0 -158
  207. data/examples/xmi/Images/EAID_C1EC985B_5CBD_4e91_8661_EB4EF23781D9.svg +0 -286
  208. data/examples/xmi/Images/EAID_C31C1314_B679_4413_B8FE_A2CD584FC128.svg +0 -305
  209. data/examples/xmi/Images/EAID_C37CFBD6_69BA_42fb_9AC7_2D329D931BCF.svg +0 -171
  210. data/examples/xmi/Images/EAID_C857C934_306F_463a_87D5_257CB225ECFE.svg +0 -174
  211. data/examples/xmi/Images/EAID_C96797DE_2238_42d3_896A_9F92500270ED.svg +0 -180
  212. data/examples/xmi/Images/EAID_C96CBC24_B20E_459a_8F9D_75B61CDCB89F.svg +0 -656
  213. data/examples/xmi/Images/EAID_CACB523D_56A5_4f05_B3C2_51BB18F380FD.svg +0 -158
  214. data/examples/xmi/Images/EAID_CB34B578_101B_48b4_9271_214FFEA6A83A.svg +0 -409
  215. data/examples/xmi/Images/EAID_CBBD6CF4_0A1E_4406_9930_89DE43527910.svg +0 -361
  216. data/examples/xmi/Images/EAID_CC06A828_3750_472f_8DB2_C2E0863FCE17.svg +0 -96
  217. data/examples/xmi/Images/EAID_CD5CF053_1772_4a0f_962D_B17054D8EEAA.svg +0 -173
  218. data/examples/xmi/Images/EAID_CE440B5A_9534_4c75_9BA5_50862BB396C2.svg +0 -97
  219. data/examples/xmi/Images/EAID_CE4734FC_7986_4b3a_807F_A5B2C7EDE9E4.svg +0 -193
  220. data/examples/xmi/Images/EAID_D14AA320_9D41_4366_8739_9C2C21F96AE1.svg +0 -32
  221. data/examples/xmi/Images/EAID_D2FA55D3_C733_4a4d_92D0_0BC7AC0BB5BC.svg +0 -108
  222. data/examples/xmi/Images/EAID_D351FC34_FB03_488d_ADA4_BDB93DA9CB02.svg +0 -49
  223. data/examples/xmi/Images/EAID_D368FDF3_BDC5_4718_A701_351C8587A376.svg +0 -592
  224. data/examples/xmi/Images/EAID_D4DA8C48_3998_450d_87C4_9D65C9FECDB4.svg +0 -42
  225. data/examples/xmi/Images/EAID_D5464ECF_290E_4b2b_A6C4_25BE80F886CB.svg +0 -76
  226. data/examples/xmi/Images/EAID_D55235B0_61E9_461a_8379_2B8BF2403BE2.svg +0 -147
  227. data/examples/xmi/Images/EAID_D555ED73_F010_45d7_8A53_45A33C64C249.svg +0 -318
  228. data/examples/xmi/Images/EAID_D7AAC526_267E_45a0_A853_3207F02363F8.svg +0 -45
  229. data/examples/xmi/Images/EAID_D998B20D_A875_4ef8_A9CE_996BE56602BD.svg +0 -158
  230. data/examples/xmi/Images/EAID_DBFA8B39_F5B7_4c0e_9552_19AEAE5BA64E.svg +0 -200
  231. data/examples/xmi/Images/EAID_DE47A47D_E7BE_4e6f_BA81_F789EE8CFE72.svg +0 -61
  232. data/examples/xmi/Images/EAID_DFBB1072_8EC5_4384_8241_7EDF4B6B888B.svg +0 -78
  233. data/examples/xmi/Images/EAID_E325B9D8_E955_4aed_8125_63167BD40320.svg +0 -67
  234. data/examples/xmi/Images/EAID_E32D9D02_CAE9_4a47_92A8_3290EDCD6E6D.svg +0 -79
  235. data/examples/xmi/Images/EAID_E3B28611_7857_458a_B0BC_736E777B88EC.svg +0 -194
  236. data/examples/xmi/Images/EAID_E43C37EC_1176_4d2e_8B98_B6F3DFF6A092.svg +0 -96
  237. data/examples/xmi/Images/EAID_E591C1CF_7F35_4160_8A72_DFA097AD5811.svg +0 -271
  238. data/examples/xmi/Images/EAID_E77C66A2_2E94_4196_BFC6_662FE5AEEB6F.svg +0 -332
  239. data/examples/xmi/Images/EAID_E7AABA98_2450_4986_9736_DCCAF0108C50.svg +0 -639
  240. data/examples/xmi/Images/EAID_E7D9A2C4_72D6_40b9_8EB8_6B35476246B3.svg +0 -134
  241. data/examples/xmi/Images/EAID_E9CDAD85_ECF1_43de_819F_30A0D01785E6.svg +0 -193
  242. data/examples/xmi/Images/EAID_EC8AF507_F441_4e8a_B8A7_C1690F3C7D0B.svg +0 -58
  243. data/examples/xmi/Images/EAID_ED501058_D540_47ac_8EBC_5921E8C0BF57.svg +0 -384
  244. data/examples/xmi/Images/EAID_EFBF5F0F_DF74_4944_8791_114F5637C335.svg +0 -590
  245. data/examples/xmi/Images/EAID_EFFFA027_2A1F_425c_8437_BF89AADC8893.svg +0 -365
  246. data/examples/xmi/Images/EAID_F07E7718_B2C2_4a65_B5DD_477CB73E971E.svg +0 -165
  247. data/examples/xmi/Images/EAID_F0F20BDF_C729_47f7_B6FC_25ED2C4609CA.svg +0 -61
  248. data/examples/xmi/Images/EAID_F32E5AFE_8605_4c77_AE69_D0D0A6E380AC.svg +0 -76
  249. data/examples/xmi/Images/EAID_F3F00F45_CD37_46fd_B521_D1040EB2FB16.svg +0 -123
  250. data/examples/xmi/Images/EAID_F46E8F19_D8F1_4a3d_B87B_B0BAB4F50F50.svg +0 -202
  251. data/examples/xmi/Images/EAID_F48E5F6E_2411_4635_9315_3EAA4CFA29F7.svg +0 -351
  252. data/examples/xmi/Images/EAID_F4C23F9E_DD74_4fed_B75D_AD3C6448BA24.svg +0 -189
  253. data/examples/xmi/Images/EAID_F853B3C4_B145_4ef0_B261_C3CC0475B6D2.svg +0 -215
  254. data/examples/xmi/Images/EAID_F8BE68CA_1F8F_47e5_9454_01A2EB7D388A.svg +0 -124
  255. data/examples/xmi/Images/EAID_F92A6A28_612E_468e_9E39_D7AE7D24E24D.svg +0 -208
  256. data/examples/xmi/Images/EAID_F995FA49_B86E_4c94_BE5E_C928FB6B87D0.svg +0 -302
  257. data/examples/xmi/Images/EAID_FEAE013A_A4E4_4283_A491_1FEB8D0EBA28.svg +0 -524
  258. data/examples/xmi/Images/EAID_FEBE5726_3751_470b_9023_8C569202E97E.svg +0 -730
  259. data/examples/xmi/UML_EA.DTD +0 -6856
  260. data/examples/xmi/UmlModel_template.xmi +0 -23
  261. data/examples/xmi/basic.xmi +0 -9086
  262. data/examples/xmi/simple.xmi +0 -655
  263. data/examples/xmi/simple_example.xmi +0 -23
  264. data/examples/xmi/test.xmi +0 -1703
  265. data/exe/lutaml +0 -11
  266. data/exe/lutaml-sysml +0 -22
  267. data/exe/lutaml-wsd2uml +0 -63
  268. data/exe/lutaml-yaml2uml +0 -146
  269. data/lib/lutaml/cli/element_identifier.rb +0 -160
  270. data/lib/lutaml/cli/enhanced_formatter.rb +0 -494
  271. data/lib/lutaml/cli/interactive_shell/bookmark_commands.rb +0 -85
  272. data/lib/lutaml/cli/interactive_shell/command_base.rb +0 -32
  273. data/lib/lutaml/cli/interactive_shell/export_handler.rb +0 -73
  274. data/lib/lutaml/cli/interactive_shell/help_display.rb +0 -107
  275. data/lib/lutaml/cli/interactive_shell/navigation_commands.rb +0 -151
  276. data/lib/lutaml/cli/interactive_shell/query_commands.rb +0 -208
  277. data/lib/lutaml/cli/interactive_shell.rb +0 -254
  278. data/lib/lutaml/cli/lml_commands.rb +0 -205
  279. data/lib/lutaml/cli/output_formatter.rb +0 -348
  280. data/lib/lutaml/cli/resource_registry.rb +0 -127
  281. data/lib/lutaml/cli/tree_view_formatter.rb +0 -312
  282. data/lib/lutaml/cli/uml/build_command.rb +0 -466
  283. data/lib/lutaml/cli/uml/diagram_command.rb +0 -415
  284. data/lib/lutaml/cli/uml/export_command.rb +0 -77
  285. data/lib/lutaml/cli/uml/find_command.rb +0 -119
  286. data/lib/lutaml/cli/uml/info_command.rb +0 -103
  287. data/lib/lutaml/cli/uml/inspect_command.rb +0 -85
  288. data/lib/lutaml/cli/uml/ls_command.rb +0 -102
  289. data/lib/lutaml/cli/uml/repl_command.rb +0 -49
  290. data/lib/lutaml/cli/uml/search_command.rb +0 -85
  291. data/lib/lutaml/cli/uml/serve_command.rb +0 -58
  292. data/lib/lutaml/cli/uml/shared_helpers.rb +0 -49
  293. data/lib/lutaml/cli/uml/spa_command.rb +0 -208
  294. data/lib/lutaml/cli/uml/stats_command.rb +0 -57
  295. data/lib/lutaml/cli/uml/tree_command.rb +0 -82
  296. data/lib/lutaml/cli/uml/validate_command.rb +0 -190
  297. data/lib/lutaml/cli/uml/verify_command.rb +0 -103
  298. data/lib/lutaml/cli/uml.rb +0 -24
  299. data/lib/lutaml/cli/uml_commands.rb +0 -145
  300. data/lib/lutaml/cli.rb +0 -84
  301. data/lib/lutaml/converter/dsl_to_uml.rb +0 -237
  302. data/lib/lutaml/converter/xmi_to_uml.rb +0 -329
  303. data/lib/lutaml/converter/xmi_to_uml_generalization.rb +0 -193
  304. data/lib/lutaml/converter.rb +0 -10
  305. data/lib/lutaml/ea/diagram/configuration.rb +0 -379
  306. data/lib/lutaml/ea/diagram/element_renderers/base_renderer.rb +0 -81
  307. data/lib/lutaml/ea/diagram/element_renderers/class_renderer.rb +0 -328
  308. data/lib/lutaml/ea/diagram/element_renderers/connector_renderer.rb +0 -53
  309. data/lib/lutaml/ea/diagram/element_renderers/package_renderer.rb +0 -67
  310. data/lib/lutaml/ea/diagram/element_renderers.rb +0 -18
  311. data/lib/lutaml/ea/diagram/extractor.rb +0 -562
  312. data/lib/lutaml/ea/diagram/layout_engine.rb +0 -249
  313. data/lib/lutaml/ea/diagram/path_builder.rb +0 -256
  314. data/lib/lutaml/ea/diagram/style_parser.rb +0 -315
  315. data/lib/lutaml/ea/diagram/style_resolver.rb +0 -281
  316. data/lib/lutaml/ea/diagram/svg_renderer.rb +0 -279
  317. data/lib/lutaml/ea/diagram/util.rb +0 -69
  318. data/lib/lutaml/ea/diagram.rb +0 -62
  319. data/lib/lutaml/ea.rb +0 -7
  320. data/lib/lutaml/formatter/base.rb +0 -63
  321. data/lib/lutaml/formatter/graphviz.rb +0 -374
  322. data/lib/lutaml/formatter.rb +0 -20
  323. data/lib/lutaml/layout/engine.rb +0 -17
  324. data/lib/lutaml/layout/graph_viz_engine.rb +0 -19
  325. data/lib/lutaml/layout.rb +0 -8
  326. data/lib/lutaml/model_transformations/configuration.rb +0 -333
  327. data/lib/lutaml/model_transformations/format_registry.rb +0 -392
  328. data/lib/lutaml/model_transformations/parsers/base_parser.rb +0 -464
  329. data/lib/lutaml/model_transformations/parsers/qea_parser.rb +0 -450
  330. data/lib/lutaml/model_transformations/parsers/xmi_parser.rb +0 -289
  331. data/lib/lutaml/model_transformations/transformation_engine.rb +0 -405
  332. data/lib/lutaml/model_transformations.rb +0 -143
  333. data/lib/lutaml/qea/benchmark.rb +0 -210
  334. data/lib/lutaml/qea/database.rb +0 -270
  335. data/lib/lutaml/qea/factory/association_builder.rb +0 -203
  336. data/lib/lutaml/qea/factory/association_transformer.rb +0 -107
  337. data/lib/lutaml/qea/factory/attribute_tag_transformer.rb +0 -57
  338. data/lib/lutaml/qea/factory/attribute_transformer.rb +0 -93
  339. data/lib/lutaml/qea/factory/base_transformer.rb +0 -127
  340. data/lib/lutaml/qea/factory/class_transformer.rb +0 -164
  341. data/lib/lutaml/qea/factory/constraint_transformer.rb +0 -75
  342. data/lib/lutaml/qea/factory/data_type_transformer.rb +0 -133
  343. data/lib/lutaml/qea/factory/diagram_transformer.rb +0 -157
  344. data/lib/lutaml/qea/factory/document_builder.rb +0 -273
  345. data/lib/lutaml/qea/factory/ea_to_uml_factory.rb +0 -243
  346. data/lib/lutaml/qea/factory/enum_transformer.rb +0 -88
  347. data/lib/lutaml/qea/factory/generalization_builder.rb +0 -236
  348. data/lib/lutaml/qea/factory/generalization_transformer.rb +0 -98
  349. data/lib/lutaml/qea/factory/instance_transformer.rb +0 -84
  350. data/lib/lutaml/qea/factory/object_property_transformer.rb +0 -58
  351. data/lib/lutaml/qea/factory/operation_transformer.rb +0 -66
  352. data/lib/lutaml/qea/factory/package_transformer.rb +0 -208
  353. data/lib/lutaml/qea/factory/reference_resolver.rb +0 -99
  354. data/lib/lutaml/qea/factory/stereotype_loader.rb +0 -40
  355. data/lib/lutaml/qea/factory/tagged_value_transformer.rb +0 -38
  356. data/lib/lutaml/qea/factory/transformer_registry.rb +0 -77
  357. data/lib/lutaml/qea/factory.rb +0 -37
  358. data/lib/lutaml/qea/file_detector.rb +0 -178
  359. data/lib/lutaml/qea/infrastructure/database_connection.rb +0 -100
  360. data/lib/lutaml/qea/infrastructure/schema_reader.rb +0 -136
  361. data/lib/lutaml/qea/infrastructure/table_reader.rb +0 -224
  362. data/lib/lutaml/qea/infrastructure.rb +0 -12
  363. data/lib/lutaml/qea/models/base_model.rb +0 -48
  364. data/lib/lutaml/qea/models/ea_attribute.rb +0 -133
  365. data/lib/lutaml/qea/models/ea_attribute_tag.rb +0 -107
  366. data/lib/lutaml/qea/models/ea_complexity_type.rb +0 -79
  367. data/lib/lutaml/qea/models/ea_connector.rb +0 -160
  368. data/lib/lutaml/qea/models/ea_connector_type.rb +0 -60
  369. data/lib/lutaml/qea/models/ea_constraint_type.rb +0 -63
  370. data/lib/lutaml/qea/models/ea_datatype.rb +0 -104
  371. data/lib/lutaml/qea/models/ea_diagram.rb +0 -115
  372. data/lib/lutaml/qea/models/ea_diagram_link.rb +0 -78
  373. data/lib/lutaml/qea/models/ea_diagram_object.rb +0 -84
  374. data/lib/lutaml/qea/models/ea_diagram_type.rb +0 -56
  375. data/lib/lutaml/qea/models/ea_document.rb +0 -66
  376. data/lib/lutaml/qea/models/ea_object.rb +0 -206
  377. data/lib/lutaml/qea/models/ea_object_constraint.rb +0 -60
  378. data/lib/lutaml/qea/models/ea_object_property.rb +0 -94
  379. data/lib/lutaml/qea/models/ea_object_type.rb +0 -73
  380. data/lib/lutaml/qea/models/ea_operation.rb +0 -151
  381. data/lib/lutaml/qea/models/ea_operation_param.rb +0 -71
  382. data/lib/lutaml/qea/models/ea_package.rb +0 -73
  383. data/lib/lutaml/qea/models/ea_script.rb +0 -67
  384. data/lib/lutaml/qea/models/ea_status_type.rb +0 -66
  385. data/lib/lutaml/qea/models/ea_stereotype.rb +0 -57
  386. data/lib/lutaml/qea/models/ea_tagged_value.rb +0 -103
  387. data/lib/lutaml/qea/models/ea_xref.rb +0 -172
  388. data/lib/lutaml/qea/models.rb +0 -35
  389. data/lib/lutaml/qea/parser.rb +0 -57
  390. data/lib/lutaml/qea/repositories/base_repository.rb +0 -215
  391. data/lib/lutaml/qea/repositories/object_repository.rb +0 -219
  392. data/lib/lutaml/qea/repositories.rb +0 -10
  393. data/lib/lutaml/qea/services/configuration.rb +0 -211
  394. data/lib/lutaml/qea/services/database_loader.rb +0 -186
  395. data/lib/lutaml/qea/services.rb +0 -10
  396. data/lib/lutaml/qea/validation/association_validator.rb +0 -73
  397. data/lib/lutaml/qea/validation/attribute_validator.rb +0 -101
  398. data/lib/lutaml/qea/validation/base_validator.rb +0 -312
  399. data/lib/lutaml/qea/validation/class_validator.rb +0 -121
  400. data/lib/lutaml/qea/validation/database/circular_reference_validator.rb +0 -109
  401. data/lib/lutaml/qea/validation/database/orphan_validator.rb +0 -153
  402. data/lib/lutaml/qea/validation/database/referential_integrity_validator.rb +0 -128
  403. data/lib/lutaml/qea/validation/database.rb +0 -10
  404. data/lib/lutaml/qea/validation/diagram_validator.rb +0 -112
  405. data/lib/lutaml/qea/validation/formatters/json_formatter.rb +0 -137
  406. data/lib/lutaml/qea/validation/formatters/text_formatter.rb +0 -235
  407. data/lib/lutaml/qea/validation/operation_validator.rb +0 -79
  408. data/lib/lutaml/qea/validation/package_validator.rb +0 -111
  409. data/lib/lutaml/qea/validation/validation_engine.rb +0 -477
  410. data/lib/lutaml/qea/validation/validation_message.rb +0 -144
  411. data/lib/lutaml/qea/validation/validation_result.rb +0 -210
  412. data/lib/lutaml/qea/validation/validator_registry.rb +0 -134
  413. data/lib/lutaml/qea/validation.rb +0 -27
  414. data/lib/lutaml/qea/verification/comparison_result.rb +0 -264
  415. data/lib/lutaml/qea/verification/document_normalizer.rb +0 -169
  416. data/lib/lutaml/qea/verification/document_verifier.rb +0 -323
  417. data/lib/lutaml/qea/verification/element_comparator.rb +0 -277
  418. data/lib/lutaml/qea/verification/structure_matcher.rb +0 -287
  419. data/lib/lutaml/qea/verification.rb +0 -14
  420. data/lib/lutaml/qea.rb +0 -225
  421. data/lib/lutaml/uml/abstraction.rb +0 -11
  422. data/lib/lutaml/uml/action.rb +0 -15
  423. data/lib/lutaml/uml/activity.rb +0 -11
  424. data/lib/lutaml/uml/actor.rb +0 -11
  425. data/lib/lutaml/uml/association.rb +0 -35
  426. data/lib/lutaml/uml/association_generalization.rb +0 -18
  427. data/lib/lutaml/uml/behavior.rb +0 -11
  428. data/lib/lutaml/uml/cardinality.rb +0 -10
  429. data/lib/lutaml/uml/class.rb +0 -50
  430. data/lib/lutaml/uml/classifier.rb +0 -17
  431. data/lib/lutaml/uml/comment.rb +0 -13
  432. data/lib/lutaml/uml/connector.rb +0 -18
  433. data/lib/lutaml/uml/connector_end.rb +0 -20
  434. data/lib/lutaml/uml/constraint.rb +0 -22
  435. data/lib/lutaml/uml/data_type.rb +0 -54
  436. data/lib/lutaml/uml/dependency.rb +0 -18
  437. data/lib/lutaml/uml/diagram.rb +0 -23
  438. data/lib/lutaml/uml/diagram_link.rb +0 -26
  439. data/lib/lutaml/uml/diagram_object.rb +0 -30
  440. data/lib/lutaml/uml/document.rb +0 -62
  441. data/lib/lutaml/uml/enum.rb +0 -19
  442. data/lib/lutaml/uml/event.rb +0 -11
  443. data/lib/lutaml/uml/fidelity.rb +0 -10
  444. data/lib/lutaml/uml/final_state.rb +0 -11
  445. data/lib/lutaml/uml/fontname.rb +0 -13
  446. data/lib/lutaml/uml/general_attribute.rb +0 -22
  447. data/lib/lutaml/uml/generalization.rb +0 -35
  448. data/lib/lutaml/uml/group.rb +0 -19
  449. data/lib/lutaml/uml/has_attributes.rb +0 -14
  450. data/lib/lutaml/uml/has_members.rb +0 -30
  451. data/lib/lutaml/uml/inheritance_walker.rb +0 -96
  452. data/lib/lutaml/uml/instance.rb +0 -15
  453. data/lib/lutaml/uml/model.rb +0 -13
  454. data/lib/lutaml/uml/model_helpers.rb +0 -93
  455. data/lib/lutaml/uml/namespace.rb +0 -10
  456. data/lib/lutaml/uml/node/attribute.rb +0 -30
  457. data/lib/lutaml/uml/node/base.rb +0 -19
  458. data/lib/lutaml/uml/node/class_node.rb +0 -48
  459. data/lib/lutaml/uml/node/class_relationship.rb +0 -11
  460. data/lib/lutaml/uml/node/document.rb +0 -15
  461. data/lib/lutaml/uml/node/has_name.rb +0 -15
  462. data/lib/lutaml/uml/node/has_type.rb +0 -15
  463. data/lib/lutaml/uml/node/method_argument.rb +0 -12
  464. data/lib/lutaml/uml/node/operation.rb +0 -23
  465. data/lib/lutaml/uml/node/relationship.rb +0 -22
  466. data/lib/lutaml/uml/opaque_behavior.rb +0 -11
  467. data/lib/lutaml/uml/operation.rb +0 -21
  468. data/lib/lutaml/uml/operation_parameter.rb +0 -17
  469. data/lib/lutaml/uml/package.rb +0 -31
  470. data/lib/lutaml/uml/package_path.rb +0 -235
  471. data/lib/lutaml/uml/parsers/attribute.rb +0 -68
  472. data/lib/lutaml/uml/parsers/dsl.rb +0 -415
  473. data/lib/lutaml/uml/parsers/dsl_preprocessor.rb +0 -63
  474. data/lib/lutaml/uml/parsers/dsl_transform.rb +0 -27
  475. data/lib/lutaml/uml/parsers/yaml.rb +0 -23
  476. data/lib/lutaml/uml/port.rb +0 -8
  477. data/lib/lutaml/uml/primitive_type.rb +0 -13
  478. data/lib/lutaml/uml/property.rb +0 -25
  479. data/lib/lutaml/uml/pseudostate.rb +0 -11
  480. data/lib/lutaml/uml/qualified_name.rb +0 -175
  481. data/lib/lutaml/uml/realization.rb +0 -11
  482. data/lib/lutaml/uml/region.rb +0 -11
  483. data/lib/lutaml/uml/state.rb +0 -20
  484. data/lib/lutaml/uml/state_machine.rb +0 -11
  485. data/lib/lutaml/uml/tagged_value.rb +0 -21
  486. data/lib/lutaml/uml/top_element.rb +0 -83
  487. data/lib/lutaml/uml/top_element_attribute.rb +0 -62
  488. data/lib/lutaml/uml/transition.rb +0 -22
  489. data/lib/lutaml/uml/trigger.rb +0 -16
  490. data/lib/lutaml/uml/validation/document_structure_validator.rb +0 -387
  491. data/lib/lutaml/uml/value.rb +0 -35
  492. data/lib/lutaml/uml/vertex.rb +0 -11
  493. data/lib/lutaml/uml.rb +0 -113
  494. data/lib/lutaml/uml_repository/class_lookup_index.rb +0 -40
  495. data/lib/lutaml/uml_repository/error_handler.rb +0 -203
  496. data/lib/lutaml/uml_repository/exporters/base_exporter.rb +0 -61
  497. data/lib/lutaml/uml_repository/exporters/json_exporter.rb +0 -343
  498. data/lib/lutaml/uml_repository/exporters/markdown/class_page_builder.rb +0 -187
  499. data/lib/lutaml/uml_repository/exporters/markdown/formatting.rb +0 -34
  500. data/lib/lutaml/uml_repository/exporters/markdown/index_page_builder.rb +0 -81
  501. data/lib/lutaml/uml_repository/exporters/markdown/link_resolver.rb +0 -40
  502. data/lib/lutaml/uml_repository/exporters/markdown/package_page_builder.rb +0 -107
  503. data/lib/lutaml/uml_repository/exporters/markdown.rb +0 -20
  504. data/lib/lutaml/uml_repository/exporters/markdown_exporter.rb +0 -86
  505. data/lib/lutaml/uml_repository/index_builder.rb +0 -210
  506. data/lib/lutaml/uml_repository/index_builders/association_index.rb +0 -155
  507. data/lib/lutaml/uml_repository/index_builders/class_index.rb +0 -113
  508. data/lib/lutaml/uml_repository/index_builders/package_index.rb +0 -62
  509. data/lib/lutaml/uml_repository/index_builders.rb +0 -13
  510. data/lib/lutaml/uml_repository/lazy_repository.rb +0 -236
  511. data/lib/lutaml/uml_repository/package_exporter.rb +0 -334
  512. data/lib/lutaml/uml_repository/package_loader.rb +0 -240
  513. data/lib/lutaml/uml_repository/package_metadata.rb +0 -77
  514. data/lib/lutaml/uml_repository/presenters/association_presenter.rb +0 -79
  515. data/lib/lutaml/uml_repository/presenters/attribute_presenter.rb +0 -94
  516. data/lib/lutaml/uml_repository/presenters/class_presenter.rb +0 -72
  517. data/lib/lutaml/uml_repository/presenters/datatype_presenter.rb +0 -97
  518. data/lib/lutaml/uml_repository/presenters/diagram_presenter.rb +0 -469
  519. data/lib/lutaml/uml_repository/presenters/element_presenter.rb +0 -91
  520. data/lib/lutaml/uml_repository/presenters/enum_presenter.rb +0 -78
  521. data/lib/lutaml/uml_repository/presenters/package_presenter.rb +0 -48
  522. data/lib/lutaml/uml_repository/presenters/presenter_factory.rb +0 -74
  523. data/lib/lutaml/uml_repository/queries/association_query.rb +0 -184
  524. data/lib/lutaml/uml_repository/queries/base_query.rb +0 -45
  525. data/lib/lutaml/uml_repository/queries/class_query.rb +0 -178
  526. data/lib/lutaml/uml_repository/queries/diagram_query.rb +0 -108
  527. data/lib/lutaml/uml_repository/queries/inheritance_query.rb +0 -327
  528. data/lib/lutaml/uml_repository/queries/package_query.rb +0 -230
  529. data/lib/lutaml/uml_repository/queries/search_query.rb +0 -209
  530. data/lib/lutaml/uml_repository/query_dsl/conditions/base_condition.rb +0 -28
  531. data/lib/lutaml/uml_repository/query_dsl/conditions/block_condition.rb +0 -44
  532. data/lib/lutaml/uml_repository/query_dsl/conditions/hash_condition.rb +0 -82
  533. data/lib/lutaml/uml_repository/query_dsl/conditions/package_condition.rb +0 -89
  534. data/lib/lutaml/uml_repository/query_dsl/order.rb +0 -90
  535. data/lib/lutaml/uml_repository/query_dsl/query_builder.rb +0 -290
  536. data/lib/lutaml/uml_repository/repository/deprecated.rb +0 -39
  537. data/lib/lutaml/uml_repository/repository/loader.rb +0 -117
  538. data/lib/lutaml/uml_repository/repository.rb +0 -718
  539. data/lib/lutaml/uml_repository/repository_enhanced.rb +0 -431
  540. data/lib/lutaml/uml_repository/search_result.rb +0 -86
  541. data/lib/lutaml/uml_repository/static_site/association_serialization.rb +0 -77
  542. data/lib/lutaml/uml_repository/static_site/configuration.rb +0 -268
  543. data/lib/lutaml/uml_repository/static_site/data_transformer.rb +0 -121
  544. data/lib/lutaml/uml_repository/static_site/generator.rb +0 -434
  545. data/lib/lutaml/uml_repository/static_site/id_generator.rb +0 -115
  546. data/lib/lutaml/uml_repository/static_site/models/spa_association.rb +0 -29
  547. data/lib/lutaml/uml_repository/static_site/models/spa_association_end.rb +0 -25
  548. data/lib/lutaml/uml_repository/static_site/models/spa_attribute.rb +0 -39
  549. data/lib/lutaml/uml_repository/static_site/models/spa_base.rb +0 -12
  550. data/lib/lutaml/uml_repository/static_site/models/spa_cardinality.rb +0 -19
  551. data/lib/lutaml/uml_repository/static_site/models/spa_class.rb +0 -59
  552. data/lib/lutaml/uml_repository/static_site/models/spa_diagram.rb +0 -31
  553. data/lib/lutaml/uml_repository/static_site/models/spa_document.rb +0 -31
  554. data/lib/lutaml/uml_repository/static_site/models/spa_inherited_association.rb +0 -25
  555. data/lib/lutaml/uml_repository/static_site/models/spa_inherited_attribute.rb +0 -25
  556. data/lib/lutaml/uml_repository/static_site/models/spa_literal.rb +0 -19
  557. data/lib/lutaml/uml_repository/static_site/models/spa_metadata.rb +0 -23
  558. data/lib/lutaml/uml_repository/static_site/models/spa_operation.rb +0 -34
  559. data/lib/lutaml/uml_repository/static_site/models/spa_package.rb +0 -35
  560. data/lib/lutaml/uml_repository/static_site/models/spa_package_tree_node.rb +0 -32
  561. data/lib/lutaml/uml_repository/static_site/models/spa_parameter.rb +0 -21
  562. data/lib/lutaml/uml_repository/static_site/models/spa_search_entry.rb +0 -35
  563. data/lib/lutaml/uml_repository/static_site/models/spa_statistics.rb +0 -25
  564. data/lib/lutaml/uml_repository/static_site/models/spa_tree_class_ref.rb +0 -21
  565. data/lib/lutaml/uml_repository/static_site/models.rb +0 -46
  566. data/lib/lutaml/uml_repository/static_site/search_index_builder.rb +0 -239
  567. data/lib/lutaml/uml_repository/static_site/serializers/attribute_serializer.rb +0 -60
  568. data/lib/lutaml/uml_repository/static_site/serializers/class_serializer.rb +0 -123
  569. data/lib/lutaml/uml_repository/static_site/serializers/diagram_serializer.rb +0 -73
  570. data/lib/lutaml/uml_repository/static_site/serializers/inheritance_resolver.rb +0 -262
  571. data/lib/lutaml/uml_repository/static_site/serializers/metadata_builder.rb +0 -48
  572. data/lib/lutaml/uml_repository/static_site/serializers/operation_serializer.rb +0 -57
  573. data/lib/lutaml/uml_repository/static_site/serializers/package_serializer.rb +0 -79
  574. data/lib/lutaml/uml_repository/static_site/serializers/package_tree_builder.rb +0 -91
  575. data/lib/lutaml/uml_repository/static_site/serializers.rb +0 -26
  576. data/lib/lutaml/uml_repository/static_site.rb +0 -94
  577. data/lib/lutaml/uml_repository/statistics_calculator.rb +0 -342
  578. data/lib/lutaml/uml_repository/validators/repository_validator.rb +0 -392
  579. data/lib/lutaml/uml_repository/web_ui/app.rb +0 -161
  580. data/lib/lutaml/uml_repository/web_ui/public/app.js +0 -452
  581. data/lib/lutaml/uml_repository/web_ui/public/styles.css +0 -381
  582. data/lib/lutaml/uml_repository/web_ui/views/index.erb +0 -40
  583. data/lib/lutaml/uml_repository.rb +0 -117
  584. data/lib/lutaml/xmi/liquid_drops/association_drop.rb +0 -56
  585. data/lib/lutaml/xmi/liquid_drops/attribute_drop.rb +0 -72
  586. data/lib/lutaml/xmi/liquid_drops/cardinality_drop.rb +0 -35
  587. data/lib/lutaml/xmi/liquid_drops/connector_drop.rb +0 -54
  588. data/lib/lutaml/xmi/liquid_drops/constraint_drop.rb +0 -29
  589. data/lib/lutaml/xmi/liquid_drops/data_type_drop.rb +0 -63
  590. data/lib/lutaml/xmi/liquid_drops/dependency_drop.rb +0 -36
  591. data/lib/lutaml/xmi/liquid_drops/diagram_drop.rb +0 -34
  592. data/lib/lutaml/xmi/liquid_drops/enum_drop.rb +0 -49
  593. data/lib/lutaml/xmi/liquid_drops/enum_owned_literal_drop.rb +0 -25
  594. data/lib/lutaml/xmi/liquid_drops/generalization_attribute_drop.rb +0 -87
  595. data/lib/lutaml/xmi/liquid_drops/generalization_drop.rb +0 -127
  596. data/lib/lutaml/xmi/liquid_drops/klass_drop.rb +0 -191
  597. data/lib/lutaml/xmi/liquid_drops/operation_drop.rb +0 -29
  598. data/lib/lutaml/xmi/liquid_drops/package_drop.rb +0 -108
  599. data/lib/lutaml/xmi/liquid_drops/root_drop.rb +0 -34
  600. data/lib/lutaml/xmi/liquid_drops/source_target_drop.rb +0 -43
  601. data/lib/lutaml/xmi/parsers/xmi_base.rb +0 -301
  602. data/lib/lutaml/xmi/parsers/xmi_class_members.rb +0 -45
  603. data/lib/lutaml/xmi/parsers/xmi_connector.rb +0 -263
  604. data/lib/lutaml/xmi/parsers/xml.rb +0 -63
  605. data/lib/lutaml/xmi/xmi_lookup_service.rb +0 -40
  606. data/lib/lutaml/xmi.rb +0 -47
  607. data/templates/static_site/assets/images/lutaml-full.svg +0 -1
  608. data/templates/static_site/assets/images/lutaml-icon.svg +0 -1
  609. data/templates/static_site/assets/scripts/app.js +0 -45
  610. data/templates/static_site/assets/scripts/core/state.js +0 -446
  611. data/templates/static_site/assets/scripts/core/utils.js +0 -133
  612. data/templates/static_site/assets/scripts/ui/details.js +0 -74
  613. data/templates/static_site/assets/scripts/ui/diagrams.js +0 -345
  614. data/templates/static_site/assets/scripts/ui/search.js +0 -187
  615. data/templates/static_site/assets/scripts/ui/sidebar.js +0 -123
  616. data/templates/static_site/assets/styles/00-variables.css +0 -144
  617. data/templates/static_site/assets/styles/01-reset.css +0 -69
  618. data/templates/static_site/assets/styles/02-base.css +0 -144
  619. data/templates/static_site/assets/styles/03-layout.css +0 -121
  620. data/templates/static_site/assets/styles/04-components.css +0 -905
  621. data/templates/static_site/assets/styles/05-utilities.css +0 -23
  622. data/templates/static_site/assets/styles/06-diagrams.css +0 -74
  623. data/templates/static_site/components/class_details.liquid +0 -328
  624. data/templates/static_site/components/content.liquid +0 -481
  625. data/templates/static_site/components/diagram_list.liquid +0 -52
  626. data/templates/static_site/components/diagram_viewer.liquid +0 -71
  627. data/templates/static_site/components/header.liquid +0 -114
  628. data/templates/static_site/components/package_details.liquid +0 -119
  629. data/templates/static_site/components/sidebar.liquid +0 -76
  630. data/templates/static_site/components/tree_node.liquid +0 -81
  631. data/templates/static_site/multi_file.liquid +0 -49
  632. data/templates/static_site/single_file.liquid +0 -57
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 9c53820c1a0daa57dc4a07ee45bdd249600b22a194d47f0e011fcc14147d15fd
4
- data.tar.gz: d03fce90025ce62a4715d187b8e723dd63cb8a768a7e8e016bf4d9160a0ba2dd
3
+ metadata.gz: '0836b309be2e04ea9c98a429109b99c25f788ed88ca68ef1bed3ba2a74423cc5'
4
+ data.tar.gz: b339f47f2f98dde93657f2f6fdfbfa29368c7480e160563f23df6a6a3fef945f
5
5
  SHA512:
6
- metadata.gz: cebc1ecb62b6a0daa11b21206995fac13a9a45d4ef9707ed248e97ff20757ee6c1a59216b96b00e2fb568bb48966a4660f03a171bc97183b343003796ea1f895
7
- data.tar.gz: 0b3280443cd693c733f82a4a43e6b68ba4276bfabf9400d9dddd098e918315ec9bdcdec4138ffd57e0f72d2509b2f388d4de4262e0a6cf24b541f6a2bf89520c
6
+ metadata.gz: a6bb7846e437b335fecee1c9777b4b0a01dd59f6713cc29abed27be3e04589470134a74ba4d2c09d066ffc064c46295fc2c2d003f7a2043dfb09578cf1189681
7
+ data.tar.gz: d7228d3eb41e19886f1a5e4d21a7a302a1768cf1101be668c0cc6f88eb4f4d98eff4b328af7a7c044cb8887ef6f3b978739cdd404a26e0b43cd88f7be88e113b
@@ -16,13 +16,20 @@ on:
16
16
  Also, you can pass 'skip' to skip 'git tag' and do 'gem push' for the current version
17
17
  required: true
18
18
  default: 'skip'
19
+ acknowledge_breaking_in_patch:
20
+ description: "Skip the release-breaking-check guard"
21
+ required: false
22
+ default: "true"
19
23
  repository_dispatch:
20
24
  types: [ do-release ]
21
25
 
22
26
  jobs:
23
27
  release:
24
- uses: relaton/support/.github/workflows/release.yml@main
28
+ uses: metanorma/ci/.github/workflows/rubygems-release.yml@main
25
29
  with:
26
30
  next_version: ${{ github.event.inputs.next_version }}
31
+ acknowledge_breaking_in_patch: ${{ github.event.inputs.acknowledge_breaking_in_patch == 'true' }}
32
+ gated: false
27
33
  secrets:
28
34
  rubygems-api-key: ${{ secrets.LUTAML_CI_RUBYGEMS_API_KEY }}
35
+ pat_token: ${{ secrets.GITHUB_TOKEN }}
data/.gitignore CHANGED
@@ -23,3 +23,7 @@ old-docs
23
23
  TODO.*/
24
24
  TODO.*.md
25
25
  .rubocop_todo.yml.tmp
26
+
27
+ # Frontend build artifacts
28
+ frontend/node_modules/
29
+ TODO.migrate/
data/.rubocop_todo.yml CHANGED
@@ -1,143 +1,65 @@
1
1
  # This configuration was generated by
2
2
  # `rubocop --auto-gen-config`
3
- # on 2026-05-14 13:10:59 UTC using RuboCop version 1.86.1.
3
+ # on 2026-05-22 10:40:49 UTC using RuboCop version 1.86.1.
4
4
  # The point is for the user to remove these configuration records
5
5
  # one by one as the offenses are removed from the code base.
6
6
  # Note that changes in the inspected code, or installation of new
7
7
  # versions of RuboCop, may require this file to be generated again.
8
8
 
9
- # Offense count: 67
9
+ # Offense count: 2
10
10
  # This cop supports safe autocorrection (--autocorrect).
11
11
  # Configuration parameters: EnforcedStyle, IndentationWidth.
12
12
  # SupportedStyles: with_first_argument, with_fixed_indentation
13
13
  Layout/ArgumentAlignment:
14
- Enabled: false
15
-
16
- # Offense count: 1
17
- # This cop supports safe autocorrection (--autocorrect).
18
- # Configuration parameters: EnforcedStyle, IndentationWidth.
19
- # SupportedStyles: with_first_element, with_fixed_indentation
20
- Layout/ArrayAlignment:
21
14
  Exclude:
22
- - 'lib/lutaml/uml_repository/repository_enhanced.rb'
15
+ - 'lib/lutaml/uml_repository/static_site/data_transformer.rb'
16
+ - 'lib/lutaml/uml_repository/static_site/generator.rb'
23
17
 
24
- # Offense count: 12
18
+ # Offense count: 1
25
19
  # This cop supports safe autocorrection (--autocorrect).
26
20
  # Configuration parameters: IndentationWidth.
27
21
  Layout/AssignmentIndentation:
28
22
  Exclude:
29
- - 'lib/lutaml/cli/uml/build_command.rb'
30
- - 'lib/lutaml/cli/uml/diagram_command.rb'
31
- - 'lib/lutaml/uml_repository/index_builders/class_index.rb'
32
- - 'lib/lutaml/uml_repository/index_builders/package_index.rb'
33
- - 'lib/lutaml/uml_repository/queries/search_query.rb'
34
- - 'lib/lutaml/uml_repository/repository_enhanced.rb'
35
-
36
- # Offense count: 13
37
- # This cop supports safe autocorrection (--autocorrect).
38
- # Configuration parameters: EnforcedStyleAlignWith.
39
- # SupportedStylesAlignWith: either, start_of_block, start_of_line
40
- Layout/BlockAlignment:
41
- Exclude:
42
- - 'lib/lutaml/cli/uml/build_command.rb'
43
- - 'lib/lutaml/cli/uml/diagram_command.rb'
44
- - 'lib/lutaml/uml_repository/queries/search_query.rb'
45
- - 'spec/lutaml/cli/search_commands_spec.rb'
46
- - 'spec/lutaml/cli/uml/search_command_spec.rb'
47
- - 'spec/lutaml/qea/integration/full_parsing_spec.rb'
23
+ - 'lib/lutaml/uml_repository/static_site/output/vue_inlined_strategy.rb'
48
24
 
49
- # Offense count: 12
50
- # This cop supports safe autocorrection (--autocorrect).
51
- Layout/BlockEndNewline:
52
- Exclude:
53
- - 'lib/lutaml/cli/uml/build_command.rb'
54
- - 'lib/lutaml/cli/uml/diagram_command.rb'
55
- - 'lib/lutaml/uml_repository/queries/search_query.rb'
56
- - 'spec/lutaml/cli/search_commands_spec.rb'
57
- - 'spec/lutaml/cli/uml/search_command_spec.rb'
58
- - 'spec/lutaml/qea/integration/full_parsing_spec.rb'
59
-
60
- # Offense count: 11
25
+ # Offense count: 21
61
26
  # This cop supports safe autocorrection (--autocorrect).
62
- # Configuration parameters: AllowForAlignment.
63
- Layout/CommentIndentation:
64
- Exclude:
65
- - 'lib/lutaml/uml_repository/index_builders/association_index.rb'
66
- - 'lib/lutaml/uml_repository/index_builders/class_index.rb'
67
- - 'lib/lutaml/uml_repository/index_builders/package_index.rb'
68
-
69
- # Offense count: 1
70
- # This cop supports safe autocorrection (--autocorrect).
71
- Layout/ElseAlignment:
72
- Exclude:
73
- - 'lib/lutaml/uml_repository/validators/repository_validator.rb'
74
-
75
- # Offense count: 137
76
- # This cop supports safe autocorrection (--autocorrect).
77
- Layout/EmptyLines:
78
- Enabled: false
79
-
80
- # Offense count: 2
81
- # This cop supports safe autocorrection (--autocorrect).
82
- Layout/EmptyLinesAfterModuleInclusion:
83
- Exclude:
84
- - 'lib/lutaml/converter/xmi_to_uml.rb'
85
- - 'lib/lutaml/xmi/parsers/xmi_base.rb'
86
-
87
- # Offense count: 3
88
- # This cop supports safe autocorrection (--autocorrect).
89
- Layout/EmptyLinesAroundMethodBody:
90
- Exclude:
91
- - 'lib/lutaml/cli/uml/build_command.rb'
92
- - 'lib/lutaml/cli/uml/spa_command.rb'
93
- - 'lib/lutaml/cli/uml/validate_command.rb'
94
-
95
- # Offense count: 4
96
- # This cop supports safe autocorrection (--autocorrect).
97
- # Configuration parameters: EnforcedStyleAlignWith.
98
- # SupportedStylesAlignWith: keyword, variable, start_of_line
99
- Layout/EndAlignment:
100
- Exclude:
101
- - 'lib/lutaml/uml_repository/index_builders/association_index.rb'
102
- - 'lib/lutaml/uml_repository/index_builders/class_index.rb'
103
- - 'lib/lutaml/uml_repository/index_builders/package_index.rb'
104
- - 'lib/lutaml/uml_repository/validators/repository_validator.rb'
105
-
106
- # Offense count: 51
107
- # This cop supports safe autocorrection (--autocorrect).
108
- # Configuration parameters: Width, EnforcedStyleAlignWith, AllowedPatterns.
109
- # SupportedStylesAlignWith: start_of_line, relative_to_receiver
110
- Layout/IndentationWidth:
111
- Exclude:
112
- - 'lib/lutaml/cli/uml/build_command.rb'
113
- - 'lib/lutaml/cli/uml/diagram_command.rb'
114
- - 'lib/lutaml/uml_repository/index_builders/association_index.rb'
115
- - 'lib/lutaml/uml_repository/index_builders/class_index.rb'
116
- - 'lib/lutaml/uml_repository/index_builders/package_index.rb'
117
- - 'lib/lutaml/uml_repository/queries/search_query.rb'
118
- - 'lib/lutaml/uml_repository/validators/repository_validator.rb'
119
- - 'spec/lutaml/cli/search_commands_spec.rb'
120
- - 'spec/lutaml/cli/uml/search_command_spec.rb'
121
- - 'spec/lutaml/qea/integration/full_parsing_spec.rb'
122
-
123
- # Offense count: 271
27
+ # Configuration parameters: AllowMultipleStyles, EnforcedHashRocketStyle, EnforcedColonStyle, EnforcedLastArgumentHashStyle.
28
+ # SupportedHashRocketStyles: key, separator, table
29
+ # SupportedColonStyles: key, separator, table
30
+ # SupportedLastArgumentHashStyles: always_inspect, always_ignore, ignore_implicit, ignore_explicit
31
+ Layout/HashAlignment:
32
+ Exclude:
33
+ - 'lib/lutaml/uml_repository/static_site/models/spa_attribute.rb'
34
+ - 'lib/lutaml/uml_repository/static_site/models/spa_class.rb'
35
+ - 'lib/lutaml/uml_repository/static_site/models/spa_operation.rb'
36
+ - 'lib/lutaml/uml_repository/static_site/models/spa_package.rb'
37
+ - 'lib/lutaml/uml_repository/static_site/models/spa_package_tree_node.rb'
38
+ - 'lib/lutaml/uml_repository/static_site/models/spa_tree_class_ref.rb'
39
+ - 'lib/lutaml/uml_repository/static_site/serializers/metadata_builder.rb'
40
+
41
+ # Offense count: 216
124
42
  # This cop supports safe autocorrection (--autocorrect).
125
43
  # Configuration parameters: Max, AllowHeredoc, AllowURI, AllowQualifiedName, URISchemes, AllowRBSInlineAnnotation, AllowCopDirectives, AllowedPatterns, SplitStrings.
126
44
  # URISchemes: http, https
127
45
  Layout/LineLength:
128
46
  Enabled: false
129
47
 
130
- # Offense count: 1
131
- # This cop supports safe autocorrection (--autocorrect).
132
- Layout/MultilineBlockLayout:
133
- Exclude:
134
- - 'spec/lutaml/qea/integration/full_parsing_spec.rb'
135
-
136
- # Offense count: 81
48
+ # Offense count: 22
137
49
  # This cop supports safe autocorrection (--autocorrect).
138
50
  # Configuration parameters: AllowInHeredoc.
139
51
  Layout/TrailingWhitespace:
140
- Enabled: false
52
+ Exclude:
53
+ - 'lib/lutaml/uml_repository/static_site/data_transformer.rb'
54
+ - 'lib/lutaml/uml_repository/static_site/generator.rb'
55
+ - 'lib/lutaml/uml_repository/static_site/models/spa_attribute.rb'
56
+ - 'lib/lutaml/uml_repository/static_site/models/spa_class.rb'
57
+ - 'lib/lutaml/uml_repository/static_site/models/spa_operation.rb'
58
+ - 'lib/lutaml/uml_repository/static_site/models/spa_package.rb'
59
+ - 'lib/lutaml/uml_repository/static_site/models/spa_package_tree_node.rb'
60
+ - 'lib/lutaml/uml_repository/static_site/models/spa_tree_class_ref.rb'
61
+ - 'lib/lutaml/uml_repository/static_site/output/vue_inlined_strategy.rb'
62
+ - 'lib/lutaml/uml_repository/static_site/serializers/metadata_builder.rb'
141
63
 
142
64
  # Offense count: 1
143
65
  Lint/BinaryOperatorWithIdenticalOperands:
@@ -197,16 +119,14 @@ Lint/UnusedMethodArgument:
197
119
  Exclude:
198
120
  - 'lib/lutaml/cli/uml/export_command.rb'
199
121
 
200
- # Offense count: 7
122
+ # Offense count: 4
201
123
  Lint/UselessConstantScoping:
202
124
  Exclude:
203
125
  - 'lib/lutaml/cli/interactive_shell.rb'
204
126
  - 'lib/lutaml/cli/uml/diagram_command.rb'
205
127
  - 'lib/lutaml/qea/factory/ea_to_uml_factory.rb'
206
- - 'lib/lutaml/uml_repository/static_site/generator.rb'
207
- - 'lib/lutaml/uml_repository/static_site/serializers/inheritance_resolver.rb'
208
128
 
209
- # Offense count: 10
129
+ # Offense count: 13
210
130
  # Configuration parameters: AllowedMethods, AllowedPatterns, CountRepeatedAttributes, Max.
211
131
  Metrics/AbcSize:
212
132
  Exclude:
@@ -215,39 +135,41 @@ Metrics/AbcSize:
215
135
  - 'lib/lutaml/qea/factory/generalization_builder.rb'
216
136
  - 'lib/lutaml/uml_repository/exporters/markdown/class_page_builder.rb'
217
137
  - 'lib/lutaml/uml_repository/queries/search_query.rb'
138
+ - 'lib/lutaml/uml_repository/static_site/output/vue_inlined_strategy.rb'
218
139
  - 'lib/lutaml/uml_repository/static_site/serializers/class_serializer.rb'
140
+ - 'lib/lutaml/uml_repository/static_site/serializers/metadata_builder.rb'
219
141
 
220
- # Offense count: 1
221
- # Configuration parameters: CountComments, CountAsOne, AllowedMethods, AllowedPatterns, inherit_mode.
222
- # AllowedMethods: refine
223
- Metrics/BlockLength:
224
- Max: 27
225
-
226
- # Offense count: 3
142
+ # Offense count: 8
227
143
  # Configuration parameters: AllowedMethods, AllowedPatterns, Max.
228
144
  Metrics/CyclomaticComplexity:
229
145
  Exclude:
230
146
  - 'lib/lutaml/qea/factory/generalization_builder.rb'
147
+ - 'lib/lutaml/uml/model_helpers.rb'
231
148
  - 'lib/lutaml/uml_repository/index_builders/association_index.rb'
232
- - 'lib/lutaml/uml_repository/static_site/serializers/class_serializer.rb'
149
+ - 'lib/lutaml/uml_repository/static_site/data_transformer.rb'
150
+ - 'lib/lutaml/uml_repository/static_site/generator.rb'
151
+ - 'lib/lutaml/uml_repository/static_site/output/vue_inlined_strategy.rb'
152
+ - 'lib/lutaml/uml_repository/static_site/serializers/base.rb'
153
+ - 'lib/lutaml/uml_repository/static_site/serializers/metadata_builder.rb'
233
154
 
234
- # Offense count: 55
155
+ # Offense count: 63
235
156
  # Configuration parameters: CountComments, CountAsOne, AllowedMethods, AllowedPatterns.
236
157
  Metrics/MethodLength:
237
- Max: 17
158
+ Max: 23
238
159
 
239
160
  # Offense count: 5
240
161
  # Configuration parameters: CountKeywordArgs, MaxOptionalParameters.
241
162
  Metrics/ParameterLists:
242
163
  Max: 7
243
164
 
244
- # Offense count: 3
165
+ # Offense count: 4
245
166
  # Configuration parameters: AllowedMethods, AllowedPatterns, Max.
246
167
  Metrics/PerceivedComplexity:
247
168
  Exclude:
248
169
  - 'lib/lutaml/qea/factory/ea_to_uml_factory.rb'
249
- - 'lib/lutaml/uml_repository/static_site/serializers/class_serializer.rb'
250
- - 'lib/lutaml/uml_repository/validators/repository_validator.rb'
170
+ - 'lib/lutaml/uml_repository/static_site/generator.rb'
171
+ - 'lib/lutaml/uml_repository/static_site/output/vue_inlined_strategy.rb'
172
+ - 'lib/lutaml/uml_repository/static_site/serializers/base.rb'
251
173
 
252
174
  # Offense count: 3
253
175
  # Configuration parameters: MinNameLength, AllowNamesEndingInNumbers, AllowedNames, ForbiddenNames.
@@ -255,7 +177,7 @@ Metrics/PerceivedComplexity:
255
177
  Naming/MethodParameterName:
256
178
  Exclude:
257
179
  - 'lib/lutaml/cli/tree_view_formatter.rb'
258
- - 'lib/lutaml/uml_repository/static_site/generator.rb'
180
+ - 'lib/lutaml/uml_repository/static_site/output/vue_inlined_strategy.rb'
259
181
  - 'spec/lutaml/parsers/serialize_xmi_to_liquid_spec.rb'
260
182
 
261
183
  # Offense count: 3
@@ -280,11 +202,6 @@ Performance/MapMethodChain:
280
202
  - 'lib/lutaml/cli/output_formatter.rb'
281
203
  - 'lib/lutaml/qea/models/ea_diagram_link.rb'
282
204
 
283
- # Offense count: 5
284
- RSpec/AnyInstance:
285
- Exclude:
286
- - 'spec/lutaml/uml_repository/static_site/generator_spec.rb'
287
-
288
205
  # Offense count: 1
289
206
  RSpec/BeforeAfterAll:
290
207
  Exclude:
@@ -307,12 +224,12 @@ RSpec/ContextWording:
307
224
  - 'spec/lutaml/cli/uml/verify_command_spec.rb'
308
225
  - 'spec/lutaml/qea/integration/full_parsing_spec.rb'
309
226
 
310
- # Offense count: 22
227
+ # Offense count: 23
311
228
  # Configuration parameters: IgnoredMetadata.
312
229
  RSpec/DescribeClass:
313
230
  Enabled: false
314
231
 
315
- # Offense count: 646
232
+ # Offense count: 684
316
233
  # Configuration parameters: CountAsOne.
317
234
  RSpec/ExampleLength:
318
235
  Max: 30
@@ -366,11 +283,17 @@ RSpec/MessageSpies:
366
283
  - 'spec/lutaml/uml_repository/presenters/diagram_presenter_spec.rb'
367
284
  - 'spec/lutaml/uml_repository/repository_spec.rb'
368
285
 
369
- # Offense count: 40
286
+ # Offense count: 2
287
+ RSpec/MultipleDescribes:
288
+ Exclude:
289
+ - 'spec/lutaml/uml_repository/static_site/models_spec.rb'
290
+ - 'spec/lutaml/uml_repository/static_site/output_strategy_spec.rb'
291
+
292
+ # Offense count: 84
370
293
  RSpec/MultipleExpectations:
371
- Max: 7
294
+ Max: 12
372
295
 
373
- # Offense count: 148
296
+ # Offense count: 145
374
297
  # Configuration parameters: AllowSubject.
375
298
  RSpec/MultipleMemoizedHelpers:
376
299
  Max: 11
@@ -380,13 +303,12 @@ RSpec/MultipleMemoizedHelpers:
380
303
  RSpec/NestedGroups:
381
304
  Max: 4
382
305
 
383
- # Offense count: 2
306
+ # Offense count: 1
384
307
  # Configuration parameters: AllowedPatterns.
385
308
  # AllowedPatterns: ^expect_, ^assert_
386
309
  RSpec/NoExpectationExample:
387
310
  Exclude:
388
311
  - 'spec/lutaml/qea/verification/comprehensive_equivalence_spec.rb'
389
- - 'spec/lutaml/uml_repository/static_site/generator_spec.rb'
390
312
 
391
313
  # Offense count: 12
392
314
  RSpec/RepeatedExample:
@@ -416,7 +338,7 @@ Security/MarshalLoad:
416
338
  Exclude:
417
339
  - 'lib/lutaml/uml_repository/package_loader.rb'
418
340
 
419
- # Offense count: 17
341
+ # Offense count: 1
420
342
  # This cop supports safe autocorrection (--autocorrect).
421
343
  # Configuration parameters: EnforcedStyle, ProceduralMethods, FunctionalMethods, AllowedMethods, AllowedPatterns, AllowBracesOnProceduralOneLiners, BracesRequiredMethods.
422
344
  # SupportedStyles: line_count_based, semantic, braces_for_chaining, always_braces
@@ -425,12 +347,14 @@ Security/MarshalLoad:
425
347
  # AllowedMethods: lambda, proc, it
426
348
  Style/BlockDelimiters:
427
349
  Exclude:
428
- - 'lib/lutaml/cli/uml/build_command.rb'
429
- - 'lib/lutaml/cli/uml/diagram_command.rb'
430
- - 'lib/lutaml/uml_repository/queries/search_query.rb'
431
- - 'spec/lutaml/cli/search_commands_spec.rb'
432
- - 'spec/lutaml/cli/uml/search_command_spec.rb'
433
- - 'spec/lutaml/qea/integration/full_parsing_spec.rb'
350
+ - 'lib/lutaml/uml_repository/static_site/serializers/metadata_builder.rb'
351
+
352
+ # Offense count: 1
353
+ # This cop supports unsafe autocorrection (--autocorrect-all).
354
+ # Configuration parameters: MinBranchesCount.
355
+ Style/CaseLikeIf:
356
+ Exclude:
357
+ - 'lib/lutaml/uml/model_helpers.rb'
434
358
 
435
359
  # Offense count: 2
436
360
  # This cop supports safe autocorrection (--autocorrect).
@@ -438,21 +362,11 @@ Style/ComparableClamp:
438
362
  Exclude:
439
363
  - 'lib/lutaml/cli/enhanced_formatter.rb'
440
364
 
441
- # Offense count: 16
442
- # This cop supports safe autocorrection (--autocorrect).
443
- Style/MultilineIfModifier:
444
- Exclude:
445
- - 'lib/lutaml/cli/uml/build_command.rb'
446
- - 'lib/lutaml/cli/uml/diagram_command.rb'
447
- - 'lib/lutaml/uml_repository/index_builders/class_index.rb'
448
- - 'lib/lutaml/uml_repository/index_builders/package_index.rb'
449
- - 'lib/lutaml/uml_repository/repository_enhanced.rb'
450
-
451
365
  # Offense count: 1
452
366
  # This cop supports safe autocorrection (--autocorrect).
453
- Style/MultilineTernaryOperator:
367
+ Style/NegatedIfElseCondition:
454
368
  Exclude:
455
- - 'lib/lutaml/uml_repository/validators/repository_validator.rb'
369
+ - 'lib/lutaml/cli/uml/spa_command.rb'
456
370
 
457
371
  # Offense count: 2
458
372
  # Configuration parameters: AllowedClasses.
@@ -473,3 +387,10 @@ Style/SafeNavigationChainLength:
473
387
  Exclude:
474
388
  - 'lib/lutaml/qea/validation/attribute_validator.rb'
475
389
  - 'lib/lutaml/qea/validation/operation_validator.rb'
390
+
391
+ # Offense count: 1
392
+ # This cop supports unsafe autocorrection (--autocorrect-all).
393
+ # Configuration parameters: Mode.
394
+ Style/StringConcatenation:
395
+ Exclude:
396
+ - 'lib/lutaml/cli/uml/spa_command.rb'
data/CLAUDE.md CHANGED
@@ -1,15 +1,19 @@
1
1
  # CLAUDE.md — Lutaml Project
2
2
 
3
3
  ## Project Overview
4
- Lutaml is a Ruby gem for parsing and transforming UML models from multiple formats (XMI, QEA/EA, DSL). It provides a CLI, interactive shell, static site generator, web UI, and model transformation pipeline.
4
+ Lutaml is a Ruby gem for parsing and transforming UML models from multiple formats (XMI, QEA/EA, DSL). It provides a CLI, interactive shell, and model transformation pipeline. The UML domain models, repository, converters, SPA generator, and web UI live in the companion `lutaml-uml` gem.
5
+
6
+ ## Multi-Repo Structure
7
+ - **`lutaml`** (this repo) — CLI, XMI parser, QEA parser, Express parser, formatters, layout engine
8
+ - **`lutaml-uml`** (`../lutaml-uml/`) — UML domain models, UmlRepository, converters, EA diagrams, Vue SPA frontend
9
+ - `lutaml` depends on `lutaml-uml` at runtime
5
10
 
6
11
  ## Testing Constraints
7
12
 
8
13
  **CRITICAL: Do NOT run the full test suite at once.** It will crash due to memory. Run targeted subsets:
9
14
  - `bundle exec rspec spec/lutaml/cli/` — CLI specs
10
15
  - `bundle exec rspec spec/lutaml/qea/` — QEA parser specs
11
- - `bundle exec rspec spec/lutaml/uml_repository/` — UML repository specs
12
- - `bundle exec rspec spec/lutaml/uml/` — UML model specs
16
+ - `bundle exec rspec spec/lutaml/uml/` — UML model specs (runs from lutaml-uml)
13
17
  - `bundle exec rspec spec/lutaml/parsers/` — Parser specs
14
18
  - `bundle exec rspec spec/lutaml/formatter/` — Formatter specs
15
19
  - Combine at most 2-3 suites at a time for targeted verification.
@@ -22,15 +26,35 @@ Lutaml is a Ruby gem for parsing and transforming UML models from multiple forma
22
26
  - DRY: consolidate duplicated patterns (especially `format_definition`, index building, metadata construction).
23
27
  - Never commit TODO tracking files to git.
24
28
 
25
- ## Architecture
26
- - `lib/lutaml/uml/` — UML domain models (Class, Association, Package, etc.)
27
- - `lib/lutaml/uml_repository/` Repository pattern over UML documents (queries, presenters, exporters, SPA)
29
+ ## Spec Require Rules
30
+
31
+ For code in **this repo** (cli, qea, xmi, formatter, etc.), use `require_relative`:
32
+ ```ruby
33
+ require_relative "../../../lib/lutaml/qea/parser"
34
+ ```
35
+
36
+ For code in **lutaml-uml** (uml, uml_repository, converter, ea), use `require` since it's a separate gem:
37
+ ```ruby
38
+ require "lutaml/uml"
39
+ require "lutaml/uml_repository"
40
+ require "lutaml/converter"
41
+ ```
42
+
43
+ ## Architecture (this repo)
44
+ - `lib/lutaml/cli/` — Thor CLI commands
28
45
  - `lib/lutaml/qea/` — EA .qea SQLite parser and factory
29
46
  - `lib/lutaml/xmi/` — XMI XML parsing
30
- - `lib/lutaml/converter/` — Format converters (XMI→UML, DSL→UML)
31
- - `lib/lutaml/cli/` — Thor CLI commands
47
+ - `lib/lutaml/express/` — Express parser
48
+ - `lib/lutaml/formatter/` — Output formatters
49
+ - `lib/lutaml/layout/` — Layout engine
32
50
  - `lib/lutaml/model_transformations/` — Format-agnostic transformation pipeline
51
+
52
+ ## Architecture (lutaml-uml)
53
+ - `lib/lutaml/uml/` — UML domain models (Class, Association, Package, etc.)
54
+ - `lib/lutaml/uml_repository/` — Repository, queries, presenters, exporters, SPA
55
+ - `lib/lutaml/converter/` — Format converters (XMI→UML, DSL→UML)
33
56
  - `lib/lutaml/ea/` — EA diagram SVG rendering
57
+ - `frontend/` — Vue 3 SPA frontend
34
58
 
35
59
  ## CI Notes
36
60
  - Ignore Ruby 3.4 ubuntu failures (performance-related, not code issues)
data/Gemfile CHANGED
@@ -3,17 +3,21 @@ source "https://rubygems.org"
3
3
  # Specify your gem's dependencies in lutaml.gemspec
4
4
  gemspec
5
5
 
6
- # Pin parsanol to 1.3.9: 1.3.10 pre-compiled platform gems require Ruby >= 3.3,
7
- # causing source gem fallback on Ruby 3.2 Windows where compilation fails.
8
- gem "parsanol", "1.3.9"
9
-
10
- gem "canon"
11
- gem "lutaml-model", github: "lutaml/lutaml-model", branch: "main"
12
6
  gem "openssl", "~> 3.0"
13
7
  gem "rack-test"
14
8
  gem "rake"
15
9
  gem "rspec"
16
- gem "rubocop"
17
- gem "rubocop-performance"
18
- gem "rubocop-rake"
19
- gem "rubocop-rspec"
10
+
11
+ # Override gemspec deps with sibling paths or GitHub during local
12
+ # development. In CI these don't resolve and bundler uses the gemspec's
13
+ # own add_dependency declarations against rubygems.
14
+ sibling_overrides = %w[canon lutaml-lml lutaml-uml]
15
+ sibling_overrides.each do |sibling_gem|
16
+ sibling_path = File.expand_path("../#{sibling_gem}", __dir__)
17
+ gem sibling_gem, path: sibling_path if File.directory?(sibling_path)
18
+ end
19
+
20
+ github_override = File.expand_path("../lutaml-model", __dir__)
21
+ if File.directory?(github_override)
22
+ gem "lutaml-model", path: github_override
23
+ end
data/Rakefile CHANGED
@@ -5,8 +5,10 @@ require "rspec/core/rake_task"
5
5
 
6
6
  RSpec::Core::RakeTask.new(:spec)
7
7
 
8
- require "rubocop/rake_task"
8
+ begin
9
+ require "rubocop/rake_task"
10
+ RuboCop::RakeTask.new
11
+ rescue LoadError
12
+ end
9
13
 
10
- RuboCop::RakeTask.new
11
-
12
- task default: %i[spec rubocop]
14
+ task default: :spec
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Lutaml
4
- VERSION = "0.10.18"
4
+ VERSION = "0.11.2"
5
5
  end
data/lib/lutaml.rb CHANGED
@@ -1,18 +1,12 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  require_relative "lutaml/version"
4
+ require "lutaml/lml"
5
+ require "lutaml/uml"
6
+ require "lutaml/uml_repository"
4
7
 
5
8
  module Lutaml
6
9
  class Error < StandardError; end
7
10
 
8
11
  autoload :Express, "lutaml/express"
9
- autoload :Formatter, "lutaml/formatter"
10
- autoload :Layout, "lutaml/layout"
11
- autoload :Uml, "lutaml/uml"
12
- autoload :UmlRepository, "lutaml/uml_repository"
13
- autoload :Xmi, "lutaml/xmi"
14
- autoload :Ea, "lutaml/ea"
15
- autoload :Qea, "lutaml/qea"
16
- autoload :Converter, "lutaml/converter"
17
- autoload :ModelTransformations, "lutaml/model_transformations"
18
12
  end
data/lutaml.gemspec CHANGED
@@ -33,23 +33,7 @@ Gem::Specification.new do |spec|
33
33
  # TODO: remove once reline declares fiddle as a dependency
34
34
  # (fiddle was removed from Ruby 4.0 default gems, breaking reline on Windows)
35
35
  spec.add_dependency "fiddle"
36
- spec.add_dependency "htmlentities"
37
- spec.add_dependency "liquid"
38
- spec.add_dependency "listen"
39
- spec.add_dependency "lutaml-model", "~> 0.8.0"
40
- spec.add_dependency "lutaml-path"
41
- spec.add_dependency "nokogiri", "~> 1.18"
42
- spec.add_dependency "paint"
43
- spec.add_dependency "parslet", "~> 2.0"
44
- spec.add_dependency "puma"
45
- spec.add_dependency "rackup"
46
- spec.add_dependency "readline"
47
- spec.add_dependency "ruby-graphviz"
48
- spec.add_dependency "rubyzip", "~> 2.3"
49
- spec.add_dependency "sinatra", "~> 4.2"
50
- spec.add_dependency "sqlite3"
51
- spec.add_dependency "table_tennis"
52
- spec.add_dependency "thor", "~> 1.4"
53
- spec.add_dependency "xmi", "~> 0.5", ">= 0.5.2"
36
+ spec.add_dependency "lutaml-lml"
37
+ spec.add_dependency "lutaml-uml", "~> 0.5" # pin: 1.0.0 depends on lutaml (circular)
54
38
  spec.metadata["rubygems_mfa_required"] = "true"
55
39
  end