@blockml/validator 0.9.4 → 0.9.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (32) hide show
  1. package/blocks/org/blockml/bml/compiler/validator/Library.bml +26 -27
  2. package/blocks/org/blockml/bml/compiler/validator/README.bml +15 -22
  3. package/blocks/org/blockml/bml/compiler/validator/ValidatorType.bml +16 -20
  4. package/blocks/org/blockml/bml/compiler/validator/capability/Validate.bml +23 -23
  5. package/blocks/org/blockml/bml/compiler/validator/capability/ValidateStyle.bml +20 -22
  6. package/blocks/org/blockml/bml/compiler/validator/documentation/DesignDecisions.bml +21 -26
  7. package/blocks/org/blockml/bml/compiler/validator/documentation/Diagnostics.bml +21 -25
  8. package/blocks/org/blockml/bml/compiler/validator/documentation/Introduction.bml +20 -26
  9. package/blocks/org/blockml/bml/compiler/validator/documentation/LayerSeparation.bml +18 -23
  10. package/blocks/org/blockml/bml/compiler/validator/documentation/PackageOwnership.bml +20 -26
  11. package/blocks/org/blockml/bml/compiler/validator/documentation/PublicApi.bml +18 -23
  12. package/blocks/org/blockml/bml/compiler/validator/documentation/ScopeExclusions.bml +16 -21
  13. package/blocks/org/blockml/bml/compiler/validator/documentation/ValidationPipeline.bml +17 -22
  14. package/blocks/org/blockml/bml/compiler/validator/documentation/ValidityContract.bml +19 -24
  15. package/blocks/org/blockml/bml/compiler/validator/style/PreferCDataWhenNeedsEscape.bml +14 -18
  16. package/blocks/org/blockml/bml/compiler/validator/style/PreferEmptyElementSelfClosing.bml +14 -18
  17. package/blocks/org/blockml/bml/compiler/validator/style/PreferMarkdownStructure.bml +14 -18
  18. package/blocks/org/blockml/bml/compiler/validator/style/PreferOmitRedundantName.bml +15 -0
  19. package/blocks/org/blockml/bml/compiler/validator/style/PreferOmitRedundantType.bml +15 -0
  20. package/blocks/org/blockml/bml/compiler/validator/style/PreferTypeAsTag.bml +15 -0
  21. package/blocks/org/blockml/bml/compiler/validator/style/StyleCheck.bml +17 -20
  22. package/blocks/org/blockml/bml/compiler/validator/style/StyleRule.bml +29 -25
  23. package/blocks/org/blockml/bml/compiler/validator/style/rule/CDataWhenEscaping.bml +15 -21
  24. package/blocks/org/blockml/bml/compiler/validator/style/rule/EmptyElementSelfClosing.bml +15 -21
  25. package/blocks/org/blockml/bml/compiler/validator/style/rule/MarkdownStructure.bml +15 -21
  26. package/blocks/org/blockml/bml/compiler/validator/style/rule/OmitRedundantName.bml +39 -0
  27. package/blocks/org/blockml/bml/compiler/validator/style/rule/OmitRedundantType.bml +39 -0
  28. package/blocks/org/blockml/bml/compiler/validator/style/rule/TypeAsTag.bml +38 -0
  29. package/dist/validate-style.d.ts.map +1 -1
  30. package/dist/validate-style.js +49 -10
  31. package/dist/validate-style.js.map +1 -1
  32. package/package.json +4 -4
@@ -1,12 +1,6 @@
1
- <!--
2
- BlockML Validator Library Descriptor
3
- FQN: org.blockml.bml.compiler.validator.Library
4
- -->
5
- <block
6
- xmlns="http://blockml.org/bml"
7
- xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
8
- xsi:schemaLocation="http://blockml.org/bml https://blockml.org/schemas/bml.xsd
9
- "
1
+ <!--BlockML Validator Library Descriptor
2
+ FQN: org.blockml.bml.compiler.validator.Library-->
3
+ <validator:Library xmlns="http://blockml.org/bml"
10
4
  xmlns:blockml="org.blockml.bml"
11
5
  xmlns:bom="org.blockml.bml.bom"
12
6
  xmlns:bomapi="org.blockml.bml.bom.api"
@@ -24,48 +18,48 @@
24
18
  xmlns:valstyle="org.blockml.bml.compiler.validator.style"
