@techspokes/typescript-wsdl-client 1.1.4 → 1.1.5

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 (355) hide show
  1. package/README.md +49 -1
  2. package/dist/app/generateApp.d.ts.map +1 -1
  3. package/dist/app/generateApp.js +8 -6
  4. package/dist/cli.js +49 -5
  5. package/dist/client/checkedDirectRuntime.d.ts +59 -0
  6. package/dist/client/checkedDirectRuntime.d.ts.map +1 -0
  7. package/dist/client/checkedDirectRuntime.js +23 -0
  8. package/dist/client/directClientRuntime.d.ts +49 -0
  9. package/dist/client/directClientRuntime.d.ts.map +1 -0
  10. package/dist/client/directClientRuntime.js +112 -0
  11. package/dist/client/directClientVersion.d.ts +4 -0
  12. package/dist/client/directClientVersion.d.ts.map +1 -0
  13. package/dist/client/directClientVersion.js +3 -0
  14. package/dist/client/generateDirectClient.d.ts +14 -0
  15. package/dist/client/generateDirectClient.d.ts.map +1 -0
  16. package/dist/client/generateDirectClient.js +136 -0
  17. package/dist/compiler/buildCanonicalGraph.d.ts +7 -0
  18. package/dist/compiler/buildCanonicalGraph.d.ts.map +1 -0
  19. package/dist/compiler/buildCanonicalGraph.js +381 -0
  20. package/dist/compiler/canonicalGraph.d.ts +198 -0
  21. package/dist/compiler/canonicalGraph.d.ts.map +1 -0
  22. package/dist/compiler/canonicalGraph.js +37 -0
  23. package/dist/compiler/catalogErrors.d.ts +18 -0
  24. package/dist/compiler/catalogErrors.d.ts.map +1 -0
  25. package/dist/compiler/catalogErrors.js +86 -0
  26. package/dist/compiler/catalogProvenance.d.ts +15 -0
  27. package/dist/compiler/catalogProvenance.d.ts.map +1 -0
  28. package/dist/compiler/catalogProvenance.js +229 -0
  29. package/dist/compiler/checkedAssessment.d.ts +91 -0
  30. package/dist/compiler/checkedAssessment.d.ts.map +1 -0
  31. package/dist/compiler/checkedAssessment.js +300 -0
  32. package/dist/compiler/checkedSourcePreparation.d.ts +35 -0
  33. package/dist/compiler/checkedSourcePreparation.d.ts.map +1 -0
  34. package/dist/compiler/checkedSourcePreparation.js +131 -0
  35. package/dist/compiler/complexTypeContent.d.ts +59 -0
  36. package/dist/compiler/complexTypeContent.d.ts.map +1 -0
  37. package/dist/compiler/complexTypeContent.js +558 -0
  38. package/dist/compiler/composeCanonicalGraph.d.ts +69 -0
  39. package/dist/compiler/composeCanonicalGraph.d.ts.map +1 -0
  40. package/dist/compiler/composeCanonicalGraph.js +252 -0
  41. package/dist/compiler/dataOwnership.d.ts +22 -0
  42. package/dist/compiler/dataOwnership.d.ts.map +1 -0
  43. package/dist/compiler/dataOwnership.js +157 -0
  44. package/dist/compiler/datatypeValues.d.ts +47 -0
  45. package/dist/compiler/datatypeValues.d.ts.map +1 -0
  46. package/dist/compiler/datatypeValues.js +275 -0
  47. package/dist/compiler/directCodec.d.ts +59 -0
  48. package/dist/compiler/directCodec.d.ts.map +1 -0
  49. package/dist/compiler/directCodec.js +192 -0
  50. package/dist/compiler/directExecutionPolicy.d.ts +10 -0
  51. package/dist/compiler/directExecutionPolicy.d.ts.map +1 -0
  52. package/dist/compiler/directExecutionPolicy.js +17 -0
  53. package/dist/compiler/directOperation.d.ts +72 -0
  54. package/dist/compiler/directOperation.d.ts.map +1 -0
  55. package/dist/compiler/directOperation.js +282 -0
  56. package/dist/compiler/directSoap.d.ts +42 -0
  57. package/dist/compiler/directSoap.d.ts.map +1 -0
  58. package/dist/compiler/directSoap.js +298 -0
  59. package/dist/compiler/directSoapSource.d.ts +15 -0
  60. package/dist/compiler/directSoapSource.d.ts.map +1 -0
  61. package/dist/compiler/directSoapSource.js +86 -0
  62. package/dist/compiler/directSourceCapsule.d.ts +97 -0
  63. package/dist/compiler/directSourceCapsule.d.ts.map +1 -0
  64. package/dist/compiler/directSourceCapsule.js +305 -0
  65. package/dist/compiler/directStructure.d.ts +51 -0
  66. package/dist/compiler/directStructure.d.ts.map +1 -0
  67. package/dist/compiler/directStructure.js +252 -0
  68. package/dist/compiler/directStructurePlan.d.ts +16 -0
  69. package/dist/compiler/directStructurePlan.d.ts.map +1 -0
  70. package/dist/compiler/directStructurePlan.js +58 -0
  71. package/dist/compiler/directValues.d.ts +69 -0
  72. package/dist/compiler/directValues.d.ts.map +1 -0
  73. package/dist/compiler/directValues.js +282 -0
  74. package/dist/compiler/finiteRe01Verification.d.ts +140 -0
  75. package/dist/compiler/finiteRe01Verification.d.ts.map +1 -0
  76. package/dist/compiler/finiteRe01Verification.js +830 -0
  77. package/dist/compiler/graphTraversal.d.ts +11 -0
  78. package/dist/compiler/graphTraversal.d.ts.map +1 -0
  79. package/dist/compiler/graphTraversal.js +37 -0
  80. package/dist/compiler/hypotheticalScopedIdentity.d.ts +23 -0
  81. package/dist/compiler/hypotheticalScopedIdentity.d.ts.map +1 -0
  82. package/dist/compiler/hypotheticalScopedIdentity.js +81 -0
  83. package/dist/compiler/occurrenceAnalysis.d.ts +65 -0
  84. package/dist/compiler/occurrenceAnalysis.d.ts.map +1 -0
  85. package/dist/compiler/occurrenceAnalysis.js +300 -0
  86. package/dist/compiler/originalSourceMembership.d.ts +6 -0
  87. package/dist/compiler/originalSourceMembership.d.ts.map +1 -0
  88. package/dist/compiler/originalSourceMembership.js +31 -0
  89. package/dist/compiler/particleAttribution.d.ts +17 -0
  90. package/dist/compiler/particleAttribution.d.ts.map +1 -0
  91. package/dist/compiler/particleAttribution.js +474 -0
  92. package/dist/compiler/particleDeclarationConsistency.d.ts +24 -0
  93. package/dist/compiler/particleDeclarationConsistency.d.ts.map +1 -0
  94. package/dist/compiler/particleDeclarationConsistency.js +197 -0
  95. package/dist/compiler/particleExtension.d.ts +22 -0
  96. package/dist/compiler/particleExtension.d.ts.map +1 -0
  97. package/dist/compiler/particleExtension.js +119 -0
  98. package/dist/compiler/particleLocalAssessment.d.ts +20 -0
  99. package/dist/compiler/particleLocalAssessment.d.ts.map +1 -0
  100. package/dist/compiler/particleLocalAssessment.js +92 -0
  101. package/dist/compiler/particleRestriction.d.ts +24 -0
  102. package/dist/compiler/particleRestriction.d.ts.map +1 -0
  103. package/dist/compiler/particleRestriction.js +489 -0
  104. package/dist/compiler/particleSemanticView.d.ts +50 -0
  105. package/dist/compiler/particleSemanticView.d.ts.map +1 -0
  106. package/dist/compiler/particleSemanticView.js +297 -0
  107. package/dist/compiler/particleWildcardRelation.d.ts +88 -0
  108. package/dist/compiler/particleWildcardRelation.d.ts.map +1 -0
  109. package/dist/compiler/particleWildcardRelation.js +143 -0
  110. package/dist/compiler/re01CandidateCorrespondence.d.ts +64 -0
  111. package/dist/compiler/re01CandidateCorrespondence.d.ts.map +1 -0
  112. package/dist/compiler/re01CandidateCorrespondence.js +572 -0
  113. package/dist/compiler/re01TypeProperties.d.ts +71 -0
  114. package/dist/compiler/re01TypeProperties.d.ts.map +1 -0
  115. package/dist/compiler/re01TypeProperties.js +120 -0
  116. package/dist/compiler/re01TypePropertyValidation.d.ts +23 -0
  117. package/dist/compiler/re01TypePropertyValidation.d.ts.map +1 -0
  118. package/dist/compiler/re01TypePropertyValidation.js +161 -0
  119. package/dist/compiler/resolveCanonicalGraph.d.ts +38 -0
  120. package/dist/compiler/resolveCanonicalGraph.d.ts.map +1 -0
  121. package/dist/compiler/resolveCanonicalGraph.js +170 -0
  122. package/dist/compiler/scalarSchemaAssessment.d.ts +425 -0
  123. package/dist/compiler/scalarSchemaAssessment.d.ts.map +1 -0
  124. package/dist/compiler/scalarSchemaAssessment.js +5198 -0
  125. package/dist/compiler/schemaAttributeGroupProperties.d.ts +17 -0
  126. package/dist/compiler/schemaAttributeGroupProperties.d.ts.map +1 -0
  127. package/dist/compiler/schemaAttributeGroupProperties.js +53 -0
  128. package/dist/compiler/schemaAttributeProperties.d.ts +10 -0
  129. package/dist/compiler/schemaAttributeProperties.d.ts.map +1 -0
  130. package/dist/compiler/schemaAttributeProperties.js +11 -0
  131. package/dist/compiler/schemaAttributeUses.d.ts +90 -0
  132. package/dist/compiler/schemaAttributeUses.d.ts.map +1 -0
  133. package/dist/compiler/schemaAttributeUses.js +725 -0
  134. package/dist/compiler/schemaBinaryWordReconstruction.d.ts +10 -0
  135. package/dist/compiler/schemaBinaryWordReconstruction.d.ts.map +1 -0
  136. package/dist/compiler/schemaBinaryWordReconstruction.js +33 -0
  137. package/dist/compiler/schemaBuiltinFacets.d.ts +14 -0
  138. package/dist/compiler/schemaBuiltinFacets.d.ts.map +1 -0
  139. package/dist/compiler/schemaBuiltinFacets.js +51 -0
  140. package/dist/compiler/schemaCalendarImages.d.ts +8 -0
  141. package/dist/compiler/schemaCalendarImages.d.ts.map +1 -0
  142. package/dist/compiler/schemaCalendarImages.js +204 -0
  143. package/dist/compiler/schemaCalendarLanguage.d.ts +11 -0
  144. package/dist/compiler/schemaCalendarLanguage.d.ts.map +1 -0
  145. package/dist/compiler/schemaCalendarLanguage.js +227 -0
  146. package/dist/compiler/schemaComponentEquality.d.ts +28 -0
  147. package/dist/compiler/schemaComponentEquality.d.ts.map +1 -0
  148. package/dist/compiler/schemaComponentEquality.js +446 -0
  149. package/dist/compiler/schemaConstructionAssessment.d.ts +46 -0
  150. package/dist/compiler/schemaConstructionAssessment.d.ts.map +1 -0
  151. package/dist/compiler/schemaConstructionAssessment.js +663 -0
  152. package/dist/compiler/schemaDatatypeValues.d.ts +4 -0
  153. package/dist/compiler/schemaDatatypeValues.d.ts.map +1 -0
  154. package/dist/compiler/schemaDatatypeValues.js +2 -0
  155. package/dist/compiler/schemaDecimalLanguage.d.ts +7 -0
  156. package/dist/compiler/schemaDecimalLanguage.d.ts.map +1 -0
  157. package/dist/compiler/schemaDecimalLanguage.js +102 -0
  158. package/dist/compiler/schemaDeclarationPrimitives.d.ts +34 -0
  159. package/dist/compiler/schemaDeclarationPrimitives.d.ts.map +1 -0
  160. package/dist/compiler/schemaDeclarationPrimitives.js +194 -0
  161. package/dist/compiler/schemaDocumentSyntax.d.ts +55 -0
  162. package/dist/compiler/schemaDocumentSyntax.d.ts.map +1 -0
  163. package/dist/compiler/schemaDocumentSyntax.js +294 -0
  164. package/dist/compiler/schemaDurationLanguage.d.ts +11 -0
  165. package/dist/compiler/schemaDurationLanguage.d.ts.map +1 -0
  166. package/dist/compiler/schemaDurationLanguage.js +170 -0
  167. package/dist/compiler/schemaElementProperties.d.ts +16 -0
  168. package/dist/compiler/schemaElementProperties.d.ts.map +1 -0
  169. package/dist/compiler/schemaElementProperties.js +23 -0
  170. package/dist/compiler/schemaEndpointWordCapacity.d.ts +36 -0
  171. package/dist/compiler/schemaEndpointWordCapacity.d.ts.map +1 -0
  172. package/dist/compiler/schemaEndpointWordCapacity.js +39 -0
  173. package/dist/compiler/schemaExactCalendar.d.ts +73 -0
  174. package/dist/compiler/schemaExactCalendar.d.ts.map +1 -0
  175. package/dist/compiler/schemaExactCalendar.js +264 -0
  176. package/dist/compiler/schemaFacetAnnotation.d.ts +32 -0
  177. package/dist/compiler/schemaFacetAnnotation.d.ts.map +1 -0
  178. package/dist/compiler/schemaFacetAnnotation.js +199 -0
  179. package/dist/compiler/schemaGeneratedScalarShape.d.ts +35 -0
  180. package/dist/compiler/schemaGeneratedScalarShape.d.ts.map +1 -0
  181. package/dist/compiler/schemaGeneratedScalarShape.js +176 -0
  182. package/dist/compiler/schemaIdentityConstraints.d.ts +73 -0
  183. package/dist/compiler/schemaIdentityConstraints.d.ts.map +1 -0
  184. package/dist/compiler/schemaIdentityConstraints.js +362 -0
  185. package/dist/compiler/schemaIeeeLanguage.d.ts +43 -0
  186. package/dist/compiler/schemaIeeeLanguage.d.ts.map +1 -0
  187. package/dist/compiler/schemaIeeeLanguage.js +759 -0
  188. package/dist/compiler/schemaIntegerImages.d.ts +11 -0
  189. package/dist/compiler/schemaIntegerImages.d.ts.map +1 -0
  190. package/dist/compiler/schemaIntegerImages.js +113 -0
  191. package/dist/compiler/schemaLexicalPredicates.d.ts +29 -0
  192. package/dist/compiler/schemaLexicalPredicates.d.ts.map +1 -0
  193. package/dist/compiler/schemaLexicalPredicates.js +63 -0
  194. package/dist/compiler/schemaNotationProperties.d.ts +32 -0
  195. package/dist/compiler/schemaNotationProperties.d.ts.map +1 -0
  196. package/dist/compiler/schemaNotationProperties.js +84 -0
  197. package/dist/compiler/schemaNumericImageConditions.d.ts +24 -0
  198. package/dist/compiler/schemaNumericImageConditions.d.ts.map +1 -0
  199. package/dist/compiler/schemaNumericImageConditions.js +66 -0
  200. package/dist/compiler/schemaParticleWildcardProperties.d.ts +20 -0
  201. package/dist/compiler/schemaParticleWildcardProperties.d.ts.map +1 -0
  202. package/dist/compiler/schemaParticleWildcardProperties.js +43 -0
  203. package/dist/compiler/schemaPattern.d.ts +1062 -0
  204. package/dist/compiler/schemaPattern.d.ts.map +1 -0
  205. package/dist/compiler/schemaPattern.js +581 -0
  206. package/dist/compiler/schemaRegularLanguage.d.ts +67 -0
  207. package/dist/compiler/schemaRegularLanguage.d.ts.map +1 -0
  208. package/dist/compiler/schemaRegularLanguage.js +1166 -0
  209. package/dist/compiler/schemaScalarContext.d.ts +81 -0
  210. package/dist/compiler/schemaScalarContext.d.ts.map +1 -0
  211. package/dist/compiler/schemaScalarContext.js +78 -0
  212. package/dist/compiler/schemaScalarKernel.d.ts +182 -0
  213. package/dist/compiler/schemaScalarKernel.d.ts.map +1 -0
  214. package/dist/compiler/schemaScalarKernel.js +391 -0
  215. package/dist/compiler/schemaScalarWitnesses.d.ts +6 -0
  216. package/dist/compiler/schemaScalarWitnesses.d.ts.map +1 -0
  217. package/dist/compiler/schemaScalarWitnesses.js +118 -0
  218. package/dist/compiler/schemaSimpleTypeProperties.d.ts +95 -0
  219. package/dist/compiler/schemaSimpleTypeProperties.d.ts.map +1 -0
  220. package/dist/compiler/schemaSimpleTypeProperties.js +103 -0
  221. package/dist/compiler/schemaSourceGrammar.d.ts +27 -0
  222. package/dist/compiler/schemaSourceGrammar.d.ts.map +1 -0
  223. package/dist/compiler/schemaSourceGrammar.js +290 -0
  224. package/dist/compiler/schemaSourceLexical.d.ts +4 -0
  225. package/dist/compiler/schemaSourceLexical.d.ts.map +1 -0
  226. package/dist/compiler/schemaSourceLexical.js +12 -0
  227. package/dist/compiler/schemaSourceValues.d.ts +51 -0
  228. package/dist/compiler/schemaSourceValues.d.ts.map +1 -0
  229. package/dist/compiler/schemaSourceValues.js +225 -0
  230. package/dist/compiler/schemaSourceWildcards.d.ts +28 -0
  231. package/dist/compiler/schemaSourceWildcards.d.ts.map +1 -0
  232. package/dist/compiler/schemaSourceWildcards.js +247 -0
  233. package/dist/compiler/schemaSymbolicSequences.d.ts +16 -0
  234. package/dist/compiler/schemaSymbolicSequences.d.ts.map +1 -0
  235. package/dist/compiler/schemaSymbolicSequences.js +99 -0
  236. package/dist/compiler/schemaSymbolicValueSets.d.ts +32 -0
  237. package/dist/compiler/schemaSymbolicValueSets.d.ts.map +1 -0
  238. package/dist/compiler/schemaSymbolicValueSets.js +149 -0
  239. package/dist/compiler/schemaSyntaxAssessment.d.ts +25 -0
  240. package/dist/compiler/schemaSyntaxAssessment.d.ts.map +1 -0
  241. package/dist/compiler/schemaSyntaxAssessment.js +361 -0
  242. package/dist/compiler/schemaTemporalAliases.d.ts +6 -0
  243. package/dist/compiler/schemaTemporalAliases.d.ts.map +1 -0
  244. package/dist/compiler/schemaTemporalAliases.js +195 -0
  245. package/dist/compiler/schemaTokenImages.d.ts +9 -0
  246. package/dist/compiler/schemaTokenImages.d.ts.map +1 -0
  247. package/dist/compiler/schemaTokenImages.js +142 -0
  248. package/dist/compiler/schemaTypeIdentity.d.ts +39 -0
  249. package/dist/compiler/schemaTypeIdentity.d.ts.map +1 -0
  250. package/dist/compiler/schemaTypeIdentity.js +78 -0
  251. package/dist/compiler/schemaTypeRelations.d.ts +38 -0
  252. package/dist/compiler/schemaTypeRelations.d.ts.map +1 -0
  253. package/dist/compiler/schemaTypeRelations.js +576 -0
  254. package/dist/compiler/schemaUri.d.ts +13 -0
  255. package/dist/compiler/schemaUri.d.ts.map +1 -0
  256. package/dist/compiler/schemaUri.js +103 -0
  257. package/dist/compiler/schemaValueContext.d.ts +26 -0
  258. package/dist/compiler/schemaValueContext.d.ts.map +1 -0
  259. package/dist/compiler/schemaValueContext.js +1 -0
  260. package/dist/compiler/schemaValueImages.d.ts +10 -0
  261. package/dist/compiler/schemaValueImages.d.ts.map +1 -0
  262. package/dist/compiler/schemaValueImages.js +142 -0
  263. package/dist/compiler/schemaValueSequences.d.ts +15 -0
  264. package/dist/compiler/schemaValueSequences.d.ts.map +1 -0
  265. package/dist/compiler/schemaValueSequences.js +19 -0
  266. package/dist/compiler/semanticBudget.d.ts +50 -0
  267. package/dist/compiler/semanticBudget.d.ts.map +1 -0
  268. package/dist/compiler/semanticBudget.js +178 -0
  269. package/dist/compiler/semanticCatalog.d.ts +122 -0
  270. package/dist/compiler/semanticCatalog.d.ts.map +1 -0
  271. package/dist/compiler/semanticCatalog.js +160 -0
  272. package/dist/compiler/semanticContext.d.ts +172 -0
  273. package/dist/compiler/semanticContext.d.ts.map +1 -0
  274. package/dist/compiler/semanticContext.js +1168 -0
  275. package/dist/compiler/semanticTypeDependencies.d.ts +8 -0
  276. package/dist/compiler/semanticTypeDependencies.d.ts.map +1 -0
  277. package/dist/compiler/semanticTypeDependencies.js +64 -0
  278. package/dist/compiler/semanticTypeReference.d.ts +24 -0
  279. package/dist/compiler/semanticTypeReference.d.ts.map +1 -0
  280. package/dist/compiler/semanticTypeReference.js +36 -0
  281. package/dist/compiler/shapeResolver.d.ts +1 -0
  282. package/dist/compiler/shapeResolver.d.ts.map +1 -1
  283. package/dist/compiler/shapeResolver.js +7 -9
  284. package/dist/compiler/sourceSchemaBinding.d.ts +26 -0
  285. package/dist/compiler/sourceSchemaBinding.d.ts.map +1 -0
  286. package/dist/compiler/sourceSchemaBinding.js +39 -0
  287. package/dist/compiler/structuralCompanions.d.ts +16 -0
  288. package/dist/compiler/structuralCompanions.d.ts.map +1 -0
  289. package/dist/compiler/structuralCompanions.js +232 -0
  290. package/dist/compiler/validateSemanticGraph.d.ts +5 -0
  291. package/dist/compiler/validateSemanticGraph.d.ts.map +1 -0
  292. package/dist/compiler/validateSemanticGraph.js +376 -0
  293. package/dist/compiler/wildcardAlgebra.d.ts +26 -0
  294. package/dist/compiler/wildcardAlgebra.d.ts.map +1 -0
  295. package/dist/compiler/wildcardAlgebra.js +155 -0
  296. package/dist/gateway/generateGateway.d.ts.map +1 -1
  297. package/dist/gateway/generateGateway.js +2 -2
  298. package/dist/index.d.ts +3 -0
  299. package/dist/index.d.ts.map +1 -1
  300. package/dist/index.js +2 -0
  301. package/dist/loader/orderedSyntax.d.ts +77 -0
  302. package/dist/loader/orderedSyntax.d.ts.map +1 -0
  303. package/dist/loader/orderedSyntax.js +202 -0
  304. package/dist/loader/resolutionDepth.d.ts +7 -0
  305. package/dist/loader/resolutionDepth.d.ts.map +1 -0
  306. package/dist/loader/resolutionDepth.js +65 -0
  307. package/dist/loader/schemaInput.d.ts +53 -0
  308. package/dist/loader/schemaInput.d.ts.map +1 -0
  309. package/dist/loader/schemaInput.js +212 -0
  310. package/dist/loader/schemaResources.d.ts +59 -0
  311. package/dist/loader/schemaResources.d.ts.map +1 -0
  312. package/dist/loader/schemaResources.js +292 -0
  313. package/dist/openapi/generateOpenAPI.d.ts.map +1 -1
  314. package/dist/openapi/generateOpenAPI.js +2 -2
  315. package/dist/test/generateTests.d.ts.map +1 -1
  316. package/dist/test/generateTests.js +2 -2
  317. package/dist/util/xmlWhitespace.d.ts +3 -0
  318. package/dist/util/xmlWhitespace.d.ts.map +1 -0
  319. package/dist/util/xmlWhitespace.js +4 -0
  320. package/docs/README.md +14 -1
  321. package/docs/architecture.md +9 -0
  322. package/docs/cli-reference.md +21 -1
  323. package/docs/content-model-analysis.md +92 -0
  324. package/docs/content-model-baseline.md +121 -0
  325. package/docs/content-model-catalog.md +116 -0
  326. package/docs/content-model-companions.md +90 -0
  327. package/docs/content-model-composition.md +103 -0
  328. package/docs/content-model-decisions.md +79 -0
  329. package/docs/content-model-gateway-feasibility.md +169 -0
  330. package/docs/content-model-graph.md +121 -0
  331. package/docs/content-model-loading.md +163 -0
  332. package/docs/content-model-matching.md +85 -0
  333. package/docs/content-model-readiness.md +144 -0
  334. package/docs/content-model-resolution.md +81 -0
  335. package/docs/content-model-s02-handoff.md +98 -0
  336. package/docs/content-model-s06-au-01.md +425 -0
  337. package/docs/content-model-s06-dt-01.md +386 -0
  338. package/docs/content-model-s06-pw-01.md +350 -0
  339. package/docs/content-model-s06-re-01-resolver-implementation.md +869 -0
  340. package/docs/content-model-s06-re-01-resolver.md +513 -0
  341. package/docs/content-model-s06-re-01-scalar-witnesses.md +1423 -0
  342. package/docs/content-model-s06-re-01-support-reconstruction.md +6337 -0
  343. package/docs/content-model-s06-re-01.md +7477 -0
  344. package/docs/content-model-s06-research-handoff.md +909 -0
  345. package/docs/content-model-shipped-fix.md +83 -0
  346. package/docs/content-model-soap-feasibility.md +165 -0
  347. package/docs/decisions/002-streamable-responses.md +2 -0
  348. package/docs/decisions/003-content-model-contracts.md +280 -0
  349. package/docs/direct-values.md +311 -0
  350. package/docs/reference-validation.md +243 -0
  351. package/docs/releases/v1.1.5.md +38 -0
  352. package/docs/roadmap/README.md +2 -2
  353. package/docs/supported-patterns.md +13 -5
  354. package/package.json +26 -13
  355. package/src/generation/preambles/direct-client/typescript.preamble +3 -0
