XSConstraints (Xerces2 Implementation)
Date: 2016-02-03

org.apache.xerces.impl.xs

## Class XSConstraints

- java.lang.Object
- - org.apache.xerces.impl.xs.XSConstraints

-     public class XSConstraints
      extends java.lang.Object

  Constraints shared by traversers and validator
  Version:
    $Id: XSConstraints.java 774786 2009-05-14 14:31:10Z sandygao $
  Author:
    Sandy Gao, IBM

  # INTERNAL:

    Usage of this class is not supported. It may be altered or removed at any time.

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `XSConstraints()`

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `static boolean` | `checkComplexDerivationOk(XSComplexTypeDecl derived, org.apache.xerces.xs.XSTypeDefinition base, short block)` check whether complex type derived is valid derived from base, given a subset of {restriction, extension}.
    `static void` | `checkElementDeclsConsistent(XSComplexTypeDecl type, XSParticleDecl particle, SymbolHash elemDeclHash, SubstitutionGroupHandler sgHandler)`
    `static boolean` | `checkSimpleDerivationOk(XSSimpleType derived, org.apache.xerces.xs.XSTypeDefinition base, short block)` check whether simple type derived is valid derived from base, given a subset of {restriction, extension}.
    `static boolean` | `checkTypeDerivationOk(org.apache.xerces.xs.XSTypeDefinition derived, org.apache.xerces.xs.XSTypeDefinition base, short block)` check whether derived is valid derived from base, given a subset of {restriction, extension}.B
    `static java.lang.Object` | `ElementDefaultValidImmediate(org.apache.xerces.xs.XSTypeDefinition type, java.lang.String value, ValidationContext context, ValidatedInfo vinfo)` check whether a value is a valid default for some type returns the compiled form of the value The parameter value could be either a String or a ValidatedInfo object
    `static void` | `findElemInTable(XSComplexTypeDecl type, XSElementDecl elem, SymbolHash elemDeclHash)`
    `static void` | `fullSchemaChecking(XSGrammarBucket grammarBucket, SubstitutionGroupHandler SGHandler, CMBuilder cmBuilder, XMLErrorReporter errorReporter)` used to check the 3 constraints against each complex type (should be each model group): Unique Particle Attribution, Particle Derivation (Restriction), Element Declrations Consistent.
    `static XSParticleDecl` | `getEmptySequence()`
    `static boolean` | `overlapUPA(java.lang.Object decl1, java.lang.Object decl2, SubstitutionGroupHandler sgHandler)`
    `static boolean` | `overlapUPA(XSElementDecl element1, XSElementDecl element2, SubstitutionGroupHandler sgHandler)`
    `static boolean` | `overlapUPA(XSElementDecl element, XSWildcardDecl wildcard, SubstitutionGroupHandler sgHandler)`
    `static boolean` | `overlapUPA(XSWildcardDecl wildcard1, XSWildcardDecl wildcard2)`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Constructor Detail

    - #### XSConstraints

          public XSConstraints()

  - ### Method Detail

    - #### getEmptySequence

          public static XSParticleDecl getEmptySequence()

    - #### checkTypeDerivationOk

          public static boolean checkTypeDerivationOk(org.apache.xerces.xs.XSTypeDefinition derived,
                                      org.apache.xerces.xs.XSTypeDefinition base,
                                      short block)

      check whether derived is valid derived from base, given a subset of {restriction, extension}.B

    - #### checkSimpleDerivationOk

          public static boolean checkSimpleDerivationOk(XSSimpleType derived,
                                        org.apache.xerces.xs.XSTypeDefinition base,
                                        short block)

      check whether simple type derived is valid derived from base, given a subset of {restriction, extension}.

    - #### checkComplexDerivationOk

          public static boolean checkComplexDerivationOk(XSComplexTypeDecl derived,
                                         org.apache.xerces.xs.XSTypeDefinition base,
                                         short block)

      check whether complex type derived is valid derived from base, given a subset of {restriction, extension}.

    - #### ElementDefaultValidImmediate

          public static java.lang.Object ElementDefaultValidImmediate(org.apache.xerces.xs.XSTypeDefinition type,
                                                      java.lang.String value,
                                                      ValidationContext context,
                                                      ValidatedInfo vinfo)

      check whether a value is a valid default for some type returns the compiled form of the value The parameter value could be either a String or a ValidatedInfo object

    - #### fullSchemaChecking

          public static void fullSchemaChecking(XSGrammarBucket grammarBucket,
                                SubstitutionGroupHandler SGHandler,
                                CMBuilder cmBuilder,
                                XMLErrorReporter errorReporter)

      used to check the 3 constraints against each complex type (should be each model group): Unique Particle Attribution, Particle Derivation (Restriction), Element Declrations Consistent.

    - #### checkElementDeclsConsistent

          public static void checkElementDeclsConsistent(XSComplexTypeDecl type,
                                         XSParticleDecl particle,
                                         SymbolHash elemDeclHash,
                                         SubstitutionGroupHandler sgHandler)
                                                  throws XMLSchemaException

      Throws:
        `XMLSchemaException`

    - #### findElemInTable

          public static void findElemInTable(XSComplexTypeDecl type,
                             XSElementDecl elem,
                             SymbolHash elemDeclHash)
                                      throws XMLSchemaException

      Throws:
        `XMLSchemaException`

    - #### overlapUPA

          public static boolean overlapUPA(XSElementDecl element1,
                           XSElementDecl element2,
                           SubstitutionGroupHandler sgHandler)

    - #### overlapUPA

          public static boolean overlapUPA(XSElementDecl element,
                           XSWildcardDecl wildcard,
                           SubstitutionGroupHandler sgHandler)

    - #### overlapUPA

          public static boolean overlapUPA(XSWildcardDecl wildcard1,
                           XSWildcardDecl wildcard2)

    - #### overlapUPA

          public static boolean overlapUPA(java.lang.Object decl1,
                           java.lang.Object decl2,
                           SubstitutionGroupHandler sgHandler)

Copyright © 1999-2010 The Apache Software Foundation. All Rights Reserved.