25
19
  xmlns:bomdocumentation="org.blockml.bml.bom.documentation">
26
20
 
27
- <name>Library</name>
28
- <type>validator:Library</type>
29
- <baseType>core:BlockLibrary</baseType>
30
- <is>The BlockML Validator compiler package library catalog</is>
31
-
21
+ <baseType>
22
+ core:BlockLibrary
23
+ </baseType>
24
+ <is>
25
+ The BlockML Validator compiler package library catalog
26
+ </is>
27
+ <version>
28
+ 0.9.6
29
+ </version>
32
30
  <documentation>
33
31
  # The BlockML Validator compiler package library catalog
34
-
32
+
35
33
  Canonical validator specification for BlockML Stage-2 — validate() orchestration
36
34
  on BomDocument using @blockml/framework utilities, plus the style catalog
37
35
  (org.blockml.bml.compiler.validator.style.*). TypeScript in packages/validator/src/
38
36
  implements this library. Urmodell and API types live in org.blockml.bml.bom.*
39
37
  (@blockml/bom). Membership is defined exclusively by this blocks list.
40
38
  </documentation>
41
-
42
- <version>0.9.4</version>
43
-
44
39
  <language>
45
- <English />
40
+ <blockml:language.English />
46
41
  </language>
47
-
48
42
  <properties>
49
43
  <description override="true">
50
44
  <value>BlockML Validator library</value>
51
45
  </description>
52
46
  </properties>
53
-
54
47
  <aggregations>
55
- <readMe>
48
+ <readMe override="true">
56
49
  <composition>
57
50
  <validator:README />
58
51
  </composition>
59
52
  </readMe>
60
- <dependencies>
53
+ <dependencies override="true">
61
54
  <composition>
62
55
  <blockml:Library />
63
56
  <bom:Library />
64
57
  <framework:Library />
65
58
  </composition>
66
59
  </dependencies>
67
- <blocks>
68
- <composition><validator:ValidatorType />
60
+ <blocks override="true">
61
+ <composition>
62
+ <validator:ValidatorType />
69
63
  <valcap:Validate />
70
64
  <valcap:ValidateStyle />
71
65
  <valstyle:StyleRule />
@@ -73,9 +67,15 @@
73
67
  <valstyle:PreferCDataWhenNeedsEscape />
74
68
  <valstyle:PreferMarkdownStructure />
75
69
  <valstyle:PreferEmptyElementSelfClosing />
70
+ <valstyle:PreferTypeAsTag />
71
+ <valstyle:PreferOmitRedundantType />
72
+ <valstyle:PreferOmitRedundantName />
76
73
  <valstyle:CDataWhenEscaping />
77
74
  <valstyle:MarkdownStructure />
78
75
  <valstyle:EmptyElementSelfClosing />
76
+ <valstyle:TypeAsTag />
77
+ <valstyle:OmitRedundantType />
78
+ <valstyle:OmitRedundantName />
79
79
  <valdocumentation:Introduction />
80
80
  <valdocumentation:ValidityContract />
81
81
  <valdocumentation:LayerSeparation />
@@ -88,5 +88,4 @@
88
88
  </composition>
89
89
  </blocks>
90
90
  </aggregations>
91
-
92
- </block>
91
+ </validator:Library>
@@ -1,12 +1,6 @@
1
- <!--
2
- BlockML Validator — README
3
- FQN: org.blockml.bml.compiler.validator.README
4
- -->
5
- <block
6
- xmlns="http://blockml.org/bml"
7
- xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
8
- xsi:schemaLocation="http://blockml.org/bml https://blockml.org/schemas/bml.xsd
9
- "
1
+ <!--BlockML Validator — README
2
+ FQN: org.blockml.bml.compiler.validator.README-->
3
+ <validator:README xmlns="http://blockml.org/bml"
10
4
  xmlns:blockml="org.blockml.bml"
11
5
  xmlns:bom="org.blockml.bml.bom"
12
6
  xmlns:bomapi="org.blockml.bml.bom.api"
@@ -23,37 +17,36 @@
23
17
  xmlns:valdocumentation="org.blockml.bml.compiler.validator.documentation"
24
18
  xmlns:bomdocumentation="org.blockml.bml.bom.documentation">
25
19
 
