typesxml
Version:
Open source XML library written in TypeScript
66 lines (65 loc) • 2.47 kB
TypeScript
/*******************************************************************************
* Copyright (c) 2023-2026 Maxprograms.
*
* This program and the accompanying materials
* are made available under the terms of the Eclipse Public License 1.0
* which accompanies this distribution, and is available at
* https://www.eclipse.org/org/documents/epl-v10.html
*
* Contributors:
* Maxprograms - initial API and implementation
*******************************************************************************/
import { Catalog } from '../Catalog.js';
import { XMLSchemaParser } from '../XMLSchemaParser.js';
import { XMLElement } from '../XMLElement.js';
import { SchemaGrammar } from './SchemaGrammar.js';
export declare class SchemaBuilder extends XMLSchemaParser {
private static readonly XSD_BUILT_IN_TYPES;
private modelGroupDefinitions;
private substitutionGroups;
private schemaBlockDefaults;
private schemaFinalDefaults;
private schemaFormDefaults;
private elementFormDefaultMap;
private earlyTypeHierarchy;
private schemaPrefixMaps;
constructor(catalog?: Catalog);
buildGrammar(schemaPath: string): SchemaGrammar;
protected registerSchemaComponents(schemaElement: XMLElement, targetNamespace?: string): void;
private buildElementDecl;
private buildContentModel;
private unwrapDerivation;
private buildParticle;
private buildParticleList;
private resolveGroupRef;
private collectAllAttributes;
private parseWildcardTokens;
private intersectNamespaceConstraints;
private intersectProcessContents;
private unionProcessContents;
private unionNamespaceConstraints;
private combineOwnerNsAfterIntersect;
private combineOwnerNsAfterUnion;
private gatherAttributes;
private buildAttributeDecl;
private resolveCharRefs;
private collectFacets;
private collectEnumeration;
private collectInlineFacets;
private collectPatterns;
private collectUnionAlternatives;
private applySimpleTypeConstraints;
private parseOccurs;
private findChildByLocalName;
private normalizeXsdType;
private getAttributeDisplayName;
private findPrefixForNamespace;
private resolveSimpleTypeBase;
private extractUnionMemberTypeNames;
private extractListItemTypeName;
private findTypeBase;
private getElementBlockSet;
private getElementDeclaredType;
private isMemberTypeBlocked;
private filterMembersByBlock;
}