@@ -0,0 +1,446 @@
1
+ import { assertSemanticContext } from './semanticContext.js';
2
+ import { createSchemaScalarKernel } from './schemaScalarKernel.js';
3
+ import { declarationMethods, RelationProblem } from './schemaTypeRelations.js';
4
+ import { checkDeclarationValueProperty } from './schemaDeclarationPrimitives.js';
5
+ import { readOriginalAttributeProperties, assessSourceAttributeUses } from './schemaAttributeUses.js';
6
+ import { deriveActualComplexContent, deriveOriginalComplexPropertyContent, deriveModelGroupContent } from './complexTypeContent.js';
7
+ import { prepareSemanticParticleView } from './particleSemanticView.js';
8
+ import { XSD_NAMESPACE } from '../loader/orderedSyntax.js';
9
+ import { declaredType, resolveSemanticType } from './schemaTypeIdentity.js';
10
+ import { collectSemanticTypeDependencies } from './semanticTypeDependencies.js';
11
+ import { readElementIdentityConstraints, collectIdentityConstraintDependencies } from './schemaIdentityConstraints.js';
12
+ class Incomplete extends Error {
13
+ result;
14
+ constructor(result) {
15
+ super(result.kind);
16
+ this.result = result;
17
+ }
18
+ }
19
+ export function compareComponentProperties(context, a, b) {
20
+ assertSemanticContext(context);
21
+ const budget = context.budget, charge = (n = 1) => budget.chargeWork(n);
22
+ return budget.guard(() => {
23
+ charge(3);
24
+ for (const node of [a, b]) {
25
+ charge(46);
26
+ const field = node && typeof node === 'object' ? Object.getOwnPropertyDescriptor(node, 'id') : undefined;
27
+ if (!field || !('value' in field) || typeof field.value !== 'string')
28
+ throw new TypeError('Unauthenticated or foreign component equality operand');
29
+ const found = context.lookup(field.value);
30
+ if (found.kind !== 'found' || found.node !== node)
31
+ throw new TypeError('Unauthenticated or foreign component equality operand');
32
+ }
33
+ const scalar = createSchemaScalarKernel(context);
34
+ charge(12);
35
+ const dependencies = new Set(), obligations = new Set(['component-validity']), scalarObligations = [];
36
+ const typeDependencies = collectSemanticTypeDependencies(context);
37
+ const identityConstraintDependencies = collectIdentityConstraintDependencies(context);
38
+ const remember = (required) => {
39
+ for (const item of required) {
40
+ charge(4 + scalarObligations.length);
41
+ if (!scalarObligations.some(prior => prior.rule === item.rule && prior.component === item.component && (prior.contextId ?? context.contextId) === (item.contextId ?? context.contextId)))
42
+ scalarObligations.push(item);
43
+ }
44
+ };
45
+ const read = (node) => { charge(2 + node.id.length); dependencies.add(node.id); };
46
+ const unresolved = (node, rule, message) => {
47
+ charge(12 + node.length + rule.length + message.length);
48
+ throw new Incomplete(Object.freeze({ kind: 'unresolved', component: node, rule, message }));
49
+ };
50
+ const unwrap = (result) => {
51
+ if (result.kind !== 'checked')
52
+ throw new Incomplete(result);
53
+ typeDependencies.add(result.typeDependencies);
54
+ remember(result.obligations);
55
+ return result.value;
56
+ };
57
+ const get = (id) => {
58
+ const selected = context.lookup(id);
59
+ if (selected.kind !== 'found')
60
+ return unresolved(id, 'component-property-reference', 'Required component property is unavailable');
61
+ read(selected.node);
62
+ return selected.node;
63
+ };
64
+ const textEqual = (x, y) => budget.compareText(x, y) === 0;
65
+ const methods = (x, y, property) => {
66
+ const left = declarationMethods(context, x, property), right = declarationMethods(context, y, property);
67
+ charge(2 + left.length * (right.length + 1) + right.length * (left.length + 1));
68
+ return left.every(value => right.includes(value)) && right.every(value => left.includes(value));
69
+ };
70
+ const enqueue = (state, task) => { charge(6); state.tasks.push(task); };
71
+ const reference = (state, x, y) => {
72
+ const left = context.resolve(x), right = context.resolve(y);
73
+ if (left.kind !== 'found' && left.kind !== 'builtin' || right.kind !== 'found' && right.kind !== 'builtin')
74
+ return unresolved(a.id, 'component-property-reference', 'Referenced type or declaration is unavailable');
75
+ if (left.kind === 'builtin' || right.kind === 'builtin')
76
+ return left.kind === 'builtin' && right.kind === 'builtin'
77
+ && textEqual(left.name.namespace, right.name.namespace) && textEqual(left.name.local, right.name.local);
78
+ enqueue(state, { kind: 'node', a: left.node, b: right.node });
79
+ return true;
80
+ };
81
+ const typeIdentity = (selector) => {
82
+ const selected = resolveSemanticType(context, selector);
83
+ if (selected.kind !== 'component' && selected.kind !== 'builtin' && selected.kind !== 'original-generated')
84
+ return unresolved(a.id, 'component-property-reference', 'Referenced semantic type is unavailable');
85
+ if (selected.kind === 'component')
86
+ read(selected.node);
87
+ return selected;
88
+ };
89
+ const typeOperand = (selector) => {
90
+ const selected = typeIdentity(selector);
91
+ charge(3);
92
+ typeDependencies.add([{ contextId: context.contextId, type: selected.identity }]);
93
+ return selected;
94
+ };
95
+ const typeReference = (state, x, y, owner) => {
96
+ const left = typeIdentity(x), right = typeIdentity(y);
97
+ // Complex references select properties; full validity belongs to construction.
98
+ if (left.kind === 'component' && right.kind === 'component' && left.node === right.node && left.node.kind === 'complexType')
99
+ return true;
100
+ if (left.kind === 'component' && left.node.kind === 'complexType' || right.kind === 'component' && right.node.kind === 'complexType') {
101
+ if (left.kind !== 'component' || right.kind !== 'component' || left.node.kind !== 'complexType' || right.node.kind !== 'complexType')
102
+ return false;
103
+ enqueue(state, { kind: 'node', a: left.node, b: right.node });
104
+ return true;
105
+ }
106
+ charge(6);
107
+ typeDependencies.add([{ contextId: context.contextId, type: left.identity }, { contextId: context.contextId, type: right.identity }]);
108
+ if (left.kind === 'builtin' && right.kind === 'builtin')
109
+ return textEqual(left.name.namespace, right.name.namespace) && textEqual(left.name.local, right.name.local);
110
+ if (left.kind === 'builtin' && left.name.local === 'anyType' || right.kind === 'builtin' && right.name.local === 'anyType')
111
+ return false;
112
+ enqueue(state, { kind: 'scalar', a: x, b: y, owner });
113
+ return true;
114
+ };
115
+ const scope = (node) => {
116
+ if (node.identity.kind === 'global')
117
+ return 'global';
118
+ charge(2);
119
+ const seen = new Set();
120
+ let current = node;
121
+ while (current.identity.kind === 'scoped') {
122
+ charge(4);
123
+ if (seen.has(current.id))
124
+ return unresolved(node.id, 'component-property-scope', 'Scope containment has a cycle');
125
+ seen.add(current.id);
126
+ current = get(current.identity.owner);
127
+ if (current.kind === 'complexType')
128
+ return current;
129
+ if (current.kind === 'group' || current.kind === 'attributeGroup')
130
+ return undefined;
131
+ }
132
+ return undefined;
133
+ };
134
+ const namespace = (node) => {
135
+ if (node.identity.kind === 'global')
136
+ return node.identity.name.namespace;
137
+ const raw = context.rawTypeProperties(node.id) ?? context.rawSimpleTypeProperties(node.id);
138
+ if (raw?.targetNamespace !== undefined)
139
+ return raw.targetNamespace;
140
+ const original = context.sourceNode(node.id);
141
+ if (original)
142
+ return original.context.effectiveNamespace;
143
+ return unresolved(node.id, 'component-type-target-namespace', 'Anonymous helper requires an explicit target namespace property');
144
+ };
145
+ const wildcard = (x, y) => {
146
+ if (!x || !y)
147
+ return x === y;
148
+ if (x.processContents !== y.processContents || x.namespace.kind !== y.namespace.kind)
149
+ return false;
150
+ const left = budget.sorted(x.namespace.namespaces, budget.compareText), right = budget.sorted(y.namespace.namespaces, budget.compareText);
151
+ charge(left.length + right.length + 1);
152
+ return left.length === right.length && left.every((value, index) => textEqual(value, right[index]));
153
+ };
154
+ const values = (x, y) => {
155
+ if (x.value?.kind !== y.value?.kind)
156
+ return false;
157
+ if (!x.value || !y.value)
158
+ return true;
159
+ const left = checkDeclarationValueProperty(context, x.id), right = checkDeclarationValueProperty(context, y.id);
160
+ if (left.kind !== 'checked')
161
+ throw new Incomplete(left);
162
+ if (right.kind !== 'checked')
163
+ throw new Incomplete(right);
164
+ typeDependencies.add(left.typeDependencies);
165
+ typeDependencies.add(right.typeDependencies);
166
+ remember(left.scalarObligations);
167
+ remember(right.scalarObligations);
168
+ for (const receipt of [left, right])
169
+ for (const required of receipt.obligations) {
170
+ charge();
171
+ if (required !== 'declared-type-component-validity')
172
+ obligations.add(required);
173
+ }
174
+ if (!left.constraint || !right.constraint)
175
+ return unresolved(x.id, 'component-value-property', 'Typed declaration constraint is unavailable');
176
+ return unwrap(scalar.equivalent(left.constraint.type, left.constraint.lexical, right.constraint.type, right.constraint.lexical, x.id));
177
+ };
178
+ const pair = (pairs, x, y) => {
179
+ charge(6 + x.length + y.length);
180
+ let row = pairs.get(x);
181
+ if (row?.has(y))
182
+ return 'seen';
183
+ if (!row) {
184
+ charge(2);
185
+ row = new Set();
186
+ pairs.set(x, row);
187
+ }
188
+ row.add(y);
189
+ return 'new';
190
+ };
191
+ const scalarPair = (state, x, y, owner) => {
192
+ charge(3);
193
+ typeOperand(x);
194
+ typeOperand(y);
195
+ const left = unwrap(scalar.contentProperties(x, owner)), right = unwrap(scalar.contentProperties(y, owner));
196
+ // GSC1 identities and ordinary scalar identities share one property owner.
197
+ // Closing this separate pair recurrence proves property equality only.
198
+ if (textEqual(left.definition, right.definition) || pair(state.scalarPairs, left.definition, right.definition) === 'seen')
199
+ return true;
200
+ if (!!left.name !== !!right.name || left.name && right.name && (!textEqual(left.name.namespace, right.name.namespace) || !textEqual(left.name.local, right.name.local)))
201
+ return false;
202
+ if (!textEqual(left.targetNamespace, right.targetNamespace) || left.variety !== right.variety || left.primitive !== right.primitive)
203
+ return false;
204
+ charge(2 + left.final.length * (right.final.length + 1) + right.final.length * (left.final.length + 1));
205
+ if (!left.final.every(value => right.final.includes(value)) || !right.final.every(value => left.final.includes(value)))
206
+ return false;
207
+ // Annotation is excluded by cos-particle-extend. Equal complete base,
208
+ // variety constituents and facet properties determine equal fundamental
209
+ // properties; no unevaluated fundamental value is invented here.
210
+ if (!unwrap(scalar.facetPropertiesEquivalent(x, y, owner)))
211
+ return false;
212
+ if (!!left.base !== !!right.base || !!left.item !== !!right.item || (left.members?.length ?? 0) !== (right.members?.length ?? 0))
213
+ return false;
214
+ if (left.base && right.base)
215
+ enqueue(state, { kind: 'scalar', a: left.base, b: right.base, owner });
216
+ if (left.item && right.item)
217
+ enqueue(state, { kind: 'scalar', a: left.item, b: right.item, owner });
218
+ for (let index = 0; index < (left.members?.length ?? 0); index++) {
219
+ charge();
220
+ enqueue(state, { kind: 'scalar', a: left.members[index], b: right.members[index], owner });
221
+ }
222
+ return true;
223
+ };
224
+ const content = (node) => {
225
+ const mapped = context.kind === 'actual' ? deriveActualComplexContent(context, node.id) : deriveOriginalComplexPropertyContent(context, node.id);
226
+ if (mapped.kind !== 'checked')
227
+ throw new Incomplete(mapped);
228
+ return mapped.view;
229
+ };
230
+ const particles = (state, x, y) => {
231
+ if (x.content.kind !== y.content.kind)
232
+ return false;
233
+ if (x.content.kind === 'empty')
234
+ return true;
235
+ if (x.content.kind === 'simple' && y.content.kind === 'simple') {
236
+ charge(6);
237
+ // Raw content selects its scalar property; actual projections can be diagnostic.
238
+ const leftOperand = context.kind === 'candidate' ? x.content.type : { kind: 'local', target: x.type };
239
+ const rightOperand = context.kind === 'candidate' ? y.content.type : { kind: 'local', target: y.type };
240
+ enqueue(state, { kind: 'scalar', a: leftOperand, b: rightOperand, owner: x.type });
241
+ return true;
242
+ }
243
+ if (!('particle' in x.content) || !('particle' in y.content))
244
+ return unresolved(x.type, 'component-content-properties', 'Opaque builtin content has no complete component property view');
245
+ const left = prepareSemanticParticleView(context, x, 'declared'), right = prepareSemanticParticleView(context, y, 'declared');
246
+ if (left.kind !== 'checked')
247
+ throw new Incomplete(left);
248
+ if (right.kind !== 'checked')
249
+ throw new Incomplete(right);
250
+ typeDependencies.add(left.view.typeDependencies);
251
+ typeDependencies.add(right.view.typeDependencies);
252
+ enqueue(state, { kind: 'particle', a: left.view.root, b: right.view.root });
253
+ return true;
254
+ };
255
+ const attributes = (node) => {
256
+ const result = context.kind === 'actual' ? assessSourceAttributeUses(context, node.id) : readOriginalAttributeProperties(context, node.id);
257
+ if (result.kind !== 'checked')
258
+ throw new Incomplete(result);
259
+ typeDependencies.add(result.typeDependencies);
260
+ remember(result.scalarObligations);
261
+ for (const item of result.value.schemaOperands) {
262
+ read(item.source);
263
+ read(item.declaration);
264
+ }
265
+ return result.value;
266
+ };
267
+ const nodePair = (state, x, y) => {
268
+ read(x);
269
+ read(y);
270
+ if (pair(state.pairs, x.id, y.id) === 'seen' || x === y)
271
+ return true;
272
+ if (x.kind !== y.kind)
273
+ return false;
274
+ if (x.identity.kind === 'global' || y.identity.kind === 'global') {
275
+ if (x.identity.kind !== 'global' || y.identity.kind !== 'global')
276
+ return false;
277
+ if (x.identity.role !== y.identity.role || !textEqual(x.identity.name.namespace, y.identity.name.namespace) || !textEqual(x.identity.name.local, y.identity.name.local))
278
+ return false;
279
+ }
280
+ if ((x.kind === 'element' || x.kind === 'attribute') && (y.kind === 'element' || y.kind === 'attribute')) {
281
+ if (!textEqual(x.name.namespace, y.name.namespace) || !textEqual(x.name.local, y.name.local))
282
+ return false;
283
+ const left = scope(x), right = scope(y);
284
+ if (typeof left === 'object' && typeof right === 'object')
285
+ enqueue(state, { kind: 'node', a: left, b: right });
286
+ else if (left !== right)
287
+ return false;
288
+ if (!typeReference(state, declaredType(context, x), declaredType(context, y), x.id) || !values(x, y))
289
+ return false;
290
+ if (x.kind === 'element' && y.kind === 'element') {
291
+ if (x.abstract !== y.abstract || x.nillable !== y.nillable || !methods(x, y, 'final') || !methods(x, y, 'block'))
292
+ return false;
293
+ if (!!x.substitutionGroup !== !!y.substitutionGroup)
294
+ return false;
295
+ if (x.substitutionGroup && y.substitutionGroup && !reference(state, x.substitutionGroup, y.substitutionGroup))
296
+ return false;
297
+ const leftIC = readElementIdentityConstraints(context, x.id), rightIC = readElementIdentityConstraints(context, y.id);
298
+ if (leftIC.kind !== 'checked')
299
+ throw new Incomplete(leftIC);
300
+ if (rightIC.kind !== 'checked')
301
+ throw new Incomplete(rightIC);
302
+ identityConstraintDependencies.add(leftIC.identityConstraintDependencies);
303
+ identityConstraintDependencies.add(rightIC.identityConstraintDependencies);
304
+ charge(2 + leftIC.value.length * (rightIC.value.length + 1));
305
+ if (leftIC.value.length !== rightIC.value.length || !leftIC.value.every(id => rightIC.value.includes(id)))
306
+ return false;
307
+ }
308
+ return true;
309
+ }
310
+ if (x.kind === 'simpleType' && y.kind === 'simpleType') {
311
+ charge(6);
312
+ enqueue(state, { kind: 'scalar', a: { kind: 'local', target: x.id }, b: { kind: 'local', target: y.id }, owner: x.id });
313
+ return true;
314
+ }
315
+ if (x.kind === 'complexType' && y.kind === 'complexType') {
316
+ if (!textEqual(namespace(x), namespace(y)) || !methods(x, y, 'final') || !methods(x, y, 'block'))
317
+ return false;
318
+ const left = context.rawTypeProperties(x.id), right = context.rawTypeProperties(y.id);
319
+ if (context.kind === 'candidate' && (!left && !context.originalComplexPropertySource(x.id) || !right && !context.originalComplexPropertySource(y.id)))
320
+ return unresolved(x.id, 'component-complex-properties', 'Candidate complex properties require a raw row or an untouched original');
321
+ const xm = left?.derivation.method ?? x.derivation?.kind ?? 'restriction', ym = right?.derivation.method ?? y.derivation?.kind ?? 'restriction';
322
+ if (xm !== ym || (left?.abstract ?? x.abstract) !== (right?.abstract ?? y.abstract))
323
+ return false;
324
+ const ur = { kind: 'builtin', name: { namespace: XSD_NAMESPACE, local: 'anyType' } };
325
+ if (!typeReference(state, left?.derivation.base ?? x.derivation?.base ?? ur, right?.derivation.base ?? y.derivation?.base ?? ur, x.id))
326
+ return false;
327
+ const xa = attributes(x), ya = attributes(y);
328
+ if (!wildcard(xa.wildcard, ya.wildcard) || xa.uses.length !== ya.uses.length)
329
+ return false;
330
+ enqueue(state, { kind: 'uses', a: xa.uses, b: ya.uses });
331
+ return particles(state, content(x), content(y));
332
+ }
333
+ if ((x.kind === 'particle' || x.kind === 'group') && (y.kind === 'particle' || y.kind === 'group')) {
334
+ const left = deriveModelGroupContent(context, x.id), right = deriveModelGroupContent(context, y.id);
335
+ if (left.kind !== 'checked')
336
+ throw new Incomplete(left);
337
+ if (right.kind !== 'checked')
338
+ throw new Incomplete(right);
339
+ return particles(state, left.view, right.view);
340
+ }
341
+ return unresolved(x.id, 'component-properties', 'This component kind has no complete recursive property view');
342
+ };
343
+ const finish = (value) => {
344
+ charge(dependencies.size + obligations.size + scalarObligations.length + 12);
345
+ return budget.freeze(budget.snapshot({ kind: 'checked', value, contextId: context.contextId, authority: 'XSD10-component-properties-v1',
346
+ obligations: [...obligations], scalarObligations, dependencies: [...dependencies], typeDependencies: typeDependencies.snapshot(),
347
+ identityConstraintDependencies: identityConstraintDependencies.snapshot() }));
348
+ };
349
+ charge(12);
350
+ const states = [{ tasks: [{ kind: 'node', a, b }], pairs: new Map(), scalarPairs: new Map() }];
351
+ let unknown;
352
+ while (states.length) {
353
+ charge(3);
354
+ const state = states.pop();
355
+ let valid = true;
356
+ try {
357
+ while (valid && state.tasks.length) {
358
+ charge(4);
359
+ const task = state.tasks.pop();
360
+ if (task.kind === 'node')
361
+ valid = nodePair(state, task.a, task.b);
362
+ else if (task.kind === 'scalar')
363
+ valid = scalarPair(state, task.a, task.b, task.owner);
364
+ else if (task.kind === 'particle') {
365
+ const x = task.a, y = task.b;
366
+ if (x === y || x.originalParticle !== undefined && x.originalParticle === y.originalParticle)
367
+ continue;
368
+ if (x.kind !== y.kind || !textEqual(x.occurs.min, y.occurs.min) || !textEqual(x.occurs.max, y.occurs.max) || x.children.length !== y.children.length) {
369
+ valid = false;
370
+ continue;
371
+ }
372
+ if (x.originalParticle) {
373
+ charge(2 + x.originalParticle.length);
374
+ dependencies.add(x.originalParticle);
375
+ }
376
+ if (y.originalParticle) {
377
+ charge(2 + y.originalParticle.length);
378
+ dependencies.add(y.originalParticle);
379
+ }
380
+ if (x.element && y.element)
381
+ enqueue(state, { kind: 'node', a: x.element, b: y.element });
382
+ else if (x.wildcard && y.wildcard) {
383
+ valid = wildcard({ namespace: x.wildcard.namespace, processContents: x.wildcard.processContents, sources: [] }, { namespace: y.wildcard.namespace, processContents: y.wildcard.processContents, sources: [] });
384
+ }
385
+ for (let index = 0; index < x.children.length; index++)
386
+ enqueue(state, { kind: 'particle', a: x.children[index], b: y.children[index] });
387
+ }
388
+ else if (task.kind === 'use') {
389
+ const x = task.a, y = task.b;
390
+ read(x.source);
391
+ read(y.source);
392
+ if (pair(state.pairs, x.id, y.id) === 'seen')
393
+ continue;
394
+ if (x.required !== y.required || x.own?.kind !== y.own?.kind) {
395
+ valid = false;
396
+ continue;
397
+ }
398
+ enqueue(state, { kind: 'node', a: x.declaration, b: y.declaration });
399
+ if (x.own && y.own)
400
+ valid = unwrap(scalar.equivalent(x.own.value.type, x.own.value.lexical, y.own.value.type, y.own.value.lexical, x.id));
401
+ }
402
+ else {
403
+ if (!task.a.length) {
404
+ valid = !task.b.length;
405
+ continue;
406
+ }
407
+ if (task.a.length !== task.b.length) {
408
+ valid = false;
409
+ continue;
410
+ }
411
+ const first = task.a[0];
412
+ for (let index = 0; index < task.b.length; index++) {
413
+ charge(6);
414
+ const other = task.b[index];
415
+ if (!textEqual(first.declaration.name.namespace, other.declaration.name.namespace) || !textEqual(first.declaration.name.local, other.declaration.name.local))
416
+ continue;
417
+ charge(state.tasks.length + (state.pairs.size + state.scalarPairs.size) * 2 + task.a.length + task.b.length + 14);
418
+ const pairs = new Map(), scalarPairs = new Map();
419
+ for (const [id, row] of state.pairs) {
420
+ charge(row.size + 3);
421
+ pairs.set(id, new Set(row));
422
+ }
423
+ for (const [id, row] of state.scalarPairs) {
424
+ charge(row.size + 3);
425
+ scalarPairs.set(id, new Set(row));
426
+ }
427
+ const fork = { tasks: [...state.tasks, { kind: 'uses', a: task.a.slice(1), b: task.b.filter((_, n) => n !== index) }, { kind: 'use', a: first, b: other }], pairs, scalarPairs };
428
+ states.push(fork);
429
+ }
430
+ valid = false;
431
+ }
432
+ }
433
+ if (valid)
434
+ return finish(true);
435
+ }
436
+ catch (error) {
437
+ if (error instanceof Incomplete || error instanceof RelationProblem) {
438
+ unknown ??= error.result;
439
+ continue;
440
+ }
441
+ throw error;
442
+ }
443
+ }
444
+ return unknown ?? finish(false);
445
+ });
446
+ }
@@ -0,0 +1,46 @@
1
+ /** Concrete local component premises; the finite proof driver owns their closure. */
2
+ import type { NodeId } from './canonicalGraph.js';
3
+ import type { SemanticContext } from './semanticContext.js';
4
+ import type { ResourceLimitFailure } from './semanticBudget.js';
5
+ import type { CorrespondenceReceipt } from './re01CandidateCorrespondence.js';
6
+ import type { SemanticTypeDependency, SemanticTypeReference } from './semanticTypeReference.js';
7
+ import type { IdentityConstraintDependency } from './schemaIdentityConstraints.js';
8
+ export type ConstructionObligation = Readonly<{
9
+ rule: string;
10
+ component: NodeId;
11
+ contextId: string;
12
+ }>;
13
+ export type ComponentConstructionReceipt = Readonly<{
14
+ kind: 'checked';
15
+ authority: 'XSD10-component-construction-v1';
16
+ contextId: string;
17
+ component: NodeId;
18
+ scope: 'local-component-premises' | 'original-source-syntax-only';
19
+ receipts: readonly object[];
20
+ dependencies: readonly NodeId[];
21
+ builtinDependencies: readonly string[];
22
+ typeDependencies: readonly SemanticTypeDependency[];
23
+ identityConstraintDependencies: readonly IdentityConstraintDependency[];
24
+ re01?: Readonly<{
25
+ target: NodeId;
26
+ ancestor: SemanticTypeReference;
27
+ primitive: boolean;
28
+ }>;
29
+ obligations: readonly ConstructionObligation[];
30
+ discharged: readonly ConstructionObligation[];
31
+ }>;
32
+ export type ConstructionFailure = Readonly<{
33
+ kind: 'invalid-schema' | 'candidate-rejected' | 'unsupported-capability' | 'unresolved';
34
+ rule: string;
35
+ component: NodeId;
36
+ message: string;
37
+ contextId?: string;
38
+ }>;
39
+ export type ComponentConstructionResult = ComponentConstructionReceipt | ConstructionFailure | ResourceLimitFailure;
40
+ /** Original syntax under a prohibited use/zero particle has no local component. */
41
+ export declare function isAbsentOriginalSourceComponent(context: SemanticContext, id: NodeId): boolean;
42
+ export declare function assertComponentConstruction(context: SemanticContext, receipt: ComponentConstructionReceipt): void;
43
+ export declare function checkComponentConstruction(context: SemanticContext, id: NodeId, options?: Readonly<{
44
+ correspondence?: CorrespondenceReceipt;
45
+ }>): ComponentConstructionResult;
46
+ //# sourceMappingURL=schemaConstructionAssessment.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"schemaConstructionAssessment.d.ts","sourceRoot":"","sources":["../../src/compiler/schemaConstructionAssessment.ts"],"names":[],"mappings":"AAAA,qFAAqF;AACrF,OAAO,KAAK,EAAY,MAAM,EAAY,MAAM,qBAAqB,CAAC;AAGtE,OAAO,KAAK,EAAC,eAAe,EAAC,MAAM,sBAAsB,CAAC;AAC1D,OAAO,KAAK,EAAC,oBAAoB,EAAC,MAAM,qBAAqB,CAAC;AAuB9D,OAAO,KAAK,EAAC,qBAAqB,EAAC,MAAM,kCAAkC,CAAC;AAC5E,OAAO,KAAK,EAAC,sBAAsB,EAAE,qBAAqB,EAAC,MAAM,4BAA4B,CAAC;AAI9F,OAAO,KAAK,EAAC,4BAA4B,EAAC,MAAM,gCAAgC,CAAC;AAEjF,MAAM,MAAM,sBAAsB,GAAG,QAAQ,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAC,CAAC,CAAC;AACpG,MAAM,MAAM,4BAA4B,GAAG,QAAQ,CAAC;IAClD,IAAI,EAAE,SAAS,CAAC;IAAC,SAAS,EAAE,iCAAiC,CAAC;IAAC,SAAS,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAC;IACpG,KAAK,EAAE,0BAA0B,GAAG,6BAA6B,CAAC;IAAC,QAAQ,EAAE,SAAS,MAAM,EAAE,CAAC;IAC/F,YAAY,EAAE,SAAS,MAAM,EAAE,CAAC;IAAC,mBAAmB,EAAE,SAAS,MAAM,EAAE,CAAC;IACxE,gBAAgB,EAAE,SAAS,sBAAsB,EAAE,CAAC;IACpD,8BAA8B,EAAE,SAAS,4BAA4B,EAAE,CAAC;IACxE,IAAI,CAAC,EAAE,QAAQ,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,qBAAqB,CAAC;QAAC,SAAS,EAAE,OAAO,CAAA;KAAC,CAAC,CAAC;IACvF,WAAW,EAAE,SAAS,sBAAsB,EAAE,CAAC;IAC/C,UAAU,EAAE,SAAS,sBAAsB,EAAE,CAAC;CAC/C,CAAC,CAAC;AACH,MAAM,MAAM,mBAAmB,GAAG,QAAQ,CAAC;IAAC,IAAI,EAAE,gBAAgB,GAAG,oBAAoB,GAAG,wBAAwB,GAAG,YAAY,CAAC;IAClI,IAAI,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,SAAS,CAAC,EAAE,MAAM,CAAA;CAAC,CAAC,CAAC;AACzE,MAAM,MAAM,2BAA2B,GAAG,4BAA4B,GAAG,mBAAmB,GAAG,oBAAoB,CAAC;AAMpH,mFAAmF;AACnF,wBAAgB,+BAA+B,CAAC,OAAO,EAAE,eAAe,EAAE,EAAE,EAAE,MAAM,GAAG,OAAO,CAI7F;AAED,wBAAgB,2BAA2B,CAAC,OAAO,EAAE,eAAe,EAAE,OAAO,EAAE,4BAA4B,GAAG,IAAI,CAGjH;AAED,wBAAgB,0BAA0B,CAAC,OAAO,EAAE,eAAe,EAAE,EAAE,EAAE,MAAM,EAC7E,OAAO,GAAE,QAAQ,CAAC;IAAC,cAAc,CAAC,EAAE,qBAAqB,CAAA;CAAC,CAAM,GAAG,2BAA2B,CA2c/F"}