26
- <name>README</name>
27
- <type>validator:README</type>
28
- <baseType>core:ReadMe</baseType>
29
- <is>Reading entry for the Validator compiler library</is>
30
-
20
+ <baseType>
21
+ core:ReadMe
22
+ </baseType>
23
+ <is>
24
+ Reading entry for the Validator compiler library
25
+ </is>
31
26
  <documentation>
32
27
  The @blockml/validator package validates BomDocument (Urmodell) and returns
33
28
  diagnostics plus an optional pragmatic model fork.
34
-
29
+
35
30
  This library (org.blockml.bml.compiler.validator.*) is the SSOT; TypeScript in
36
31
  packages/validator/src/ implements it. Parity tests in packages/validator/test/
37
32
  verify BML ↔ TS alignment.
38
-
33
+
39
34
  Start reading at org.blockml.bml.compiler.validator.documentation.Introduction (ReadNext chain).
40
-
35
+
41
36
  Layer separation:
42
37
  • org.blockml.bml.bom.* (@blockml/bom) — Urmodell types and ValidateOptions/ValidateResult
43
38
  • org.blockml.bml.framework.* (@blockml/framework) — TypeRegistry, validation utilities
44
39
  • org.blockml.bml.compiler.validator.* (this library) — validate() orchestration
45
-
40
+
46
41
  Modules: documentation (narrative specs), capability (validate entry point).
47
-
42
+
48
43
  Not in this library: validateTypes/validateConstraints implementation (@blockml/framework);
49
44
  parse()/serialize() entry points.
50
45
  </documentation>
51
-
52
46
  <references>
53
47
  <see type="valdocumentation:Introduction" relation="ReadFirst" />
54
48
  <see type="valdocumentation:PublicApi" relation="SeeAlso" />
55
49
  <see type="bomdocumentation:PublicApi" relation="SeeAlso" />
56
50
  <see type="fwdocumentation:Introduction" relation="SeeAlso" />
57
51
  </references>
58
-
59
- </block>
52
+ </validator:README>
@@ -1,12 +1,6 @@
1
- <!--
2
- Validator ValidatorType
3
- FQN: org.blockml.bml.compiler.validator.ValidatorType
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
- "
1
+ <!--Validator — ValidatorType
2
+ FQN: org.blockml.bml.compiler.validator.ValidatorType-->
3
+ <validator:ValidatorType xmlns="http://blockml.org/bml"
10
4
  xmlns:blockml="org.blockml.bml"
11
5
  xmlns:bom="org.blockml.bml.bom"
12
6
  xmlns:bomapi="org.blockml.bml.bom.api"
@@ -22,17 +16,19 @@
22
16
  xmlns:valcap="org.blockml.bml.compiler.validator.capability"
23
17
  xmlns:valdocumentation="org.blockml.bml.compiler.validator.documentation">
24
18
 
25
- <name>ValidatorType</name>
26
- <type>validator:ValidatorType</type>
27
- <baseType>core:Entity</baseType>
28
- <is>Abstract marker for validator implementation data-structure blocks</is>
29
-
30
- <documentation>Reserved for future validator-internal types. Distinct from bom:UrmodellType and core:Capability.</documentation>
31
-
19
+ <baseType>
20
+ core:Entity
21
+ </baseType>
22
+ <is>
23
+ Abstract marker for validator implementation data-structure blocks
24
+ </is>
25
+ <documentation>
26
+ Reserved for future validator-internal types. Distinct from bom:UrmodellType and core:Capability.
27
+ </documentation>
28
+ <abstract>
29
+ true
30
+ </abstract>
32
31
  <references>
33
32
  <see type="bom:UrmodellType" relation="SeeAlso" />
34
33
  </references>
35
-
36
- <abstract>true</abstract>
37
-
38
- </block>
34
+ </validator:ValidatorType>
@@ -1,12 +1,6 @@
1
- <!--
2
- Validator Capability — Validate
3
- FQN: org.blockml.bml.compiler.validator.capability.Validate
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
- "
1
+ <!--Validator Capability — Validate
2
+ FQN: org.blockml.bml.compiler.validator.capability.Validate-->
3
+ <valcap:Validate xmlns="http://blockml.org/bml"
10
4
  xmlns:blockml="org.blockml.bml"
11
5
  xmlns:bom="org.blockml.bml.bom"
12
6
  xmlns:bomapi="org.blockml.bml.bom.api"
