@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
@@ -1,19 +0,0 @@
1
- package memo_extension_cloud_methodology {
2
- private import ScalarValues::*;
3
- private import memo_methodology_core::*;
4
- private import memo_methodology_profiles::*;
5
- private import memo_core_enumerations::*;
6
-
7
- private import memo_core_common::*;
8
- private import memo_core_common::MemoIdentity;
9
- part cloudExtensionMethod : MethodologyDefinition {
10
- @MemoIdentity { :>> providedId = "EXT-CLOUD-001"; }
11
- attribute :>> name = "CloudRuntimeExtension";
12
- attribute :>> version = "0.7.0";
13
- attribute :>> domain = "networked services and managed data stores";
14
- attribute :>> description = "Adds service and data-store runtime families with their contracts, discovery, and retention.";
15
- ref :>> baseMethodology = mdDefaultDefinition;
16
- attribute :>> scopeMode = ScopeModeKind::explicit;
17
- attribute :>> includedModule = "memo_extension_cloud";
18
- }
19
- }
@@ -1,19 +0,0 @@
1
- package memo_extension_container_methodology {
2
- private import ScalarValues::*;
3
- private import memo_methodology_core::*;
4
- private import memo_methodology_profiles::*;
5
- private import memo_core_enumerations::*;
6
-
7
- private import memo_core_common::*;
8
- private import memo_core_common::MemoIdentity;
9
- part containerExtensionMethod : MethodologyDefinition {
10
- @MemoIdentity { :>> providedId = "EXT-CONTAINER-001"; }
11
- attribute :>> name = "ContainerDeploymentExtension";
12
- attribute :>> version = "0.7.0";
13
- attribute :>> domain = "containerized deployment";
14
- attribute :>> description = "Adds OCI container images and container runtimes as deployment content.";
15
- ref :>> baseMethodology = mdDefaultDefinition;
16
- attribute :>> scopeMode = ScopeModeKind::explicit;
17
- attribute :>> includedModule = "memo_extension_container";
18
- }
19
- }
@@ -1,19 +0,0 @@
1
- package memo_extension_messaging_methodology {
2
- private import ScalarValues::*;
3
- private import memo_methodology_core::*;
4
- private import memo_methodology_profiles::*;
5
- private import memo_core_enumerations::*;
6
-
7
- private import memo_core_common::*;
8
- private import memo_core_common::MemoIdentity;
9
- part messagingExtensionMethod : MethodologyDefinition {
10
- @MemoIdentity { :>> providedId = "EXT-MESSAGING-001"; }
11
- attribute :>> name = "MessagingExtension";
12
- attribute :>> version = "0.7.0";
13
- attribute :>> domain = "publish/subscribe messaging";
14
- attribute :>> description = "Adds message items, publisher/subscriber ports, topic interfaces, brokers, and delivery semantics.";
15
- ref :>> baseMethodology = mdDefaultDefinition;
16
- attribute :>> scopeMode = ScopeModeKind::explicit;
17
- attribute :>> includedModule = "memo_extension_messaging";
18
- }
19
- }
@@ -1,27 +0,0 @@
1
- package memo_extension_ros_methodology {
2
- private import ScalarValues::*;
3
- private import memo_methodology_core::*;
4
- private import memo_methodology_profiles::*;
5
- private import memo_core_enumerations::*;
6
-
7
- private import memo_core_common::*;
8
- private import memo_core_common::MemoIdentity;
9
- // An extension that builds on other extensions names them all here.
10
- // `baseMethodology` is [0..1] — single inheritance, deliberate — but
11
- // `includedModule` is [0..*], so this is how a dependency between
12
- // extensions is expressed. There is no chaining and no second base.
13
- part rosExtensionMethod : MethodologyDefinition {
14
- @MemoIdentity { :>> providedId = "EXT-ROS-001"; }
15
- attribute :>> name = "Ros2Extension";
16
- attribute :>> version = "0.7.0";
17
- attribute :>> domain = "ROS 2 robotics middleware";
18
- attribute :>> description = "Adds ROS 2 nodes, messages, directional ports, topic/service/action interfaces, QoS, and containerized deployment.";
19
- ref :>> baseMethodology = mdDefaultDefinition;
20
- attribute :>> scopeMode = ScopeModeKind::explicit;
21
- attribute :>> includedModule = (
22
- "memo_extension_messaging",
23
- "memo_extension_container",
24
- "memo_extension_ros"
25
- );
26
- }
27
- }
@@ -1,39 +0,0 @@
1
- // Skeleton for a new MEMO extension. Copy the directory, rename the packages,
2
- // and replace the prefix.
3
- //
4
- // Two conventions this file follows and every extension must (extensions/README.md):
5
- //
6
- // 1. Every definition an extension declares is prefixed with the PascalCase
7
- // form of the extension's directory name — `template/` gives `Template`.
8
- // Extension names share one flat namespace with the base and with each
9
- // other, so the prefix is what keeps two independent extensions from both
10
- // declaring `Node`.
11
- // 2. A relation an extension declares specializes a base relation. It never
12
- // roots independently.
13
- //
14
- // This package used to bind `baseMethodName = "MedicalDeviceLightDefault"` — a
15
- // pre-flip spelling that resolves to nothing. It went unnoticed for as long as
16
- // extensions lived under `examples/`, where the build did not check them; the
17
- // build checks `extensions/` now, and reported it on the first run.
18
- package memo_extension_template {
19
- private import ScalarValues::*;
20
- private import memo_core_enumerations::*;
21
- private import memo_methodology_core::*;
22
- private import memo_methodology_profiles::*;
23
-
24
- private import memo_core_common::*;
25
- private import memo_core_common::MemoIdentity;
26
- part extensionMethod : MethodologyDefinition {
27
- @MemoIdentity { :>> providedId = "EXT-METH-001"; }
28
- attribute :>> name = "ExtensionMethod";
29
- attribute :>> version = "0.1.0";
30
- attribute :>> domain = "project extension";
31
- attribute :>> description = "Adds a project or domain package to the selected MEMO methodology.";
32
- // The base is a typed SysML reference, not a name held in sync by hand.
33
- ref :>> baseMethodology = mdDefaultDefinition;
34
- // An extension adds its own module to whatever its base selected;
35
- // saying so explicitly is required now that an empty list means empty.
36
- attribute :>> scopeMode = ScopeModeKind::explicit;
37
- attribute :>> includedModule = "replace_with_extension_package";
38
- }
39
- }
@@ -1,13 +0,0 @@
1
- # Application/distribution descriptor for this MEMO package.
2
- #
3
- # Identity and location only. It records what this package is called, what
4
- # version it is, and where its SysML source sits so a resolver can find it.
5
- # It does not select model content: the project's native SysML imports and its
6
- # ProjectMethodBinding decide what is in the model. Semantic fields
7
- # (`type`, `extends`, `usage`, `ontologies`, `methodology`, `modules`) were
8
- # removed at the native semantic flip and are now rejected if present.
9
- name: '{{name}}'
10
- entrypoint: model/catalog/project.sysml
11
- include: [model]
12
- version: 0.1.0
13
- description: MEMO connected device model
@@ -1,5 +0,0 @@
1
- package connected_device_architecture {
2
- private import memo::*;
3
-
4
- part connectedDevice : PhysicalAssembly;
5
- }
@@ -1,5 +0,0 @@
1
- package connected_device_artifacts {
2
- private import memo::*;
3
-
4
- // Add project artifact usages here.
5
- }
@@ -1,7 +0,0 @@
1
- package connected_device_assurance {
2
- private import memo::*;
3
-
4
- requirement connectivityRequirement : Requirement {
5
- attribute redefines statement = "Define connectivity and cybersecurity boundaries";
6
- }
7
- }
@@ -1,30 +0,0 @@
1
- // Project identity and method binding — the project's native entrypoint.
2
- //
3
- // The imports below name the reusable packages this project resolves, and the
4
- // binding names its methodology with a typed SysML reference. Nothing outside
5
- // SysML selects model content: delete every YAML file beside this one and the
6
- // model still means exactly what it means now.
7
- package connected_device_catalog {
8
- private import ScalarValues::*;
9
-
10
- private import memo_core_enumerations::*;
11
- private import memo_methodology_core::*;
12
- private import memo_methodology_profiles::*;
13
-
14
- private import connected_device_architecture::*;
15
- private import connected_device_assurance::*;
16
- private import connected_device_artifacts::*;
17
-
18
- private import memo_core_common::*;
19
- private import memo_core_common::MemoIdentity;
20
- part projectMethodBinding : ProjectMethodBinding {
21
- @MemoIdentity { :>> providedId = "PMB-001"; }
22
- attribute :>> name = "{{name}}ProjectMethodBinding";
23
- attribute :>> projectName = "{{name}}";
24
- ref :>> selectedMethodology = mdDefaultDefinition;
25
- // The project adds no modules of its own yet. Under `explicit` an
26
- // empty additive list means exactly that — no additions — rather than
27
- // being read as "everything".
28
- attribute :>> scopeMode = ScopeModeKind::explicit;
29
- }
30
- }
@@ -1,8 +0,0 @@
1
- {
2
- "name": "{{npmName}}",
3
- "version": "0.1.0",
4
- "private": true,
5
- "dependencies": {
6
- "@memoarchitect/ontology": "{{ontologyVersion}}"
7
- }
8
- }
@@ -1,13 +0,0 @@
1
- #:schema https://docs.sensmetry.com/schemas/latest/syside.schema.json
2
-
3
- include = [
4
- "model",
5
- "node_modules/@memoarchitect/ontology/src",
6
- ]
7
-
8
- exclude = [
9
- ".memo",
10
- ".sysand",
11
- "dist",
12
- "output",
13
- ]
@@ -1,13 +0,0 @@
1
- # Application/distribution descriptor for this MEMO package.
2
- #
3
- # Identity and location only. It records what this package is called, what
4
- # version it is, and where its SysML source sits so a resolver can find it.
5
- # It does not select model content: the project's native SysML imports and its
6
- # ProjectMethodBinding decide what is in the model. Semantic fields
7
- # (`type`, `extends`, `usage`, `ontologies`, `methodology`, `modules`) were
8
- # removed at the native semantic flip and are now rejected if present.
9
- name: '{{name}}'
10
- entrypoint: model/catalog/project.sysml
11
- include: [model]
12
- version: 0.1.0
13
- description: MEMO infusion pump model
@@ -1,5 +0,0 @@
1
- package infusion_pump_architecture {
2
- private import memo::*;
3
-
4
- part infusionPump : PhysicalAssembly;
5
- }
@@ -1,5 +0,0 @@
1
- package infusion_pump_artifacts {
2
- private import memo::*;
3
-
4
- // Add project artifact usages here.
5
- }
@@ -1,7 +0,0 @@
1
- package infusion_pump_assurance {
2
- private import memo::*;
3
-
4
- requirement deliveryRequirement : Requirement {
5
- attribute redefines statement = "Define safe therapy delivery behavior";
6
- }
7
- }
@@ -1,30 +0,0 @@
1
- // Project identity and method binding — the project's native entrypoint.
2
- //
3
- // The imports below name the reusable packages this project resolves, and the
4
- // binding names its methodology with a typed SysML reference. Nothing outside
5
- // SysML selects model content: delete every YAML file beside this one and the
6
- // model still means exactly what it means now.
7
- package infusion_pump_catalog {
8
- private import ScalarValues::*;
9
-
10
- private import memo_core_enumerations::*;
11
- private import memo_methodology_core::*;
12
- private import memo_methodology_profiles::*;
13
-
14
- private import infusion_pump_architecture::*;
15
- private import infusion_pump_assurance::*;
16
- private import infusion_pump_artifacts::*;
17
-
18
- private import memo_core_common::*;
19
- private import memo_core_common::MemoIdentity;
20
- part projectMethodBinding : ProjectMethodBinding {
21
- @MemoIdentity { :>> providedId = "PMB-001"; }
22
- attribute :>> name = "{{name}}ProjectMethodBinding";
23
- attribute :>> projectName = "{{name}}";
24
- ref :>> selectedMethodology = mdDefaultDefinition;
25
- // The project adds no modules of its own yet. Under `explicit` an
26
- // empty additive list means exactly that — no additions — rather than
27
- // being read as "everything".
28
- attribute :>> scopeMode = ScopeModeKind::explicit;
29
- }
30
- }
@@ -1,8 +0,0 @@
1
- {
2
- "name": "{{npmName}}",
3
- "version": "0.1.0",
4
- "private": true,
5
- "dependencies": {
6
- "@memoarchitect/ontology": "{{ontologyVersion}}"
7
- }
8
- }
@@ -1,13 +0,0 @@
1
- #:schema https://docs.sensmetry.com/schemas/latest/syside.schema.json
2
-
3
- include = [
4
- "model",
5
- "node_modules/@memoarchitect/ontology/src",
6
- ]
7
-
8
- exclude = [
9
- ".memo",
10
- ".sysand",
11
- "dist",
12
- "output",
13
- ]
@@ -1,13 +0,0 @@
1
- # Application/distribution descriptor for this MEMO package.
2
- #
3
- # Identity and location only. It records what this package is called, what
4
- # version it is, and where its SysML source sits so a resolver can find it.
5
- # It does not select model content: the project's native SysML imports and its
6
- # ProjectMethodBinding decide what is in the model. Semantic fields
7
- # (`type`, `extends`, `usage`, `ontologies`, `methodology`, `modules`) were
8
- # removed at the native semantic flip and are now rejected if present.
9
- name: '{{name}}'
10
- entrypoint: model/catalog/project.sysml
11
- include: [model]
12
- version: 0.1.0
13
- description: MEMO monitoring device model
@@ -1,5 +0,0 @@
1
- package monitoring_device_architecture {
2
- private import memo::*;
3
-
4
- part monitoringDevice : PhysicalAssembly;
5
- }
@@ -1,5 +0,0 @@
1
- package monitoring_device_artifacts {
2
- private import memo::*;
3
-
4
- // Add project artifact usages here.
5
- }
@@ -1,7 +0,0 @@
1
- package monitoring_device_assurance {
2
- private import memo::*;
3
-
4
- requirement monitoringRequirement : Requirement {
5
- attribute redefines statement = "Define the monitored physiological parameter";
6
- }
7
- }
@@ -1,30 +0,0 @@
1
- // Project identity and method binding — the project's native entrypoint.
2
- //
3
- // The imports below name the reusable packages this project resolves, and the
4
- // binding names its methodology with a typed SysML reference. Nothing outside
5
- // SysML selects model content: delete every YAML file beside this one and the
6
- // model still means exactly what it means now.
7
- package monitoring_device_catalog {
8
- private import ScalarValues::*;
9
-
10
- private import memo_core_enumerations::*;
11
- private import memo_methodology_core::*;
12
- private import memo_methodology_profiles::*;
13
-
14
- private import monitoring_device_architecture::*;
15
- private import monitoring_device_assurance::*;
16
- private import monitoring_device_artifacts::*;
17
-
18
- private import memo_core_common::*;
19
- private import memo_core_common::MemoIdentity;
20
- part projectMethodBinding : ProjectMethodBinding {
21
- @MemoIdentity { :>> providedId = "PMB-001"; }
22
- attribute :>> name = "{{name}}ProjectMethodBinding";
23
- attribute :>> projectName = "{{name}}";
24
- ref :>> selectedMethodology = mdDefaultDefinition;
25
- // The project adds no modules of its own yet. Under `explicit` an
26
- // empty additive list means exactly that — no additions — rather than
27
- // being read as "everything".
28
- attribute :>> scopeMode = ScopeModeKind::explicit;
29
- }
30
- }
@@ -1,8 +0,0 @@
1
- {
2
- "name": "{{npmName}}",
3
- "version": "0.1.0",
4
- "private": true,
5
- "dependencies": {
6
- "@memoarchitect/ontology": "{{ontologyVersion}}"
7
- }
8
- }
@@ -1,13 +0,0 @@
1
- #:schema https://docs.sensmetry.com/schemas/latest/syside.schema.json
2
-
3
- include = [
4
- "model",
5
- "node_modules/@memoarchitect/ontology/src",
6
- ]
7
-
8
- exclude = [
9
- ".memo",
10
- ".sysand",
11
- "dist",
12
- "output",
13
- ]
@@ -1,13 +0,0 @@
1
- # Application/distribution descriptor for this MEMO package.
2
- #
3
- # Identity and location only. It records what this package is called, what
4
- # version it is, and where its SysML source sits so a resolver can find it.
5
- # It does not select model content: the project's native SysML imports and its
6
- # ProjectMethodBinding decide what is in the model. Semantic fields
7
- # (`type`, `extends`, `usage`, `ontologies`, `methodology`, `modules`) were
8
- # removed at the native semantic flip and are now rejected if present.
9
- name: '{{name}}'
10
- entrypoint: model/catalog/project.sysml
11
- include: [model]
12
- version: 0.1.0
13
- description: MEMO software as a medical device model
@@ -1,5 +0,0 @@
1
- package samd_architecture {
2
- private import memo::*;
3
-
4
- part samdDevice : SoftwareSystem;
5
- }
@@ -1,5 +0,0 @@
1
- package samd_artifacts {
2
- private import memo::*;
3
-
4
- // Add project artifact usages here.
5
- }
@@ -1,7 +0,0 @@
1
- package samd_assurance {
2
- private import memo::*;
3
-
4
- requirement clinicalPurpose : Requirement {
5
- attribute redefines statement = "Define the clinical purpose and intended user";
6
- }
7
- }
@@ -1,30 +0,0 @@
1
- // Project identity and method binding — the project's native entrypoint.
2
- //
3
- // The imports below name the reusable packages this project resolves, and the
4
- // binding names its methodology with a typed SysML reference. Nothing outside
5
- // SysML selects model content: delete every YAML file beside this one and the
6
- // model still means exactly what it means now.
7
- package samd_catalog {
8
- private import ScalarValues::*;
9
-
10
- private import memo_core_enumerations::*;
11
- private import memo_methodology_core::*;
12
- private import memo_methodology_profiles::*;
13
-
14
- private import samd_architecture::*;
15
- private import samd_assurance::*;
16
- private import samd_artifacts::*;
17
-
18
- private import memo_core_common::*;
19
- private import memo_core_common::MemoIdentity;
20
- part projectMethodBinding : ProjectMethodBinding {
21
- @MemoIdentity { :>> providedId = "PMB-001"; }
22
- attribute :>> name = "{{name}}ProjectMethodBinding";
23
- attribute :>> projectName = "{{name}}";
24
- ref :>> selectedMethodology = mdDefaultDefinition;
25
- // The project adds no modules of its own yet. Under `explicit` an
26
- // empty additive list means exactly that — no additions — rather than
27
- // being read as "everything".
28
- attribute :>> scopeMode = ScopeModeKind::explicit;
29
- }
30
- }
@@ -1,8 +0,0 @@
1
- {
2
- "name": "{{npmName}}",
3
- "version": "0.1.0",
4
- "private": true,
5
- "dependencies": {
6
- "@memoarchitect/ontology": "{{ontologyVersion}}"
7
- }
8
- }
@@ -1,13 +0,0 @@
1
- #:schema https://docs.sensmetry.com/schemas/latest/syside.schema.json
2
-
3
- include = [
4
- "model",
5
- "node_modules/@memoarchitect/ontology/src",
6
- ]
7
-
8
- exclude = [
9
- ".memo",
10
- ".sysand",
11
- "dist",
12
- "output",
13
- ]