@blockml/xsd-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.
Files changed (63) hide show
  1. package/blocks/org/blockml/bml/target/xsd/Library.bml +94 -0
  2. package/blocks/org/blockml/bml/target/xsd/README.bml +56 -0
  3. package/blocks/org/blockml/bml/target/xsd/XsdType.bml +31 -0
  4. package/blocks/org/blockml/bml/target/xsd/api/CatalogEntry.bml +33 -0
  5. package/blocks/org/blockml/bml/target/xsd/api/XsdOptions.bml +38 -0
  6. package/blocks/org/blockml/bml/target/xsd/api/XsdRenderOutput.bml +34 -0
  7. package/blocks/org/blockml/bml/target/xsd/capability/CatalogRelativePath.bml +42 -0
  8. package/blocks/org/blockml/bml/target/xsd/capability/EmitBlockXsd.bml +43 -0
  9. package/blocks/org/blockml/bml/target/xsd/capability/EmitCatalogXml.bml +43 -0
  10. package/blocks/org/blockml/bml/target/xsd/capability/EmitServiceXsd.bml +43 -0
  11. package/blocks/org/blockml/bml/target/xsd/capability/EmitTypesXsd.bml +43 -0
  12. package/blocks/org/blockml/bml/target/xsd/capability/ExtraElementNames.bml +43 -0
  13. package/blocks/org/blockml/bml/target/xsd/capability/MemberPrefersElement.bml +43 -0
  14. package/blocks/org/blockml/bml/target/xsd/capability/Render.bml +47 -0
  15. package/blocks/org/blockml/bml/target/xsd/capability/ResolveOptions.bml +44 -0
  16. package/blocks/org/blockml/bml/target/xsd/capability/VocabularyElements.bml +42 -0
  17. package/blocks/org/blockml/bml/target/xsd/config/DefaultXsdOptions.bml +33 -0
  18. package/blocks/org/blockml/bml/target/xsd/config/XsdConstants.bml +42 -0
  19. package/blocks/org/blockml/bml/target/xsd/documentation/ArchitectureOverview.bml +45 -0
  20. package/blocks/org/blockml/bml/target/xsd/documentation/CatalogAndOutputLayout.bml +45 -0
  21. package/blocks/org/blockml/bml/target/xsd/documentation/DesignDecisions.bml +49 -0
  22. package/blocks/org/blockml/bml/target/xsd/documentation/Diagnostics.bml +38 -0
  23. package/blocks/org/blockml/bml/target/xsd/documentation/DomainVocabularyRules.bml +41 -0
  24. package/blocks/org/blockml/bml/target/xsd/documentation/Introduction.bml +50 -0
  25. package/blocks/org/blockml/bml/target/xsd/documentation/LayerSeparation.bml +42 -0
  26. package/blocks/org/blockml/bml/target/xsd/documentation/PackageOwnership.bml +43 -0
  27. package/blocks/org/blockml/bml/target/xsd/documentation/ParticleMappingRules.bml +49 -0
  28. package/blocks/org/blockml/bml/target/xsd/documentation/PublicApi.bml +45 -0
  29. package/blocks/org/blockml/bml/target/xsd/documentation/ScopeExclusions.bml +41 -0
  30. package/blocks/org/blockml/bml/target/xsd/documentation/V1Scope.bml +46 -0
  31. package/dist/constants.d.ts +6 -0
  32. package/dist/constants.d.ts.map +1 -0
  33. package/dist/constants.js +6 -0
  34. package/dist/constants.js.map +1 -0
  35. package/dist/emit-block-xsd.d.ts +3 -0
  36. package/dist/emit-block-xsd.d.ts.map +1 -0
  37. package/dist/emit-block-xsd.js +122 -0
  38. package/dist/emit-block-xsd.js.map +1 -0
  39. package/dist/emit-catalog-xml.d.ts +7 -0
  40. package/dist/emit-catalog-xml.d.ts.map +1 -0
  41. package/dist/emit-catalog-xml.js +15 -0
  42. package/dist/emit-catalog-xml.js.map +1 -0
  43. package/dist/emit-service-xsd.d.ts +3 -0
  44. package/dist/emit-service-xsd.d.ts.map +1 -0
  45. package/dist/emit-service-xsd.js +34 -0
  46. package/dist/emit-service-xsd.js.map +1 -0
  47. package/dist/emit-types-xsd.d.ts +3 -0
  48. package/dist/emit-types-xsd.d.ts.map +1 -0
  49. package/dist/emit-types-xsd.js +34 -0
  50. package/dist/emit-types-xsd.js.map +1 -0
  51. package/dist/index.d.ts +8 -0
  52. package/dist/index.d.ts.map +1 -0
  53. package/dist/index.js +8 -0
  54. package/dist/index.js.map +1 -0
  55. package/dist/options.d.ts +9 -0
  56. package/dist/options.d.ts.map +1 -0
  57. package/dist/options.js +12 -0
  58. package/dist/options.js.map +1 -0
  59. package/dist/xsd-target.d.ts +17 -0
  60. package/dist/xsd-target.d.ts.map +1 -0
  61. package/dist/xsd-target.js +53 -0
  62. package/dist/xsd-target.js.map +1 -0
  63. package/package.json +42 -0
