@techspokes/typescript-wsdl-client 1.1.5 → 1.2.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 (505) hide show
  1. package/README.md +80 -68
  2. package/dist/app/generateApp.d.ts +0 -1
  3. package/dist/app/generateApp.js +1 -1
  4. package/dist/app/generateCheckedApp.d.ts +38 -0
  5. package/dist/app/generateCheckedApp.js +108 -0
  6. package/dist/checkedPipeline.d.ts +155 -0
  7. package/dist/checkedPipeline.js +448 -0
  8. package/dist/checkedPlanning.d.ts +123 -0
  9. package/dist/checkedPlanning.js +268 -0
  10. package/dist/cli.d.ts +0 -1
  11. package/dist/cli.js +92 -2
  12. package/dist/client/checkedDirectRuntime.d.ts +40 -3
  13. package/dist/client/checkedDirectRuntime.js +28 -8
  14. package/dist/client/directClientRuntime.d.ts +27 -2
  15. package/dist/client/directClientRuntime.js +142 -89
  16. package/dist/client/directClientVersion.d.ts +3 -1
  17. package/dist/client/directClientVersion.js +3 -0
  18. package/dist/client/generateClient.d.ts +0 -1
  19. package/dist/client/generateClient.js +98 -28
  20. package/dist/client/generateDirectClient.d.ts +21 -3
  21. package/dist/client/generateDirectClient.js +138 -6
  22. package/dist/client/generateOperations.d.ts +0 -1
  23. package/dist/client/generateOperations.js +30 -11
  24. package/dist/client/generateTypes.d.ts +0 -1
  25. package/dist/client/generateUtils.d.ts +0 -1
  26. package/dist/client/generateUtils.js +7 -1
  27. package/dist/compiler/applicationGroups.d.ts +53 -0
  28. package/dist/compiler/applicationGroups.js +403 -0
  29. package/dist/compiler/buildCanonicalGraph.d.ts +0 -1
  30. package/dist/compiler/canonicalGraph.d.ts +4 -16
  31. package/dist/compiler/canonicalGraph.js +1 -8
  32. package/dist/compiler/catalogErrors.d.ts +0 -1
  33. package/dist/compiler/catalogProvenance.d.ts +0 -1
  34. package/dist/compiler/checkedAssessment.d.ts +0 -1
  35. package/dist/compiler/checkedAssessment.js +1 -1
  36. package/dist/compiler/checkedComponentSource.d.ts +16 -0
  37. package/dist/compiler/checkedComponentSource.js +31 -0
  38. package/dist/compiler/checkedSourcePreparation.d.ts +38 -1
  39. package/dist/compiler/checkedSourcePreparation.js +71 -0
  40. package/dist/compiler/complexTypeContent.d.ts +5 -6
  41. package/dist/compiler/complexTypeContent.js +2 -2
  42. package/dist/compiler/componentCorrespondence.d.ts +32 -0
  43. package/dist/compiler/componentCorrespondence.js +140 -0
  44. package/dist/compiler/componentRecordProjection.d.ts +112 -0
  45. package/dist/compiler/componentRecordProjection.js +329 -0
  46. package/dist/compiler/componentSoapPreparation.d.ts +20 -0
  47. package/dist/compiler/componentSoapPreparation.js +36 -0
  48. package/dist/compiler/composeCanonicalGraph.d.ts +0 -1
  49. package/dist/compiler/dataOwnership.d.ts +0 -1
  50. package/dist/compiler/dataOwnership.js +14 -4
  51. package/dist/compiler/datatypeValues.d.ts +0 -1
  52. package/dist/compiler/declarationIdentity.d.ts +22 -0
  53. package/dist/compiler/declarationIdentity.js +9 -0
  54. package/dist/compiler/directCodec.d.ts +79 -2
  55. package/dist/compiler/directCodec.js +310 -92
  56. package/dist/compiler/directExecutionPolicy.d.ts +0 -1
  57. package/dist/compiler/directOperation.d.ts +72 -8
  58. package/dist/compiler/directOperation.js +164 -19
  59. package/dist/compiler/directSoap.d.ts +29 -5
  60. package/dist/compiler/directSoap.js +154 -44
  61. package/dist/compiler/directSoapSource.d.ts +24 -1
  62. package/dist/compiler/directSoapSource.js +166 -19
  63. package/dist/compiler/directSourceCapsule.d.ts +74 -2
  64. package/dist/compiler/directSourceCapsule.js +484 -6
  65. package/dist/compiler/directStructure.d.ts +83 -6
  66. package/dist/compiler/directStructure.js +353 -58
  67. package/dist/compiler/directStructurePlan.d.ts +144 -2
  68. package/dist/compiler/directStructurePlan.js +615 -30
  69. package/dist/compiler/directValues.d.ts +76 -5
  70. package/dist/compiler/directValues.js +967 -117
  71. package/dist/compiler/finiteRe01Construction.d.ts +69 -0
  72. package/dist/compiler/finiteRe01Construction.js +422 -0
  73. package/dist/compiler/finiteRe01Verification.d.ts +81 -3
  74. package/dist/compiler/finiteRe01Verification.js +391 -4
  75. package/dist/compiler/generateCatalog.d.ts +0 -1
  76. package/dist/compiler/graphTraversal.d.ts +0 -1
  77. package/dist/compiler/hypotheticalScopedIdentity.d.ts +0 -1
  78. package/dist/compiler/legacyDeclarations.d.ts +26 -0
  79. package/dist/compiler/legacyDeclarations.js +144 -0
  80. package/dist/compiler/occurrenceAnalysis.d.ts +2 -1
  81. package/dist/compiler/occurrenceAnalysis.js +23 -7
  82. package/dist/compiler/originalSourceMembership.d.ts +0 -1
  83. package/dist/compiler/particleAttribution.d.ts +0 -1
  84. package/dist/compiler/particleAttribution.js +20 -0
  85. package/dist/compiler/particleDeclarationConsistency.d.ts +0 -1
  86. package/dist/compiler/particleDeclarationConsistency.js +9 -0
  87. package/dist/compiler/particleExtension.d.ts +0 -1
  88. package/dist/compiler/particleExtension.js +5 -1
  89. package/dist/compiler/particleLocalAssessment.d.ts +0 -1
  90. package/dist/compiler/particleRestriction.d.ts +0 -1
  91. package/dist/compiler/particleRestriction.js +6 -1
  92. package/dist/compiler/particleSemanticView.d.ts +2 -1
  93. package/dist/compiler/particleSemanticView.js +16 -3
  94. package/dist/compiler/particleWildcardRelation.d.ts +0 -1
  95. package/dist/compiler/projectionScalar.d.ts +49 -0
  96. package/dist/compiler/projectionScalar.js +218 -0
  97. package/dist/compiler/re01CandidateAssignments.d.ts +95 -0
  98. package/dist/compiler/re01CandidateAssignments.js +341 -0
  99. package/dist/compiler/re01CandidateCorrespondence.d.ts +22 -1
  100. package/dist/compiler/re01CandidateCorrespondence.js +167 -38
  101. package/dist/compiler/re01TypeProperties.d.ts +0 -1
  102. package/dist/compiler/re01TypePropertyValidation.d.ts +0 -1
  103. package/dist/compiler/resolveCanonicalGraph.d.ts +5 -2
  104. package/dist/compiler/resolveCanonicalGraph.js +77 -7
  105. package/dist/compiler/rpcStringValues.d.ts +30 -0
  106. package/dist/compiler/rpcStringValues.js +196 -0
  107. package/dist/compiler/rpcTypedValues.d.ts +48 -0
  108. package/dist/compiler/rpcTypedValues.js +190 -0
  109. package/dist/compiler/scalarSchemaAssessment.d.ts +0 -1
  110. package/dist/compiler/schemaAttributeGroupProperties.d.ts +0 -1
  111. package/dist/compiler/schemaAttributeProperties.d.ts +0 -1
  112. package/dist/compiler/schemaAttributeUses.d.ts +22 -2
  113. package/dist/compiler/schemaAttributeUses.js +86 -13
  114. package/dist/compiler/schemaBinaryWordReconstruction.d.ts +0 -1
  115. package/dist/compiler/schemaBuiltinFacets.d.ts +0 -1
  116. package/dist/compiler/schemaCalendarImages.d.ts +0 -1
  117. package/dist/compiler/schemaCalendarLanguage.d.ts +0 -1
  118. package/dist/compiler/schemaCompiler.d.ts +0 -1
  119. package/dist/compiler/schemaCompiler.js +44 -109
  120. package/dist/compiler/schemaComponentEquality.d.ts +0 -1
  121. package/dist/compiler/schemaConstructionAssessment.d.ts +34 -1
  122. package/dist/compiler/schemaConstructionAssessment.js +88 -6
  123. package/dist/compiler/schemaDatatypeValues.d.ts +0 -1
  124. package/dist/compiler/schemaDecimalLanguage.d.ts +0 -1
  125. package/dist/compiler/schemaDeclarationPrimitives.d.ts +7 -2
  126. package/dist/compiler/schemaDeclarationPrimitives.js +18 -1
  127. package/dist/compiler/schemaDocumentSyntax.d.ts +0 -1
  128. package/dist/compiler/schemaDurationLanguage.d.ts +0 -1
  129. package/dist/compiler/schemaElementInstance.d.ts +30 -0
  130. package/dist/compiler/schemaElementInstance.js +45 -0
  131. package/dist/compiler/schemaElementProperties.d.ts +0 -1
  132. package/dist/compiler/schemaEndpointWordCapacity.d.ts +0 -1
  133. package/dist/compiler/schemaExactCalendar.d.ts +0 -1
  134. package/dist/compiler/schemaFacetAnnotation.d.ts +0 -1
  135. package/dist/compiler/schemaGeneratedScalarShape.d.ts +0 -1
  136. package/dist/compiler/schemaGeneratedScalarShape.js +2 -0
  137. package/dist/compiler/schemaIdentityConstraints.d.ts +0 -1
  138. package/dist/compiler/schemaIeeeLanguage.d.ts +0 -1
  139. package/dist/compiler/schemaIntegerImages.d.ts +0 -1
  140. package/dist/compiler/schemaLexicalPredicates.d.ts +0 -1
  141. package/dist/compiler/schemaNotationProperties.d.ts +0 -1
  142. package/dist/compiler/schemaNumericImageConditions.d.ts +0 -1
  143. package/dist/compiler/schemaParticleWildcardProperties.d.ts +0 -1
  144. package/dist/compiler/schemaPattern.d.ts +0 -1
  145. package/dist/compiler/schemaRegularLanguage.d.ts +0 -1
  146. package/dist/compiler/schemaScalarContext.d.ts +5 -1
  147. package/dist/compiler/schemaScalarKernel.d.ts +0 -1
  148. package/dist/compiler/schemaScalarWitnesses.d.ts +0 -1
  149. package/dist/compiler/schemaSimpleTypeProperties.d.ts +0 -1
  150. package/dist/compiler/schemaSourceGrammar.d.ts +0 -1
  151. package/dist/compiler/schemaSourceLexical.d.ts +0 -1
  152. package/dist/compiler/schemaSourceValues.d.ts +0 -1
  153. package/dist/compiler/schemaSourceWildcards.d.ts +1 -2
  154. package/dist/compiler/schemaSourceWildcards.js +3 -1
  155. package/dist/compiler/schemaSymbolicSequences.d.ts +0 -1
  156. package/dist/compiler/schemaSymbolicValueSets.d.ts +0 -1
  157. package/dist/compiler/schemaSyntaxAssessment.d.ts +0 -1
  158. package/dist/compiler/schemaTemporalAliases.d.ts +0 -1
  159. package/dist/compiler/schemaTokenImages.d.ts +0 -1
  160. package/dist/compiler/schemaTypeIdentity.d.ts +0 -1
  161. package/dist/compiler/schemaTypeIdentity.js +2 -0
  162. package/dist/compiler/schemaTypeRelations.d.ts +0 -1
  163. package/dist/compiler/schemaUri.d.ts +0 -1
  164. package/dist/compiler/schemaValueContext.d.ts +0 -1
  165. package/dist/compiler/schemaValueImages.d.ts +0 -1
  166. package/dist/compiler/schemaValueSequences.d.ts +0 -1
  167. package/dist/compiler/semanticBudget.d.ts +18 -1
  168. package/dist/compiler/semanticBudget.js +17 -2
  169. package/dist/compiler/semanticCatalog.d.ts +2 -3
  170. package/dist/compiler/semanticContext.d.ts +12 -1
  171. package/dist/compiler/semanticContext.js +39 -0
  172. package/dist/compiler/semanticTypeDependencies.d.ts +0 -1
  173. package/dist/compiler/semanticTypeReference.d.ts +0 -1
  174. package/dist/compiler/shapeResolver.d.ts +0 -1
  175. package/dist/compiler/soapHeaders.d.ts +16 -0
  176. package/dist/compiler/soapHeaders.js +42 -0
  177. package/dist/compiler/sourceSchemaBinding.d.ts +0 -1
  178. package/dist/compiler/standardSchemaComponents.d.ts +71 -0
  179. package/dist/compiler/standardSchemaComponents.js +74 -0
  180. package/dist/compiler/standardSchemaConstruction.d.ts +20 -0
  181. package/dist/compiler/standardSchemaConstruction.js +34 -0
  182. package/dist/compiler/structuralCompanions.d.ts +0 -1
  183. package/dist/compiler/validateSemanticGraph.d.ts +0 -1
  184. package/dist/compiler/wildcardAlgebra.d.ts +0 -1
  185. package/dist/compiler/wsdlPolicyRequirements.d.ts +43 -0
  186. package/dist/compiler/wsdlPolicyRequirements.js +239 -0
  187. package/dist/config.d.ts +0 -1
  188. package/dist/gateway/generateCheckedGateway.d.ts +32 -0
  189. package/dist/gateway/generateCheckedGateway.js +293 -0
  190. package/dist/gateway/generateComposedGateway.d.ts +16 -0
  191. package/dist/gateway/generateComposedGateway.js +65 -0
  192. package/dist/gateway/generateGateway.d.ts +0 -1
  193. package/dist/gateway/generateGateway.js +1 -0
  194. package/dist/gateway/generators.d.ts +0 -1
  195. package/dist/gateway/generators.js +19 -4
  196. package/dist/gateway/helpers.d.ts +1 -1
  197. package/dist/gateway/helpers.js +15 -0
  198. package/dist/generation/componentShape.d.ts +14 -0
  199. package/dist/generation/componentShape.js +293 -0
  200. package/dist/generation/preamble.d.ts +0 -1
  201. package/dist/generation/sourceLayout.d.ts +13 -0
  202. package/dist/generation/sourceLayout.js +40 -0
  203. package/dist/generation/writeGeneratedSource.d.ts +0 -1
  204. package/dist/index.d.ts +11 -2
  205. package/dist/index.js +4 -1
  206. package/dist/loader/fetch.d.ts +0 -1
  207. package/dist/loader/orderedSyntax.d.ts +12 -1
  208. package/dist/loader/orderedSyntax.js +40 -6
  209. package/dist/loader/resolutionDepth.d.ts +0 -1
  210. package/dist/loader/schemaInput.d.ts +28 -1
  211. package/dist/loader/schemaInput.js +41 -4
  212. package/dist/loader/schemaResources.d.ts +2 -1
  213. package/dist/loader/schemaResources.js +45 -4
  214. package/dist/loader/wsdlLoader.d.ts +0 -1
  215. package/dist/multiServicePipeline.d.ts +41 -0
  216. package/dist/multiServicePipeline.js +287 -0
  217. package/dist/openapi/casing.d.ts +0 -1
  218. package/dist/openapi/composeOpenAPI.d.ts +29 -0
  219. package/dist/openapi/composeOpenAPI.js +322 -0
  220. package/dist/openapi/generateOpenAPI.d.ts +0 -1
  221. package/dist/openapi/generatePaths.d.ts +0 -1
  222. package/dist/openapi/generateSchemas.d.ts +0 -1
  223. package/dist/openapi/security.d.ts +0 -1
  224. package/dist/pipeline.d.ts +7 -3
  225. package/dist/pipeline.js +15 -0
  226. package/dist/test/generateCheckedTests.d.ts +17 -0
  227. package/dist/test/generateCheckedTests.js +60 -0
  228. package/dist/test/generateTests.d.ts +0 -1
  229. package/dist/test/generators.d.ts +0 -1
  230. package/dist/test/mockData.d.ts +0 -1
  231. package/dist/test/mockData.js +20 -14
  232. package/dist/util/attributeWildcards.d.ts +0 -1
  233. package/dist/util/builder.d.ts +0 -1
  234. package/dist/util/catalogMeta.d.ts +0 -1
  235. package/dist/util/checkedCliDiagnostics.d.ts +11 -0
  236. package/dist/util/checkedCliDiagnostics.js +22 -0
  237. package/dist/util/cli.d.ts +0 -1
  238. package/dist/util/errors.d.ts +0 -1
  239. package/dist/util/imports.d.ts +0 -1
  240. package/dist/util/runtimeSource.d.ts +0 -1
  241. package/dist/util/runtimeSource.js +3 -5
  242. package/dist/util/securityConfig.d.ts +0 -1
  243. package/dist/util/streamConfig.d.ts +0 -1
  244. package/dist/util/tools.d.ts +0 -1
  245. package/dist/util/xmlWhitespace.d.ts +0 -1
  246. package/dist/xsd/primitives.d.ts +0 -1
  247. package/docs/agent-skill.md +12 -1
  248. package/docs/api-reference.md +127 -9
  249. package/docs/checked-gateway.md +212 -0
  250. package/docs/checked-generation.md +167 -0
  251. package/docs/cli-reference.md +48 -6
  252. package/docs/concepts.md +139 -5
  253. package/docs/configuration.md +15 -4
  254. package/docs/corpus.md +33 -0
  255. package/docs/direct-values.md +13 -13
  256. package/docs/examples/checked-forecast.wsdl +19 -0
  257. package/docs/gateway-guide.md +104 -27
  258. package/docs/generated-code.md +22 -11
  259. package/docs/mapping-contract.md +114 -0
  260. package/docs/migration-playbook.md +5 -1
  261. package/docs/migration.md +124 -6
  262. package/docs/output-anatomy.md +21 -18
  263. package/docs/production.md +7 -5
  264. package/docs/start-here.md +19 -3
  265. package/docs/supported-patterns.md +24 -3
  266. package/docs/testing.md +119 -31
  267. package/docs/troubleshooting.md +3 -1
  268. package/llms.txt +16 -8
  269. package/package.json +64 -23
  270. package/src/runtime/checkedGatewayHost.tpl.txt +157 -0
  271. package/src/runtime/clientStreamMethods.tpl.txt +156 -148
  272. package/src/runtime/operationsStreamHelper.tpl.txt +6 -6
  273. package/src/runtime/streamXml.ts +49 -21
  274. package/dist/app/generateApp.d.ts.map +0 -1
  275. package/dist/cli.d.ts.map +0 -1
  276. package/dist/client/checkedDirectRuntime.d.ts.map +0 -1
  277. package/dist/client/directClientRuntime.d.ts.map +0 -1
  278. package/dist/client/directClientVersion.d.ts.map +0 -1
  279. package/dist/client/generateClient.d.ts.map +0 -1
  280. package/dist/client/generateDirectClient.d.ts.map +0 -1
  281. package/dist/client/generateOperations.d.ts.map +0 -1
  282. package/dist/client/generateTypes.d.ts.map +0 -1
  283. package/dist/client/generateUtils.d.ts.map +0 -1
  284. package/dist/compiler/buildCanonicalGraph.d.ts.map +0 -1
  285. package/dist/compiler/canonicalGraph.d.ts.map +0 -1
  286. package/dist/compiler/catalogErrors.d.ts.map +0 -1
  287. package/dist/compiler/catalogProvenance.d.ts.map +0 -1
  288. package/dist/compiler/checkedAssessment.d.ts.map +0 -1
  289. package/dist/compiler/checkedSourcePreparation.d.ts.map +0 -1
  290. package/dist/compiler/complexTypeContent.d.ts.map +0 -1
  291. package/dist/compiler/composeCanonicalGraph.d.ts.map +0 -1
  292. package/dist/compiler/dataOwnership.d.ts.map +0 -1
  293. package/dist/compiler/datatypeValues.d.ts.map +0 -1
  294. package/dist/compiler/directCodec.d.ts.map +0 -1
  295. package/dist/compiler/directExecutionPolicy.d.ts.map +0 -1
  296. package/dist/compiler/directOperation.d.ts.map +0 -1
  297. package/dist/compiler/directSoap.d.ts.map +0 -1
  298. package/dist/compiler/directSoapSource.d.ts.map +0 -1
  299. package/dist/compiler/directSourceCapsule.d.ts.map +0 -1
  300. package/dist/compiler/directStructure.d.ts.map +0 -1
  301. package/dist/compiler/directStructurePlan.d.ts.map +0 -1
  302. package/dist/compiler/directValues.d.ts.map +0 -1
  303. package/dist/compiler/finiteRe01Verification.d.ts.map +0 -1
  304. package/dist/compiler/generateCatalog.d.ts.map +0 -1
  305. package/dist/compiler/graphTraversal.d.ts.map +0 -1
  306. package/dist/compiler/hypotheticalScopedIdentity.d.ts.map +0 -1
  307. package/dist/compiler/occurrenceAnalysis.d.ts.map +0 -1
  308. package/dist/compiler/originalSourceMembership.d.ts.map +0 -1
  309. package/dist/compiler/particleAttribution.d.ts.map +0 -1
  310. package/dist/compiler/particleDeclarationConsistency.d.ts.map +0 -1
  311. package/dist/compiler/particleExtension.d.ts.map +0 -1
  312. package/dist/compiler/particleLocalAssessment.d.ts.map +0 -1
  313. package/dist/compiler/particleRestriction.d.ts.map +0 -1
  314. package/dist/compiler/particleSemanticView.d.ts.map +0 -1
  315. package/dist/compiler/particleWildcardRelation.d.ts.map +0 -1
  316. package/dist/compiler/re01CandidateCorrespondence.d.ts.map +0 -1
  317. package/dist/compiler/re01TypeProperties.d.ts.map +0 -1
  318. package/dist/compiler/re01TypePropertyValidation.d.ts.map +0 -1
  319. package/dist/compiler/resolveCanonicalGraph.d.ts.map +0 -1
  320. package/dist/compiler/scalarSchemaAssessment.d.ts.map +0 -1
  321. package/dist/compiler/schemaAttributeGroupProperties.d.ts.map +0 -1
  322. package/dist/compiler/schemaAttributeProperties.d.ts.map +0 -1
  323. package/dist/compiler/schemaAttributeUses.d.ts.map +0 -1
  324. package/dist/compiler/schemaBinaryWordReconstruction.d.ts.map +0 -1
  325. package/dist/compiler/schemaBuiltinFacets.d.ts.map +0 -1
  326. package/dist/compiler/schemaCalendarImages.d.ts.map +0 -1
  327. package/dist/compiler/schemaCalendarLanguage.d.ts.map +0 -1
  328. package/dist/compiler/schemaCompiler.d.ts.map +0 -1
  329. package/dist/compiler/schemaComponentEquality.d.ts.map +0 -1
  330. package/dist/compiler/schemaConstructionAssessment.d.ts.map +0 -1
  331. package/dist/compiler/schemaDatatypeValues.d.ts.map +0 -1
  332. package/dist/compiler/schemaDecimalLanguage.d.ts.map +0 -1
  333. package/dist/compiler/schemaDeclarationPrimitives.d.ts.map +0 -1
  334. package/dist/compiler/schemaDocumentSyntax.d.ts.map +0 -1
  335. package/dist/compiler/schemaDurationLanguage.d.ts.map +0 -1
  336. package/dist/compiler/schemaElementProperties.d.ts.map +0 -1
  337. package/dist/compiler/schemaEndpointWordCapacity.d.ts.map +0 -1
  338. package/dist/compiler/schemaExactCalendar.d.ts.map +0 -1
  339. package/dist/compiler/schemaFacetAnnotation.d.ts.map +0 -1
  340. package/dist/compiler/schemaGeneratedScalarShape.d.ts.map +0 -1
  341. package/dist/compiler/schemaIdentityConstraints.d.ts.map +0 -1
  342. package/dist/compiler/schemaIeeeLanguage.d.ts.map +0 -1
  343. package/dist/compiler/schemaIntegerImages.d.ts.map +0 -1
  344. package/dist/compiler/schemaLexicalPredicates.d.ts.map +0 -1
  345. package/dist/compiler/schemaNotationProperties.d.ts.map +0 -1
  346. package/dist/compiler/schemaNumericImageConditions.d.ts.map +0 -1
  347. package/dist/compiler/schemaParticleWildcardProperties.d.ts.map +0 -1
  348. package/dist/compiler/schemaPattern.d.ts.map +0 -1
  349. package/dist/compiler/schemaRegularLanguage.d.ts.map +0 -1
  350. package/dist/compiler/schemaScalarContext.d.ts.map +0 -1
  351. package/dist/compiler/schemaScalarKernel.d.ts.map +0 -1
  352. package/dist/compiler/schemaScalarWitnesses.d.ts.map +0 -1
  353. package/dist/compiler/schemaSimpleTypeProperties.d.ts.map +0 -1
  354. package/dist/compiler/schemaSourceGrammar.d.ts.map +0 -1
  355. package/dist/compiler/schemaSourceLexical.d.ts.map +0 -1
  356. package/dist/compiler/schemaSourceValues.d.ts.map +0 -1
  357. package/dist/compiler/schemaSourceWildcards.d.ts.map +0 -1
  358. package/dist/compiler/schemaSymbolicSequences.d.ts.map +0 -1
  359. package/dist/compiler/schemaSymbolicValueSets.d.ts.map +0 -1
  360. package/dist/compiler/schemaSyntaxAssessment.d.ts.map +0 -1
  361. package/dist/compiler/schemaTemporalAliases.d.ts.map +0 -1
  362. package/dist/compiler/schemaTokenImages.d.ts.map +0 -1
  363. package/dist/compiler/schemaTypeIdentity.d.ts.map +0 -1
  364. package/dist/compiler/schemaTypeRelations.d.ts.map +0 -1
  365. package/dist/compiler/schemaUri.d.ts.map +0 -1
  366. package/dist/compiler/schemaValueContext.d.ts.map +0 -1
  367. package/dist/compiler/schemaValueImages.d.ts.map +0 -1
  368. package/dist/compiler/schemaValueSequences.d.ts.map +0 -1
  369. package/dist/compiler/semanticBudget.d.ts.map +0 -1
  370. package/dist/compiler/semanticCatalog.d.ts.map +0 -1
  371. package/dist/compiler/semanticContext.d.ts.map +0 -1
  372. package/dist/compiler/semanticTypeDependencies.d.ts.map +0 -1
  373. package/dist/compiler/semanticTypeReference.d.ts.map +0 -1
  374. package/dist/compiler/shapeResolver.d.ts.map +0 -1
  375. package/dist/compiler/sourceSchemaBinding.d.ts.map +0 -1
  376. package/dist/compiler/structuralCompanions.d.ts.map +0 -1
  377. package/dist/compiler/validateSemanticGraph.d.ts.map +0 -1
  378. package/dist/compiler/wildcardAlgebra.d.ts.map +0 -1
  379. package/dist/config.d.ts.map +0 -1
  380. package/dist/gateway/generateGateway.d.ts.map +0 -1
  381. package/dist/gateway/generators.d.ts.map +0 -1
  382. package/dist/gateway/helpers.d.ts.map +0 -1
  383. package/dist/generation/preamble.d.ts.map +0 -1
  384. package/dist/generation/writeGeneratedSource.d.ts.map +0 -1
  385. package/dist/index.d.ts.map +0 -1
  386. package/dist/loader/fetch.d.ts.map +0 -1
  387. package/dist/loader/orderedSyntax.d.ts.map +0 -1
  388. package/dist/loader/resolutionDepth.d.ts.map +0 -1
  389. package/dist/loader/schemaInput.d.ts.map +0 -1
  390. package/dist/loader/schemaResources.d.ts.map +0 -1
  391. package/dist/loader/wsdlLoader.d.ts.map +0 -1
  392. package/dist/openapi/casing.d.ts.map +0 -1
  393. package/dist/openapi/generateOpenAPI.d.ts.map +0 -1
  394. package/dist/openapi/generatePaths.d.ts.map +0 -1
  395. package/dist/openapi/generateSchemas.d.ts.map +0 -1
  396. package/dist/openapi/security.d.ts.map +0 -1
  397. package/dist/pipeline.d.ts.map +0 -1
  398. package/dist/runtime/jsonArray.d.ts +0 -24
  399. package/dist/runtime/jsonArray.d.ts.map +0 -1
  400. package/dist/runtime/jsonArray.js +0 -52
  401. package/dist/runtime/ndjson.d.ts +0 -24
  402. package/dist/runtime/ndjson.d.ts.map +0 -1
  403. package/dist/runtime/ndjson.js +0 -30
  404. package/dist/runtime/streamXml.d.ts +0 -45
  405. package/dist/runtime/streamXml.d.ts.map +0 -1
  406. package/dist/runtime/streamXml.js +0 -212
  407. package/dist/test/generateTests.d.ts.map +0 -1
  408. package/dist/test/generators.d.ts.map +0 -1
  409. package/dist/test/mockData.d.ts.map +0 -1
  410. package/dist/util/attributeWildcards.d.ts.map +0 -1
  411. package/dist/util/builder.d.ts.map +0 -1
  412. package/dist/util/catalogMeta.d.ts.map +0 -1
  413. package/dist/util/cli.d.ts.map +0 -1
  414. package/dist/util/errors.d.ts.map +0 -1
  415. package/dist/util/imports.d.ts.map +0 -1
  416. package/dist/util/runtimeSource.d.ts.map +0 -1
  417. package/dist/util/securityConfig.d.ts.map +0 -1
  418. package/dist/util/streamConfig.d.ts.map +0 -1
  419. package/dist/util/tools.d.ts.map +0 -1
  420. package/dist/util/xmlWhitespace.d.ts.map +0 -1
  421. package/dist/xsd/primitives.d.ts.map +0 -1
  422. package/docs/AGENTS.md +0 -47
  423. package/docs/README.md +0 -69
  424. package/docs/architecture.md +0 -158
  425. package/docs/content-model-analysis.md +0 -92
  426. package/docs/content-model-baseline.md +0 -121
  427. package/docs/content-model-catalog.md +0 -116
  428. package/docs/content-model-companions.md +0 -90
  429. package/docs/content-model-composition.md +0 -103
  430. package/docs/content-model-decisions.md +0 -79
  431. package/docs/content-model-gateway-feasibility.md +0 -169
  432. package/docs/content-model-graph.md +0 -121
  433. package/docs/content-model-loading.md +0 -163
  434. package/docs/content-model-matching.md +0 -85
  435. package/docs/content-model-readiness.md +0 -144
  436. package/docs/content-model-resolution.md +0 -81
  437. package/docs/content-model-s02-handoff.md +0 -98
  438. package/docs/content-model-s06-au-01.md +0 -425
  439. package/docs/content-model-s06-dt-01.md +0 -386
  440. package/docs/content-model-s06-pw-01.md +0 -350
  441. package/docs/content-model-s06-re-01-resolver-implementation.md +0 -869
  442. package/docs/content-model-s06-re-01-resolver.md +0 -513
  443. package/docs/content-model-s06-re-01-scalar-witnesses.md +0 -1423
  444. package/docs/content-model-s06-re-01-support-reconstruction.md +0 -6337
  445. package/docs/content-model-s06-re-01.md +0 -7477
  446. package/docs/content-model-s06-research-handoff.md +0 -909
  447. package/docs/content-model-shipped-fix.md +0 -83
  448. package/docs/content-model-soap-feasibility.md +0 -165
  449. package/docs/decisions/001-test-generation.md +0 -36
  450. package/docs/decisions/002-streamable-responses.md +0 -332
  451. package/docs/decisions/003-content-model-contracts.md +0 -280
  452. package/docs/file-naming-and-path-organization.md +0 -213
  453. package/docs/reference-validation.md +0 -243
  454. package/docs/releases/README.md +0 -94
  455. package/docs/releases/v0.20.0.md +0 -22
  456. package/docs/releases/v0.21.0.md +0 -30
  457. package/docs/releases/v0.22.0.md +0 -30
  458. package/docs/releases/v0.23.0.md +0 -31
  459. package/docs/releases/v0.24.0.md +0 -38
  460. package/docs/releases/v0.25.0.md +0 -31
  461. package/docs/releases/v0.25.2.md +0 -32
  462. package/docs/releases/v0.26.0.md +0 -32
  463. package/docs/releases/v0.27.0.md +0 -31
  464. package/docs/releases/v0.28.0.md +0 -32
  465. package/docs/releases/v0.29.0.md +0 -32
  466. package/docs/releases/v0.30.0.md +0 -30
  467. package/docs/releases/v0.30.1.md +0 -31
  468. package/docs/releases/v0.30.2.md +0 -30
  469. package/docs/releases/v0.30.3.md +0 -33
  470. package/docs/releases/v0.31.0.md +0 -33
  471. package/docs/releases/v0.32.0.md +0 -33
  472. package/docs/releases/v0.33.0.md +0 -34
  473. package/docs/releases/v0.34.0.md +0 -30
  474. package/docs/releases/v0.35.0.md +0 -33
  475. package/docs/releases/v0.36.0.md +0 -32
  476. package/docs/releases/v0.37.0.md +0 -33
  477. package/docs/releases/v0.38.0.md +0 -35
  478. package/docs/releases/v0.39.0.md +0 -35
  479. package/docs/releases/v0.40.0.md +0 -45
  480. package/docs/releases/v0.40.1.md +0 -34
  481. package/docs/releases/v1.0.0.md +0 -42
  482. package/docs/releases/v1.0.1.md +0 -38
  483. package/docs/releases/v1.0.2.md +0 -51
  484. package/docs/releases/v1.0.3.md +0 -37
  485. package/docs/releases/v1.0.4.md +0 -45
  486. package/docs/releases/v1.0.5.md +0 -41
  487. package/docs/releases/v1.0.6.md +0 -35
  488. package/docs/releases/v1.0.7.md +0 -36
  489. package/docs/releases/v1.1.0.md +0 -42
  490. package/docs/releases/v1.1.1.md +0 -44
  491. package/docs/releases/v1.1.2.md +0 -42
  492. package/docs/releases/v1.1.3.md +0 -36
  493. package/docs/releases/v1.1.4.md +0 -36
  494. package/docs/releases/v1.1.5.md +0 -38
  495. package/docs/roadmap/README.md +0 -107
  496. package/docs/roadmap/v1.0-capability-conformance-framework.md +0 -582
  497. package/docs/roadmap/v1.0-choice-union-mode.md +0 -90
  498. package/docs/roadmap/v1.0-contract-audit.md +0 -75
  499. package/docs/roadmap/v1.0-json-array-streaming.md +0 -101
  500. package/docs/roadmap/v1.0-openapi-fastify-compatibility.md +0 -99
  501. package/docs/roadmap/v1.0-release-candidate-gates.md +0 -92
  502. package/docs/roadmap/v1.0-wsdl-coverage-matrix.md +0 -200
  503. package/docs/roadmap/v1.0-xs-anyattribute-wildcard-bag.md +0 -932
  504. package/src/runtime/jsonArray.ts +0 -55
  505. package/src/runtime/ndjson.ts +0 -32
