This appendix contains the complete Java [Java] bindings for the XML Schema API.
The Java files are also available as java-binding.zip
package org.apache.xerces.xs;
public class XSException extends RuntimeException {
public XSException(short code, String message) {
super(message);
this.code = code;
}
public short code;
// ExceptionCode
public static final short NOT_SUPPORTED_ERR = 1;
public static final short INDEX_SIZE_ERR = 2;
}
package org.apache.xerces.xs;
public interface XSNamedMap {
public int getLength();
public XSObject item(int index);
public XSObject itemByName(String namespace,
String localName);
}
package org.apache.xerces.xs;
public interface XSObjectList {
public int getLength();
public XSObject item(int index);
}
package org.apache.xerces.xs;
public interface XSNamespaceItemList {
public int getLength();
public XSNamespaceItem item(int index);
}
package org.apache.xerces.xs;
public interface StringList {
public int getLength();
public boolean contains(String item);
public String item(int index);
}
package org.apache.xerces.xs;
import org.w3c.dom.ls.LSInput;
public interface LSInputList {
public int getLength();
public LSInput item(int index);
}
package org.apache.xerces.xs;
public interface ShortList {
public int getLength();
public boolean contains(short item);
public short item(int index)
throws XSException;
}
package org.apache.xerces.xs;
public interface XSObject {
public short getType();
public String getName();
public String getNamespace();
public XSNamespaceItem getNamespaceItem();
}
package org.apache.xerces.xs;
public interface XSConstants {
// XML Schema Components
public static final short ATTRIBUTE_DECLARATION = 1;
public static final short ELEMENT_DECLARATION = 2;
public static final short TYPE_DEFINITION = 3;
public static final short ATTRIBUTE_USE = 4;
public static final short ATTRIBUTE_GROUP = 5;
public static final short MODEL_GROUP_DEFINITION = 6;
public static final short MODEL_GROUP = 7;
public static final short PARTICLE = 8;
public static final short WILDCARD = 9;
public static final short IDENTITY_CONSTRAINT = 10;
public static final short NOTATION_DECLARATION = 11;
public static final short ANNOTATION = 12;
public static final short FACET = 13;
public static final short MULTIVALUE_FACET = 14;
// Derivation constants
public static final short DERIVATION_NONE = 0;
public static final short DERIVATION_EXTENSION = 1;
public static final short DERIVATION_RESTRICTION = 2;
public static final short DERIVATION_SUBSTITUTION = 4;
public static final short DERIVATION_UNION = 8;
public static final short DERIVATION_LIST = 16;
// Scope
public static final short SCOPE_ABSENT = 0;
public static final short SCOPE_GLOBAL = 1;
public static final short SCOPE_LOCAL = 2;
// Value Constraint
public static final short VC_NONE = 0;
public static final short VC_DEFAULT = 1;
public static final short VC_FIXED = 2;
// Built-in types: primitive and derived
public static final short ANYSIMPLETYPE_DT = 1;
public static final short STRING_DT = 2;
public static final short BOOLEAN_DT = 3;
public static final short DECIMAL_DT = 4;
public static final short FLOAT_DT = 5;
public static final short DOUBLE_DT = 6;
public static final short DURATION_DT = 7;
public static final short DATETIME_DT = 8;
public static final short TIME_DT = 9;
public static final short DATE_DT = 10;
public static final short GYEARMONTH_DT = 11;
public static final short GYEAR_DT = 12;
public static final short GMONTHDAY_DT = 13;
public static final short GDAY_DT = 14;
public static final short GMONTH_DT = 15;
public static final short HEXBINARY_DT = 16;
public static final short BASE64BINARY_DT = 17;
public static final short ANYURI_DT = 18;
public static final short QNAME_DT = 19;
public static final short NOTATION_DT = 20;
public static final short NORMALIZEDSTRING_DT = 21;
public static final short TOKEN_DT = 22;
public static final short LANGUAGE_DT = 23;
public static final short NMTOKEN_DT = 24;
public static final short NAME_DT = 25;
public static final short NCNAME_DT = 26;
public static final short ID_DT = 27;
public static final short IDREF_DT = 28;
public static final short ENTITY_DT = 29;
public static final short INTEGER_DT = 30;
public static final short NONPOSITIVEINTEGER_DT = 31;
public static final short NEGATIVEINTEGER_DT = 32;
public static final short LONG_DT = 33;
public static final short INT_DT = 34;
public static final short SHORT_DT = 35;
public static final short BYTE_DT = 36;
public static final short NONNEGATIVEINTEGER_DT = 37;
public static final short UNSIGNEDLONG_DT = 38;
public static final short UNSIGNEDINT_DT = 39;
public static final short UNSIGNEDSHORT_DT = 40;
public static final short UNSIGNEDBYTE_DT = 41;
public static final short POSITIVEINTEGER_DT = 42;
public static final short LISTOFUNION_DT = 43;
public static final short LIST_DT = 44;
public static final short UNAVAILABLE_DT = 45;
}
package org.apache.xerces.xs;
public interface XSModel {
public StringList getNamespaces();
public XSNamespaceItemList getNamespaceItems();
public XSNamedMap getComponents(short objectType);
public XSNamedMap getComponentsByNamespace(short objectType,
String namespace);
public XSObjectList getAnnotations();
public XSElementDeclaration getElementDeclaration(String namespace,
String name);
public XSAttributeDeclaration getAttributeDeclaration(String namespace,
String name);
public XSTypeDefinition getTypeDefinition(String namespace,
String name);
public XSAttributeGroupDefinition getAttributeGroup(String namespace,
String name);
public XSModelGroupDefinition getModelGroupDefinition(String namespace,
String name);
public XSNotationDeclaration getNotationDeclaration(String namespace,
String name);
}
package org.apache.xerces.xs;
public interface XSNamespaceItem {
public String getSchemaNamespace();
public XSNamedMap getComponents(short objectType);
public XSObjectList getAnnotations();
public XSElementDeclaration getElementDeclaration(String name);
public XSAttributeDeclaration getAttributeDeclaration(String name);
public XSTypeDefinition getTypeDefinition(String name);
public XSAttributeGroupDefinition getAttributeGroup(String name);
public XSModelGroupDefinition getModelGroupDefinition(String name);
public XSNotationDeclaration getNotationDeclaration(String name);
public StringList getDocumentLocations();
}
package org.apache.xerces.xs;
public interface XSAttributeDeclaration extends XSObject {
public XSSimpleTypeDefinition getTypeDefinition();
public short getScope();
public XSComplexTypeDefinition getEnclosingCTDefinition();
public short getConstraintType();
public String getConstraintValue();
public Object getActualVC()
throws XSException;
public short getActualVCType()
throws XSException;
public ShortList getItemValueTypes()
throws XSException;
public XSAnnotation getAnnotation();
}
package org.apache.xerces.xs;
public interface XSElementDeclaration extends XSTerm {
public XSTypeDefinition getTypeDefinition();
public short getScope();
public XSComplexTypeDefinition getEnclosingCTDefinition();
public short getConstraintType();
public String getConstraintValue();
public Object getActualVC()
throws XSException;
public short getActualVCType()
throws XSException;
public ShortList getItemValueTypes()
throws XSException;
public boolean getNillable();
public XSNamedMap getIdentityConstraints();
public XSElementDeclaration getSubstitutionGroupAffiliation();
public boolean isSubstitutionGroupExclusion(short exclusion);
public short getSubstitutionGroupExclusions();
public boolean isDisallowedSubstitution(short disallowed);
public short getDisallowedSubstitutions();
public boolean getAbstract();
public XSAnnotation getAnnotation();
}
package org.apache.xerces.xs;
public interface XSTypeDefinition extends XSObject {
public static final short COMPLEX_TYPE = 15;
public static final short SIMPLE_TYPE = 16;
public short getTypeCategory();
public XSTypeDefinition getBaseType();
public boolean isFinal(short restriction);
public short getFinal();
public boolean getAnonymous();
public boolean derivedFromType(XSTypeDefinition ancestorType,
short derivationMethod);
public boolean derivedFrom(String namespace,
String name,
short derivationMethod);
}
package org.apache.xerces.xs;
public interface XSComplexTypeDefinition extends XSTypeDefinition {
// Content Model Types
public static final short CONTENTTYPE_EMPTY = 0;
public static final short CONTENTTYPE_SIMPLE = 1;
public static final short CONTENTTYPE_ELEMENT = 2;
public static final short CONTENTTYPE_MIXED = 3;
public short getDerivationMethod();
public boolean getAbstract();
public XSObjectList getAttributeUses();
public XSWildcard getAttributeWildcard();
public short getContentType();
public XSSimpleTypeDefinition getSimpleType();
public XSParticle getParticle();
public boolean isProhibitedSubstitution(short restriction);
public short getProhibitedSubstitutions();
public XSObjectList getAnnotations();
}
package org.apache.xerces.xs;
public interface XSSimpleTypeDefinition extends XSTypeDefinition {
// Variety definitions
public static final short VARIETY_ABSENT = 0;
public static final short VARIETY_ATOMIC = 1;
public static final short VARIETY_LIST = 2;
public static final short VARIETY_UNION = 3;
// Facets
public static final short FACET_NONE = 0;
public static final short FACET_LENGTH = 1;
public static final short FACET_MINLENGTH = 2;
public static final short FACET_MAXLENGTH = 4;
public static final short FACET_PATTERN = 8;
public static final short FACET_WHITESPACE = 16;
public static final short FACET_MAXINCLUSIVE = 32;
public static final short FACET_MAXEXCLUSIVE = 64;
public static final short FACET_MINEXCLUSIVE = 128;
public static final short FACET_MININCLUSIVE = 256;
public static final short FACET_TOTALDIGITS = 512;
public static final short FACET_FRACTIONDIGITS = 1024;
public static final short FACET_ENUMERATION = 2048;
public static final short ORDERED_FALSE = 0;
public static final short ORDERED_PARTIAL = 1;
public static final short ORDERED_TOTAL = 2;
public short getVariety();
public XSSimpleTypeDefinition getPrimitiveType();
public short getBuiltInKind();
public XSSimpleTypeDefinition getItemType();
public XSObjectList getMemberTypes();
public short getDefinedFacets();
public boolean isDefinedFacet(short facetName);
public short getFixedFacets();
public boolean isFixedFacet(short facetName);
public String getLexicalFacetValue(short facetName);
public StringList getLexicalEnumeration();
public StringList getLexicalPattern();
public short getOrdered();
public boolean getFinite();
public boolean getBounded();
public boolean getNumeric();
public XSObjectList getFacets();
public XSObjectList getMultiValueFacets();
public XSObjectList getAnnotations();
}
package org.apache.xerces.xs;
public interface XSFacet extends XSObject {
public short getFacetKind();
public String getLexicalFacetValue();
public boolean getFixed();
public XSAnnotation getAnnotation();
}
package org.apache.xerces.xs;
public interface XSMultiValueFacet extends XSObject {
public short getFacetKind();
public StringList getLexicalFacetValues();
public XSObjectList getAnnotations();
}
package org.apache.xerces.xs;
public interface XSParticle extends XSObject {
public int getMinOccurs();
public int getMaxOccurs();
public boolean getMaxOccursUnbounded();
public XSTerm getTerm();
}
package org.apache.xerces.xs;
public interface XSTerm extends XSObject {
}
package org.apache.xerces.xs;
public interface XSModelGroup extends XSTerm {
// Content model compositors
public static final short COMPOSITOR_SEQUENCE = 1;
public static final short COMPOSITOR_CHOICE = 2;
public static final short COMPOSITOR_ALL = 3;
public short getCompositor();
public XSObjectList getParticles();
public XSAnnotation getAnnotation();
}
package org.apache.xerces.xs;
public interface XSModelGroupDefinition extends XSObject {
public XSModelGroup getModelGroup();
public XSAnnotation getAnnotation();
}
package org.apache.xerces.xs;
public interface XSAttributeGroupDefinition extends XSObject {
public XSObjectList getAttributeUses();
public XSWildcard getAttributeWildcard();
public XSAnnotation getAnnotation();
}
package org.apache.xerces.xs;
public interface XSAttributeUse extends XSObject {
public boolean getRequired();
public XSAttributeDeclaration getAttrDeclaration();
public short getConstraintType();
public String getConstraintValue();
public Object getActualVC()
throws XSException;
public short getActualVCType()
throws XSException;
public ShortList getItemValueTypes()
throws XSException;
}
package org.apache.xerces.xs;
public interface XSWildcard extends XSTerm {
// Namespace Constraint
public static final short NSCONSTRAINT_ANY = 1;
public static final short NSCONSTRAINT_NOT = 2;
public static final short NSCONSTRAINT_LIST = 3;
// Process contents
public static final short PC_STRICT = 1;
public static final short PC_SKIP = 2;
public static final short PC_LAX = 3;
public short getConstraintType();
public StringList getNsConstraintList();
public short getProcessContents();
public XSAnnotation getAnnotation();
}
package org.apache.xerces.xs;
public interface XSIDCDefinition extends XSObject {
// Identity Constraints
public static final short IC_KEY = 1;
public static final short IC_KEYREF = 2;
public static final short IC_UNIQUE = 3;
public short getCategory();
public String getSelectorStr();
public StringList getFieldStrs();
public XSIDCDefinition getRefKey();
public XSObjectList getAnnotations();
}
package org.apache.xerces.xs;
public interface XSNotationDeclaration extends XSObject {
public String getSystemId();
public String getPublicId();
public XSAnnotation getAnnotation();
}
package org.apache.xerces.xs;
public interface XSAnnotation extends XSObject {
// TargetType
public static final short W3C_DOM_ELEMENT = 1;
public static final short SAX_CONTENTHANDLER = 2;
public static final short W3C_DOM_DOCUMENT = 3;
public boolean writeAnnotation(Object target,
short targetType);
public String getAnnotationString();
}
package org.apache.xerces.xs;
public interface ItemPSVI {
public static final short VALIDITY_NOTKNOWN = 0;
public static final short VALIDITY_INVALID = 1;
public static final short VALIDITY_VALID = 2;
public static final short VALIDATION_NONE = 0;
public static final short VALIDATION_PARTIAL = 1;
public static final short VALIDATION_FULL = 2;
public String getValidationContext();
public short getValidity();
public short getValidationAttempted();
public StringList getErrorCodes();
public String getSchemaNormalizedValue();
public Object getActualNormalizedValue()
throws XSException;
public short getActualNormalizedValueType()
throws XSException;
public ShortList getItemValueTypes()
throws XSException;
public XSTypeDefinition getTypeDefinition();
public XSSimpleTypeDefinition getMemberTypeDefinition();
public String getSchemaDefault();
public boolean getSchemaSpecified();
}
package org.apache.xerces.xs;
public interface ElementPSVI extends ItemPSVI {
public XSElementDeclaration getElementDeclaration();
public XSNotationDeclaration getNotation();
public boolean getNil();
public XSModel getSchemaInformation();
}
package org.apache.xerces.xs;
public interface AttributePSVI extends ItemPSVI {
public XSAttributeDeclaration getAttributeDeclaration();
}
package org.apache.xerces.xs;
public interface PSVIProvider {
public ElementPSVI getElementPSVI();
public AttributePSVI getAttributePSVI(int index);
public AttributePSVI getAttributePSVIByName(String uri,
String localname);
}
package org.apache.xerces.xs;
public interface XSImplementation {
public StringList getRecognizedVersions();
public void setRecognizedVersions(StringList recognizedVersions);
public XSLoader createXSLoader(StringList versions)
throws XSException;
}
package org.apache.xerces.xs;
import org.w3c.dom.DOMConfiguration;
import org.w3c.dom.ls.LSInput;
public interface XSLoader {
public DOMConfiguration getConfig();
public XSModel loadURIList(StringList uriList);
public XSModel loadInputList(LSInputList is);
public XSModel loadURI(String uri);
public XSModel load(LSInput is);
}