@@ -22,15 +16,17 @@
22
16
  xmlns:valcap="org.blockml.bml.compiler.validator.capability"
23
17
  xmlns:valdocumentation="org.blockml.bml.compiler.validator.documentation">
24
18
 
25
- <name>Validate</name>
26
- <type>valcap:Validate</type>
27
- <baseType>core:Capability</baseType>
28
- <is>Public entry: BomDocument → ValidateResult (B26)</is>
29
-
30
- <documentation>Orchestrates TypeRegistry bootstrap/injection, forkBom, semantic framework
19
+ <baseType>
20
+ core:Capability
21
+ </baseType>
22
+ <is>
23
+ Public entry: BomDocument → ValidateResult (B26)
24
+ </is>
25
+ <documentation>
26
+ Orchestrates TypeRegistry bootstrap/injection, forkBom, semantic framework
31
27
  checks, and validateStyle. Does not mutate input Urmodell. Style diagnostics never
32
- fail success.</documentation>
33
-
28
+ fail success.
29
+ </documentation>
34
30
  <references>
35
31
  <see type="valdocumentation:PublicApi" relation="SeeAlso" />
36
32
  <see type="bomapi:ValidateOptions" relation="SeeAlso" />
@@ -41,17 +37,21 @@
41
37
  <see type="valcap:ValidateStyle" relation="SeeAlso" />
42
38
  <see type="fwcap:BootstrapTypeRegistry" relation="SeeAlso" />
43
39
  </references>
44
-
45
40
  <properties>
46
41
  <document type="bomdoc:BomDocument">
47
- <documentation>document. TS type: bomdoc:BomDocument. (required)</documentation>
42
+ <documentation>
43
+ document. TS type: bomdoc:BomDocument. (required)
44
+ </documentation>
48
45
  </document>
49
46
  <options type="bomapi:ValidateOptions">
50
- <documentation>Default continueOnError=true. (optional)</documentation>
47
+ <documentation>
48
+ Default continueOnError=true. (optional)
49
+ </documentation>
51
50
  </options>
52
51
  <result type="bomapi:ValidateResult">
53
- <documentation>result. TS type: bomapi:ValidateResult. (required)</documentation>
52
+ <documentation>
53
+ result. TS type: bomapi:ValidateResult. (required)
54
+ </documentation>
54
55
  </result>
55
56
  </properties>
56
-
57
- </block>
57
+ </valcap:Validate>
@@ -1,12 +1,6 @@
1
- <!--
2
- Validator Capability — ValidateStyle
3
- FQN: org.blockml.bml.compiler.validator.capability.ValidateStyle
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
- "
1
+ <!--Validator Capability — ValidateStyle
2
+ FQN: org.blockml.bml.compiler.validator.capability.ValidateStyle-->
3
+ <valcap:ValidateStyle xmlns="http://blockml.org/bml"
10
4
  xmlns:blockml="org.blockml.bml"
11
5
  xmlns:bom="org.blockml.bml.bom"
12
6
  xmlns:bomapi="org.blockml.bml.bom.api"
@@ -20,28 +14,32 @@
20
14
  xmlns:valdocumentation="org.blockml.bml.compiler.validator.documentation"
21
15
  xmlns:valstyle="org.blockml.bml.compiler.validator.style">
22
16
 
23
- <name>ValidateStyle</name>
24
- <type>valcap:ValidateStyle</type>
25
- <baseType>core:Capability</baseType>
26
- <is>Run the BML style catalog against a BomDocument</is>
27
-
28
- <documentation>Loads StyleRule documents from this package blocks/style/rule/, dispatches each
17
+ <baseType>
18
+ core:Capability
19
+ </baseType>
20
+ <is>
21
+ Run the BML style catalog against a BomDocument
22
+ </is>
23
+ <documentation>
24
+ Loads StyleRule documents from this package blocks/style/rule/, dispatches each
29
25
  check type to a TypeScript interpreter, and returns diagnostics. Does not affect
30
26
  success (warnings and recommendations only). Unknown check types emit
31
- BML_STYLE_UNKNOWN_CHECK as info.</documentation>
32
-
27
+ BML_STYLE_UNKNOWN_CHECK as info.
28
+ </documentation>
33
29
  <references>
34
30
  <see type="valstyle:StyleRule" relation="SeeAlso" />