@@ -1,6 +1,7 @@
1
1
  import { getChildrenWithLocalName, getFirstWithLocalName, normalizeArray, pascal, resolveQName, } from "../util/tools.js";
2
2
  import { xsdToTsPrimitive } from "../xsd/primitives.js";
3
3
  import { WsdlCompilationError } from "../util/errors.js";
4
+ import { LegacyDeclarations } from "./legacyDeclarations.js";
4
5
  // XML Schema namespace constant
5
6
  const XS = "http://www.w3.org/2001/XMLSchema";
6
7
  /**
@@ -13,25 +14,6 @@ const XS = "http://www.w3.org/2001/XMLSchema";
13
14
  function qkey(q) {
14
15
  return `{${q.ns}}${q.local}`;
15
16
  }
16
- /**
17
- * Generates a name for an inline complex type
18
- *
19
- * This function creates appropriate TypeScript names for anonymous types
20
- * that are defined inline within element declarations.
21
- *
22
- * @param {string} parentTypeName - Name of the parent type
23
- * @param {string} [propName] - Name of the property containing the inline type
24
- * @param {number|"unbounded"} [_max] - Maximum occurrence (unused but kept for API compatibility)
25
- * @returns {string} - Generated TypeScript name for the inline type
26
- */
27
- function makeInlineTypeName(parentTypeName, propName, _max) {
28
- const base = pascal(parentTypeName || "AnonParent");
29
- const prop = pascal(propName || "");
30
- if (prop) {
31
- return prop;
32
- }
33
- return `${base}Anon`;
34
- }
35
17
  // --- Minimal WS-Policy scanning (inline policies only; PolicyReference not resolved) ---
