@blockml/framework 0.1.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 (122) hide show
  1. package/blocks/org/blockml/bml/framework/FrameworkType.bml +44 -0
  2. package/blocks/org/blockml/bml/framework/Library.bml +127 -0
  3. package/blocks/org/blockml/bml/framework/README.bml +71 -0
  4. package/blocks/org/blockml/bml/framework/capability/BootstrapTypeRegistry.bml +53 -0
  5. package/blocks/org/blockml/bml/framework/capability/CollectBaseTypeChain.bml +50 -0
  6. package/blocks/org/blockml/bml/framework/capability/DefaultBootstrapPaths.bml +47 -0
  7. package/blocks/org/blockml/bml/framework/capability/ForkBom.bml +51 -0
  8. package/blocks/org/blockml/bml/framework/capability/GetExportedFqns.bml +37 -0
  9. package/blocks/org/blockml/bml/framework/capability/GetPropertyNumericValue.bml +47 -0
  10. package/blocks/org/blockml/bml/framework/capability/IsLiteralValue.bml +47 -0
  11. package/blocks/org/blockml/bml/framework/capability/MemberIdentityKey.bml +47 -0
  12. package/blocks/org/blockml/bml/framework/capability/ParseExpression.bml +51 -0
  13. package/blocks/org/blockml/bml/framework/capability/ResolveContracts.bml +55 -0
  14. package/blocks/org/blockml/bml/framework/capability/ResolveEffectiveMembers.bml +56 -0
  15. package/blocks/org/blockml/bml/framework/capability/RootFqnByFilePath.bml +33 -0
  16. package/blocks/org/blockml/bml/framework/capability/RootFqns.bml +30 -0
  17. package/blocks/org/blockml/bml/framework/capability/TypeRegistry.bml +43 -0
  18. package/blocks/org/blockml/bml/framework/capability/ValidateConstraints.bml +54 -0
  19. package/blocks/org/blockml/bml/framework/capability/ValidateEmbeddedBlocks.bml +31 -0
  20. package/blocks/org/blockml/bml/framework/capability/ValidateInstances.bml +34 -0
  21. package/blocks/org/blockml/bml/framework/capability/ValidatePresets.bml +34 -0
  22. package/blocks/org/blockml/bml/framework/capability/ValidateReadOnly.bml +34 -0
  23. package/blocks/org/blockml/bml/framework/capability/ValidateTypes.bml +55 -0
  24. package/blocks/org/blockml/bml/framework/capability/ValidateVersions.bml +54 -0
  25. package/blocks/org/blockml/bml/framework/capability/ValidateVisibility.bml +34 -0
  26. package/blocks/org/blockml/bml/framework/config/FrameworkDiagnosticCodes.bml +44 -0
  27. package/blocks/org/blockml/bml/framework/documentation/ArchitectureOverview.bml +60 -0
  28. package/blocks/org/blockml/bml/framework/documentation/ConstraintValidation.bml +59 -0
  29. package/blocks/org/blockml/bml/framework/documentation/Diagnostics.bml +68 -0
  30. package/blocks/org/blockml/bml/framework/documentation/EffectiveMembers.bml +61 -0
  31. package/blocks/org/blockml/bml/framework/documentation/ExpressionParsing.bml +53 -0
  32. package/blocks/org/blockml/bml/framework/documentation/Introduction.bml +56 -0
  33. package/blocks/org/blockml/bml/framework/documentation/LayerSeparation.bml +59 -0
  34. package/blocks/org/blockml/bml/framework/documentation/PackageOwnership.bml +56 -0
  35. package/blocks/org/blockml/bml/framework/documentation/PublicApi.bml +72 -0
  36. package/blocks/org/blockml/bml/framework/documentation/ScopeExclusions.bml +52 -0
  37. package/blocks/org/blockml/bml/framework/documentation/TypeRegistryBootstrap.bml +64 -0
  38. package/blocks/org/blockml/bml/framework/expression/ArrayExpressionNode.bml +48 -0
  39. package/blocks/org/blockml/bml/framework/expression/BinaryExpressionNode.bml +54 -0
  40. package/blocks/org/blockml/bml/framework/expression/CallExpressionNode.bml +51 -0
  41. package/blocks/org/blockml/bml/framework/expression/ExpressionNode.bml +44 -0
  42. package/blocks/org/blockml/bml/framework/expression/LiteralExpressionNode.bml +48 -0
  43. package/blocks/org/blockml/bml/framework/expression/ObjectExpressionNode.bml +48 -0
  44. package/blocks/org/blockml/bml/framework/expression/ParseExpressionError.bml +47 -0
  45. package/blocks/org/blockml/bml/framework/expression/ParseExpressionOutcome.bml +50 -0
  46. package/blocks/org/blockml/bml/framework/expression/ParseExpressionResult.bml +47 -0
  47. package/blocks/org/blockml/bml/framework/expression/PropertyExpressionNode.bml +48 -0
  48. package/blocks/org/blockml/bml/framework/registry/BootstrapOptions.bml +50 -0
  49. package/blocks/org/blockml/bml/framework/registry/BootstrapResult.bml +53 -0
  50. package/dist/expression/parse-expression.d.ts +3 -0
  51. package/dist/expression/parse-expression.d.ts.map +1 -0
  52. package/dist/expression/parse-expression.js +192 -0
  53. package/dist/expression/parse-expression.js.map +1 -0
  54. package/dist/expression/types.d.ts +44 -0
  55. package/dist/expression/types.d.ts.map +1 -0
  56. package/dist/expression/types.js +2 -0
  57. package/dist/expression/types.js.map +1 -0
  58. package/dist/fork/fork-bom.d.ts +4 -0
  59. package/dist/fork/fork-bom.d.ts.map +1 -0
  60. package/dist/fork/fork-bom.js +5 -0
  61. package/dist/fork/fork-bom.js.map +1 -0
  62. package/dist/index.d.ts +17 -0
  63. package/dist/index.d.ts.map +1 -0
  64. package/dist/index.js +16 -0
  65. package/dist/index.js.map +1 -0
  66. package/dist/registry/bootstrap.d.ts +19 -0
  67. package/dist/registry/bootstrap.d.ts.map +1 -0
  68. package/dist/registry/bootstrap.js +49 -0
  69. package/dist/registry/bootstrap.js.map +1 -0
  70. package/dist/registry/library-bootstrap.d.ts +14 -0
  71. package/dist/registry/library-bootstrap.d.ts.map +1 -0
  72. package/dist/registry/library-bootstrap.js +231 -0
  73. package/dist/registry/library-bootstrap.js.map +1 -0
  74. package/dist/registry/library-exports.d.ts +4 -0
  75. package/dist/registry/library-exports.d.ts.map +1 -0
  76. package/dist/registry/library-exports.js +10 -0
  77. package/dist/registry/library-exports.js.map +1 -0
  78. package/dist/registry/root-fqn.d.ts +5 -0
  79. package/dist/registry/root-fqn.d.ts.map +1 -0
  80. package/dist/registry/root-fqn.js +26 -0
  81. package/dist/registry/root-fqn.js.map +1 -0
  82. package/dist/registry/type-registry.d.ts +11 -0
  83. package/dist/registry/type-registry.d.ts.map +1 -0
  84. package/dist/registry/type-registry.js +27 -0
  85. package/dist/registry/type-registry.js.map +1 -0
  86. package/dist/resolve/resolve-effective-members.d.ts +16 -0
  87. package/dist/resolve/resolve-effective-members.d.ts.map +1 -0
  88. package/dist/resolve/resolve-effective-members.js +104 -0
  89. package/dist/resolve/resolve-effective-members.js.map +1 -0
  90. package/dist/validate/validate-constraints.d.ts +4 -0
  91. package/dist/validate/validate-constraints.d.ts.map +1 -0
  92. package/dist/validate/validate-constraints.js +388 -0
  93. package/dist/validate/validate-constraints.js.map +1 -0
  94. package/dist/validate/validate-embedded-blocks.d.ts +3 -0
  95. package/dist/validate/validate-embedded-blocks.d.ts.map +1 -0
  96. package/dist/validate/validate-embedded-blocks.js +44 -0
  97. package/dist/validate/validate-embedded-blocks.js.map +1 -0
  98. package/dist/validate/validate-instances.d.ts +4 -0
  99. package/dist/validate/validate-instances.d.ts.map +1 -0
  100. package/dist/validate/validate-instances.js +107 -0
  101. package/dist/validate/validate-instances.js.map +1 -0
  102. package/dist/validate/validate-presets.d.ts +4 -0
  103. package/dist/validate/validate-presets.d.ts.map +1 -0
  104. package/dist/validate/validate-presets.js +86 -0
  105. package/dist/validate/validate-presets.js.map +1 -0
  106. package/dist/validate/validate-readonly.d.ts +4 -0
  107. package/dist/validate/validate-readonly.d.ts.map +1 -0
  108. package/dist/validate/validate-readonly.js +64 -0
  109. package/dist/validate/validate-readonly.js.map +1 -0
  110. package/dist/validate/validate-types.d.ts +7 -0
  111. package/dist/validate/validate-types.d.ts.map +1 -0
  112. package/dist/validate/validate-types.js +130 -0
  113. package/dist/validate/validate-types.js.map +1 -0
  114. package/dist/validate/validate-versions.d.ts +4 -0
  115. package/dist/validate/validate-versions.d.ts.map +1 -0
  116. package/dist/validate/validate-versions.js +69 -0
  117. package/dist/validate/validate-versions.js.map +1 -0
  118. package/dist/validate/validate-visibility.d.ts +4 -0
  119. package/dist/validate/validate-visibility.d.ts.map +1 -0
  120. package/dist/validate/validate-visibility.js +33 -0
  121. package/dist/validate/validate-visibility.js.map +1 -0
  122. package/package.json +42 -0
