## org.apache.xerces.impl.xs.traversers
Class XSDHandler

    java.lang.Object
      org.apache.xerces.impl.xs.traversers.XSDHandler

public class XSDHandler
extends java.lang.Object

The purpose of this class is to co-ordinate the construction of a grammar object corresponding to a schema. To do this, it must be prepared to parse several schema documents (for instance if the schema document originally referred to contains <include> or <redefined> information items). If any of the schemas imports a schema, other grammars may be constructed as a side-effect.

Version:
  $Id: XSDHandler.java,v 1.75 2004/02/03 17:27:45 sandygao Exp $
Author:
  Neil Graham, IBM, Pavani Mukthipudi, Sun Microsystems

Field Summary
`protected static java.lang.String` `ALLOW_JAVA_ENCODINGS` Feature identifier: allow java encodings
`protected static java.lang.String` `CONTINUE_AFTER_FATAL_ERROR` Feature identifier: continue after fatal error
`protected static boolean` `DEBUG_NODE_POOL`
`protected static java.lang.String` `DISALLOW_DOCTYPE` Feature: disallow doctype
`protected static java.lang.String` `ENTITY_MANAGER` Property identifier: entity manager.
`static java.lang.String` `ENTITY_RESOLVER` Property identifier: entity resolver.
`protected static java.lang.String` `ERROR_HANDLER` Property identifier: error handler.
`static java.lang.String` `ERROR_REPORTER` Property identifier: error reporter.
`protected XSDeclarationPool` `fDeclPool`
`protected java.util.Hashtable` `fNotationRegistry`
`protected static java.lang.String` `JAXP_SCHEMA_SOURCE` Property identifier: JAXP schema source.
`static java.lang.String` `REDEF_IDENTIFIER`
`protected static java.lang.String` `SECURITY_MANAGER`
`protected static java.lang.String` `STANDARD_URI_CONFORMANT_FEATURE` Feature identifier: allow java encodings
`static java.lang.String` `SYMBOL_TABLE` Property identifier: symbol table.
`static java.lang.String` `XMLGRAMMAR_POOL` Property identifier: grammar pool.

Constructor Summary
`XSDHandler()`
`XSDHandler(XSGrammarBucket gBucket)`

Method Summary
`protected void` `buildGlobalNameRegistries()`
`protected org.apache.xerces.impl.xs.traversers.XSDocumentInfo` `constructTrees(org.w3c.dom.Document schemaRoot, java.lang.String locationHint, XSDDescription desc)`
`SimpleLocator` `element2Locator(org.w3c.dom.Element e)` Extract location information from an Element node, and create a new SimpleLocator object from such information.
`boolean` `element2Locator(org.w3c.dom.Element e, SimpleLocator l)` Extract location information from an Element node, store such information in the passed-in SimpleLocator object, then return true.
`protected SchemaGrammar` `findGrammar(XSDDescription desc)` First try to find a grammar in the bucket, if failed, consult the grammar pool.
`protected java.lang.Object` `getGlobalDecl(org.apache.xerces.impl.xs.traversers.XSDocumentInfo currSchema, int declType, org.apache.xerces.xni.QName declToTraverse, org.w3c.dom.Element elmNode)`
`protected java.util.Hashtable` `getIDRegistry()`
`SchemaGrammar` `parseSchema(org.apache.xerces.xni.parser.XMLInputSource is, XSDDescription desc, java.util.Hashtable locationPairs)` This method initiates the parse of a schema.
`void` `reset(org.apache.xerces.xni.parser.XMLComponentManager componentManager)`
`protected void` `resolveKeyRefs()`
`void` `setDeclPool(XSDeclarationPool declPool)`
`protected void` `storeKeyRef(org.w3c.dom.Element keyrefToStore, org.apache.xerces.impl.xs.traversers.XSDocumentInfo schemaDoc, XSElementDecl currElemDecl)`
`protected void` `traverseSchemas()`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Field Detail

### ALLOW_JAVA_ENCODINGS

    protected static final java.lang.String ALLOW_JAVA_ENCODINGS

  Feature identifier: allow java encodings

  See Also:
    Constant Field Values

### CONTINUE_AFTER_FATAL_ERROR

    protected static final java.lang.String CONTINUE_AFTER_FATAL_ERROR

  Feature identifier: continue after fatal error

  See Also:
    Constant Field Values

### STANDARD_URI_CONFORMANT_FEATURE

    protected static final java.lang.String STANDARD_URI_CONFORMANT_FEATURE

  Feature identifier: allow java encodings

  See Also:
    Constant Field Values