36
18
  /**
37
19
  * Extracts security requirements from WS-Policy nodes
@@ -255,9 +237,13 @@ export function compileCatalog(cat, options, streamConfig) {
255
237
  }
256
238
  }
257
239
  }
258
- // outputs & state
259
- const compiledMap = new Map(); // key: ns|name
260
- const aliasMap = new Map(); // key: ns|name
240
+ const declarations = new LegacyDeclarations([
241
+ ...Array.from(complexTypes.values(), rec => ({ kind: "complex", name: String(rec.node["@_name"]), ns: rec.tns, node: rec.node, prefixes: rec.prefixes })),
242
+ ...Array.from(simpleTypes.values(), rec => ({ kind: "simple", name: String(rec.node["@_name"]), ns: rec.tns, node: rec.node, prefixes: rec.prefixes })),
243
+ ...Array.from(elements.values(), rec => ({ kind: "element", name: String(rec.node["@_name"]), ns: rec.tns, node: rec.node, prefixes: rec.prefixes })),
244
+ ]);
245
+ const compiledMap = new Map();
246
+ const aliasMap = new Map();
261
247
  const inProgress = new Set();
262
248
  // meta accumulators
263
249
  const attrSpec = {};
@@ -314,22 +300,23 @@ export function compileCatalog(cat, options, streamConfig) {
314
300
  const list = getFirstWithLocalName(simpleNode, "list");
315
301
  if (list?.["@_itemType"]) {
316
302
  const q = resolveQName(list["@_itemType"], schemaNS, prefixes);
317
- const declared = q.ns === XS ? `xs:${q.local}` : `{${q.ns}}${q.local}`;
318
- return { tsType: `${xsdToTsPrimitive(declared, options?.primitive)}[]`, declared };
303
+ const item = resolveTypeRef(q, schemaNS, prefixes);
304
+ const itemType = item.tsType.includes("|") ? `(${item.tsType})` : item.tsType;
305
+ return { tsType: `${itemType}[]`, declared: item.declared };
319
306
  }
320
307
  // fallback
321
308
  return { tsType: "string", declared: "xs:string" };
322
309
  }
323
310
  /** Compile and cache a named simpleType */
