@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.
- package/blocks/org/blockml/bml/framework/FrameworkType.bml +44 -0
- package/blocks/org/blockml/bml/framework/Library.bml +127 -0
- package/blocks/org/blockml/bml/framework/README.bml +71 -0
- package/blocks/org/blockml/bml/framework/capability/BootstrapTypeRegistry.bml +53 -0
- package/blocks/org/blockml/bml/framework/capability/CollectBaseTypeChain.bml +50 -0
- package/blocks/org/blockml/bml/framework/capability/DefaultBootstrapPaths.bml +47 -0
- package/blocks/org/blockml/bml/framework/capability/ForkBom.bml +51 -0
- package/blocks/org/blockml/bml/framework/capability/GetExportedFqns.bml +37 -0
- package/blocks/org/blockml/bml/framework/capability/GetPropertyNumericValue.bml +47 -0
- package/blocks/org/blockml/bml/framework/capability/IsLiteralValue.bml +47 -0
- package/blocks/org/blockml/bml/framework/capability/MemberIdentityKey.bml +47 -0
- package/blocks/org/blockml/bml/framework/capability/ParseExpression.bml +51 -0
- package/blocks/org/blockml/bml/framework/capability/ResolveContracts.bml +55 -0
- package/blocks/org/blockml/bml/framework/capability/ResolveEffectiveMembers.bml +56 -0
- package/blocks/org/blockml/bml/framework/capability/RootFqnByFilePath.bml +33 -0
- package/blocks/org/blockml/bml/framework/capability/RootFqns.bml +30 -0
- package/blocks/org/blockml/bml/framework/capability/TypeRegistry.bml +43 -0
- package/blocks/org/blockml/bml/framework/capability/ValidateConstraints.bml +54 -0
- package/blocks/org/blockml/bml/framework/capability/ValidateEmbeddedBlocks.bml +31 -0
- package/blocks/org/blockml/bml/framework/capability/ValidateInstances.bml +34 -0
- package/blocks/org/blockml/bml/framework/capability/ValidatePresets.bml +34 -0
- package/blocks/org/blockml/bml/framework/capability/ValidateReadOnly.bml +34 -0
- package/blocks/org/blockml/bml/framework/capability/ValidateTypes.bml +55 -0
- package/blocks/org/blockml/bml/framework/capability/ValidateVersions.bml +54 -0
- package/blocks/org/blockml/bml/framework/capability/ValidateVisibility.bml +34 -0
- package/blocks/org/blockml/bml/framework/config/FrameworkDiagnosticCodes.bml +44 -0
- package/blocks/org/blockml/bml/framework/documentation/ArchitectureOverview.bml +60 -0
- package/blocks/org/blockml/bml/framework/documentation/ConstraintValidation.bml +59 -0
- package/blocks/org/blockml/bml/framework/documentation/Diagnostics.bml +68 -0
- package/blocks/org/blockml/bml/framework/documentation/EffectiveMembers.bml +61 -0
- package/blocks/org/blockml/bml/framework/documentation/ExpressionParsing.bml +53 -0
- package/blocks/org/blockml/bml/framework/documentation/Introduction.bml +56 -0
- package/blocks/org/blockml/bml/framework/documentation/LayerSeparation.bml +59 -0
- package/blocks/org/blockml/bml/framework/documentation/PackageOwnership.bml +56 -0
- package/blocks/org/blockml/bml/framework/documentation/PublicApi.bml +72 -0
- package/blocks/org/blockml/bml/framework/documentation/ScopeExclusions.bml +52 -0
- package/blocks/org/blockml/bml/framework/documentation/TypeRegistryBootstrap.bml +64 -0
- package/blocks/org/blockml/bml/framework/expression/ArrayExpressionNode.bml +48 -0
- package/blocks/org/blockml/bml/framework/expression/BinaryExpressionNode.bml +54 -0
- package/blocks/org/blockml/bml/framework/expression/CallExpressionNode.bml +51 -0
- package/blocks/org/blockml/bml/framework/expression/ExpressionNode.bml +44 -0
- package/blocks/org/blockml/bml/framework/expression/LiteralExpressionNode.bml +48 -0
- package/blocks/org/blockml/bml/framework/expression/ObjectExpressionNode.bml +48 -0
- package/blocks/org/blockml/bml/framework/expression/ParseExpressionError.bml +47 -0
- package/blocks/org/blockml/bml/framework/expression/ParseExpressionOutcome.bml +50 -0
- package/blocks/org/blockml/bml/framework/expression/ParseExpressionResult.bml +47 -0
- package/blocks/org/blockml/bml/framework/expression/PropertyExpressionNode.bml +48 -0
- package/blocks/org/blockml/bml/framework/registry/BootstrapOptions.bml +50 -0
- package/blocks/org/blockml/bml/framework/registry/BootstrapResult.bml +53 -0
- package/dist/expression/parse-expression.d.ts +3 -0
- package/dist/expression/parse-expression.d.ts.map +1 -0
- package/dist/expression/parse-expression.js +192 -0
- package/dist/expression/parse-expression.js.map +1 -0
- package/dist/expression/types.d.ts +44 -0
- package/dist/expression/types.d.ts.map +1 -0
- package/dist/expression/types.js +2 -0
- package/dist/expression/types.js.map +1 -0
- package/dist/fork/fork-bom.d.ts +4 -0
- package/dist/fork/fork-bom.d.ts.map +1 -0
- package/dist/fork/fork-bom.js +5 -0
- package/dist/fork/fork-bom.js.map +1 -0
- package/dist/index.d.ts +17 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +16 -0
- package/dist/index.js.map +1 -0
- package/dist/registry/bootstrap.d.ts +19 -0
- package/dist/registry/bootstrap.d.ts.map +1 -0
- package/dist/registry/bootstrap.js +49 -0
- package/dist/registry/bootstrap.js.map +1 -0
- package/dist/registry/library-bootstrap.d.ts +14 -0
- package/dist/registry/library-bootstrap.d.ts.map +1 -0
- package/dist/registry/library-bootstrap.js +231 -0
- package/dist/registry/library-bootstrap.js.map +1 -0
- package/dist/registry/library-exports.d.ts +4 -0
- package/dist/registry/library-exports.d.ts.map +1 -0
- package/dist/registry/library-exports.js +10 -0
- package/dist/registry/library-exports.js.map +1 -0
- package/dist/registry/root-fqn.d.ts +5 -0
- package/dist/registry/root-fqn.d.ts.map +1 -0
- package/dist/registry/root-fqn.js +26 -0
- package/dist/registry/root-fqn.js.map +1 -0
- package/dist/registry/type-registry.d.ts +11 -0
- package/dist/registry/type-registry.d.ts.map +1 -0
- package/dist/registry/type-registry.js +27 -0
- package/dist/registry/type-registry.js.map +1 -0
- package/dist/resolve/resolve-effective-members.d.ts +16 -0
- package/dist/resolve/resolve-effective-members.d.ts.map +1 -0
- package/dist/resolve/resolve-effective-members.js +104 -0
- package/dist/resolve/resolve-effective-members.js.map +1 -0
- package/dist/validate/validate-constraints.d.ts +4 -0
- package/dist/validate/validate-constraints.d.ts.map +1 -0
- package/dist/validate/validate-constraints.js +388 -0
- package/dist/validate/validate-constraints.js.map +1 -0
- package/dist/validate/validate-embedded-blocks.d.ts +3 -0
- package/dist/validate/validate-embedded-blocks.d.ts.map +1 -0
- package/dist/validate/validate-embedded-blocks.js +44 -0
- package/dist/validate/validate-embedded-blocks.js.map +1 -0
- package/dist/validate/validate-instances.d.ts +4 -0
- package/dist/validate/validate-instances.d.ts.map +1 -0
- package/dist/validate/validate-instances.js +107 -0
- package/dist/validate/validate-instances.js.map +1 -0
- package/dist/validate/validate-presets.d.ts +4 -0
- package/dist/validate/validate-presets.d.ts.map +1 -0
- package/dist/validate/validate-presets.js +86 -0
- package/dist/validate/validate-presets.js.map +1 -0
- package/dist/validate/validate-readonly.d.ts +4 -0
- package/dist/validate/validate-readonly.d.ts.map +1 -0
- package/dist/validate/validate-readonly.js +64 -0
- package/dist/validate/validate-readonly.js.map +1 -0
- package/dist/validate/validate-types.d.ts +7 -0
- package/dist/validate/validate-types.d.ts.map +1 -0
- package/dist/validate/validate-types.js +130 -0
- package/dist/validate/validate-types.js.map +1 -0
- package/dist/validate/validate-versions.d.ts +4 -0
- package/dist/validate/validate-versions.d.ts.map +1 -0
- package/dist/validate/validate-versions.js +69 -0
- package/dist/validate/validate-versions.js.map +1 -0
- package/dist/validate/validate-visibility.d.ts +4 -0
- package/dist/validate/validate-visibility.d.ts.map +1 -0
- package/dist/validate/validate-visibility.js +33 -0
- package/dist/validate/validate-visibility.js.map +1 -0
- package/package.json +42 -0
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
<!--
|
|
2
|
+
Framework Documentation — ArchitectureOverview
|
|
3
|
+
FQN: org.blockml.bml.framework.documentation.ArchitectureOverview
|
|
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:doc="org.blockml.bml.documentation">
|
|
31
|
+
|
|
32
|
+
<name>ArchitectureOverview</name>
|
|
33
|
+
<type>fwdocumentation:ArchitectureOverview</type>
|
|
34
|
+
<baseType>core:Documentation</baseType>
|
|
35
|
+
<is>Module decomposition for framework utilities</is>
|
|
36
|
+
|
|
37
|
+
<documentation>Module decomposition (packages/framework/src/):
|
|
38
|
+
|
|
39
|
+
registry/type-registry.ts — fwcap:TypeRegistry (register, get, has, keys, size)
|
|
40
|
+
registry/bootstrap.ts — fwcap:BootstrapTypeRegistry, fwcap:DefaultBootstrapPaths
|
|
41
|
+
registry/library-bootstrap.ts — library graph resolution (Library.bml dependencies)
|
|
42
|
+
fork/fork-bom.ts — fwcap:ForkBom (structuredClone pragmatic copy)
|
|
43
|
+
resolve/resolve-effective-members.ts — fwcap:ResolveEffectiveMembers,
|
|
44
|
+
fwcap:ResolveContracts, fwcap:CollectBaseTypeChain, fwcap:MemberIdentityKey
|
|
45
|
+
expression/parse-expression.ts — fwcap:ParseExpression
|
|
46
|
+
expression/types.ts — fwexpression:* AST node types
|
|
47
|
+
validate/validate-types.ts — fwcap:ValidateTypes, fwcap:GetPropertyNumericValue,
|
|
48
|
+
fwcap:IsLiteralValue
|
|
49
|
+
validate/validate-versions.ts — fwcap:ValidateVersions
|
|
50
|
+
validate/validate-constraints.ts — fwcap:ValidateConstraints
|
|
51
|
+
|
|
52
|
+
Internal data-structure types extend framework:FrameworkType.
|
|
53
|
+
Public operations are fwcap:* capabilities.</documentation>
|
|
54
|
+
|
|
55
|
+
<references>
|
|
56
|
+
<see type="fwdocumentation:PublicApi" relation="ReadNext"></see>
|
|
57
|
+
<see type="fwcap:TypeRegistry" relation="Defines"></see>
|
|
58
|
+
</references>
|
|
59
|
+
|
|
60
|
+
</block>
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
<!--
|
|
2
|
+
Framework Documentation — ConstraintValidation
|
|
3
|
+
FQN: org.blockml.bml.framework.documentation.ConstraintValidation
|
|
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:doc="org.blockml.bml.documentation">
|
|
31
|
+
|
|
32
|
+
<name>ConstraintValidation</name>
|
|
33
|
+
<type>fwdocumentation:ConstraintValidation</type>
|
|
34
|
+
<baseType>core:Documentation</baseType>
|
|
35
|
+
<is>validateConstraints branch dispatch and embed contexts</is>
|
|
36
|
+
|
|
37
|
+
<documentation>validateConstraints evaluates constraints on the effective member set from
|
|
38
|
+
resolveEffectiveMembers (baseType + contracts + local). Property ValuePresent and other
|
|
39
|
+
ValueConstraints on effective PropertyDefinition are checked against authored local values.
|
|
40
|
+
|
|
41
|
+
Embed contexts for directly declared constraint BlockInstances:
|
|
42
|
+
block — BlockConstraint (RequiresMember), ValueConstraint (Min/Max/ValuePresent)
|
|
43
|
+
property — PropertyConstraint (MustBeReadOnly), ValueConstraint
|
|
44
|
+
aggregation — AggregationConstraint (AllowedChildType)
|
|
45
|
+
association — AssociationConstraint (NoSelfReference)
|
|
46
|
+
capability — CapabilityConstraint (RequiresImplementation)
|
|
47
|
+
|
|
48
|
+
Wrong branch for context → BML_CONSTRAINT_TARGET_MISMATCH.
|
|
49
|
+
Unknown constraint type → BML_CONSTRAINT_UNKNOWN.
|
|
50
|
+
Violation → BML_CONSTRAINT_VIOLATION.
|
|
51
|
+
|
|
52
|
+
Fixtures: packages/framework/test/constraints/fixtures/*.bml</documentation>
|
|
53
|
+
|
|
54
|
+
<references>
|
|
55
|
+
<see type="fwdocumentation:Diagnostics" relation="ReadNext"></see>
|
|
56
|
+
<see type="fwcap:ValidateConstraints" relation="Defines"></see>
|
|
57
|
+
</references>
|
|
58
|
+
|
|
59
|
+
</block>
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
<!--
|
|
2
|
+
Framework Documentation — Diagnostics
|
|
3
|
+
FQN: org.blockml.bml.framework.documentation.Diagnostics
|
|
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:doc="org.blockml.bml.documentation">
|
|
31
|
+
|
|
32
|
+
<name>Diagnostics</name>
|
|
33
|
+
<type>fwdocumentation:Diagnostics</type>
|
|
34
|
+
<baseType>core:Documentation</baseType>
|
|
35
|
+
<is>Framework diagnostic codes</is>
|
|
36
|
+
|
|
37
|
+
<documentation>Diagnostic codes emitted by framework utilities (see fwconfig:FrameworkDiagnosticCodes):
|
|
38
|
+
|
|
39
|
+
validateTypes:
|
|
40
|
+
• BML_UNKNOWN_BASE_TYPE — baseType FQN not in TypeRegistry
|
|
41
|
+
• BML_UNKNOWN_CONTRACT — contracts[] FQN not in TypeRegistry
|
|
42
|
+
• BML_MEMBER_COLLISION — duplicate member identity in effective set
|
|
43
|
+
• BML_OVERRIDE_WITHOUT_PARENT — override without resolvable base member
|
|
44
|
+
• BML_OVERRIDE_REQUIRED — override on non-overridable member
|
|
45
|
+
• BML_EXPRESSION_PARSE_ERROR — parseExpression failed on ExpressionValue.raw
|
|
46
|
+
|
|
47
|
+
validateVersions:
|
|
48
|
+
• BML_MISSING_VERSION — standalone root block missing effective version (non-framework convention)
|
|
49
|
+
• BML_UNKNOWN_VERSION — bml:version pin does not match registered block version
|
|
50
|
+
|
|
51
|
+
validateConstraints:
|
|
52
|
+
• BML_CONSTRAINT_VIOLATION — constraint predicate failed
|
|
53
|
+
• BML_CONSTRAINT_UNKNOWN — unrecognized constraint type FQN
|
|
54
|
+
• BML_CONSTRAINT_TARGET_MISMATCH — constraint branch wrong for embed context
|
|
55
|
+
|
|
56
|
+
bootstrap:
|
|
57
|
+
• BML_BOOTSTRAP_READ_ERROR — file read failure during corpus walk (warning)
|
|
58
|
+
• BML_LIBRARY_RESOLVE_ERROR — Library.bml path or dependency could not be resolved
|
|
59
|
+
• BML_LIBRARY_NESTING_VIOLATION — outer library re-exports inner-only block
|
|
60
|
+
|
|
61
|
+
Diagnostic type: org.blockml.bml.bom.common.Diagnostic.</documentation>
|
|
62
|
+
|
|
63
|
+
<references>
|
|
64
|
+
<see type="fwconfig:FrameworkDiagnosticCodes" relation="Defines"></see>
|
|
65
|
+
<see type="fwdocumentation:PackageOwnership" relation="ReadNext"></see>
|
|
66
|
+
</references>
|
|
67
|
+
|
|
68
|
+
</block>
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
<!--
|
|
2
|
+
Framework Documentation — EffectiveMembers
|
|
3
|
+
FQN: org.blockml.bml.framework.documentation.EffectiveMembers
|
|
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:doc="org.blockml.bml.documentation">
|
|
31
|
+
|
|
32
|
+
<name>EffectiveMembers</name>
|
|
33
|
+
<type>fwdocumentation:EffectiveMembers</type>
|
|
34
|
+
<baseType>core:Documentation</baseType>
|
|
35
|
+
<is>resolveEffectiveMembers and baseType chain merge</is>
|
|
36
|
+
|
|
37
|
+
<documentation>resolveEffectiveMembers(block, registry) merges members[] in order:
|
|
38
|
+
|
|
39
|
+
1. baseType chain (via collectBaseTypeChain) — earliest to latest
|
|
40
|
+
2. contracts[] in declaration order (via resolveContracts) — contract Block members only;
|
|
41
|
+
subBlocks/compositions/embeddedBlocks on contract types are ignored
|
|
42
|
+
3. local block.members — override earlier layers when override=true
|
|
43
|
+
|
|
44
|
+
collectBaseTypeChain walks block.baseType → registry.get(baseType) until absent or cycle.
|
|
45
|
+
resolveContracts resolves each contracts[] FQN via TypeRegistry; unknown contract →
|
|
46
|
+
BML_UNKNOWN_CONTRACT (validateTypes).
|
|
47
|
+
memberIdentityKey(member) = (namespace ?? "") + ":" + name — collision detection key.
|
|
48
|
+
|
|
49
|
+
Partial merge: later layer replaces only explicitly authored attributes on the member.
|
|
50
|
+
Used by validateTypes (member collision, override rules) and validateConstraints (effective
|
|
51
|
+
PropertyDefinition constraints).
|
|
52
|
+
|
|
53
|
+
EffectiveMemberSet is a runtime view — not stored on Urmodell (BOM SSOT).</documentation>
|
|
54
|
+
|
|
55
|
+
<references>
|
|
56
|
+
<see type="fwdocumentation:ExpressionParsing" relation="ReadNext"></see>
|
|
57
|
+
<see type="fwcap:ResolveEffectiveMembers" relation="Defines"></see>
|
|
58
|
+
<see type="fwcap:ResolveContracts" relation="SeeAlso"></see>
|
|
59
|
+
</references>
|
|
60
|
+
|
|
61
|
+
</block>
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
<!--
|
|
2
|
+
Framework Documentation — ExpressionParsing
|
|
3
|
+
FQN: org.blockml.bml.framework.documentation.ExpressionParsing
|
|
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:doc="org.blockml.bml.documentation">
|
|
31
|
+
|
|
32
|
+
<name>ExpressionParsing</name>
|
|
33
|
+
<type>fwdocumentation:ExpressionParsing</type>
|
|
34
|
+
<baseType>core:Documentation</baseType>
|
|
35
|
+
<is>parseExpression AST — no Urmodell writeback (B4)</is>
|
|
36
|
+
|
|
37
|
+
<documentation>parseExpression(source) parses expression text into an ExpressionNode AST.
|
|
38
|
+
Returns ParseExpressionOutcome: { ok: true, result } | { ok: false, error }.
|
|
39
|
+
|
|
40
|
+
Parser stores ExpressionValue.raw only (B4). validateTypes re-parses expressions
|
|
41
|
+
at validation time and emits BML_EXPRESSION_PARSE_ERROR on failure.
|
|
42
|
+
|
|
43
|
+
AST node kinds: literal, array, object, property, call, binary.
|
|
44
|
+
Optional resultTypeFqn on ParseExpressionResult for typed expression metadata.
|
|
45
|
+
|
|
46
|
+
Expression AST is a Stage-2 utility — never written back to Urmodell member values.</documentation>
|
|
47
|
+
|
|
48
|
+
<references>
|
|
49
|
+
<see type="fwdocumentation:ConstraintValidation" relation="ReadNext"></see>
|
|
50
|
+
<see type="fwexpression:ExpressionNode" relation="Defines"></see>
|
|
51
|
+
</references>
|
|
52
|
+
|
|
53
|
+
</block>
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
<!--
|
|
2
|
+
Framework Documentation — Introduction
|
|
3
|
+
FQN: org.blockml.bml.framework.documentation.Introduction
|
|
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:doc="org.blockml.bml.documentation">
|
|
31
|
+
|
|
32
|
+
<name>Introduction</name>
|
|
33
|
+
<type>fwdocumentation:Introduction</type>
|
|
34
|
+
<baseType>core:Documentation</baseType>
|
|
35
|
+
<is>Purpose and scope of the Framework utilities package</is>
|
|
36
|
+
|
|
37
|
+
<documentation>The @blockml/framework package provides Stage-2 framework utilities: TypeRegistry,
|
|
38
|
+
bootstrapTypeRegistry, forkBom, resolveEffectiveMembers, parseExpression, validateTypes,
|
|
39
|
+
and validateConstraints.
|
|
40
|
+
|
|
41
|
+
This library (org.blockml.bml.framework.*) is the SSOT. TypeScript in
|
|
42
|
+
packages/framework/src/ implements it. Parity tests in packages/framework/test/
|
|
43
|
+
verify BML ↔ TS alignment.
|
|
44
|
+
|
|
45
|
+
Stage-2 placement: after parse (Stage 1) and before render/compile targets.
|
|
46
|
+
Consumed by @blockml/validator (orchestrator) and @blockml/cli (bootstrap host).
|
|
47
|
+
|
|
48
|
+
Language BML corpus remains in npm @blockml/core (node_modules). Framework utilities
|
|
49
|
+
operate on BomDocument (Urmodell) from @blockml/bom — they do not redefine meta-model blocks.</documentation>
|
|
50
|
+
|
|
51
|
+
<references>
|
|
52
|
+
<see type="fwdocumentation:LayerSeparation" relation="ReadNext"></see>
|
|
53
|
+
<see type="bomdocumentation:Introduction" relation="SeeAlso"></see>
|
|
54
|
+
</references>
|
|
55
|
+
|
|
56
|
+
</block>
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
<!--
|
|
2
|
+
Framework Documentation — LayerSeparation
|
|
3
|
+
FQN: org.blockml.bml.framework.documentation.LayerSeparation
|
|
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:doc="org.blockml.bml.documentation">
|
|
31
|
+
|
|
32
|
+
<name>LayerSeparation</name>
|
|
33
|
+
<type>fwdocumentation:LayerSeparation</type>
|
|
34
|
+
<baseType>core:Documentation</baseType>
|
|
35
|
+
<is>Framework vs BOM vs parser vs validator vs core</is>
|
|
36
|
+
|
|
37
|
+
<documentation>Five layers relevant to framework utilities:
|
|
38
|
+
|
|
39
|
+
org.blockml.bml.bom.* (@blockml/bom) — Urmodell data structures (BomDocument, …).
|
|
40
|
+
ValidateOptions, ValidateResult, TypeRegistryReader (B26) live here.
|
|
41
|
+
|
|
42
|
+
org.blockml.bml.framework.* (this package) — TypeRegistry, fork/resolve/validate utilities,
|
|
43
|
+
parseExpression AST (Stage 2). Does not own validate() orchestration.
|
|
44
|
+
|
|
45
|
+
org.blockml.bml.compiler.parser.* (@blockml/parser) — BML → BomDocument (Stage 1).
|
|
46
|
+
bootstrapTypeRegistry calls parse() on corpus files.
|
|
47
|
+
|
|
48
|
+
org.blockml.bml.compiler.validator.* (@blockml/validator) — validate() entry point;
|
|
49
|
+
orchestrates framework utilities on a pragmatic fork.
|
|
50
|
+
|
|
51
|
+
org.blockml.bml.definition.* (@blockml/core) — BML meta-model corpus (npm).
|
|
52
|
+
Framework reads Definition types via TypeRegistry; does not duplicate grammar blocks.</documentation>
|
|
53
|
+
|
|
54
|
+
<references>
|
|
55
|
+
<see type="fwdocumentation:ArchitectureOverview" relation="ReadNext"></see>
|
|
56
|
+
<see type="bomdocumentation:LayerSeparation" relation="SeeAlso"></see>
|
|
57
|
+
</references>
|
|
58
|
+
|
|
59
|
+
</block>
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
<!--
|
|
2
|
+
Framework Documentation — PackageOwnership
|
|
3
|
+
FQN: org.blockml.bml.framework.documentation.PackageOwnership
|
|
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:doc="org.blockml.bml.documentation">
|
|
31
|
+
|
|
32
|
+
<name>PackageOwnership</name>
|
|
33
|
+
<type>fwdocumentation:PackageOwnership</type>
|
|
34
|
+
<baseType>core:Documentation</baseType>
|
|
35
|
+
<is>Toolchain package responsibilities for framework utilities</is>
|
|
36
|
+
|
|
37
|
+
<documentation>@blockml/framework — TypeRegistry, bootstrap, forkBom, resolveEffectiveMembers,
|
|
38
|
+
parseExpression, validateTypes, validateConstraints. Owns this BML library.
|
|
39
|
+
|
|
40
|
+
@blockml/bom — Urmodell types, ValidateOptions/ValidateResult, TypeRegistryReader,
|
|
41
|
+
Diagnostic. Framework consumes; does not redefine.
|
|
42
|
+
|
|
43
|
+
@blockml/parser — parse() used during bootstrap only.
|
|
44
|
+
|
|
45
|
+
@blockml/validator — validate() orchestrator; calls framework utilities.
|
|
46
|
+
|
|
47
|
+
@blockml/core (npm) — language/meta-model BML corpus; bootstrap source.
|
|
48
|
+
|
|
49
|
+
@blockml/cli — TypeRegistry bootstrap host and validate/compile orchestration.</documentation>
|
|
50
|
+
|
|
51
|
+
<references>
|
|
52
|
+
<see type="fwdocumentation:ScopeExclusions" relation="ReadNext"></see>
|
|
53
|
+
<see type="bomdocumentation:PackageOwnership" relation="SeeAlso"></see>
|
|
54
|
+
</references>
|
|
55
|
+
|
|
56
|
+
</block>
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
<!--
|
|
2
|
+
Framework Documentation — PublicApi
|
|
3
|
+
FQN: org.blockml.bml.framework.documentation.PublicApi
|
|
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:doc="org.blockml.bml.documentation">
|
|
31
|
+
|
|
32
|
+
<name>PublicApi</name>
|
|
33
|
+
<type>fwdocumentation:PublicApi</type>
|
|
34
|
+
<baseType>core:Documentation</baseType>
|
|
35
|
+
<is>Framework public exports from index.ts</is>
|
|
36
|
+
|
|
37
|
+
<documentation>Public exports from @blockml/framework (packages/framework/src/index.ts):
|
|
38
|
+
|
|
39
|
+
TypeRegistry — class; register/get/has/keys/size on BomDocument index
|
|
40
|
+
bootstrapTypeRegistry(options?) → BootstrapResult
|
|
41
|
+
defaultBootstrapPaths(rootDir?) → string[]
|
|
42
|
+
BootstrapOptions — paths?, libraryPaths?, rootDir?
|
|
43
|
+
rootFqnByFilePath(registry) → Map<filePath, rootFqn>
|
|
44
|
+
rootFqns(registry) → string[]
|
|
45
|
+
getExportedFqns(libraryPath, bootstrap, rootDir?) → Set<string> | undefined
|
|
46
|
+
forkBom(document) → BomDocument
|
|
47
|
+
resolveEffectiveMembers(block, registry) → MemberDefinition[]
|
|
48
|
+
resolveContracts(block, registry) → MemberDefinition[] (contract slice; used by resolveEffectiveMembers)
|
|
49
|
+
collectBaseTypeChain(block, registry) → BlockDefinition[]
|
|
50
|
+
memberIdentityKey(member) → string
|
|
51
|
+
parseExpression(source) → ParseExpressionOutcome
|
|
52
|
+
validateTypes(document, registry) → Diagnostic[]
|
|
53
|
+
validateEmbeddedBlocks(document) → Diagnostic[]
|
|
54
|
+
validateVersions(document, registry) → Diagnostic[]
|
|
55
|
+
validateInstances(document, registry) → Diagnostic[]
|
|
56
|
+
validatePresets(document, registry) → Diagnostic[]
|
|
57
|
+
validateVisibility(document, registry) → Diagnostic[]
|
|
58
|
+
validateReadOnly(document, registry) → Diagnostic[]
|
|
59
|
+
validateConstraints(document, registry) → Diagnostic[]
|
|
60
|
+
getPropertyNumericValue(property) → number | undefined
|
|
61
|
+
isLiteralValue(value) → boolean
|
|
62
|
+
|
|
63
|
+
Types: BootstrapResult, BootstrapOptions, ExpressionNode, ParseExpressionResult, ParseExpressionOutcome
|
|
64
|
+
|
|
65
|
+
Not exported from index: getLiteralNumericValue (internal helper in validate-types.ts).</documentation>
|
|
66
|
+
|
|
67
|
+
<references>
|
|
68
|
+
<see type="fwdocumentation:TypeRegistryBootstrap" relation="ReadNext"></see>
|
|
69
|
+
<see type="bomapi:TypeRegistryReader" relation="SeeAlso"></see>
|
|
70
|
+
</references>
|
|
71
|
+
|
|
72
|
+
</block>
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
<!--
|
|
2
|
+
Framework Documentation — ScopeExclusions
|
|
3
|
+
FQN: org.blockml.bml.framework.documentation.ScopeExclusions
|
|
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:doc="org.blockml.bml.documentation">
|
|
31
|
+
|
|
32
|
+
<name>ScopeExclusions</name>
|
|
33
|
+
<type>fwdocumentation:ScopeExclusions</type>
|
|
34
|
+
<baseType>core:Documentation</baseType>
|
|
35
|
+
<is>Explicit out-of-scope for the framework package</is>
|
|
36
|
+
|
|
37
|
+
<documentation>Out of scope for @blockml/framework:
|
|
38
|
+
|
|
39
|
+
• parse() / serialize() public entry points — @blockml/parser / @blockml/serializer
|
|
40
|
+
• validate() orchestration — @blockml/validator
|
|
41
|
+
• CLI / file orchestration — @blockml/cli
|
|
42
|
+
• Render target emit — @blockml/compiler / domain packages
|
|
43
|
+
• Language BML block authorship — @blockml/core (npm)
|
|
44
|
+
• BomBuilder (V3) — future; framework accepts its output types only
|
|
45
|
+
|
|
46
|
+
In scope: Stage-2 utilities on BomDocument with TypeRegistry-backed semantic checks.</documentation>
|
|
47
|
+
|
|
48
|
+
<references>
|
|
49
|
+
<see type="fwdocumentation:Introduction" relation="SeeAlso"></see>
|
|
50
|
+
</references>
|
|
51
|
+
|
|
52
|
+
</block>
|