@blockml/fatblock-target 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/target/fatblock/FatblockType.bml +33 -0
- package/blocks/org/blockml/bml/target/fatblock/Library.bml +101 -0
- package/blocks/org/blockml/bml/target/fatblock/README.bml +57 -0
- package/blocks/org/blockml/bml/target/fatblock/api/AssembleFatDocumentResult.bml +35 -0
- package/blocks/org/blockml/bml/target/fatblock/api/FatBlockOptions.bml +42 -0
- package/blocks/org/blockml/bml/target/fatblock/api/FatBlockRenderOutput.bml +36 -0
- package/blocks/org/blockml/bml/target/fatblock/capability/AssembleFatDocument.bml +54 -0
- package/blocks/org/blockml/bml/target/fatblock/capability/CloneBlockDefinition.bml +41 -0
- package/blocks/org/blockml/bml/target/fatblock/capability/CollectCandidateFqns.bml +57 -0
- package/blocks/org/blockml/bml/target/fatblock/capability/FatOutputBasename.bml +45 -0
- package/blocks/org/blockml/bml/target/fatblock/capability/FilterByIncludes.bml +48 -0
- package/blocks/org/blockml/bml/target/fatblock/capability/MatchesIncludePattern.bml +44 -0
- package/blocks/org/blockml/bml/target/fatblock/capability/MergeNamespaceBindings.bml +48 -0
- package/blocks/org/blockml/bml/target/fatblock/capability/Render.bml +49 -0
- package/blocks/org/blockml/bml/target/fatblock/capability/ResolveOptions.bml +46 -0
- package/blocks/org/blockml/bml/target/fatblock/capability/RootFqnsByFilePath.bml +45 -0
- package/blocks/org/blockml/bml/target/fatblock/capability/SerializeFatDocument.bml +48 -0
- package/blocks/org/blockml/bml/target/fatblock/capability/ValidateRequest.bml +45 -0
- package/blocks/org/blockml/bml/target/fatblock/config/DefaultFatBlockOptions.bml +35 -0
- package/blocks/org/blockml/bml/target/fatblock/config/FatBlockConstants.bml +38 -0
- package/blocks/org/blockml/bml/target/fatblock/documentation/ArchitectureOverview.bml +53 -0
- package/blocks/org/blockml/bml/target/fatblock/documentation/CandidateCollection.bml +45 -0
- package/blocks/org/blockml/bml/target/fatblock/documentation/DesignDecisions.bml +51 -0
- package/blocks/org/blockml/bml/target/fatblock/documentation/Diagnostics.bml +48 -0
- package/blocks/org/blockml/bml/target/fatblock/documentation/EmbedAssemblyRules.bml +46 -0
- package/blocks/org/blockml/bml/target/fatblock/documentation/Introduction.bml +49 -0
- package/blocks/org/blockml/bml/target/fatblock/documentation/LayerSeparation.bml +50 -0
- package/blocks/org/blockml/bml/target/fatblock/documentation/NamespaceMergeRules.bml +42 -0
- package/blocks/org/blockml/bml/target/fatblock/documentation/OutputLayout.bml +40 -0
- package/blocks/org/blockml/bml/target/fatblock/documentation/PackageOwnership.bml +47 -0
- package/blocks/org/blockml/bml/target/fatblock/documentation/PublicApi.bml +48 -0
- package/blocks/org/blockml/bml/target/fatblock/documentation/ScopeExclusions.bml +40 -0
- package/blocks/org/blockml/bml/target/fatblock/documentation/V1Scope.bml +49 -0
- package/dist/assemble-fat-document.d.ts +13 -0
- package/dist/assemble-fat-document.d.ts.map +1 -0
- package/dist/assemble-fat-document.js +110 -0
- package/dist/assemble-fat-document.js.map +1 -0
- package/dist/clone-block.d.ts +3 -0
- package/dist/clone-block.d.ts.map +1 -0
- package/dist/clone-block.js +4 -0
- package/dist/clone-block.js.map +1 -0
- package/dist/collect-candidates.d.ts +8 -0
- package/dist/collect-candidates.d.ts.map +1 -0
- package/dist/collect-candidates.js +41 -0
- package/dist/collect-candidates.js.map +1 -0
- package/dist/fat-output-path.d.ts +2 -0
- package/dist/fat-output-path.d.ts.map +1 -0
- package/dist/fat-output-path.js +9 -0
- package/dist/fat-output-path.js.map +1 -0
- package/dist/fatblock-target.d.ts +16 -0
- package/dist/fatblock-target.d.ts.map +1 -0
- package/dist/fatblock-target.js +48 -0
- package/dist/fatblock-target.js.map +1 -0
- package/dist/filter-includes.d.ts +3 -0
- package/dist/filter-includes.d.ts.map +1 -0
- package/dist/filter-includes.js +14 -0
- package/dist/filter-includes.js.map +1 -0
- package/dist/index.d.ts +9 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +9 -0
- package/dist/index.js.map +1 -0
- package/dist/merge-namespace-bindings.d.ts +10 -0
- package/dist/merge-namespace-bindings.d.ts.map +1 -0
- package/dist/merge-namespace-bindings.js +23 -0
- package/dist/merge-namespace-bindings.js.map +1 -0
- package/dist/options.d.ts +13 -0
- package/dist/options.d.ts.map +1 -0
- package/dist/options.js +13 -0
- package/dist/options.js.map +1 -0
- package/package.json +44 -0
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
<!--
|
|
2
|
+
FatBlock Capability — Render
|
|
3
|
+
FQN: org.blockml.bml.target.fatblock.capability.Render
|
|
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:bomblock="org.blockml.bml.bom.block"
|
|
13
|
+
xmlns:bomcommon="org.blockml.bml.bom.common"
|
|
14
|
+
xmlns:bomdoc="org.blockml.bml.bom.document"
|
|
15
|
+
xmlns:core="org.blockml.bml.core"
|
|
16
|
+
xmlns:def="org.blockml.bml.definition"
|
|
17
|
+
xmlns:fatblock="org.blockml.bml.target.fatblock"
|
|
18
|
+
xmlns:fbapi="org.blockml.bml.target.fatblock.api"
|
|
19
|
+
xmlns:fbcap="org.blockml.bml.target.fatblock.capability"
|
|
20
|
+
xmlns:fbconfig="org.blockml.bml.target.fatblock.config"
|
|
21
|
+
xmlns:fbdocumentation="org.blockml.bml.target.fatblock.documentation"
|
|
22
|
+
xmlns:serializer="org.blockml.bml.compiler.serializer"
|
|
23
|
+
xmlns:type="org.blockml.bml.type">
|
|
24
|
+
|
|
25
|
+
<name>Render</name>
|
|
26
|
+
<type>fbcap:Render</type>
|
|
27
|
+
<baseType>core:Capability</baseType>
|
|
28
|
+
<is>Public RenderTarget entry: host document to Host.fat.bml</is>
|
|
29
|
+
|
|
30
|
+
<documentation>FB2: name fatblock; accepts document only. FB4: assemble errors or serialize errors yield empty files. Strip info diagnostics from returned list. Orchestrates ResolveOptions, AssembleFatDocument, SerializeFatDocument, FatOutputBasename.</documentation>
|
|
31
|
+
|
|
32
|
+
<references>
|
|
33
|
+
<see type="fbdocumentation:PublicApi" relation="SeeAlso" />
|
|
34
|
+
<see type="fbcap:AssembleFatDocument" relation="SeeAlso" />
|
|
35
|
+
</references>
|
|
36
|
+
|
|
37
|
+
<properties>
|
|
38
|
+
<request type="type:Text">
|
|
39
|
+
<documentation>CompileRequest with targetOptions. (required)</documentation>
|
|
40
|
+
</request>
|
|
41
|
+
<renderContext type="type:Text">
|
|
42
|
+
<documentation>RenderContext with typeRegistry and sourceFilePath. (required)</documentation>
|
|
43
|
+
</renderContext>
|
|
44
|
+
<result type="fbapi:FatBlockRenderOutput">
|
|
45
|
+
<documentation>files and diagnostics. (required)</documentation>
|
|
46
|
+
</result>
|
|
47
|
+
</properties>
|
|
48
|
+
|
|
49
|
+
</block>
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
<!--
|
|
2
|
+
FatBlock Capability — ResolveOptions
|
|
3
|
+
FQN: org.blockml.bml.target.fatblock.capability.ResolveOptions
|
|
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:bomblock="org.blockml.bml.bom.block"
|
|
13
|
+
xmlns:bomcommon="org.blockml.bml.bom.common"
|
|
14
|
+
xmlns:bomdoc="org.blockml.bml.bom.document"
|
|
15
|
+
xmlns:core="org.blockml.bml.core"
|
|
16
|
+
xmlns:def="org.blockml.bml.definition"
|
|
17
|
+
xmlns:fatblock="org.blockml.bml.target.fatblock"
|
|
18
|
+
xmlns:fbapi="org.blockml.bml.target.fatblock.api"
|
|
19
|
+
xmlns:fbcap="org.blockml.bml.target.fatblock.capability"
|
|
20
|
+
xmlns:fbconfig="org.blockml.bml.target.fatblock.config"
|
|
21
|
+
xmlns:fbdocumentation="org.blockml.bml.target.fatblock.documentation"
|
|
22
|
+
xmlns:serializer="org.blockml.bml.compiler.serializer"
|
|
23
|
+
xmlns:type="org.blockml.bml.type">
|
|
24
|
+
|
|
25
|
+
<name>ResolveOptions</name>
|
|
26
|
+
<type>fbcap:ResolveOptions</type>
|
|
27
|
+
<baseType>core:Capability</baseType>
|
|
28
|
+
<is>Merge opaque targetOptions into FatBlockOptions with defaults</is>
|
|
29
|
+
|
|
30
|
+
<documentation>FB1: embeddedBlocksStrategy defaults to error. srcDir, rootDir, include passed through when present.</documentation>
|
|
31
|
+
|
|
32
|
+
<references>
|
|
33
|
+
<see type="fbdocumentation:PublicApi" relation="SeeAlso" />
|
|
34
|
+
<see type="fbconfig:DefaultFatBlockOptions" relation="SeeAlso" />
|
|
35
|
+
</references>
|
|
36
|
+
|
|
37
|
+
<properties>
|
|
38
|
+
<targetOptions type="type:Text">
|
|
39
|
+
<documentation>Opaque CompileRequest.targetOptions. (optional)</documentation>
|
|
40
|
+
</targetOptions>
|
|
41
|
+
<result type="fbapi:FatBlockOptions">
|
|
42
|
+
<documentation>Resolved options. (required)</documentation>
|
|
43
|
+
</result>
|
|
44
|
+
</properties>
|
|
45
|
+
|
|
46
|
+
</block>
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
<!--
|
|
2
|
+
FatBlock Capability — RootFqnsByFilePath
|
|
3
|
+
FQN: org.blockml.bml.target.fatblock.capability.RootFqnsByFilePath
|
|
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:bomblock="org.blockml.bml.bom.block"
|
|
13
|
+
xmlns:bomcommon="org.blockml.bml.bom.common"
|
|
14
|
+
xmlns:bomdoc="org.blockml.bml.bom.document"
|
|
15
|
+
xmlns:core="org.blockml.bml.core"
|
|
16
|
+
xmlns:def="org.blockml.bml.definition"
|
|
17
|
+
xmlns:fatblock="org.blockml.bml.target.fatblock"
|
|
18
|
+
xmlns:fbapi="org.blockml.bml.target.fatblock.api"
|
|
19
|
+
xmlns:fbcap="org.blockml.bml.target.fatblock.capability"
|
|
20
|
+
xmlns:fbconfig="org.blockml.bml.target.fatblock.config"
|
|
21
|
+
xmlns:fbdocumentation="org.blockml.bml.target.fatblock.documentation"
|
|
22
|
+
xmlns:serializer="org.blockml.bml.compiler.serializer"
|
|
23
|
+
xmlns:type="org.blockml.bml.type">
|
|
24
|
+
|
|
25
|
+
<name>RootFqnsByFilePath</name>
|
|
26
|
+
<type>fbcap:RootFqnsByFilePath</type>
|
|
27
|
+
<baseType>core:Capability</baseType>
|
|
28
|
+
<is>Map each source file to its root FQN</is>
|
|
29
|
+
|
|
30
|
+
<documentation>FB5: group registry keys by filePath; skip missing or angle-bracket paths; root = FQN not prefixed by another FQN from the same file (subBlocks excluded).</documentation>
|
|
31
|
+
|
|
32
|
+
<references>
|
|
33
|
+
<see type="fbdocumentation:CandidateCollection" relation="SeeAlso" />
|
|
34
|
+
</references>
|
|
35
|
+
|
|
36
|
+
<properties>
|
|
37
|
+
<typeRegistry type="type:Text">
|
|
38
|
+
<documentation>TypeRegistry. (required)</documentation>
|
|
39
|
+
</typeRegistry>
|
|
40
|
+
<result type="type:Text">
|
|
41
|
+
<documentation>Map filePath to root FQN. (required)</documentation>
|
|
42
|
+
</result>
|
|
43
|
+
</properties>
|
|
44
|
+
|
|
45
|
+
</block>
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
<!--
|
|
2
|
+
FatBlock Capability — SerializeFatDocument
|
|
3
|
+
FQN: org.blockml.bml.target.fatblock.capability.SerializeFatDocument
|
|
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:bomblock="org.blockml.bml.bom.block"
|
|
13
|
+
xmlns:bomcommon="org.blockml.bml.bom.common"
|
|
14
|
+
xmlns:bomdoc="org.blockml.bml.bom.document"
|
|
15
|
+
xmlns:core="org.blockml.bml.core"
|
|
16
|
+
xmlns:def="org.blockml.bml.definition"
|
|
17
|
+
xmlns:fatblock="org.blockml.bml.target.fatblock"
|
|
18
|
+
xmlns:fbapi="org.blockml.bml.target.fatblock.api"
|
|
19
|
+
xmlns:fbcap="org.blockml.bml.target.fatblock.capability"
|
|
20
|
+
xmlns:fbconfig="org.blockml.bml.target.fatblock.config"
|
|
21
|
+
xmlns:fbdocumentation="org.blockml.bml.target.fatblock.documentation"
|
|
22
|
+
xmlns:serializer="org.blockml.bml.compiler.serializer"
|
|
23
|
+
xmlns:type="org.blockml.bml.type">
|
|
24
|
+
|
|
25
|
+
<name>SerializeFatDocument</name>
|
|
26
|
+
<type>fbcap:SerializeFatDocument</type>
|
|
27
|
+
<baseType>core:Capability</baseType>
|
|
28
|
+
<is>Serialize fat BomDocument to canonical BML XML</is>
|
|
29
|
+
|
|
30
|
+
<documentation>FB17: call @blockml/serializer serialize(document, { indent: 2 }). Returns text and diagnostics.</documentation>
|
|
31
|
+
|
|
32
|
+
<references>
|
|
33
|
+
<see type="fbdocumentation:OutputLayout" relation="SeeAlso" />
|
|
34
|
+
</references>
|
|
35
|
+
|
|
36
|
+
<properties>
|
|
37
|
+
<document type="bomdoc:BomDocument">
|
|
38
|
+
<documentation>Assembled fat document. (required)</documentation>
|
|
39
|
+
</document>
|
|
40
|
+
<text type="type:Text">
|
|
41
|
+
<documentation>Serialized XML or null. (optional)</documentation>
|
|
42
|
+
</text>
|
|
43
|
+
<diagnostics type="type:Text">
|
|
44
|
+
<documentation>Serialize diagnostics. (required)</documentation>
|
|
45
|
+
</diagnostics>
|
|
46
|
+
</properties>
|
|
47
|
+
|
|
48
|
+
</block>
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
<!--
|
|
2
|
+
FatBlock Capability — ValidateRequest
|
|
3
|
+
FQN: org.blockml.bml.target.fatblock.capability.ValidateRequest
|
|
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:bomblock="org.blockml.bml.bom.block"
|
|
13
|
+
xmlns:bomcommon="org.blockml.bml.bom.common"
|
|
14
|
+
xmlns:bomdoc="org.blockml.bml.bom.document"
|
|
15
|
+
xmlns:core="org.blockml.bml.core"
|
|
16
|
+
xmlns:def="org.blockml.bml.definition"
|
|
17
|
+
xmlns:fatblock="org.blockml.bml.target.fatblock"
|
|
18
|
+
xmlns:fbapi="org.blockml.bml.target.fatblock.api"
|
|
19
|
+
xmlns:fbcap="org.blockml.bml.target.fatblock.capability"
|
|
20
|
+
xmlns:fbconfig="org.blockml.bml.target.fatblock.config"
|
|
21
|
+
xmlns:fbdocumentation="org.blockml.bml.target.fatblock.documentation"
|
|
22
|
+
xmlns:serializer="org.blockml.bml.compiler.serializer"
|
|
23
|
+
xmlns:type="org.blockml.bml.type">
|
|
24
|
+
|
|
25
|
+
<name>ValidateRequest</name>
|
|
26
|
+
<type>fbcap:ValidateRequest</type>
|
|
27
|
+
<baseType>core:Capability</baseType>
|
|
28
|
+
<is>Validate CompileRequest before render</is>
|
|
29
|
+
|
|
30
|
+
<documentation>FB3: if srcDir missing, return BML_FATBLOCK_SRC_REQUIRED error diagnostic. Otherwise empty list.</documentation>
|
|
31
|
+
|
|
32
|
+
<references>
|
|
33
|
+
<see type="fbdocumentation:Diagnostics" relation="SeeAlso" />
|
|
34
|
+
</references>
|
|
35
|
+
|
|
36
|
+
<properties>
|
|
37
|
+
<request type="type:Text">
|
|
38
|
+
<documentation>CompileRequest. (required)</documentation>
|
|
39
|
+
</request>
|
|
40
|
+
<result type="type:Text">
|
|
41
|
+
<documentation>Diagnostic[]. (required)</documentation>
|
|
42
|
+
</result>
|
|
43
|
+
</properties>
|
|
44
|
+
|
|
45
|
+
</block>
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
<!--
|
|
2
|
+
FatBlock Config — DefaultFatBlockOptions
|
|
3
|
+
FQN: org.blockml.bml.target.fatblock.config.DefaultFatBlockOptions
|
|
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:bomblock="org.blockml.bml.bom.block"
|
|
13
|
+
xmlns:bomcommon="org.blockml.bml.bom.common"
|
|
14
|
+
xmlns:bomdoc="org.blockml.bml.bom.document"
|
|
15
|
+
xmlns:core="org.blockml.bml.core"
|
|
16
|
+
xmlns:def="org.blockml.bml.definition"
|
|
17
|
+
xmlns:fatblock="org.blockml.bml.target.fatblock"
|
|
18
|
+
xmlns:fbapi="org.blockml.bml.target.fatblock.api"
|
|
19
|
+
xmlns:fbcap="org.blockml.bml.target.fatblock.capability"
|
|
20
|
+
xmlns:fbconfig="org.blockml.bml.target.fatblock.config"
|
|
21
|
+
xmlns:fbdocumentation="org.blockml.bml.target.fatblock.documentation"
|
|
22
|
+
xmlns:serializer="org.blockml.bml.compiler.serializer"
|
|
23
|
+
xmlns:type="org.blockml.bml.type">
|
|
24
|
+
|
|
25
|
+
<name>DefaultFatBlockOptions</name>
|
|
26
|
+
<type>fbconfig:DefaultFatBlockOptions</type>
|
|
27
|
+
<baseType>fatblock:FatblockType</baseType>
|
|
28
|
+
<is>Defaults applied by ResolveOptions</is>
|
|
29
|
+
|
|
30
|
+
<documentation>FB1: only embeddedBlocksStrategy has a default; srcDir/rootDir/include remain unset until host provides them.</documentation>
|
|
31
|
+
<properties>
|
|
32
|
+
<embeddedBlocksStrategy type="type:Text"><documentation>"error"</documentation></embeddedBlocksStrategy>
|
|
33
|
+
</properties>
|
|
34
|
+
|
|
35
|
+
</block>
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
<!--
|
|
2
|
+
FatBlock Config — FatBlockConstants
|
|
3
|
+
FQN: org.blockml.bml.target.fatblock.config.FatBlockConstants
|
|
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:bomblock="org.blockml.bml.bom.block"
|
|
13
|
+
xmlns:bomcommon="org.blockml.bml.bom.common"
|
|
14
|
+
xmlns:bomdoc="org.blockml.bml.bom.document"
|
|
15
|
+
xmlns:core="org.blockml.bml.core"
|
|
16
|
+
xmlns:def="org.blockml.bml.definition"
|
|
17
|
+
xmlns:fatblock="org.blockml.bml.target.fatblock"
|
|
18
|
+
xmlns:fbapi="org.blockml.bml.target.fatblock.api"
|
|
19
|
+
xmlns:fbcap="org.blockml.bml.target.fatblock.capability"
|
|
20
|
+
xmlns:fbconfig="org.blockml.bml.target.fatblock.config"
|
|
21
|
+
xmlns:fbdocumentation="org.blockml.bml.target.fatblock.documentation"
|
|
22
|
+
xmlns:serializer="org.blockml.bml.compiler.serializer"
|
|
23
|
+
xmlns:type="org.blockml.bml.type">
|
|
24
|
+
|
|
25
|
+
<name>FatBlockConstants</name>
|
|
26
|
+
<type>fbconfig:FatBlockConstants</type>
|
|
27
|
+
<baseType>fatblock:FatblockType</baseType>
|
|
28
|
+
<is>Well-known FatBlock constants</is>
|
|
29
|
+
|
|
30
|
+
<properties>
|
|
31
|
+
<REGISTRY_NAME type="type:Text"><documentation>Always "fatblock".</documentation></REGISTRY_NAME>
|
|
32
|
+
<ACCEPTS type="type:Text"><documentation>document only.</documentation></ACCEPTS>
|
|
33
|
+
<DEFAULT_EMBEDDED_BLOCKS_STRATEGY type="type:Text"><documentation>"error".</documentation></DEFAULT_EMBEDDED_BLOCKS_STRATEGY>
|
|
34
|
+
<SERIALIZE_INDENT type="type:Integer"><documentation>2 — passed to @blockml/serializer.</documentation></SERIALIZE_INDENT>
|
|
35
|
+
<DEFAULT_XMLNS type="type:Text"><documentation>http://blockml.org/bml for empty prefix when bindings omitted.</documentation></DEFAULT_XMLNS>
|
|
36
|
+
</properties>
|
|
37
|
+
|
|
38
|
+
</block>
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
<!--
|
|
2
|
+
FatBlock Documentation — ArchitectureOverview
|
|
3
|
+
FQN: org.blockml.bml.target.fatblock.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:bomblock="org.blockml.bml.bom.block"
|
|
13
|
+
xmlns:bomcommon="org.blockml.bml.bom.common"
|
|
14
|
+
xmlns:bomdoc="org.blockml.bml.bom.document"
|
|
15
|
+
xmlns:core="org.blockml.bml.core"
|
|
16
|
+
xmlns:def="org.blockml.bml.definition"
|
|
17
|
+
xmlns:fatblock="org.blockml.bml.target.fatblock"
|
|
18
|
+
xmlns:fbapi="org.blockml.bml.target.fatblock.api"
|
|
19
|
+
xmlns:fbcap="org.blockml.bml.target.fatblock.capability"
|
|
20
|
+
xmlns:fbconfig="org.blockml.bml.target.fatblock.config"
|
|
21
|
+
xmlns:fbdocumentation="org.blockml.bml.target.fatblock.documentation"
|
|
22
|
+
xmlns:serializer="org.blockml.bml.compiler.serializer"
|
|
23
|
+
xmlns:type="org.blockml.bml.type"
|
|
24
|
+
xmlns:doc="org.blockml.bml.documentation">
|
|
25
|
+
|
|
26
|
+
<name>ArchitectureOverview</name>
|
|
27
|
+
<type>fbdocumentation:ArchitectureOverview</type>
|
|
28
|
+
<baseType>core:Documentation</baseType>
|
|
29
|
+
<is>Module map and assemble pipeline</is>
|
|
30
|
+
|
|
31
|
+
<documentation>Entry: fbcap:Render (FatBlockTarget.render)
|
|
32
|
+
→ ResolveOptions
|
|
33
|
+
→ AssembleFatDocument (RootFqnsByFilePath, CollectCandidateFqns, FilterByIncludes,
|
|
34
|
+
CloneBlockDefinition, MergeNamespaceBindings)
|
|
35
|
+
→ SerializeFatDocument
|
|
36
|
+
→ FatOutputBasename
|
|
37
|
+
|
|
38
|
+
ValidateRequest runs before render when the host calls it; requires srcDir.
|
|
39
|
+
|
|
40
|
+
TypeScript module map:
|
|
41
|
+
• options.ts → ResolveOptions, FatBlockOptions
|
|
42
|
+
• collect-candidates.ts → RootFqnsByFilePath, CollectCandidateFqns
|
|
43
|
+
• filter-includes.ts → MatchesIncludePattern, FilterByIncludes
|
|
44
|
+
• clone-block.ts → CloneBlockDefinition
|
|
45
|
+
• merge-namespace-bindings.ts → MergeNamespaceBindings
|
|
46
|
+
• assemble-fat-document.ts → AssembleFatDocument, SerializeFatDocument
|
|
47
|
+
• fat-output-path.ts → FatOutputBasename
|
|
48
|
+
• fatblock-target.ts → Render, ValidateRequest</documentation>
|
|
49
|
+
<references>
|
|
50
|
+
<see type="fbdocumentation:V1Scope" relation="ReadNext"></see>
|
|
51
|
+
</references>
|
|
52
|
+
|
|
53
|
+
</block>
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
<!--
|
|
2
|
+
FatBlock Documentation — CandidateCollection
|
|
3
|
+
FQN: org.blockml.bml.target.fatblock.documentation.CandidateCollection
|
|
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:bomblock="org.blockml.bml.bom.block"
|
|
13
|
+
xmlns:bomcommon="org.blockml.bml.bom.common"
|
|
14
|
+
xmlns:bomdoc="org.blockml.bml.bom.document"
|
|
15
|
+
xmlns:core="org.blockml.bml.core"
|
|
16
|
+
xmlns:def="org.blockml.bml.definition"
|
|
17
|
+
xmlns:fatblock="org.blockml.bml.target.fatblock"
|
|
18
|
+
xmlns:fbapi="org.blockml.bml.target.fatblock.api"
|
|
19
|
+
xmlns:fbcap="org.blockml.bml.target.fatblock.capability"
|
|
20
|
+
xmlns:fbconfig="org.blockml.bml.target.fatblock.config"
|
|
21
|
+
xmlns:fbdocumentation="org.blockml.bml.target.fatblock.documentation"
|
|
22
|
+
xmlns:serializer="org.blockml.bml.compiler.serializer"
|
|
23
|
+
xmlns:type="org.blockml.bml.type"
|
|
24
|
+
xmlns:doc="org.blockml.bml.documentation">
|
|
25
|
+
|
|
26
|
+
<name>CandidateCollection</name>
|
|
27
|
+
<type>fbdocumentation:CandidateCollection</type>
|
|
28
|
+
<baseType>core:Documentation</baseType>
|
|
29
|
+
<is>Root FQN selection and include filters (FB5–FB7)</is>
|
|
30
|
+
|
|
31
|
+
<documentation>FB5 RootFqnsByFilePath: per source file, root FQN is one not prefixed by another FQN
|
|
32
|
+
from the same file — Sub-Block registry keys are not embed candidates.
|
|
33
|
+
|
|
34
|
+
FB6 CollectCandidateFqns: roots whose file path is under resolve(rootDir, srcDir);
|
|
35
|
+
exclude host FQN; sort ascending; apply include when non-empty.
|
|
36
|
+
|
|
37
|
+
FB7 Include: pattern ending * is prefix match; else exact FQN; OR across patterns;
|
|
38
|
+
empty/omitted patterns keep all candidates.
|
|
39
|
+
|
|
40
|
+
V1 semantics = folder pool, not dependency graph walk.</documentation>
|
|
41
|
+
<references>
|
|
42
|
+
<see type="fbdocumentation:EmbedAssemblyRules" relation="ReadNext"></see>
|
|
43
|
+
</references>
|
|
44
|
+
|
|
45
|
+
</block>
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
<!--
|
|
2
|
+
FatBlock Documentation — DesignDecisions
|
|
3
|
+
FQN: org.blockml.bml.target.fatblock.documentation.DesignDecisions
|
|
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:bomblock="org.blockml.bml.bom.block"
|
|
13
|
+
xmlns:bomcommon="org.blockml.bml.bom.common"
|
|
14
|
+
xmlns:bomdoc="org.blockml.bml.bom.document"
|
|
15
|
+
xmlns:core="org.blockml.bml.core"
|
|
16
|
+
xmlns:def="org.blockml.bml.definition"
|
|
17
|
+
xmlns:fatblock="org.blockml.bml.target.fatblock"
|
|
18
|
+
xmlns:fbapi="org.blockml.bml.target.fatblock.api"
|
|
19
|
+
xmlns:fbcap="org.blockml.bml.target.fatblock.capability"
|
|
20
|
+
xmlns:fbconfig="org.blockml.bml.target.fatblock.config"
|
|
21
|
+
xmlns:fbdocumentation="org.blockml.bml.target.fatblock.documentation"
|
|
22
|
+
xmlns:serializer="org.blockml.bml.compiler.serializer"
|
|
23
|
+
xmlns:type="org.blockml.bml.type"
|
|
24
|
+
xmlns:doc="org.blockml.bml.documentation">
|
|
25
|
+
|
|
26
|
+
<name>DesignDecisions</name>
|
|
27
|
+
<type>fbdocumentation:DesignDecisions</type>
|
|
28
|
+
<baseType>core:Documentation</baseType>
|
|
29
|
+
<is>Normative FatBlock decisions FB1–FB20</is>
|
|
30
|
+
|
|
31
|
+
<documentation>FB1 ResolveOptions default embeddedBlocksStrategy=error.
|
|
32
|
+
FB2 accepts document only; registry name fatblock.
|
|
33
|
+
FB3 ValidateRequest requires srcDir.
|
|
34
|
+
FB4 render empty files on assemble/serialize errors; strip info diags.
|
|
35
|
+
FB5 RootFqnsByFilePath excludes Sub-Block FQNs.
|
|
36
|
+
FB6 CollectCandidateFqns path-under-src; exclude host; sort.
|
|
37
|
+
FB7 include exact or prefix*; OR; empty=all.
|
|
38
|
+
FB8 CloneBlockDefinition via structuredClone.
|
|
39
|
+
FB9 Merge host then embeds.
|
|
40
|
+
FB10 prefix collision diagnostic; no rewrite.
|
|
41
|
+
FB11 default empty-prefix xmlns.
|
|
42
|
+
FB12–FB16 assemble host/embed empty-embeds and not-found rules.
|
|
43
|
+
FB17 preserve subBlocks; clear nested embeds on clone; serialize indent 2.
|
|
44
|
+
FB18 Host.fat.bml basename.
|
|
45
|
+
FB19 V1 = folder pool not transitive closure.
|
|
46
|
+
FB20 embeddedBlocksStrategy reserved; assemble hardcodes empty-embeds check.</documentation>
|
|
47
|
+
<references>
|
|
48
|
+
<see type="fbdocumentation:PackageOwnership" relation="ReadNext"></see>
|
|
49
|
+
</references>
|
|
50
|
+
|
|
51
|
+
</block>
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
<!--
|
|
2
|
+
FatBlock Documentation — Diagnostics
|
|
3
|
+
FQN: org.blockml.bml.target.fatblock.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:bomblock="org.blockml.bml.bom.block"
|
|
13
|
+
xmlns:bomcommon="org.blockml.bml.bom.common"
|
|
14
|
+
xmlns:bomdoc="org.blockml.bml.bom.document"
|
|
15
|
+
xmlns:core="org.blockml.bml.core"
|
|
16
|
+
xmlns:def="org.blockml.bml.definition"
|
|
17
|
+
xmlns:fatblock="org.blockml.bml.target.fatblock"
|
|
18
|
+
xmlns:fbapi="org.blockml.bml.target.fatblock.api"
|
|
19
|
+
xmlns:fbcap="org.blockml.bml.target.fatblock.capability"
|
|
20
|
+
xmlns:fbconfig="org.blockml.bml.target.fatblock.config"
|
|
21
|
+
xmlns:fbdocumentation="org.blockml.bml.target.fatblock.documentation"
|
|
22
|
+
xmlns:serializer="org.blockml.bml.compiler.serializer"
|
|
23
|
+
xmlns:type="org.blockml.bml.type"
|
|
24
|
+
xmlns:doc="org.blockml.bml.documentation">
|
|
25
|
+
|
|
26
|
+
<name>Diagnostics</name>
|
|
27
|
+
<type>fbdocumentation:Diagnostics</type>
|
|
28
|
+
<baseType>core:Documentation</baseType>
|
|
29
|
+
<is>FatBlock-owned and shared diagnostic codes</is>
|
|
30
|
+
|
|
31
|
+
<documentation>Owned / emitted by this package:
|
|
32
|
+
• BML_FATBLOCK_SRC_REQUIRED — missing srcDir
|
|
33
|
+
• BML_FATBLOCK_HOST_NOT_FOUND — host file not a registry root
|
|
34
|
+
• BML_FATBLOCK_HOST_HAS_EMBEDDED_BLOCKS — host already has embeds
|
|
35
|
+
• BML_FATBLOCK_EMBED_NOT_FOUND — candidate missing or not root
|
|
36
|
+
• BML_FATBLOCK_EMBED_HAS_EMBEDDED_BLOCKS — candidate already has embeds
|
|
37
|
+
• BML_DUPLICATE_EMBEDDED_BLOCK — same FQN twice in candidates
|
|
38
|
+
• BML_NAMESPACE_PREFIX_COLLISION — conflicting prefix to URI
|
|
39
|
+
|
|
40
|
+
Shared upstream (not reimplemented here): BML_EMBEDDED_BLOCKS_ON_SUBBLOCK,
|
|
41
|
+
BML_NESTED_EMBEDDED_BLOCKS (validator); BML_NAMESPACE_UNBOUND (serializer).
|
|
42
|
+
|
|
43
|
+
Severity: all FatBlock codes are error. CLI exit: config → 2; assemble → 1.</documentation>
|
|
44
|
+
<references>
|
|
45
|
+
<see type="fbdocumentation:DesignDecisions" relation="ReadNext"></see>
|
|
46
|
+
</references>
|
|
47
|
+
|
|
48
|
+
</block>
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
<!--
|
|
2
|
+
FatBlock Documentation — EmbedAssemblyRules
|
|
3
|
+
FQN: org.blockml.bml.target.fatblock.documentation.EmbedAssemblyRules
|
|
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:bomblock="org.blockml.bml.bom.block"
|
|
13
|
+
xmlns:bomcommon="org.blockml.bml.bom.common"
|
|
14
|
+
xmlns:bomdoc="org.blockml.bml.bom.document"
|
|
15
|
+
xmlns:core="org.blockml.bml.core"
|
|
16
|
+
xmlns:def="org.blockml.bml.definition"
|
|
17
|
+
xmlns:fatblock="org.blockml.bml.target.fatblock"
|
|
18
|
+
xmlns:fbapi="org.blockml.bml.target.fatblock.api"
|
|
19
|
+
xmlns:fbcap="org.blockml.bml.target.fatblock.capability"
|
|
20
|
+
xmlns:fbconfig="org.blockml.bml.target.fatblock.config"
|
|
21
|
+
xmlns:fbdocumentation="org.blockml.bml.target.fatblock.documentation"
|
|
22
|
+
xmlns:serializer="org.blockml.bml.compiler.serializer"
|
|
23
|
+
xmlns:type="org.blockml.bml.type"
|
|
24
|
+
xmlns:doc="org.blockml.bml.documentation">
|
|
25
|
+
|
|
26
|
+
<name>EmbedAssemblyRules</name>
|
|
27
|
+
<type>fbdocumentation:EmbedAssemblyRules</type>
|
|
28
|
+
<baseType>core:Documentation</baseType>
|
|
29
|
+
<is>Host and embed assembly invariants (FB12–FB17)</is>
|
|
30
|
+
|
|
31
|
+
<documentation>FB12 srcDir required or BML_FATBLOCK_SRC_REQUIRED.
|
|
32
|
+
FB13 host missing from registry → BML_FATBLOCK_HOST_NOT_FOUND.
|
|
33
|
+
FB14 host.embeddedBlocks.length greater than 0 → BML_FATBLOCK_HOST_HAS_EMBEDDED_BLOCKS.
|
|
34
|
+
FB15 duplicate candidate FQN → BML_DUPLICATE_EMBEDDED_BLOCK.
|
|
35
|
+
FB16 embed must be document root (doc.block.type === fqn) else BML_FATBLOCK_EMBED_NOT_FOUND;
|
|
36
|
+
embed with non-empty embeddedBlocks → BML_FATBLOCK_EMBED_HAS_EMBEDDED_BLOCKS.
|
|
37
|
+
FB17 clone each embed; force cloned.embeddedBlocks empty; preserve subBlocks[];
|
|
38
|
+
attach to host clone in sorted FQN order; merge namespaces; any error aborts document null.
|
|
39
|
+
|
|
40
|
+
Meta-model (BOM): embeds are flat under root; Sub-Blocks forbid embeds — validator owns
|
|
41
|
+
BML_EMBEDDED_BLOCKS_ON_SUBBLOCK / BML_NESTED_EMBEDDED_BLOCKS.</documentation>
|
|
42
|
+
<references>
|
|
43
|
+
<see type="fbdocumentation:NamespaceMergeRules" relation="ReadNext"></see>
|
|
44
|
+
</references>
|
|
45
|
+
|
|
46
|
+
</block>
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
<!--
|
|
2
|
+
FatBlock Documentation — Introduction
|
|
3
|
+
FQN: org.blockml.bml.target.fatblock.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:bomblock="org.blockml.bml.bom.block"
|
|
13
|
+
xmlns:bomcommon="org.blockml.bml.bom.common"
|
|
14
|
+
xmlns:bomdoc="org.blockml.bml.bom.document"
|
|
15
|
+
xmlns:core="org.blockml.bml.core"
|
|
16
|
+
xmlns:def="org.blockml.bml.definition"
|
|
17
|
+
xmlns:fatblock="org.blockml.bml.target.fatblock"
|
|
18
|
+
xmlns:fbapi="org.blockml.bml.target.fatblock.api"
|
|
19
|
+
xmlns:fbcap="org.blockml.bml.target.fatblock.capability"
|
|
20
|
+
xmlns:fbconfig="org.blockml.bml.target.fatblock.config"
|
|
21
|
+
xmlns:fbdocumentation="org.blockml.bml.target.fatblock.documentation"
|
|
22
|
+
xmlns:serializer="org.blockml.bml.compiler.serializer"
|
|
23
|
+
xmlns:type="org.blockml.bml.type"
|
|
24
|
+
xmlns:doc="org.blockml.bml.documentation">
|
|
25
|
+
|
|
26
|
+
<name>Introduction</name>
|
|
27
|
+
<type>fbdocumentation:Introduction</type>
|
|
28
|
+
<baseType>core:Documentation</baseType>
|
|
29
|
+
<is>Purpose and scope of the FatBlock render target</is>
|
|
30
|
+
|
|
31
|
+
<documentation>The @blockml/fatblock-target package implements RenderTarget registry name fatblock.
|
|
32
|
+
It emits one portable .bml file with peer root blocks inlined under the host root
|
|
33
|
+
embeddedBlocks aggregation (Inline Library model).
|
|
34
|
+
|
|
35
|
+
This library (org.blockml.bml.target.fatblock.*) is the SSOT. TypeScript in
|
|
36
|
+
packages/fatblock-target/src/ implements it. Tests in packages/fatblock-target/test/
|
|
37
|
+
encode behavioral contracts.
|
|
38
|
+
|
|
39
|
+
V1 is a folder-bundle target: document scope, required srcDir (--src) peer pool,
|
|
40
|
+
optional include FQN filters. Not transitive dependency closure (that is v2).
|
|
41
|
+
|
|
42
|
+
Pipeline: ResolveOptions → AssembleFatDocument → SerializeFatDocument → Host.fat.bml.
|
|
43
|
+
Host CLI wiring (flags, exit codes) lives in org.blockml.bml.cli.*</documentation>
|
|
44
|
+
<references>
|
|
45
|
+
<see type="fbdocumentation:LayerSeparation" relation="ReadNext"></see>
|
|
46
|
+
<see type="fbcap:Render" relation="SeeAlso"></see>
|
|
47
|
+
</references>
|
|
48
|
+
|
|
49
|
+
</block>
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
<!--
|
|
2
|
+
FatBlock Documentation — LayerSeparation
|
|
3
|
+
FQN: org.blockml.bml.target.fatblock.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:bomblock="org.blockml.bml.bom.block"
|
|
13
|
+
xmlns:bomcommon="org.blockml.bml.bom.common"
|
|
14
|
+
xmlns:bomdoc="org.blockml.bml.bom.document"
|
|
15
|
+
xmlns:core="org.blockml.bml.core"
|
|
16
|
+
xmlns:def="org.blockml.bml.definition"
|
|
17
|
+
xmlns:fatblock="org.blockml.bml.target.fatblock"
|
|
18
|
+
xmlns:fbapi="org.blockml.bml.target.fatblock.api"
|
|
19
|
+
xmlns:fbcap="org.blockml.bml.target.fatblock.capability"
|
|
20
|
+
xmlns:fbconfig="org.blockml.bml.target.fatblock.config"
|
|
21
|
+
xmlns:fbdocumentation="org.blockml.bml.target.fatblock.documentation"
|
|
22
|
+
xmlns:serializer="org.blockml.bml.compiler.serializer"
|
|
23
|
+
xmlns:type="org.blockml.bml.type"
|
|
24
|
+
xmlns:doc="org.blockml.bml.documentation">
|
|
25
|
+
|
|
26
|
+
<name>LayerSeparation</name>
|
|
27
|
+
<type>fbdocumentation:LayerSeparation</type>
|
|
28
|
+
<baseType>core:Documentation</baseType>
|
|
29
|
+
<is>FatBlock vs BOM vs serializer vs CLI</is>
|
|
30
|
+
|
|
31
|
+
<documentation>Layers relevant to FatBlock:
|
|
32
|
+
|
|
33
|
+
org.blockml.bml.target.fatblock.* (this package) — candidate collection, include filter,
|
|
34
|
+
assemble/merge, FatBlockOptions, FatBlock diagnostics, output basename.
|
|
35
|
+
|
|
36
|
+
org.blockml.bml.bom.* — embeddedBlocks meta-model; root-only embeds; no nested embeds
|
|
37
|
+
on Sub-Blocks (validator). FatBlock consumes BomDocument / BlockDefinition.
|
|
38
|
+
|
|
39
|
+
org.blockml.bml.compiler.serializer.* — canonical XML emit of the assembled document.
|
|
40
|
+
|
|
41
|
+
@blockml/compiler — RenderTarget contract, compileToOutput, document scope.
|
|
42
|
+
|
|
43
|
+
org.blockml.bml.cli.* — --src / --include / --out, host file required, write Host.fat.bml.
|
|
44
|
+
|
|
45
|
+
Sibling targets (blockdoc, xsd) and domain SCAD are out of scope.</documentation>
|
|
46
|
+
<references>
|
|
47
|
+
<see type="fbdocumentation:ArchitectureOverview" relation="ReadNext"></see>
|
|
48
|
+
</references>
|
|
49
|
+
|
|
50
|
+
</block>
|