@memoarchitect/tools 0.6.6 → 0.7.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (478) hide show
  1. package/README.md +54 -11
  2. package/package.json +19 -7
  3. package/packages/tools/lib/analysis-starters.d.ts +4 -0
  4. package/packages/tools/lib/analysis-starters.d.ts.map +1 -0
  5. package/packages/tools/lib/analysis-starters.js +425 -0
  6. package/packages/tools/lib/analysis-starters.js.map +1 -0
  7. package/packages/tools/lib/bin/memo.js +161 -10
  8. package/packages/tools/lib/bin/memo.js.map +1 -1
  9. package/packages/tools/lib/browser/index.d.ts +1 -1
  10. package/packages/tools/lib/browser/index.d.ts.map +1 -1
  11. package/packages/tools/lib/browser/index.js +1 -1
  12. package/packages/tools/lib/browser/index.js.map +1 -1
  13. package/packages/tools/lib/commands/ask.js +1 -1
  14. package/packages/tools/lib/commands/ask.js.map +1 -1
  15. package/packages/tools/lib/commands/check.d.ts.map +1 -1
  16. package/packages/tools/lib/commands/check.js +3 -9
  17. package/packages/tools/lib/commands/check.js.map +1 -1
  18. package/packages/tools/lib/commands/conformance.d.ts +36 -0
  19. package/packages/tools/lib/commands/conformance.d.ts.map +1 -0
  20. package/packages/tools/lib/commands/conformance.js +212 -0
  21. package/packages/tools/lib/commands/conformance.js.map +1 -0
  22. package/packages/tools/lib/commands/convert.d.ts +12 -0
  23. package/packages/tools/lib/commands/convert.d.ts.map +1 -0
  24. package/packages/tools/lib/commands/convert.js +103 -0
  25. package/packages/tools/lib/commands/convert.js.map +1 -0
  26. package/packages/tools/lib/commands/create-package.d.ts +1 -2
  27. package/packages/tools/lib/commands/create-package.d.ts.map +1 -1
  28. package/packages/tools/lib/commands/create-package.js.map +1 -1
  29. package/packages/tools/lib/commands/dev.d.ts +13 -0
  30. package/packages/tools/lib/commands/dev.d.ts.map +1 -1
  31. package/packages/tools/lib/commands/dev.js +208 -74
  32. package/packages/tools/lib/commands/dev.js.map +1 -1
  33. package/packages/tools/lib/commands/dhf-draft.js +1 -1
  34. package/packages/tools/lib/commands/dhf-draft.js.map +1 -1
  35. package/packages/tools/lib/commands/dhf-preview.js +1 -1
  36. package/packages/tools/lib/commands/dhf-preview.js.map +1 -1
  37. package/packages/tools/lib/commands/dhf.js +1 -1
  38. package/packages/tools/lib/commands/dhf.js.map +1 -1
  39. package/packages/tools/lib/commands/element.d.ts +34 -0
  40. package/packages/tools/lib/commands/element.d.ts.map +1 -0
  41. package/packages/tools/lib/commands/element.js +174 -0
  42. package/packages/tools/lib/commands/element.js.map +1 -0
  43. package/packages/tools/lib/commands/export.d.ts.map +1 -1
  44. package/packages/tools/lib/commands/export.js +39 -40
  45. package/packages/tools/lib/commands/export.js.map +1 -1
  46. package/packages/tools/lib/commands/generate.d.ts.map +1 -1
  47. package/packages/tools/lib/commands/generate.js +10 -7
  48. package/packages/tools/lib/commands/generate.js.map +1 -1
  49. package/packages/tools/lib/commands/import.d.ts.map +1 -1
  50. package/packages/tools/lib/commands/import.js +25 -12
  51. package/packages/tools/lib/commands/import.js.map +1 -1
  52. package/packages/tools/lib/commands/init.d.ts.map +1 -1
  53. package/packages/tools/lib/commands/init.js +37 -14
  54. package/packages/tools/lib/commands/init.js.map +1 -1
  55. package/packages/tools/lib/commands/inspect.d.ts +5 -0
  56. package/packages/tools/lib/commands/inspect.d.ts.map +1 -0
  57. package/packages/tools/lib/commands/inspect.js +56 -0
  58. package/packages/tools/lib/commands/inspect.js.map +1 -0
  59. package/packages/tools/lib/commands/lock.d.ts.map +1 -1
  60. package/packages/tools/lib/commands/lock.js +7 -2
  61. package/packages/tools/lib/commands/lock.js.map +1 -1
  62. package/packages/tools/lib/commands/ontology.d.ts.map +1 -1
  63. package/packages/tools/lib/commands/ontology.js +69 -116
  64. package/packages/tools/lib/commands/ontology.js.map +1 -1
  65. package/packages/tools/lib/commands/pack.d.ts +1 -1
  66. package/packages/tools/lib/commands/pack.d.ts.map +1 -1
  67. package/packages/tools/lib/commands/pack.js +20 -75
  68. package/packages/tools/lib/commands/pack.js.map +1 -1
  69. package/packages/tools/lib/commands/package.d.ts +10 -0
  70. package/packages/tools/lib/commands/package.d.ts.map +1 -0
  71. package/packages/tools/lib/commands/package.js +113 -0
  72. package/packages/tools/lib/commands/package.js.map +1 -0
  73. package/packages/tools/lib/commands/plugin.js +1 -1
  74. package/packages/tools/lib/commands/plugin.js.map +1 -1
  75. package/packages/tools/lib/commands/rules.d.ts.map +1 -1
  76. package/packages/tools/lib/commands/rules.js +120 -30
  77. package/packages/tools/lib/commands/rules.js.map +1 -1
  78. package/packages/tools/lib/commands/sysand-publish.d.ts.map +1 -1
  79. package/packages/tools/lib/commands/sysand-publish.js +14 -16
  80. package/packages/tools/lib/commands/sysand-publish.js.map +1 -1
  81. package/packages/tools/lib/commands/toolchain.d.ts +8 -0
  82. package/packages/tools/lib/commands/toolchain.d.ts.map +1 -0
  83. package/packages/tools/lib/commands/toolchain.js +64 -0
  84. package/packages/tools/lib/commands/toolchain.js.map +1 -0
  85. package/packages/tools/lib/commands/validate.d.ts +1 -1
  86. package/packages/tools/lib/commands/validate.d.ts.map +1 -1
  87. package/packages/tools/lib/commands/validate.js +183 -56
  88. package/packages/tools/lib/commands/validate.js.map +1 -1
  89. package/packages/tools/lib/completeness/tracker.d.ts +10 -2
  90. package/packages/tools/lib/completeness/tracker.d.ts.map +1 -1
  91. package/packages/tools/lib/completeness/tracker.js +16 -21
  92. package/packages/tools/lib/completeness/tracker.js.map +1 -1
  93. package/packages/tools/lib/conformance/baseline.d.ts +26 -0
  94. package/packages/tools/lib/conformance/baseline.d.ts.map +1 -0
  95. package/packages/tools/lib/conformance/baseline.js +170 -0
  96. package/packages/tools/lib/conformance/baseline.js.map +1 -0
  97. package/packages/tools/lib/conformance/bnf.d.ts +84 -0
  98. package/packages/tools/lib/conformance/bnf.d.ts.map +1 -0
  99. package/packages/tools/lib/conformance/bnf.js +166 -0
  100. package/packages/tools/lib/conformance/bnf.js.map +1 -0
  101. package/packages/tools/lib/conformance/corpus.d.ts +125 -0
  102. package/packages/tools/lib/conformance/corpus.d.ts.map +1 -0
  103. package/packages/tools/lib/conformance/corpus.js +190 -0
  104. package/packages/tools/lib/conformance/corpus.js.map +1 -0
  105. package/packages/tools/lib/conformance/diff-xmi.d.ts +118 -0
  106. package/packages/tools/lib/conformance/diff-xmi.d.ts.map +1 -0
  107. package/packages/tools/lib/conformance/diff-xmi.js +276 -0
  108. package/packages/tools/lib/conformance/diff-xmi.js.map +1 -0
  109. package/packages/tools/lib/conformance/generated/syside-rules.d.ts +10 -0
  110. package/packages/tools/lib/conformance/generated/syside-rules.d.ts.map +1 -0
  111. package/packages/tools/lib/conformance/generated/syside-rules.js +1142 -0
  112. package/packages/tools/lib/conformance/generated/syside-rules.js.map +1 -0
  113. package/packages/tools/lib/conformance/index.d.ts +7 -0
  114. package/packages/tools/lib/conformance/index.d.ts.map +1 -0
  115. package/packages/tools/lib/conformance/index.js +19 -0
  116. package/packages/tools/lib/conformance/index.js.map +1 -0
  117. package/packages/tools/lib/conformance/run.d.ts +117 -0
  118. package/packages/tools/lib/conformance/run.d.ts.map +1 -0
  119. package/packages/tools/lib/conformance/run.js +0 -0
  120. package/packages/tools/lib/conformance/run.js.map +1 -0
  121. package/packages/tools/lib/conformance/xmi.d.ts +45 -0
  122. package/packages/tools/lib/conformance/xmi.d.ts.map +1 -0
  123. package/packages/tools/lib/conformance/xmi.js +148 -0
  124. package/packages/tools/lib/conformance/xmi.js.map +1 -0
  125. package/packages/tools/lib/dhf/template-resolver.js +1 -1
  126. package/packages/tools/lib/dhf/template-resolver.js.map +1 -1
  127. package/packages/tools/lib/import/column-mapper.d.ts +2 -2
  128. package/packages/tools/lib/import/column-mapper.d.ts.map +1 -1
  129. package/packages/tools/lib/import/column-mapper.js +3 -3
  130. package/packages/tools/lib/import/column-mapper.js.map +1 -1
  131. package/packages/tools/lib/index.d.ts +20 -3
  132. package/packages/tools/lib/index.d.ts.map +1 -1
  133. package/packages/tools/lib/index.js +19 -2
  134. package/packages/tools/lib/index.js.map +1 -1
  135. package/packages/tools/lib/language/generated/ast.d.ts +196 -51
  136. package/packages/tools/lib/language/generated/ast.d.ts.map +1 -1
  137. package/packages/tools/lib/language/generated/ast.js +136 -15
  138. package/packages/tools/lib/language/generated/ast.js.map +1 -1
  139. package/packages/tools/lib/language/generated/grammar.d.ts.map +1 -1
  140. package/packages/tools/lib/language/generated/grammar.js +867 -295
  141. package/packages/tools/lib/language/generated/grammar.js.map +1 -1
  142. package/packages/tools/lib/llm/chat-engine.d.ts +4 -3
  143. package/packages/tools/lib/llm/chat-engine.d.ts.map +1 -1
  144. package/packages/tools/lib/llm/chat-engine.js +15 -12
  145. package/packages/tools/lib/llm/chat-engine.js.map +1 -1
  146. package/packages/tools/lib/llm/generate-engine.d.ts +7 -2
  147. package/packages/tools/lib/llm/generate-engine.d.ts.map +1 -1
  148. package/packages/tools/lib/llm/generate-engine.js +22 -4
  149. package/packages/tools/lib/llm/generate-engine.js.map +1 -1
  150. package/packages/tools/lib/llm/index.d.ts +1 -0
  151. package/packages/tools/lib/llm/index.d.ts.map +1 -1
  152. package/packages/tools/lib/llm/index.js +1 -0
  153. package/packages/tools/lib/llm/index.js.map +1 -1
  154. package/packages/tools/lib/llm/model-context.d.ts +2 -2
  155. package/packages/tools/lib/llm/model-context.d.ts.map +1 -1
  156. package/packages/tools/lib/llm/model-context.js +7 -13
  157. package/packages/tools/lib/llm/model-context.js.map +1 -1
  158. package/packages/tools/lib/llm/sysml-guidance.d.ts +8 -0
  159. package/packages/tools/lib/llm/sysml-guidance.d.ts.map +1 -0
  160. package/packages/tools/lib/llm/sysml-guidance.js +28 -0
  161. package/packages/tools/lib/llm/sysml-guidance.js.map +1 -0
  162. package/packages/tools/lib/lock.d.ts +14 -8
  163. package/packages/tools/lib/lock.d.ts.map +1 -1
  164. package/packages/tools/lib/lock.js +97 -108
  165. package/packages/tools/lib/lock.js.map +1 -1
  166. package/packages/tools/lib/mcp/model-loader.d.ts +5 -1
  167. package/packages/tools/lib/mcp/model-loader.d.ts.map +1 -1
  168. package/packages/tools/lib/mcp/model-loader.js +16 -27
  169. package/packages/tools/lib/mcp/model-loader.js.map +1 -1
  170. package/packages/tools/lib/mcp/tools.d.ts +3 -0
  171. package/packages/tools/lib/mcp/tools.d.ts.map +1 -1
  172. package/packages/tools/lib/mcp/tools.js +8 -9
  173. package/packages/tools/lib/mcp/tools.js.map +1 -1
  174. package/packages/tools/lib/model/activity-notation.d.ts +54 -0
  175. package/packages/tools/lib/model/activity-notation.d.ts.map +1 -0
  176. package/packages/tools/lib/model/activity-notation.js +208 -0
  177. package/packages/tools/lib/model/activity-notation.js.map +1 -0
  178. package/packages/tools/lib/model/builder.d.ts +3 -0
  179. package/packages/tools/lib/model/builder.d.ts.map +1 -1
  180. package/packages/tools/lib/model/builder.js +264 -26
  181. package/packages/tools/lib/model/builder.js.map +1 -1
  182. package/packages/tools/lib/model/config-loader.d.ts +19 -25
  183. package/packages/tools/lib/model/config-loader.d.ts.map +1 -1
  184. package/packages/tools/lib/model/config-loader.js +51 -233
  185. package/packages/tools/lib/model/config-loader.js.map +1 -1
  186. package/packages/tools/lib/model/config.d.ts +42 -213
  187. package/packages/tools/lib/model/config.d.ts.map +1 -1
  188. package/packages/tools/lib/model/config.js +11 -9
  189. package/packages/tools/lib/model/config.js.map +1 -1
  190. package/packages/tools/lib/model/effective-scope.d.ts +74 -0
  191. package/packages/tools/lib/model/effective-scope.d.ts.map +1 -0
  192. package/packages/tools/lib/model/effective-scope.js +133 -0
  193. package/packages/tools/lib/model/effective-scope.js.map +1 -0
  194. package/packages/tools/lib/model/ir-identity.d.ts +94 -0
  195. package/packages/tools/lib/model/ir-identity.d.ts.map +1 -0
  196. package/packages/tools/lib/model/ir-identity.js +178 -0
  197. package/packages/tools/lib/model/ir-identity.js.map +1 -0
  198. package/packages/tools/lib/model/kind-registry.d.ts +114 -1
  199. package/packages/tools/lib/model/kind-registry.d.ts.map +1 -1
  200. package/packages/tools/lib/model/kind-registry.js +148 -4
  201. package/packages/tools/lib/model/kind-registry.js.map +1 -1
  202. package/packages/tools/lib/model/layer-resolver.js +1 -1
  203. package/packages/tools/lib/model/layer-resolver.js.map +1 -1
  204. package/packages/tools/lib/model/methodology-loader.d.ts +19 -24
  205. package/packages/tools/lib/model/methodology-loader.d.ts.map +1 -1
  206. package/packages/tools/lib/model/methodology-loader.js +179 -176
  207. package/packages/tools/lib/model/methodology-loader.js.map +1 -1
  208. package/packages/tools/lib/model/methodology-resolver.d.ts +115 -0
  209. package/packages/tools/lib/model/methodology-resolver.d.ts.map +1 -0
  210. package/packages/tools/lib/model/methodology-resolver.js +317 -0
  211. package/packages/tools/lib/model/methodology-resolver.js.map +1 -0
  212. package/packages/tools/lib/model/native-project.d.ts +130 -0
  213. package/packages/tools/lib/model/native-project.d.ts.map +1 -0
  214. package/packages/tools/lib/model/native-project.js +570 -0
  215. package/packages/tools/lib/model/native-project.js.map +1 -0
  216. package/packages/tools/lib/model/ontology-loader.d.ts +34 -21
  217. package/packages/tools/lib/model/ontology-loader.d.ts.map +1 -1
  218. package/packages/tools/lib/model/ontology-loader.js +340 -614
  219. package/packages/tools/lib/model/ontology-loader.js.map +1 -1
  220. package/packages/tools/lib/model/package-manifest.d.ts +37 -0
  221. package/packages/tools/lib/model/package-manifest.d.ts.map +1 -0
  222. package/packages/tools/lib/model/package-manifest.js +96 -0
  223. package/packages/tools/lib/model/package-manifest.js.map +1 -0
  224. package/packages/tools/lib/model/parser-utils.d.ts +31 -0
  225. package/packages/tools/lib/model/parser-utils.d.ts.map +1 -1
  226. package/packages/tools/lib/model/parser-utils.js +89 -1
  227. package/packages/tools/lib/model/parser-utils.js.map +1 -1
  228. package/packages/tools/lib/model/paths.d.ts +10 -4
  229. package/packages/tools/lib/model/paths.d.ts.map +1 -1
  230. package/packages/tools/lib/model/paths.js +10 -4
  231. package/packages/tools/lib/model/paths.js.map +1 -1
  232. package/packages/tools/lib/model/project-conversion.d.ts +226 -0
  233. package/packages/tools/lib/model/project-conversion.d.ts.map +1 -0
  234. package/packages/tools/lib/model/project-conversion.js +946 -0
  235. package/packages/tools/lib/model/project-conversion.js.map +1 -0
  236. package/packages/tools/lib/model/relationship-legality.d.ts +12 -0
  237. package/packages/tools/lib/model/relationship-legality.d.ts.map +1 -1
  238. package/packages/tools/lib/model/relationship-legality.js.map +1 -1
  239. package/packages/tools/lib/model/relationship-registry.d.ts +16 -1
  240. package/packages/tools/lib/model/relationship-registry.d.ts.map +1 -1
  241. package/packages/tools/lib/model/relationship-registry.js.map +1 -1
  242. package/packages/tools/lib/model/semantic.d.ts +38 -0
  243. package/packages/tools/lib/model/semantic.d.ts.map +1 -1
  244. package/packages/tools/lib/model/semantic.js +3 -0
  245. package/packages/tools/lib/model/semantic.js.map +1 -1
  246. package/packages/tools/lib/model/settings-boundary.d.ts +19 -0
  247. package/packages/tools/lib/model/settings-boundary.d.ts.map +1 -0
  248. package/packages/tools/lib/model/settings-boundary.js +118 -0
  249. package/packages/tools/lib/model/settings-boundary.js.map +1 -0
  250. package/packages/tools/lib/model/short-id.d.ts +8 -7
  251. package/packages/tools/lib/model/short-id.d.ts.map +1 -1
  252. package/packages/tools/lib/model/short-id.js +26 -17
  253. package/packages/tools/lib/model/short-id.js.map +1 -1
  254. package/packages/tools/lib/model/source-graph.d.ts.map +1 -1
  255. package/packages/tools/lib/model/source-graph.js +5 -1
  256. package/packages/tools/lib/model/source-graph.js.map +1 -1
  257. package/packages/tools/lib/model/source-provenance.d.ts +112 -0
  258. package/packages/tools/lib/model/source-provenance.d.ts.map +1 -0
  259. package/packages/tools/lib/model/source-provenance.js +169 -0
  260. package/packages/tools/lib/model/source-provenance.js.map +1 -0
  261. package/packages/tools/lib/model/sysml-files.d.ts +9 -0
  262. package/packages/tools/lib/model/sysml-files.d.ts.map +1 -1
  263. package/packages/tools/lib/model/sysml-files.js +20 -1
  264. package/packages/tools/lib/model/sysml-files.js.map +1 -1
  265. package/packages/tools/lib/model/sysml-ir.d.ts +9 -0
  266. package/packages/tools/lib/model/sysml-ir.d.ts.map +1 -0
  267. package/packages/tools/lib/model/sysml-ir.js +105 -0
  268. package/packages/tools/lib/model/sysml-ir.js.map +1 -0
  269. package/packages/tools/lib/model/view-deriver.d.ts.map +1 -1
  270. package/packages/tools/lib/model/view-deriver.js +60 -6
  271. package/packages/tools/lib/model/view-deriver.js.map +1 -1
  272. package/packages/tools/lib/model/view-kinds.d.ts +2 -0
  273. package/packages/tools/lib/model/view-kinds.d.ts.map +1 -1
  274. package/packages/tools/lib/model/view-kinds.js +11 -0
  275. package/packages/tools/lib/model/view-kinds.js.map +1 -1
  276. package/packages/tools/lib/ontology/owl-exporter.d.ts +2 -2
  277. package/packages/tools/lib/ontology/owl-exporter.d.ts.map +1 -1
  278. package/packages/tools/lib/ontology/owl-exporter.js +12 -12
  279. package/packages/tools/lib/ontology/owl-exporter.js.map +1 -1
  280. package/packages/tools/lib/operations/ai-authoring.d.ts +24 -0
  281. package/packages/tools/lib/operations/ai-authoring.d.ts.map +1 -0
  282. package/packages/tools/lib/operations/ai-authoring.js +77 -0
  283. package/packages/tools/lib/operations/ai-authoring.js.map +1 -0
  284. package/packages/tools/lib/operations/authoring.d.ts +40 -0
  285. package/packages/tools/lib/operations/authoring.d.ts.map +1 -0
  286. package/packages/tools/lib/operations/authoring.js +56 -0
  287. package/packages/tools/lib/operations/authoring.js.map +1 -0
  288. package/packages/tools/lib/operations/index.d.ts +2 -0
  289. package/packages/tools/lib/operations/index.d.ts.map +1 -1
  290. package/packages/tools/lib/operations/index.js +2 -0
  291. package/packages/tools/lib/operations/index.js.map +1 -1
  292. package/packages/tools/lib/operations/project-snapshot.d.ts +28 -3
  293. package/packages/tools/lib/operations/project-snapshot.d.ts.map +1 -1
  294. package/packages/tools/lib/operations/project-snapshot.js +79 -30
  295. package/packages/tools/lib/operations/project-snapshot.js.map +1 -1
  296. package/packages/tools/lib/protocol/messages.d.ts +311 -11
  297. package/packages/tools/lib/protocol/messages.d.ts.map +1 -1
  298. package/packages/tools/lib/serializer/csv-io.d.ts +7 -7
  299. package/packages/tools/lib/serializer/csv-io.d.ts.map +1 -1
  300. package/packages/tools/lib/serializer/csv-io.js +11 -11
  301. package/packages/tools/lib/serializer/csv-io.js.map +1 -1
  302. package/packages/tools/lib/serializer/sysml-generator.d.ts.map +1 -1
  303. package/packages/tools/lib/serializer/sysml-generator.js +34 -2
  304. package/packages/tools/lib/serializer/sysml-generator.js.map +1 -1
  305. package/packages/tools/lib/server/config-resolver.d.ts +8 -4
  306. package/packages/tools/lib/server/config-resolver.d.ts.map +1 -1
  307. package/packages/tools/lib/server/config-resolver.js +25 -44
  308. package/packages/tools/lib/server/config-resolver.js.map +1 -1
  309. package/packages/tools/lib/server/conflict-policy.d.ts +44 -0
  310. package/packages/tools/lib/server/conflict-policy.d.ts.map +1 -0
  311. package/packages/tools/lib/server/conflict-policy.js +94 -0
  312. package/packages/tools/lib/server/conflict-policy.js.map +1 -0
  313. package/packages/tools/lib/server/dev-server.d.ts +32 -2
  314. package/packages/tools/lib/server/dev-server.d.ts.map +1 -1
  315. package/packages/tools/lib/server/dev-server.js +721 -53
  316. package/packages/tools/lib/server/dev-server.js.map +1 -1
  317. package/packages/tools/lib/server/element-writer.d.ts +11 -0
  318. package/packages/tools/lib/server/element-writer.d.ts.map +1 -0
  319. package/packages/tools/lib/server/element-writer.js +123 -0
  320. package/packages/tools/lib/server/element-writer.js.map +1 -0
  321. package/packages/tools/lib/server/file-watcher.d.ts +4 -1
  322. package/packages/tools/lib/server/file-watcher.d.ts.map +1 -1
  323. package/packages/tools/lib/server/file-watcher.js +17 -7
  324. package/packages/tools/lib/server/file-watcher.js.map +1 -1
  325. package/packages/tools/lib/server/mutation-domain.d.ts +22 -0
  326. package/packages/tools/lib/server/mutation-domain.d.ts.map +1 -0
  327. package/packages/tools/lib/server/mutation-domain.js +87 -0
  328. package/packages/tools/lib/server/mutation-domain.js.map +1 -0
  329. package/packages/tools/lib/server/persistor.d.ts +63 -8
  330. package/packages/tools/lib/server/persistor.d.ts.map +1 -1
  331. package/packages/tools/lib/server/persistor.js +152 -44
  332. package/packages/tools/lib/server/persistor.js.map +1 -1
  333. package/packages/tools/lib/server/relationship-writer.d.ts +28 -4
  334. package/packages/tools/lib/server/relationship-writer.d.ts.map +1 -1
  335. package/packages/tools/lib/server/relationship-writer.js +98 -9
  336. package/packages/tools/lib/server/relationship-writer.js.map +1 -1
  337. package/packages/tools/lib/server/rule-policy-writer.d.ts +40 -0
  338. package/packages/tools/lib/server/rule-policy-writer.d.ts.map +1 -0
  339. package/packages/tools/lib/server/rule-policy-writer.js +124 -0
  340. package/packages/tools/lib/server/rule-policy-writer.js.map +1 -0
  341. package/packages/tools/lib/server/runtime-budget.d.ts +14 -0
  342. package/packages/tools/lib/server/runtime-budget.d.ts.map +1 -0
  343. package/packages/tools/lib/server/runtime-budget.js +15 -0
  344. package/packages/tools/lib/server/runtime-budget.js.map +1 -0
  345. package/packages/tools/lib/server/sysml-notation.d.ts +36 -0
  346. package/packages/tools/lib/server/sysml-notation.d.ts.map +1 -0
  347. package/packages/tools/lib/server/sysml-notation.js +87 -0
  348. package/packages/tools/lib/server/sysml-notation.js.map +1 -0
  349. package/packages/tools/lib/server/view-layout-store.d.ts.map +1 -1
  350. package/packages/tools/lib/server/view-layout-store.js +2 -0
  351. package/packages/tools/lib/server/view-layout-store.js.map +1 -1
  352. package/packages/tools/lib/sysml-ir/generated/sysml-derivations.d.ts +9 -0
  353. package/packages/tools/lib/sysml-ir/generated/sysml-derivations.d.ts.map +1 -0
  354. package/packages/tools/lib/sysml-ir/generated/sysml-derivations.js +315 -0
  355. package/packages/tools/lib/sysml-ir/generated/sysml-derivations.js.map +1 -0
  356. package/packages/tools/lib/sysml-ir/generated/sysml-metamodel.d.ts +5206 -0
  357. package/packages/tools/lib/sysml-ir/generated/sysml-metamodel.d.ts.map +1 -0
  358. package/packages/tools/lib/sysml-ir/generated/sysml-metamodel.js +1933 -0
  359. package/packages/tools/lib/sysml-ir/generated/sysml-metamodel.js.map +1 -0
  360. package/packages/tools/lib/sysml-ir/index.d.ts +3 -0
  361. package/packages/tools/lib/sysml-ir/index.d.ts.map +1 -0
  362. package/packages/tools/lib/sysml-ir/index.js +3 -0
  363. package/packages/tools/lib/sysml-ir/index.js.map +1 -0
  364. package/packages/tools/lib/sysml-ir/ir.d.ts +50 -0
  365. package/packages/tools/lib/sysml-ir/ir.d.ts.map +1 -0
  366. package/packages/tools/lib/sysml-ir/ir.js +2 -0
  367. package/packages/tools/lib/sysml-ir/ir.js.map +1 -0
  368. package/packages/tools/lib/sysmlc/bin/memo-sysmlc.d.ts +3 -0
  369. package/packages/tools/lib/sysmlc/bin/memo-sysmlc.d.ts.map +1 -0
  370. package/packages/tools/lib/sysmlc/bin/memo-sysmlc.js +97 -0
  371. package/packages/tools/lib/sysmlc/bin/memo-sysmlc.js.map +1 -0
  372. package/packages/tools/lib/sysmlc/index.d.ts +2 -0
  373. package/packages/tools/lib/sysmlc/index.d.ts.map +1 -0
  374. package/packages/tools/lib/sysmlc/index.js +7 -0
  375. package/packages/tools/lib/sysmlc/index.js.map +1 -0
  376. package/packages/tools/lib/sysmlc/server.d.ts +29 -0
  377. package/packages/tools/lib/sysmlc/server.d.ts.map +1 -0
  378. package/packages/tools/lib/sysmlc/server.js +168 -0
  379. package/packages/tools/lib/sysmlc/server.js.map +1 -0
  380. package/packages/tools/lib/toolchain/default-registry.d.ts +12 -0
  381. package/packages/tools/lib/toolchain/default-registry.d.ts.map +1 -0
  382. package/packages/tools/lib/toolchain/default-registry.js +28 -0
  383. package/packages/tools/lib/toolchain/default-registry.js.map +1 -0
  384. package/packages/tools/lib/toolchain/diagnostic.d.ts +57 -0
  385. package/packages/tools/lib/toolchain/diagnostic.d.ts.map +1 -0
  386. package/packages/tools/lib/toolchain/diagnostic.js +69 -0
  387. package/packages/tools/lib/toolchain/diagnostic.js.map +1 -0
  388. package/packages/tools/lib/toolchain/effective.d.ts +36 -0
  389. package/packages/tools/lib/toolchain/effective.d.ts.map +1 -0
  390. package/packages/tools/lib/toolchain/effective.js +91 -0
  391. package/packages/tools/lib/toolchain/effective.js.map +1 -0
  392. package/packages/tools/lib/toolchain/index.d.ts +11 -0
  393. package/packages/tools/lib/toolchain/index.d.ts.map +1 -0
  394. package/packages/tools/lib/toolchain/index.js +21 -0
  395. package/packages/tools/lib/toolchain/index.js.map +1 -0
  396. package/packages/tools/lib/toolchain/lowering.d.ts +63 -0
  397. package/packages/tools/lib/toolchain/lowering.d.ts.map +1 -0
  398. package/packages/tools/lib/toolchain/lowering.js +100 -0
  399. package/packages/tools/lib/toolchain/lowering.js.map +1 -0
  400. package/packages/tools/lib/toolchain/operations.d.ts +87 -0
  401. package/packages/tools/lib/toolchain/operations.d.ts.map +1 -0
  402. package/packages/tools/lib/toolchain/operations.js +111 -0
  403. package/packages/tools/lib/toolchain/operations.js.map +1 -0
  404. package/packages/tools/lib/toolchain/process.d.ts +45 -0
  405. package/packages/tools/lib/toolchain/process.d.ts.map +1 -0
  406. package/packages/tools/lib/toolchain/process.js +125 -0
  407. package/packages/tools/lib/toolchain/process.js.map +1 -0
  408. package/packages/tools/lib/toolchain/protocol.d.ts +122 -0
  409. package/packages/tools/lib/toolchain/protocol.d.ts.map +1 -0
  410. package/packages/tools/lib/toolchain/protocol.js +74 -0
  411. package/packages/tools/lib/toolchain/protocol.js.map +1 -0
  412. package/packages/tools/lib/toolchain/providers/internal-kpar.d.ts +9 -0
  413. package/packages/tools/lib/toolchain/providers/internal-kpar.d.ts.map +1 -0
  414. package/packages/tools/lib/toolchain/providers/internal-kpar.js +84 -0
  415. package/packages/tools/lib/toolchain/providers/internal-kpar.js.map +1 -0
  416. package/packages/tools/lib/toolchain/providers/internal.d.ts +33 -0
  417. package/packages/tools/lib/toolchain/providers/internal.d.ts.map +1 -0
  418. package/packages/tools/lib/toolchain/providers/internal.js +286 -0
  419. package/packages/tools/lib/toolchain/providers/internal.js.map +1 -0
  420. package/packages/tools/lib/toolchain/providers/sysand.d.ts +12 -0
  421. package/packages/tools/lib/toolchain/providers/sysand.d.ts.map +1 -0
  422. package/packages/tools/lib/toolchain/providers/sysand.js +110 -0
  423. package/packages/tools/lib/toolchain/providers/sysand.js.map +1 -0
  424. package/packages/tools/lib/toolchain/providers/syside.d.ts +24 -0
  425. package/packages/tools/lib/toolchain/providers/syside.d.ts.map +1 -0
  426. package/packages/tools/lib/toolchain/providers/syside.js +208 -0
  427. package/packages/tools/lib/toolchain/providers/syside.js.map +1 -0
  428. package/packages/tools/lib/toolchain/registry.d.ts +192 -0
  429. package/packages/tools/lib/toolchain/registry.d.ts.map +1 -0
  430. package/packages/tools/lib/toolchain/registry.js +130 -0
  431. package/packages/tools/lib/toolchain/registry.js.map +1 -0
  432. package/packages/tools/lib/toolchain/schema.d.ts +30 -0
  433. package/packages/tools/lib/toolchain/schema.d.ts.map +1 -0
  434. package/packages/tools/lib/toolchain/schema.js +112 -0
  435. package/packages/tools/lib/toolchain/schema.js.map +1 -0
  436. package/packages/tools/lib/toolchain/sysmlc-client.d.ts +77 -0
  437. package/packages/tools/lib/toolchain/sysmlc-client.d.ts.map +1 -0
  438. package/packages/tools/lib/toolchain/sysmlc-client.js +0 -0
  439. package/packages/tools/lib/toolchain/sysmlc-client.js.map +1 -0
  440. package/packages/tools/lib/validator/architecture-validator.d.ts +17 -0
  441. package/packages/tools/lib/validator/architecture-validator.d.ts.map +1 -0
  442. package/packages/tools/lib/validator/architecture-validator.js +101 -0
  443. package/packages/tools/lib/validator/architecture-validator.js.map +1 -0
  444. package/packages/tools/lib/validator/builtin-rules.d.ts +16 -0
  445. package/packages/tools/lib/validator/builtin-rules.d.ts.map +1 -0
  446. package/packages/tools/lib/validator/builtin-rules.js +62 -0
  447. package/packages/tools/lib/validator/builtin-rules.js.map +1 -0
  448. package/packages/tools/lib/validator/constraint-eval.d.ts +15 -0
  449. package/packages/tools/lib/validator/constraint-eval.d.ts.map +1 -1
  450. package/packages/tools/lib/validator/constraint-eval.js +62 -7
  451. package/packages/tools/lib/validator/constraint-eval.js.map +1 -1
  452. package/packages/tools/lib/validator/constraint-loader.d.ts +22 -4
  453. package/packages/tools/lib/validator/constraint-loader.d.ts.map +1 -1
  454. package/packages/tools/lib/validator/constraint-loader.js +100 -27
  455. package/packages/tools/lib/validator/constraint-loader.js.map +1 -1
  456. package/packages/tools/lib/validator/rule-engine.d.ts +2 -1
  457. package/packages/tools/lib/validator/rule-engine.d.ts.map +1 -1
  458. package/packages/tools/lib/validator/rule-engine.js +57 -4
  459. package/packages/tools/lib/validator/rule-engine.js.map +1 -1
  460. package/packages/tools/lib/validator/sysml-constraints.d.ts +64 -0
  461. package/packages/tools/lib/validator/sysml-constraints.d.ts.map +1 -0
  462. package/packages/tools/lib/validator/sysml-constraints.js +251 -0
  463. package/packages/tools/lib/validator/sysml-constraints.js.map +1 -0
  464. package/packages/tools/lib/validator/types.d.ts +33 -0
  465. package/packages/tools/lib/validator/types.d.ts.map +1 -1
  466. package/packages/tools/lib/version.d.ts +2 -0
  467. package/packages/tools/lib/version.d.ts.map +1 -0
  468. package/packages/tools/lib/version.js +26 -0
  469. package/packages/tools/lib/version.js.map +1 -0
  470. package/packages/tools/src/grammar/memo-sysml.langium +104 -18
  471. package/packages/tools/lib/model/dimension-filter.d.ts +0 -33
  472. package/packages/tools/lib/model/dimension-filter.d.ts.map +0 -1
  473. package/packages/tools/lib/model/dimension-filter.js +0 -57
  474. package/packages/tools/lib/model/dimension-filter.js.map +0 -1
  475. package/packages/tools/lib/model/toolchain.d.ts +0 -12
  476. package/packages/tools/lib/model/toolchain.d.ts.map +0 -1
  477. package/packages/tools/lib/model/toolchain.js +0 -92
  478. package/packages/tools/lib/model/toolchain.js.map +0 -1
