@memoarchitect/ontology 0.12.1 → 0.15.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (317) hide show
  1. package/README.md +5 -3
  2. package/examples/connected-patient-monitor/memo.identity.yaml +34 -0
  3. package/examples/connected-patient-monitor/memo.package.yaml +3 -1
  4. package/examples/connected-patient-monitor/model/catalog/connected_patient_monitor.sysml +17 -12
  5. package/examples/connected-patient-monitor/model/{catalog → methodology}/project.sysml +4 -5
  6. package/examples/embedded-infusion-pump/memo.package.yaml +3 -1
  7. package/examples/embedded-infusion-pump/model/catalog/embedded_infusion_pump.sysml +6 -6
  8. package/examples/embedded-infusion-pump/model/{catalog → methodology}/project.sysml +4 -5
  9. package/examples/functional-logical-physical/memo.identity.yaml +28 -0
  10. package/examples/functional-logical-physical/memo.package.yaml +3 -1
  11. package/examples/functional-logical-physical/model/catalog/functional_logical_physical.sysml +5 -5
  12. package/examples/functional-logical-physical/model/{catalog → methodology}/project.sysml +4 -5
  13. package/examples/gpca-pump/analysis/Samples/01-model-overview.ipynb +40 -139
  14. package/examples/gpca-pump/analysis/Samples/02-architecture-hotspots.ipynb +38 -290
  15. package/examples/gpca-pump/analysis/Samples/03-model-quality.ipynb +47 -217
  16. package/examples/gpca-pump/analysis/Samples/04-change-impact-explorer.ipynb +50 -191
  17. package/examples/gpca-pump/analysis/Samples/05-model-charts.ipynb +42 -181
  18. package/examples/gpca-pump/analysis/Samples/06-ownership-graph.ipynb +40 -164
  19. package/examples/gpca-pump/analysis/Samples/07-model-inventory-table.ipynb +51 -172
  20. package/examples/gpca-pump/analysis/Samples/README.md +15 -9
  21. package/examples/gpca-pump/analysis/memo_model.py +243 -0
  22. package/examples/gpca-pump/memo.identity.yaml +521 -26
  23. package/examples/gpca-pump/memo.package.yaml +3 -1
  24. package/examples/gpca-pump/methodology/gpca_profiles.sysml +56 -47
  25. package/examples/gpca-pump/model/catalog/gpca_analysis.sysml +51 -78
  26. package/examples/gpca-pump/model/catalog/gpca_architecture.sysml +359 -358
  27. package/examples/gpca-pump/model/catalog/gpca_behavior_actions.sysml +9 -9
  28. package/examples/gpca-pump/model/catalog/gpca_behavior_modes.sysml +56 -69
  29. package/examples/gpca-pump/model/catalog/gpca_behavior_subsystems.sysml +44 -59
  30. package/examples/gpca-pump/model/catalog/gpca_context.sysml +23 -35
  31. package/examples/gpca-pump/model/catalog/gpca_cybersecurity.sysml +33 -40
  32. package/examples/gpca-pump/model/catalog/gpca_formal_behavior.sysml +62 -63
  33. package/examples/gpca-pump/model/catalog/gpca_interfaces.sysml +362 -483
  34. package/examples/gpca-pump/model/catalog/gpca_operational.sysml +45 -70
  35. package/examples/gpca-pump/model/catalog/gpca_physical.sysml +6 -12
  36. package/examples/gpca-pump/model/catalog/gpca_requirements.sysml +173 -169
  37. package/examples/gpca-pump/model/catalog/gpca_risk.sysml +139 -225
  38. package/examples/gpca-pump/model/catalog/gpca_standards.sysml +43 -47
  39. package/examples/gpca-pump/model/catalog/gpca_system.sysml +68 -65
  40. package/examples/gpca-pump/model/catalog/gpca_trace.sysml +147 -116
  41. package/examples/gpca-pump/model/catalog/gpca_verification.sysml +65 -91
  42. package/examples/gpca-pump/model/catalog/viewpoints/context/views/context_system_context_view.sysml +4 -6
  43. package/examples/gpca-pump/model/catalog/viewpoints/cybersecurity/views/cybersecurity_cybersecurity_view.sysml +4 -6
  44. package/examples/gpca-pump/model/catalog/viewpoints/cybersecurity/views/document_cyber_assessment_view.sysml +4 -6
  45. package/examples/gpca-pump/model/catalog/viewpoints/cybersecurity/views/document_threat_model_view.sysml +4 -6
  46. package/examples/gpca-pump/model/catalog/viewpoints/functional/views/functional_function_allocation_view.sysml +2 -4
  47. package/examples/gpca-pump/model/catalog/viewpoints/functional/views/functional_function_browser_view.sysml +7 -6
  48. package/examples/gpca-pump/model/catalog/viewpoints/logical/views/behavior_action_flow_view.sysml +4 -6
  49. package/examples/gpca-pump/model/catalog/viewpoints/logical/views/document_architecture_description_view.sysml +4 -6
  50. package/examples/gpca-pump/model/catalog/viewpoints/logical/views/logical_device_interconnect_view.sysml +3 -5
  51. package/examples/gpca-pump/model/catalog/viewpoints/logical/views/logical_logical_architecture_view.sysml +4 -6
  52. package/examples/gpca-pump/model/catalog/viewpoints/logical/views/logical_mode_state_view.sysml +4 -6
  53. package/examples/gpca-pump/model/catalog/viewpoints/logical/views/logical_system_decomposition_view.sysml +3 -5
  54. package/examples/gpca-pump/model/catalog/viewpoints/operational/views/operational_scenario_sequence_view.sysml +3 -5
  55. package/examples/gpca-pump/model/catalog/viewpoints/operational/views/operational_use_case_view.sysml +4 -6
  56. package/examples/gpca-pump/model/catalog/viewpoints/physical/views/physical_physical_bom_view.sysml +2 -4
  57. package/examples/gpca-pump/model/catalog/viewpoints/requirements/views/document_dhf_index_view.sysml +3 -5
  58. package/examples/gpca-pump/model/catalog/viewpoints/requirements/views/requirements_requirements_trace_view.sysml +2 -4
  59. package/examples/gpca-pump/model/catalog/viewpoints/risk/views/document_hazard_analysis_view.sysml +4 -6
  60. package/examples/gpca-pump/model/catalog/viewpoints/risk/views/document_rmf_view.sysml +4 -6
  61. package/examples/gpca-pump/model/catalog/viewpoints/risk/views/risk_fmea_view.sysml +2 -4
  62. package/examples/gpca-pump/model/catalog/viewpoints/risk/views/risk_risk_chain_view.sysml +4 -6
  63. package/examples/gpca-pump/model/catalog/viewpoints/software/views/document_sdd_view.sysml +4 -6
  64. package/examples/gpca-pump/model/catalog/viewpoints/software/views/software_software_architecture_view.sysml +3 -5
  65. package/examples/gpca-pump/model/catalog/viewpoints/usability/views/document_usability_view.sysml +4 -6
  66. package/examples/gpca-pump/model/catalog/viewpoints/verification/views/document_vv_view.sysml +3 -5
  67. package/examples/gpca-pump/model/catalog/viewpoints/verification/views/verification_verification_coverage_view.sysml +2 -4
  68. package/examples/gpca-pump/model/{catalog → methodology}/project.sysml +8 -6
  69. package/examples/ivd-laboratory-system/memo.package.yaml +3 -1
  70. package/examples/ivd-laboratory-system/model/catalog/ivd_laboratory_system.sysml +12 -9
  71. package/examples/ivd-laboratory-system/model/{catalog → methodology}/project.sysml +4 -5
  72. package/examples/manual-surgical-instrument/memo.package.yaml +3 -1
  73. package/examples/manual-surgical-instrument/model/catalog/manual_surgical_instrument.sysml +2 -6
  74. package/examples/manual-surgical-instrument/model/{catalog → methodology}/project.sysml +4 -5
  75. package/examples/multidimensional-layers/memo.package.yaml +3 -1
  76. package/examples/multidimensional-layers/model/catalog/multidimensional_layers.sysml +2 -4
  77. package/examples/multidimensional-layers/model/{catalog → methodology}/project.sysml +4 -5
  78. package/examples/nested-architecture-dsm/memo.identity.yaml +93 -0
  79. package/examples/nested-architecture-dsm/memo.package.yaml +3 -1
  80. package/examples/nested-architecture-dsm/model/catalog/architecture/functional/functions.sysml +30 -30
  81. package/examples/nested-architecture-dsm/model/catalog/architecture/logical/structure.sysml +28 -28
  82. package/examples/nested-architecture-dsm/model/catalog/architecture/operational/context.sysml +2 -4
  83. package/examples/nested-architecture-dsm/model/catalog/assurance/requirements/needs.sysml +4 -4
  84. package/examples/nested-architecture-dsm/model/catalog/assurance/requirements/requirements.sysml +7 -7
  85. package/examples/nested-architecture-dsm/model/catalog/assurance/verification_validation/verification_validation.sysml +8 -8
  86. package/examples/nested-architecture-dsm/model/{catalog → methodology}/project.sysml +4 -5
  87. package/examples/reusable-instrument/memo.package.yaml +3 -1
  88. package/examples/reusable-instrument/model/catalog/reusable_instrument.sysml +7 -7
  89. package/examples/reusable-instrument/model/{catalog → methodology}/project.sysml +4 -5
  90. package/examples/robot-cell-family/README.md +34 -0
  91. package/examples/robot-cell-family/memo.identity.yaml +142 -0
  92. package/examples/robot-cell-family/memo.package.yaml +7 -0
  93. package/examples/robot-cell-family/model/methodology/project.sysml +30 -0
  94. package/examples/robot-cell-family/model/shared/shared.sysml +53 -0
  95. package/examples/robot-cell-family/model/sos/chains.sysml +36 -0
  96. package/examples/robot-cell-family/model/sos/icds.sysml +29 -0
  97. package/examples/robot-cell-family/model/sos/sos.sysml +31 -0
  98. package/examples/robot-cell-family/model/sos/use_cases.sysml +25 -0
  99. package/examples/robot-cell-family/model/systems/manipulation/manipulation_system.sysml +35 -0
  100. package/examples/robot-cell-family/model/systems/navigation/navigation_system.sysml +46 -0
  101. package/examples/robot-cell-family/model/systems/perception/perception_system.sysml +37 -0
  102. package/examples/robot-platform/memo.package.yaml +3 -0
  103. package/examples/robot-platform/model/platform.sysml +15 -0
  104. package/examples/ros-mobile-robot/README.md +5 -4
  105. package/examples/ros-mobile-robot/memo.identity.yaml +94 -0
  106. package/examples/ros-mobile-robot/memo.package.yaml +3 -1
  107. package/examples/ros-mobile-robot/model/catalog/ros_mobile_robot.sysml +26 -29
  108. package/examples/ros-mobile-robot/model/{catalog → methodology}/project.sysml +8 -14
  109. package/examples/software-only-medical-device/memo.package.yaml +3 -1
  110. package/examples/software-only-medical-device/model/catalog/software_only_medical_device.sysml +9 -10
  111. package/examples/software-only-medical-device/model/{catalog → methodology}/project.sysml +8 -9
  112. package/examples/surgical-closure-workflow/memo.package.yaml +3 -1
  113. package/examples/surgical-closure-workflow/model/catalog/surgical_closure_workflow.sysml +23 -26
  114. package/examples/surgical-closure-workflow/model/{catalog → methodology}/project.sysml +7 -5
  115. package/examples/surgical-robot/memo.package.yaml +3 -1
  116. package/examples/surgical-robot/model/catalog/surgical_robot.sysml +14 -12
  117. package/examples/surgical-robot/model/{catalog → methodology}/project.sysml +4 -5
  118. package/examples/sysml-diagram-samples/README.md +1 -0
  119. package/examples/sysml-diagram-samples/memo.identity.yaml +675 -0
  120. package/examples/sysml-diagram-samples/memo.package.yaml +3 -1
  121. package/examples/sysml-diagram-samples/model/catalog/viewpoints/unassigned/viewpoint.sysml +10 -20
  122. package/examples/sysml-diagram-samples/model/catalog/viewpoints/unassigned/views/action_flow_view.sysml +7 -29
  123. package/examples/sysml-diagram-samples/model/catalog/viewpoints/unassigned/views/browser_view.sysml +12 -36
  124. package/examples/sysml-diagram-samples/model/catalog/viewpoints/unassigned/views/context_view.sysml +13 -25
  125. package/examples/sysml-diagram-samples/model/catalog/viewpoints/unassigned/views/diagram_samples.sysml +388 -0
  126. package/examples/sysml-diagram-samples/model/catalog/viewpoints/unassigned/views/drill_down_view.sysml +88 -0
  127. package/examples/sysml-diagram-samples/model/catalog/viewpoints/unassigned/views/functional_flow_view.sysml +27 -36
  128. package/examples/sysml-diagram-samples/model/catalog/viewpoints/unassigned/views/grid_view.sysml +8 -21
  129. package/examples/sysml-diagram-samples/model/catalog/viewpoints/unassigned/views/interconnection_view.sysml +17 -65
  130. package/examples/sysml-diagram-samples/model/catalog/viewpoints/unassigned/views/operational_behaviour_view.sysml +23 -32
  131. package/examples/sysml-diagram-samples/model/catalog/viewpoints/unassigned/views/package_view.sysml +9 -22
  132. package/examples/sysml-diagram-samples/model/catalog/viewpoints/unassigned/views/requirements_view.sysml +7 -22
  133. package/examples/sysml-diagram-samples/model/catalog/viewpoints/unassigned/views/sequence_view.sysml +18 -34
  134. package/examples/sysml-diagram-samples/model/catalog/viewpoints/unassigned/views/standard_activity_view.sysml +2 -9
  135. package/examples/sysml-diagram-samples/model/catalog/viewpoints/unassigned/views/state_transition_view.sysml +18 -42
  136. package/examples/sysml-diagram-samples/model/catalog/viewpoints/unassigned/views/tree_view.sysml +11 -24
  137. package/examples/sysml-diagram-samples/model/catalog/viewpoints/unassigned/views/use_case_view.sysml +9 -36
  138. package/examples/sysml-diagram-samples/model/methodology/project.sysml +40 -0
  139. package/examples/sysml-diagram-samples/model/sysml_v2_activity_example.sysml +1 -1
  140. package/examples/temperature-alarm/memo.identity.yaml +6 -0
  141. package/examples/temperature-alarm/memo.package.yaml +3 -1
  142. package/examples/temperature-alarm/model/catalog/temperature_alarm.sysml +43 -21
  143. package/examples/temperature-alarm/model/{catalog → methodology}/project.sysml +4 -5
  144. package/examples/ui-screen-regions/memo.identity.yaml +33 -0
  145. package/examples/ui-screen-regions/memo.package.yaml +3 -1
  146. package/examples/ui-screen-regions/model/catalog/architecture/functional/functions.sysml +12 -12
  147. package/examples/ui-screen-regions/model/catalog/architecture/implementation/ui.sysml +18 -18
  148. package/examples/ui-screen-regions/model/catalog/artifacts/assets/catalog.sysml +6 -6
  149. package/examples/ui-screen-regions/model/catalog/artifacts/reviews/comments.sysml +3 -3
  150. package/examples/ui-screen-regions/model/catalog/artifacts/reviews/notes.sysml +1 -1
  151. package/examples/ui-screen-regions/model/catalog/artifacts/reviews/rationales.sysml +1 -1
  152. package/examples/ui-screen-regions/model/catalog/assurance/human_factors/human_factors.sysml +10 -10
  153. package/examples/ui-screen-regions/model/catalog/assurance/requirements/needs.sysml +1 -1
  154. package/examples/ui-screen-regions/model/catalog/assurance/requirements/requirements.sysml +12 -12
  155. package/examples/ui-screen-regions/model/catalog/assurance/safety_risk/risk.sysml +15 -15
  156. package/examples/ui-screen-regions/model/catalog/assurance/verification_validation/verification_validation.sysml +6 -6
  157. package/examples/ui-screen-regions/model/catalog/viewpoints/functional/views/ui_functional_tree.sysml +1 -2
  158. package/examples/ui-screen-regions/model/catalog/viewpoints/requirements/views/ui_requirements_trace.sysml +1 -2
  159. package/examples/ui-screen-regions/model/catalog/viewpoints/risk/views/ui_risk_chain.sysml +1 -2
  160. package/examples/ui-screen-regions/model/{catalog → methodology}/project.sysml +4 -5
  161. package/extensions/README.md +65 -16
  162. package/extensions/aadl/memo.package.yaml +1 -1
  163. package/extensions/aadl/src/aadl_extension.sysml +5 -2
  164. package/extensions/aadl/src/correspondence/memo_aadl_correspondence.sysml +29 -50
  165. package/extensions/clinical/memo.package.yaml +1 -1
  166. package/extensions/clinical/src/clinical_extension.sysml +2 -0
  167. package/extensions/cloud/memo.package.yaml +1 -1
  168. package/extensions/container/memo.package.yaml +1 -1
  169. package/extensions/messaging/memo.package.yaml +1 -1
  170. package/extensions/messaging/src/messaging_extension.sysml +2 -2
  171. package/extensions/ros/memo.package.yaml +1 -1
  172. package/extensions/ros/src/ros_extension.sysml +25 -24
  173. package/extensions/template/memo.package.yaml +1 -1
  174. package/extensions/template/model/extension.sysml +25 -0
  175. package/memo.manifest.yaml +1 -7
  176. package/methodologies/default/memo.package.yaml +1 -1
  177. package/methodologies/gpca/memo.package.yaml +1 -1
  178. package/ontology/memo.package.yaml +1 -1
  179. package/package.json +6 -4
  180. package/profile/memo.package.yaml +1 -1
  181. package/src/architecture/decisions/memo_decisions.sysml +9 -2
  182. package/src/architecture/functional/behavior/memo_behavior.sysml +27 -7
  183. package/src/architecture/functional/functions/memo_functions.sysml +45 -31
  184. package/src/architecture/functional/memo_architecture_functional.sysml +14 -0
  185. package/src/architecture/implementation/memo_architecture_implementation.sysml +21 -0
  186. package/src/architecture/implementation/software/runtime/memo_software_runtime.sysml +7 -0
  187. package/src/architecture/implementation/software/structure/memo_software_structure.sysml +58 -17
  188. package/src/architecture/implementation/ui/memo_ui.sysml +1 -1
  189. package/src/architecture/logical/interfaces/memo_interfaces.sysml +67 -58
  190. package/src/architecture/logical/memo_architecture_logical.sysml +13 -0
  191. package/src/architecture/logical/structure/memo_logical_structure.sysml +27 -8
  192. package/src/architecture/operational/context/stakeholders/memo_stakeholders.sysml +4 -1
  193. package/src/architecture/operational/memo_architecture_operational.sysml +19 -0
  194. package/src/architecture/operational/scenarios/memo_scenarios.sysml +9 -8
  195. package/src/architecture/operational/structure/memo_operational.sysml +5 -2
  196. package/src/architecture/operational/use_cases/memo_use_cases.sysml +16 -8
  197. package/src/architecture/realization/deployment/memo_deployment.sysml +30 -10
  198. package/src/architecture/realization/memo_architecture_realization.sysml +13 -0
  199. package/src/architecture/realization/physical/memo_physical_architecture.sysml +61 -0
  200. package/src/architecture/variability/memo_variability.sysml +87 -0
  201. package/src/artifacts/configuration_management/memo_configuration_management.sysml +95 -3
  202. package/src/artifacts/core/memo_controlled_artifacts.sysml +4 -2
  203. package/src/artifacts/standards/cfr_21_820.sysml +12 -24
  204. package/src/artifacts/standards/fda_cybersecurity_2023.sysml +13 -20
  205. package/src/artifacts/standards/iec_60601_1.sysml +16 -32
  206. package/src/artifacts/standards/iec_60601_1_2.sysml +5 -10
  207. package/src/artifacts/standards/iec_60812.sysml +4 -8
  208. package/src/artifacts/standards/iec_62304.sysml +607 -47
  209. package/src/artifacts/standards/iec_62366_1.sysml +12 -24
  210. package/src/artifacts/standards/iec_81001_5_1.sysml +8 -16
  211. package/src/artifacts/standards/iso_13485.sysml +12 -24
  212. package/src/artifacts/standards/iso_14971.sysml +118 -20
  213. package/src/artifacts/standards/iso_iec_ieee_42010.sysml +3 -6
  214. package/src/artifacts/standards/memo_artifacts_standards_traceability.sysml +14 -4
  215. package/src/artifacts/templates/dhf/fda-cybersecurity/postmarket-surveillance.md +1 -2
  216. package/src/artifacts/templates/dhf/fda-cybersecurity/vuln-assessment.md +1 -2
  217. package/src/artifacts/templates/dhf/iec-62304/sad.md +1 -2
  218. package/src/artifacts/templates/dhf/iec-62304/sbom.md +1 -2
  219. package/src/artifacts/templates/dhf/iec-62304/sdp.md +1 -2
  220. package/src/artifacts/templates/dhf/iec-62304/soup.md +3 -5
  221. package/src/artifacts/templates/dhf/system/sad.md +1 -1
  222. package/src/artifacts/templates/dhf/system/standards-checklist.md +2 -2
  223. package/src/artifacts/templates/dhf/system/standards-traceability.md +1 -1
  224. package/src/assurance/cybersecurity/memo_cybersecurity.sysml +339 -13
  225. package/src/assurance/human_factors/memo_human_factors.sysml +6 -2
  226. package/src/assurance/safety_risk/analysis/memo_fmea.sysml +7 -3
  227. package/src/assurance/safety_risk/memo_risk.sysml +39 -1
  228. package/src/core/common/memo_common.sysml +51 -68
  229. package/src/core/enumerations/memo_enumerations.sysml +93 -9
  230. package/src/core/relationships/memo_relationships.sysml +17 -11
  231. package/src/core/relationships/memo_workspace_membership.sysml +284 -0
  232. package/src/core/semantics/semantics.sysml +58 -0
  233. package/src/core/terminology/terminology.sysml +7 -0
  234. package/src/memo_namespaces.sysml +6 -0
  235. package/src/methodology/archetypes/memo_archetypes.sysml +8 -16
  236. package/src/methodology/core/memo_core.sysml +85 -29
  237. package/src/methodology/profiles/memo_profiles.sysml +217 -61
  238. package/src/methodology/workflow/memo_workflow.sysml +28 -0
  239. package/src/rules/closure/closure_rules.sysml +250 -4
  240. package/src/rules/crosslayer/cross_layer_rules.sysml +11 -0
  241. package/src/rules/ontology/ontology_invariants.sysml +288 -48
  242. package/src/rules/quantitative/quantitative_rules.sysml +4 -0
  243. package/src/viewpoints/catalog/memo_viewpoint_catalog.sysml +28 -28
  244. package/src/viewpoints/clinical/clinical_viewpoint.sysml +4 -5
  245. package/src/viewpoints/context/context_viewpoint.sysml +4 -5
  246. package/src/viewpoints/context/views/system_context_view/system_context_view.sysml +3 -5
  247. package/src/viewpoints/cybersecurity/cybersecurity_viewpoint.sysml +4 -5
  248. package/src/viewpoints/definitions/memo_view_layout.sysml +150 -0
  249. package/src/viewpoints/definitions/memo_viewpoint_definitions.sysml +3 -5
  250. package/src/viewpoints/functional/functional_viewpoint.sysml +4 -5
  251. package/src/viewpoints/functional/views/function_allocation_view/function_allocation_view.sysml +2 -4
  252. package/src/viewpoints/functional/views/system_functional_tree_view/system_functional_tree_view.sysml +2 -4
  253. package/src/viewpoints/logical/logical_viewpoint.sysml +4 -5
  254. package/src/viewpoints/logical/views/logical_architecture_view/logical_architecture_view.sysml +2 -4
  255. package/src/viewpoints/operational/operational_viewpoint.sysml +4 -5
  256. package/src/viewpoints/operational/views/use_case_view/use_case_view.sysml +3 -5
  257. package/src/viewpoints/physical/physical_viewpoint.sysml +4 -5
  258. package/src/viewpoints/physical/views/network_topology_view/network_topology_view.sysml +2 -4
  259. package/src/viewpoints/physical/views/physical_bom_view/physical_bom_view.sysml +2 -4
  260. package/src/viewpoints/rendering/memo_rendering.sysml +50 -98
  261. package/src/viewpoints/requirements/requirements_viewpoint.sysml +4 -5
  262. package/src/viewpoints/requirements/views/requirements_traceability_view/requirements_traceability_view.sysml +2 -4
  263. package/src/viewpoints/risk/risk_viewpoint.sysml +4 -5
  264. package/src/viewpoints/risk/views/risk_chain_view/risk_chain_view.sysml +2 -4
  265. package/src/viewpoints/software/software_viewpoint.sysml +4 -5
  266. package/src/viewpoints/software/views/software_architecture_view/software_architecture_view.sysml +3 -5
  267. package/src/viewpoints/{definitions → stakeholders_concerns}/memo_stakeholders_concerns.sysml +45 -36
  268. package/src/viewpoints/ui_layout/ui_layout_viewpoint.sysml +4 -5
  269. package/src/viewpoints/ui_layout/views/screen_layout_view/screen_layout_view.sysml +1 -1
  270. package/src/viewpoints/usability/usability_viewpoint.sysml +4 -5
  271. package/src/viewpoints/verification/verification_viewpoint.sysml +4 -5
  272. package/src/viewpoints/verification/views/verification_coverage_view/verification_coverage_view.sysml +2 -4
  273. package/stage1/syside-67f92dc96ba75cd05b5c8d13.ids.gz +0 -0
  274. package/stage1/syside-67f92dc96ba75cd05b5c8d13.json.gz +0 -0
  275. package/templates/default/memo.package.yaml +6 -1
  276. package/templates/default/model/catalog/architecture/system.sysml +7 -3
  277. package/templates/default/model/{catalog → methodology}/project.sysml +3 -4
  278. package/examples/sysml-diagram-samples/model/catalog/project.sysml +0 -26
  279. package/examples/sysml-diagram-samples/model/catalog/viewpoints/unassigned/views/context_view.viewlayout +0 -47
  280. package/examples/sysml-diagram-samples/model/catalog/viewpoints/unassigned/views/interconnection_view.viewlayout +0 -94
  281. package/examples/sysml-diagram-samples/model/catalog/viewpoints/unassigned/views/operational_behaviour_view.viewlayout +0 -13
  282. package/examples/ui-screen-regions/model/catalog/relationships.sysml +0 -8
  283. package/extensions/aadl/src/methodology/aadl_methodology.sysml +0 -19
  284. package/extensions/clinical/src/methodology/clinical_methodology.sysml +0 -24
  285. package/extensions/cloud/src/methodology/cloud_methodology.sysml +0 -19
  286. package/extensions/container/src/methodology/container_methodology.sysml +0 -19
  287. package/extensions/messaging/src/methodology/messaging_methodology.sysml +0 -19
  288. package/extensions/ros/src/methodology/ros_methodology.sysml +0 -27
  289. package/extensions/template/src/extension.sysml +0 -39
  290. package/templates/connected-device/memo.package.yaml +0 -13
  291. package/templates/connected-device/model/catalog/architecture/system.sysml +0 -5
  292. package/templates/connected-device/model/catalog/artifacts/catalog.sysml +0 -5
  293. package/templates/connected-device/model/catalog/assurance/requirements.sysml +0 -7
  294. package/templates/connected-device/model/catalog/project.sysml +0 -30
  295. package/templates/connected-device/package.json +0 -8
  296. package/templates/connected-device/syside.toml +0 -13
  297. package/templates/infusion-pump/memo.package.yaml +0 -13
  298. package/templates/infusion-pump/model/catalog/architecture/system.sysml +0 -5
  299. package/templates/infusion-pump/model/catalog/artifacts/catalog.sysml +0 -5
  300. package/templates/infusion-pump/model/catalog/assurance/requirements.sysml +0 -7
  301. package/templates/infusion-pump/model/catalog/project.sysml +0 -30
  302. package/templates/infusion-pump/package.json +0 -8
  303. package/templates/infusion-pump/syside.toml +0 -13
  304. package/templates/monitoring-device/memo.package.yaml +0 -13
  305. package/templates/monitoring-device/model/catalog/architecture/system.sysml +0 -5
  306. package/templates/monitoring-device/model/catalog/artifacts/catalog.sysml +0 -5
  307. package/templates/monitoring-device/model/catalog/assurance/requirements.sysml +0 -7
  308. package/templates/monitoring-device/model/catalog/project.sysml +0 -30
  309. package/templates/monitoring-device/package.json +0 -8
  310. package/templates/monitoring-device/syside.toml +0 -13
  311. package/templates/samd/memo.package.yaml +0 -13
  312. package/templates/samd/model/catalog/architecture/system.sysml +0 -5
  313. package/templates/samd/model/catalog/artifacts/catalog.sysml +0 -5
  314. package/templates/samd/model/catalog/assurance/requirements.sysml +0 -7
  315. package/templates/samd/model/catalog/project.sysml +0 -30
  316. package/templates/samd/package.json +0 -8
  317. package/templates/samd/syside.toml +0 -13