### DISALLOW_DOCTYPE

    protected static final java.lang.String DISALLOW_DOCTYPE

  Feature: disallow doctype

  See Also:
    Constant Field Values

### ERROR_HANDLER

    protected static final java.lang.String ERROR_HANDLER

  Property identifier: error handler.

  See Also:
    Constant Field Values

### JAXP_SCHEMA_SOURCE

    protected static final java.lang.String JAXP_SCHEMA_SOURCE

  Property identifier: JAXP schema source.

  See Also:
    Constant Field Values

### ENTITY_RESOLVER

    public static final java.lang.String ENTITY_RESOLVER

  Property identifier: entity resolver.

  See Also:
    Constant Field Values

### ENTITY_MANAGER

    protected static final java.lang.String ENTITY_MANAGER

  Property identifier: entity manager.

  See Also:
    Constant Field Values

### ERROR_REPORTER

    public static final java.lang.String ERROR_REPORTER

  Property identifier: error reporter.

  See Also:
    Constant Field Values

### XMLGRAMMAR_POOL

    public static final java.lang.String XMLGRAMMAR_POOL

  Property identifier: grammar pool.

  See Also:
    Constant Field Values

### SYMBOL_TABLE

    public static final java.lang.String SYMBOL_TABLE

  Property identifier: symbol table.

  See Also:
    Constant Field Values

### SECURITY_MANAGER

    protected static final java.lang.String SECURITY_MANAGER

See Also:
  Constant Field Values

### DEBUG_NODE_POOL

    protected static final boolean DEBUG_NODE_POOL

See Also:
  Constant Field Values

### REDEF_IDENTIFIER

    public static final java.lang.String REDEF_IDENTIFIER

See Also:
  Constant Field Values

### fNotationRegistry

    protected java.util.Hashtable fNotationRegistry

### fDeclPool

    protected XSDeclarationPool fDeclPool

Constructor Detail

### XSDHandler

    public XSDHandler()

### XSDHandler

    public XSDHandler(XSGrammarBucket gBucket)

Method Detail

### parseSchema

    public SchemaGrammar parseSchema(org.apache.xerces.xni.parser.XMLInputSource is,
                                     XSDDescription desc,
                                     java.util.Hashtable locationPairs)
                              throws java.io.IOException

  This method initiates the parse of a schema. It will likely be called from the Validator and it will make the resulting grammar available; it returns a reference to this object just in case. A reset(XMLComponentManager) must be called before this methods is called.

  Parameters:
    `is` -
    `desc` -
    `locationPairs` -
  Returns:
  Throws:
    `java.io.IOException`

### findGrammar

    protected SchemaGrammar findGrammar(XSDDescription desc)

  First try to find a grammar in the bucket, if failed, consult the grammar pool. If a grammar is found in the pool, then add it (and all imported ones) into the bucket.

### constructTrees

    protected org.apache.xerces.impl.xs.traversers.XSDocumentInfo constructTrees(org.w3c.dom.Document schemaRoot,
                                                                                 java.lang.String locationHint,
                                                                                 XSDDescription desc)

### buildGlobalNameRegistries

    protected void buildGlobalNameRegistries()

### traverseSchemas

    protected void traverseSchemas()

### getGlobalDecl

    protected java.lang.Object getGlobalDecl(org.apache.xerces.impl.xs.traversers.XSDocumentInfo currSchema,
                                             int declType,
                                             org.apache.xerces.xni.QName declToTraverse,
                                             org.w3c.dom.Element elmNode)

### resolveKeyRefs

    protected void resolveKeyRefs()

### getIDRegistry

    protected java.util.Hashtable getIDRegistry()

### storeKeyRef

    protected void storeKeyRef(org.w3c.dom.Element keyrefToStore,
                               org.apache.xerces.impl.xs.traversers.XSDocumentInfo schemaDoc,
                               XSElementDecl currElemDecl)

### setDeclPool

    public void setDeclPool(XSDeclarationPool declPool)

### reset

    public void reset(org.apache.xerces.xni.parser.XMLComponentManager componentManager)

### element2Locator

    public SimpleLocator element2Locator(org.w3c.dom.Element e)

  Extract location information from an Element node, and create a new SimpleLocator object from such information. Returning null means no information can be retrieved from the element.

### element2Locator

    public boolean element2Locator(org.w3c.dom.Element e,
                                   SimpleLocator l)

  Extract location information from an Element node, store such information in the passed-in SimpleLocator object, then return true. Returning false means can't extract or store such information.

Copyright © 1999-2004 Apache XML Project. All Rights Reserved.