@@ -0,0 +1,94 @@
1
+ <!--
2
+ XSD Render Target Library
3
+ FQN: org.blockml.bml.target.xsd.Library
4
+ -->
5
+ <block
6
+ xmlns="http://blockml.org/bml"
7
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
8
+ xsi:schemaLocation="http://blockml.org/bml https://blockml.org/schemas/bml.xsd
9
+ "
10
+ xmlns:blockml="org.blockml.bml"
11
+ xmlns:bom="org.blockml.bml.bom"
12
+ xmlns:bomblock="org.blockml.bml.bom.block"
13
+ xmlns:bomcommon="org.blockml.bml.bom.common"
14
+ xmlns:cli="org.blockml.bml.cli"
15
+ xmlns:core="org.blockml.bml.core"
16
+ xmlns:def="org.blockml.bml.definition"
17
+ xmlns:xsd="org.blockml.bml.target.xsd"
18
+ xmlns:xsdapi="org.blockml.bml.target.xsd.api"
19
+ xmlns:xsdcap="org.blockml.bml.target.xsd.capability"
20
+ xmlns:xsdconfig="org.blockml.bml.target.xsd.config"
21
+ xmlns:xsddocumentation="org.blockml.bml.target.xsd.documentation"
22
+ xmlns:type="org.blockml.bml.type">
23
+
24
+ <name>Library</name>
25
+ <type>xsd:Library</type>
26
+ <baseType>core:BlockLibrary</baseType>
27
+ <is>The XSD schema render target library catalog</is>
28
+
29
+ <documentation>
30
+ Canonical XSD specification for BlockML — registry name xsd, bml.xsd particles,
31
+ domain vocabularies, catalog.xml (XSD1–XSD18). TypeScript in
32
+ packages/xsd-target/src/ implements this library. Membership is defined
33
+ exclusively by this blocks list.
34
+ </documentation>
35
+
36
+ <version>0.1.0</version>
37
+
38
+ <language>
39
+ <English />
40
+ </language>
41
+
42
+ <properties>
43
+ <description>
44
+ <value>XSD render target library</value>
45
+ </description>
46
+ </properties>
47
+
48
+ <aggregations>
49
+ <readMe>
50
+ <composition>
51
+ <xsd:README />
52
+ </composition>
53
+ </readMe>
54
+ <dependencies>
55
+ <composition>
56
+ <blockml:Library />
57
+ </composition>
58
+ <composition>
59
+ <bom:Library />
60
+ </composition>
61
+ </dependencies>
62
+ <blocks>
63
+ <composition><xsd:XsdType /></composition>
64
+ <composition><xsdapi:XsdOptions /></composition>
65
+ <composition><xsdapi:XsdRenderOutput /></composition>
66
+ <composition><xsdapi:CatalogEntry /></composition>
67
+ <composition><xsdconfig:XsdConstants /></composition>
68
+ <composition><xsdconfig:DefaultXsdOptions /></composition>
69
+ <composition><xsdcap:ResolveOptions /></composition>
70
+ <composition><xsdcap:Render /></composition>
71
+ <composition><xsdcap:EmitBlockXsd /></composition>
72
+ <composition><xsdcap:MemberPrefersElement /></composition>
73
+ <composition><xsdcap:ExtraElementNames /></composition>
74
+ <composition><xsdcap:EmitTypesXsd /></composition>
75
+ <composition><xsdcap:EmitServiceXsd /></composition>
76
+ <composition><xsdcap:VocabularyElements /></composition>
77
+ <composition><xsdcap:EmitCatalogXml /></composition>
78
+ <composition><xsdcap:CatalogRelativePath /></composition>
79
+ <composition><xsddocumentation:Introduction /></composition>
80
+ <composition><xsddocumentation:LayerSeparation /></composition>
81
+ <composition><xsddocumentation:ArchitectureOverview /></composition>
82
+ <composition><xsddocumentation:V1Scope /></composition>
83
+ <composition><xsddocumentation:PublicApi /></composition>
84
+ <composition><xsddocumentation:ParticleMappingRules /></composition>
85
+ <composition><xsddocumentation:DomainVocabularyRules /></composition>
86
+ <composition><xsddocumentation:CatalogAndOutputLayout /></composition>
87
+ <composition><xsddocumentation:Diagnostics /></composition>
88
+ <composition><xsddocumentation:DesignDecisions /></composition>
89
+ <composition><xsddocumentation:PackageOwnership /></composition>
90
+ <composition><xsddocumentation:ScopeExclusions /></composition>
91
+ </blocks>
92
+ </aggregations>
93
+
94
+ </block>
@@ -0,0 +1,56 @@
1
+ <!--
2
+ XSD Render Target — README
3
+ FQN: org.blockml.bml.target.xsd.README
4
+ -->
5
+ <block
6
+ xmlns="http://blockml.org/bml"
7
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
8
+ xsi:schemaLocation="http://blockml.org/bml https://blockml.org/schemas/bml.xsd
9
+ "
10
+ xmlns:blockml="org.blockml.bml"
11
+ xmlns:bom="org.blockml.bml.bom"
12
+ xmlns:bomblock="org.blockml.bml.bom.block"
13
+ xmlns:bomcommon="org.blockml.bml.bom.common"
14
+ xmlns:cli="org.blockml.bml.cli"
15
+ xmlns:core="org.blockml.bml.core"
16
+ xmlns:def="org.blockml.bml.definition"
17
+ xmlns:xsd="org.blockml.bml.target.xsd"
18
+ xmlns:xsdapi="org.blockml.bml.target.xsd.api"
19
+ xmlns:xsdcap="org.blockml.bml.target.xsd.capability"
20
+ xmlns:xsdconfig="org.blockml.bml.target.xsd.config"
21
+ xmlns:xsddocumentation="org.blockml.bml.target.xsd.documentation"
22
+ xmlns:type="org.blockml.bml.type">
23
+
24
+ <name>README</name>
25
+ <type>xsd:README</type>
26
+ <baseType>core:ReadMe</baseType>
27
+ <is>Reading entry for the XSD render target library</is>
28
+
29
+ <documentation>
30
+ The @blockml/xsd-target package implements RenderTarget name xsd.
31
+ This library (org.blockml.bml.target.xsd.*) is the SSOT; TypeScript in
32
+ packages/xsd-target/src/ implements it. Tests in packages/xsd-target/test/
33
+ verify behavioral contracts.
34
+
35
+ Start reading at org.blockml.bml.target.xsd.documentation.Introduction (ReadNext chain).
36
+
37
+ V1: emit universal bml.xsd (D1 lists + Definition extras), optional types.xsd /
38
+ service.xsd string vocabularies, and root catalog.xml. Authoring validation is
39
+ CLI-owned (--no-xsd), not this target.
40
+
41
+ Layer separation:
42
+ • Definition / docs 19 — bml:xml particle grammar
43
+ • org.blockml.bml.target.xsd.* (this library) — schema and catalog emit
44
+ • org.blockml.bml.cli.* — outDir, write, validation escape hatch
45
+
46
+ Modules: documentation, api/config, capability.
47
+ </documentation>
48
+
49
+ <references>
50
+ <see type="xsddocumentation:Introduction" relation="ReadFirst" />
51
+ <see type="xsddocumentation:DesignDecisions" relation="SeeAlso" />
52
+ <see type="xsddocumentation:PublicApi" relation="SeeAlso" />
53
+ <see type="xsdcap:Render" relation="SeeAlso" />
54
+ </references>
55
+
56
+ </block>
@@ -0,0 +1,31 @@
1
+ <!--
2
+ XSD — XsdType
3
+ FQN: org.blockml.bml.target.xsd.XsdType
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:core="org.blockml.bml.core"
15
+ xmlns:def="org.blockml.bml.definition"
16
+ xmlns:xsd="org.blockml.bml.target.xsd"
17
+ xmlns:xsdapi="org.blockml.bml.target.xsd.api"
18
+ xmlns:xsdcap="org.blockml.bml.target.xsd.capability"
19
+ xmlns:xsdconfig="org.blockml.bml.target.xsd.config"
20
+ xmlns:xsddocumentation="org.blockml.bml.target.xsd.documentation"
21
+ xmlns:type="org.blockml.bml.type">
22
+
23
+ <name>XsdType</name>
24
+ <type>xsd:XsdType</type>
25
+ <baseType>core:Entity</baseType>
26
+ <is>Abstract marker for XSD target implementation data-structure blocks</is>
27
+
28
+ <documentation>All org.blockml.bml.target.xsd.api|config.* types extend this marker. Distinct from bom:UrmodellType and core:Capability.</documentation>
29
+ <abstract>true</abstract>
30
+
31
+ </block>
@@ -0,0 +1,33 @@
1
+ <!--
2
+ XSD API — CatalogEntry
3
+ FQN: org.blockml.bml.target.xsd.api.CatalogEntry
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:core="org.blockml.bml.core"
15
+ xmlns:def="org.blockml.bml.definition"
16
+ xmlns:xsd="org.blockml.bml.target.xsd"
17
+ xmlns:xsdapi="org.blockml.bml.target.xsd.api"
18
+ xmlns:xsdcap="org.blockml.bml.target.xsd.capability"
19
+ xmlns:xsdconfig="org.blockml.bml.target.xsd.config"
20
+ xmlns:xsddocumentation="org.blockml.bml.target.xsd.documentation"
21
+ xmlns:type="org.blockml.bml.type">
22
+
23
+ <name>CatalogEntry</name>
24
+ <type>xsdapi:CatalogEntry</type>
25
+ <baseType>xsd:XsdType</baseType>
26
+ <is>One OASIS catalog uri mapping</is>
27
+
28
+ <properties>
29
+ <namespaceUri type="type:Text"><documentation>XML namespace URI (catalog name attribute). (required)</documentation></namespaceUri>
30
+ <relativePath type="type:Text"><documentation>Relative schema path e.g. ./schemas/bml.xsd. (required)</documentation></relativePath>
31
+ </properties>
32
+
33
+ </block>
@@ -0,0 +1,38 @@
1
+ <!--
2
+ XSD API — XsdOptions
3
+ FQN: org.blockml.bml.target.xsd.api.XsdOptions
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:core="org.blockml.bml.core"
15
+ xmlns:def="org.blockml.bml.definition"
16
+ xmlns:xsd="org.blockml.bml.target.xsd"
17
+ xmlns:xsdapi="org.blockml.bml.target.xsd.api"
18
+ xmlns:xsdcap="org.blockml.bml.target.xsd.capability"
19
+ xmlns:xsdconfig="org.blockml.bml.target.xsd.config"
20
+ xmlns:xsddocumentation="org.blockml.bml.target.xsd.documentation"
21
+ xmlns:type="org.blockml.bml.type">
22
+
23
+ <name>XsdOptions</name>
24
+ <type>xsdapi:XsdOptions</type>
25
+ <baseType>xsd:XsdType</baseType>
26
+ <is>Opaque targetOptions payload for registry name xsd</is>
27
+
28
+ <documentation>XSD15: emitDomainSchemas default true. XSD16: includeNonExported reserved unused for V1 emit.</documentation>
29
+ <references>
30
+ <see type="xsddocumentation:PublicApi" relation="SeeAlso" />
31
+ <see type="xsdcap:ResolveOptions" relation="SeeAlso" />
32
+ </references>
33
+ <properties>
34
+ <includeNonExported type="type:Boolean"><documentation>Reserved; unused for V1 emit. Default true. (optional)</documentation></includeNonExported>
35
+ <emitDomainSchemas type="type:Boolean"><documentation>When false, skip types.xsd / service.xsd and their catalog entries. Default true. (optional)</documentation></emitDomainSchemas>
36
+ </properties>
37
+
38
+ </block>
@@ -0,0 +1,34 @@
1
+ <!--
2
+ XSD API — XsdRenderOutput
3
+ FQN: org.blockml.bml.target.xsd.api.XsdRenderOutput
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:core="org.blockml.bml.core"
15
+ xmlns:def="org.blockml.bml.definition"
16
+ xmlns:xsd="org.blockml.bml.target.xsd"
17
+ xmlns:xsdapi="org.blockml.bml.target.xsd.api"
18
+ xmlns:xsdcap="org.blockml.bml.target.xsd.capability"
19
+ xmlns:xsdconfig="org.blockml.bml.target.xsd.config"
20
+ xmlns:xsddocumentation="org.blockml.bml.target.xsd.documentation"
21
+ xmlns:type="org.blockml.bml.type">
22
+
23
+ <name>XsdRenderOutput</name>
24
+ <type>xsdapi:XsdRenderOutput</type>
25
+ <baseType>xsd:XsdType</baseType>
26
+ <is>Schema files under outDir plus optional root catalog.xml</is>
27
+
28
+ <documentation>files[] hold bml.xsd and optional types.xsd/service.xsd. rootFiles hold catalog.xml at project root.</documentation>
29
+ <properties>
30
+ <files type="type:Text"><documentation>Schema artifacts relative to outputBasePath. (required)</documentation></files>
31
+ <rootFiles type="type:Text"><documentation>Project-root files such as catalog.xml. (optional)</documentation></rootFiles>
32
+ </properties>
33
+
34
+ </block>
@@ -0,0 +1,42 @@
1
+ <!--
2
+ XSD Capability — CatalogRelativePath
3
+ FQN: org.blockml.bml.target.xsd.capability.CatalogRelativePath
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:core="org.blockml.bml.core"
15
+ xmlns:def="org.blockml.bml.definition"
16
+ xmlns:xsd="org.blockml.bml.target.xsd"
17
+ xmlns:xsdapi="org.blockml.bml.target.xsd.api"
18
+ xmlns:xsdcap="org.blockml.bml.target.xsd.capability"
19
+ xmlns:xsdconfig="org.blockml.bml.target.xsd.config"
20
+ xmlns:xsddocumentation="org.blockml.bml.target.xsd.documentation"
21
+ xmlns:type="org.blockml.bml.type">
22
+
23
+ <name>CatalogRelativePath</name>
24
+ <type>xsdcap:CatalogRelativePath</type>
25
+ <baseType>core:Capability</baseType>
26
+ <is>Build catalog uri path for a schema file under outDir</is>
27
+
28
+ <documentation>XSD14: normalize backslashes to slash; strip trailing slashes; return ./outDir/schemaFileName.</documentation>
29
+
30
+ <properties>
31
+ <outDir type="type:Text">
32
+ <documentation>Output base path. (required)</documentation>
33
+ </outDir>
34
+ <schemaFileName type="type:Text">
35
+ <documentation>e.g. bml.xsd. (required)</documentation>
36
+ </schemaFileName>
37
+ <result type="type:Text">
38
+ <documentation>Relative path. (required)</documentation>
39
+ </result>
40
+ </properties>
41
+
42
+ </block>
@@ -0,0 +1,43 @@
1
+ <!--
2
+ XSD Capability — EmitBlockXsd
3
+ FQN: org.blockml.bml.target.xsd.capability.EmitBlockXsd
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:core="org.blockml.bml.core"
15
+ xmlns:def="org.blockml.bml.definition"
16
+ xmlns:xsd="org.blockml.bml.target.xsd"
17
+ xmlns:xsdapi="org.blockml.bml.target.xsd.api"
18
+ xmlns:xsdcap="org.blockml.bml.target.xsd.capability"
19
+ xmlns:xsdconfig="org.blockml.bml.target.xsd.config"
20
+ xmlns:xsddocumentation="org.blockml.bml.target.xsd.documentation"
21
+ xmlns:type="org.blockml.bml.type">
22
+
23
+ <name>EmitBlockXsd</name>
24
+ <type>xsdcap:EmitBlockXsd</type>
25
+ <baseType>core:Capability</baseType>
26
+ <is>Emit universal bml.xsd schema string</is>
27
+
28
+ <documentation>XSD4–XSD11: targetNamespace http://blockml.org/bml; single root element block; mixed=true; choice of unbounded optional xs:element particles; no element xs:any; anyAttribute processContents=lax. Particles = sorted D1 identity + D1 containers + ExtraElementNames filtered.</documentation>
29
+
30
+ <references>
31
+ <see type="xsddocumentation:ParticleMappingRules" relation="SeeAlso" />
32
+ </references>
33
+
34
+ <properties>
35
+ <typeRegistry type="type:Text">
36
+ <documentation>TypeRegistry for meta Definition extras. (required)</documentation>
37
+ </typeRegistry>
38
+ <result type="type:Text">
39
+ <documentation>bml.xsd XML string. (required)</documentation>
40
+ </result>
41
+ </properties>
42
+
43
+ </block>
@@ -0,0 +1,43 @@
1
+ <!--
2
+ XSD Capability — EmitCatalogXml
3
+ FQN: org.blockml.bml.target.xsd.capability.EmitCatalogXml
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:core="org.blockml.bml.core"
15
+ xmlns:def="org.blockml.bml.definition"
16
+ xmlns:xsd="org.blockml.bml.target.xsd"
17
+ xmlns:xsdapi="org.blockml.bml.target.xsd.api"
18
+ xmlns:xsdcap="org.blockml.bml.target.xsd.capability"
19
+ xmlns:xsdconfig="org.blockml.bml.target.xsd.config"
20
+ xmlns:xsddocumentation="org.blockml.bml.target.xsd.documentation"
21
+ xmlns:type="org.blockml.bml.type">
22
+
23
+ <name>EmitCatalogXml</name>
24
+ <type>xsdcap:EmitCatalogXml</type>
25
+ <baseType>core:Capability</baseType>
26
+ <is>Emit OASIS XML catalog document</is>
27
+
28
+ <documentation>XSD14: xmlns urn:oasis:names:tc:entity:xmlns:xml:catalog; one uri element per CatalogEntry with name=namespaceUri and uri=relativePath.</documentation>
29
+
30
+ <references>
31
+ <see type="xsddocumentation:CatalogAndOutputLayout" relation="SeeAlso" />
32
+ </references>
33
+
34
+ <properties>
35
+ <entries type="type:Text">
36
+ <documentation>CatalogEntry list. (required)</documentation>
37
+ </entries>
38
+ <result type="type:Text">
39
+ <documentation>catalog.xml string. (required)</documentation>
40
+ </result>
41
+ </properties>
42
+
43
+ </block>
@@ -0,0 +1,43 @@
1
+ <!--
2
+ XSD Capability — EmitServiceXsd
3
+ FQN: org.blockml.bml.target.xsd.capability.EmitServiceXsd
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:core="org.blockml.bml.core"
15
+ xmlns:def="org.blockml.bml.definition"
16
+ xmlns:xsd="org.blockml.bml.target.xsd"
17
+ xmlns:xsdapi="org.blockml.bml.target.xsd.api"
18
+ xmlns:xsdcap="org.blockml.bml.target.xsd.capability"
19
+ xmlns:xsdconfig="org.blockml.bml.target.xsd.config"
20
+ xmlns:xsddocumentation="org.blockml.bml.target.xsd.documentation"
21
+ xmlns:type="org.blockml.bml.type">
22
+
23
+ <name>EmitServiceXsd</name>
24
+ <type>xsdcap:EmitServiceXsd</type>
25
+ <baseType>core:Capability</baseType>
26
+ <is>Emit service.xsd vocabulary schema</is>
27
+
28
+ <documentation>XSD13: elements for org.blockml.bml.service.* short names as xs:string under http://blockml.org/schema/service.</documentation>
29
+
30
+ <references>
31
+ <see type="xsddocumentation:DomainVocabularyRules" relation="SeeAlso" />
32
+ </references>
33
+
34
+ <properties>
35
+ <typeRegistry type="type:Text">
36
+ <documentation>TypeRegistry. (required)</documentation>
37
+ </typeRegistry>
38
+ <result type="type:Text">
39
+ <documentation>service.xsd XML string. (required)</documentation>
40
+ </result>
41
+ </properties>
42
+
43
+ </block>
@@ -0,0 +1,43 @@
1
+ <!--
2
+ XSD Capability — EmitTypesXsd
3
+ FQN: org.blockml.bml.target.xsd.capability.EmitTypesXsd
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:core="org.blockml.bml.core"
15
+ xmlns:def="org.blockml.bml.definition"
16
+ xmlns:xsd="org.blockml.bml.target.xsd"
17
+ xmlns:xsdapi="org.blockml.bml.target.xsd.api"
18
+ xmlns:xsdcap="org.blockml.bml.target.xsd.capability"
19
+ xmlns:xsdconfig="org.blockml.bml.target.xsd.config"
20
+ xmlns:xsddocumentation="org.blockml.bml.target.xsd.documentation"
21
+ xmlns:type="org.blockml.bml.type">
22
+
23
+ <name>EmitTypesXsd</name>
24
+ <type>xsdcap:EmitTypesXsd</type>
25
+ <baseType>core:Capability</baseType>
26
+ <is>Emit types.xsd vocabulary schema</is>
27
+
28
+ <documentation>XSD12: elements for org.blockml.bml.type.* short names as xs:string under http://blockml.org/schema/types.</documentation>
29
+
30
+ <references>
31
+ <see type="xsddocumentation:DomainVocabularyRules" relation="SeeAlso" />
32
+ </references>
33
+
34
+ <properties>
35
+ <typeRegistry type="type:Text">
36
+ <documentation>TypeRegistry. (required)</documentation>
37
+ </typeRegistry>
38
+ <result type="type:Text">
39
+ <documentation>types.xsd XML string. (required)</documentation>
40
+ </result>
41
+ </properties>
42
+
43
+ </block>
@@ -0,0 +1,43 @@
1
+ <!--
2
+ XSD Capability — ExtraElementNames
3
+ FQN: org.blockml.bml.target.xsd.capability.ExtraElementNames
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:core="org.blockml.bml.core"
15
+ xmlns:def="org.blockml.bml.definition"
16
+ xmlns:xsd="org.blockml.bml.target.xsd"
17
+ xmlns:xsdapi="org.blockml.bml.target.xsd.api"
18
+ xmlns:xsdcap="org.blockml.bml.target.xsd.capability"
19
+ xmlns:xsdconfig="org.blockml.bml.target.xsd.config"
20
+ xmlns:xsddocumentation="org.blockml.bml.target.xsd.documentation"
21
+ xmlns:type="org.blockml.bml.type">
22
+
23
+ <name>ExtraElementNames</name>
24
+ <type>xsdcap:ExtraElementNames</type>
25
+ <baseType>core:Capability</baseType>
26
+ <is>Collect extra particle names from meta Definition blocks</is>
27
+
28
+ <documentation>XSD9/XSD11: walk META_DEFINITION_FQNS if present; recurse members and subBlocks; keep names where MemberPrefersElement; unique sort; exclude D1 identity and container names.</documentation>
29
+
30
+ <references>
31
+ <see type="xsdconfig:XsdConstants" relation="SeeAlso" />
32
+ </references>
33
+
34
+ <properties>
35
+ <typeRegistry type="type:Text">
36
+ <documentation>TypeRegistry. (required)</documentation>
37
+ </typeRegistry>
38
+ <result type="type:Text">
39
+ <documentation>Sorted unique element names. (required)</documentation>
40
+ </result>
41
+ </properties>
42
+
43
+ </block>
@@ -0,0 +1,43 @@
1
+ <!--
2
+ XSD Capability — MemberPrefersElement
3
+ FQN: org.blockml.bml.target.xsd.capability.MemberPrefersElement
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:core="org.blockml.bml.core"
15
+ xmlns:def="org.blockml.bml.definition"
16
+ xmlns:xsd="org.blockml.bml.target.xsd"
17
+ xmlns:xsdapi="org.blockml.bml.target.xsd.api"
18
+ xmlns:xsdcap="org.blockml.bml.target.xsd.capability"
19
+ xmlns:xsdconfig="org.blockml.bml.target.xsd.config"
20
+ xmlns:xsddocumentation="org.blockml.bml.target.xsd.documentation"
21
+ xmlns:type="org.blockml.bml.type">
22
+
23
+ <name>MemberPrefersElement</name>
24
+ <type>xsdcap:MemberPrefersElement</type>
25
+ <baseType>core:Capability</baseType>
26
+ <is>Decide whether a member becomes an element particle</is>
27
+
28
+ <documentation>XSD10: true if xmlRendering.kinds includes element or raw includes element; false if sole kind attribute or raw equals attribute; aggregations and associations true; default true. Attribute-only members omitted from schema.</documentation>
29
+
30
+ <references>
31
+ <see type="xsddocumentation:ParticleMappingRules" relation="SeeAlso" />
32
+ </references>
33
+
34
+ <properties>
35
+ <member type="type:Text">
36
+ <documentation>MemberDefinition. (required)</documentation>
37
+ </member>
38
+ <result type="type:Boolean">
39
+ <documentation>true if emit as xs:element particle. (required)</documentation>
40
+ </result>
41
+ </properties>
42
+
43
+ </block>
@@ -0,0 +1,47 @@
1
+ <!--
2
+ XSD Capability — Render
3
+ FQN: org.blockml.bml.target.xsd.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:core="org.blockml.bml.core"
15
+ xmlns:def="org.blockml.bml.definition"
16
+ xmlns:xsd="org.blockml.bml.target.xsd"
17
+ xmlns:xsdapi="org.blockml.bml.target.xsd.api"
18
+ xmlns:xsdcap="org.blockml.bml.target.xsd.capability"
19
+ xmlns:xsdconfig="org.blockml.bml.target.xsd.config"
20
+ xmlns:xsddocumentation="org.blockml.bml.target.xsd.documentation"
21
+ xmlns:type="org.blockml.bml.type">
22
+
23
+ <name>Render</name>
24
+ <type>xsdcap:Render</type>
25
+ <baseType>core:Capability</baseType>
26
+ <is>Public RenderTarget entry: TypeRegistry to XSD files and catalog</is>
27
+
28
+ <documentation>XSD1–XSD3: name xsd; accepts library|corpus|auto; always emit bml.xsd. XSD14–XSD15: always rootFiles catalog.xml; if emitDomainSchemas append types.xsd and service.xsd with catalog entries. Uses session typeRegistry and outputBasePath.</documentation>
29
+
30
+ <references>
31
+ <see type="xsddocumentation:PublicApi" relation="SeeAlso" />
32
+ <see type="xsdcap:EmitBlockXsd" relation="SeeAlso" />
33
+ </references>
34
+
35
+ <properties>
36
+ <request type="type:Text">
37
+ <documentation>CompileRequest with targetOptions. (required)</documentation>
38
+ </request>
39
+ <renderContext type="type:Text">
40
+ <documentation>RenderContext. (required)</documentation>
41
+ </renderContext>
42
+ <result type="xsdapi:XsdRenderOutput">
43
+ <documentation>files and rootFiles. (required)</documentation>
44
+ </result>
45
+ </properties>
46
+
47
+ </block>