@@ -7,7 +7,9 @@
7
7
  # (`type`, `extends`, `usage`, `ontologies`, `methodology`, `modules`) were
8
8
  # removed at the native semantic flip and are now rejected if present.
9
9
  name: sysml-diagram-samples
10
- entrypoint: model/catalog/project.sysml
10
+ entrypoint: model/methodology/project.sysml
11
11
  include: [model]
12
12
  version: 0.1.0
13
13
  description: "MEMO Architect diagram rendering samples \u2014 one openable view per standard SysML v2 diagram type. Open with: memo-architect --example standard-sysml-diagrams"
14
+ toolchain:
15
+ packager: internal
@@ -13,71 +13,61 @@ package memo_examples_sysml_diagram_samples_viewpoints_unassigned {
13
13
  private import memo_core_common::MemoIdentity;
14
14
 
15
15
  viewpoint contextDiagramViewpoint : MemoViewpoint {
16
- @MemoIdentity { :>> providedId = "VP-DEMO-CTX"; }
17
- attribute :>> name = "Context Diagram";
16
+ @MemoIdentity { :>> providedId = "VP-DEMO-CTX"; :>> label = "Context Diagram"; }
18
17
  @MemoIdentity { :>> shortDescription = "System context — actors, external systems, and boundary interactions."; }
19
18
  attribute :>> explorerOrder = 1;
20
19
  }
21
20
 
22
21
  viewpoint actionFlowViewpoint : MemoViewpoint {
23
- @MemoIdentity { :>> providedId = "VP-DEMO-AFD"; }
24
- attribute :>> name = "Action Flow";
22
+ @MemoIdentity { :>> providedId = "VP-DEMO-AFD"; :>> label = "Action Flow"; }
25
23
  @MemoIdentity { :>> shortDescription = "Swimlane action flows with typed item flows and composite actions."; }
26
24
  attribute :>> explorerOrder = 2;
27
25
  }
28
26
 
29
27
  viewpoint ibdViewpoint : MemoViewpoint {
30
- @MemoIdentity { :>> providedId = "VP-DEMO-IBD"; }
31
- attribute :>> name = "Internal Block Diagram";
28
+ @MemoIdentity { :>> providedId = "VP-DEMO-IBD"; :>> label = "Internal Block Diagram"; }
32
29
  @MemoIdentity { :>> shortDescription = "Internal structure — parts, ports, and connectors."; }
33
30
  attribute :>> explorerOrder = 3;
34
31
  }
35
32
 
36
33
  viewpoint stateMachineViewpoint : MemoViewpoint {
37
- @MemoIdentity { :>> providedId = "VP-DEMO-STD"; }
38
- attribute :>> name = "State Machine";
34
+ @MemoIdentity { :>> providedId = "VP-DEMO-STD"; :>> label = "State Machine"; }
39
35
  @MemoIdentity { :>> shortDescription = "State transitions with composite states and guards."; }
40
36
  attribute :>> explorerOrder = 4;
41
37
  }
42
38
 
43
39
  viewpoint sequenceViewpoint : MemoViewpoint {
44
- @MemoIdentity { :>> providedId = "VP-DEMO-SEQ"; }
45
- attribute :>> name = "Sequence Diagram";
40
+ @MemoIdentity { :>> providedId = "VP-DEMO-SEQ"; :>> label = "Sequence Diagram"; }
46
41
  @MemoIdentity { :>> shortDescription = "Message sequences with combined fragments (loop, alt)."; }
47
42
  attribute :>> explorerOrder = 5;
48
43
  }
49
44
 
50
45
  viewpoint useCaseViewpoint : MemoViewpoint {
51
- @MemoIdentity { :>> providedId = "VP-DEMO-UCD"; }
52
- attribute :>> name = "Use Case Diagram";
46
+ @MemoIdentity { :>> providedId = "VP-DEMO-UCD"; :>> label = "Use Case Diagram"; }
53
47
  @MemoIdentity { :>> shortDescription = "Actors, use cases, include/extend/generalization."; }
54
48
  attribute :>> explorerOrder = 6;
55
49
  }
56
50
 
57
51
  viewpoint requirementsDiagramViewpoint : MemoViewpoint {
58
- @MemoIdentity { :>> providedId = "VP-DEMO-REQ"; }
59
- attribute :>> name = "Requirements Diagram";
52
+ @MemoIdentity { :>> providedId = "VP-DEMO-REQ"; :>> label = "Requirements Diagram"; }
60
53
  @MemoIdentity { :>> shortDescription = "Needs, requirements, and derivation traces."; }
61
54
  attribute :>> explorerOrder = 7;
62
55
  }
63
56
 
64
57
  viewpoint browserViewpoint : MemoViewpoint {
65
- @MemoIdentity { :>> providedId = "VP-DEMO-BRW"; }
66
- attribute :>> name = "Browser View";
58
+ @MemoIdentity { :>> providedId = "VP-DEMO-BRW"; :>> label = "Browser View"; }
67
59
  @MemoIdentity { :>> shortDescription = "Hierarchical membership tree of model elements."; }
68
60
  attribute :>> explorerOrder = 8;
69
61
  }
70
62
 
71
63
  viewpoint gridViewpoint : MemoViewpoint {
72
- @MemoIdentity { :>> providedId = "VP-DEMO-GRD"; }
73
- attribute :>> name = "Grid / Table View";
64
+ @MemoIdentity { :>> providedId = "VP-DEMO-GRD"; :>> label = "Grid / Table View"; }
74
65
  @MemoIdentity { :>> shortDescription = "Tabular worksheet rendering of model attributes."; }
75
66
  attribute :>> explorerOrder = 9;
76
67
  }
77
68
 
78
69
  viewpoint treeViewpoint : MemoViewpoint {
79
- @MemoIdentity { :>> providedId = "VP-DEMO-TRE"; }
80
- attribute :>> name = "Decomposition Diagram";
70
+ @MemoIdentity { :>> providedId = "VP-DEMO-TRE"; :>> label = "Decomposition Diagram"; }
81
71
  @MemoIdentity { :>> shortDescription = "Block decomposition — hierarchical breakdown rendered as a tree."; }
82
72
  attribute :>> explorerOrder = 10;
83
73
  }
@@ -1,4 +1,5 @@
1
- package diagram_samples {
1
+ package memo_examples_sysml_diagram_samples_viewpoints_unassigned_views_action_flow_view {
2
+ private import memo_examples_sysml_diagram_samples_viewpoints_unassigned::*;
2
3
  private import ScalarValues::*;
3
4
  private import memo_core_relationships::*;
4
5
  private import memo_architecture_logical_structure::*;
@@ -25,8 +26,8 @@ package diagram_samples {
25
26
  action def ProcessInput specializes SystemFunction { in item validated : EnergyToken; out item result : MaterialBatch; }
26
27
  action def RecordResult specializes SystemFunction { in item result : MaterialBatch; }
27
28
 
28
- part laneA : LogicalComponent { attribute :>> name = "Lane A"; }
29
- part laneB : LogicalComponent { attribute :>> name = "Lane B"; }
29
+ part laneA : LogicalComponent {@MemoIdentity { :>> label = "Lane A"; } }
30
+ part laneB : LogicalComponent {@MemoIdentity { :>> label = "Lane B"; } }
30
31
 
31
32
  action sampleActionFlow : SystemFunction {
32
33
  action receive : ReceiveInput;
@@ -42,9 +43,9 @@ package diagram_samples {
42
43
  }
43
44
  action record : RecordResult;
44
45
 
45
- flow of DataPacket from receive.received to validate.received;
46
- flow of EnergyToken from validate.validated to process.validated;
47
- flow of MaterialBatch from process.result to record.result;
46
+ flow dataPacketFlow of DataPacket from receive.received to validate.received;
47
+ flow energyTokenFlow of EnergyToken from validate.validated to process.validated;
48
+ flow materialBatchFlow of MaterialBatch from process.result to record.result;
48
49
 
49
50
  first start then receive;
50
51
  first receive then validate;
@@ -78,27 +79,4 @@ package diagram_samples {
78
79
  * that is a duplicate of `dependency` rather than something more.
79
80
  */
80
81
  dependency linkLaneBProcessesInput from laneB to sampleActionFlow::process;
81
-
82
- // Child action-flow view — the process composite action's own steps. Its
83
- // subject is `sampleActionFlow.process`, so the parent action-flow shows a
84
- // "navigate to view" button on the Process node.
85
- view processStepsDetail : MemoDiagramView {
86
- expose sampleActionFlow.process::**;
87
- attribute depth = 2;
88
- @MemoIdentity { :>> shortDescription = "Internal steps of the Process action — step A through C."; }
89
- attribute :>> viewKind = DiagramViewKind::actionflow;
90
- attribute :>> diagramType = "afd";
91
- ref :>> viewpointDefinition = actionFlowViewpoint;
92
- }
93
-
94
- view therapySessionFlow : MemoDiagramView {
95
- expose sampleActionFlow::**;
96
- expose laneA;
97
- expose laneB;
98
- attribute depth = 2;
99
- @MemoIdentity { :>> shortDescription = "Dummy actions, typed item flows, successions, and a composite action for renderer development."; }
100
- attribute :>> viewKind = DiagramViewKind::actionflow;
101
- attribute :>> diagramType = "afd";
102
- ref :>> viewpointDefinition = actionFlowViewpoint;
103
- }
104
82
  }
@@ -1,4 +1,5 @@
1
- package diagram_samples {
1
+ package memo_examples_sysml_diagram_samples_viewpoints_unassigned_views_browser_view {
2
+ private import memo_examples_sysml_diagram_samples_viewpoints_unassigned::*;
2
3
  private import ScalarValues::*;
3
4
  private import memo_architecture_operational_context_actors::*;
4
5
  private import memo_architecture_operational_use_cases::*;
@@ -16,73 +17,48 @@ package diagram_samples {
16
17
  // to demonstrate the browser view's hierarchical grouping by kind.
17
18
 
18
19
  part controlSystem : OperationalEntity {
19
- attribute :>> name = "Control System";
20
- attribute :>> entityKind = OperationalEntityKind::subsystem;
20
+ @MemoIdentity { :>> label = "Control System"; }
21
21
 
22
22
  part supervisorModule : OperationalEntity {
23
- attribute :>> name = "Supervisor Module";
24
- attribute :>> entityKind = OperationalEntityKind::subsystem;
23
+ @MemoIdentity { :>> label = "Supervisor Module"; }
25
24
  }
26
25
  part safetyModule : OperationalEntity {
27
- attribute :>> name = "Safety Module";
28
- attribute :>> entityKind = OperationalEntityKind::subsystem;
26
+ @MemoIdentity { :>> label = "Safety Module"; }
29
27
  }
30
28
  part communicationModule : OperationalEntity {
31
- attribute :>> name = "Communication Module";
32
- attribute :>> entityKind = OperationalEntityKind::subsystem;
29
+ @MemoIdentity { :>> label = "Communication Module"; }
33
30
  }
34
31
  }
35
32
 
36
33
  part systemOperator : User {
37
34
  attribute :>> actorKind = ActorKind::clinician;
38
- attribute :>> name = "Operator";
35
+ @MemoIdentity { :>> label = "Operator"; }
39
36
  }
40
37
  part maintenanceEngineer : User {
41
38
  attribute :>> actorKind = ActorKind::technician;
42
- attribute :>> name = "Maintenance Engineer";
39
+ @MemoIdentity { :>> label = "Maintenance Engineer"; }
43
40
  }
44
41
  part remoteMonitor : User {
45
42
  attribute :>> actorKind = ActorKind::clinician;
46
- attribute :>> name = "Remote Monitor";
43
+ @MemoIdentity { :>> label = "Remote Monitor"; }
47
44
  }
48
45
 
49
46
  use case startSystem : UseCase {
50
- @MemoIdentity { :>> providedId = "UC-BRW-1"; }
51
- attribute :>> name = "Start System";
47
+ @MemoIdentity { :>> providedId = "UC-BRW-1"; :>> label = "Start System"; }
52
48
  attribute :>> useCaseKind = UseCaseKind::clinical;
53
49
  subject controlSystem;
54
50
  actor operatorActor = systemOperator;
55
51
  }
56
52
  use case runDiagnostics : UseCase {
57
- @MemoIdentity { :>> providedId = "UC-BRW-2"; }
58
- attribute :>> name = "Run Diagnostics";
53
+ @MemoIdentity { :>> providedId = "UC-BRW-2"; :>> label = "Run Diagnostics"; }
59
54
  attribute :>> useCaseKind = UseCaseKind::service;
60
55
  subject controlSystem;
61
56
  actor engineerActor = maintenanceEngineer;
62
57
  }
63
58
  use case monitorStatus : UseCase {
64
- @MemoIdentity { :>> providedId = "UC-BRW-3"; }
65
- attribute :>> name = "Monitor Status";
59
+ @MemoIdentity { :>> providedId = "UC-BRW-3"; :>> label = "Monitor Status"; }
66
60
  attribute :>> useCaseKind = UseCaseKind::clinical;
67
61
  subject controlSystem;
68
62
  actor monitorActor = remoteMonitor;
69
63
  }
70
-
71
- view operationalBrowserTree : MemoDiagramView {
72
- expose controlSystem::**;
73
- expose systemOperator;
74
- expose maintenanceEngineer;
75
- expose remoteMonitor;
76
- expose startSystem::**;
77
- expose runDiagnostics::**;
78
- expose monitorStatus::**;
79
- @MemoIdentity { :>> shortDescription = "Browser membership tree showing operational entities, actors, and use cases — demonstrates the browser view kind with mixed element types."; }
80
- attribute :>> viewKind = DiagramViewKind::browser;
81
- attribute :>> diagramType = "brw";
82
- ref :>> viewpointDefinition = browserViewpoint;
83
- part :>> selectionQuery {
84
- attribute :>> includeElementKinds = ("OperationalEntity", "User", "UseCase");
85
- attribute :>> includeRelationshipKinds = ("Composes", "ParticipatesIn");
86
- }
87
- }
88
64
  }
@@ -1,4 +1,5 @@
1
- package diagram_samples {
1
+ package memo_examples_sysml_diagram_samples_viewpoints_unassigned_views_context_view {
2
+ private import memo_examples_sysml_diagram_samples_viewpoints_unassigned::*;
2
3
  // System context sample (general view kind, `context` diagram type). The system
3
4
  // under consideration is one block; every other element is an external actor,
4
5
  // neighbouring system, or use context it interacts with across its boundary.
@@ -18,39 +19,26 @@ package diagram_samples {
18
19
  // black box. Context diagrams show its environment and interfaces, not its
19
20
  // internal decomposition.
20
21
  part infusionSystem : OperationalEntity {
21
- attribute :>> name = "Infusion Pump System";
22
+ @MemoIdentity { :>> label = "Infusion Pump System"; }
22
23
  attribute :>> entityKind = OperationalEntityKind::device;
23
24
  attribute :>> responsibility = "System of interest for this context view.";
25
+ out port pPharmacyOut : MemoPort;
24
26
  }
25
- part clinician : User { attribute :>> name = "Clinician"; }
26
- part patient : User { attribute :>> name = "Patient"; }
27
- part biomedTech : User { attribute :>> name = "Biomedical Technician"; }
27
+ part clinician : User { }
28
+ part patient : User { }
29
+ part biomedTech : User {@MemoIdentity { :>> label = "Biomedical Technician"; } }
28
30
  part pharmacySystem : OperationalEntity {
29
- attribute :>> name = "Pharmacy Information System";
31
+ @MemoIdentity { :>> label = "Pharmacy Information System"; }
30
32
  attribute :>> entityKind = OperationalEntityKind::externalSystem;
33
+ in port pInfusionIn : MemoPort;
31
34
  }
32
- part homeContext : UseContext { attribute :>> name = "Home Care Environment"; }
35
+ part homeContext : UseContext {@MemoIdentity { :>> label = "Home Care Environment"; } }
33
36
 
34
37
  connection connect clinician to infusionSystem;
35
38
  connection connect patient to infusionSystem;
36
39
  connection connect biomedTech to infusionSystem;
37
- flow from infusionSystem to pharmacySystem;
40
+ // A flow end names a feature of its participant (`part.feature`): the black
41
+ // boxes exchange across their boundary, at these ports.
42
+ flow infusionSystemToPharmacySystem from infusionSystem.pPharmacyOut to pharmacySystem.pInfusionIn;
38
43
  connection : AppliesInContext connect useContext ::> homeContext to subjectElement ::> infusionSystem;
39
-
40
- view systemContextDiagram : MemoDiagramView {
41
- expose infusionSystem::**;
42
- expose clinician;
43
- expose patient;
44
- expose biomedTech;
45
- expose pharmacySystem;
46
- expose homeContext;
47
- attribute depth = 1;
48
- @MemoIdentity { :>> shortDescription = "Operational system context: one black-box system boundary, its external people, peer systems, operating environment, and named boundary-crossing interactions."; }
49
- attribute :>> viewKind = DiagramViewKind::general;
50
- attribute :>> diagramType = "context";
51
- ref :>> viewpointDefinition = contextDiagramViewpoint;
52
- part :>> selectionQuery {
53
- attribute :>> includeRelationshipKinds = ("connect", "flow", "AppliesInContext");
54
- }
55
- }
56
44
  }