@blockml/bom 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/bom/Library.bml +153 -0
- package/blocks/org/blockml/bml/bom/README.bml +55 -0
- package/blocks/org/blockml/bml/bom/UrmodellType.bml +39 -0
- package/blocks/org/blockml/bml/bom/api/ParseOptions.bml +42 -0
- package/blocks/org/blockml/bml/bom/api/ParseResult.bml +45 -0
- package/blocks/org/blockml/bml/bom/api/SerializeOptions.bml +42 -0
- package/blocks/org/blockml/bml/bom/api/SerializeResult.bml +45 -0
- package/blocks/org/blockml/bml/bom/api/TypeRegistryReader.bml +34 -0
- package/blocks/org/blockml/bml/bom/api/ValidateOptions.bml +50 -0
- package/blocks/org/blockml/bml/bom/api/ValidateResult.bml +46 -0
- package/blocks/org/blockml/bml/bom/block/AliasEntry.bml +51 -0
- package/blocks/org/blockml/bml/bom/block/BlockDefinition.bml +136 -0
- package/blocks/org/blockml/bml/bom/block/ChangelogEntry.bml +48 -0
- package/blocks/org/blockml/bml/bom/block/DocumentationExample.bml +57 -0
- package/blocks/org/blockml/bml/bom/block/DocumentationProseEntry.bml +51 -0
- package/blocks/org/blockml/bml/bom/block/DocumentationReference.bml +72 -0
- package/blocks/org/blockml/bml/bom/block/GenericType.bml +45 -0
- package/blocks/org/blockml/bml/bom/block/KeywordEntry.bml +51 -0
- package/blocks/org/blockml/bml/bom/block/TypeReferenceEntityInstance.bml +45 -0
- package/blocks/org/blockml/bml/bom/capability/BomEquals.bml +45 -0
- package/blocks/org/blockml/bml/bom/capability/StripProvenance.bml +42 -0
- package/blocks/org/blockml/bml/bom/common/CharacterDataForm.bml +39 -0
- package/blocks/org/blockml/bml/bom/common/Diagnostic.bml +48 -0
- package/blocks/org/blockml/bml/bom/common/DiagnosticSeverity.bml +39 -0
- package/blocks/org/blockml/bml/bom/common/MemberSectionName.bml +39 -0
- package/blocks/org/blockml/bml/bom/common/MetadataElementTrivia.bml +39 -0
- package/blocks/org/blockml/bml/bom/common/SourceInfo.bml +51 -0
- package/blocks/org/blockml/bml/bom/common/SourceLocation.bml +51 -0
- package/blocks/org/blockml/bml/bom/common/XmlNodeKind.bml +39 -0
- package/blocks/org/blockml/bml/bom/common/XmlRenderingBlock.bml +39 -0
- package/blocks/org/blockml/bml/bom/common/XmlRenderingMember.bml +48 -0
- package/blocks/org/blockml/bml/bom/common/XmlTrivia.bml +42 -0
- package/blocks/org/blockml/bml/bom/composition/BlockInstance.bml +72 -0
- package/blocks/org/blockml/bml/bom/composition/BlockInstanceNode.bml +49 -0
- package/blocks/org/blockml/bml/bom/composition/CompositionNode.bml +35 -0
- package/blocks/org/blockml/bml/bom/composition/CompositionTemplate.bml +48 -0
- package/blocks/org/blockml/bml/bom/composition/DirectiveAttribute.bml +35 -0
- package/blocks/org/blockml/bml/bom/composition/EachDirective.bml +49 -0
- package/blocks/org/blockml/bml/bom/composition/IfDirective.bml +43 -0
- package/blocks/org/blockml/bml/bom/composition/InstanceAggregationComposition.bml +42 -0
- package/blocks/org/blockml/bml/bom/composition/UnlessDirective.bml +43 -0
- package/blocks/org/blockml/bml/bom/composition/VirtualContainerNode.bml +49 -0
- package/blocks/org/blockml/bml/bom/composition/WithBinding.bml +42 -0
- package/blocks/org/blockml/bml/bom/composition/WithDirective.bml +43 -0
- package/blocks/org/blockml/bml/bom/document/BomDocument.bml +49 -0
- package/blocks/org/blockml/bml/bom/documentation/AbstractionPrinciple.bml +46 -0
- package/blocks/org/blockml/bml/bom/documentation/ArchitectureOverview.bml +49 -0
- package/blocks/org/blockml/bml/bom/documentation/AuthoredSurfaceTable.bml +47 -0
- package/blocks/org/blockml/bml/bom/documentation/CalibratorExample.bml +53 -0
- package/blocks/org/blockml/bml/bom/documentation/CompositionDirectives.bml +45 -0
- package/blocks/org/blockml/bml/bom/documentation/DesignDecisions.bml +64 -0
- package/blocks/org/blockml/bml/bom/documentation/InstanceIdRules.bml +45 -0
- package/blocks/org/blockml/bml/bom/documentation/Introduction.bml +50 -0
- package/blocks/org/blockml/bml/bom/documentation/LayerSeparation.bml +47 -0
- package/blocks/org/blockml/bml/bom/documentation/MemberValueSemantics.bml +48 -0
- package/blocks/org/blockml/bml/bom/documentation/PackageOwnership.bml +56 -0
- package/blocks/org/blockml/bml/bom/documentation/PublicApi.bml +59 -0
- package/blocks/org/blockml/bml/bom/documentation/RelatedDiagnostics.bml +51 -0
- package/blocks/org/blockml/bml/bom/documentation/ScopeExclusions.bml +47 -0
- package/blocks/org/blockml/bml/bom/documentation/SubBlockAndEmbeddedBlocks.bml +45 -0
- package/blocks/org/blockml/bml/bom/documentation/TypeExpressionsOverview.bml +47 -0
- package/blocks/org/blockml/bml/bom/documentation/ValidationResponsibilities.bml +51 -0
- package/blocks/org/blockml/bml/bom/documentation/VersionRules.bml +41 -0
- package/blocks/org/blockml/bml/bom/documentation/XmlComments.bml +47 -0
- package/blocks/org/blockml/bml/bom/member/AggregationDefinition.bml +58 -0
- package/blocks/org/blockml/bml/bom/member/AssociationDefinition.bml +46 -0
- package/blocks/org/blockml/bml/bom/member/CapabilityDefinition.bml +52 -0
- package/blocks/org/blockml/bml/bom/member/ConstrainableDefinition.bml +39 -0
- package/blocks/org/blockml/bml/bom/member/EmbeddedExpression.bml +45 -0
- package/blocks/org/blockml/bml/bom/member/ImplementationBlock.bml +51 -0
- package/blocks/org/blockml/bml/bom/member/MemberDefinition.bml +35 -0
- package/blocks/org/blockml/bml/bom/member/MemberDefinitionBase.bml +90 -0
- package/blocks/org/blockml/bml/bom/member/PropertyDefinition.bml +61 -0
- package/blocks/org/blockml/bml/bom/member/PropertyValueEntry.bml +42 -0
- package/blocks/org/blockml/bml/bom/type/AnonymousStructType.bml +43 -0
- package/blocks/org/blockml/bml/bom/type/GenericParameterReference.bml +43 -0
- package/blocks/org/blockml/bml/bom/type/InstanceConfiguration.bml +42 -0
- package/blocks/org/blockml/bml/bom/type/Multiplicity.bml +42 -0
- package/blocks/org/blockml/bml/bom/type/NamedTypeReference.bml +52 -0
- package/blocks/org/blockml/bml/bom/type/SelfTypeReference.bml +40 -0
- package/blocks/org/blockml/bml/bom/type/StructField.bml +42 -0
- package/blocks/org/blockml/bml/bom/type/TypeDescriptor.bml +37 -0
- package/blocks/org/blockml/bml/bom/type/TypeExpression.bml +35 -0
- package/blocks/org/blockml/bml/bom/type/UnionTypeExpression.bml +43 -0
- package/blocks/org/blockml/bml/bom/value/Address.bml +54 -0
- package/blocks/org/blockml/bml/bom/value/AddressValue.bml +43 -0
- package/blocks/org/blockml/bml/bom/value/ExpressionValue.bml +49 -0
- package/blocks/org/blockml/bml/bom/value/LiteralValue.bml +49 -0
- package/blocks/org/blockml/bml/bom/value/MemberValue.bml +35 -0
- package/dist/equals.d.ts +10 -0
- package/dist/equals.d.ts.map +1 -0
- package/dist/equals.js +94 -0
- package/dist/equals.js.map +1 -0
- package/dist/index.d.ts +10 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +2 -0
- package/dist/index.js.map +1 -0
- package/dist/types/api.d.ts +50 -0
- package/dist/types/api.d.ts.map +1 -0
- package/dist/types/api.js +2 -0
- package/dist/types/api.js.map +1 -0
- package/dist/types/block-definition.d.ts +150 -0
- package/dist/types/block-definition.d.ts.map +1 -0
- package/dist/types/block-definition.js +2 -0
- package/dist/types/block-definition.js.map +1 -0
- package/dist/types/common.d.ts +60 -0
- package/dist/types/common.d.ts.map +1 -0
- package/dist/types/common.js +2 -0
- package/dist/types/common.js.map +1 -0
- package/dist/types/composition.d.ts +77 -0
- package/dist/types/composition.d.ts.map +1 -0
- package/dist/types/composition.js +2 -0
- package/dist/types/composition.js.map +1 -0
- package/dist/types/document.d.ts +12 -0
- package/dist/types/document.d.ts.map +1 -0
- package/dist/types/document.js +2 -0
- package/dist/types/document.js.map +1 -0
- package/dist/types/member-definition.d.ts +96 -0
- package/dist/types/member-definition.d.ts.map +1 -0
- package/dist/types/member-definition.js +2 -0
- package/dist/types/member-definition.js.map +1 -0
- package/dist/types/type-expression.d.ts +42 -0
- package/dist/types/type-expression.d.ts.map +1 -0
- package/dist/types/type-expression.js +2 -0
- package/dist/types/type-expression.js.map +1 -0
- package/dist/types/values.d.ts +35 -0
- package/dist/types/values.d.ts.map +1 -0
- package/dist/types/values.js +2 -0
- package/dist/types/values.js.map +1 -0
- package/package.json +40 -0
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
<!--
|
|
2
|
+
BOM Urmodell — DirectiveAttribute
|
|
3
|
+
FQN: org.blockml.bml.bom.composition.DirectiveAttribute
|
|
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:bomcap="org.blockml.bml.bom.capability"
|
|
15
|
+
xmlns:bomcommon="org.blockml.bml.bom.common"
|
|
16
|
+
xmlns:bomcomp="org.blockml.bml.bom.composition"
|
|
17
|
+
xmlns:bomdoc="org.blockml.bml.bom.document"
|
|
18
|
+
xmlns:bomdocumentation="org.blockml.bml.bom.documentation"
|
|
19
|
+
xmlns:bommember="org.blockml.bml.bom.member"
|
|
20
|
+
xmlns:bomtype="org.blockml.bml.bom.type"
|
|
21
|
+
xmlns:bomvalue="org.blockml.bml.bom.value"
|
|
22
|
+
xmlns:core="org.blockml.bml.core"
|
|
23
|
+
xmlns:def="org.blockml.bml.definition"
|
|
24
|
+
xmlns:type="org.blockml.bml.type">
|
|
25
|
+
|
|
26
|
+
<name>DirectiveAttribute</name>
|
|
27
|
+
<type>bomcomp:DirectiveAttribute</type>
|
|
28
|
+
<baseType>bom:UrmodellType</baseType>
|
|
29
|
+
<is>Abstract union of flow-control directives</is>
|
|
30
|
+
|
|
31
|
+
<documentation>EachDirective | IfDirective | UnlessDirective | WithDirective. Stored unexpanded.</documentation>
|
|
32
|
+
|
|
33
|
+
<abstract>true</abstract>
|
|
34
|
+
|
|
35
|
+
</block>
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
<!--
|
|
2
|
+
BOM Urmodell — EachDirective
|
|
3
|
+
FQN: org.blockml.bml.bom.composition.EachDirective
|
|
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:bomcap="org.blockml.bml.bom.capability"
|
|
15
|
+
xmlns:bomcommon="org.blockml.bml.bom.common"
|
|
16
|
+
xmlns:bomcomp="org.blockml.bml.bom.composition"
|
|
17
|
+
xmlns:bomdoc="org.blockml.bml.bom.document"
|
|
18
|
+
xmlns:bomdocumentation="org.blockml.bml.bom.documentation"
|
|
19
|
+
xmlns:bommember="org.blockml.bml.bom.member"
|
|
20
|
+
xmlns:bomtype="org.blockml.bml.bom.type"
|
|
21
|
+
xmlns:bomvalue="org.blockml.bml.bom.value"
|
|
22
|
+
xmlns:core="org.blockml.bml.core"
|
|
23
|
+
xmlns:def="org.blockml.bml.definition"
|
|
24
|
+
xmlns:type="org.blockml.bml.type">
|
|
25
|
+
|
|
26
|
+
<name>EachDirective</name>
|
|
27
|
+
<type>bomcomp:EachDirective</type>
|
|
28
|
+
<baseType>bomcomp:DirectiveAttribute</baseType>
|
|
29
|
+
<is>bml:each directive (type: each)</is>
|
|
30
|
+
|
|
31
|
+
<documentation>bml:each directive (type: each)</documentation>
|
|
32
|
+
|
|
33
|
+
<properties>
|
|
34
|
+
<type type="type:Text">
|
|
35
|
+
<documentation>type (required). TS type: type:Text.</documentation>
|
|
36
|
+
<value>each</value>
|
|
37
|
+
</type>
|
|
38
|
+
<variables type="type:Text[]">
|
|
39
|
+
<documentation>variables (required). TS type: type:Text[].</documentation>
|
|
40
|
+
</variables>
|
|
41
|
+
<statVariable type="type:Text">
|
|
42
|
+
<documentation>statVariable (optional). TS type: type:Text.</documentation>
|
|
43
|
+
</statVariable>
|
|
44
|
+
<collection type="bomvalue:ExpressionValue">
|
|
45
|
+
<documentation>collection (required). TS type: bomvalue:ExpressionValue.</documentation>
|
|
46
|
+
</collection>
|
|
47
|
+
</properties>
|
|
48
|
+
|
|
49
|
+
</block>
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
<!--
|
|
2
|
+
BOM Urmodell — IfDirective
|
|
3
|
+
FQN: org.blockml.bml.bom.composition.IfDirective
|
|
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:bomcap="org.blockml.bml.bom.capability"
|
|
15
|
+
xmlns:bomcommon="org.blockml.bml.bom.common"
|
|
16
|
+
xmlns:bomcomp="org.blockml.bml.bom.composition"
|
|
17
|
+
xmlns:bomdoc="org.blockml.bml.bom.document"
|
|
18
|
+
xmlns:bomdocumentation="org.blockml.bml.bom.documentation"
|
|
19
|
+
xmlns:bommember="org.blockml.bml.bom.member"
|
|
20
|
+
xmlns:bomtype="org.blockml.bml.bom.type"
|
|
21
|
+
xmlns:bomvalue="org.blockml.bml.bom.value"
|
|
22
|
+
xmlns:core="org.blockml.bml.core"
|
|
23
|
+
xmlns:def="org.blockml.bml.definition"
|
|
24
|
+
xmlns:type="org.blockml.bml.type">
|
|
25
|
+
|
|
26
|
+
<name>IfDirective</name>
|
|
27
|
+
<type>bomcomp:IfDirective</type>
|
|
28
|
+
<baseType>bomcomp:DirectiveAttribute</baseType>
|
|
29
|
+
<is>bml:if directive (type: if)</is>
|
|
30
|
+
|
|
31
|
+
<documentation>bml:if directive (type: if)</documentation>
|
|
32
|
+
|
|
33
|
+
<properties>
|
|
34
|
+
<type type="type:Text">
|
|
35
|
+
<documentation>type (required). TS type: type:Text.</documentation>
|
|
36
|
+
<value>if</value>
|
|
37
|
+
</type>
|
|
38
|
+
<condition type="bomvalue:ExpressionValue">
|
|
39
|
+
<documentation>condition (required). TS type: bomvalue:ExpressionValue.</documentation>
|
|
40
|
+
</condition>
|
|
41
|
+
</properties>
|
|
42
|
+
|
|
43
|
+
</block>
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
<!--
|
|
2
|
+
BOM Urmodell — InstanceAggregationComposition
|
|
3
|
+
FQN: org.blockml.bml.bom.composition.InstanceAggregationComposition
|
|
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:bomcap="org.blockml.bml.bom.capability"
|
|
15
|
+
xmlns:bomcommon="org.blockml.bml.bom.common"
|
|
16
|
+
xmlns:bomcomp="org.blockml.bml.bom.composition"
|
|
17
|
+
xmlns:bomdoc="org.blockml.bml.bom.document"
|
|
18
|
+
xmlns:bomdocumentation="org.blockml.bml.bom.documentation"
|
|
19
|
+
xmlns:bommember="org.blockml.bml.bom.member"
|
|
20
|
+
xmlns:bomtype="org.blockml.bml.bom.type"
|
|
21
|
+
xmlns:bomvalue="org.blockml.bml.bom.value"
|
|
22
|
+
xmlns:core="org.blockml.bml.core"
|
|
23
|
+
xmlns:def="org.blockml.bml.definition"
|
|
24
|
+
xmlns:type="org.blockml.bml.type">
|
|
25
|
+
|
|
26
|
+
<name>InstanceAggregationComposition</name>
|
|
27
|
+
<type>bomcomp:InstanceAggregationComposition</type>
|
|
28
|
+
<baseType>bom:UrmodellType</baseType>
|
|
29
|
+
<is>Inline aggregation composition on a Block instance</is>
|
|
30
|
+
|
|
31
|
+
<documentation>Inline aggregation composition on a Block instance</documentation>
|
|
32
|
+
|
|
33
|
+
<properties>
|
|
34
|
+
<aggregationName type="type:Text">
|
|
35
|
+
<documentation>aggregationName (required). TS type: type:Text.</documentation>
|
|
36
|
+
</aggregationName>
|
|
37
|
+
<composition type="bomcomp:CompositionTemplate">
|
|
38
|
+
<documentation>composition (required). TS type: bomcomp:CompositionTemplate.</documentation>
|
|
39
|
+
</composition>
|
|
40
|
+
</properties>
|
|
41
|
+
|
|
42
|
+
</block>
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
<!--
|
|
2
|
+
BOM Urmodell — UnlessDirective
|
|
3
|
+
FQN: org.blockml.bml.bom.composition.UnlessDirective
|
|
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:bomcap="org.blockml.bml.bom.capability"
|
|
15
|
+
xmlns:bomcommon="org.blockml.bml.bom.common"
|
|
16
|
+
xmlns:bomcomp="org.blockml.bml.bom.composition"
|
|
17
|
+
xmlns:bomdoc="org.blockml.bml.bom.document"
|
|
18
|
+
xmlns:bomdocumentation="org.blockml.bml.bom.documentation"
|
|
19
|
+
xmlns:bommember="org.blockml.bml.bom.member"
|
|
20
|
+
xmlns:bomtype="org.blockml.bml.bom.type"
|
|
21
|
+
xmlns:bomvalue="org.blockml.bml.bom.value"
|
|
22
|
+
xmlns:core="org.blockml.bml.core"
|
|
23
|
+
xmlns:def="org.blockml.bml.definition"
|
|
24
|
+
xmlns:type="org.blockml.bml.type">
|
|
25
|
+
|
|
26
|
+
<name>UnlessDirective</name>
|
|
27
|
+
<type>bomcomp:UnlessDirective</type>
|
|
28
|
+
<baseType>bomcomp:DirectiveAttribute</baseType>
|
|
29
|
+
<is>bml:unless directive (type: unless)</is>
|
|
30
|
+
|
|
31
|
+
<documentation>bml:unless directive (type: unless)</documentation>
|
|
32
|
+
|
|
33
|
+
<properties>
|
|
34
|
+
<type type="type:Text">
|
|
35
|
+
<documentation>type (required). TS type: type:Text.</documentation>
|
|
36
|
+
<value>unless</value>
|
|
37
|
+
</type>
|
|
38
|
+
<condition type="bomvalue:ExpressionValue">
|
|
39
|
+
<documentation>condition (required). TS type: bomvalue:ExpressionValue.</documentation>
|
|
40
|
+
</condition>
|
|
41
|
+
</properties>
|
|
42
|
+
|
|
43
|
+
</block>
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
<!--
|
|
2
|
+
BOM Urmodell — VirtualContainerNode
|
|
3
|
+
FQN: org.blockml.bml.bom.composition.VirtualContainerNode
|
|
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:bomcap="org.blockml.bml.bom.capability"
|
|
15
|
+
xmlns:bomcommon="org.blockml.bml.bom.common"
|
|
16
|
+
xmlns:bomcomp="org.blockml.bml.bom.composition"
|
|
17
|
+
xmlns:bomdoc="org.blockml.bml.bom.document"
|
|
18
|
+
xmlns:bomdocumentation="org.blockml.bml.bom.documentation"
|
|
19
|
+
xmlns:bommember="org.blockml.bml.bom.member"
|
|
20
|
+
xmlns:bomtype="org.blockml.bml.bom.type"
|
|
21
|
+
xmlns:bomvalue="org.blockml.bml.bom.value"
|
|
22
|
+
xmlns:core="org.blockml.bml.core"
|
|
23
|
+
xmlns:def="org.blockml.bml.definition"
|
|
24
|
+
xmlns:type="org.blockml.bml.type">
|
|
25
|
+
|
|
26
|
+
<name>VirtualContainerNode</name>
|
|
27
|
+
<type>bomcomp:VirtualContainerNode</type>
|
|
28
|
+
<baseType>bomcomp:CompositionNode</baseType>
|
|
29
|
+
<is>Virtual bml:container node (kind: virtualContainer)</is>
|
|
30
|
+
|
|
31
|
+
<documentation>Virtual bml:container node (kind: virtualContainer)</documentation>
|
|
32
|
+
|
|
33
|
+
<properties>
|
|
34
|
+
<kind type="type:Text">
|
|
35
|
+
<documentation>kind (required). TS type: type:Text.</documentation>
|
|
36
|
+
<value>virtualContainer</value>
|
|
37
|
+
</kind>
|
|
38
|
+
<directives type="bomcomp:DirectiveAttribute[]">
|
|
39
|
+
<documentation>directives (optional). TS type: bomcomp:DirectiveAttribute[].</documentation>
|
|
40
|
+
</directives>
|
|
41
|
+
<children type="bomcomp:CompositionNode[]">
|
|
42
|
+
<documentation>children (required). TS type: bomcomp:CompositionNode[].</documentation>
|
|
43
|
+
</children>
|
|
44
|
+
<source type="bomcommon:SourceLocation">
|
|
45
|
+
<documentation>source (optional). TS type: bomcommon:SourceLocation.</documentation>
|
|
46
|
+
</source>
|
|
47
|
+
</properties>
|
|
48
|
+
|
|
49
|
+
</block>
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
<!--
|
|
2
|
+
BOM Urmodell — WithBinding
|
|
3
|
+
FQN: org.blockml.bml.bom.composition.WithBinding
|
|
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:bomcap="org.blockml.bml.bom.capability"
|
|
15
|
+
xmlns:bomcommon="org.blockml.bml.bom.common"
|
|
16
|
+
xmlns:bomcomp="org.blockml.bml.bom.composition"
|
|
17
|
+
xmlns:bomdoc="org.blockml.bml.bom.document"
|
|
18
|
+
xmlns:bomdocumentation="org.blockml.bml.bom.documentation"
|
|
19
|
+
xmlns:bommember="org.blockml.bml.bom.member"
|
|
20
|
+
xmlns:bomtype="org.blockml.bml.bom.type"
|
|
21
|
+
xmlns:bomvalue="org.blockml.bml.bom.value"
|
|
22
|
+
xmlns:core="org.blockml.bml.core"
|
|
23
|
+
xmlns:def="org.blockml.bml.definition"
|
|
24
|
+
xmlns:type="org.blockml.bml.type">
|
|
25
|
+
|
|
26
|
+
<name>WithBinding</name>
|
|
27
|
+
<type>bomcomp:WithBinding</type>
|
|
28
|
+
<baseType>bom:UrmodellType</baseType>
|
|
29
|
+
<is>bml:with binding entry</is>
|
|
30
|
+
|
|
31
|
+
<documentation>bml:with binding entry</documentation>
|
|
32
|
+
|
|
33
|
+
<properties>
|
|
34
|
+
<name type="type:Text">
|
|
35
|
+
<documentation>name (required). TS type: type:Text.</documentation>
|
|
36
|
+
</name>
|
|
37
|
+
<value type="bomvalue:ExpressionValue">
|
|
38
|
+
<documentation>value (required). TS type: bomvalue:ExpressionValue.</documentation>
|
|
39
|
+
</value>
|
|
40
|
+
</properties>
|
|
41
|
+
|
|
42
|
+
</block>
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
<!--
|
|
2
|
+
BOM Urmodell — WithDirective
|
|
3
|
+
FQN: org.blockml.bml.bom.composition.WithDirective
|
|
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:bomcap="org.blockml.bml.bom.capability"
|
|
15
|
+
xmlns:bomcommon="org.blockml.bml.bom.common"
|
|
16
|
+
xmlns:bomcomp="org.blockml.bml.bom.composition"
|
|
17
|
+
xmlns:bomdoc="org.blockml.bml.bom.document"
|
|
18
|
+
xmlns:bomdocumentation="org.blockml.bml.bom.documentation"
|
|
19
|
+
xmlns:bommember="org.blockml.bml.bom.member"
|
|
20
|
+
xmlns:bomtype="org.blockml.bml.bom.type"
|
|
21
|
+
xmlns:bomvalue="org.blockml.bml.bom.value"
|
|
22
|
+
xmlns:core="org.blockml.bml.core"
|
|
23
|
+
xmlns:def="org.blockml.bml.definition"
|
|
24
|
+
xmlns:type="org.blockml.bml.type">
|
|
25
|
+
|
|
26
|
+
<name>WithDirective</name>
|
|
27
|
+
<type>bomcomp:WithDirective</type>
|
|
28
|
+
<baseType>bomcomp:DirectiveAttribute</baseType>
|
|
29
|
+
<is>bml:with directive (type: with)</is>
|
|
30
|
+
|
|
31
|
+
<documentation>bml:with directive (type: with)</documentation>
|
|
32
|
+
|
|
33
|
+
<properties>
|
|
34
|
+
<type type="type:Text">
|
|
35
|
+
<documentation>type (required). TS type: type:Text.</documentation>
|
|
36
|
+
<value>with</value>
|
|
37
|
+
</type>
|
|
38
|
+
<bindings type="bomcomp:WithBinding[]">
|
|
39
|
+
<documentation>bindings (required). TS type: bomcomp:WithBinding[].</documentation>
|
|
40
|
+
</bindings>
|
|
41
|
+
</properties>
|
|
42
|
+
|
|
43
|
+
</block>
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
<!--
|
|
2
|
+
BOM Urmodell — BomDocument
|
|
3
|
+
FQN: org.blockml.bml.bom.document.BomDocument
|
|
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:bomcap="org.blockml.bml.bom.capability"
|
|
15
|
+
xmlns:bomcommon="org.blockml.bml.bom.common"
|
|
16
|
+
xmlns:bomcomp="org.blockml.bml.bom.composition"
|
|
17
|
+
xmlns:bomdoc="org.blockml.bml.bom.document"
|
|
18
|
+
xmlns:bomdocumentation="org.blockml.bml.bom.documentation"
|
|
19
|
+
xmlns:bommember="org.blockml.bml.bom.member"
|
|
20
|
+
xmlns:bomtype="org.blockml.bml.bom.type"
|
|
21
|
+
xmlns:bomvalue="org.blockml.bml.bom.value"
|
|
22
|
+
xmlns:core="org.blockml.bml.core"
|
|
23
|
+
xmlns:def="org.blockml.bml.definition"
|
|
24
|
+
xmlns:type="org.blockml.bml.type">
|
|
25
|
+
|
|
26
|
+
<name>BomDocument</name>
|
|
27
|
+
<type>bomdoc:BomDocument</type>
|
|
28
|
+
<baseType>bom:UrmodellType</baseType>
|
|
29
|
+
<is>Root Urmodell document — every parsed BML file</is>
|
|
30
|
+
|
|
31
|
+
<documentation>Immutable after parse or BomBuilder.seal(). kind is always "block" in V1.</documentation>
|
|
32
|
+
|
|
33
|
+
<examples>
|
|
34
|
+
<example title="Calibrator reference shape">Reference BomDocument from com.machineblocks.bml.calibration.Calibrator. Root BlockDefinition with declared members, subBlocks (Utils, Base, StudDiameter, …), and compositions from _utils/_parts aggregations. Inherited native properties are NOT in members[].</example>
|
|
35
|
+
</examples>
|
|
36
|
+
|
|
37
|
+
<properties>
|
|
38
|
+
<kind type="type:Text">
|
|
39
|
+
<documentation>V1: always "block". (required)</documentation>
|
|
40
|
+
</kind>
|
|
41
|
+
<source type="bomcommon:SourceInfo">
|
|
42
|
+
<documentation>source (required). TS type: bomcommon:SourceInfo.</documentation>
|
|
43
|
+
</source>
|
|
44
|
+
<block type="bomblock:BlockDefinition">
|
|
45
|
+
<documentation>block (required). TS type: bomblock:BlockDefinition.</documentation>
|
|
46
|
+
</block>
|
|
47
|
+
</properties>
|
|
48
|
+
|
|
49
|
+
</block>
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
<!--
|
|
2
|
+
BOM Documentation — AbstractionPrinciple
|
|
3
|
+
FQN: org.blockml.bml.bom.documentation.AbstractionPrinciple
|
|
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:bomcap="org.blockml.bml.bom.capability"
|
|
15
|
+
xmlns:bomcommon="org.blockml.bml.bom.common"
|
|
16
|
+
xmlns:bomcomp="org.blockml.bml.bom.composition"
|
|
17
|
+
xmlns:bomdoc="org.blockml.bml.bom.document"
|
|
18
|
+
xmlns:bomdocumentation="org.blockml.bml.bom.documentation"
|
|
19
|
+
xmlns:bommember="org.blockml.bml.bom.member"
|
|
20
|
+
xmlns:bomtype="org.blockml.bml.bom.type"
|
|
21
|
+
xmlns:bomvalue="org.blockml.bml.bom.value"
|
|
22
|
+
xmlns:core="org.blockml.bml.core"
|
|
23
|
+
xmlns:def="org.blockml.bml.definition"
|
|
24
|
+
xmlns:type="org.blockml.bml.type"
|
|
25
|
+
xmlns:doc="org.blockml.bml.documentation">
|
|
26
|
+
|
|
27
|
+
<name>AbstractionPrinciple</name>
|
|
28
|
+
<type>bomdocumentation:AbstractionPrinciple</type>
|
|
29
|
+
<baseType>core:Documentation</baseType>
|
|
30
|
+
<is>Lossless representation and roundtrip guarantee</is>
|
|
31
|
+
|
|
32
|
+
<documentation>A BOM document is a lossless representation of BML source. It preserves authored
|
|
33
|
+
structure and values — directives, aggregation declarations, literal syntax, unresolved
|
|
34
|
+
type references, namespace bindings, and bml:xml metadata. BOM makes no statement about
|
|
35
|
+
directive expansion, aggregation interpretation, or block rendering.
|
|
36
|
+
|
|
37
|
+
Maximum authored surface: render targets and the serializer must read as much of the
|
|
38
|
+
original document as the Urmodell can carry. Prefer first-class fields over hidden side channels.
|
|
39
|
+
|
|
40
|
+
BML → BOM → BML must always be possible.</documentation>
|
|
41
|
+
|
|
42
|
+
<references>
|
|
43
|
+
<see type="bomdocumentation:AuthoredSurfaceTable" relation="ReadNext"></see>
|
|
44
|
+
</references>
|
|
45
|
+
|
|
46
|
+
</block>
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
<!--
|
|
2
|
+
BOM Documentation — ArchitectureOverview
|
|
3
|
+
FQN: org.blockml.bml.bom.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:bomcap="org.blockml.bml.bom.capability"
|
|
15
|
+
xmlns:bomcommon="org.blockml.bml.bom.common"
|
|
16
|
+
xmlns:bomcomp="org.blockml.bml.bom.composition"
|
|
17
|
+
xmlns:bomdoc="org.blockml.bml.bom.document"
|
|
18
|
+
xmlns:bomdocumentation="org.blockml.bml.bom.documentation"
|
|
19
|
+
xmlns:bommember="org.blockml.bml.bom.member"
|
|
20
|
+
xmlns:bomtype="org.blockml.bml.bom.type"
|
|
21
|
+
xmlns:bomvalue="org.blockml.bml.bom.value"
|
|
22
|
+
xmlns:core="org.blockml.bml.core"
|
|
23
|
+
xmlns:def="org.blockml.bml.definition"
|
|
24
|
+
xmlns:type="org.blockml.bml.type"
|
|
25
|
+
xmlns:doc="org.blockml.bml.documentation">
|
|
26
|
+
|
|
27
|
+
<name>ArchitectureOverview</name>
|
|
28
|
+
<type>bomdocumentation:ArchitectureOverview</type>
|
|
29
|
+
<baseType>core:Documentation</baseType>
|
|
30
|
+
<is>BML source to render pipeline</is>
|
|
31
|
+
|
|
32
|
+
<documentation>Pipeline roles:
|
|
33
|
+
|
|
34
|
+
BML source → universal authoring and interchange format
|
|
35
|
+
Urmodell (BOM) → canonical, immutable, lossless parse/build result (SSOT, read-only)
|
|
36
|
+
BomBuilder (V3) → planned writable session; seal() → Urmodell (same types)
|
|
37
|
+
Pragmatic Model → validator default fork + optional renderer forks (resolve only)
|
|
38
|
+
Framework Utilities → derived views / merges on forks — never mutate Urmodell
|
|
39
|
+
Render Target → chooses Urmodell / pragmatic / own forks + optional target working model
|
|
40
|
+
|
|
41
|
+
Block in BML is the mandatory input concept — not a uniform runtime object model.
|
|
42
|
+
The parser must read block documents; validators walk baseType chains. Internal
|
|
43
|
+
representation after parse is implementation freedom.</documentation>
|
|
44
|
+
|
|
45
|
+
<references>
|
|
46
|
+
<see type="bomdocumentation:AbstractionPrinciple" relation="ReadNext"></see>
|
|
47
|
+
</references>
|
|
48
|
+
|
|
49
|
+
</block>
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
<!--
|
|
2
|
+
BOM Documentation — AuthoredSurfaceTable
|
|
3
|
+
FQN: org.blockml.bml.bom.documentation.AuthoredSurfaceTable
|
|
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:bomcap="org.blockml.bml.bom.capability"
|
|
15
|
+
xmlns:bomcommon="org.blockml.bml.bom.common"
|
|
16
|
+
xmlns:bomcomp="org.blockml.bml.bom.composition"
|
|
17
|
+
xmlns:bomdoc="org.blockml.bml.bom.document"
|
|
18
|
+
xmlns:bomdocumentation="org.blockml.bml.bom.documentation"
|
|
19
|
+
xmlns:bommember="org.blockml.bml.bom.member"
|
|
20
|
+
xmlns:bomtype="org.blockml.bml.bom.type"
|
|
21
|
+
xmlns:bomvalue="org.blockml.bml.bom.value"
|
|
22
|
+
xmlns:core="org.blockml.bml.core"
|
|
23
|
+
xmlns:def="org.blockml.bml.definition"
|
|
24
|
+
xmlns:type="org.blockml.bml.type"
|
|
25
|
+
xmlns:doc="org.blockml.bml.documentation">
|
|
26
|
+
|
|
27
|
+
<name>AuthoredSurfaceTable</name>
|
|
28
|
+
<type>bomdocumentation:AuthoredSurfaceTable</type>
|
|
29
|
+
<baseType>core:Documentation</baseType>
|
|
30
|
+
<is>What BOM stores vs what downstream interprets</is>
|
|
31
|
+
|
|
32
|
+
<documentation>bml:each / bml:if / bml:with → directives[] unexpanded → Renderer expands
|
|
33
|
+
xmlns / xmlns:prefix → SourceInfo.namespaceBindings 1:1 authored → Serializer QName emit (B21)
|
|
34
|
+
xsi:schemaLocation / xsi:noNamespaceSchemaLocation → SourceInfo (B25) → re-emit on root
|
|
35
|
+
bml:xml → xmlRendering block+member — NOT directives[] → Serializer, FatBlock, XSD
|
|
36
|
+
element|attribute dual placement → authoredPlacement (D9) → MUST roundtrip authored form
|
|
37
|
+
Text vs CDATA → authoredCharacterDataForm (D8) → emit CDATA when needed or authored
|
|
38
|
+
Literal syntax [5,5,6] vs {x:5,…} → LiteralValue authored form → Renderer serializes
|
|
39
|
+
${ expr } → ExpressionValue { raw } — AST via parseExpression(), not evaluated
|
|
40
|
+
aggregations declaration → AggregationDefinition declared only → TypeRegistry metadata
|
|
41
|
+
composition children → CompositionNode tree → Renderer assembly patterns
|
|
42
|
+
baseType FQN → string reference → TypeRegistry effective members
|
|
43
|
+
Preset reference FQN::id → unmerged string → Renderer preset merge
|
|
44
|
+
Capabilities → CapabilityDefinition in BOM → Renderer interprets (not invoked at parse)
|
|
45
|
+
XML comments → XmlTrivia on following element (B11) → Serializer re-emits</documentation>
|
|
46
|
+
|
|
47
|
+
</block>
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
<!--
|
|
2
|
+
BOM Documentation — CalibratorExample
|
|
3
|
+
FQN: org.blockml.bml.bom.documentation.CalibratorExample
|
|
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:bomcap="org.blockml.bml.bom.capability"
|
|
15
|
+
xmlns:bomcommon="org.blockml.bml.bom.common"
|
|
16
|
+
xmlns:bomcomp="org.blockml.bml.bom.composition"
|
|
17
|
+
xmlns:bomdoc="org.blockml.bml.bom.document"
|
|
18
|
+
xmlns:bomdocumentation="org.blockml.bml.bom.documentation"
|
|
19
|
+
xmlns:bommember="org.blockml.bml.bom.member"
|
|
20
|
+
xmlns:bomtype="org.blockml.bml.bom.type"
|
|
21
|
+
xmlns:bomvalue="org.blockml.bml.bom.value"
|
|
22
|
+
xmlns:core="org.blockml.bml.core"
|
|
23
|
+
xmlns:def="org.blockml.bml.definition"
|
|
24
|
+
xmlns:type="org.blockml.bml.type"
|
|
25
|
+
xmlns:doc="org.blockml.bml.documentation">
|
|
26
|
+
|
|
27
|
+
<name>CalibratorExample</name>
|
|
28
|
+
<type>bomdocumentation:CalibratorExample</type>
|
|
29
|
+
<baseType>core:Documentation</baseType>
|
|
30
|
+
<is>Reference BomDocument walkthrough</is>
|
|
31
|
+
|
|
32
|
+
<documentation>Source: com.machineblocks.bml.calibration.Calibrator.bml
|
|
33
|
+
|
|
34
|
+
BomDocument kind block → BlockDefinition Calibrator
|
|
35
|
+
type com.machineblocks.bml.calibration.Calibrator, baseType CompositeBlock, version 1.0.0
|
|
36
|
+
|
|
37
|
+
Declared members only (not inherited size, offset, baseColor):
|
|
38
|
+
numberOfSamples, font, size (ExpressionValue), _utils aggregation (Utils bean context),
|
|
39
|
+
_parts aggregation (4 calibration rows).
|
|
40
|
+
|
|
41
|
+
subBlocks: Utils, Base, StudDiameter, BaseWallThickness, TubeDiameter, PinDiameter.
|
|
42
|
+
|
|
43
|
+
compositions: _utils → Utils instance; _parts → Base, StudDiameter, Base (id=base_wall), …
|
|
44
|
+
|
|
45
|
+
Observations: Sub-Block refs by short name resolved via subBlocks[] tree.
|
|
46
|
+
@utils.formatValue and #math.* stored as ExpressionValue { raw }.
|
|
47
|
+
Inherited native properties not in members[] — validator uses resolveEffectiveMembers().</documentation>
|
|
48
|
+
|
|
49
|
+
<references>
|
|
50
|
+
<see type="bomdoc:BomDocument" relation="ExampleOf"></see>
|
|
51
|
+
</references>
|
|
52
|
+
|
|
53
|
+
</block>
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
<!--
|
|
2
|
+
BOM Documentation — CompositionDirectives
|
|
3
|
+
FQN: org.blockml.bml.bom.documentation.CompositionDirectives
|
|
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:bomcap="org.blockml.bml.bom.capability"
|
|
15
|
+
xmlns:bomcommon="org.blockml.bml.bom.common"
|
|
16
|
+
xmlns:bomcomp="org.blockml.bml.bom.composition"
|
|
17
|
+
xmlns:bomdoc="org.blockml.bml.bom.document"
|
|
18
|
+
xmlns:bomdocumentation="org.blockml.bml.bom.documentation"
|
|
19
|
+
xmlns:bommember="org.blockml.bml.bom.member"
|
|
20
|
+
xmlns:bomtype="org.blockml.bml.bom.type"
|
|
21
|
+
xmlns:bomvalue="org.blockml.bml.bom.value"
|
|
22
|
+
xmlns:core="org.blockml.bml.core"
|
|
23
|
+
xmlns:def="org.blockml.bml.definition"
|
|
24
|
+
xmlns:type="org.blockml.bml.type"
|
|
25
|
+
xmlns:doc="org.blockml.bml.documentation">
|
|
26
|
+
|
|
27
|
+
<name>CompositionDirectives</name>
|
|
28
|
+
<type>bomdocumentation:CompositionDirectives</type>
|
|
29
|
+
<baseType>core:Documentation</baseType>
|
|
30
|
+
<is>Directive placement and Thymeleaf model</is>
|
|
31
|
+
|
|
32
|
+
<documentation>Directives follow Thymeleaf model — attributes on modified element, stored unexpanded.
|
|
33
|
+
|
|
34
|
+
bml:id, bml:version, bml:bean, bml:scope → BlockInstance fields (NOT directives[]).
|
|
35
|
+
bml:with → composition, aggregation, bml:container, block instances.
|
|
36
|
+
bml:each, bml:if, bml:unless → bml:container, block instances.
|
|
37
|
+
|
|
38
|
+
Dynamic ids: bml:id="${ 'val_' + i }" stored as ExpressionValue or literal on BlockInstance.id.
|
|
39
|
+
Omitted bml:id stored absent — parser does not assign auto-IDs.</documentation>
|
|
40
|
+
|
|
41
|
+
<references>
|
|
42
|
+
<see type="bomcomp:DirectiveAttribute" relation="Defines"></see>
|
|
43
|
+
</references>
|
|
44
|
+
|
|
45
|
+
</block>
|