35
31
  <see type="valcap:Validate" relation="SeeAlso" />
36
32
  </references>
37
-
38
33
  <properties>
39
34
  <document type="bomdoc:BomDocument">
40
- <documentation>document. TS type: bomdoc:BomDocument. (required)</documentation>
35
+ <documentation>
36
+ document. TS type: bomdoc:BomDocument. (required)
37
+ </documentation>
41
38
  </document>
42
39
  <result type="bomcommon:Diagnostic[]">
43
- <documentation>Style diagnostics. TS type: bomcommon:Diagnostic[]. (required)</documentation>
40
+ <documentation>
41
+ Style diagnostics. TS type: bomcommon:Diagnostic[]. (required)
42
+ </documentation>
44
43
  </result>
45
44
  </properties>
46
-
47
- </block>
45
+ </valcap:ValidateStyle>
@@ -1,12 +1,6 @@
1
- <!--
2
- Validator Documentation — DesignDecisions
3
- FQN: org.blockml.bml.compiler.validator.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
- "
1
+ <!--Validator Documentation — DesignDecisions
2
+ FQN: org.blockml.bml.compiler.validator.documentation.DesignDecisions-->
3
+ <valdocumentation:DesignDecisions xmlns="http://blockml.org/bml"
10
4
  xmlns:blockml="org.blockml.bml"
11
5
  xmlns:bom="org.blockml.bml.bom"
12
6
  xmlns:bomapi="org.blockml.bml.bom.api"
@@ -23,37 +17,38 @@
23
17
  xmlns:valdocumentation="org.blockml.bml.compiler.validator.documentation"
24
18
  xmlns:doc="org.blockml.bml.documentation">
25
19
 
26
- <name>DesignDecisions</name>
27
- <type>valdocumentation:DesignDecisions</type>
28
- <baseType>core:Documentation</baseType>
29
- <is>Normative validator design decisions</is>
30
-
31
- <documentation>Pragmatic model (default fork): validate() always forks via forkBom before checks.
20
+ <baseType>
21
+ core:Documentation
22
+ </baseType>
23
+ <is>
24
+ Normative validator design decisions
25
+ </is>
26
+ <documentation>
27
+ Pragmatic model (default fork): validate() always forks via forkBom before checks.
32
28
  Urmodell input is never mutated.
33
-
29
+
34
30
  continueOnError (default true): when false and validation fails, return diagnostics
35
31
  without pragmaticModel — host can abort before downstream work.
36
-
32
+
37
33
  TypeRegistry injection: hosts with pre-built registry skip bootstrap; supports
38
34
  LSP and incremental validation scenarios.
39
-
35
+
40
36
  success semantics: false when any diagnostic has severity === "error"; warnings
41
37
  and recommendations alone do not fail success.
42
-
38
+
43
39
  Style catalog (validateStyle): BML StyleRule documents under style/rule/ are the SSOT.
44
40
  Interpreters bind to StyleCheck type FQNs. Unknown checks emit BML_STYLE_UNKNOWN_CHECK.
45
-
41
+
46
42
  Bootstrap modes: bootstrapPaths (corpus flat scan) or libraryPaths (Library.bml graph).
47
43
  validateVersions runs after validateTypes and before validateConstraints.
48
-
44
+
49
45
  Unknown instance memberValues and unresolved type FQNs are errors (not warnings).
50
46
  Missing libraries are errors. Domain types must be registered like framework types.
51
-
47
+
52
48
  No throw on validation failure — aligns with B26 sync diagnostic API across parser,
53
- serializer, validator, and compiler.</documentation>
54
-
49
+ serializer, validator, and compiler.
50
+ </documentation>
55
51
  <references>
56
52
  <see type="valdocumentation:Diagnostics" relation="ReadNext" />
57
53
  </references>
58
-
59
- </block>
54
+ </valdocumentation:DesignDecisions>
@@ -1,12 +1,6 @@
1
- <!--
2
- Validator Documentation — Diagnostics
3
- FQN: org.blockml.bml.compiler.validator.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
- "
1
+ <!--Validator Documentation — Diagnostics
2
+ FQN: org.blockml.bml.compiler.validator.documentation.Diagnostics-->
3
+ <valdocumentation:Diagnostics xmlns="http://blockml.org/bml"
10
4
  xmlns:blockml="org.blockml.bml"
