@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.
- package/README.md +80 -68
- package/dist/app/generateApp.d.ts +0 -1
- package/dist/app/generateApp.js +1 -1
- package/dist/app/generateCheckedApp.d.ts +38 -0
- package/dist/app/generateCheckedApp.js +108 -0
- package/dist/checkedPipeline.d.ts +155 -0
- package/dist/checkedPipeline.js +448 -0
- package/dist/checkedPlanning.d.ts +123 -0
- package/dist/checkedPlanning.js +268 -0
- package/dist/cli.d.ts +0 -1
- package/dist/cli.js +92 -2
- package/dist/client/checkedDirectRuntime.d.ts +40 -3
- package/dist/client/checkedDirectRuntime.js +28 -8
- package/dist/client/directClientRuntime.d.ts +27 -2
- package/dist/client/directClientRuntime.js +142 -89
- package/dist/client/directClientVersion.d.ts +3 -1
- package/dist/client/directClientVersion.js +3 -0
- package/dist/client/generateClient.d.ts +0 -1
- package/dist/client/generateClient.js +98 -28
- package/dist/client/generateDirectClient.d.ts +21 -3
- package/dist/client/generateDirectClient.js +138 -6
- package/dist/client/generateOperations.d.ts +0 -1
- package/dist/client/generateOperations.js +30 -11
- package/dist/client/generateTypes.d.ts +0 -1
- package/dist/client/generateUtils.d.ts +0 -1
- package/dist/client/generateUtils.js +7 -1
- package/dist/compiler/applicationGroups.d.ts +53 -0
- package/dist/compiler/applicationGroups.js +403 -0
- package/dist/compiler/buildCanonicalGraph.d.ts +0 -1
- package/dist/compiler/canonicalGraph.d.ts +4 -16
- package/dist/compiler/canonicalGraph.js +1 -8
- package/dist/compiler/catalogErrors.d.ts +0 -1
- package/dist/compiler/catalogProvenance.d.ts +0 -1
- package/dist/compiler/checkedAssessment.d.ts +0 -1
- package/dist/compiler/checkedAssessment.js +1 -1
- package/dist/compiler/checkedComponentSource.d.ts +16 -0
- package/dist/compiler/checkedComponentSource.js +31 -0
- package/dist/compiler/checkedSourcePreparation.d.ts +38 -1
- package/dist/compiler/checkedSourcePreparation.js +71 -0
- package/dist/compiler/complexTypeContent.d.ts +5 -6
- package/dist/compiler/complexTypeContent.js +2 -2
- package/dist/compiler/componentCorrespondence.d.ts +32 -0
- package/dist/compiler/componentCorrespondence.js +140 -0
- package/dist/compiler/componentRecordProjection.d.ts +112 -0
- package/dist/compiler/componentRecordProjection.js +329 -0
- package/dist/compiler/componentSoapPreparation.d.ts +20 -0
- package/dist/compiler/componentSoapPreparation.js +36 -0
- package/dist/compiler/composeCanonicalGraph.d.ts +0 -1
- package/dist/compiler/dataOwnership.d.ts +0 -1
- package/dist/compiler/dataOwnership.js +14 -4
- package/dist/compiler/datatypeValues.d.ts +0 -1
- package/dist/compiler/declarationIdentity.d.ts +22 -0
- package/dist/compiler/declarationIdentity.js +9 -0
- package/dist/compiler/directCodec.d.ts +79 -2
- package/dist/compiler/directCodec.js +310 -92
- package/dist/compiler/directExecutionPolicy.d.ts +0 -1
- package/dist/compiler/directOperation.d.ts +72 -8
- package/dist/compiler/directOperation.js +164 -19
- package/dist/compiler/directSoap.d.ts +29 -5
- package/dist/compiler/directSoap.js +154 -44
- package/dist/compiler/directSoapSource.d.ts +24 -1
- package/dist/compiler/directSoapSource.js +166 -19
- package/dist/compiler/directSourceCapsule.d.ts +74 -2
- package/dist/compiler/directSourceCapsule.js +484 -6
- package/dist/compiler/directStructure.d.ts +83 -6
- package/dist/compiler/directStructure.js +353 -58
- package/dist/compiler/directStructurePlan.d.ts +144 -2
- package/dist/compiler/directStructurePlan.js +615 -30
- package/dist/compiler/directValues.d.ts +76 -5
- package/dist/compiler/directValues.js +967 -117
- package/dist/compiler/finiteRe01Construction.d.ts +69 -0
- package/dist/compiler/finiteRe01Construction.js +422 -0
- package/dist/compiler/finiteRe01Verification.d.ts +81 -3
- package/dist/compiler/finiteRe01Verification.js +391 -4
- package/dist/compiler/generateCatalog.d.ts +0 -1
- package/dist/compiler/graphTraversal.d.ts +0 -1
- package/dist/compiler/hypotheticalScopedIdentity.d.ts +0 -1
- package/dist/compiler/legacyDeclarations.d.ts +26 -0
- package/dist/compiler/legacyDeclarations.js +144 -0
- package/dist/compiler/occurrenceAnalysis.d.ts +2 -1
- package/dist/compiler/occurrenceAnalysis.js +23 -7
- package/dist/compiler/originalSourceMembership.d.ts +0 -1
- package/dist/compiler/particleAttribution.d.ts +0 -1
- package/dist/compiler/particleAttribution.js +20 -0
- package/dist/compiler/particleDeclarationConsistency.d.ts +0 -1
- package/dist/compiler/particleDeclarationConsistency.js +9 -0
- package/dist/compiler/particleExtension.d.ts +0 -1
- package/dist/compiler/particleExtension.js +5 -1
- package/dist/compiler/particleLocalAssessment.d.ts +0 -1
- package/dist/compiler/particleRestriction.d.ts +0 -1
- package/dist/compiler/particleRestriction.js +6 -1
- package/dist/compiler/particleSemanticView.d.ts +2 -1
- package/dist/compiler/particleSemanticView.js +16 -3
- package/dist/compiler/particleWildcardRelation.d.ts +0 -1
- package/dist/compiler/projectionScalar.d.ts +49 -0
- package/dist/compiler/projectionScalar.js +218 -0
- package/dist/compiler/re01CandidateAssignments.d.ts +95 -0
- package/dist/compiler/re01CandidateAssignments.js +341 -0
- package/dist/compiler/re01CandidateCorrespondence.d.ts +22 -1
- package/dist/compiler/re01CandidateCorrespondence.js +167 -38
- package/dist/compiler/re01TypeProperties.d.ts +0 -1
- package/dist/compiler/re01TypePropertyValidation.d.ts +0 -1
- package/dist/compiler/resolveCanonicalGraph.d.ts +5 -2
- package/dist/compiler/resolveCanonicalGraph.js +77 -7
- package/dist/compiler/rpcStringValues.d.ts +30 -0
- package/dist/compiler/rpcStringValues.js +196 -0
- package/dist/compiler/rpcTypedValues.d.ts +48 -0
- package/dist/compiler/rpcTypedValues.js +190 -0
- package/dist/compiler/scalarSchemaAssessment.d.ts +0 -1
- package/dist/compiler/schemaAttributeGroupProperties.d.ts +0 -1
- package/dist/compiler/schemaAttributeProperties.d.ts +0 -1
- package/dist/compiler/schemaAttributeUses.d.ts +22 -2
- package/dist/compiler/schemaAttributeUses.js +86 -13
- package/dist/compiler/schemaBinaryWordReconstruction.d.ts +0 -1
- package/dist/compiler/schemaBuiltinFacets.d.ts +0 -1
- package/dist/compiler/schemaCalendarImages.d.ts +0 -1
- package/dist/compiler/schemaCalendarLanguage.d.ts +0 -1
- package/dist/compiler/schemaCompiler.d.ts +0 -1
- package/dist/compiler/schemaCompiler.js +44 -109
- package/dist/compiler/schemaComponentEquality.d.ts +0 -1
- package/dist/compiler/schemaConstructionAssessment.d.ts +34 -1
- package/dist/compiler/schemaConstructionAssessment.js +88 -6
- package/dist/compiler/schemaDatatypeValues.d.ts +0 -1
- package/dist/compiler/schemaDecimalLanguage.d.ts +0 -1
- package/dist/compiler/schemaDeclarationPrimitives.d.ts +7 -2
- package/dist/compiler/schemaDeclarationPrimitives.js +18 -1
- package/dist/compiler/schemaDocumentSyntax.d.ts +0 -1
- package/dist/compiler/schemaDurationLanguage.d.ts +0 -1
- package/dist/compiler/schemaElementInstance.d.ts +30 -0
- package/dist/compiler/schemaElementInstance.js +45 -0
- package/dist/compiler/schemaElementProperties.d.ts +0 -1
- package/dist/compiler/schemaEndpointWordCapacity.d.ts +0 -1
- package/dist/compiler/schemaExactCalendar.d.ts +0 -1
- package/dist/compiler/schemaFacetAnnotation.d.ts +0 -1
- package/dist/compiler/schemaGeneratedScalarShape.d.ts +0 -1
- package/dist/compiler/schemaGeneratedScalarShape.js +2 -0
- package/dist/compiler/schemaIdentityConstraints.d.ts +0 -1
- package/dist/compiler/schemaIeeeLanguage.d.ts +0 -1
- package/dist/compiler/schemaIntegerImages.d.ts +0 -1
- package/dist/compiler/schemaLexicalPredicates.d.ts +0 -1
- package/dist/compiler/schemaNotationProperties.d.ts +0 -1
- package/dist/compiler/schemaNumericImageConditions.d.ts +0 -1
- package/dist/compiler/schemaParticleWildcardProperties.d.ts +0 -1
- package/dist/compiler/schemaPattern.d.ts +0 -1
- package/dist/compiler/schemaRegularLanguage.d.ts +0 -1
- package/dist/compiler/schemaScalarContext.d.ts +5 -1
- package/dist/compiler/schemaScalarKernel.d.ts +0 -1
- package/dist/compiler/schemaScalarWitnesses.d.ts +0 -1
- package/dist/compiler/schemaSimpleTypeProperties.d.ts +0 -1
- package/dist/compiler/schemaSourceGrammar.d.ts +0 -1
- package/dist/compiler/schemaSourceLexical.d.ts +0 -1
- package/dist/compiler/schemaSourceValues.d.ts +0 -1
- package/dist/compiler/schemaSourceWildcards.d.ts +1 -2
- package/dist/compiler/schemaSourceWildcards.js +3 -1
- package/dist/compiler/schemaSymbolicSequences.d.ts +0 -1
- package/dist/compiler/schemaSymbolicValueSets.d.ts +0 -1
- package/dist/compiler/schemaSyntaxAssessment.d.ts +0 -1
- package/dist/compiler/schemaTemporalAliases.d.ts +0 -1
- package/dist/compiler/schemaTokenImages.d.ts +0 -1
- package/dist/compiler/schemaTypeIdentity.d.ts +0 -1
- package/dist/compiler/schemaTypeIdentity.js +2 -0
- package/dist/compiler/schemaTypeRelations.d.ts +0 -1
- package/dist/compiler/schemaUri.d.ts +0 -1
- package/dist/compiler/schemaValueContext.d.ts +0 -1
- package/dist/compiler/schemaValueImages.d.ts +0 -1
- package/dist/compiler/schemaValueSequences.d.ts +0 -1
- package/dist/compiler/semanticBudget.d.ts +18 -1
- package/dist/compiler/semanticBudget.js +17 -2
- package/dist/compiler/semanticCatalog.d.ts +2 -3
- package/dist/compiler/semanticContext.d.ts +12 -1
- package/dist/compiler/semanticContext.js +39 -0
- package/dist/compiler/semanticTypeDependencies.d.ts +0 -1
- package/dist/compiler/semanticTypeReference.d.ts +0 -1
- package/dist/compiler/shapeResolver.d.ts +0 -1
- package/dist/compiler/soapHeaders.d.ts +16 -0
- package/dist/compiler/soapHeaders.js +42 -0
- package/dist/compiler/sourceSchemaBinding.d.ts +0 -1
- package/dist/compiler/standardSchemaComponents.d.ts +71 -0
- package/dist/compiler/standardSchemaComponents.js +74 -0
- package/dist/compiler/standardSchemaConstruction.d.ts +20 -0
- package/dist/compiler/standardSchemaConstruction.js +34 -0
- package/dist/compiler/structuralCompanions.d.ts +0 -1
- package/dist/compiler/validateSemanticGraph.d.ts +0 -1
- package/dist/compiler/wildcardAlgebra.d.ts +0 -1
- package/dist/compiler/wsdlPolicyRequirements.d.ts +43 -0
- package/dist/compiler/wsdlPolicyRequirements.js +239 -0
- package/dist/config.d.ts +0 -1
- package/dist/gateway/generateCheckedGateway.d.ts +32 -0
- package/dist/gateway/generateCheckedGateway.js +293 -0
- package/dist/gateway/generateComposedGateway.d.ts +16 -0
- package/dist/gateway/generateComposedGateway.js +65 -0
- package/dist/gateway/generateGateway.d.ts +0 -1
- package/dist/gateway/generateGateway.js +1 -0
- package/dist/gateway/generators.d.ts +0 -1
- package/dist/gateway/generators.js +19 -4
- package/dist/gateway/helpers.d.ts +1 -1
- package/dist/gateway/helpers.js +15 -0
- package/dist/generation/componentShape.d.ts +14 -0
- package/dist/generation/componentShape.js +293 -0
- package/dist/generation/preamble.d.ts +0 -1
- package/dist/generation/sourceLayout.d.ts +13 -0
- package/dist/generation/sourceLayout.js +40 -0
- package/dist/generation/writeGeneratedSource.d.ts +0 -1
- package/dist/index.d.ts +11 -2
- package/dist/index.js +4 -1
- package/dist/loader/fetch.d.ts +0 -1
- package/dist/loader/orderedSyntax.d.ts +12 -1
- package/dist/loader/orderedSyntax.js +40 -6
- package/dist/loader/resolutionDepth.d.ts +0 -1
- package/dist/loader/schemaInput.d.ts +28 -1
- package/dist/loader/schemaInput.js +41 -4
- package/dist/loader/schemaResources.d.ts +2 -1
- package/dist/loader/schemaResources.js +45 -4
- package/dist/loader/wsdlLoader.d.ts +0 -1
- package/dist/multiServicePipeline.d.ts +41 -0
- package/dist/multiServicePipeline.js +287 -0
- package/dist/openapi/casing.d.ts +0 -1
- package/dist/openapi/composeOpenAPI.d.ts +29 -0
- package/dist/openapi/composeOpenAPI.js +322 -0
- package/dist/openapi/generateOpenAPI.d.ts +0 -1
- package/dist/openapi/generatePaths.d.ts +0 -1
- package/dist/openapi/generateSchemas.d.ts +0 -1
- package/dist/openapi/security.d.ts +0 -1
- package/dist/pipeline.d.ts +7 -3
- package/dist/pipeline.js +15 -0
- package/dist/test/generateCheckedTests.d.ts +17 -0
- package/dist/test/generateCheckedTests.js +60 -0
- package/dist/test/generateTests.d.ts +0 -1
- package/dist/test/generators.d.ts +0 -1
- package/dist/test/mockData.d.ts +0 -1
- package/dist/test/mockData.js +20 -14
- package/dist/util/attributeWildcards.d.ts +0 -1
- package/dist/util/builder.d.ts +0 -1
- package/dist/util/catalogMeta.d.ts +0 -1
- package/dist/util/checkedCliDiagnostics.d.ts +11 -0
- package/dist/util/checkedCliDiagnostics.js +22 -0
- package/dist/util/cli.d.ts +0 -1
- package/dist/util/errors.d.ts +0 -1
- package/dist/util/imports.d.ts +0 -1
- package/dist/util/runtimeSource.d.ts +0 -1
- package/dist/util/runtimeSource.js +3 -5
- package/dist/util/securityConfig.d.ts +0 -1
- package/dist/util/streamConfig.d.ts +0 -1
- package/dist/util/tools.d.ts +0 -1
- package/dist/util/xmlWhitespace.d.ts +0 -1
- package/dist/xsd/primitives.d.ts +0 -1
- package/docs/agent-skill.md +12 -1
- package/docs/api-reference.md +127 -9
- package/docs/checked-gateway.md +212 -0
- package/docs/checked-generation.md +167 -0
- package/docs/cli-reference.md +48 -6
- package/docs/concepts.md +139 -5
- package/docs/configuration.md +15 -4
- package/docs/corpus.md +33 -0
- package/docs/direct-values.md +13 -13
- package/docs/examples/checked-forecast.wsdl +19 -0
- package/docs/gateway-guide.md +104 -27
- package/docs/generated-code.md +22 -11
- package/docs/mapping-contract.md +114 -0
- package/docs/migration-playbook.md +5 -1
- package/docs/migration.md +124 -6
- package/docs/output-anatomy.md +21 -18
- package/docs/production.md +7 -5
- package/docs/start-here.md +19 -3
- package/docs/supported-patterns.md +24 -3
- package/docs/testing.md +119 -31
- package/docs/troubleshooting.md +3 -1
- package/llms.txt +16 -8
- package/package.json +64 -23
- package/src/runtime/checkedGatewayHost.tpl.txt +157 -0
- package/src/runtime/clientStreamMethods.tpl.txt +156 -148
- package/src/runtime/operationsStreamHelper.tpl.txt +6 -6
- package/src/runtime/streamXml.ts +49 -21
- package/dist/app/generateApp.d.ts.map +0 -1
- package/dist/cli.d.ts.map +0 -1
- package/dist/client/checkedDirectRuntime.d.ts.map +0 -1
- package/dist/client/directClientRuntime.d.ts.map +0 -1
- package/dist/client/directClientVersion.d.ts.map +0 -1
- package/dist/client/generateClient.d.ts.map +0 -1
- package/dist/client/generateDirectClient.d.ts.map +0 -1
- package/dist/client/generateOperations.d.ts.map +0 -1
- package/dist/client/generateTypes.d.ts.map +0 -1
- package/dist/client/generateUtils.d.ts.map +0 -1
- package/dist/compiler/buildCanonicalGraph.d.ts.map +0 -1
- package/dist/compiler/canonicalGraph.d.ts.map +0 -1
- package/dist/compiler/catalogErrors.d.ts.map +0 -1
- package/dist/compiler/catalogProvenance.d.ts.map +0 -1
- package/dist/compiler/checkedAssessment.d.ts.map +0 -1
- package/dist/compiler/checkedSourcePreparation.d.ts.map +0 -1
- package/dist/compiler/complexTypeContent.d.ts.map +0 -1
- package/dist/compiler/composeCanonicalGraph.d.ts.map +0 -1
- package/dist/compiler/dataOwnership.d.ts.map +0 -1
- package/dist/compiler/datatypeValues.d.ts.map +0 -1
- package/dist/compiler/directCodec.d.ts.map +0 -1
- package/dist/compiler/directExecutionPolicy.d.ts.map +0 -1
- package/dist/compiler/directOperation.d.ts.map +0 -1
- package/dist/compiler/directSoap.d.ts.map +0 -1
- package/dist/compiler/directSoapSource.d.ts.map +0 -1
- package/dist/compiler/directSourceCapsule.d.ts.map +0 -1
- package/dist/compiler/directStructure.d.ts.map +0 -1
- package/dist/compiler/directStructurePlan.d.ts.map +0 -1
- package/dist/compiler/directValues.d.ts.map +0 -1
- package/dist/compiler/finiteRe01Verification.d.ts.map +0 -1
- package/dist/compiler/generateCatalog.d.ts.map +0 -1
- package/dist/compiler/graphTraversal.d.ts.map +0 -1
- package/dist/compiler/hypotheticalScopedIdentity.d.ts.map +0 -1
- package/dist/compiler/occurrenceAnalysis.d.ts.map +0 -1
- package/dist/compiler/originalSourceMembership.d.ts.map +0 -1
- package/dist/compiler/particleAttribution.d.ts.map +0 -1
- package/dist/compiler/particleDeclarationConsistency.d.ts.map +0 -1
- package/dist/compiler/particleExtension.d.ts.map +0 -1
- package/dist/compiler/particleLocalAssessment.d.ts.map +0 -1
- package/dist/compiler/particleRestriction.d.ts.map +0 -1
- package/dist/compiler/particleSemanticView.d.ts.map +0 -1
- package/dist/compiler/particleWildcardRelation.d.ts.map +0 -1
- package/dist/compiler/re01CandidateCorrespondence.d.ts.map +0 -1
- package/dist/compiler/re01TypeProperties.d.ts.map +0 -1
- package/dist/compiler/re01TypePropertyValidation.d.ts.map +0 -1
- package/dist/compiler/resolveCanonicalGraph.d.ts.map +0 -1
- package/dist/compiler/scalarSchemaAssessment.d.ts.map +0 -1
- package/dist/compiler/schemaAttributeGroupProperties.d.ts.map +0 -1
- package/dist/compiler/schemaAttributeProperties.d.ts.map +0 -1
- package/dist/compiler/schemaAttributeUses.d.ts.map +0 -1
- package/dist/compiler/schemaBinaryWordReconstruction.d.ts.map +0 -1
- package/dist/compiler/schemaBuiltinFacets.d.ts.map +0 -1
- package/dist/compiler/schemaCalendarImages.d.ts.map +0 -1
- package/dist/compiler/schemaCalendarLanguage.d.ts.map +0 -1
- package/dist/compiler/schemaCompiler.d.ts.map +0 -1
- package/dist/compiler/schemaComponentEquality.d.ts.map +0 -1
- package/dist/compiler/schemaConstructionAssessment.d.ts.map +0 -1
- package/dist/compiler/schemaDatatypeValues.d.ts.map +0 -1
- package/dist/compiler/schemaDecimalLanguage.d.ts.map +0 -1
- package/dist/compiler/schemaDeclarationPrimitives.d.ts.map +0 -1
- package/dist/compiler/schemaDocumentSyntax.d.ts.map +0 -1
- package/dist/compiler/schemaDurationLanguage.d.ts.map +0 -1
- package/dist/compiler/schemaElementProperties.d.ts.map +0 -1
- package/dist/compiler/schemaEndpointWordCapacity.d.ts.map +0 -1
- package/dist/compiler/schemaExactCalendar.d.ts.map +0 -1
- package/dist/compiler/schemaFacetAnnotation.d.ts.map +0 -1
- package/dist/compiler/schemaGeneratedScalarShape.d.ts.map +0 -1
- package/dist/compiler/schemaIdentityConstraints.d.ts.map +0 -1
- package/dist/compiler/schemaIeeeLanguage.d.ts.map +0 -1
- package/dist/compiler/schemaIntegerImages.d.ts.map +0 -1
- package/dist/compiler/schemaLexicalPredicates.d.ts.map +0 -1
- package/dist/compiler/schemaNotationProperties.d.ts.map +0 -1
- package/dist/compiler/schemaNumericImageConditions.d.ts.map +0 -1
- package/dist/compiler/schemaParticleWildcardProperties.d.ts.map +0 -1
- package/dist/compiler/schemaPattern.d.ts.map +0 -1
- package/dist/compiler/schemaRegularLanguage.d.ts.map +0 -1
- package/dist/compiler/schemaScalarContext.d.ts.map +0 -1
- package/dist/compiler/schemaScalarKernel.d.ts.map +0 -1
- package/dist/compiler/schemaScalarWitnesses.d.ts.map +0 -1
- package/dist/compiler/schemaSimpleTypeProperties.d.ts.map +0 -1
- package/dist/compiler/schemaSourceGrammar.d.ts.map +0 -1
- package/dist/compiler/schemaSourceLexical.d.ts.map +0 -1
- package/dist/compiler/schemaSourceValues.d.ts.map +0 -1
- package/dist/compiler/schemaSourceWildcards.d.ts.map +0 -1
- package/dist/compiler/schemaSymbolicSequences.d.ts.map +0 -1
- package/dist/compiler/schemaSymbolicValueSets.d.ts.map +0 -1
- package/dist/compiler/schemaSyntaxAssessment.d.ts.map +0 -1
- package/dist/compiler/schemaTemporalAliases.d.ts.map +0 -1
- package/dist/compiler/schemaTokenImages.d.ts.map +0 -1
- package/dist/compiler/schemaTypeIdentity.d.ts.map +0 -1
- package/dist/compiler/schemaTypeRelations.d.ts.map +0 -1
- package/dist/compiler/schemaUri.d.ts.map +0 -1
- package/dist/compiler/schemaValueContext.d.ts.map +0 -1
- package/dist/compiler/schemaValueImages.d.ts.map +0 -1
- package/dist/compiler/schemaValueSequences.d.ts.map +0 -1
- package/dist/compiler/semanticBudget.d.ts.map +0 -1
- package/dist/compiler/semanticCatalog.d.ts.map +0 -1
- package/dist/compiler/semanticContext.d.ts.map +0 -1
- package/dist/compiler/semanticTypeDependencies.d.ts.map +0 -1
- package/dist/compiler/semanticTypeReference.d.ts.map +0 -1
- package/dist/compiler/shapeResolver.d.ts.map +0 -1
- package/dist/compiler/sourceSchemaBinding.d.ts.map +0 -1
- package/dist/compiler/structuralCompanions.d.ts.map +0 -1
- package/dist/compiler/validateSemanticGraph.d.ts.map +0 -1
- package/dist/compiler/wildcardAlgebra.d.ts.map +0 -1
- package/dist/config.d.ts.map +0 -1
- package/dist/gateway/generateGateway.d.ts.map +0 -1
- package/dist/gateway/generators.d.ts.map +0 -1
- package/dist/gateway/helpers.d.ts.map +0 -1
- package/dist/generation/preamble.d.ts.map +0 -1
- package/dist/generation/writeGeneratedSource.d.ts.map +0 -1
- package/dist/index.d.ts.map +0 -1
- package/dist/loader/fetch.d.ts.map +0 -1
- package/dist/loader/orderedSyntax.d.ts.map +0 -1
- package/dist/loader/resolutionDepth.d.ts.map +0 -1
- package/dist/loader/schemaInput.d.ts.map +0 -1
- package/dist/loader/schemaResources.d.ts.map +0 -1
- package/dist/loader/wsdlLoader.d.ts.map +0 -1
- package/dist/openapi/casing.d.ts.map +0 -1
- package/dist/openapi/generateOpenAPI.d.ts.map +0 -1
- package/dist/openapi/generatePaths.d.ts.map +0 -1
- package/dist/openapi/generateSchemas.d.ts.map +0 -1
- package/dist/openapi/security.d.ts.map +0 -1
- package/dist/pipeline.d.ts.map +0 -1
- package/dist/runtime/jsonArray.d.ts +0 -24
- package/dist/runtime/jsonArray.d.ts.map +0 -1
- package/dist/runtime/jsonArray.js +0 -52
- package/dist/runtime/ndjson.d.ts +0 -24
- package/dist/runtime/ndjson.d.ts.map +0 -1
- package/dist/runtime/ndjson.js +0 -30
- package/dist/runtime/streamXml.d.ts +0 -45
- package/dist/runtime/streamXml.d.ts.map +0 -1
- package/dist/runtime/streamXml.js +0 -212
- package/dist/test/generateTests.d.ts.map +0 -1
- package/dist/test/generators.d.ts.map +0 -1
- package/dist/test/mockData.d.ts.map +0 -1
- package/dist/util/attributeWildcards.d.ts.map +0 -1
- package/dist/util/builder.d.ts.map +0 -1
- package/dist/util/catalogMeta.d.ts.map +0 -1
- package/dist/util/cli.d.ts.map +0 -1
- package/dist/util/errors.d.ts.map +0 -1
- package/dist/util/imports.d.ts.map +0 -1
- package/dist/util/runtimeSource.d.ts.map +0 -1
- package/dist/util/securityConfig.d.ts.map +0 -1
- package/dist/util/streamConfig.d.ts.map +0 -1
- package/dist/util/tools.d.ts.map +0 -1
- package/dist/util/xmlWhitespace.d.ts.map +0 -1
- package/dist/xsd/primitives.d.ts.map +0 -1
- package/docs/AGENTS.md +0 -47
- package/docs/README.md +0 -69
- package/docs/architecture.md +0 -158
- package/docs/content-model-analysis.md +0 -92
- package/docs/content-model-baseline.md +0 -121
- package/docs/content-model-catalog.md +0 -116
- package/docs/content-model-companions.md +0 -90
- package/docs/content-model-composition.md +0 -103
- package/docs/content-model-decisions.md +0 -79
- package/docs/content-model-gateway-feasibility.md +0 -169
- package/docs/content-model-graph.md +0 -121
- package/docs/content-model-loading.md +0 -163
- package/docs/content-model-matching.md +0 -85
- package/docs/content-model-readiness.md +0 -144
- package/docs/content-model-resolution.md +0 -81
- package/docs/content-model-s02-handoff.md +0 -98
- package/docs/content-model-s06-au-01.md +0 -425
- package/docs/content-model-s06-dt-01.md +0 -386
- package/docs/content-model-s06-pw-01.md +0 -350
- package/docs/content-model-s06-re-01-resolver-implementation.md +0 -869
- package/docs/content-model-s06-re-01-resolver.md +0 -513
- package/docs/content-model-s06-re-01-scalar-witnesses.md +0 -1423
- package/docs/content-model-s06-re-01-support-reconstruction.md +0 -6337
- package/docs/content-model-s06-re-01.md +0 -7477
- package/docs/content-model-s06-research-handoff.md +0 -909
- package/docs/content-model-shipped-fix.md +0 -83
- package/docs/content-model-soap-feasibility.md +0 -165
- package/docs/decisions/001-test-generation.md +0 -36
- package/docs/decisions/002-streamable-responses.md +0 -332
- package/docs/decisions/003-content-model-contracts.md +0 -280
- package/docs/file-naming-and-path-organization.md +0 -213
- package/docs/reference-validation.md +0 -243
- package/docs/releases/README.md +0 -94
- package/docs/releases/v0.20.0.md +0 -22
- package/docs/releases/v0.21.0.md +0 -30
- package/docs/releases/v0.22.0.md +0 -30
- package/docs/releases/v0.23.0.md +0 -31
- package/docs/releases/v0.24.0.md +0 -38
- package/docs/releases/v0.25.0.md +0 -31
- package/docs/releases/v0.25.2.md +0 -32
- package/docs/releases/v0.26.0.md +0 -32
- package/docs/releases/v0.27.0.md +0 -31
- package/docs/releases/v0.28.0.md +0 -32
- package/docs/releases/v0.29.0.md +0 -32
- package/docs/releases/v0.30.0.md +0 -30
- package/docs/releases/v0.30.1.md +0 -31
- package/docs/releases/v0.30.2.md +0 -30
- package/docs/releases/v0.30.3.md +0 -33
- package/docs/releases/v0.31.0.md +0 -33
- package/docs/releases/v0.32.0.md +0 -33
- package/docs/releases/v0.33.0.md +0 -34
- package/docs/releases/v0.34.0.md +0 -30
- package/docs/releases/v0.35.0.md +0 -33
- package/docs/releases/v0.36.0.md +0 -32
- package/docs/releases/v0.37.0.md +0 -33
- package/docs/releases/v0.38.0.md +0 -35
- package/docs/releases/v0.39.0.md +0 -35
- package/docs/releases/v0.40.0.md +0 -45
- package/docs/releases/v0.40.1.md +0 -34
- package/docs/releases/v1.0.0.md +0 -42
- package/docs/releases/v1.0.1.md +0 -38
- package/docs/releases/v1.0.2.md +0 -51
- package/docs/releases/v1.0.3.md +0 -37
- package/docs/releases/v1.0.4.md +0 -45
- package/docs/releases/v1.0.5.md +0 -41
- package/docs/releases/v1.0.6.md +0 -35
- package/docs/releases/v1.0.7.md +0 -36
- package/docs/releases/v1.1.0.md +0 -42
- package/docs/releases/v1.1.1.md +0 -44
- package/docs/releases/v1.1.2.md +0 -42
- package/docs/releases/v1.1.3.md +0 -36
- package/docs/releases/v1.1.4.md +0 -36
- package/docs/releases/v1.1.5.md +0 -38
- package/docs/roadmap/README.md +0 -107
- package/docs/roadmap/v1.0-capability-conformance-framework.md +0 -582
- package/docs/roadmap/v1.0-choice-union-mode.md +0 -90
- package/docs/roadmap/v1.0-contract-audit.md +0 -75
- package/docs/roadmap/v1.0-json-array-streaming.md +0 -101
- package/docs/roadmap/v1.0-openapi-fastify-compatibility.md +0 -99
- package/docs/roadmap/v1.0-release-candidate-gates.md +0 -92
- package/docs/roadmap/v1.0-wsdl-coverage-matrix.md +0 -200
- package/docs/roadmap/v1.0-xs-anyattribute-wildcard-bag.md +0 -932
- package/src/runtime/jsonArray.ts +0 -55
- package/src/runtime/ndjson.ts +0 -32
|
@@ -2,6 +2,77 @@ import { syntaxAttribute, syntaxElements, XSD_NAMESPACE } from '../loader/ordere
|
|
|
2
2
|
import { prepareSourceSchemaRequest } from './schemaDocumentSyntax.js';
|
|
3
3
|
import { checkComponentConstruction } from './schemaConstructionAssessment.js';
|
|
4
4
|
import { verifyDirectActualSchema } from './finiteRe01Verification.js';
|
|
5
|
+
import { buildRe01Evidence } from './finiteRe01Construction.js';
|
|
6
|
+
import { assertFiniteCandidateReceipt, assertFinitePrimitiveReceipt, assertExtensionChainReceipt, verifyExtensionChainActualSchema } from './finiteRe01Verification.js';
|
|
7
|
+
import { verifySimpleExtensionConstruction, assertSimpleExtensionConstruction } from './finiteRe01Verification.js';
|
|
8
|
+
const constructed = new WeakMap();
|
|
9
|
+
/** Authenticate fresh source construction; neither fields nor saved reports grant this identity. */
|
|
10
|
+
export function inspectNativeSourceConstruction(value, expectedSource) {
|
|
11
|
+
const source = constructed.get(value);
|
|
12
|
+
if (!source || expectedSource !== undefined && source !== expectedSource)
|
|
13
|
+
throw new TypeError('Fresh native source construction required');
|
|
14
|
+
if (value.closure.kind === 'checked-candidate')
|
|
15
|
+
assertFiniteCandidateReceipt(value.request.actual, value.closure);
|
|
16
|
+
if (value.closure.kind === 'checked-primitive')
|
|
17
|
+
assertFinitePrimitiveReceipt(value.request.actual, value.closure);
|
|
18
|
+
if (value.closure.kind === 'checked-extension-chain' || value.closure.kind === 'inconclusive-extension-chain')
|
|
19
|
+
assertExtensionChainReceipt(value.request.actual, value.closure);
|
|
20
|
+
if ('simple' in value.closure)
|
|
21
|
+
assertSimpleExtensionConstruction(value.request.actual, value.closure);
|
|
22
|
+
return value;
|
|
23
|
+
}
|
|
24
|
+
/** Construct and natively verify whole-source obligations without granting dated-XSD correspondence or generation.
|
|
25
|
+
* @remarks This additive route may propose finite constructions. The existing direct preview remains unchanged.
|
|
26
|
+
* Missing constructions are inconclusive, and unrelated actual failures are still checked.
|
|
27
|
+
* @returns Fresh native construction or preparation/resource failure; eligibility always remains false.
|
|
28
|
+
*/
|
|
29
|
+
export function constructNativeSource(input, options) {
|
|
30
|
+
const { budget } = options;
|
|
31
|
+
return budget.guard(() => {
|
|
32
|
+
options.check?.();
|
|
33
|
+
const prepared = prepareSourceSchemaRequest(input, { budget, accountPreparation: true,
|
|
34
|
+
sourceLimits: { maxNodes: options.maxNodes, standardLibraries: options.standardLibraries } });
|
|
35
|
+
if (prepared.kind !== 'prepared')
|
|
36
|
+
return prepared;
|
|
37
|
+
const { request } = prepared;
|
|
38
|
+
let localEstablished = true, localDisproved = false;
|
|
39
|
+
for (const id of request.actual.members) {
|
|
40
|
+
options.check?.();
|
|
41
|
+
const found = request.actual.lookup(id);
|
|
42
|
+
if (found.kind !== 'found' || found.node.kind === 'wsdl')
|
|
43
|
+
continue;
|
|
44
|
+
const checked = checkComponentConstruction(request.actual, id);
|
|
45
|
+
if (checked.kind === 'resource-limit')
|
|
46
|
+
return checked;
|
|
47
|
+
if (checked.kind !== 'checked')
|
|
48
|
+
localEstablished = false;
|
|
49
|
+
if (checked.kind === 'invalid-schema')
|
|
50
|
+
localDisproved = true;
|
|
51
|
+
options.onLocal?.(id, checked);
|
|
52
|
+
}
|
|
53
|
+
options.check?.();
|
|
54
|
+
let closure = options.simpleExtensions ? verifySimpleExtensionConstruction(request.actual)
|
|
55
|
+
: options.extensionChains ? verifyExtensionChainActualSchema(request.actual) : verifyDirectActualSchema(request.actual);
|
|
56
|
+
if (closure.kind === 'resource-limit')
|
|
57
|
+
return closure;
|
|
58
|
+
if ('simple' in closure && closure.simple.length === 0 && closure.unresolved.length === 0)
|
|
59
|
+
closure = closure.complex;
|
|
60
|
+
if ((closure.kind === 'inconclusive-direct' || closure.kind === 'inconclusive-extension-chain') && closure.unresolved.length) {
|
|
61
|
+
const result = buildRe01Evidence(request.actual, closure.unresolved[0]);
|
|
62
|
+
if (result.kind === 'resource-limit')
|
|
63
|
+
return result;
|
|
64
|
+
closure = result.kind === 'checked-witness' ? result.receipt : Object.freeze({ kind: 'inconclusive-construction',
|
|
65
|
+
reason: 'rule' in result ? result.rule : 'no-witness-in-delivered-families' });
|
|
66
|
+
}
|
|
67
|
+
options.check?.();
|
|
68
|
+
budget.chargeWork(128);
|
|
69
|
+
const value = Object.freeze({ kind: 'constructed-source', request, closure, localEstablished, localDisproved,
|
|
70
|
+
nativeEstablished: localEstablished && ['checked-direct', 'checked-extension-chain', 'checked-simple-extension-construction', 'checked-candidate', 'checked-primitive'].includes(closure.kind),
|
|
71
|
+
correspondence: 'unassessed', eligible: false });
|
|
72
|
+
constructed.set(value, input);
|
|
73
|
+
return value;
|
|
74
|
+
});
|
|
75
|
+
}
|
|
5
76
|
/**
|
|
6
77
|
* Consume one authentic loaded snapshot and the caller's existing sticky budget.
|
|
7
78
|
* All actual components are checked, including those unreachable from any WSDL
|
|
@@ -7,10 +7,10 @@ export type ParticleContentView = Readonly<{
|
|
|
7
7
|
contextId: string;
|
|
8
8
|
type: NodeId;
|
|
9
9
|
scope: 'actual-source-mapping' | 'candidate-raw-properties' | 'original-property-projection' | 'builtin-type' | 'model-group';
|
|
10
|
-
/**
|
|
11
|
-
*
|
|
12
|
-
*
|
|
13
|
-
*
|
|
10
|
+
/** Effective scalar reference, not a scalar/component-validity receipt.
|
|
11
|
+
* @remarks Actual and retained-source views preserve the source mapper's scalar reference;
|
|
12
|
+
* restrictions retain their registered GSC1 slot and extensions may inherit a named/builtin type.
|
|
13
|
+
* The scalar owner establishes properties, identity and remaining obligations. RAW views carry the supplied reference.
|
|
14
14
|
*/
|
|
15
15
|
content: RawComplexContent;
|
|
16
16
|
/** Optional diagnostic materialization, charged on first access; semantic consumers use particleContentNode. */
|
|
@@ -48,7 +48,7 @@ export declare function deriveOriginalUrWildcard(context: SemanticContext, origi
|
|
|
48
48
|
export declare function originalUrWildcardSource(context: SemanticContext, handle: OriginalUrWildcardHandle): ParticleNode;
|
|
49
49
|
/** Raw candidate properties are read directly; their component validity remains a separate prerequisite. */
|
|
50
50
|
export declare function deriveRawComplexContent(context: SemanticContext, type: NodeId): ContentViewResult;
|
|
51
|
-
/** Retained source properties interpreted in H;
|
|
51
|
+
/** Retained source properties interpreted in H; scalar identities remain unchanged and full hypothetical validity stays separate. */
|
|
52
52
|
export declare function deriveOriginalComplexPropertyContent(context: SemanticContext, type: NodeId): ContentViewResult;
|
|
53
53
|
/** Same-H private subtree input for local predicates, never a component-validity receipt. */
|
|
54
54
|
export declare function deriveOriginalContentSubtree(context: SemanticContext, source: ParticleContentView, particle: NodeId): ContentViewResult;
|
|
@@ -56,4 +56,3 @@ export declare function deriveOriginalContentSubtree(context: SemanticContext, s
|
|
|
56
56
|
export declare function deriveBuiltinAnyTypeContent(context: SemanticContext, anchor: NodeId): ContentViewResult;
|
|
57
57
|
/** Local model-group constraints also apply to definitions unused by any type. */
|
|
58
58
|
export declare function deriveModelGroupContent(context: SemanticContext, component: NodeId): ContentViewResult;
|
|
59
|
-
//# sourceMappingURL=complexTypeContent.d.ts.map
|
|
@@ -397,7 +397,7 @@ export function deriveRawComplexContent(context, type) {
|
|
|
397
397
|
return Object.freeze({ kind: 'checked', view });
|
|
398
398
|
});
|
|
399
399
|
}
|
|
400
|
-
/** Retained source properties interpreted in H;
|
|
400
|
+
/** Retained source properties interpreted in H; scalar identities remain unchanged and full hypothetical validity stays separate. */
|
|
401
401
|
export function deriveOriginalComplexPropertyContent(context, type) {
|
|
402
402
|
assertSemanticContext(context);
|
|
403
403
|
const budget = context.budget;
|
|
@@ -428,7 +428,7 @@ export function deriveOriginalComplexPropertyContent(context, type) {
|
|
|
428
428
|
const source = deriveActualComplexContent(context.originalContext(), type);
|
|
429
429
|
if (source.kind !== 'checked')
|
|
430
430
|
return source;
|
|
431
|
-
if (source.view.content.kind === '
|
|
431
|
+
if (source.view.content.kind === 'opaque-builtin')
|
|
432
432
|
return fail('component-content-properties');
|
|
433
433
|
const additions = [];
|
|
434
434
|
for (const id of source.view.synthetic) {
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
/** Sufficient dated correspondence for ordinary source components without endpoint-shadowing witnesses. */
|
|
2
|
+
import type { SchemaInput } from '../loader/schemaInput.js';
|
|
3
|
+
import type { NativeSourceConstruction } from './checkedSourcePreparation.js';
|
|
4
|
+
import type { ResourceLimitFailure, ResolverUsage } from './semanticBudget.js';
|
|
5
|
+
export declare const COMPONENT_CORRESPONDENCE: "dated-XSD-2004-components-v1";
|
|
6
|
+
export interface ComponentCorrespondence {
|
|
7
|
+
readonly kind: 'component-correspondence';
|
|
8
|
+
readonly basis: typeof COMPONENT_CORRESPONDENCE;
|
|
9
|
+
readonly scope: 'ordinary-source-components';
|
|
10
|
+
readonly interpretations: number;
|
|
11
|
+
readonly constructedContexts: number;
|
|
12
|
+
readonly usage: ResolverUsage;
|
|
13
|
+
}
|
|
14
|
+
export type ComponentCorrespondenceResult = ComponentCorrespondence | ResourceLimitFailure | Readonly<{
|
|
15
|
+
kind: 'inconclusive-correspondence';
|
|
16
|
+
rule: string;
|
|
17
|
+
path?: string;
|
|
18
|
+
usage: ResolverUsage;
|
|
19
|
+
}>;
|
|
20
|
+
/** Receipt identity binds correspondence to the exact fresh native construction, never a diagnostic digest. */
|
|
21
|
+
export declare function inspectComponentCorrespondence(value: ComponentCorrespondence, construction: NativeSourceConstruction): ComponentCorrespondence;
|
|
22
|
+
/** Audit a closed representation fragment after whole native construction; this is not a second schema checker.
|
|
23
|
+
* @remarks Source syntax/values and component legality remain the native S4S, construction and aggregate owners.
|
|
24
|
+
* This sufficient route excludes redefine/chameleon, identity/substitution, non-string unions and wider faceted families,
|
|
25
|
+
* source complex restrictions, contextual/explicit ur-type references, foreign attributes and endpoint-shadowing witnesses.
|
|
26
|
+
* Endpoint-shadowing witnesses remain inconclusive until component-valued TYPE/SCOPE interpretation is established.
|
|
27
|
+
* @returns An authenticated correspondence or an inconclusive scope/resource result; never a schema-invalid judgment.
|
|
28
|
+
* @throws TypeError For copied/foreign construction or source. Cancellation callbacks propagate unchanged.
|
|
29
|
+
*/
|
|
30
|
+
export declare function checkComponentCorrespondence(input: SchemaInput, supplied: NativeSourceConstruction, options?: Readonly<{
|
|
31
|
+
check?: () => void;
|
|
32
|
+
}>): ComponentCorrespondenceResult;
|
|
@@ -0,0 +1,140 @@
|
|
|
1
|
+
import { resolveLexicalQName, syntaxAttribute, syntaxElements, XSD_NAMESPACE } from '../loader/orderedSyntax.js';
|
|
2
|
+
import { isBuiltinType } from './canonicalGraph.js';
|
|
3
|
+
import { inspectNativeSourceConstruction } from './checkedSourcePreparation.js';
|
|
4
|
+
import { assertSimpleExtensionConstruction } from './finiteRe01Verification.js';
|
|
5
|
+
import { scalarSchemaAssessment } from './scalarSchemaAssessment.js';
|
|
6
|
+
import { schemaScalarContext } from './schemaScalarContext.js';
|
|
7
|
+
export const COMPONENT_CORRESPONDENCE = 'dated-XSD-2004-components-v1';
|
|
8
|
+
const issued = new WeakMap();
|
|
9
|
+
/** Receipt identity binds correspondence to the exact fresh native construction, never a diagnostic digest. */
|
|
10
|
+
export function inspectComponentCorrespondence(value, construction) {
|
|
11
|
+
if (issued.get(value) !== construction)
|
|
12
|
+
throw new TypeError('Fresh matching component correspondence required');
|
|
13
|
+
inspectNativeSourceConstruction(construction);
|
|
14
|
+
return value;
|
|
15
|
+
}
|
|
16
|
+
const forms = new Set(['schema', 'import', 'include', 'annotation', 'complexType', 'simpleType', 'complexContent', 'simpleContent',
|
|
17
|
+
'extension', 'restriction', 'enumeration', 'list', 'union', 'length', 'minLength', 'maxLength', 'whiteSpace', 'pattern',
|
|
18
|
+
'minInclusive', 'maxInclusive', 'minExclusive', 'maxExclusive', 'totalDigits', 'fractionDigits',
|
|
19
|
+
'element', 'attribute', 'attributeGroup', 'sequence', 'choice', 'all', 'group', 'any', 'anyAttribute']);
|
|
20
|
+
const contextual = new Set(['QName', 'NOTATION', 'ID', 'IDREF', 'IDREFS', 'ENTITY', 'ENTITIES', 'anyType', 'anySimpleType']);
|
|
21
|
+
/** Audit a closed representation fragment after whole native construction; this is not a second schema checker.
|
|
22
|
+
* @remarks Source syntax/values and component legality remain the native S4S, construction and aggregate owners.
|
|
23
|
+
* This sufficient route excludes redefine/chameleon, identity/substitution, non-string unions and wider faceted families,
|
|
24
|
+
* source complex restrictions, contextual/explicit ur-type references, foreign attributes and endpoint-shadowing witnesses.
|
|
25
|
+
* Endpoint-shadowing witnesses remain inconclusive until component-valued TYPE/SCOPE interpretation is established.
|
|
26
|
+
* @returns An authenticated correspondence or an inconclusive scope/resource result; never a schema-invalid judgment.
|
|
27
|
+
* @throws TypeError For copied/foreign construction or source. Cancellation callbacks propagate unchanged.
|
|
28
|
+
*/
|
|
29
|
+
export function checkComponentCorrespondence(input, supplied, options = {}) {
|
|
30
|
+
const construction = inspectNativeSourceConstruction(supplied, input);
|
|
31
|
+
const actual = construction.request.actual, { budget } = actual;
|
|
32
|
+
const check = () => { options.check?.(); budget.chargeWork(); };
|
|
33
|
+
const outside = (rule, node) => {
|
|
34
|
+
budget.chargeWork(64 + rule.length * 4);
|
|
35
|
+
return Object.freeze({ kind: 'inconclusive-correspondence', rule, ...(node ? { path: node.source.path } : {}), usage: Object.freeze({ ...budget.usage() }) });
|
|
36
|
+
};
|
|
37
|
+
return budget.guard(() => {
|
|
38
|
+
check();
|
|
39
|
+
if (!construction.nativeEstablished)
|
|
40
|
+
return outside('native-construction-unestablished');
|
|
41
|
+
if (!input.schemas.length)
|
|
42
|
+
return outside('no-schema-interpretation');
|
|
43
|
+
for (const schema of input.schemas) {
|
|
44
|
+
check();
|
|
45
|
+
budget.chargeWork(128 + schema.targetNamespace.length * 4);
|
|
46
|
+
if (schema.targetNamespace === XSD_NAMESPACE || schema.targetNamespace === 'http://www.w3.org/2000/xmlns/')
|
|
47
|
+
return outside('system-namespace-unqualified', schema.syntax);
|
|
48
|
+
if (schema.context.kind === 'include' && syntaxAttribute(schema.syntax, 'targetNamespace') === undefined && schema.targetNamespace !== '')
|
|
49
|
+
return outside('chameleon-interpretation', schema.syntax);
|
|
50
|
+
const stack = [{ node: schema.syntax }];
|
|
51
|
+
while (stack.length) {
|
|
52
|
+
check();
|
|
53
|
+
const { node, parent } = stack.pop();
|
|
54
|
+
budget.chargeWork(96 + node.attributes.length * 32 + node.children.length * 8);
|
|
55
|
+
if (node.name.namespace !== XSD_NAMESPACE || !forms.has(node.name.local))
|
|
56
|
+
return outside('source-form-' + node.name.local, node);
|
|
57
|
+
// @why Annotation contents are data under 2004 S4S; the native document owner already checks their syntax and IDs.
|
|
58
|
+
if (node.name.local === 'annotation')
|
|
59
|
+
continue;
|
|
60
|
+
if (node.name.local === 'restriction' && parent?.name.local !== 'simpleType')
|
|
61
|
+
return outside('source-complex-restriction', node);
|
|
62
|
+
for (const attribute of node.attributes) {
|
|
63
|
+
check();
|
|
64
|
+
budget.chargeWork(64 + attribute.value.length * 4);
|
|
65
|
+
if (attribute.name.namespace !== '')
|
|
66
|
+
return outside('foreign-source-attribute', node);
|
|
67
|
+
if (attribute.name.local === 'substitutionGroup')
|
|
68
|
+
return outside('source-substitution', node);
|
|
69
|
+
if (['type', 'base', 'itemType', 'memberTypes'].includes(attribute.name.local)) {
|
|
70
|
+
const words = attribute.name.local === 'memberTypes' ? attribute.value.trim().split(/[\t\r\n ]+/) : [attribute.value];
|
|
71
|
+
for (const word of words) {
|
|
72
|
+
check();
|
|
73
|
+
const name = resolveLexicalQName(word, node);
|
|
74
|
+
if (name.namespace === XSD_NAMESPACE && (!isBuiltinType(name.local) || contextual.has(name.local)))
|
|
75
|
+
return outside('scalar-correspondence-scope', node);
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
if (['element', 'attribute'].includes(node.name.local) && syntaxAttribute(node, 'type') === undefined && syntaxAttribute(node, 'ref') === undefined
|
|
80
|
+
&& !syntaxElements(node).some(child => child.name.namespace === XSD_NAMESPACE && ['simpleType', 'complexType'].includes(child.name.local)))
|
|
81
|
+
return outside('implicit-opaque-declaration-type', node);
|
|
82
|
+
for (const child of syntaxElements(node)) {
|
|
83
|
+
check();
|
|
84
|
+
stack.push({ node: child, parent: node });
|
|
85
|
+
}
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
// @why #422 audits all actual named/inline/inherited scalar components after whole native formation.
|
|
89
|
+
// Native plans own flattened member order, QName resolution, facets and obligations; syntax alone grants no receipt.
|
|
90
|
+
const scalar = scalarSchemaAssessment(schemaScalarContext(actual));
|
|
91
|
+
for (const id of actual.members) {
|
|
92
|
+
check();
|
|
93
|
+
const found = actual.lookup(id);
|
|
94
|
+
if (found.kind !== 'found' || found.node.kind !== 'simpleType')
|
|
95
|
+
continue;
|
|
96
|
+
const owner = found.node, plan = scalar.ensure({ kind: 'local', target: id }, owner);
|
|
97
|
+
if (plan.obligations?.length)
|
|
98
|
+
return outside('scalar-source-obligations');
|
|
99
|
+
if (plan.variety === 'union') {
|
|
100
|
+
for (const reference of plan.members ?? []) {
|
|
101
|
+
check();
|
|
102
|
+
const member = scalar.ensure(reference, owner);
|
|
103
|
+
if (member.variety !== 'atomic' || member.primitive !== 'string' || member.obligations?.length)
|
|
104
|
+
return outside('scalar-union-correspondence-scope');
|
|
105
|
+
}
|
|
106
|
+
}
|
|
107
|
+
if (plan.variety === 'atomic' && plan.layers.some(layer => layer.facets.some(facet => !['enumeration', 'whiteSpace'].includes(facet.name)))
|
|
108
|
+
&& plan.primitive !== 'string' && plan.primitive !== 'decimal')
|
|
109
|
+
return outside('scalar-facet-correspondence-scope');
|
|
110
|
+
}
|
|
111
|
+
const closure = construction.closure;
|
|
112
|
+
const proof = 'proof' in closure ? closure.proof : [];
|
|
113
|
+
if (proof.length)
|
|
114
|
+
return outside('constructed-component-interpretation-unestablished');
|
|
115
|
+
if ('actualScalarSlots' in closure && closure.actualScalarSlots.length)
|
|
116
|
+
return outside('generated-scalar-correspondence');
|
|
117
|
+
let constructedContexts = 0;
|
|
118
|
+
if ('simple' in closure) {
|
|
119
|
+
assertSimpleExtensionConstruction(actual, closure);
|
|
120
|
+
if (closure.kind !== 'checked-simple-extension-construction' || closure.unresolved.length)
|
|
121
|
+
return outside('simple-extension-premises-unestablished');
|
|
122
|
+
if (closure.complex.frontier.scalarSlots.length || closure.simple.some(item => item.frontier.scalarSlots.length))
|
|
123
|
+
return outside('generated-scalar-correspondence');
|
|
124
|
+
// @why cos-ct-extends.1.5 asks for an in-principle relation, not replacement of the stored actual base.
|
|
125
|
+
// Finite allocation keeps original identities and then binds TYPE/SCOPE edges unchanged. Each E owns
|
|
126
|
+
// its new local attributes/uses. Its checked extension from anySimpleType and D's paired restriction
|
|
127
|
+
// clauses 1-4 and 5.2 establish the two-step relation on D's unchanged effective properties. The exact
|
|
128
|
+
// simple-extension spine, whole-actual and fresh-middle closure, and all typed/scalar debts are native
|
|
129
|
+
// prerequisites of this authenticated receipt. Source/S4S/builtin/property restrictions above still apply.
|
|
130
|
+
constructedContexts = closure.simple.length;
|
|
131
|
+
}
|
|
132
|
+
check();
|
|
133
|
+
budget.chargeWork(256);
|
|
134
|
+
const receipt = Object.freeze({ kind: 'component-correspondence', basis: COMPONENT_CORRESPONDENCE,
|
|
135
|
+
scope: 'ordinary-source-components', interpretations: input.schemas.length, constructedContexts,
|
|
136
|
+
usage: Object.freeze({ ...budget.usage() }) });
|
|
137
|
+
issued.set(receipt, construction);
|
|
138
|
+
return receipt;
|
|
139
|
+
});
|
|
140
|
+
}
|
|
@@ -0,0 +1,112 @@
|
|
|
1
|
+
import type { DirectOperationContract, DirectMessageRoot } from './directOperation.js';
|
|
2
|
+
import { expandProjectionValue } from './directValues.js';
|
|
3
|
+
import type { ComponentValueMapping, DirectApplicationValue, ProjectionValueReceipt } from './directValues.js';
|
|
4
|
+
import type { ComponentDecodedXml, DirectCodecFailure, DirectXmlLimits } from './directCodec.js';
|
|
5
|
+
import type { StandardSchemaElementDeclaration } from './standardSchemaComponents.js';
|
|
6
|
+
import type { NamespaceConstraint } from './wildcardAlgebra.js';
|
|
7
|
+
import type { ExpandedName, SyntaxElement } from '../loader/orderedSyntax.js';
|
|
8
|
+
import type { ResolverUsage } from './semanticBudget.js';
|
|
9
|
+
export interface ComponentRecordProjectionSpec {
|
|
10
|
+
readonly version: 'component-record-scope-v1';
|
|
11
|
+
readonly scope: 'records-with-declared-wrapper-scope';
|
|
12
|
+
/** Relative to the outer WSDL output element; the current family supports one direct wildcard boundary. */
|
|
13
|
+
readonly payloadPath: readonly ExpandedName[];
|
|
14
|
+
/** Relative to the companion output element; every step must select a unique declared native slot. */
|
|
15
|
+
readonly recordPath: readonly ExpandedName[];
|
|
16
|
+
/** Metadata is omitted; the wildcard is assessed in the explicit companion universe, not a merged wrapper universe. */
|
|
17
|
+
readonly opaqueExclusions: readonly Readonly<{
|
|
18
|
+
path: readonly ExpandedName[];
|
|
19
|
+
reason: 'standard-schema-metadata' | 'wrapper-declaration-universe';
|
|
20
|
+
}>[];
|
|
21
|
+
}
|
|
22
|
+
/** Explicit acknowledgement of the existing scope, with a record path only when it is a real choice.
|
|
23
|
+
* @since 1.1.7
|
|
24
|
+
*/
|
|
25
|
+
export interface ComponentRecordProjectionAssociation {
|
|
26
|
+
readonly scope: 'records-with-declared-wrapper-scope';
|
|
27
|
+
readonly recordPath?: readonly ExpandedName[];
|
|
28
|
+
}
|
|
29
|
+
export interface ComponentRecordProjection {
|
|
30
|
+
readonly kind: 'component-record-projection';
|
|
31
|
+
readonly version: 'component-record-scope-v1';
|
|
32
|
+
readonly direction: Readonly<{
|
|
33
|
+
kind: 'output';
|
|
34
|
+
}>;
|
|
35
|
+
readonly root: DirectMessageRoot;
|
|
36
|
+
readonly contextId: string;
|
|
37
|
+
readonly admitted: false;
|
|
38
|
+
readonly spec: ComponentRecordProjectionSpec;
|
|
39
|
+
readonly usage: ResolverUsage;
|
|
40
|
+
}
|
|
41
|
+
export interface ComponentRecordValue {
|
|
42
|
+
readonly kind: 'component-record-value';
|
|
43
|
+
readonly scope: 'records-with-declared-wrapper-scope';
|
|
44
|
+
readonly admitted: false;
|
|
45
|
+
readonly value: DirectApplicationValue;
|
|
46
|
+
readonly recordCount: number;
|
|
47
|
+
readonly companion: ProjectionValueReceipt;
|
|
48
|
+
}
|
|
49
|
+
export interface ComponentRecordDecodedXml {
|
|
50
|
+
readonly kind: 'component-record-decoded';
|
|
51
|
+
readonly admitted: false;
|
|
52
|
+
readonly payload: SyntaxElement;
|
|
53
|
+
readonly mapping: ComponentRecordProjection;
|
|
54
|
+
readonly validated: ComponentRecordValue;
|
|
55
|
+
readonly usage: ResolverUsage;
|
|
56
|
+
}
|
|
57
|
+
type Leaf = Readonly<{
|
|
58
|
+
kind: 'standard';
|
|
59
|
+
declaration: StandardSchemaElementDeclaration;
|
|
60
|
+
} | {
|
|
61
|
+
kind: 'boundary';
|
|
62
|
+
namespace: NamespaceConstraint;
|
|
63
|
+
}>;
|
|
64
|
+
type Owned = Readonly<{
|
|
65
|
+
outer: DirectOperationContract;
|
|
66
|
+
companion: DirectOperationContract;
|
|
67
|
+
parser: ComponentValueMapping;
|
|
68
|
+
mapping: ComponentValueMapping;
|
|
69
|
+
leaves: readonly Leaf[];
|
|
70
|
+
}>;
|
|
71
|
+
/** Identity-only dispatch; inspecting an unowned object's fields cannot select this mapping profile. */
|
|
72
|
+
export declare function isComponentRecordProjection(value: unknown): value is ComponentRecordProjection;
|
|
73
|
+
/** Build an explicit mapping from independently qualified native contracts.
|
|
74
|
+
* @remarks The current wrapper family is a unit sequence of fixed standard metadata elements and one strict
|
|
75
|
+
* wildcard. Native occurrence/EDC/UPA checks remain authoritative. The complete companion payload is retained;
|
|
76
|
+
* record paths establish intended record declarations, not permission to discard other payload fields.
|
|
77
|
+
* This is a buffered projection, not full-response XSD validation in a merged declaration universe or streaming.
|
|
78
|
+
* @returns An exact native projection or a specific unsupported/value/resource/cancellation result.
|
|
79
|
+
*/
|
|
80
|
+
export declare function createComponentRecordProjection(outer: DirectOperationContract, companion: DirectOperationContract, supplied: ComponentRecordProjectionSpec | ComponentRecordProjectionAssociation, options?: Readonly<{
|
|
81
|
+
signal?: AbortSignal;
|
|
82
|
+
}>): ComponentRecordProjection | DirectCodecFailure;
|
|
83
|
+
/** Native projection identity and exact outer contract are checked before reading projection fields. */
|
|
84
|
+
export declare function inspectComponentRecordProjection(projection: ComponentRecordProjection, outer?: DirectOperationContract): Owned;
|
|
85
|
+
export declare function inspectComponentRecordValue(value: ComponentRecordValue, projection: ComponentRecordProjection): ComponentRecordValue;
|
|
86
|
+
/** Revalidate the projected application value, including after JSON serialization.
|
|
87
|
+
* @remarks This uses the exact companion's existing inverse and scalar/structure owners. It establishes only
|
|
88
|
+
* projected-value validity; it cannot reconstruct or certify omitted wrapper metadata or SOAP protocol state.
|
|
89
|
+
*/
|
|
90
|
+
export declare function validateComponentRecordApplication(projection: ComponentRecordProjection, application: unknown, options?: Readonly<{
|
|
91
|
+
signal?: AbortSignal;
|
|
92
|
+
maxText?: number;
|
|
93
|
+
maxItems?: number;
|
|
94
|
+
}>): ReturnType<typeof expandProjectionValue>;
|
|
95
|
+
/** Decode once and validate the declared wrapper plus its explicitly selected companion payload.
|
|
96
|
+
* @remarks The complete companion value survives; only declared standard metadata is omitted. This function
|
|
97
|
+
* does not validate SOAP protocol grammar itself. Its protocol selector can choose only this projection or
|
|
98
|
+
* an actual declared fault mapping of the outer contract, always on nodes from the same parse.
|
|
99
|
+
*/
|
|
100
|
+
export declare function decodeComponentRecordXml(outer: DirectOperationContract, projection: ComponentRecordProjection, bytes: Uint8Array, options?: Readonly<{
|
|
101
|
+
signal?: AbortSignal;
|
|
102
|
+
limits?: DirectXmlLimits;
|
|
103
|
+
uri?: string;
|
|
104
|
+
componentResponseEncoding?: {
|
|
105
|
+
charset?: string;
|
|
106
|
+
};
|
|
107
|
+
selectPayload?: (root: SyntaxElement) => {
|
|
108
|
+
payload: SyntaxElement;
|
|
109
|
+
mapping: ComponentRecordProjection | ComponentValueMapping;
|
|
110
|
+
};
|
|
111
|
+
}>): ComponentRecordDecodedXml | ComponentDecodedXml | DirectCodecFailure;
|
|
112
|
+
export {};
|