324
311
  function getOrCompileAlias(name, sNode, schemaNS, prefixes) {
325
- const key = `${schemaNS}|${name}`;
312
+ const key = declarations.type(schemaNS, name);
326
313
  const present = aliasMap.get(key);
327
314
  if (present) {
328
315
  return present;
329
316
  }
330
317
  const { tsType, declared, jsdoc } = compileSimpleTypeNode(sNode, schemaNS, prefixes);
331
318
  const alias = {
332
- name: pascal(name),
319
+ name: declarations.name(key),
333
320
  ns: schemaNS,
334
321
  tsType,
335
322
  declared,
@@ -373,19 +360,26 @@ export function compileCatalog(cat, options, streamConfig) {
373
360
  const k = qkey(q);
374
361
  return complexTypes.get(k);
375
362
  }
376
- function getOrCompileComplex(name, cnode, schemaNS, prefixes) {
377
- // Early cycle detection: check if we're already processing this raw name + namespace combo
378
- // BEFORE calling pascal() to avoid stack overflow on circular references
379
- const rawKey = `${schemaNS}|${name}`;
380
- if (inProgress.has(rawKey)) {
381
- // Return a minimal stub to break the cycle
382
- const stubName = pascal(name);
383
- return { name: stubName, ns: schemaNS, attrs: [], elems: [] };
363
+ function getOrCompileComplex(name, cnode, schemaNS, prefixes, declarationId = declarations.type(schemaNS, name)) {
364
+ const key = declarationId;
365
+ const outName = declarations.name(key);
366
+ const present = compiledMap.get(key);
367
+ if (present)
368
+ return present;
369
+ if (inProgress.has(key))
370
+ return { name: outName, ns: schemaNS, attrs: [], elems: [] };
371
+ inProgress.add(key);
372
+ try {
373
+ return compileComplexBody(cnode, schemaNS, prefixes, declarationId);
374
+ }
375
+ finally {
376
+ inProgress.delete(key);
384
377
  }
385
- inProgress.add(rawKey);
386
- const outName = pascal(name);
378
+ }
379
+ function compileComplexBody(cnode, schemaNS, prefixes, declarationId) {
380
+ const key = declarationId;
381
+ const outName = declarations.name(key);
387
382
  const typeDoc = extractAnnotationDocumentation(cnode);
388
- const key = `${schemaNS}|${outName}`;
389
383
  // hoisted helpers for merging and collecting
390
384
  const mergeAttrs = (into, list) => {
391
385
  const idx = new Map();
@@ -415,40 +409,6 @@ export function compileCatalog(cat, options, streamConfig) {
415
409
  }
416
410
  }
417
411
  };
418
- const mergeChoiceGroups = (into, list) => {
419
- if (list.length === 0)
420
- return into;
421
- const merged = into ? [...into] : [];
422
- const idx = new Map();
423
- merged.forEach((g, i) => idx.set(g.name, i));
424
- for (const g of list) {
425
- const pos = idx.get(g.name);
426
- if (pos == null) {
427
- idx.set(g.name, merged.length);
428
- merged.push(g);
429
- }
430
- else {
431
- merged[pos] = g;
432
- }
433
- }
434
- return merged;
435
- };
436
- const mergeJsonUnique = (into, list) => {
437
- if (list.length === 0)
438
- return into;
439
- const merged = into ? [...into] : [];
440
- const seen = new Set(merged.map((w) => JSON.stringify(w)));
441
- for (const w of list) {
442
- const key = JSON.stringify(w);
443
- if (!seen.has(key)) {
444
- seen.add(key);
445
- merged.push(w);
446
- }
447
- }
448
- return merged;
449
- };
450
- const mergeWildcards = (into, list) => mergeJsonUnique(into, list);
451
- const mergeAttributeWildcards = (into, list) => mergeJsonUnique(into, list);
452
412
  const collectAttributes = (node) => {
453
413
  const out = [];
454
414
  const attrs = getChildrenWithLocalName(node, "attribute");
@@ -547,7 +507,7 @@ export function compileCatalog(cat, options, streamConfig) {
547
507
  }
548
508
  return out;
549
509
  };
550
- const compileElementParticle = (ownerTypeName, e) => {
510
+ const compileElementParticle = (e) => {
551
511
  const nameOrRef = e["@_name"] || e["@_ref"];
552
512
  if (!nameOrRef)
553
513
  return undefined;
@@ -557,8 +517,8 @@ export function compileCatalog(cat, options, streamConfig) {
557
517
  const inlineComplex = getFirstWithLocalName(e, "complexType");
558
518
  const inlineSimple = getFirstWithLocalName(e, "simpleType");
559
519
  if (inlineComplex) {
560
- const inlineName = makeInlineTypeName(ownerTypeName, propName || nameOrRef, max);
561
- const rec = getOrCompileComplex(inlineName, inlineComplex, schemaNS, prefixes);
520
+ const inlineId = declarations.inline(declarationId, e);
521
+ const rec = getOrCompileComplex(String(propName || nameOrRef), inlineComplex, schemaNS, prefixes, inlineId);
562
522
  return {
563
523
  name: propName || nameOrRef,
564
524
  tsType: rec.name,
@@ -603,7 +563,7 @@ export function compileCatalog(cat, options, streamConfig) {
603
563
  });
604
564
  const recurse = (groupNode, inherited = one, inheritSequenceOccurs = true) => {
605
565
  for (const e of getChildrenWithLocalName(groupNode, "element")) {
606
- const particle = compileElementParticle(ownerTypeName, e);
566
+ const particle = compileElementParticle(e);
607
567
  if (!particle)
608
568
  continue;
609
569
  // @constraints Preserve disabled particles until the content model can represent their absence (#145).
@@ -636,7 +596,7 @@ export function compileCatalog(cat, options, streamConfig) {
636
596
  const branches = [];
637
597
  let branchSourceOrder = 0;
638
598
  for (const e of getChildrenWithLocalName(child.node, "element")) {
639
- const particle = compileElementParticle(ownerTypeName, e);
599
+ const particle = compileElementParticle(e);
640
600
  if (particle) {
641
601
  branches.push({
642
602
  name: particle.name,
@@ -672,29 +632,6 @@ export function compileCatalog(cat, options, streamConfig) {
672
632
  recurse(node);
673
633
  return out;
674
634
  };
675
- const present = compiledMap.get(key);
676
- if (present) {
677
- // On duplicate definitions, merge new attributes and elements
678
- const newAttrs = collectAttributes(cnode);
679
- const newElems = collectParticles(outName, cnode);
680
- const newWildcards = collectWildcards(cnode);
681
- const newAttributeWildcards = collectAttributeWildcards(cnode);
682
- const newChoiceGroups = collectChoiceGroups(outName, cnode);
683
- mergeAttrs(present.attrs, newAttrs);
684
- mergeElems(present.elems, newElems);
685
- present.wildcards = mergeWildcards(present.wildcards, newWildcards);
686
- present.attributeWildcards = mergeAttributeWildcards(present.attributeWildcards, newAttributeWildcards);
687
- const mergedChoiceGroups = mergeChoiceGroups(present.choiceGroups, newChoiceGroups);
688
- if (mergedChoiceGroups && mergedChoiceGroups.length > 0) {
689
- present.choiceGroups = mergedChoiceGroups;
690
- }
691
- if (!present.doc && typeDoc) {
692
- present.doc = typeDoc;
693
- }
694
- // Remove from inProgress since we're done with this cycle
695
- inProgress.delete(rawKey);
696
- return present;
697
- }
698
635
  // result accumulators
699
636
  const attrs = [];
700
637
  const elems = [];
@@ -749,7 +686,6 @@ export function compileCatalog(cat, options, streamConfig) {
749
686
  ...(localChoiceGroups.length > 0 ? { localChoiceGroups } : {}),
750
687
  };
751
688
  compiledMap.set(key, result);
752
- inProgress.delete(key);
753
689
  return result;
754
690
  }
755
691
  }
@@ -784,7 +720,6 @@ export function compileCatalog(cat, options, streamConfig) {
784
720
  ...(attributeWildcards.length > 0 ? { attributeWildcards } : {}),
785
721
  };
786
722
  compiledMap.set(key, result);
787
- inProgress.delete(rawKey);
788
723
  return result;
789
724
  };
790
725
  if (ext) {
@@ -811,20 +746,19 @@ export function compileCatalog(cat, options, streamConfig) {
811
746
  ...(choiceGroups.length > 0 ? { choiceGroups } : {}),
812
747
  };
813
748
  compiledMap.set(key, result);
814
- inProgress.delete(rawKey);
815
749
  return result;
816
750
  }
817
751
  // Helper: compile a global element into a surface type (wrapper)
818
752
  function compileElementAsType(name, enode, schemaNS, prefixes) {
819
- const outName = pascal(name);
753
+ const key = declarations.surface(schemaNS, name);
754
+ const outName = declarations.name(key);
820
755
  const elementDoc = extractAnnotationDocumentation(enode);
821
- const key = `${schemaNS}|${outName}`;
822
756
  const present = compiledMap.get(key);
823
757
  if (present)
824
758
  return present;
825
759
  const inlineComplex = getFirstWithLocalName(enode, "complexType");
826
760
  if (inlineComplex) {
827
- return getOrCompileComplex(name, inlineComplex, schemaNS, prefixes);
761
+ return getOrCompileComplex(name, inlineComplex, schemaNS, prefixes, key);
828
762
  }
829
763
  const inlineSimple = getFirstWithLocalName(enode, "simpleType");
830
764
  if (inlineSimple) {
@@ -871,7 +805,7 @@ export function compileCatalog(cat, options, streamConfig) {
871
805
  // record alias: ElementName -> BaseTypeName
872
806
  const aliasKey = key;
873
807
  const existingAlias = aliasMap.get(aliasKey);
874
- const declared = `{${base.ns}}${base.name}`;
808
+ const declared = `{${base.ns}}${q.local}`;
875
809
  if (!existingAlias) {
876
810
  aliasMap.set(aliasKey, { name: outName, ns: schemaNS, tsType: base.name, declared, doc: elementDoc });
877
811
  }
@@ -1138,9 +1072,10 @@ export function compileCatalog(cat, options, streamConfig) {
1138
1072
  const inputElement = elementOfMessage(inMsg);
1139
1073
  const outputElement = elementOfMessage(outMsg);
1140
1074
  const doc = extractDirectDocumentation(po);
1141
- // Derive TypeScript type names from element local names
1142
- const inputTypeName = inputElement ? pascal(inputElement.local) : undefined;
1143
- const outputTypeName = outputElement ? pascal(outputElement.local) : undefined;
1075
+ const surfaceName = (element) => elements.has(qkey(element))
1076
+ ? declarations.name(declarations.surface(element.ns, element.local)) : pascal(element.local);
1077
+ const inputTypeName = inputElement ? surfaceName(inputElement) : undefined;
1078
+ const outputTypeName = outputElement ? surfaceName(outputElement) : undefined;
1144
1079
  const op = {
1145
1080
  name,
1146
1081
  soapAction: bOps.get(name) || "",
@@ -25,4 +25,3 @@ export type ComponentEqualityResult = Readonly<{
25
25
  }> | Failure;
26
26
  export declare function compareComponentProperties(context: SemanticContext, a: GraphNode, b: GraphNode): ComponentEqualityResult;
27
27
  export {};
28
- //# sourceMappingURL=schemaComponentEquality.d.ts.map
@@ -2,9 +2,13 @@
2
2
  import type { NodeId } from './canonicalGraph.js';
3
3
  import type { SemanticContext } from './semanticContext.js';
4
4
  import type { ResourceLimitFailure } from './semanticBudget.js';
5
+ import type { AttributeRestrictionPair } from './schemaAttributeUses.js';
6
+ import type { ScalarResult } from './schemaScalarKernel.js';
7
+ import type { ScalarObligation } from './scalarSchemaAssessment.js';
5
8
  import type { CorrespondenceReceipt } from './re01CandidateCorrespondence.js';
6
9
  import type { SemanticTypeDependency, SemanticTypeReference } from './semanticTypeReference.js';
7
10
  import type { IdentityConstraintDependency } from './schemaIdentityConstraints.js';
11
+ import type { StandardElementConstruction } from './standardSchemaConstruction.js';
8
12
  export type ConstructionObligation = Readonly<{
9
13
  rule: string;
10
14
  component: NodeId;
@@ -19,6 +23,7 @@ export type ComponentConstructionReceipt = Readonly<{
19
23
  receipts: readonly object[];
20
24
  dependencies: readonly NodeId[];
21
25
  builtinDependencies: readonly string[];
26
+ standardDependencies: readonly StandardElementConstruction[];
22
27
  typeDependencies: readonly SemanticTypeDependency[];
23
28
  identityConstraintDependencies: readonly IdentityConstraintDependency[];
24
29
  re01?: Readonly<{
@@ -43,4 +48,32 @@ export declare function assertComponentConstruction(context: SemanticContext, re
43
48
  export declare function checkComponentConstruction(context: SemanticContext, id: NodeId, options?: Readonly<{
44
49
  correspondence?: CorrespondenceReceipt;
45
50
  }>): ComponentConstructionResult;
46
- //# sourceMappingURL=schemaConstructionAssessment.d.ts.map
51
+ export type SimpleRestrictionPredicate = Readonly<{
52
+ kind: 'checked-simple-restriction-predicate';
53
+ contextId: string;
54
+ target: NodeId;
55
+ base: NodeId;
56
+ attributes: AttributeRestrictionPair;
57
+ scalar: Extract<ScalarResult<boolean>, {
58
+ kind: 'checked';
59
+ }>;
60
+ typeDependencies: readonly SemanticTypeDependency[];
61
+ scalarObligations: readonly ScalarObligation[];
62
+ remaining: readonly ['source-and-base-construction', 'alternative-derivation-interpretation'];
63
+ }>;
64
+ export type SimpleRestrictionPredicateResult = SimpleRestrictionPredicate | ResourceLimitFailure | Readonly<{
65
+ kind: 'not-simple-restriction';
66
+ rule: string;
67
+ component: NodeId;
68
+ contextId: string;
69
+ details?: object;
70
+ }>;
71
+ /** Authenticate the paired predicate; it never replaces the target's actual derivation. */
72
+ export declare function assertSimpleRestrictionPredicate(context: SemanticContext, receipt: SimpleRestrictionPredicate): void;
73
+ /** Evaluate simple-content restriction constraints for the actual target properties and an explicit alternative base.
74
+ * @remarks Reuses the AU derivation owner and scalar content-derivation kernel. No target node, raw property,
75
+ * TYPE/SCOPE lookup or stored base edge is replaced. Whole construction and the in-principle derivation interpretation
76
+ * remain separate duties; failure of an alternative never declares the source schema invalid.
77
+ * @returns An authenticated native predicate, an explicit predicate/unavailability diagnostic, or sticky resource failure.
78
+ */
79
+ export declare function checkSimpleRestrictionPredicate(context: SemanticContext, target: NodeId, base: NodeId): SimpleRestrictionPredicateResult;
@@ -2,7 +2,7 @@ import { containedNodes } from './graphTraversal.js';
2
2
  import { assertSemanticContext } from './semanticContext.js';
3
3
  import { checkActualSchemaSyntax } from './schemaSyntaxAssessment.js';
4
4
  import { checkDeclaration } from './schemaDeclarationPrimitives.js';
5
- import { assessAttributeUse, assessRawAttributeUses, assessCandidateAttributeUses, assessSourceAttributeUses } from './schemaAttributeUses.js';
5
+ import { assessAttributeUse, assessRawAttributeUses, assessCandidateAttributeUses, assessSourceAttributeUses, assessAttributeRestrictionPair, assertAttributeRestrictionPair } from './schemaAttributeUses.js';
6
6
  import { createSchemaScalarKernel } from './schemaScalarKernel.js';
7
7
  import { checkImmediateTypeFinal, immediateTypeBase } from './schemaTypeRelations.js';
8
8
  import { deriveActualComplexContent, deriveRawComplexContent, deriveOriginalComplexPropertyContent, deriveOriginalContentSubtree, particleContentNode, deriveBuiltinAnyTypeContent, deriveModelGroupContent, originalUrWildcardSource } from './complexTypeContent.js';
@@ -20,6 +20,7 @@ import { assertCandidateCorrespondence } from './re01CandidateCorrespondence.js'
20
20
  import { declaredType, resolveSemanticType, semanticTypeKey } from './schemaTypeIdentity.js';
21
21
  import { collectSemanticTypeDependencies } from './semanticTypeDependencies.js';
22
22
  import { collectIdentityConstraintDependencies } from './schemaIdentityConstraints.js';
23
+ import { checkStandardElementConstruction } from './standardSchemaConstruction.js';
23
24
  const issued = new WeakMap();
24
25
  class ConstructionAbort extends Error {
25
26
  result;
@@ -67,6 +68,17 @@ export function checkComponentConstruction(context, id, options = {}) {
67
68
  if (found.kind !== 'found')
68
69
  return fail('component-membership', 'Component is unavailable in the selected context', 'unresolved');
69
70
  const node = found.node, receipts = [], dependencies = new Set(), builtins = new Set();
71
+ const standards = new Map();
72
+ const standardDependency = (declaration) => {
73
+ b.chargeWork(4 + declaration.id.length);
74
+ if (!standards.has(declaration.id)) {
75
+ const result = checkStandardElementConstruction(context, declaration);
76
+ if (result.kind === 'resource-limit')
77
+ throw new ConstructionAbort(result);
78
+ standards.set(declaration.id, result);
79
+ }
80
+ return declaration;
81
+ };
70
82
  const typeDependencies = collectSemanticTypeDependencies(context);
71
83
  const identityConstraintDependencies = collectIdentityConstraintDependencies(context);
72
84
  const obligations = [];
@@ -94,6 +106,8 @@ export function checkComponentConstruction(context, id, options = {}) {
94
106
  builtins.add(lookup.name.local);
95
107
  return undefined;
96
108
  }
109
+ if (lookup.kind === 'standard-element')
110
+ return standardDependency(lookup.declaration);
97
111
  if (lookup.kind !== 'found')
98
112
  return fail('component-dependency', 'A required reference is unavailable', 'unresolved');
99
113
  b.chargeWork(lookup.node.id.length);
@@ -215,6 +229,8 @@ export function checkComponentConstruction(context, id, options = {}) {
215
229
  return fail('source-only-scalar-slot', 'Suppressed original source cannot supply a semantic scalar slot', 'unresolved');
216
230
  b.chargeWork();
217
231
  const target = context.resolve(slot.reference);
232
+ if (target.kind === 'standard-element')
233
+ standardDependency(target.declaration);
218
234
  if (target.kind === 'found' && target.node.identity.kind === 'global')
219
235
  requireNode(target.node.id);
220
236
  }
@@ -222,6 +238,7 @@ export function checkComponentConstruction(context, id, options = {}) {
222
238
  const receipt = Object.freeze({ kind: 'checked', authority: 'XSD10-component-construction-v1',
223
239
  scope: 'original-source-syntax-only', contextId: context.contextId, component: id, receipts: Object.freeze(receipts),
224
240
  dependencies: Object.freeze([...dependencies]), builtinDependencies: Object.freeze([]), typeDependencies: typeDependencies.snapshot(),
241
+ standardDependencies: Object.freeze([...standards.values()]),
225
242
  identityConstraintDependencies: identityConstraintDependencies.snapshot(),
226
243
  obligations: Object.freeze([]), discharged: Object.freeze([]) });
227
244
  b.chargeWork();
@@ -275,9 +292,10 @@ export function checkComponentConstruction(context, id, options = {}) {
275
292
  if (sourceContent) {
276
293
  if (originalComplex) {
277
294
  b.chargeWork(100 + context.contextId.length + context.originalContext().contextId.length + id.length);
278
- receipts.push(Object.freeze({ kind: 'checked-original-input', authority: 'XSD10-original-complex-input-v1',
295
+ const simpleInput = sourceContent.content.kind === 'simple';
296
+ receipts.push(Object.freeze({ kind: 'checked-original-input', authority: simpleInput ? 'XSD10-original-complex-simple-input-v1' : 'XSD10-original-complex-input-v1',
279
297
  contextId: context.contextId, originalContextId: context.originalContext().contextId, component: id,
280
- scope: 'guarded-original-particle-empty-input', remaining: Object.freeze(['actual-source-qualification', 'complete-type-validity']) }));
298
+ scope: simpleInput ? 'guarded-original-simple-input' : 'guarded-original-particle-empty-input', remaining: Object.freeze(['actual-source-qualification', 'complete-type-validity']) }));
281
299
  reference(originalComplex.derivation?.base ?? ANY);
282
300
  }
283
301
  else if (rawComplex) {
@@ -339,7 +357,7 @@ export function checkComponentConstruction(context, id, options = {}) {
339
357
  }
340
358
  else if (item.term.kind === 'element') {
341
359
  const declaration = reference(item.term.declaration);
342
- if (declaration?.kind !== 'element')
360
+ if (declaration?.kind !== 'element' && declaration?.kind !== 'standard-element')
343
361
  return fail('particle-properties', 'Element use must reference a declaration');
344
362
  }
345
363
  }
@@ -576,9 +594,9 @@ export function checkComponentConstruction(context, id, options = {}) {
576
594
  return fail('p-props-correct', 'A particle component must have a positive maximum occurrence');
577
595
  if (node.term.kind === 'element') {
578
596
  const declaration = reference(node.term.declaration);
579
- if (declaration?.kind !== 'element')
597
+ if (declaration?.kind !== 'element' && declaration?.kind !== 'standard-element')
580
598
  return fail('particle-properties', 'Element particle must reference an element declaration');
581
- if (declaration.identity.kind === 'global') {
599
+ if (declaration.kind === 'element' && declaration.identity.kind === 'global') {
582
600
  if (context.membership !== 'complete-actual-plus-additions')
583
601
  obligation('complete-substitution-universe');
584
602
  b.chargeWork(3);
@@ -638,6 +656,7 @@ export function checkComponentConstruction(context, id, options = {}) {
638
656
  const receipt = Object.freeze({ kind: 'checked', authority: 'XSD10-component-construction-v1',
639
657
  scope: 'local-component-premises', contextId: context.contextId, component: id, receipts: Object.freeze(receipts),
640
658
  dependencies: Object.freeze([...dependencies]), builtinDependencies: Object.freeze([...builtins]), re01,
659
+ standardDependencies: Object.freeze([...standards.values()]),
641
660
  typeDependencies: typeDependencies.snapshot(), identityConstraintDependencies: identityConstraintDependencies.snapshot(),
642
661
  obligations: b.freeze(b.snapshot(pending)),
643
662
  discharged: ownRawSimpleContentChecked
@@ -661,3 +680,66 @@ export function checkComponentConstruction(context, id, options = {}) {
661
680
  }
662
681
  });
663
682
  }
683
+ const simpleRestrictionPredicates = new WeakMap();
684
+ /** Authenticate the paired predicate; it never replaces the target's actual derivation. */
685
+ export function assertSimpleRestrictionPredicate(context, receipt) {
686
+ assertSemanticContext(context);
687
+ if (simpleRestrictionPredicates.get(receipt) !== context)
688
+ throw new TypeError('Fresh matching simple restriction predicate required');
689
+ assertAttributeRestrictionPair(context, receipt.attributes);
690
+ }
691
+ /** Evaluate simple-content restriction constraints for the actual target properties and an explicit alternative base.
692
+ * @remarks Reuses the AU derivation owner and scalar content-derivation kernel. No target node, raw property,
693
+ * TYPE/SCOPE lookup or stored base edge is replaced. Whole construction and the in-principle derivation interpretation
694
+ * remain separate duties; failure of an alternative never declares the source schema invalid.
695
+ * @returns An authenticated native predicate, an explicit predicate/unavailability diagnostic, or sticky resource failure.
696
+ */
697
+ export function checkSimpleRestrictionPredicate(context, target, base) {
698
+ assertSemanticContext(context);
699
+ const b = context.budget;
700
+ return b.guard(() => {
701
+ const fail = (rule, details) => {
702
+ b.chargeWork(64 + rule.length + target.length);
703
+ return Object.freeze({ kind: 'not-simple-restriction', rule, component: target, contextId: context.contextId, ...(details ? { details } : {}) });
704
+ };
705
+ b.chargeWork(64 + target.length + base.length);
706
+ const targetNode = context.lookup(target), baseNode = context.lookup(base);
707
+ if (targetNode.kind !== 'found' || targetNode.node.kind !== 'complexType' || baseNode.kind !== 'found' || baseNode.node.kind !== 'complexType')
708
+ return fail('paired-complex-types');
709
+ const content = (id) => context.kind === 'actual' ? deriveActualComplexContent(context, id) : deriveOriginalComplexPropertyContent(context, id);
710
+ const own = content(target), prior = content(base);
711
+ if (own.kind === 'resource-limit')
712
+ return own;
713
+ if (prior.kind === 'resource-limit')
714
+ return prior;
715
+ if (own.kind !== 'checked')
716
+ return fail('paired-target-properties', own);
717
+ if (prior.kind !== 'checked')
718
+ return fail('paired-base-properties', prior);
719
+ if (own.view.content.kind !== 'simple' || prior.view.content.kind !== 'simple')
720
+ return fail('paired-simple-content');
721
+ const attributes = assessAttributeRestrictionPair(context, target, base);
722
+ if (attributes.kind === 'resource-limit')
723
+ return attributes;
724
+ if (attributes.kind !== 'checked-attribute-restriction')
725
+ return fail('paired-attribute-restriction', attributes);
726
+ assertAttributeRestrictionPair(context, attributes);
727
+ const scalar = createSchemaScalarKernel(context).contentDerivation(own.view.content.type, prior.view.content.type, target);
728
+ if (scalar.kind === 'resource-limit')
729
+ return scalar;
730
+ if (scalar.kind !== 'checked')
731
+ return fail('paired-scalar-derivation', scalar);
732
+ if (!scalar.value)
733
+ return fail('derivation-ok-restriction.5.2');
734
+ const typeDependencies = collectSemanticTypeDependencies(context);
735
+ typeDependencies.add(attributes.assessment.typeDependencies);
736
+ typeDependencies.add(scalar.typeDependencies);
737
+ b.chargeWork(128 + attributes.assessment.scalarObligations.length + scalar.obligations.length);
738
+ const result = Object.freeze({ kind: 'checked-simple-restriction-predicate', contextId: context.contextId,
739
+ target, base, attributes, scalar, typeDependencies: typeDependencies.snapshot(),
740
+ scalarObligations: Object.freeze([...attributes.assessment.scalarObligations, ...scalar.obligations]),
741
+ remaining: Object.freeze(['source-and-base-construction', 'alternative-derivation-interpretation']) });
742
+ simpleRestrictionPredicates.set(result, context);
743
+ return result;
744
+ });
745
+ }
@@ -1,4 +1,3 @@
1
1
  /** Schema-only facade; the neutral calculations confer no receipt authority. */
2
2
  export { datatypeValues as schemaDatatypeValues, builtinListItem, builtinParents, integerBounds, builtinPrimitive, whitespaceFor, normalizeWhitespace } from './datatypeValues.js';
3
3
  export type { DecimalOperand, DatatypeOperand as SchemaOperand, DatatypeListTokens as SchemaListTokens } from './datatypeValues.js';
4
- //# sourceMappingURL=schemaDatatypeValues.d.ts.map
@@ -4,4 +4,3 @@ export declare function schemaDecimalLanguages<Owner>(c: SchemaPatternContext<Ow
4
4
  relation: (canonical: string, greater: boolean, owner: Owner) => string | undefined;
5
5
  precision: (name: "totalDigits" | "fractionDigits", bound: string, owner: Owner) => string;
6
6
  };
7
- //# sourceMappingURL=schemaDecimalLanguage.d.ts.map
@@ -1,6 +1,6 @@
1
1
  import type { SemanticTypeDependency } from './semanticTypeReference.js';
2
2
  /** Declaration-local properties only. EDC and containing type validity are separate. */
3
- import type { NodeId } from './canonicalGraph.js';
3
+ import type { ElementNode, AttributeNode, NodeId, ValueConstraint } from './canonicalGraph.js';
4
4
  import type { SemanticContext } from './semanticContext.js';
5
5
  import type { AssessedSchemaOperand, ScalarFailure } from './schemaScalarKernel.js';
6
6
  import type { ResourceLimitFailure } from './semanticBudget.js';
@@ -28,7 +28,12 @@ export type DeclarationValuePropertyResult = DeclarationResult | Readonly<{
28
28
  scalarObligations: readonly ScalarObligation[];
29
29
  typeDependencies: readonly SemanticTypeDependency[];
30
30
  }>;
31
+ /** Map declaration VALUE separately from an attribute use's source default/fixed syntax.
32
+ * @remarks Under 2004 Structures 3.2.2 a local source attribute declaration has no value constraint;
33
+ * the same syntax maps to the attribute use. Global source and explicit raw component values remain declared values.
34
+ * @throws TypeError For a copied or foreign declaration.
35
+ */
36
+ export declare function declarationValueConstraint(context: SemanticContext, node: ElementNode | AttributeNode): ValueConstraint | undefined;
31
37
  /** VALUE properties select actual scalar/fact support; full declaration validity has its own owner. */
32
38
  export declare function checkDeclarationValueProperty(context: SemanticContext, id: NodeId): DeclarationValuePropertyResult;
33
39
  export declare function checkDeclaration(context: SemanticContext, id: NodeId): DeclarationResult;
34
- //# sourceMappingURL=schemaDeclarationPrimitives.d.ts.map
@@ -6,6 +6,23 @@ import { resolveSemanticType, declaredType } from './schemaTypeIdentity.js';
6
6
  import { collectSemanticTypeDependencies } from './semanticTypeDependencies.js';
7
7
  import { readElementIdentityConstraints } from './schemaIdentityConstraints.js';
8
8
  const nameAttribute = (node, name) => node.declaredAttributes.find(a => a.name.namespace === '' && a.name.local === name)?.value;
9
+ /** Map declaration VALUE separately from an attribute use's source default/fixed syntax.
10
+ * @remarks Under 2004 Structures 3.2.2 a local source attribute declaration has no value constraint;
11
+ * the same syntax maps to the attribute use. Global source and explicit raw component values remain declared values.
12
+ * @throws TypeError For a copied or foreign declaration.
13
+ */
14
+ export function declarationValueConstraint(context, node) {
15
+ assertSemanticContext(context);
16
+ context.budget.chargeWork(32);
17
+ const field = node && typeof node === 'object' ? Object.getOwnPropertyDescriptor(node, 'id') : undefined;
18
+ if (!field || !('value' in field) || typeof field.value !== 'string')
19
+ throw new TypeError('Authentic declaration required');
20
+ const found = context.lookup(field.value);
21
+ if (found.kind !== 'found' || found.node !== node)
22
+ throw new TypeError('Authentic declaration required');
23
+ const source = context.originalDeclarationSource(node.id);
24
+ return node.kind === 'attribute' && source?.kind === 'attribute' && source.identity.kind === 'scoped' ? undefined : node.value;
25
+ }
9
26
  /** Shared actual VALUE assessment; selecting a mixed value's STRING is not FULL of its complex owner. */
10
27
  function constraintValue(context, node, reference) {
11
28
  const constraint = node.value;
@@ -162,7 +179,7 @@ export function checkDeclaration(context, id) {
162
179
  typed.add(description.typeDependencies);
163
180
  }
164
181
  let constraint;
165
- if (node.value) {
182
+ if (declarationValueConstraint(context, node)) {
166
183
  let reference = type;
167
184
  if (selected.kind === 'builtin' && selected.name.local === 'anyType')
168
185
  reference = { kind: 'builtin', name: { namespace: XSD_NAMESPACE, local: 'anySimpleType' } };
@@ -52,4 +52,3 @@ export declare function prepareSourceSchemaRequest(input: SchemaInput, options?:
52
52
  }>): SourceSchemaPreparation;
53
53
  /** Checks source document representation only; component grammar/semantics remain owned elsewhere. */
54
54
  export declare function checkSchemaDocumentSyntax(context: SemanticContext): SchemaDocumentResult;
55
- //# sourceMappingURL=schemaDocumentSyntax.d.ts.map
@@ -8,4 +8,3 @@ export declare function schemaDurationLanguages<Owner>(c: SchemaPatternContext<O
8
8
  kind: "private-regular-language";
9
9
  }>;
10
10
  };
11
- //# sourceMappingURL=schemaDurationLanguage.d.ts.map
@@ -0,0 +1,30 @@
1
+ import type { SyntaxElement, SyntaxSource } from '../loader/orderedSyntax.js';
2
+ import type { SourceTypedId, SourceWildcardObligation } from './schemaSourceWildcards.js';
3
+ import type { SemanticBudget, ResourceLimitFailure } from './semanticBudget.js';
4
+ export type SchemaElementInstanceResult = Readonly<{
5
+ kind: 'schema-element-instance';
6
+ scope: 'XSD10-S4S-element-instance-2004';
7
+ ids: readonly SourceTypedId[];
8
+ remaining: readonly SourceWildcardObligation[];
9
+ }> | Readonly<{
10
+ kind: 'value-invalid';
11
+ rule: string;
12
+ message: string;
13
+ source: SyntaxSource;
14
+ }> | Readonly<{
15
+ kind: 'cancelled';
16
+ rule: 'cooperative-cancellation';
17
+ }> | ResourceLimitFailure;
18
+ /** Assess borrowed, already owned XML syntax as the dated global xs:schema element.
19
+ * @remarks Reuses the fixed S4S grammar, scalar and identity owners. It does not compile embedded schemas,
20
+ * acquire dependencies, qualify a WSDL source or issue a mapping/codec/portable receipt.
21
+ * The supplied schema element is the instance validation root. Callers retain responsibility for XML
22
+ * parsing/ownership, any enclosing document identity scope and discharging remaining obligations.
23
+ * @returns Instance clauses only; a well-formed QName can reference an undeclared application type in schema-as-data.
24
+ * @throws TypeError For a non-native cancellation signal. Other caller-check failures propagate unchanged.
25
+ * @see https://www.w3.org/TR/2004/REC-xmlschema-1-20041028/structures.html#element-schema
26
+ */
27
+ export declare function assessSchemaElementInstance(root: SyntaxElement, budget: SemanticBudget, options?: Readonly<{
28
+ signal?: AbortSignal;
29
+ check?: () => void;
30
+ }>): SchemaElementInstanceResult;