lutaml 0.9.43 → 0.10.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.
- checksums.yaml +4 -4
- data/.github/workflows/docs.yml +63 -0
- data/.github/workflows/links.yml +99 -0
- data/.github/workflows/rake.yml +13 -2
- data/.github/workflows/release.yml +12 -6
- data/.gitignore +3 -0
- data/.rubocop.yml +11 -3
- data/.rubocop_todo.yml +336 -0
- data/Gemfile +18 -7
- data/README.adoc +1854 -21
- data/Rakefile +7 -1
- data/bin/plantuml2lutaml +3 -3
- data/bin/yaml2lutaml +2 -2
- data/config/diagram_styles.yml +200 -0
- data/config/model_transformations.yml +266 -0
- data/config/package_metadata.example.yml +58 -0
- data/config/qea_schema.yml +1024 -0
- data/config/static_site.yml +166 -0
- data/docs/.github/workflows/docs.yml +66 -0
- data/docs/.github/workflows/links.yml +78 -0
- data/docs/CONTINUATION_PLAN.md +168 -0
- data/docs/Gemfile +13 -0
- data/docs/MIGRATION_GUIDE.md +202 -0
- data/docs/README.md +252 -0
- data/docs/REFACTOR_PLAN.md +214 -0
- data/docs/_config.yml +144 -0
- data/docs/_guides/diagram-generation.adoc +316 -0
- data/docs/_guides/index.adoc +135 -0
- data/docs/{lutaml-express.adoc → _guides/parsing/express-parsing.adoc} +7 -0
- data/docs/_guides/parsing/index.adoc +77 -0
- data/docs/{lutaml-xmi.adoc → _guides/parsing/xmi-parsing.adoc} +7 -0
- data/docs/_guides/sysml-modeling.adoc +37 -0
- data/docs/{lutaml-uml.adoc → _guides/uml-modeling.adoc} +8 -2
- data/docs/_pages/concepts/diagram-generation.adoc +337 -0
- data/docs/_pages/concepts/lur-format.adoc +711 -0
- data/docs/_pages/concepts/qea-parsing.adoc +418 -0
- data/docs/_pages/core/architecture.adoc +329 -0
- data/docs/_pages/core/installation.adoc +321 -0
- data/docs/_pages/core/overview.adoc +197 -0
- data/docs/_pages/index.adoc +48 -0
- data/docs/_pages/uml-syntax.adoc +995 -0
- data/docs/_references/configuration/diagram-styles.adoc +716 -0
- data/docs/_references/configuration/index.adoc +52 -0
- data/docs/_references/configuration/package-metadata.adoc +416 -0
- data/docs/_references/formats/index.adoc +42 -0
- data/docs/{lutaml_syntax.adoc → _references/formats/lutaml-syntax.adoc} +7 -0
- data/docs/_references/formats/qea-structure.adoc +1364 -0
- data/docs/_references/index.adoc +197 -0
- data/docs/_tutorials/index.adoc +109 -0
- data/docs/index.adoc +64 -0
- data/docs/lychee.toml +83 -0
- data/examples/UML_EA.DTD +6856 -0
- data/examples/lur/20251010_current_plateau_v5.1.lur +0 -0
- data/examples/lur/basic.lur +0 -0
- data/examples/lur/test-output.lur +0 -0
- data/examples/lur/test.lur +0 -0
- data/examples/lur_basic_usage.rb +220 -0
- data/examples/lur_cli_workflow.rb +262 -0
- data/examples/lur_statistics.rb +325 -0
- data/examples/qea/20251010_current_plateau_v5.1.qea +0 -0
- data/examples/qea/ArcGISWorkspace_template.qea +0 -0
- data/examples/qea/README_qea_parser.adoc +230 -0
- data/examples/qea/UmlModel_template.qea +0 -0
- data/examples/qea/basic.qea +0 -0
- data/examples/qea/simple.qea +0 -0
- data/examples/qea/simple_example.qea +0 -0
- data/examples/qea/test.qea +0 -0
- data/examples/xmi/20251010_current_plateau_v5.1.xmi +118121 -0
- data/examples/xmi/ArcGISWorkspace_template.xmi +1467 -0
- data/examples/xmi/Images/EAID_0016F797_D055_4717_AF1A_606413D0A166.svg +158 -0
- data/examples/xmi/Images/EAID_00C5C772_5A03_434f_BF30_AC37542A1AAC.svg +659 -0
- data/examples/xmi/Images/EAID_0114FD24_9E58_4664_98CD_71305B59AD11.svg +411 -0
- data/examples/xmi/Images/EAID_01661E1B_31B6_4167_BCCF_A00678FB4EA2.svg +102 -0
- data/examples/xmi/Images/EAID_039FE004_5408_4fc0_89AA_EB319E4F61C7.svg +169 -0
- data/examples/xmi/Images/EAID_04EE9625_17A0_4721_BC71_21756DB21D06.svg +403 -0
- data/examples/xmi/Images/EAID_05FF9417_1619_4170_B0C9_55AA6B988EF1.svg +175 -0
- data/examples/xmi/Images/EAID_09853FB2_AF8A_432f_94C5_6C47461BD937.svg +360 -0
- data/examples/xmi/Images/EAID_09927B7F_A657_4819_99E5_AC9DC99227D9.svg +195 -0
- data/examples/xmi/Images/EAID_09AF6B8A_557C_43bc_BBB0_47C1E9401EF3.svg +218 -0
- data/examples/xmi/Images/EAID_0BE81AC5_031B_4973_A9A0_223CCD92BAA1.svg +471 -0
- data/examples/xmi/Images/EAID_0EDEA6EF_4DC8_4979_BB80_28B1B9EBD1D4.svg +56 -0
- data/examples/xmi/Images/EAID_0F413534_6AD2_48bc_B4AF_8699D530D91D.svg +262 -0
- data/examples/xmi/Images/EAID_1321F39B_AD67_47b5_B5C3_3A42BBFCBDF9.svg +286 -0
- data/examples/xmi/Images/EAID_13E09C71_99E7_40b4_B72D_48AF6379BC2E.svg +164 -0
- data/examples/xmi/Images/EAID_144955D8_CB4E_4b59_BB0C_E549F7F84943.svg +66 -0
- data/examples/xmi/Images/EAID_14E9F5FD_F6CD_4f48_B1CD_F5A40C6D8E83.svg +95 -0
- data/examples/xmi/Images/EAID_157826AA_96A7_4278_89A6_94BD0F31409A.svg +63 -0
- data/examples/xmi/Images/EAID_159E9DA0_7A54_4817_B72A_401C750F675D.svg +306 -0
- data/examples/xmi/Images/EAID_17BC8309_8051_492b_BE87_61CCFE83DB16.svg +45 -0
- data/examples/xmi/Images/EAID_1A10EB6D_E2E5_42a6_A31E_B293D93FD07E.svg +193 -0
- data/examples/xmi/Images/EAID_1A290AFD_CE96_46a2_8351_A986D77CC727.svg +444 -0
- data/examples/xmi/Images/EAID_1B2D9309_C66B_492a_995C_95B2B02E0D7C.svg +168 -0
- data/examples/xmi/Images/EAID_1DE6B973_CE8A_416f_909B_54CEA1E5944E.svg +10 -0
- data/examples/xmi/Images/EAID_204F4ACC_2230_4c8d_9861_EF5A6844B712.svg +60 -0
- data/examples/xmi/Images/EAID_227300E2_4F4B_4955_83B9_FA626CE8680B.svg +188 -0
- data/examples/xmi/Images/EAID_22C24D4C_4894_480a_B113_0CB034CB59E9.svg +426 -0
- data/examples/xmi/Images/EAID_234BC4F5_8100_4969_BDCB_A24E0E641F23.svg +169 -0
- data/examples/xmi/Images/EAID_24446BFC_9FEB_4935_8970_65A4C562A93F.svg +277 -0
- data/examples/xmi/Images/EAID_24E8A45C_C99F_49b7_860A_9CF65FF76C76.svg +575 -0
- data/examples/xmi/Images/EAID_272F3181_4300_48b7_98A0_A8CFD12B1A72.svg +255 -0
- data/examples/xmi/Images/EAID_292E0D94_392C_4da6_A0B5_841501FAE50A.svg +183 -0
- data/examples/xmi/Images/EAID_29DD0967_ADAB_4abb_99C5_544821F5E7DA.svg +10 -0
- data/examples/xmi/Images/EAID_2A339928_E5EF_4ed2_9E5D_CC2CA5CF248B.svg +310 -0
- data/examples/xmi/Images/EAID_2A5E0832_06BE_4381_85D4_9B00E4F95575.svg +155 -0
- data/examples/xmi/Images/EAID_2AAB709F_EFCE_496f_8AFE_92809D66A0A9.svg +81 -0
- data/examples/xmi/Images/EAID_2C8DD882_8DEA_4065_89F8_DDA796AA0C85.svg +520 -0
- data/examples/xmi/Images/EAID_2E98EA19_37D8_4b70_BDCE_CFEE4FA800B0.svg +173 -0
- data/examples/xmi/Images/EAID_30D62231_110F_44e8_9C06_6FCDCBA53A09.svg +722 -0
- data/examples/xmi/Images/EAID_3206D3FD_1FC4_41c7_8D00_36DB908E9319.svg +181 -0
- data/examples/xmi/Images/EAID_3452CC53_9ACB_44eb_9C9D_B90CF862F284.svg +92 -0
- data/examples/xmi/Images/EAID_348EE46E_ABD9_40b0_82A1_0285E75BDC52.svg +187 -0
- data/examples/xmi/Images/EAID_34FF671B_CFDC_47ad_91DF_ECA6D8358180.svg +217 -0
- data/examples/xmi/Images/EAID_359DD694_0100_4bdf_AD5F_712D97E9C69B.svg +157 -0
- data/examples/xmi/Images/EAID_35DE714C_49A8_490e_913A_56F39EF317F9.svg +180 -0
- data/examples/xmi/Images/EAID_360C79F1_8EDF_41db_A069_DECDC55625BC.svg +31 -0
- data/examples/xmi/Images/EAID_36913C58_FF35_4ba2_A04B_9A4824E24609.svg +166 -0
- data/examples/xmi/Images/EAID_372F7F7B_57ED_469a_A640_70DB578B3C56.svg +361 -0
- data/examples/xmi/Images/EAID_37AC19B9_8433_4fee_A326_763170D54D06.svg +32 -0
- data/examples/xmi/Images/EAID_38170608_32B5_4a6f_A68D_A0D7C0C9D019.svg +234 -0
- data/examples/xmi/Images/EAID_3A77A5D0_4E1B_4116_8AAD_407FC422B47F.svg +183 -0
- data/examples/xmi/Images/EAID_3B8BD087_1683_46b1_8D0D_6F839C46C578.svg +42 -0
- data/examples/xmi/Images/EAID_3DC20801_AE8B_4e76_B08C_F574E8A90E13.svg +192 -0
- data/examples/xmi/Images/EAID_3DE28C70_C6D4_406c_B49F_EEF52148C8C1.svg +124 -0
- data/examples/xmi/Images/EAID_458E093C_BA2B_4292_BEC4_37511C163DDC.svg +140 -0
- data/examples/xmi/Images/EAID_45F9B1F7_E568_47c9_B229_953BC2E707E4.svg +266 -0
- data/examples/xmi/Images/EAID_46B3041A_8C23_46e6_8E14_ADE7012274C5.svg +80 -0
- data/examples/xmi/Images/EAID_47E4600F_CEC9_4245_9BF5_EE38007A9DDB.svg +584 -0
- data/examples/xmi/Images/EAID_4881CEEE_792C_4cb0_BEA7_54333B643D0A.svg +155 -0
- data/examples/xmi/Images/EAID_48D364F0_DCA4_41e8_B4D4_509B3023B969.svg +17 -0
- data/examples/xmi/Images/EAID_4DBDAB9E_4C1C_4cb1_A767_06BD743A50A7.svg +78 -0
- data/examples/xmi/Images/EAID_4EB75007_B31D_4f2c_8855_7E9D3A3B17F4.svg +454 -0
- data/examples/xmi/Images/EAID_4F421236_FCF3_4aae_B22A_C7E6A5EFBAC7.svg +81 -0
- data/examples/xmi/Images/EAID_4FC1D352_2102_4b73_BCB0_1410B29C6BD7.svg +379 -0
- data/examples/xmi/Images/EAID_4FE346EA_01E1_4b30_8BE6_BB32EA191E47.svg +126 -0
- data/examples/xmi/Images/EAID_5038EEE3_7DD0_4cca_9829_364E044D37E8.svg +199 -0
- data/examples/xmi/Images/EAID_508A37DC_9378_4f5a_BD96_48F4D24E03A5.svg +162 -0
- data/examples/xmi/Images/EAID_516DA1A2_F0EC_415c_9664_E4CA54E7F05C.svg +136 -0
- data/examples/xmi/Images/EAID_52A1DBD3_D3DA_4b6d_8F96_FC6F39F64242.svg +161 -0
- data/examples/xmi/Images/EAID_575E87BA_32E9_4a84_AA4E_0EFDFC5D4C07.svg +71 -0
- data/examples/xmi/Images/EAID_57E0F1A0_6C72_47ef_B922_B806F9A875E8.svg +209 -0
- data/examples/xmi/Images/EAID_5957C373_3FC1_482f_8F35_D809153A17F5.svg +123 -0
- data/examples/xmi/Images/EAID_59A66AE2_412C_48a6_BFC7_EA56CF11D269.svg +218 -0
- data/examples/xmi/Images/EAID_5A43833E_680B_4a90_8931_0C902304E029.svg +236 -0
- data/examples/xmi/Images/EAID_5D6DB5A0_5047_4bac_9E60_69904A60B56D.svg +353 -0
- data/examples/xmi/Images/EAID_5DA1E7A7_8E59_4803_A831_E9F3EC27328F.svg +242 -0
- data/examples/xmi/Images/EAID_5E2C1E2A_82A8_47f4_B2ED_1398D72BFCFD.svg +246 -0
- data/examples/xmi/Images/EAID_6052620C_4BD5_49f6_A21C_AD7E6DCA2795.svg +290 -0
- data/examples/xmi/Images/EAID_6481E2CC_35A6_43b0_88D4_10A667A2BC2D.svg +60 -0
- data/examples/xmi/Images/EAID_660C7D03_A26C_4977_A7BA_9D0A773DA811.svg +318 -0
- data/examples/xmi/Images/EAID_671F3C3D_35B6_4514_B5B6_DD7E84925493.svg +24 -0
- data/examples/xmi/Images/EAID_676B9C9A_D85F_4d2f_A46B_73F02090DC87.svg +127 -0
- data/examples/xmi/Images/EAID_6797FEFA_5801_48e4_8B9C_3C824C0E165D.svg +412 -0
- data/examples/xmi/Images/EAID_6807F4EE_18EF_4e7e_ACCF_D5BD323AFDE9.svg +130 -0
- data/examples/xmi/Images/EAID_69E81E34_CF28_4c7f_A48F_5941BA85CEE3.svg +96 -0
- data/examples/xmi/Images/EAID_6A3C55E8_3C3C_4f3a_8AAC_0299C5B23070.svg +10 -0
- data/examples/xmi/Images/EAID_6BAC333E_E2C2_42c7_8DDF_6B4FA0FFC03B.svg +143 -0
- data/examples/xmi/Images/EAID_6D0349D5_3F1B_4b28_82D2_910743DEB5E5.svg +114 -0
- data/examples/xmi/Images/EAID_6E95B74E_8A09_4698_9E9E_23BCFD2CE194.svg +37 -0
- data/examples/xmi/Images/EAID_70C77F92_5614_4b22_8C8E_67859F59D8FD.svg +254 -0
- data/examples/xmi/Images/EAID_71F9216B_E7A7_4083_B08E_6C71B57F3A1F.svg +187 -0
- data/examples/xmi/Images/EAID_73025C5A_08FC_47ff_AB2F_C7F79CF54B41.svg +145 -0
- data/examples/xmi/Images/EAID_74C974B6_6D07_425d_B7AC_C8899E3B4967.svg +76 -0
- data/examples/xmi/Images/EAID_7504FCD2_524C_4e7d_BAE4_4E58A8A8A12C.svg +196 -0
- data/examples/xmi/Images/EAID_78030266_3603_4747_9D75_03D16614BE7D.svg +35 -0
- data/examples/xmi/Images/EAID_785226C1_12B1_4104_A4C1_F19B70B9FB71.svg +348 -0
- data/examples/xmi/Images/EAID_7854470F_26B8_4d3c_AFDF_C05BCE6ED0CD.svg +72 -0
- data/examples/xmi/Images/EAID_794F4A8F_18CA_4e9f_8477_A6F0E5ED22D4.svg +187 -0
- data/examples/xmi/Images/EAID_7A24839E_C8AE_424d_B7D2_6DA16DC813E7.svg +114 -0
- data/examples/xmi/Images/EAID_7A3649FD_E960_4ae6_B9B1_A9001C066AE7.svg +181 -0
- data/examples/xmi/Images/EAID_7B2C6765_AB68_439a_87F3_DAC323CB2AF5.svg +196 -0
- data/examples/xmi/Images/EAID_7C44AC09_27C1_47b3_9A85_88EC71C081FF.svg +55 -0
- data/examples/xmi/Images/EAID_7CE102CA_97C1_4cac_BD3B_0500D3712D2A.svg +195 -0
- data/examples/xmi/Images/EAID_7D960BD8_65D8_4934_9C11_4EF860DD8FBA.svg +90 -0
- data/examples/xmi/Images/EAID_80939C98_A456_48c3_BCEA_4B72851F2DF6.svg +174 -0
- data/examples/xmi/Images/EAID_812FE862_76ED_44f0_B678_7A4601B395CF.svg +142 -0
- data/examples/xmi/Images/EAID_81B76F5B_9D64_4bbf_8AC8_34234FB87533.svg +740 -0
- data/examples/xmi/Images/EAID_84352F1A_195B_411b_9552_5BFC40BF90B5.svg +105 -0
- data/examples/xmi/Images/EAID_846DD800_139C_4d47_A1DF_3FB1AC5D130F.svg +554 -0
- data/examples/xmi/Images/EAID_84A9C65B_FD6D_4bb5_818F_E8C35FF5BCD1.svg +228 -0
- data/examples/xmi/Images/EAID_853674F5_7DC9_4aae_809B_5728098B5D5B.svg +154 -0
- data/examples/xmi/Images/EAID_860CBBFB_2F27_408f_9144_751F9D1F487F.svg +273 -0
- data/examples/xmi/Images/EAID_87476527_7B9B_4b92_967E_3D38365470CA.svg +239 -0
- data/examples/xmi/Images/EAID_87DAE930_5069_4c58_AC65_4B0B2C0F32C8.svg +10 -0
- data/examples/xmi/Images/EAID_88AF6BD7_BC34_406f_BB59_47CFAB4A7D5D.svg +116 -0
- data/examples/xmi/Images/EAID_88D0CB44_20D0_44fc_A6E3_B663332EF401.svg +200 -0
- data/examples/xmi/Images/EAID_8BB1CA0C_C003_4678_973B_A1C3308E021D.svg +136 -0
- data/examples/xmi/Images/EAID_8DAB169F_D189_4320_A0F5_4443E3297F0E.svg +181 -0
- data/examples/xmi/Images/EAID_8FD488EF_BAAB_40ec_A7ED_F7CC831D546E.svg +324 -0
- data/examples/xmi/Images/EAID_90BCA409_BB45_42c5_AFA5_45FE3D995904.svg +342 -0
- data/examples/xmi/Images/EAID_926AFE38_01FA_469e_B6AA_ED5F4D62B66F.svg +105 -0
- data/examples/xmi/Images/EAID_92AB0FD0_B0FB_4ceb_8EAE_66B6600D31D7.svg +681 -0
- data/examples/xmi/Images/EAID_92C43670_3057_47f1_A576_C60843FF3D26.svg +136 -0
- data/examples/xmi/Images/EAID_93F63576_BE01_4cd8_8A91_C674FF77FC3D.svg +718 -0
- data/examples/xmi/Images/EAID_9400D9BC_05A5_41fc_83F7_02E5C67F9718.svg +487 -0
- data/examples/xmi/Images/EAID_95246DCF_1C09_4a16_9512_98000F56B3D8.svg +292 -0
- data/examples/xmi/Images/EAID_9994BF62_51E2_42cd_BB35_16C537B6718A.svg +715 -0
- data/examples/xmi/Images/EAID_9AAD6C21_B1E7_4472_B64A_FB5E3569D970.svg +116 -0
- data/examples/xmi/Images/EAID_9BD7189A_877B_4ca9_B42C_817DEF144FB2.svg +284 -0
- data/examples/xmi/Images/EAID_9DA6C553_94FC_4204_83AD_ECC4B45A53EF.svg +159 -0
- data/examples/xmi/Images/EAID_9EE6A41B_5FAA_4c89_B98F_732059778630.svg +10 -0
- data/examples/xmi/Images/EAID_9F1A4B54_46F6_435c_9529_E43E54CF6050.svg +172 -0
- data/examples/xmi/Images/EAID_9FE1EA7B_4CEF_4976_A281_93A94315BD84.svg +153 -0
- data/examples/xmi/Images/EAID_A0695647_6172_4262_8C30_67441399609C.svg +290 -0
- data/examples/xmi/Images/EAID_A081C63E_D6F2_41a7_A99C_307836754AFA.svg +149 -0
- data/examples/xmi/Images/EAID_A24E2778_5AD9_44f2_AB8F_5CD3913477D6.svg +194 -0
- data/examples/xmi/Images/EAID_A264F089_F9B3_406c_A3A8_FF34903797D3.svg +143 -0
- data/examples/xmi/Images/EAID_A282E5D1_2A13_4e7f_BC76_5D086DD4A577.svg +357 -0
- data/examples/xmi/Images/EAID_A3BCE1D6_9DB5_4272_A020_4C0E194B99CC.svg +171 -0
- data/examples/xmi/Images/EAID_A56E3818_D1B8_4b63_B69E_FBAC4A8AF482.svg +218 -0
- data/examples/xmi/Images/EAID_A57215D5_75C5_4532_BCF4_264A77CD62F1.svg +204 -0
- data/examples/xmi/Images/EAID_A59065AF_9669_486c_9582_9693177CFC7F.svg +263 -0
- data/examples/xmi/Images/EAID_A759374D_589A_488c_99EF_537ACB9B1FF9.svg +398 -0
- data/examples/xmi/Images/EAID_A7B25F46_F18A_4373_B16D_8C6AC0B868B0.svg +174 -0
- data/examples/xmi/Images/EAID_A9FE9E6F_A5F4_47e5_A6BA_26E22C7346B6.svg +310 -0
- data/examples/xmi/Images/EAID_AA62CDEB_55EC_498d_B326_4AA2C9AF6A05.svg +144 -0
- data/examples/xmi/Images/EAID_AAF52AF6_F7F9_4005_AE46_8920847BEA03.svg +144 -0
- data/examples/xmi/Images/EAID_AB281AC1_7CB8_404a_8124_34343DDD84E2.svg +198 -0
- data/examples/xmi/Images/EAID_AB7F1FDF_A66B_42a1_B8A3_7F594BAAD508.svg +143 -0
- data/examples/xmi/Images/EAID_AC2191E3_76E3_40b2_9E21_0E0B9B5277D2.svg +114 -0
- data/examples/xmi/Images/EAID_AD451676_A7C8_4c6a_A925_A9B9CA344142.svg +339 -0
- data/examples/xmi/Images/EAID_ADBA40A1_9375_4c1b_9938_0990612EB615.svg +429 -0
- data/examples/xmi/Images/EAID_ADC8773C_1B27_48ac_BAC1_14C1C919FAF6.svg +245 -0
- data/examples/xmi/Images/EAID_AE0718DF_AF69_4ea1_A099_E20028FE40A1.svg +173 -0
- data/examples/xmi/Images/EAID_B0DDB85D_A00C_4a7f_8C06_CCA15E5E4FE5.svg +31 -0
- data/examples/xmi/Images/EAID_B27ED282_D5E5_4f33_8AC1_62802F9E0B35.svg +256 -0
- data/examples/xmi/Images/EAID_B3AFECCB_17DD_44d6_8A44_2C38D9A64C0B.svg +95 -0
- data/examples/xmi/Images/EAID_B3B6C5B1_278E_4714_8244_B6C28B66AB50.svg +176 -0
- data/examples/xmi/Images/EAID_B53E76CD_A0F2_4e2f_B3AB_796D85964EF2.svg +179 -0
- data/examples/xmi/Images/EAID_B55D6E67_0BDD_4163_B359_11A6FBA89C74.svg +207 -0
- data/examples/xmi/Images/EAID_B58D1A53_E860_41a3_8352_11C274093E83.svg +189 -0
- data/examples/xmi/Images/EAID_B62C02B3_69DB_49e9_8089_4EE398BDE666.svg +165 -0
- data/examples/xmi/Images/EAID_BC008774_B539_4150_8174_B675989053D0.svg +22 -0
- data/examples/xmi/Images/EAID_BC1F7E00_082D_4a26_922B_3967A8D66859.svg +266 -0
- data/examples/xmi/Images/EAID_BDA613D8_402A_475a_AA15_683D88FD3D23.svg +183 -0
- data/examples/xmi/Images/EAID_C028B286_4C85_47d8_B6D5_80B28F556E82.svg +303 -0
- data/examples/xmi/Images/EAID_C173A6F4_1D1B_400e_AD8C_64FFF7CD5BE5.svg +178 -0
- data/examples/xmi/Images/EAID_C1834072_CADC_4ce4_B0FC_8284AE5CF4A4.svg +158 -0
- data/examples/xmi/Images/EAID_C1EC985B_5CBD_4e91_8661_EB4EF23781D9.svg +286 -0
- data/examples/xmi/Images/EAID_C31C1314_B679_4413_B8FE_A2CD584FC128.svg +305 -0
- data/examples/xmi/Images/EAID_C37CFBD6_69BA_42fb_9AC7_2D329D931BCF.svg +171 -0
- data/examples/xmi/Images/EAID_C857C934_306F_463a_87D5_257CB225ECFE.svg +174 -0
- data/examples/xmi/Images/EAID_C96797DE_2238_42d3_896A_9F92500270ED.svg +180 -0
- data/examples/xmi/Images/EAID_C96CBC24_B20E_459a_8F9D_75B61CDCB89F.svg +656 -0
- data/examples/xmi/Images/EAID_CACB523D_56A5_4f05_B3C2_51BB18F380FD.svg +158 -0
- data/examples/xmi/Images/EAID_CB34B578_101B_48b4_9271_214FFEA6A83A.svg +409 -0
- data/examples/xmi/Images/EAID_CBBD6CF4_0A1E_4406_9930_89DE43527910.svg +361 -0
- data/examples/xmi/Images/EAID_CC06A828_3750_472f_8DB2_C2E0863FCE17.svg +96 -0
- data/examples/xmi/Images/EAID_CD5CF053_1772_4a0f_962D_B17054D8EEAA.svg +173 -0
- data/examples/xmi/Images/EAID_CE440B5A_9534_4c75_9BA5_50862BB396C2.svg +97 -0
- data/examples/xmi/Images/EAID_CE4734FC_7986_4b3a_807F_A5B2C7EDE9E4.svg +193 -0
- data/examples/xmi/Images/EAID_D14AA320_9D41_4366_8739_9C2C21F96AE1.svg +32 -0
- data/examples/xmi/Images/EAID_D2FA55D3_C733_4a4d_92D0_0BC7AC0BB5BC.svg +108 -0
- data/examples/xmi/Images/EAID_D351FC34_FB03_488d_ADA4_BDB93DA9CB02.svg +49 -0
- data/examples/xmi/Images/EAID_D368FDF3_BDC5_4718_A701_351C8587A376.svg +592 -0
- data/examples/xmi/Images/EAID_D4DA8C48_3998_450d_87C4_9D65C9FECDB4.svg +42 -0
- data/examples/xmi/Images/EAID_D5464ECF_290E_4b2b_A6C4_25BE80F886CB.svg +76 -0
- data/examples/xmi/Images/EAID_D55235B0_61E9_461a_8379_2B8BF2403BE2.svg +147 -0
- data/examples/xmi/Images/EAID_D555ED73_F010_45d7_8A53_45A33C64C249.svg +318 -0
- data/examples/xmi/Images/EAID_D7AAC526_267E_45a0_A853_3207F02363F8.svg +45 -0
- data/examples/xmi/Images/EAID_D998B20D_A875_4ef8_A9CE_996BE56602BD.svg +158 -0
- data/examples/xmi/Images/EAID_DBFA8B39_F5B7_4c0e_9552_19AEAE5BA64E.svg +200 -0
- data/examples/xmi/Images/EAID_DE47A47D_E7BE_4e6f_BA81_F789EE8CFE72.svg +61 -0
- data/examples/xmi/Images/EAID_DFBB1072_8EC5_4384_8241_7EDF4B6B888B.svg +78 -0
- data/examples/xmi/Images/EAID_E325B9D8_E955_4aed_8125_63167BD40320.svg +67 -0
- data/examples/xmi/Images/EAID_E32D9D02_CAE9_4a47_92A8_3290EDCD6E6D.svg +79 -0
- data/examples/xmi/Images/EAID_E3B28611_7857_458a_B0BC_736E777B88EC.svg +194 -0
- data/examples/xmi/Images/EAID_E43C37EC_1176_4d2e_8B98_B6F3DFF6A092.svg +96 -0
- data/examples/xmi/Images/EAID_E591C1CF_7F35_4160_8A72_DFA097AD5811.svg +271 -0
- data/examples/xmi/Images/EAID_E77C66A2_2E94_4196_BFC6_662FE5AEEB6F.svg +332 -0
- data/examples/xmi/Images/EAID_E7AABA98_2450_4986_9736_DCCAF0108C50.svg +639 -0
- data/examples/xmi/Images/EAID_E7D9A2C4_72D6_40b9_8EB8_6B35476246B3.svg +134 -0
- data/examples/xmi/Images/EAID_E9CDAD85_ECF1_43de_819F_30A0D01785E6.svg +193 -0
- data/examples/xmi/Images/EAID_EC8AF507_F441_4e8a_B8A7_C1690F3C7D0B.svg +58 -0
- data/examples/xmi/Images/EAID_ED501058_D540_47ac_8EBC_5921E8C0BF57.svg +384 -0
- data/examples/xmi/Images/EAID_EFBF5F0F_DF74_4944_8791_114F5637C335.svg +590 -0
- data/examples/xmi/Images/EAID_EFFFA027_2A1F_425c_8437_BF89AADC8893.svg +365 -0
- data/examples/xmi/Images/EAID_F07E7718_B2C2_4a65_B5DD_477CB73E971E.svg +165 -0
- data/examples/xmi/Images/EAID_F0F20BDF_C729_47f7_B6FC_25ED2C4609CA.svg +61 -0
- data/examples/xmi/Images/EAID_F32E5AFE_8605_4c77_AE69_D0D0A6E380AC.svg +76 -0
- data/examples/xmi/Images/EAID_F3F00F45_CD37_46fd_B521_D1040EB2FB16.svg +123 -0
- data/examples/xmi/Images/EAID_F46E8F19_D8F1_4a3d_B87B_B0BAB4F50F50.svg +202 -0
- data/examples/xmi/Images/EAID_F48E5F6E_2411_4635_9315_3EAA4CFA29F7.svg +351 -0
- data/examples/xmi/Images/EAID_F4C23F9E_DD74_4fed_B75D_AD3C6448BA24.svg +189 -0
- data/examples/xmi/Images/EAID_F853B3C4_B145_4ef0_B261_C3CC0475B6D2.svg +215 -0
- data/examples/xmi/Images/EAID_F8BE68CA_1F8F_47e5_9454_01A2EB7D388A.svg +124 -0
- data/examples/xmi/Images/EAID_F92A6A28_612E_468e_9E39_D7AE7D24E24D.svg +208 -0
- data/examples/xmi/Images/EAID_F995FA49_B86E_4c94_BE5E_C928FB6B87D0.svg +302 -0
- data/examples/xmi/Images/EAID_FEAE013A_A4E4_4283_A491_1FEB8D0EBA28.svg +524 -0
- data/examples/xmi/Images/EAID_FEBE5726_3751_470b_9023_8C569202E97E.svg +730 -0
- data/examples/xmi/UML_EA.DTD +6856 -0
- data/examples/xmi/UmlModel_template.xmi +23 -0
- data/examples/xmi/basic.xmi +9086 -0
- data/examples/xmi/simple.xmi +655 -0
- data/examples/xmi/simple_example.xmi +23 -0
- data/examples/xmi/test.xmi +1703 -0
- data/exe/lutaml +2 -16
- data/exe/lutaml-wsd2uml +3 -3
- data/exe/lutaml-yaml2uml +2 -2
- data/lib/lutaml/cli/commands/base_command.rb +118 -0
- data/lib/lutaml/cli/element_identifier.rb +165 -0
- data/lib/lutaml/cli/enhanced_formatter.rb +502 -0
- data/lib/lutaml/cli/interactive_shell.rb +911 -0
- data/lib/lutaml/cli/lml_commands.rb +201 -0
- data/lib/lutaml/cli/output_formatter.rb +348 -0
- data/lib/lutaml/cli/resource_registry.rb +127 -0
- data/lib/lutaml/cli/tree_view_formatter.rb +308 -0
- data/lib/lutaml/cli/uml/build_command.rb +538 -0
- data/lib/lutaml/cli/uml/diagram_command.rb +421 -0
- data/lib/lutaml/cli/uml/export_command.rb +78 -0
- data/lib/lutaml/cli/uml/find_command.rb +122 -0
- data/lib/lutaml/cli/uml/info_command.rb +104 -0
- data/lib/lutaml/cli/uml/inspect_command.rb +88 -0
- data/lib/lutaml/cli/uml/ls_command.rb +105 -0
- data/lib/lutaml/cli/uml/repl_command.rb +50 -0
- data/lib/lutaml/cli/uml/search_command.rb +88 -0
- data/lib/lutaml/cli/uml/serve_command.rb +59 -0
- data/lib/lutaml/cli/uml/shared_helpers.rb +51 -0
- data/lib/lutaml/cli/uml/spa_command.rb +209 -0
- data/lib/lutaml/cli/uml/stats_command.rb +60 -0
- data/lib/lutaml/cli/uml/tree_command.rb +85 -0
- data/lib/lutaml/cli/uml/validate_command.rb +195 -0
- data/lib/lutaml/cli/uml/verify_command.rb +107 -0
- data/lib/lutaml/cli/uml_commands.rb +163 -0
- data/lib/lutaml/cli.rb +72 -0
- data/lib/lutaml/command_line.rb +8 -6
- data/lib/lutaml/converter/dsl_to_uml.rb +2 -0
- data/lib/lutaml/converter/xmi_to_uml.rb +40 -19
- data/lib/lutaml/ea/diagram/configuration.rb +379 -0
- data/lib/lutaml/ea/diagram/element_renderers/base_renderer.rb +81 -0
- data/lib/lutaml/ea/diagram/element_renderers/class_renderer.rb +330 -0
- data/lib/lutaml/ea/diagram/element_renderers/connector_renderer.rb +55 -0
- data/lib/lutaml/ea/diagram/element_renderers/package_renderer.rb +69 -0
- data/lib/lutaml/ea/diagram/extractor.rb +559 -0
- data/lib/lutaml/ea/diagram/layout_engine.rb +251 -0
- data/lib/lutaml/ea/diagram/path_builder.rb +258 -0
- data/lib/lutaml/ea/diagram/style_parser.rb +315 -0
- data/lib/lutaml/ea/diagram/style_resolver.rb +291 -0
- data/lib/lutaml/ea/diagram/svg_renderer.rb +285 -0
- data/lib/lutaml/ea/diagram/util.rb +69 -0
- data/lib/lutaml/ea/diagram.rb +77 -0
- data/lib/lutaml/express/parsers/exp.rb +1 -1
- data/lib/lutaml/express.rb +4 -2
- data/lib/lutaml/formatter/base.rb +6 -6
- data/lib/lutaml/formatter/graphviz.rb +10 -8
- data/lib/lutaml/formatter.rb +3 -0
- data/lib/lutaml/layout/engine.rb +9 -7
- data/lib/lutaml/layout/graph_viz_engine.rb +2 -1
- data/lib/lutaml/layout.rb +8 -0
- data/lib/lutaml/model_transformations/configuration.rb +333 -0
- data/lib/lutaml/model_transformations/format_registry.rb +394 -0
- data/lib/lutaml/model_transformations/parsers/base_parser.rb +389 -0
- data/lib/lutaml/model_transformations/parsers/qea_parser.rb +455 -0
- data/lib/lutaml/model_transformations/parsers/xmi_parser.rb +301 -0
- data/lib/lutaml/model_transformations/transformation_engine.rb +409 -0
- data/lib/lutaml/model_transformations.rb +143 -0
- data/lib/lutaml/parser.rb +15 -7
- data/lib/lutaml/qea/benchmark.rb +212 -0
- data/lib/lutaml/qea/database.rb +324 -0
- data/lib/lutaml/qea/factory/association_transformer.rb +115 -0
- data/lib/lutaml/qea/factory/attribute_tag_transformer.rb +60 -0
- data/lib/lutaml/qea/factory/attribute_transformer.rb +103 -0
- data/lib/lutaml/qea/factory/base_transformer.rb +132 -0
- data/lib/lutaml/qea/factory/class_transformer.rb +734 -0
- data/lib/lutaml/qea/factory/constraint_transformer.rb +78 -0
- data/lib/lutaml/qea/factory/data_type_transformer.rb +162 -0
- data/lib/lutaml/qea/factory/diagram_transformer.rb +182 -0
- data/lib/lutaml/qea/factory/document_builder.rb +275 -0
- data/lib/lutaml/qea/factory/ea_to_uml_factory.rb +260 -0
- data/lib/lutaml/qea/factory/enum_transformer.rb +87 -0
- data/lib/lutaml/qea/factory/generalization_transformer.rb +106 -0
- data/lib/lutaml/qea/factory/instance_transformer.rb +96 -0
- data/lib/lutaml/qea/factory/object_property_transformer.rb +61 -0
- data/lib/lutaml/qea/factory/operation_transformer.rb +75 -0
- data/lib/lutaml/qea/factory/package_transformer.rb +199 -0
- data/lib/lutaml/qea/factory/reference_resolver.rb +99 -0
- data/lib/lutaml/qea/factory/tagged_value_transformer.rb +41 -0
- data/lib/lutaml/qea/factory/transformer_registry.rb +85 -0
- data/lib/lutaml/qea/file_detector.rb +178 -0
- data/lib/lutaml/qea/infrastructure/database_connection.rb +100 -0
- data/lib/lutaml/qea/infrastructure/schema_reader.rb +136 -0
- data/lib/lutaml/qea/infrastructure/table_reader.rb +224 -0
- data/lib/lutaml/qea/models/base_model.rb +48 -0
- data/lib/lutaml/qea/models/ea_attribute.rb +135 -0
- data/lib/lutaml/qea/models/ea_attribute_tag.rb +109 -0
- data/lib/lutaml/qea/models/ea_complexity_type.rb +81 -0
- data/lib/lutaml/qea/models/ea_connector.rb +162 -0
- data/lib/lutaml/qea/models/ea_connector_type.rb +62 -0
- data/lib/lutaml/qea/models/ea_constraint_type.rb +65 -0
- data/lib/lutaml/qea/models/ea_datatype.rb +108 -0
- data/lib/lutaml/qea/models/ea_diagram.rb +117 -0
- data/lib/lutaml/qea/models/ea_diagram_link.rb +80 -0
- data/lib/lutaml/qea/models/ea_diagram_object.rb +86 -0
- data/lib/lutaml/qea/models/ea_diagram_type.rb +58 -0
- data/lib/lutaml/qea/models/ea_document.rb +68 -0
- data/lib/lutaml/qea/models/ea_object.rb +208 -0
- data/lib/lutaml/qea/models/ea_object_constraint.rb +62 -0
- data/lib/lutaml/qea/models/ea_object_property.rb +96 -0
- data/lib/lutaml/qea/models/ea_object_type.rb +75 -0
- data/lib/lutaml/qea/models/ea_operation.rb +153 -0
- data/lib/lutaml/qea/models/ea_operation_param.rb +73 -0
- data/lib/lutaml/qea/models/ea_package.rb +75 -0
- data/lib/lutaml/qea/models/ea_script.rb +69 -0
- data/lib/lutaml/qea/models/ea_status_type.rb +68 -0
- data/lib/lutaml/qea/models/ea_stereotype.rb +59 -0
- data/lib/lutaml/qea/models/ea_tagged_value.rb +105 -0
- data/lib/lutaml/qea/models/ea_xref.rb +174 -0
- data/lib/lutaml/qea/parser.rb +61 -0
- data/lib/lutaml/qea/repositories/base_repository.rb +215 -0
- data/lib/lutaml/qea/repositories/object_repository.rb +221 -0
- data/lib/lutaml/qea/services/configuration.rb +211 -0
- data/lib/lutaml/qea/services/database_loader.rb +215 -0
- data/lib/lutaml/qea/validation/association_validator.rb +75 -0
- data/lib/lutaml/qea/validation/attribute_validator.rb +103 -0
- data/lib/lutaml/qea/validation/base_validator.rb +305 -0
- data/lib/lutaml/qea/validation/class_validator.rb +123 -0
- data/lib/lutaml/qea/validation/database/circular_reference_validator.rb +111 -0
- data/lib/lutaml/qea/validation/database/orphan_validator.rb +155 -0
- data/lib/lutaml/qea/validation/database/referential_integrity_validator.rb +130 -0
- data/lib/lutaml/qea/validation/diagram_validator.rb +114 -0
- data/lib/lutaml/qea/validation/formatters/json_formatter.rb +137 -0
- data/lib/lutaml/qea/validation/formatters/text_formatter.rb +235 -0
- data/lib/lutaml/qea/validation/operation_validator.rb +81 -0
- data/lib/lutaml/qea/validation/package_validator.rb +113 -0
- data/lib/lutaml/qea/validation/validation_engine.rb +497 -0
- data/lib/lutaml/qea/validation/validation_message.rb +144 -0
- data/lib/lutaml/qea/validation/validation_result.rb +212 -0
- data/lib/lutaml/qea/validation/validator_registry.rb +134 -0
- data/lib/lutaml/qea/verification/comparison_result.rb +264 -0
- data/lib/lutaml/qea/verification/document_normalizer.rb +177 -0
- data/lib/lutaml/qea/verification/document_verifier.rb +320 -0
- data/lib/lutaml/qea/verification/element_comparator.rb +306 -0
- data/lib/lutaml/qea/verification/structure_matcher.rb +287 -0
- data/lib/lutaml/qea.rb +226 -0
- data/lib/lutaml/sysml/allocate.rb +2 -0
- data/lib/lutaml/sysml/allocated.rb +2 -0
- data/lib/lutaml/sysml/binding_connector.rb +2 -0
- data/lib/lutaml/sysml/block.rb +2 -0
- data/lib/lutaml/sysml/constraint_block.rb +2 -0
- data/lib/lutaml/sysml/copy.rb +2 -0
- data/lib/lutaml/sysml/derive_requirement.rb +2 -0
- data/lib/lutaml/sysml/nested_connector_end.rb +2 -0
- data/lib/lutaml/sysml/refine.rb +2 -0
- data/lib/lutaml/sysml/requirement.rb +2 -0
- data/lib/lutaml/sysml/requirement_related.rb +2 -0
- data/lib/lutaml/sysml/satisfy.rb +2 -0
- data/lib/lutaml/sysml/test_case.rb +2 -0
- data/lib/lutaml/sysml/trace.rb +2 -0
- data/lib/lutaml/sysml/verify.rb +2 -0
- data/lib/lutaml/sysml/xmi_file.rb +2 -0
- data/lib/lutaml/sysml.rb +3 -1
- data/lib/lutaml/uml/association.rb +4 -0
- data/lib/lutaml/uml/class.rb +11 -9
- data/lib/lutaml/uml/classifier.rb +3 -0
- data/lib/lutaml/uml/comment.rb +13 -0
- data/lib/lutaml/uml/data_type.rb +7 -6
- data/lib/lutaml/uml/diagram.rb +12 -0
- data/lib/lutaml/uml/diagram_link.rb +26 -0
- data/lib/lutaml/uml/diagram_object.rb +30 -0
- data/lib/lutaml/uml/document.rb +18 -0
- data/lib/lutaml/uml/enum.rb +4 -3
- data/lib/lutaml/uml/fontname.rb +13 -0
- data/lib/lutaml/uml/generalization.rb +2 -0
- data/lib/lutaml/uml/group.rb +2 -0
- data/lib/lutaml/uml/namespace.rb +2 -2
- data/lib/lutaml/uml/node/{field.rb → attribute.rb} +4 -4
- data/lib/lutaml/uml/node/base.rb +1 -1
- data/lib/lutaml/uml/node/class_node.rb +12 -12
- data/lib/lutaml/uml/node/class_relationship.rb +2 -2
- data/lib/lutaml/uml/node/document.rb +2 -2
- data/lib/lutaml/uml/node/method_argument.rb +3 -3
- data/lib/lutaml/uml/node/{method.rb → operation.rb} +4 -4
- data/lib/lutaml/uml/node/relationship.rb +3 -3
- data/lib/lutaml/uml/package.rb +7 -4
- data/lib/lutaml/uml/package_path.rb +235 -0
- data/lib/lutaml/uml/parsers/attribute.rb +2 -2
- data/lib/lutaml/uml/parsers/dsl.rb +3 -4
- data/lib/lutaml/uml/parsers/yaml.rb +1 -1
- data/lib/lutaml/uml/qualified_name.rb +178 -0
- data/lib/lutaml/uml/tagged_value.rb +21 -0
- data/lib/lutaml/uml/top_element.rb +7 -1
- data/lib/lutaml/uml/top_element_attribute.rb +4 -0
- data/lib/lutaml/uml/validation/document_structure_validator.rb +389 -0
- data/lib/lutaml/uml.rb +89 -45
- data/lib/lutaml/uml_repository/error_handler.rb +203 -0
- data/lib/lutaml/uml_repository/exporters/base_exporter.rb +61 -0
- data/lib/lutaml/uml_repository/exporters/json_exporter.rb +344 -0
- data/lib/lutaml/uml_repository/exporters/markdown_exporter.rb +598 -0
- data/lib/lutaml/uml_repository/index_builder.rb +460 -0
- data/lib/lutaml/uml_repository/lazy_repository.rb +238 -0
- data/lib/lutaml/uml_repository/package_exporter.rb +336 -0
- data/lib/lutaml/uml_repository/package_loader.rb +220 -0
- data/lib/lutaml/uml_repository/package_metadata.rb +77 -0
- data/lib/lutaml/uml_repository/presenters/association_presenter.rb +86 -0
- data/lib/lutaml/uml_repository/presenters/attribute_presenter.rb +101 -0
- data/lib/lutaml/uml_repository/presenters/class_presenter.rb +75 -0
- data/lib/lutaml/uml_repository/presenters/datatype_presenter.rb +108 -0
- data/lib/lutaml/uml_repository/presenters/diagram_presenter.rb +508 -0
- data/lib/lutaml/uml_repository/presenters/element_presenter.rb +92 -0
- data/lib/lutaml/uml_repository/presenters/enum_presenter.rb +83 -0
- data/lib/lutaml/uml_repository/presenters/package_presenter.rb +48 -0
- data/lib/lutaml/uml_repository/presenters/presenter_factory.rb +76 -0
- data/lib/lutaml/uml_repository/queries/association_query.rb +187 -0
- data/lib/lutaml/uml_repository/queries/base_query.rb +45 -0
- data/lib/lutaml/uml_repository/queries/class_query.rb +117 -0
- data/lib/lutaml/uml_repository/queries/diagram_query.rb +111 -0
- data/lib/lutaml/uml_repository/queries/inheritance_query.rb +259 -0
- data/lib/lutaml/uml_repository/queries/package_query.rb +239 -0
- data/lib/lutaml/uml_repository/queries/search_query.rb +357 -0
- data/lib/lutaml/uml_repository/query_dsl/conditions/base_condition.rb +28 -0
- data/lib/lutaml/uml_repository/query_dsl/conditions/block_condition.rb +46 -0
- data/lib/lutaml/uml_repository/query_dsl/conditions/hash_condition.rb +84 -0
- data/lib/lutaml/uml_repository/query_dsl/conditions/package_condition.rb +84 -0
- data/lib/lutaml/uml_repository/query_dsl/order.rb +90 -0
- data/lib/lutaml/uml_repository/query_dsl/query_builder.rb +296 -0
- data/lib/lutaml/uml_repository/repository.rb +764 -0
- data/lib/lutaml/uml_repository/repository_enhanced.rb +439 -0
- data/lib/lutaml/uml_repository/search_result.rb +86 -0
- data/lib/lutaml/uml_repository/static_site/configuration.rb +270 -0
- data/lib/lutaml/uml_repository/static_site/data_transformer.rb +967 -0
- data/lib/lutaml/uml_repository/static_site/generator.rb +401 -0
- data/lib/lutaml/uml_repository/static_site/id_generator.rb +115 -0
- data/lib/lutaml/uml_repository/static_site/search_index_builder.rb +317 -0
- data/lib/lutaml/uml_repository/static_site.rb +88 -0
- data/lib/lutaml/uml_repository/statistics_calculator.rb +334 -0
- data/lib/lutaml/uml_repository/validators/repository_validator.rb +404 -0
- data/lib/lutaml/uml_repository/web_ui/app.rb +144 -0
- data/lib/lutaml/uml_repository/web_ui/public/app.js +452 -0
- data/lib/lutaml/uml_repository/web_ui/public/styles.css +381 -0
- data/lib/lutaml/uml_repository/web_ui/views/index.erb +40 -0
- data/lib/lutaml/uml_repository.rb +97 -0
- data/lib/lutaml/version.rb +3 -1
- data/lib/lutaml/xmi/liquid_drops/association_drop.rb +60 -58
- data/lib/lutaml/xmi/liquid_drops/attribute_drop.rb +55 -53
- data/lib/lutaml/xmi/liquid_drops/cardinality_drop.rb +15 -13
- data/lib/lutaml/xmi/liquid_drops/connector_drop.rb +50 -46
- data/lib/lutaml/xmi/liquid_drops/constraint_drop.rb +19 -17
- data/lib/lutaml/xmi/liquid_drops/data_type_drop.rb +93 -90
- data/lib/lutaml/xmi/liquid_drops/dependency_drop.rb +26 -24
- data/lib/lutaml/xmi/liquid_drops/diagram_drop.rb +26 -24
- data/lib/lutaml/xmi/liquid_drops/enum_drop.rb +40 -37
- data/lib/lutaml/xmi/liquid_drops/enum_owned_literal_drop.rb +20 -18
- data/lib/lutaml/xmi/liquid_drops/generalization_attribute_drop.rb +64 -62
- data/lib/lutaml/xmi/liquid_drops/generalization_drop.rb +142 -140
- data/lib/lutaml/xmi/liquid_drops/klass_drop.rb +174 -170
- data/lib/lutaml/xmi/liquid_drops/operation_drop.rb +23 -21
- data/lib/lutaml/xmi/liquid_drops/package_drop.rb +95 -93
- data/lib/lutaml/xmi/liquid_drops/root_drop.rb +28 -25
- data/lib/lutaml/xmi/liquid_drops/source_target_drop.rb +39 -37
- data/lib/lutaml/xmi/parsers/xmi_base.rb +27 -17
- data/lib/lutaml/xmi/parsers/xml.rb +9 -9
- data/lib/lutaml/xmi.rb +37 -6
- data/lib/lutaml/xml/parsers/xml.rb +3 -1
- data/lib/lutaml/xml.rb +3 -1
- data/lib/lutaml.rb +14 -2
- data/lutaml.gemspec +16 -8
- data/plateau_all_packages.lur +0 -0
- data/templates/static_site/assets/scripts/app.js +45 -0
- data/templates/static_site/assets/scripts/core/state.js +419 -0
- data/templates/static_site/assets/scripts/core/utils.js +133 -0
- data/templates/static_site/assets/scripts/ui/details.js +74 -0
- data/templates/static_site/assets/scripts/ui/diagrams.js +345 -0
- data/templates/static_site/assets/scripts/ui/search.js +187 -0
- data/templates/static_site/assets/scripts/ui/sidebar.js +214 -0
- data/templates/static_site/assets/styles/00-variables.css +144 -0
- data/templates/static_site/assets/styles/01-reset.css +79 -0
- data/templates/static_site/assets/styles/02-base.css +149 -0
- data/templates/static_site/assets/styles/03-layout.css +171 -0
- data/templates/static_site/assets/styles/04-components.css +856 -0
- data/templates/static_site/assets/styles/05-utilities.css +89 -0
- data/templates/static_site/assets/styles/06-diagrams.css +277 -0
- data/templates/static_site/components/class_details.liquid +328 -0
- data/templates/static_site/components/content.liquid +508 -0
- data/templates/static_site/components/diagram_list.liquid +52 -0
- data/templates/static_site/components/diagram_viewer.liquid +71 -0
- data/templates/static_site/components/header.liquid +134 -0
- data/templates/static_site/components/package_details.liquid +119 -0
- data/templates/static_site/components/sidebar.liquid +46 -0
- data/templates/static_site/components/tree_node.liquid +81 -0
- data/templates/static_site/multi_file.liquid +46 -0
- data/templates/static_site/single_file.liquid +52 -0
- metadata +604 -31
- data/CODE_OF_CONDUCT.md +0 -74
- data/docs/lutaml-sysml.adoc +0 -10
data/docs/README.md
ADDED
|
@@ -0,0 +1,252 @@
|
|
|
1
|
+
# LutaML Documentation
|
|
2
|
+
|
|
3
|
+
This directory contains the LutaML documentation website built with Jekyll and the just-the-docs theme.
|
|
4
|
+
|
|
5
|
+
## 🎉 Jekyll Site Structure: READY
|
|
6
|
+
|
|
7
|
+
The documentation framework is complete and ready for content migration.
|
|
8
|
+
|
|
9
|
+
## Quick Start
|
|
10
|
+
|
|
11
|
+
### Local Development
|
|
12
|
+
|
|
13
|
+
```bash
|
|
14
|
+
cd docs
|
|
15
|
+
bundle install
|
|
16
|
+
bundle exec jekyll serve
|
|
17
|
+
```
|
|
18
|
+
|
|
19
|
+
Open http://localhost:4000/lutaml/
|
|
20
|
+
|
|
21
|
+
### Production Build
|
|
22
|
+
|
|
23
|
+
```bash
|
|
24
|
+
cd docs
|
|
25
|
+
JEKYLL_ENV=production bundle exec jekyll build
|
|
26
|
+
```
|
|
27
|
+
|
|
28
|
+
Output in `_site/` directory.
|
|
29
|
+
|
|
30
|
+
## Site Structure
|
|
31
|
+
|
|
32
|
+
```
|
|
33
|
+
docs/
|
|
34
|
+
├── index.adoc # Homepage ✅
|
|
35
|
+
├── _config.yml # Jekyll configuration ✅
|
|
36
|
+
├── Gemfile # Dependencies ✅
|
|
37
|
+
├── lychee.toml # Link checker config ✅
|
|
38
|
+
│
|
|
39
|
+
├── _pages/ # Core Topics collection ✅
|
|
40
|
+
│ ├── index.adoc # Collection overview
|
|
41
|
+
│ └── concepts/ # Concepts subdirectory
|
|
42
|
+
│
|
|
43
|
+
├── _tutorials/ # Tutorials collection ✅
|
|
44
|
+
│ └── index.adoc # Collection overview
|
|
45
|
+
│
|
|
46
|
+
├── _guides/ # Guides collection ✅
|
|
47
|
+
│ ├── index.adoc # Collection overview
|
|
48
|
+
│ └── parsing/ # Parsing guides subdirectory
|
|
49
|
+
│
|
|
50
|
+
├── _references/ # Reference collection ✅
|
|
51
|
+
│ ├── index.adoc # Collection overview
|
|
52
|
+
│ ├── cli/ # CLI reference
|
|
53
|
+
│ ├── api/ # API reference
|
|
54
|
+
│ ├── formats/ # Format specifications
|
|
55
|
+
│ └── configuration/ # Configuration schemas
|
|
56
|
+
│
|
|
57
|
+
└── .github/workflows/ # CI/CD ✅
|
|
58
|
+
├── docs.yml # Build and deploy
|
|
59
|
+
└── links.yml # Link checking
|
|
60
|
+
```
|
|
61
|
+
|
|
62
|
+
## Documentation Collections
|
|
63
|
+
|
|
64
|
+
### 1. Core Topics (_pages/)
|
|
65
|
+
|
|
66
|
+
Fundamental concepts and essential information.
|
|
67
|
+
|
|
68
|
+
**Status**: Skeleton ready, content needs migration
|
|
69
|
+
|
|
70
|
+
### 2. Tutorials (_tutorials/)
|
|
71
|
+
|
|
72
|
+
Step-by-step learning paths with complete workflows.
|
|
73
|
+
|
|
74
|
+
**Status**: Overview ready, tutorials need creation
|
|
75
|
+
|
|
76
|
+
### 3. Guides (_guides/)
|
|
77
|
+
|
|
78
|
+
Task-oriented how-to documentation.
|
|
79
|
+
|
|
80
|
+
**Status**: Overview ready, guides need migration
|
|
81
|
+
|
|
82
|
+
### 4. Reference (_references/)
|
|
83
|
+
|
|
84
|
+
Detailed technical specifications and API docs.
|
|
85
|
+
|
|
86
|
+
**Status**: Structure ready, content needs migration
|
|
87
|
+
|
|
88
|
+
## Next Steps
|
|
89
|
+
|
|
90
|
+
See [`MIGRATION_GUIDE.md`](MIGRATION_GUIDE.md) for detailed instructions on:
|
|
91
|
+
|
|
92
|
+
1. Content migration from existing docs
|
|
93
|
+
2. Front matter requirements
|
|
94
|
+
3. Link updating procedures
|
|
95
|
+
4. Testing checklist
|
|
96
|
+
|
|
97
|
+
See [`REFACTOR_PLAN.md`](REFACTOR_PLAN.md) for complete categorization and mapping.
|
|
98
|
+
|
|
99
|
+
## Contributing
|
|
100
|
+
|
|
101
|
+
### Adding a New Page
|
|
102
|
+
|
|
103
|
+
1. Create file in appropriate collection directory
|
|
104
|
+
2. Add YAML front matter:
|
|
105
|
+
```yaml
|
|
106
|
+
---
|
|
107
|
+
title: Page Title
|
|
108
|
+
parent: Parent Page Title
|
|
109
|
+
nav_order: 1
|
|
110
|
+
---
|
|
111
|
+
```
|
|
112
|
+
3. Write content in AsciiDoc format
|
|
113
|
+
4. Test locally: `bundle exec jekyll serve`
|
|
114
|
+
5. Submit pull request
|
|
115
|
+
|
|
116
|
+
### Updating Existing Pages
|
|
117
|
+
|
|
118
|
+
1. Edit the `.adoc` file
|
|
119
|
+
2. Update cross-references if needed
|
|
120
|
+
3. Test build locally
|
|
121
|
+
4. Submit pull request
|
|
122
|
+
|
|
123
|
+
## GitHub Actions
|
|
124
|
+
|
|
125
|
+
### Build and Deploy (docs.yml)
|
|
126
|
+
|
|
127
|
+
Automatically builds and deploys on push to main.
|
|
128
|
+
|
|
129
|
+
**Triggers**: Push to main, pull requests, manual dispatch
|
|
130
|
+
|
|
131
|
+
### Link Checking (links.yml)
|
|
132
|
+
|
|
133
|
+
Validates all links in documentation.
|
|
134
|
+
|
|
135
|
+
**Triggers**: Push to main, pull requests, weekly schedule
|
|
136
|
+
|
|
137
|
+
## Link Syntax
|
|
138
|
+
|
|
139
|
+
Use AsciiDoc format for all internal links:
|
|
140
|
+
|
|
141
|
+
```adoc
|
|
142
|
+
link:relative/path.adoc[Link Text]
|
|
143
|
+
link:../_pages/installation.adoc[Installation Guide]
|
|
144
|
+
```
|
|
145
|
+
|
|
146
|
+
## Front Matter Reference
|
|
147
|
+
|
|
148
|
+
### Top-level page:
|
|
149
|
+
```yaml
|
|
150
|
+
---
|
|
151
|
+
title: Page Title
|
|
152
|
+
nav_order: 1
|
|
153
|
+
---
|
|
154
|
+
```
|
|
155
|
+
|
|
156
|
+
### Child page:
|
|
157
|
+
```yaml
|
|
158
|
+
---
|
|
159
|
+
title: Child Page
|
|
160
|
+
parent: Parent Page Title
|
|
161
|
+
nav_order: 2
|
|
162
|
+
---
|
|
163
|
+
```
|
|
164
|
+
|
|
165
|
+
### Grandchild:
|
|
166
|
+
```yaml
|
|
167
|
+
---
|
|
168
|
+
title: Grandchild
|
|
169
|
+
parent: Child Page Title
|
|
170
|
+
grand_parent: Parent Page Title
|
|
171
|
+
nav_order: 1
|
|
172
|
+
---
|
|
173
|
+
```
|
|
174
|
+
|
|
175
|
+
## Configuration
|
|
176
|
+
|
|
177
|
+
### Site Settings (_config.yml)
|
|
178
|
+
|
|
179
|
+
- Title: LutaML Documentation
|
|
180
|
+
- Base URL: /lutaml
|
|
181
|
+
- Theme: just-the-docs 0.7.0
|
|
182
|
+
- 4 collections configured
|
|
183
|
+
- Search enabled
|
|
184
|
+
- Link checking enabled
|
|
185
|
+
|
|
186
|
+
### Dependencies (Gemfile)
|
|
187
|
+
|
|
188
|
+
- jekyll (~> 4.3)
|
|
189
|
+
- just-the-docs (0.7.0)
|
|
190
|
+
- jekyll-asciidoc
|
|
191
|
+
- jekyll-seo-tag
|
|
192
|
+
- jekyll-sitemap
|
|
193
|
+
|
|
194
|
+
### Link Checker (lychee.toml)
|
|
195
|
+
|
|
196
|
+
- Caching enabled
|
|
197
|
+
- Follows redirects
|
|
198
|
+
- Excludes examples and localhost
|
|
199
|
+
- Retry logic for rate limits
|
|
200
|
+
|
|
201
|
+
## Common Commands
|
|
202
|
+
|
|
203
|
+
```bash
|
|
204
|
+
# Install dependencies
|
|
205
|
+
bundle install
|
|
206
|
+
|
|
207
|
+
# Serve locally with live reload
|
|
208
|
+
bundle exec jekyll serve --livereload
|
|
209
|
+
|
|
210
|
+
# Build for production
|
|
211
|
+
JEKYLL_ENV=production bundle exec jekyll build
|
|
212
|
+
|
|
213
|
+
# Check links
|
|
214
|
+
bundle exec jekyll build
|
|
215
|
+
lychee --config lychee.toml '_site/**/*.html'
|
|
216
|
+
|
|
217
|
+
# Clean build artifacts
|
|
218
|
+
bundle exec jekyll clean
|
|
219
|
+
```
|
|
220
|
+
|
|
221
|
+
## Troubleshooting
|
|
222
|
+
|
|
223
|
+
### "Liquid Exception: Included file '_includes/head.html' not found"
|
|
224
|
+
|
|
225
|
+
Install theme: `bundle install`
|
|
226
|
+
|
|
227
|
+
### Links showing as [link text](broken_path)
|
|
228
|
+
|
|
229
|
+
Use AsciiDoc syntax: `link:path.adoc[Text]`
|
|
230
|
+
|
|
231
|
+
### Navigation not showing pages
|
|
232
|
+
|
|
233
|
+
Check front matter `parent` matches parent `title` exactly.
|
|
234
|
+
|
|
235
|
+
### Search not working
|
|
236
|
+
|
|
237
|
+
Rebuild site to regenerate search index.
|
|
238
|
+
|
|
239
|
+
## Resources
|
|
240
|
+
|
|
241
|
+
- **Jekyll**: https://jekyllrb.com/docs/
|
|
242
|
+
- **Just the Docs**: https://just-the-docs.github.io/just-the-docs/
|
|
243
|
+
- **AsciiDoc**: https://docs.asciidoctor.org/asciidoc/latest/
|
|
244
|
+
- **Migration Guide**: [MIGRATION_GUIDE.md](MIGRATION_GUIDE.md)
|
|
245
|
+
- **Refactor Plan**: [REFACTOR_PLAN.md](REFACTOR_PLAN.md)
|
|
246
|
+
|
|
247
|
+
## Status
|
|
248
|
+
|
|
249
|
+
**Infrastructure**: ✅ Complete
|
|
250
|
+
**Content Migration**: 📝 In Progress
|
|
251
|
+
**Testing**: ⏳ Pending
|
|
252
|
+
**Deployment**: 🚀 Ready
|
|
@@ -0,0 +1,214 @@
|
|
|
1
|
+
# Documentation Refactoring Plan
|
|
2
|
+
|
|
3
|
+
## Goal
|
|
4
|
+
Refactor LutaML documentation into a Jekyll-based 4-collection structure following industry best practices.
|
|
5
|
+
|
|
6
|
+
## Current State Analysis
|
|
7
|
+
|
|
8
|
+
### User Documentation (Keep & Restructure)
|
|
9
|
+
1. **README.adoc** (2015 lines) - Comprehensive guide, needs to be split
|
|
10
|
+
2. **diagram-generation.adoc** - Guide for EA diagram generation
|
|
11
|
+
3. **diagram-configuration.adoc** - Configuration reference
|
|
12
|
+
4. **lutaml-uml.adoc** - UML language guide
|
|
13
|
+
5. **lutaml-express.adoc** - EXPRESS parsing
|
|
14
|
+
6. **lutaml-xmi.adoc** - XMI parsing
|
|
15
|
+
7. **lutaml_syntax.adoc** - Syntax reference
|
|
16
|
+
8. **ea_qea_structure.adoc** - QEA format specification
|
|
17
|
+
9. **package_metadata.adoc** - Metadata configuration
|
|
18
|
+
|
|
19
|
+
### Internal Documentation (Archive)
|
|
20
|
+
- CLI_THOR_ARCHITECTURE.md
|
|
21
|
+
- COMPREHENSIVE_VALIDATION_PLAN.md
|
|
22
|
+
- CONTINUATION_PROMPT.txt
|
|
23
|
+
- DIAGRAM_SUPPORT_IMPLEMENTATION.md
|
|
24
|
+
- IMPLEMENTATION_PLAN.md
|
|
25
|
+
- NOTE_OBJECT_ARCHITECTURE.md
|
|
26
|
+
- QEA_PARSER_IMPLEMENTATION_STATUS.md
|
|
27
|
+
- SPA_CONTINUATION_PLAN.md
|
|
28
|
+
- svg_comparison_results.md
|
|
29
|
+
- TWO_PHASE_VALIDATION_IMPLEMENTATION.md
|
|
30
|
+
- VALIDATION_ARCHITECTURE_REDESIGN.md
|
|
31
|
+
- architecture/SPA_ARCHITECTURE.md
|
|
32
|
+
- features/SPA_BROWSER.md
|
|
33
|
+
|
|
34
|
+
## Target Structure
|
|
35
|
+
|
|
36
|
+
### Collection 1: Core Topics (_pages/)
|
|
37
|
+
**Purpose**: Fundamental concepts and essential information
|
|
38
|
+
|
|
39
|
+
- `index.adoc` - Core Topics Overview
|
|
40
|
+
- `overview.adoc` - What is LutaML
|
|
41
|
+
- `installation.adoc` - Installation guide
|
|
42
|
+
- `architecture.adoc` - System architecture
|
|
43
|
+
- `concepts/` - Core concepts directory
|
|
44
|
+
- `qea-parsing.adoc` - QEA direct parsing
|
|
45
|
+
- `lur-format.adoc` - LUR package format
|
|
46
|
+
- `uml-models.adoc` - UML model structure
|
|
47
|
+
- `diagram-generation.adoc` - Diagram generation overview
|
|
48
|
+
|
|
49
|
+
### Collection 2: Tutorials (_tutorials/)
|
|
50
|
+
**Purpose**: Step-by-step learning paths
|
|
51
|
+
|
|
52
|
+
- `index.adoc` - Tutorials Overview
|
|
53
|
+
- `getting-started.adoc` - Quick start tutorial
|
|
54
|
+
- `first-lur-package.adoc` - Building your first LUR
|
|
55
|
+
- `generating-diagrams.adoc` - Creating diagrams
|
|
56
|
+
- `documentation-site.adoc` - Building a docs site
|
|
57
|
+
- `querying-models.adoc` - Searching and querying
|
|
58
|
+
|
|
59
|
+
### Collection 3: Guides (_guides/)
|
|
60
|
+
**Purpose**: Task-oriented how-to documentation
|
|
61
|
+
|
|
62
|
+
- `index.adoc` - Guides Overview
|
|
63
|
+
- `cli-usage.adoc` - CLI usage guide
|
|
64
|
+
- `diagram-configuration.adoc` - Configuring diagrams
|
|
65
|
+
- `package-metadata.adoc` - Package metadata setup
|
|
66
|
+
- `repository-management.adoc` - Managing repositories
|
|
67
|
+
- `parsing/` - Parsing guides
|
|
68
|
+
- `qea-parsing.adoc` - QEA parsing guide
|
|
69
|
+
- `xmi-parsing.adoc` - XMI parsing guide
|
|
70
|
+
- `express-parsing.adoc` - EXPRESS parsing guide
|
|
71
|
+
|
|
72
|
+
### Collection 4: References (_references/)
|
|
73
|
+
**Purpose**: Detailed technical specifications
|
|
74
|
+
|
|
75
|
+
- `index.adoc` - References Overview
|
|
76
|
+
- `cli/` - CLI reference
|
|
77
|
+
- `commands.adoc` - Complete command reference
|
|
78
|
+
- `build.adoc` - Build command
|
|
79
|
+
- `search.adoc` - Search command
|
|
80
|
+
- `export.adoc` - Export command
|
|
81
|
+
- `api/` - API reference
|
|
82
|
+
- `repository.adoc` - Repository API
|
|
83
|
+
- `parsers.adoc` - Parser APIs
|
|
84
|
+
- `presenters.adoc` - Presenter APIs
|
|
85
|
+
- `formats/` - Format specifications
|
|
86
|
+
- `qea-structure.adoc` - QEA file format
|
|
87
|
+
- `lur-format.adoc` - LUR package format
|
|
88
|
+
- `lutaml-syntax.adoc` - LutaML syntax
|
|
89
|
+
- `configuration/` - Configuration schemas
|
|
90
|
+
- `diagram-styles.adoc` - Diagram styling config
|
|
91
|
+
- `package-metadata.adoc` - Package metadata config
|
|
92
|
+
|
|
93
|
+
## Implementation Steps
|
|
94
|
+
|
|
95
|
+
### Phase 1: Setup (Priority 1)
|
|
96
|
+
- [x] Create refactoring plan
|
|
97
|
+
- [ ] Create directory structure
|
|
98
|
+
- [ ] Setup Jekyll _config.yml
|
|
99
|
+
- [ ] Create main index.adoc
|
|
100
|
+
- [ ] Create collection overview pages
|
|
101
|
+
|
|
102
|
+
### Phase 2: Content Migration (Priority 1)
|
|
103
|
+
- [ ] Migrate core topics to _pages/
|
|
104
|
+
- [ ] Create tutorials from README examples
|
|
105
|
+
- [ ] Convert guides
|
|
106
|
+
- [ ] Move references
|
|
107
|
+
|
|
108
|
+
### Phase 3: CI/CD (Priority 2)
|
|
109
|
+
- [ ] Add GitHub Actions workflow
|
|
110
|
+
- [ ] Setup link checking
|
|
111
|
+
- [ ] Create lychee.toml
|
|
112
|
+
|
|
113
|
+
### Phase 4: Cleanup (Priority 2)
|
|
114
|
+
- [ ] Archive internal docs to old-docs/
|
|
115
|
+
- [ ] Update cross-references
|
|
116
|
+
- [ ] Fix all internal links
|
|
117
|
+
|
|
118
|
+
### Phase 5: Testing (Priority 3)
|
|
119
|
+
- [ ] Test Jekyll build
|
|
120
|
+
- [ ] Verify all links
|
|
121
|
+
- [ ] Check mobile responsiveness
|
|
122
|
+
|
|
123
|
+
## Content Mapping
|
|
124
|
+
|
|
125
|
+
### From README.adoc
|
|
126
|
+
|
|
127
|
+
**To _pages/:**
|
|
128
|
+
- Overview section → overview.adoc
|
|
129
|
+
- Installation → installation.adoc
|
|
130
|
+
- Architecture intro → architecture.adoc
|
|
131
|
+
|
|
132
|
+
**To _tutorials/:**
|
|
133
|
+
- Quick start → getting-started.adoc
|
|
134
|
+
- Basic usage examples → first-lur-package.adoc
|
|
135
|
+
|
|
136
|
+
**To _guides/:**
|
|
137
|
+
- CLI command usage → cli-usage.adoc
|
|
138
|
+
- Interactive features → guides/
|
|
139
|
+
|
|
140
|
+
**To _references/:**
|
|
141
|
+
- CLI commands reference → references/cli/commands.adoc
|
|
142
|
+
- API reference → references/api/
|
|
143
|
+
|
|
144
|
+
### Diagram Documentation
|
|
145
|
+
|
|
146
|
+
**diagram-generation.adoc → Split:**
|
|
147
|
+
- Overview/intro → _pages/concepts/diagram-generation.adoc
|
|
148
|
+
- Configuration basics → _tutorials/generating-diagrams.adoc
|
|
149
|
+
- Advanced configuration → _guides/diagram-configuration.adoc
|
|
150
|
+
|
|
151
|
+
**diagram-configuration.adoc:**
|
|
152
|
+
- All content → _references/configuration/diagram-styles.adoc
|
|
153
|
+
|
|
154
|
+
### Format Documentation
|
|
155
|
+
|
|
156
|
+
**ea_qea_structure.adoc:**
|
|
157
|
+
- All content → _references/formats/qea-structure.adoc
|
|
158
|
+
|
|
159
|
+
**lutaml_syntax.adoc:**
|
|
160
|
+
- All content → _references/formats/lutaml-syntax.adoc
|
|
161
|
+
|
|
162
|
+
**package_metadata.adoc:**
|
|
163
|
+
- Concept/overview → _pages/concepts/ (brief)
|
|
164
|
+
- Setup guide → _guides/package-metadata.adoc
|
|
165
|
+
- Full reference → _references/configuration/package-metadata.adoc
|
|
166
|
+
|
|
167
|
+
## Front Matter Template
|
|
168
|
+
|
|
169
|
+
Every page needs YAML front matter:
|
|
170
|
+
|
|
171
|
+
```yaml
|
|
172
|
+
---
|
|
173
|
+
title: Page Title
|
|
174
|
+
parent: Parent Page Title (if nested)
|
|
175
|
+
nav_order: 1
|
|
176
|
+
---
|
|
177
|
+
```
|
|
178
|
+
|
|
179
|
+
## Principles
|
|
180
|
+
|
|
181
|
+
1. **Onion Structure**: Information revealed incrementally
|
|
182
|
+
2. **3-Click Rule**: Any topic reachable within 3 clicks
|
|
183
|
+
3. **Content First**: Focus on user needs, not structure
|
|
184
|
+
4. **MECE**: Mutually Exclusive, Collectively Exhaustive
|
|
185
|
+
5. **No Orphans**: Every page linked from somewhere
|
|
186
|
+
|
|
187
|
+
## Navigation Order
|
|
188
|
+
|
|
189
|
+
Set `nav_order` to create logical flow:
|
|
190
|
+
- Core concepts: 1-10
|
|
191
|
+
- Getting started: 11-20
|
|
192
|
+
- Tutorials: 21-30
|
|
193
|
+
- Guides: 31-40
|
|
194
|
+
- References: 41-50
|
|
195
|
+
|
|
196
|
+
## Cross-References
|
|
197
|
+
|
|
198
|
+
Use relative links:
|
|
199
|
+
```adoc
|
|
200
|
+
See link:../guides/cli-usage.adoc[CLI Usage Guide]
|
|
201
|
+
```
|
|
202
|
+
|
|
203
|
+
## Testing Checklist
|
|
204
|
+
|
|
205
|
+
- [ ] All pages have front matter
|
|
206
|
+
- [ ] All links work
|
|
207
|
+
- [ ] Navigation is logical
|
|
208
|
+
- [ ] Mobile responsive
|
|
209
|
+
- [ ] Search works
|
|
210
|
+
- [ ] Dark/light theme works
|
|
211
|
+
- [ ] No 404s
|
|
212
|
+
- [ ] Images load
|
|
213
|
+
- [ ] Code blocks render
|
|
214
|
+
- [ ] Tables format correctly
|
data/docs/_config.yml
ADDED
|
@@ -0,0 +1,144 @@
|
|
|
1
|
+
# Site settings
|
|
2
|
+
title: LutaML Ruby
|
|
3
|
+
description: >-
|
|
4
|
+
Universal Ruby library and CLI for accessing, parsing, and manipulating data models
|
|
5
|
+
across multiple modeling languages including UML, EXPRESS, and Enterprise Architect formats
|
|
6
|
+
baseurl: "/lutaml"
|
|
7
|
+
url: "https://www.lutaml.org"
|
|
8
|
+
|
|
9
|
+
# Theme
|
|
10
|
+
theme: just-the-docs
|
|
11
|
+
remote_theme: just-the-docs/just-the-docs@v0.10.1
|
|
12
|
+
|
|
13
|
+
# Color scheme
|
|
14
|
+
color_scheme: light
|
|
15
|
+
|
|
16
|
+
# Search
|
|
17
|
+
search_enabled: true
|
|
18
|
+
search:
|
|
19
|
+
heading_level: 2
|
|
20
|
+
previews: 3
|
|
21
|
+
preview_words_before: 5
|
|
22
|
+
preview_words_after: 10
|
|
23
|
+
tokenizer_separator: /[\s/]+/
|
|
24
|
+
rel_url: true
|
|
25
|
+
button: false
|
|
26
|
+
|
|
27
|
+
# Heading anchors
|
|
28
|
+
heading_anchors: true
|
|
29
|
+
|
|
30
|
+
# Aux links for the upper right navigation
|
|
31
|
+
aux_links:
|
|
32
|
+
"GitHub":
|
|
33
|
+
- "https://github.com/lutaml/lutaml"
|
|
34
|
+
"RubyGems":
|
|
35
|
+
- "https://rubygems.org/gems/lutaml"
|
|
36
|
+
|
|
37
|
+
# Makes Aux links open in a new tab
|
|
38
|
+
aux_links_new_tab: true
|
|
39
|
+
|
|
40
|
+
# Back to top link
|
|
41
|
+
back_to_top: true
|
|
42
|
+
back_to_top_text: "Back to top"
|
|
43
|
+
|
|
44
|
+
# Footer content
|
|
45
|
+
footer_content: >-
|
|
46
|
+
Copyright © 2025 Ribose. Distributed by a
|
|
47
|
+
<a href="https://github.com/lutaml/lutaml/blob/main/LICENSE">BSD-3-Clause license</a>.
|
|
48
|
+
|
|
49
|
+
# Footer last edit timestamp
|
|
50
|
+
last_edit_timestamp: true
|
|
51
|
+
last_edit_time_format: "%b %e %Y at %I:%M %p"
|
|
52
|
+
|
|
53
|
+
# Navigation structure
|
|
54
|
+
nav_sort: order
|
|
55
|
+
|
|
56
|
+
# Collections for organizing content
|
|
57
|
+
collections:
|
|
58
|
+
pages:
|
|
59
|
+
permalink: "/:path/"
|
|
60
|
+
output: true
|
|
61
|
+
tutorials:
|
|
62
|
+
permalink: "/:collection/:path/"
|
|
63
|
+
output: true
|
|
64
|
+
guides:
|
|
65
|
+
permalink: "/:collection/:path/"
|
|
66
|
+
output: true
|
|
67
|
+
references:
|
|
68
|
+
permalink: "/:collection/:path/"
|
|
69
|
+
output: true
|
|
70
|
+
|
|
71
|
+
# Just the Docs collection configuration
|
|
72
|
+
just_the_docs:
|
|
73
|
+
collections:
|
|
74
|
+
pages:
|
|
75
|
+
name: Core Topics
|
|
76
|
+
nav_fold: false
|
|
77
|
+
tutorials:
|
|
78
|
+
name: Tutorials
|
|
79
|
+
nav_fold: true
|
|
80
|
+
guides:
|
|
81
|
+
name: Guides
|
|
82
|
+
nav_fold: true
|
|
83
|
+
references:
|
|
84
|
+
name: Reference
|
|
85
|
+
nav_fold: true
|
|
86
|
+
|
|
87
|
+
# Plugins
|
|
88
|
+
plugins:
|
|
89
|
+
- jekyll-asciidoc
|
|
90
|
+
- jekyll-seo-tag
|
|
91
|
+
- jekyll-sitemap
|
|
92
|
+
|
|
93
|
+
# AsciiDoc configuration
|
|
94
|
+
asciidoc: {}
|
|
95
|
+
asciidoctor:
|
|
96
|
+
attributes:
|
|
97
|
+
- source-highlighter=rouge
|
|
98
|
+
- rouge-style=github
|
|
99
|
+
- icons=font
|
|
100
|
+
- sectanchors=true
|
|
101
|
+
- idprefix=
|
|
102
|
+
- idseparator=-
|
|
103
|
+
- experimental=true
|
|
104
|
+
- xrefstyle=short
|
|
105
|
+
|
|
106
|
+
# Include AsciiDoc files
|
|
107
|
+
include:
|
|
108
|
+
- "*.adoc"
|
|
109
|
+
|
|
110
|
+
# Exclude from processing
|
|
111
|
+
exclude:
|
|
112
|
+
- Gemfile
|
|
113
|
+
- Gemfile.lock
|
|
114
|
+
- _site
|
|
115
|
+
- node_modules
|
|
116
|
+
- vendor/bundle/
|
|
117
|
+
- vendor/cache/
|
|
118
|
+
- vendor/gems/
|
|
119
|
+
- vendor/ruby/
|
|
120
|
+
- Rakefile
|
|
121
|
+
- "*.md"
|
|
122
|
+
- architecture/
|
|
123
|
+
- features/
|
|
124
|
+
|
|
125
|
+
# Enable code copy button
|
|
126
|
+
enable_copy_code_button: true
|
|
127
|
+
|
|
128
|
+
# Callouts
|
|
129
|
+
callouts_level: quiet
|
|
130
|
+
callouts:
|
|
131
|
+
highlight:
|
|
132
|
+
color: yellow
|
|
133
|
+
important:
|
|
134
|
+
title: Important
|
|
135
|
+
color: blue
|
|
136
|
+
new:
|
|
137
|
+
title: New
|
|
138
|
+
color: green
|
|
139
|
+
note:
|
|
140
|
+
title: Note
|
|
141
|
+
color: purple
|
|
142
|
+
warning:
|
|
143
|
+
title: Warning
|
|
144
|
+
color: red
|