@@ -0,0 +1,1142 @@
1
+ // GENERATED by scripts/vendor-syside-rules.mjs. DO NOT EDIT.
2
+ //
3
+ // `syside 0.10.2 9e2b7f0e89cc4076f432504c3e4183e9a13b2734` — `syside rule list`, vendored so the B4 scoreboard needs no
4
+ // external tool (plan §1.3 rule 1, §5.1.2). Re-run the script when the Syside
5
+ // pin moves; the codes are Syside's and are kept verbatim.
6
+ export const SYSIDE_VERSION = "syside 0.10.2 9e2b7f0e89cc4076f432504c3e4183e9a13b2734";
7
+ export const SYSIDE_RULES = [
8
+ {
9
+ "code": "accept-action-usage-parameters",
10
+ "description": "This checks that accept action usages have at least two input parameters, `payload` and `receiver`.",
11
+ "grammars": [
12
+ "sysml"
13
+ ]
14
+ },
15
+ {
16
+ "code": "actor-membership-owning-type",
17
+ "description": "This checks that actors are owned by requirements or cases.",
18
+ "grammars": [
19
+ "sysml"
20
+ ]
21
+ },
22
+ {
23
+ "code": "annotation-annotating-element",
24
+ "description": "This checks that an `Annotation` either owns, or is owned by its annotating element.",
25
+ "grammars": [
26
+ "kerml",
27
+ "sysml"
28
+ ]
29
+ },
30
+ {
31
+ "code": "assert-constraint-usage-reference",
32
+ "description": "This checks that assert constraints reference other constraints only.",
33
+ "grammars": [
34
+ "sysml"
35
+ ]
36
+ },
37
+ {
38
+ "code": "assignment-action-usage-referent",
39
+ "description": "This checks that assignment action has a `referent` member feature element.",
40
+ "grammars": [
41
+ "sysml"
42
+ ]
43
+ },
44
+ {
45
+ "code": "association-binary-specialization",
46
+ "description": "This checks that nary associations do not specialize `Links::BinaryLink`.",
47
+ "grammars": [
48
+ "kerml",
49
+ "sysml"
50
+ ]
51
+ },
52
+ {
53
+ "code": "association-end-types",
54
+ "description": "This checks that owned ends of associations have exactly one type.",
55
+ "grammars": [
56
+ "kerml",
57
+ "sysml"
58
+ ]
59
+ },
60
+ {
61
+ "code": "association-related-types",
62
+ "description": "This checks that concrete associations have at least two related types, i.e. `ends`.",
63
+ "grammars": [
64
+ "kerml",
65
+ "sysml"
66
+ ]
67
+ },
68
+ {
69
+ "code": "attribute-definition-features",
70
+ "description": "This checks that all attribute definition features are referential (non-composite).",
71
+ "grammars": [
72
+ "sysml"
73
+ ]
74
+ },
75
+ {
76
+ "code": "attribute-usage-features",
77
+ "description": "This checks that all attribute usage features are referential (non-composite).",
78
+ "grammars": [
79
+ "sysml"
80
+ ]
81
+ },
82
+ {
83
+ "code": "behavior-specialization",
84
+ "description": "This checks that `behaviors` do not specialize structures.",
85
+ "grammars": [
86
+ "kerml",
87
+ "sysml"
88
+ ]
89
+ },
90
+ {
91
+ "code": "binding-connector-is-binary",
92
+ "description": "This checks that binding connectors have exactly two ends.",
93
+ "grammars": [
94
+ "kerml",
95
+ "sysml"
96
+ ]
97
+ },
98
+ {
99
+ "code": "case-definition-only-one-objective",
100
+ "description": "This checks that case definitions have at most one owned or inherited objective.",
101
+ "grammars": [
102
+ "sysml"
103
+ ]
104
+ },
105
+ {
106
+ "code": "case-definition-only-one-subject",
107
+ "description": "This checks that case definitions have at most one owned or inherited subject.",
108
+ "grammars": [
109
+ "sysml"
110
+ ]
111
+ },
112
+ {
113
+ "code": "case-definition-subject-parameter-position",
114
+ "description": "This checks that case definition subjects are the first parameter.",
115
+ "grammars": [
116
+ "sysml"
117
+ ]
118
+ },
119
+ {
120
+ "code": "case-usage-only-one-objective",
121
+ "description": "This checks that case usages have at most one owned or inherited objective.",
122
+ "grammars": [
123
+ "sysml"
124
+ ]
125
+ },
126
+ {
127
+ "code": "case-usage-only-one-subject",
128
+ "description": "This checks that case usages have at most one owned or inherited subject.",
129
+ "grammars": [
130
+ "sysml"
131
+ ]
132
+ },
133
+ {
134
+ "code": "case-usage-subject-parameter-position",
135
+ "description": "This checks that case usage subjects are the first parameter.",
136
+ "grammars": [
137
+ "sysml"
138
+ ]
139
+ },
140
+ {
141
+ "code": "class-specialization",
142
+ "description": "This checks that classes do not specialize data types, and non-association classes additionally do not specialize associations.",
143
+ "grammars": [
144
+ "kerml",
145
+ "sysml"
146
+ ]
147
+ },
148
+ {
149
+ "code": "classifier-multiplicity-domain",
150
+ "description": "This checks that multiplicities owned by `classifiers` do not have no `featuring_types`.",
151
+ "grammars": [
152
+ "kerml",
153
+ "sysml"
154
+ ]
155
+ },
156
+ {
157
+ "code": "conjugated-port-definition-conjugated-port-definition-is-empty",
158
+ "description": "This checks that conjugated port definitions themselves have no conjugated port definitions.",
159
+ "grammars": [
160
+ "sysml"
161
+ ]
162
+ },
163
+ {
164
+ "code": "conjugated-port-definition-original-port-definition",
165
+ "description": "This checks that conjugated port definitions are owned their original port definitions, and they are conjugated.",
166
+ "grammars": [
167
+ "sysml"
168
+ ]
169
+ },
170
+ {
171
+ "code": "connector-binary-specialization",
172
+ "description": "This checks that nary connectors do not specialize `Links::BinaryLink`.",
173
+ "grammars": [
174
+ "kerml",
175
+ "sysml"
176
+ ]
177
+ },
178
+ {
179
+ "code": "connector-related-features",
180
+ "description": "This checks that concrete connectors have at least two related features, i.e. `ends`.",
181
+ "grammars": [
182
+ "kerml",
183
+ "sysml"
184
+ ]
185
+ },
186
+ {
187
+ "code": "constructor-expression-no-duplicate-feature-redefinition",
188
+ "description": "This checks that constructor arguments are bound only once.",
189
+ "grammars": [
190
+ "kerml",
191
+ "sysml"
192
+ ]
193
+ },
194
+ {
195
+ "code": "constructor-expression-owned-features",
196
+ "description": "This checks that constructors expressions have no other features other than its `result`.",
197
+ "grammars": [
198
+ "kerml",
199
+ "sysml"
200
+ ]
201
+ },
202
+ {
203
+ "code": "constructor-expression-result-feature-redefinition",
204
+ "description": "This checks that constructors arguments are bound to the instantiated type features only, and only once, i.e. that there are no extraneous or unrelated arguments.",
205
+ "grammars": [
206
+ "kerml",
207
+ "sysml"
208
+ ]
209
+ },
210
+ {
211
+ "code": "control-node-owning-type",
212
+ "description": "This checks that control nodes are owned by actions.",
213
+ "grammars": [
214
+ "sysml"
215
+ ]
216
+ },
217
+ {
218
+ "code": "cross-subsetting-crossed-feature",
219
+ "description": "This checks that `CrossSubsettings` always chain two features, and if declared on one of two `end` features, starts from the opposite `end` feature.",
220
+ "grammars": [
221
+ "kerml",
222
+ "sysml"
223
+ ]
224
+ },
225
+ {
226
+ "code": "cross-subsetting-crossing-feature",
227
+ "description": "This checks that `CrossSubsettings` are declared on one of two or more `end` features.",
228
+ "grammars": [
229
+ "kerml",
230
+ "sysml"
231
+ ]
232
+ },
233
+ {
234
+ "code": "data-type-specialization",
235
+ "description": "This checks that data types do not specialize classes or associations.",
236
+ "grammars": [
237
+ "kerml",
238
+ "sysml"
239
+ ]
240
+ },
241
+ {
242
+ "code": "definition-variation-owned-feature-membership",
243
+ "description": "This checks that `variation` definitions have no owned features. `variants` are member features and are allowed.",
244
+ "grammars": [
245
+ "sysml"
246
+ ]
247
+ },
248
+ {
249
+ "code": "definition-variation-specialization",
250
+ "description": "This checks that `variation` definitions do not specialize other `variations`.",
251
+ "grammars": [
252
+ "sysml"
253
+ ]
254
+ },
255
+ {
256
+ "code": "element-filter-membership-condition-is-boolean",
257
+ "description": "This checks that element filter conditions are predicates, i.e. their expressions return boolean.",
258
+ "grammars": [
259
+ "kerml",
260
+ "sysml"
261
+ ]
262
+ },
263
+ {
264
+ "code": "element-filter-membership-condition-is-model-level-evaluable",
265
+ "description": "This checks that element filter condition expressions are model-level evaluable.",
266
+ "grammars": [
267
+ "kerml",
268
+ "sysml"
269
+ ]
270
+ },
271
+ {
272
+ "code": "element-is-implied-included",
273
+ "description": "This checks that an incomplete element has no implied relationships.",
274
+ "grammars": [
275
+ "kerml",
276
+ "sysml"
277
+ ]
278
+ },
279
+ {
280
+ "code": "event-occurrence-usage-reference",
281
+ "description": "This checks that event occurrences reference only other occurrences.",
282
+ "grammars": [
283
+ "sysml"
284
+ ]
285
+ },
286
+ {
287
+ "code": "exhibit-state-usage-reference",
288
+ "description": "This checks that exhibit state reference other states only.",
289
+ "grammars": [
290
+ "sysml"
291
+ ]
292
+ },
293
+ {
294
+ "code": "expose-owning-namespace",
295
+ "description": "This checks that expose are owned by view usages.",
296
+ "grammars": [
297
+ "sysml"
298
+ ]
299
+ },
300
+ {
301
+ "code": "expression-result-expression-membership",
302
+ "description": "This checks that expressions have at most one owned or inherited result expression membership.",
303
+ "grammars": [
304
+ "kerml",
305
+ "sysml"
306
+ ]
307
+ },
308
+ {
309
+ "code": "expression-return-parameter-membership",
310
+ "description": "This checks that expressions have at most one `return` parameter.",
311
+ "grammars": [
312
+ "kerml",
313
+ "sysml"
314
+ ]
315
+ },
316
+ {
317
+ "code": "feature-chain-expression-conformance",
318
+ "description": "This checks that feature chain expressions segments are accessible from the previous segment.",
319
+ "grammars": [
320
+ "kerml",
321
+ "sysml"
322
+ ]
323
+ },
324
+ {
325
+ "code": "feature-chaining-feature-conformance",
326
+ "description": "This checks that all feature chain segments are accessible from the previous segment.",
327
+ "grammars": [
328
+ "kerml",
329
+ "sysml"
330
+ ]
331
+ },
332
+ {
333
+ "code": "feature-chaining-feature-not-one",
334
+ "description": "This checks that features have either no, or two or more owned feature `chainings`.",
335
+ "grammars": [
336
+ "kerml",
337
+ "sysml"
338
+ ]
339
+ },
340
+ {
341
+ "code": "feature-chaining-features-not-self",
342
+ "description": "This checks that features do not `chain` themselves directly.",
343
+ "grammars": [
344
+ "kerml",
345
+ "sysml"
346
+ ]
347
+ },
348
+ {
349
+ "code": "feature-constant-is-variable",
350
+ "description": "This checks that `constant` features are also `variable`.",
351
+ "grammars": [
352
+ "kerml",
353
+ "sysml"
354
+ ]
355
+ },
356
+ {
357
+ "code": "feature-cross-feature-specialization",
358
+ "description": "This checks that cross features specialize cross features of the redefined features of the crossing features.",
359
+ "grammars": [
360
+ "kerml",
361
+ "sysml"
362
+ ]
363
+ },
364
+ {
365
+ "code": "feature-cross-feature-type",
366
+ "description": "This checks that cross features have the same types as the crossing features.",
367
+ "grammars": [
368
+ "kerml",
369
+ "sysml"
370
+ ]
371
+ },
372
+ {
373
+ "code": "feature-crossing-specialization",
374
+ "description": "This checks that `end` features with owned cross features have no explicit crossings.",
375
+ "grammars": [
376
+ "kerml",
377
+ "sysml"
378
+ ]
379
+ },
380
+ {
381
+ "code": "feature-end-multiplicity",
382
+ "description": "This checks that `end` features have multiplicity of `1..1`.",
383
+ "grammars": [
384
+ "kerml",
385
+ "sysml"
386
+ ]
387
+ },
388
+ {
389
+ "code": "feature-end-no-direction",
390
+ "description": "This checks that `end` features have no `directions`.",
391
+ "grammars": [
392
+ "kerml",
393
+ "sysml"
394
+ ]
395
+ },
396
+ {
397
+ "code": "feature-end-not-derived-abstract-composite-or-portion",
398
+ "description": "This checks that `end` features are not `derived`, `abstract`, `composite`, or `portion`.",
399
+ "grammars": [
400
+ "kerml",
401
+ "sysml"
402
+ ]
403
+ },
404
+ {
405
+ "code": "feature-is-variable",
406
+ "description": "This checks that `variable` features are owned by occurrences.",
407
+ "grammars": [
408
+ "kerml",
409
+ "sysml"
410
+ ]
411
+ },
412
+ {
413
+ "code": "feature-multiplicity-domain",
414
+ "description": "This checks that the feature multiplicity has the same featuring types as the owning feature.",
415
+ "grammars": [
416
+ "kerml",
417
+ "sysml"
418
+ ]
419
+ },
420
+ {
421
+ "code": "feature-owned-cross-subsetting",
422
+ "description": "This checks that features have at most one cross subsetting.",
423
+ "grammars": [
424
+ "kerml",
425
+ "sysml"
426
+ ]
427
+ },
428
+ {
429
+ "code": "feature-owned-reference-subsetting",
430
+ "description": "This checks that features have at most one owned reference subsetting.",
431
+ "grammars": [
432
+ "kerml",
433
+ "sysml"
434
+ ]
435
+ },
436
+ {
437
+ "code": "feature-portion-not-variable",
438
+ "description": "This checks that `portion` features are not `variable`.",
439
+ "grammars": [
440
+ "kerml",
441
+ "sysml"
442
+ ]
443
+ },
444
+ {
445
+ "code": "feature-reference-expression-referent-is-feature",
446
+ "description": "This checks that the referent of feature reference expression is a feature.",
447
+ "grammars": [
448
+ "kerml",
449
+ "sysml"
450
+ ]
451
+ },
452
+ {
453
+ "code": "feature-specialization",
454
+ "description": "This checks that feature directly or indirectly specialize `Base::things`.",
455
+ "grammars": [
456
+ "kerml",
457
+ "sysml"
458
+ ]
459
+ },
460
+ {
461
+ "code": "feature-value-is-initial",
462
+ "description": "This checks that initial feature values are only owned by `variable` features.",
463
+ "grammars": [
464
+ "kerml",
465
+ "sysml"
466
+ ]
467
+ },
468
+ {
469
+ "code": "feature-value-overriding",
470
+ "description": "This checks that redefined features have either no feature values, or `default` feature values if the redefining feature itself has feature value.",
471
+ "grammars": [
472
+ "kerml",
473
+ "sysml"
474
+ ]
475
+ },
476
+ {
477
+ "code": "flow-definition-connection-ends",
478
+ "description": "This checks that flow definitions have at most two flow ends.",
479
+ "grammars": [
480
+ "sysml"
481
+ ]
482
+ },
483
+ {
484
+ "code": "flow-end-nested-feature",
485
+ "description": "This checks that flow ends have exactly one owned feature.",
486
+ "grammars": [
487
+ "kerml",
488
+ "sysml"
489
+ ]
490
+ },
491
+ {
492
+ "code": "flow-end-owning-type",
493
+ "description": "This checks that flow ends are owned by flows only.",
494
+ "grammars": [
495
+ "kerml",
496
+ "sysml"
497
+ ]
498
+ },
499
+ {
500
+ "code": "flow-payload-feature",
501
+ "description": "This checks that flows owns at most one payload feature.",
502
+ "grammars": [
503
+ "kerml",
504
+ "sysml"
505
+ ]
506
+ },
507
+ {
508
+ "code": "for-loop-action-usage-loop-variable",
509
+ "description": "This checks that for loops have loop variables.",
510
+ "grammars": [
511
+ "sysml"
512
+ ]
513
+ },
514
+ {
515
+ "code": "for-loop-action-usage-parameters",
516
+ "description": "This checks that for loops have sequence and body action parameters.",
517
+ "grammars": [
518
+ "sysml"
519
+ ]
520
+ },
521
+ {
522
+ "code": "function-result-expression-membership",
523
+ "description": "This checks that functions have at most one owned or inherited result expression membership.",
524
+ "grammars": [
525
+ "kerml",
526
+ "sysml"
527
+ ]
528
+ },
529
+ {
530
+ "code": "function-return-parameter-membership",
531
+ "description": "This checks that functions have at most one `return` parameter.",
532
+ "grammars": [
533
+ "kerml",
534
+ "sysml"
535
+ ]
536
+ },
537
+ {
538
+ "code": "global-namespace-distinguishability",
539
+ "description": "This checks that all top-level member names are globally unique.",
540
+ "grammars": [
541
+ "kerml",
542
+ "sysml"
543
+ ]
544
+ },
545
+ {
546
+ "code": "if-action-usage-parameters",
547
+ "description": "This checks that for if actions have an argument and then action.",
548
+ "grammars": [
549
+ "sysml"
550
+ ]
551
+ },
552
+ {
553
+ "code": "import-explicit-visibility",
554
+ "description": "This checks that imports have an explicit visibility.",
555
+ "grammars": [
556
+ "kerml",
557
+ "sysml"
558
+ ]
559
+ },
560
+ {
561
+ "code": "import-top-level-visibility",
562
+ "description": "This checks that top-level imports have `private` visibility.",
563
+ "grammars": [
564
+ "kerml",
565
+ "sysml"
566
+ ]
567
+ },
568
+ {
569
+ "code": "include-use-case-usage-reference",
570
+ "description": "This checks that include use cases reference other use cases only.",
571
+ "grammars": [
572
+ "sysml"
573
+ ]
574
+ },
575
+ {
576
+ "code": "instantiation-expression-instantiated-type",
577
+ "description": "This checks that instantiation expressions have an instantiated type.",
578
+ "grammars": [
579
+ "kerml",
580
+ "sysml"
581
+ ]
582
+ },
583
+ {
584
+ "code": "invocation-expression-instantiated-type",
585
+ "description": "This checks that invocation expression invoke other `behaviors`, or features typed by a single `behavior`.",
586
+ "grammars": [
587
+ "kerml",
588
+ "sysml"
589
+ ]
590
+ },
591
+ {
592
+ "code": "invocation-expression-no-duplicate-parameter-redefinition",
593
+ "description": "This checks that invocation arguments are bound only once.",
594
+ "grammars": [
595
+ "kerml",
596
+ "sysml"
597
+ ]
598
+ },
599
+ {
600
+ "code": "invocation-expression-owned-features",
601
+ "description": "This checks that owned invocation features are all input features, or a single `result`.",
602
+ "grammars": [
603
+ "kerml",
604
+ "sysml"
605
+ ]
606
+ },
607
+ {
608
+ "code": "invocation-expression-parameter-redefinition",
609
+ "description": "This checks that invocation arguments are bound to the instantiated type input features only, and only once, i.e. that there are no extraneous or unrelated arguments.",
610
+ "grammars": [
611
+ "kerml",
612
+ "sysml"
613
+ ]
614
+ },
615
+ {
616
+ "code": "metadata-feature-annotated-element",
617
+ "description": "This checks that metadata is applied only to elements matching its `annotatedElement` constraints.",
618
+ "grammars": [
619
+ "kerml",
620
+ "sysml"
621
+ ]
622
+ },
623
+ {
624
+ "code": "metadata-feature-body",
625
+ "description": "This checks that feature directly or indirectly owned by metadata have no declared names, redefine a single inherited feature, and have no values or model-level evaluable values.",
626
+ "grammars": [
627
+ "kerml",
628
+ "sysml"
629
+ ]
630
+ },
631
+ {
632
+ "code": "metadata-feature-metaclass",
633
+ "description": "This checks that metadata features are typed by exactly one metaclass.",
634
+ "grammars": [
635
+ "kerml",
636
+ "sysml"
637
+ ]
638
+ },
639
+ {
640
+ "code": "metadata-feature-metaclass-not-abstract",
641
+ "description": "This checks that metadata is typed by a concrete metaclass.",
642
+ "grammars": [
643
+ "kerml",
644
+ "sysml"
645
+ ]
646
+ },
647
+ {
648
+ "code": "multiplicity-range-bound-result-types",
649
+ "description": "This checks that multiplicity range bounds expression is an integer.",
650
+ "grammars": [
651
+ "kerml",
652
+ "sysml"
653
+ ]
654
+ },
655
+ {
656
+ "code": "multiplicity-range-bounds",
657
+ "description": "This checks that model-level evaluable multiplicity range bounds are non-negative.",
658
+ "grammars": [
659
+ "kerml",
660
+ "sysml"
661
+ ]
662
+ },
663
+ {
664
+ "code": "namespace-distinguishability",
665
+ "description": "This checks that namespace member names are unambiguous.",
666
+ "grammars": [
667
+ "kerml",
668
+ "sysml"
669
+ ]
670
+ },
671
+ {
672
+ "code": "objective-membership-is-composite",
673
+ "description": "This checks that objectives are always composite.",
674
+ "grammars": [
675
+ "sysml"
676
+ ]
677
+ },
678
+ {
679
+ "code": "objective-membership-owning-type",
680
+ "description": "This checks that stakeholders are owned by cases.",
681
+ "grammars": [
682
+ "sysml"
683
+ ]
684
+ },
685
+ {
686
+ "code": "occurrence-usage-individual-definition",
687
+ "description": "This checks that occurrence usages are typed by at most one `individual` occurrence definition.",
688
+ "grammars": [
689
+ "sysml"
690
+ ]
691
+ },
692
+ {
693
+ "code": "occurrence-usage-individual-usage",
694
+ "description": "This checks that `individual` occurrence usages are typed by `individual` occurrence definitions.",
695
+ "grammars": [
696
+ "sysml"
697
+ ]
698
+ },
699
+ {
700
+ "code": "occurrence-usage-portion-kind",
701
+ "description": "This checks that `portion` occurrence usages are owned an occurrence.",
702
+ "grammars": [
703
+ "sysml"
704
+ ]
705
+ },
706
+ {
707
+ "code": "parameter-membership-owning-type",
708
+ "description": "This checks that parameter memberships are owned by `behaviors`, steps, or results of constructor expressions.",
709
+ "grammars": [
710
+ "kerml",
711
+ "sysml"
712
+ ]
713
+ },
714
+ {
715
+ "code": "perform-action-usage-reference",
716
+ "description": "This checks that perform actions reference other actions only.",
717
+ "grammars": [
718
+ "sysml"
719
+ ]
720
+ },
721
+ {
722
+ "code": "port-definition-owned-usages-not-composite",
723
+ "description": "This checks that port definitions only own referential (non-composite) usages or other ports.",
724
+ "grammars": [
725
+ "sysml"
726
+ ]
727
+ },
728
+ {
729
+ "code": "port-usage-nested-usages-not-composite",
730
+ "description": "This checks that port usages only own referential (non-composite) usages or other ports.",
731
+ "grammars": [
732
+ "sysml"
733
+ ]
734
+ },
735
+ {
736
+ "code": "quantity-operator-expression",
737
+ "description": "This checks that the second argument to quantity expressions is a measurement unit.",
738
+ "grammars": [
739
+ "sysml"
740
+ ]
741
+ },
742
+ {
743
+ "code": "redefinition-direction-conformance",
744
+ "description": "This checks that directed features are only redefined by features with compatible directions.",
745
+ "grammars": [
746
+ "kerml",
747
+ "sysml"
748
+ ]
749
+ },
750
+ {
751
+ "code": "redefinition-end-conformance",
752
+ "description": "This checks that `end` features are only redefined by other `end` features.",
753
+ "grammars": [
754
+ "kerml",
755
+ "sysml"
756
+ ]
757
+ },
758
+ {
759
+ "code": "redefinition-featuring-types",
760
+ "description": "This checks that redefining feature featuring types different to the featuring types of the redefined feature.",
761
+ "grammars": [
762
+ "kerml",
763
+ "sysml"
764
+ ]
765
+ },
766
+ {
767
+ "code": "requirement-constraint-membership-is-composite",
768
+ "description": "This checks that requirement constraints are always composite.",
769
+ "grammars": [
770
+ "sysml"
771
+ ]
772
+ },
773
+ {
774
+ "code": "requirement-constraint-membership-owning-type",
775
+ "description": "This checks that requirement constraints are owned by requirements.",
776
+ "grammars": [
777
+ "sysml"
778
+ ]
779
+ },
780
+ {
781
+ "code": "requirement-definition-only-one-subject",
782
+ "description": "This checks that requirement definitions have at most one owned or inherited subject.",
783
+ "grammars": [
784
+ "sysml"
785
+ ]
786
+ },
787
+ {
788
+ "code": "requirement-definition-subject-parameter-position",
789
+ "description": "This checks that requirement definition subjects are the first parameter.",
790
+ "grammars": [
791
+ "sysml"
792
+ ]
793
+ },
794
+ {
795
+ "code": "requirement-usage-only-one-subject",
796
+ "description": "This checks that requirement usages have at most one owned or inherited subject.",
797
+ "grammars": [
798
+ "sysml"
799
+ ]
800
+ },
801
+ {
802
+ "code": "requirement-usage-subject-parameter-position",
803
+ "description": "This checks that requirement usage subjects are the first parameter.",
804
+ "grammars": [
805
+ "sysml"
806
+ ]
807
+ },
808
+ {
809
+ "code": "requirement-verification-membership-owning-type",
810
+ "description": "This checks that requirement verifications are owned by objectives.",
811
+ "grammars": [
812
+ "sysml"
813
+ ]
814
+ },
815
+ {
816
+ "code": "result-expression-membership-owning-type",
817
+ "description": "This checks that result expression memberships are owned by functions or expressions.",
818
+ "grammars": [
819
+ "kerml",
820
+ "sysml"
821
+ ]
822
+ },
823
+ {
824
+ "code": "return-parameter-membership-owning-type",
825
+ "description": "This checks that return parameter memberships are owned by functions or expressions.",
826
+ "grammars": [
827
+ "kerml",
828
+ "sysml"
829
+ ]
830
+ },
831
+ {
832
+ "code": "satisfy-requirement-usage-reference",
833
+ "description": "This checks that satisfy requirements reference other requirements only.",
834
+ "grammars": [
835
+ "sysml"
836
+ ]
837
+ },
838
+ {
839
+ "code": "send-action-parameters",
840
+ "description": "This checks that send actions have a payload and sender.",
841
+ "grammars": [
842
+ "sysml"
843
+ ]
844
+ },
845
+ {
846
+ "code": "specialization-specific-not-conjugated",
847
+ "description": "This checks that a specialized type is not conjugated.",
848
+ "grammars": [
849
+ "kerml",
850
+ "sysml"
851
+ ]
852
+ },
853
+ {
854
+ "code": "stakeholder-membership-owning-type",
855
+ "description": "This checks that stakeholders are owned by requirements.",
856
+ "grammars": [
857
+ "sysml"
858
+ ]
859
+ },
860
+ {
861
+ "code": "standard-library-package",
862
+ "description": "This checks that user library packages are not marked `standard`.",
863
+ "grammars": [
864
+ "kerml",
865
+ "sysml"
866
+ ]
867
+ },
868
+ {
869
+ "code": "state-definition-parallel-subactions",
870
+ "description": "This checks that parallel state definitions have no owned transitions or successions.",
871
+ "grammars": [
872
+ "sysml"
873
+ ]
874
+ },
875
+ {
876
+ "code": "state-definition-state-subaction-kind",
877
+ "description": "This checks that state definitions own at most one of each `entry`, `do`, and `exit` subactions.",
878
+ "grammars": [
879
+ "sysml"
880
+ ]
881
+ },
882
+ {
883
+ "code": "state-subaction-membership-owning-type",
884
+ "description": "This checks that state subactions are owned only by states.",
885
+ "grammars": [
886
+ "sysml"
887
+ ]
888
+ },
889
+ {
890
+ "code": "state-usage-parallel-subactions",
891
+ "description": "This checks that parallel state usages have no owned transitions or successions.",
892
+ "grammars": [
893
+ "sysml"
894
+ ]
895
+ },
896
+ {
897
+ "code": "state-usage-state-subaction-kind",
898
+ "description": "This checks that state usages own at most one of each `entry`, `do`, and `exit` subactions.",
899
+ "grammars": [
900
+ "sysml"
901
+ ]
902
+ },
903
+ {
904
+ "code": "structure-specialization",
905
+ "description": "This checks that structures do not specialize behaviours.",
906
+ "grammars": [
907
+ "kerml",
908
+ "sysml"
909
+ ]
910
+ },
911
+ {
912
+ "code": "subject-membership-owning-type",
913
+ "description": "This checks that subjects are owned by requirements or cases.",
914
+ "grammars": [
915
+ "sysml"
916
+ ]
917
+ },
918
+ {
919
+ "code": "subsetting-constant-conformance",
920
+ "description": "This checks that `variable` subsetting features are also `constant` if they subset a `constant` feature.",
921
+ "grammars": [
922
+ "kerml",
923
+ "sysml"
924
+ ]
925
+ },
926
+ {
927
+ "code": "subsetting-featuring-types",
928
+ "description": "This checks that subsetted features are accessible from the subsetting features, e.g. through inheritance.",
929
+ "grammars": [
930
+ "kerml",
931
+ "sysml"
932
+ ]
933
+ },
934
+ {
935
+ "code": "subsetting-uniqueness-conformance",
936
+ "description": "This checks that unique features are only subsetted by other unique features.",
937
+ "grammars": [
938
+ "kerml",
939
+ "sysml"
940
+ ]
941
+ },
942
+ {
943
+ "code": "transition-feature-membership-effect-action",
944
+ "description": "This checks that `do` transition member is an action.",
945
+ "grammars": [
946
+ "sysml"
947
+ ]
948
+ },
949
+ {
950
+ "code": "transition-feature-membership-guard-expression",
951
+ "description": "This checks that `if` transition member is a boolean expression.",
952
+ "grammars": [
953
+ "sysml"
954
+ ]
955
+ },
956
+ {
957
+ "code": "transition-feature-membership-owning-type",
958
+ "description": "This checks that transition feature memberships are owned by transitions.",
959
+ "grammars": [
960
+ "sysml"
961
+ ]
962
+ },
963
+ {
964
+ "code": "transition-feature-membership-trigger-action",
965
+ "description": "This checks that `accept` transition member is an accept action.",
966
+ "grammars": [
967
+ "sysml"
968
+ ]
969
+ },
970
+ {
971
+ "code": "transition-usage-parameters",
972
+ "description": "This checks that transitions have an implicit transition link source, and if they have `accept` actions - also have an implicit `payload`.",
973
+ "grammars": [
974
+ "sysml"
975
+ ]
976
+ },
977
+ {
978
+ "code": "transition-usage-succession",
979
+ "description": "This checks that transitions transition to an action usage.",
980
+ "grammars": [
981
+ "sysml"
982
+ ]
983
+ },
984
+ {
985
+ "code": "transition-usage-trigger-actions",
986
+ "description": "This checks that transitions that start not from states have no trigger actions (`accept`).",
987
+ "grammars": [
988
+ "sysml"
989
+ ]
990
+ },
991
+ {
992
+ "code": "trigger-invocation-expression-after-argument",
993
+ "description": "This checks that `after` expression is a duration value.",
994
+ "grammars": [
995
+ "sysml"
996
+ ]
997
+ },
998
+ {
999
+ "code": "trigger-invocation-expression-at-argument",
1000
+ "description": "This checks that `at` expression is a time instant value.",
1001
+ "grammars": [
1002
+ "sysml"
1003
+ ]
1004
+ },
1005
+ {
1006
+ "code": "trigger-invocation-expression-when-argument",
1007
+ "description": "This checks that `when` expression has a boolean result type.",
1008
+ "grammars": [
1009
+ "sysml"
1010
+ ]
1011
+ },
1012
+ {
1013
+ "code": "type-at-most-one-conjugator",
1014
+ "description": "This checks that types have at most one conjugation relationship.",
1015
+ "grammars": [
1016
+ "kerml",
1017
+ "sysml"
1018
+ ]
1019
+ },
1020
+ {
1021
+ "code": "type-differencing-types-not-self",
1022
+ "description": "This checks that types do not `difference` themselves directly.",
1023
+ "grammars": [
1024
+ "kerml"
1025
+ ]
1026
+ },
1027
+ {
1028
+ "code": "type-error",
1029
+ "description": "This checks that assigned values conform to the types of the element they are being assigned to.",
1030
+ "grammars": [
1031
+ "kerml",
1032
+ "sysml"
1033
+ ]
1034
+ },
1035
+ {
1036
+ "code": "type-intersecting-types-not-self",
1037
+ "description": "This checks that types do not `intersect` themselves directly.",
1038
+ "grammars": [
1039
+ "kerml"
1040
+ ]
1041
+ },
1042
+ {
1043
+ "code": "type-owned-differencing-not-one",
1044
+ "description": "This checks that types have either no, or two or more owned `differencings`.",
1045
+ "grammars": [
1046
+ "kerml"
1047
+ ]
1048
+ },
1049
+ {
1050
+ "code": "type-owned-intersecting-not-one",
1051
+ "description": "This checks that types have either no, or two or more owned `intersectings`.",
1052
+ "grammars": [
1053
+ "kerml"
1054
+ ]
1055
+ },
1056
+ {
1057
+ "code": "type-owned-multiplicity",
1058
+ "description": "This checks that types have at most one owned `multiplicity`.",
1059
+ "grammars": [
1060
+ "kerml"
1061
+ ]
1062
+ },
1063
+ {
1064
+ "code": "type-owned-unioning-not-one",
1065
+ "description": "This checks that types have either no, or two or more owned `unionings`.",
1066
+ "grammars": [
1067
+ "kerml"
1068
+ ]
1069
+ },
1070
+ {
1071
+ "code": "type-specialization",
1072
+ "description": "This checks that types directly or indirectly specialize `Base::Anything`.",
1073
+ "grammars": [
1074
+ "kerml",
1075
+ "sysml"
1076
+ ]
1077
+ },
1078
+ {
1079
+ "code": "type-unioning-types-not-self",
1080
+ "description": "This checks that types do not `union` themselves directly.",
1081
+ "grammars": [
1082
+ "kerml"
1083
+ ]
1084
+ },
1085
+ {
1086
+ "code": "usage-feature-typing",
1087
+ "description": "This checks that usages are typed by classifiers instead of other features.",
1088
+ "grammars": [
1089
+ "sysml"
1090
+ ]
1091
+ },
1092
+ {
1093
+ "code": "usage-variation-owned-feature-membership",
1094
+ "description": "This checks that `variation` usages have no owned features. `variants` are member features and are allowed.",
1095
+ "grammars": [
1096
+ "sysml"
1097
+ ]
1098
+ },
1099
+ {
1100
+ "code": "usage-variation-specialization",
1101
+ "description": "This checks that `variation` usages do not specialize other `variations`.",
1102
+ "grammars": [
1103
+ "sysml"
1104
+ ]
1105
+ },
1106
+ {
1107
+ "code": "variant-membership-owning-namespace",
1108
+ "description": "This checks that `variants` are owned by `variations`, or enum definitions which are implicitly variations.",
1109
+ "grammars": [
1110
+ "sysml"
1111
+ ]
1112
+ },
1113
+ {
1114
+ "code": "view-definition-only-one-view-rendering",
1115
+ "description": "This checks that view definitions have at most one owned or inherited view rendering.",
1116
+ "grammars": [
1117
+ "sysml"
1118
+ ]
1119
+ },
1120
+ {
1121
+ "code": "view-rendering-membership-owning-type",
1122
+ "description": "This checks that view renderings are owned by views.",
1123
+ "grammars": [
1124
+ "sysml"
1125
+ ]
1126
+ },
1127
+ {
1128
+ "code": "view-usage-only-one-view-rendering",
1129
+ "description": "This checks that view usages have at most one owned or inherited view rendering.",
1130
+ "grammars": [
1131
+ "sysml"
1132
+ ]
1133
+ },
1134
+ {
1135
+ "code": "while-loop-action-usage-parameters",
1136
+ "description": "This checks that while loops have at least an argument and a body action parameters.",
1137
+ "grammars": [
1138
+ "sysml"
1139
+ ]
1140
+ }
1141
+ ];
1142
+ //# sourceMappingURL=syside-rules.js.map