@@ -0,0 +1,44 @@
1
+ <!--
2
+ Framework — FrameworkType
3
+ FQN: org.blockml.bml.framework.FrameworkType
4
+ -->
5
+ <block
6
+ xmlns="http://blockml.org/bml"
7
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
8
+ xsi:schemaLocation="http://blockml.org/bml https://blockml.org/schemas/bml.xsd
9
+ "
10
+ xmlns:blockml="org.blockml.bml"
11
+ xmlns:bom="org.blockml.bml.bom"
12
+ xmlns:bomapi="org.blockml.bml.bom.api"
13
+ xmlns:bomblock="org.blockml.bml.bom.block"
14
+ xmlns:bomcommon="org.blockml.bml.bom.common"
15
+ xmlns:bomcomp="org.blockml.bml.bom.composition"
16
+ xmlns:bomdoc="org.blockml.bml.bom.document"
17
+ xmlns:bommember="org.blockml.bml.bom.member"
18
+ xmlns:bomtype="org.blockml.bml.bom.type"
19
+ xmlns:bomvalue="org.blockml.bml.bom.value"
20
+ xmlns:core="org.blockml.bml.core"
21
+ xmlns:def="org.blockml.bml.definition"
22
+ xmlns:framework="org.blockml.bml.framework"
23
+ xmlns:fwcap="org.blockml.bml.framework.capability"
24
+ xmlns:fwconfig="org.blockml.bml.framework.config"
25
+ xmlns:fwdocumentation="org.blockml.bml.framework.documentation"
26
+ xmlns:fwexpression="org.blockml.bml.framework.expression"
27
+ xmlns:fwregistry="org.blockml.bml.framework.registry"
28
+ xmlns:parser="org.blockml.bml.compiler.parser"
29
+ xmlns:type="org.blockml.bml.type">
30
+
31
+ <name>FrameworkType</name>
32
+ <type>framework:FrameworkType</type>
33
+ <baseType>core:Entity</baseType>
34
+ <is>Abstract marker for framework implementation data-structure blocks</is>
35
+
36
+ <documentation>All org.blockml.bml.framework.registry.* and .expression.* types extend this marker. Distinct from bom:UrmodellType (parse-result data) and core:Capability (operations).</documentation>
37
+
38
+ <references>
39
+ <see type="bom:UrmodellType" relation="SeeAlso" />
40
+ </references>
41
+
42
+ <abstract>true</abstract>
43
+
44
+ </block>
@@ -0,0 +1,127 @@
1
+ <!--
2
+ BlockML Framework Library Descriptor
3
+ FQN: org.blockml.bml.framework.Library
4
+ -->
5
+ <block
6
+ xmlns="http://blockml.org/bml"
7
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
8
+ xsi:schemaLocation="http://blockml.org/bml https://blockml.org/schemas/bml.xsd
9
+ "
10
+ xmlns:blockml="org.blockml.bml"
11
+ xmlns:bom="org.blockml.bml.bom"
12
+ xmlns:bomapi="org.blockml.bml.bom.api"
13
+ xmlns:bomblock="org.blockml.bml.bom.block"
14
+ xmlns:bomcommon="org.blockml.bml.bom.common"
15
+ xmlns:bomcomp="org.blockml.bml.bom.composition"
16
+ xmlns:bomdoc="org.blockml.bml.bom.document"
17
+ xmlns:bommember="org.blockml.bml.bom.member"
18
+ xmlns:bomtype="org.blockml.bml.bom.type"
19
+ xmlns:bomvalue="org.blockml.bml.bom.value"
20
+ xmlns:core="org.blockml.bml.core"
21
+ xmlns:def="org.blockml.bml.definition"
22
+ xmlns:framework="org.blockml.bml.framework"
23
+ xmlns:fwcap="org.blockml.bml.framework.capability"
24
+ xmlns:fwconfig="org.blockml.bml.framework.config"
25
+ xmlns:fwdocumentation="org.blockml.bml.framework.documentation"
26
+ xmlns:fwexpression="org.blockml.bml.framework.expression"
27
+ xmlns:fwregistry="org.blockml.bml.framework.registry"
28
+ xmlns:parser="org.blockml.bml.compiler.parser"
29
+ xmlns:type="org.blockml.bml.type"
30
+ xmlns:bomdocumentation="org.blockml.bml.bom.documentation"
31
+ xmlns:pardocumentation="org.blockml.bml.compiler.parser.documentation"
32
+ xmlns:valdocumentation="org.blockml.bml.compiler.validator.documentation">
33
+
34
+ <name>Library</name>
35
+ <type>framework:Library</type>
36
+ <baseType>core:BlockLibrary</baseType>
37
+ <is>The BlockML Framework utilities package library catalog</is>
38
+
39
+ <documentation>
40
+ Canonical framework specification for BlockML Stage-2 utilities — TypeRegistry,
41
+ bootstrap, fork/resolve, parseExpression, validateTypes/validateConstraints.
42
+ TypeScript in packages/framework/src/ implements this library.
43
+ Urmodell types live in org.blockml.bml.bom.* (@blockml/bom).
44
+ Membership is defined exclusively by this blocks list.
45
+ </documentation>
46
+
47
+ <version>0.1.0</version>
48
+
49
+ <language>
50
+ <English />
51
+ </language>
52
+
53
+ <properties>
54
+ <description>
55
+ <value>BlockML Framework utilities library</value>
56
+ </description>
57
+ </properties>
58
+
59
+ <aggregations>
60
+ <readMe>
61
+ <composition>
62
+ <framework:README />
63
+ </composition>
64
+ </readMe>
65
+ <dependencies>
66
+ <composition>
67
+ <blockml:Library />
68
+ </composition>
69
+ <composition>
70
+ <bom:Library />
71
+ </composition>
72
+ <composition>
73
+ <parser:Library />
74
+ </composition>
75
+ </dependencies>
76
+ <blocks>
77
+ <composition><framework:FrameworkType /></composition>
78
+ <composition><fwregistry:BootstrapResult /></composition>
79
+ <composition><fwexpression:ExpressionNode /></composition>
80
+ <composition><fwexpression:LiteralExpressionNode /></composition>
81
+ <composition><fwexpression:ArrayExpressionNode /></composition>
82
+ <composition><fwexpression:ObjectExpressionNode /></composition>
83
+ <composition><fwexpression:PropertyExpressionNode /></composition>
84
+ <composition><fwexpression:CallExpressionNode /></composition>
85
+ <composition><fwexpression:BinaryExpressionNode /></composition>
86
+ <composition><fwexpression:ParseExpressionResult /></composition>
87
+ <composition><fwexpression:ParseExpressionError /></composition>
88
+ <composition><fwexpression:ParseExpressionOutcome /></composition>
89
+ <composition><fwregistry:BootstrapOptions /></composition>
90
+ <composition><fwconfig:FrameworkDiagnosticCodes /></composition>
91
+ <composition><fwcap:TypeRegistry /></composition>
92
+ <composition><fwcap:BootstrapTypeRegistry /></composition>
93
+ <composition><fwcap:DefaultBootstrapPaths /></composition>
94
+ <composition><fwcap:ForkBom /></composition>
95
+ <composition><fwcap:ResolveContracts /></composition>
96
+ <composition><fwcap:ResolveEffectiveMembers /></composition>
97
+ <composition><fwcap:CollectBaseTypeChain /></composition>
98
+ <composition><fwcap:MemberIdentityKey /></composition>
99
+ <composition><fwcap:ParseExpression /></composition>
100
+ <composition><fwcap:ValidateTypes /></composition>
101
+ <composition><fwcap:ValidateConstraints /></composition>
102
+ <composition><fwcap:ValidateVersions /></composition>
103
+ <composition><fwcap:RootFqnByFilePath /></composition>
104
+ <composition><fwcap:RootFqns /></composition>
105
+ <composition><fwcap:GetExportedFqns /></composition>
106
+ <composition><fwcap:ValidateEmbeddedBlocks /></composition>
107
+ <composition><fwcap:ValidateInstances /></composition>
108
+ <composition><fwcap:ValidatePresets /></composition>
109
+ <composition><fwcap:ValidateVisibility /></composition>
110
+ <composition><fwcap:ValidateReadOnly /></composition>
111
+ <composition><fwcap:GetPropertyNumericValue /></composition>
112
+ <composition><fwcap:IsLiteralValue /></composition>
113
+ <composition><fwdocumentation:Introduction /></composition>
114
+ <composition><fwdocumentation:LayerSeparation /></composition>
115
+ <composition><fwdocumentation:ArchitectureOverview /></composition>
116
+ <composition><fwdocumentation:PublicApi /></composition>
117
+ <composition><fwdocumentation:TypeRegistryBootstrap /></composition>
118
+ <composition><fwdocumentation:EffectiveMembers /></composition>
119
+ <composition><fwdocumentation:ExpressionParsing /></composition>
120
+ <composition><fwdocumentation:ConstraintValidation /></composition>
121
+ <composition><fwdocumentation:Diagnostics /></composition>
122
+ <composition><fwdocumentation:PackageOwnership /></composition>
123
+ <composition><fwdocumentation:ScopeExclusions /></composition>
124
+ </blocks>
125
+ </aggregations>
126
+
127
+ </block>
@@ -0,0 +1,71 @@
1
+ <!--
2
+ BlockML Framework — README
3
+ FQN: org.blockml.bml.framework.README
4
+ -->
5
+ <block
6
+ xmlns="http://blockml.org/bml"
7
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
8
+ xsi:schemaLocation="http://blockml.org/bml https://blockml.org/schemas/bml.xsd
9
+ "
10
+ xmlns:blockml="org.blockml.bml"
11
+ xmlns:bom="org.blockml.bml.bom"
12
+ xmlns:bomapi="org.blockml.bml.bom.api"
13
+ xmlns:bomblock="org.blockml.bml.bom.block"
14
+ xmlns:bomcommon="org.blockml.bml.bom.common"
15
+ xmlns:bomcomp="org.blockml.bml.bom.composition"
16
+ xmlns:bomdoc="org.blockml.bml.bom.document"
17
+ xmlns:bommember="org.blockml.bml.bom.member"
18
+ xmlns:bomtype="org.blockml.bml.bom.type"
19
+ xmlns:bomvalue="org.blockml.bml.bom.value"
20
+ xmlns:core="org.blockml.bml.core"
21
+ xmlns:def="org.blockml.bml.definition"
22
+ xmlns:framework="org.blockml.bml.framework"
23
+ xmlns:fwcap="org.blockml.bml.framework.capability"
24
+ xmlns:fwconfig="org.blockml.bml.framework.config"
25
+ xmlns:fwdocumentation="org.blockml.bml.framework.documentation"
26
+ xmlns:fwexpression="org.blockml.bml.framework.expression"
27
+ xmlns:fwregistry="org.blockml.bml.framework.registry"
28
+ xmlns:parser="org.blockml.bml.compiler.parser"
29
+ xmlns:type="org.blockml.bml.type"
30
+ xmlns:bomdocumentation="org.blockml.bml.bom.documentation"
31
+ xmlns:pardocumentation="org.blockml.bml.compiler.parser.documentation"
32
+ xmlns:valdocumentation="org.blockml.bml.compiler.validator.documentation">
33
+
34
+ <name>README</name>
35
+ <type>blockml:README</type>
36
+ <baseType>core:ReadMe</baseType>
37
+ <is>Reading entry for the Framework utilities library</is>
38
+
39
+ <documentation>
40
+ The @blockml/framework package provides Stage-2 utilities: TypeRegistry,
41
+ bootstrapTypeRegistry, forkBom, resolveEffectiveMembers, parseExpression,
42
+ validateTypes, and validateConstraints.
43
+
44
+ This library (org.blockml.bml.framework.*) is the SSOT; TypeScript in
45
+ packages/framework/src/ implements it. Parity tests in packages/framework/test/
46
+ verify BML ↔ TS alignment.
47
+
48
+ Start reading at org.blockml.bml.framework.documentation.Introduction (ReadNext chain).
49
+
50
+ Layer separation:
51
+ • org.blockml.bml.bom.* (@blockml/bom) — Urmodell types framework operates on
52
+ • org.blockml.bml.framework.* (this library) — Stage-2 utilities
53
+ • org.blockml.bml.compiler.parser.* (@blockml/parser) — parse() for bootstrap
54
+ • org.blockml.bml.compiler.validator.* (@blockml/validator) — validate() orchestrator
55
+ • org.blockml.bml.definition.* (@blockml/core) — language BML corpus (npm)
56
+
57
+ Modules: documentation (narrative specs), registry, expression, config,
58
+ capability (public operations).
59
+
60
+ Not in this library: validate() orchestration (@blockml/validator); parse()/serialize() entry points.
61
+ </documentation>
62
+
63
+ <references>
64
+ <see type="fwdocumentation:Introduction" relation="ReadFirst" />
65
+ <see type="fwdocumentation:PublicApi" relation="SeeAlso" />
66
+ <see type="bomdocumentation:PackageOwnership" relation="SeeAlso" />
67
+ <see type="pardocumentation:Introduction" relation="SeeAlso" />
68
+ <see type="valdocumentation:Introduction" relation="SeeAlso" />
69
+ </references>
70
+
71
+ </block>
@@ -0,0 +1,53 @@
1
+ <!--
2
+ Framework Capability — BootstrapTypeRegistry
3
+ FQN: org.blockml.bml.framework.capability.BootstrapTypeRegistry
4
+ -->
5
+ <block
6
+ xmlns="http://blockml.org/bml"
7
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
8
+ xsi:schemaLocation="http://blockml.org/bml https://blockml.org/schemas/bml.xsd
9
+ "
10
+ xmlns:blockml="org.blockml.bml"
11
+ xmlns:bom="org.blockml.bml.bom"
12
+ xmlns:bomapi="org.blockml.bml.bom.api"
13
+ xmlns:bomblock="org.blockml.bml.bom.block"
14
+ xmlns:bomcommon="org.blockml.bml.bom.common"
15
+ xmlns:bomcomp="org.blockml.bml.bom.composition"
16
+ xmlns:bomdoc="org.blockml.bml.bom.document"
17
+ xmlns:bommember="org.blockml.bml.bom.member"
18
+ xmlns:bomtype="org.blockml.bml.bom.type"
19
+ xmlns:bomvalue="org.blockml.bml.bom.value"
20
+ xmlns:core="org.blockml.bml.core"
21
+ xmlns:def="org.blockml.bml.definition"
22
+ xmlns:framework="org.blockml.bml.framework"
23
+ xmlns:fwcap="org.blockml.bml.framework.capability"
24
+ xmlns:fwconfig="org.blockml.bml.framework.config"
25
+ xmlns:fwdocumentation="org.blockml.bml.framework.documentation"
26
+ xmlns:fwexpression="org.blockml.bml.framework.expression"
27
+ xmlns:fwregistry="org.blockml.bml.framework.registry"
28
+ xmlns:parser="org.blockml.bml.compiler.parser"
29
+ xmlns:type="org.blockml.bml.type">
30
+
31
+ <name>BootstrapTypeRegistry</name>
32
+ <type>fwcap:BootstrapTypeRegistry</type>
33
+ <baseType>core:Capability</baseType>
34
+ <is>Populate TypeRegistry from corpus paths or Library.bml graph</is>
35
+
36
+ <documentation>Accepts fwregistry:BootstrapOptions or legacy paths[] + rootDir. Library mode resolves dependencies/subLibraries in order, then registers blocks from each library blocks root. Flat mode walks paths for all .bml files.</documentation>
37
+
38
+ <references>
39
+ <see type="fwcap:DefaultBootstrapPaths" relation="SeeAlso" />
40
+ <see type="fwregistry:BootstrapOptions" relation="SeeAlso" />
41
+ <see type="parser:Library" relation="SeeAlso" />
42
+ </references>
43
+
44
+ <properties>
45
+ <options type="fwregistry:BootstrapOptions">
46
+ <documentation>Bootstrap options object. (optional)</documentation>
47
+ </options>
48
+ <result type="fwregistry:BootstrapResult">
49
+ <documentation>result. TS type: fwregistry:BootstrapResult. (required)</documentation>
50
+ </result>
51
+ </properties>
52
+
53
+ </block>
@@ -0,0 +1,50 @@
1
+ <!--
2
+ Framework Capability — CollectBaseTypeChain
3
+ FQN: org.blockml.bml.framework.capability.CollectBaseTypeChain
4
+ -->
5
+ <block
6
+ xmlns="http://blockml.org/bml"
7
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
8
+ xsi:schemaLocation="http://blockml.org/bml https://blockml.org/schemas/bml.xsd
9
+ "
10
+ xmlns:blockml="org.blockml.bml"
11
+ xmlns:bom="org.blockml.bml.bom"
12
+ xmlns:bomapi="org.blockml.bml.bom.api"
13
+ xmlns:bomblock="org.blockml.bml.bom.block"
14
+ xmlns:bomcommon="org.blockml.bml.bom.common"
15
+ xmlns:bomcomp="org.blockml.bml.bom.composition"
16
+ xmlns:bomdoc="org.blockml.bml.bom.document"
17
+ xmlns:bommember="org.blockml.bml.bom.member"
18
+ xmlns:bomtype="org.blockml.bml.bom.type"
19
+ xmlns:bomvalue="org.blockml.bml.bom.value"
20
+ xmlns:core="org.blockml.bml.core"
21
+ xmlns:def="org.blockml.bml.definition"
22
+ xmlns:framework="org.blockml.bml.framework"
23
+ xmlns:fwcap="org.blockml.bml.framework.capability"
24
+ xmlns:fwconfig="org.blockml.bml.framework.config"
25
+ xmlns:fwdocumentation="org.blockml.bml.framework.documentation"
26
+ xmlns:fwexpression="org.blockml.bml.framework.expression"
27
+ xmlns:fwregistry="org.blockml.bml.framework.registry"
28
+ xmlns:parser="org.blockml.bml.compiler.parser"
29
+ xmlns:type="org.blockml.bml.type">
30
+
31
+ <name>CollectBaseTypeChain</name>
32
+ <type>fwcap:CollectBaseTypeChain</type>
33
+ <baseType>core:Capability</baseType>
34
+ <is>Walk baseType references to root via TypeRegistry</is>
35
+
36
+ <documentation>Walk baseType references to root via TypeRegistry</documentation>
37
+
38
+ <properties>
39
+ <block type="bomblock:BlockDefinition">
40
+ <documentation>block. TS type: bomblock:BlockDefinition. (required)</documentation>
41
+ </block>
42
+ <registry type="fwcap:TypeRegistry">
43
+ <documentation>registry. TS type: fwcap:TypeRegistry. (required)</documentation>
44
+ </registry>
45
+ <chain type="bomblock:BlockDefinition[]">
46
+ <documentation>chain. TS type: bomblock:BlockDefinition[]. (required)</documentation>
47
+ </chain>
48
+ </properties>
49
+
50
+ </block>
@@ -0,0 +1,47 @@
1
+ <!--
2
+ Framework Capability — DefaultBootstrapPaths
3
+ FQN: org.blockml.bml.framework.capability.DefaultBootstrapPaths
4
+ -->
5
+ <block
6
+ xmlns="http://blockml.org/bml"
7
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
8
+ xsi:schemaLocation="http://blockml.org/bml https://blockml.org/schemas/bml.xsd
9
+ "
10
+ xmlns:blockml="org.blockml.bml"
11
+ xmlns:bom="org.blockml.bml.bom"
12
+ xmlns:bomapi="org.blockml.bml.bom.api"
13
+ xmlns:bomblock="org.blockml.bml.bom.block"
14
+ xmlns:bomcommon="org.blockml.bml.bom.common"
15
+ xmlns:bomcomp="org.blockml.bml.bom.composition"
16
+ xmlns:bomdoc="org.blockml.bml.bom.document"
17
+ xmlns:bommember="org.blockml.bml.bom.member"
18
+ xmlns:bomtype="org.blockml.bml.bom.type"
19
+ xmlns:bomvalue="org.blockml.bml.bom.value"
20
+ xmlns:core="org.blockml.bml.core"
21
+ xmlns:def="org.blockml.bml.definition"
22
+ xmlns:framework="org.blockml.bml.framework"
23
+ xmlns:fwcap="org.blockml.bml.framework.capability"
24
+ xmlns:fwconfig="org.blockml.bml.framework.config"
25
+ xmlns:fwdocumentation="org.blockml.bml.framework.documentation"
26
+ xmlns:fwexpression="org.blockml.bml.framework.expression"
27
+ xmlns:fwregistry="org.blockml.bml.framework.registry"
28
+ xmlns:parser="org.blockml.bml.compiler.parser"
29
+ xmlns:type="org.blockml.bml.type">
30
+
31
+ <name>DefaultBootstrapPaths</name>
32
+ <type>fwcap:DefaultBootstrapPaths</type>
33
+ <baseType>core:Capability</baseType>
34
+ <is>Default TypeRegistry corpus paths under node_modules</is>
35
+
36
+ <documentation>Default TypeRegistry corpus paths under node_modules</documentation>
37
+
38
+ <properties>
39
+ <rootDir type="type:Text">
40
+ <documentation>Default process.cwd(). (optional)</documentation>
41
+ </rootDir>
42
+ <paths type="type:Text[]">
43
+ <documentation>paths. TS type: type:Text[]. (required)</documentation>
44
+ </paths>
45
+ </properties>
46
+
47
+ </block>
@@ -0,0 +1,51 @@
1
+ <!--
2
+ Framework Capability — ForkBom
3
+ FQN: org.blockml.bml.framework.capability.ForkBom
4
+ -->
5
+ <block
6
+ xmlns="http://blockml.org/bml"
7
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
8
+ xsi:schemaLocation="http://blockml.org/bml https://blockml.org/schemas/bml.xsd
9
+ "
10
+ xmlns:blockml="org.blockml.bml"
11
+ xmlns:bom="org.blockml.bml.bom"
12
+ xmlns:bomapi="org.blockml.bml.bom.api"
13
+ xmlns:bomblock="org.blockml.bml.bom.block"
14
+ xmlns:bomcommon="org.blockml.bml.bom.common"
15
+ xmlns:bomcomp="org.blockml.bml.bom.composition"
16
+ xmlns:bomdoc="org.blockml.bml.bom.document"
17
+ xmlns:bommember="org.blockml.bml.bom.member"
18
+ xmlns:bomtype="org.blockml.bml.bom.type"
19
+ xmlns:bomvalue="org.blockml.bml.bom.value"
20
+ xmlns:core="org.blockml.bml.core"
21
+ xmlns:def="org.blockml.bml.definition"
22
+ xmlns:framework="org.blockml.bml.framework"
23
+ xmlns:fwcap="org.blockml.bml.framework.capability"
24
+ xmlns:fwconfig="org.blockml.bml.framework.config"
25
+ xmlns:fwdocumentation="org.blockml.bml.framework.documentation"
26
+ xmlns:fwexpression="org.blockml.bml.framework.expression"
27
+ xmlns:fwregistry="org.blockml.bml.framework.registry"
28
+ xmlns:parser="org.blockml.bml.compiler.parser"
29
+ xmlns:type="org.blockml.bml.type">
30
+
31
+ <name>ForkBom</name>
32
+ <type>fwcap:ForkBom</type>
33
+ <baseType>core:Capability</baseType>
34
+ <is>Deep-clone Urmodell for pragmatic / validation working copy</is>
35
+
36
+ <documentation>Deep-clone Urmodell for pragmatic / validation working copy</documentation>
37
+
38
+ <references>
39
+ <see type="bomdocumentation:PragmaticModel" relation="SeeAlso" />
40
+ </references>
41
+
42
+ <properties>
43
+ <document type="bomdoc:BomDocument">
44
+ <documentation>document. TS type: bomdoc:BomDocument. (required)</documentation>
45
+ </document>
46
+ <copy type="bomdoc:BomDocument">
47
+ <documentation>copy. TS type: bomdoc:BomDocument. (required)</documentation>
48
+ </copy>
49
+ </properties>
50
+
51
+ </block>
@@ -0,0 +1,37 @@
1
+ <!--
2
+ Framework Capability — GetExportedFqns
3
+ FQN: org.blockml.bml.framework.capability.GetExportedFqns
4
+ -->
5
+ <block
6
+ xmlns="http://blockml.org/bml"
7
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
8
+ xsi:schemaLocation="http://blockml.org/bml https://blockml.org/schemas/bml.xsd
9
+ "
10
+ xmlns:blockml="org.blockml.bml"
11
+ xmlns:core="org.blockml.bml.core"
12
+ xmlns:framework="org.blockml.bml.framework"
13
+ xmlns:fwcap="org.blockml.bml.framework.capability"
14
+ xmlns:fwregistry="org.blockml.bml.framework.registry"
15
+ xmlns:type="org.blockml.bml.type">
16
+
17
+ <name>GetExportedFqns</name>
18
+ <type>fwcap:GetExportedFqns</type>
19
+ <baseType>core:Capability</baseType>
20
+ <is>Exported block FQNs for a library path from BootstrapResult</is>
21
+
22
+ <properties>
23
+ <libraryPath type="type:Text">
24
+ <documentation>libraryPath. (required)</documentation>
25
+ </libraryPath>
26
+ <bootstrap type="fwregistry:BootstrapResult">
27
+ <documentation>bootstrap. (required)</documentation>
28
+ </bootstrap>
29
+ <rootDir type="type:Text">
30
+ <documentation>rootDir — default process.cwd(). (optional)</documentation>
31
+ </rootDir>
32
+ <exported type="type:Text">
33
+ <documentation>Set&lt;exportedFqn&gt; or undefined. (optional)</documentation>
34
+ </exported>
35
+ </properties>
36
+
37
+ </block>
@@ -0,0 +1,47 @@
1
+ <!--
2
+ Framework Capability — GetPropertyNumericValue
3
+ FQN: org.blockml.bml.framework.capability.GetPropertyNumericValue
4
+ -->
5
+ <block
6
+ xmlns="http://blockml.org/bml"
7
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
8
+ xsi:schemaLocation="http://blockml.org/bml https://blockml.org/schemas/bml.xsd
9
+ "
10
+ xmlns:blockml="org.blockml.bml"
11
+ xmlns:bom="org.blockml.bml.bom"
12
+ xmlns:bomapi="org.blockml.bml.bom.api"
13
+ xmlns:bomblock="org.blockml.bml.bom.block"
14
+ xmlns:bomcommon="org.blockml.bml.bom.common"
15
+ xmlns:bomcomp="org.blockml.bml.bom.composition"
16
+ xmlns:bomdoc="org.blockml.bml.bom.document"
17
+ xmlns:bommember="org.blockml.bml.bom.member"
18
+ xmlns:bomtype="org.blockml.bml.bom.type"
19
+ xmlns:bomvalue="org.blockml.bml.bom.value"
20
+ xmlns:core="org.blockml.bml.core"
21
+ xmlns:def="org.blockml.bml.definition"
22
+ xmlns:framework="org.blockml.bml.framework"
23
+ xmlns:fwcap="org.blockml.bml.framework.capability"
24
+ xmlns:fwconfig="org.blockml.bml.framework.config"
25
+ xmlns:fwdocumentation="org.blockml.bml.framework.documentation"
26
+ xmlns:fwexpression="org.blockml.bml.framework.expression"
27
+ xmlns:fwregistry="org.blockml.bml.framework.registry"
28
+ xmlns:parser="org.blockml.bml.compiler.parser"
29
+ xmlns:type="org.blockml.bml.type">
30
+
31
+ <name>GetPropertyNumericValue</name>
32
+ <type>fwcap:GetPropertyNumericValue</type>
33
+ <baseType>core:Capability</baseType>
34
+ <is>Extract numeric literal from PropertyDefinition value or values[]</is>
35
+
36
+ <documentation>Extract numeric literal from PropertyDefinition value or values[]</documentation>
37
+
38
+ <properties>
39
+ <property type="bommember:PropertyDefinition">
40
+ <documentation>property. TS type: bommember:PropertyDefinition. (required)</documentation>
41
+ </property>
42
+ <value type="type:Number">
43
+ <documentation>undefined when no numeric literal. (optional)</documentation>
44
+ </value>
45
+ </properties>
46
+
47
+ </block>
@@ -0,0 +1,47 @@
1
+ <!--
2
+ Framework Capability — IsLiteralValue
3
+ FQN: org.blockml.bml.framework.capability.IsLiteralValue
4
+ -->
5
+ <block
6
+ xmlns="http://blockml.org/bml"
7
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
8
+ xsi:schemaLocation="http://blockml.org/bml https://blockml.org/schemas/bml.xsd
9
+ "
10
+ xmlns:blockml="org.blockml.bml"
11
+ xmlns:bom="org.blockml.bml.bom"
12
+ xmlns:bomapi="org.blockml.bml.bom.api"
13
+ xmlns:bomblock="org.blockml.bml.bom.block"
14
+ xmlns:bomcommon="org.blockml.bml.bom.common"
15
+ xmlns:bomcomp="org.blockml.bml.bom.composition"
16
+ xmlns:bomdoc="org.blockml.bml.bom.document"
17
+ xmlns:bommember="org.blockml.bml.bom.member"
18
+ xmlns:bomtype="org.blockml.bml.bom.type"
19
+ xmlns:bomvalue="org.blockml.bml.bom.value"
20
+ xmlns:core="org.blockml.bml.core"
21
+ xmlns:def="org.blockml.bml.definition"
22
+ xmlns:framework="org.blockml.bml.framework"
23
+ xmlns:fwcap="org.blockml.bml.framework.capability"
24
+ xmlns:fwconfig="org.blockml.bml.framework.config"
25
+ xmlns:fwdocumentation="org.blockml.bml.framework.documentation"
26
+ xmlns:fwexpression="org.blockml.bml.framework.expression"
27
+ xmlns:fwregistry="org.blockml.bml.framework.registry"
28
+ xmlns:parser="org.blockml.bml.compiler.parser"
29
+ xmlns:type="org.blockml.bml.type">
30
+
31
+ <name>IsLiteralValue</name>
32
+ <type>fwcap:IsLiteralValue</type>
33
+ <baseType>core:Capability</baseType>
34
+ <is>Type guard for LiteralValue member values</is>
35
+
36
+ <documentation>Type guard for LiteralValue member values</documentation>
37
+
38
+ <properties>
39
+ <value type="bomvalue:MemberValue">
40
+ <documentation>Member value or undefined. (optional)</documentation>
41
+ </value>
42
+ <result type="type:Boolean">
43
+ <documentation>result. TS type: type:Boolean. (required)</documentation>
44
+ </result>
45
+ </properties>
46
+
47
+ </block>
@@ -0,0 +1,47 @@
1
+ <!--
2
+ Framework Capability — MemberIdentityKey
3
+ FQN: org.blockml.bml.framework.capability.MemberIdentityKey
4
+ -->
5
+ <block
6
+ xmlns="http://blockml.org/bml"
7
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
8
+ xsi:schemaLocation="http://blockml.org/bml https://blockml.org/schemas/bml.xsd
9
+ "
10
+ xmlns:blockml="org.blockml.bml"
11
+ xmlns:bom="org.blockml.bml.bom"
12
+ xmlns:bomapi="org.blockml.bml.bom.api"
13
+ xmlns:bomblock="org.blockml.bml.bom.block"
14
+ xmlns:bomcommon="org.blockml.bml.bom.common"
15
+ xmlns:bomcomp="org.blockml.bml.bom.composition"
16
+ xmlns:bomdoc="org.blockml.bml.bom.document"
17
+ xmlns:bommember="org.blockml.bml.bom.member"
18
+ xmlns:bomtype="org.blockml.bml.bom.type"
19
+ xmlns:bomvalue="org.blockml.bml.bom.value"
20
+ xmlns:core="org.blockml.bml.core"
21
+ xmlns:def="org.blockml.bml.definition"
22
+ xmlns:framework="org.blockml.bml.framework"
23
+ xmlns:fwcap="org.blockml.bml.framework.capability"
24
+ xmlns:fwconfig="org.blockml.bml.framework.config"
25
+ xmlns:fwdocumentation="org.blockml.bml.framework.documentation"
26
+ xmlns:fwexpression="org.blockml.bml.framework.expression"
27
+ xmlns:fwregistry="org.blockml.bml.framework.registry"
28
+ xmlns:parser="org.blockml.bml.compiler.parser"
29
+ xmlns:type="org.blockml.bml.type">
30
+
31
+ <name>MemberIdentityKey</name>
32
+ <type>fwcap:MemberIdentityKey</type>
33
+ <baseType>core:Capability</baseType>
34
+ <is>Stable identity key for member collision detection</is>
35
+
36
+ <documentation>Stable identity key for member collision detection</documentation>
37
+
38
+ <properties>
39
+ <member type="bommember:MemberDefinition">
40
+ <documentation>member. TS type: bommember:MemberDefinition. (required)</documentation>
41
+ </member>
42
+ <key type="type:Text">
43
+ <documentation>key. TS type: type:Text. (required)</documentation>
44
+ </key>
45
+ </properties>
46
+
47
+ </block>