11
5
  xmlns:bom="org.blockml.bml.bom"
12
6
  xmlns:bomapi="org.blockml.bml.bom.api"
@@ -22,31 +16,33 @@
22
16
  xmlns:valcap="org.blockml.bml.compiler.validator.capability"
23
17
  xmlns:valdocumentation="org.blockml.bml.compiler.validator.documentation"
24
18
  xmlns:doc="org.blockml.bml.documentation"
25
- xmlns:fwconfig="org.blockml.bml.framework.config"
26
- >
19
+ xmlns:fwconfig="org.blockml.bml.framework.config">
27
20
 
28
- <name>Diagnostics</name>
29
- <type>valdocumentation:Diagnostics</type>
30
- <baseType>core:Documentation</baseType>
31
- <is>Validator diagnostics and host abort policy</is>
32
-
33
- <documentation> The validator aggregates diagnostics from framework utilities (validateTypes,
21
+ <baseType>
22
+ core:Documentation
23
+ </baseType>
24
+ <is>
25
+ Validator diagnostics and host abort policy
26
+ </is>
27
+ <documentation>
28
+ The validator aggregates diagnostics from framework utilities (validateTypes,
34
29
  validateConstraints, validateGenerics), bootstrap (when TypeRegistry is built inline), and validateStyle.
35
-
30
+
36
31
  Diagnostic type: org.blockml.bml.bom.common.Diagnostic (shared across toolchain).
37
32
  Style codes: BML_STYLE_PREFER_CDATA, BML_STYLE_PREFER_MARKDOWN,
38
- BML_STYLE_EMPTY_ELEMENT_SELF_CLOSE, BML_STYLE_UNKNOWN_CHECK.
39
-
33
+ BML_STYLE_EMPTY_ELEMENT_SELF_CLOSE, BML_STYLE_LEGACY_BLOCK_WRAPPER,
34
+ BML_STYLE_REDUNDANT_TYPE, BML_STYLE_REDUNDANT_NAME,
35
+ BML_STYLE_UNKNOWN_CHECK.
36
+
40
37
  Host policy: CLI, IDE, and other orchestrators decide whether error diagnostics
41
38
  block serialize, compile, or other downstream steps. The validator package does
42
39
  not enforce abort-on-error — it reports diagnostics and success flag only.
43
40
  Style warnings and recommendations do not fail success.
44
-
45
- Cross-ref diagnostic codes: org.blockml.bml.framework.config.FrameworkDiagnosticCodes</documentation>
46
-
41
+
42
+ Cross-ref diagnostic codes: org.blockml.bml.framework.config.FrameworkDiagnosticCodes
43
+ </documentation>
47
44
  <references>
48
45
  <see type="fwconfig:FrameworkDiagnosticCodes" relation="SeeAlso" />
49
46
  <see type="valdocumentation:PackageOwnership" relation="ReadNext" />
50
47
  </references>
51
-
52
- </block>
48
+ </valdocumentation:Diagnostics>
@@ -1,12 +1,6 @@
1
- <!--
2
- Validator Documentation — Introduction
3
- FQN: org.blockml.bml.compiler.validator.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
- "
1
+ <!--Validator Documentation — Introduction
2
+ FQN: org.blockml.bml.compiler.validator.documentation.Introduction-->
3
+ <valdocumentation:Introduction xmlns="http://blockml.org/bml"
10
4
  xmlns:blockml="org.blockml.bml"
11
5
  xmlns:bom="org.blockml.bml.bom"
12
6
  xmlns:bomapi="org.blockml.bml.bom.api"
@@ -22,33 +16,33 @@
22
16
  xmlns:valcap="org.blockml.bml.compiler.validator.capability"
23
17
  xmlns:valdocumentation="org.blockml.bml.compiler.validator.documentation"
24
18
  xmlns:doc="org.blockml.bml.documentation"
25
- xmlns:bomdocumentation="org.blockml.bml.bom.documentation"
26
- >
27
-
28
- <name>Introduction</name>
29
- <type>valdocumentation:Introduction</type>
30
- <baseType>core:Documentation</baseType>
31
- <is>Purpose and scope of the Validator package</is>
32
-
33
- <documentation>The @blockml/validator package provides Stage-2 semantic validation on BomDocument.
19
+ xmlns:bomdocumentation="org.blockml.bml.bom.documentation">
20
+
21
+ <baseType>
22
+ core:Documentation
23
+ </baseType>
24
+ <is>
25
+ Purpose and scope of the Validator package
26
+ </is>
27
+ <documentation>
28
+ The @blockml/validator package provides Stage-2 semantic validation on BomDocument.
34
29
  It orchestrates @blockml/framework utilities on a pragmatic fork of the Urmodell.
35
-
30
+
36
31
  This library (org.blockml.bml.compiler.validator.*) is the SSOT. TypeScript in
37
32
  packages/validator/src/ implements it. Parity tests in packages/validator/test/
38
33
  verify BML ↔ TS alignment.
39
-
34
+
40
35
  Pipeline placement: BomDocument ← Parser | BomBuilder → Validator → diagnostics +
41
36
  optional pragmaticModel. Consumed by @blockml/cli, @blockml/lsp (V2), and hosts.
42
-
37
+
43
38
  Validator never mutates the input Urmodell. Abort-on-error is a host concern — not
44
39
  enforced inside the validator package.
45
-
40
+
46
41
  Validity without XSD: well-formed XML + structural BML + semantic BML against a
47
- complete TypeRegistry. CLI validate and LSP share this engine.</documentation>
48
-
42
+ complete TypeRegistry. CLI validate and LSP share this engine.
43
+ </documentation>
49
44
  <references>
50
45
  <see type="valdocumentation:ValidityContract" relation="ReadNext" />
51
46
  <see type="bomdocumentation:Introduction" relation="SeeAlso" />
52
47
  </references>
53
-
54
- </block>
48
+ </valdocumentation:Introduction>
@@ -1,12 +1,6 @@
1
- <!--
2
- Validator Documentation — LayerSeparation
3
- FQN: org.blockml.bml.compiler.validator.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
- "
1
+ <!--Validator Documentation — LayerSeparation
2
+ FQN: org.blockml.bml.compiler.validator.documentation.LayerSeparation-->
3
+ <valdocumentation:LayerSeparation xmlns="http://blockml.org/bml"
10
4
  xmlns:blockml="org.blockml.bml"
11
5
  xmlns:bom="org.blockml.bml.bom"
12
6
  xmlns:bomapi="org.blockml.bml.bom.api"
@@ -23,29 +17,30 @@
23
17
  xmlns:valdocumentation="org.blockml.bml.compiler.validator.documentation"
24
18
  xmlns:doc="org.blockml.bml.documentation">
25
19
 
26
- <name>LayerSeparation</name>
27
- <type>valdocumentation:LayerSeparation</type>
28
- <baseType>core:Documentation</baseType>
29
- <is>Validator vs framework vs BOM vs parser</is>
30
-
31
- <documentation>Four layers relevant to validation:
32
-
20
+ <baseType>
21
+ core:Documentation
22
+ </baseType>
23
+ <is>
24
+ Validator vs framework vs BOM vs parser
25
+ </is>
26
+ <documentation>
27
+ Four layers relevant to validation:
28
+
33
29
  org.blockml.bml.bom.* (@blockml/bom) — Urmodell types (BomDocument, …).
34
30
  ValidateOptions, ValidateResult, TypeRegistryReader (B26) live here.
35
-
31
+
36
32
  org.blockml.bml.framework.* (@blockml/framework) — TypeRegistry, forkBom,
37
33
  validateTypes, validateConstraints, bootstrapTypeRegistry. Validator calls these;
38
34
  does not reimplement them.
39
-
35
+
40
36
  org.blockml.bml.compiler.validator.* (this package) — validate() orchestration,
41
37
  style catalog (org.blockml.bml.compiler.validator.style.*), and Stage-2 entry point.
42
-
38
+
43
39
  org.blockml.bml.compiler.parser.* (@blockml/parser) — BML → BomDocument (Stage 1).
44
- Validator consumes parser output; does not call parse() directly (bootstrap is via framework).</documentation>
45
-
40
+ Validator consumes parser output; does not call parse() directly (bootstrap is via framework).
41
+ </documentation>
46
42
  <references>
47
43
  <see type="valdocumentation:ValidationPipeline" relation="ReadNext" />
48
44
  <see type="fwdocumentation:Introduction" relation="SeeAlso" />
49
45
  </references>
50
-
51
- </block>
46
+ </valdocumentation:LayerSeparation>