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 or 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.26 2002/02/18 22:30:25 sandygao Exp $
Author:
Neil Graham, IBM

Inner Class Summary
protected  class XSDHandler.LocationResolver
           
 
Field Summary
 java.lang.String EMPTY_STRING
           
protected static java.lang.String ERROR_HANDLER
          Property identifier: error handler.
protected  java.util.Hashtable fNotationRegistry
           
static java.lang.String REDEF_IDENTIFIER
           
 
Constructor Summary
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, java.lang.String callerTNS, short referType)
           
 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  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(java.lang.String schemaNamespace, java.lang.String schemaHint, short referType)
           
 SchemaGrammar parseSchema(java.lang.String schemaNamespace, org.apache.xerces.xni.parser.XMLInputSource is, short referType)
           
 void reset(XMLErrorReporter errorReporter, org.apache.xerces.xni.parser.XMLEntityResolver entityResolver, SymbolTable symbolTable, java.lang.String externalSchemaLocation, java.lang.String externalNoNSSchemaLocation)
           
protected  void resolveKeyRefs()
           
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

ERROR_HANDLER

protected static final java.lang.String ERROR_HANDLER
Property identifier: error handler.

REDEF_IDENTIFIER

public static final java.lang.String REDEF_IDENTIFIER

EMPTY_STRING

public java.lang.String EMPTY_STRING

fNotationRegistry

protected java.util.Hashtable fNotationRegistry
Constructor Detail

XSDHandler

public XSDHandler(XSGrammarBucket gBucket)
Method Detail

parseSchema

public SchemaGrammar parseSchema(java.lang.String schemaNamespace,
                                 java.lang.String schemaHint,
                                 short referType)

parseSchema

public SchemaGrammar parseSchema(java.lang.String schemaNamespace,
                                 org.apache.xerces.xni.parser.XMLInputSource is,
                                 short referType)

constructTrees

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

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)

reset

public void reset(XMLErrorReporter errorReporter,
                  org.apache.xerces.xni.parser.XMLEntityResolver entityResolver,
                  SymbolTable symbolTable,
                  java.lang.String externalSchemaLocation,
                  java.lang.String externalNoNSSchemaLocation)

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-2002 Apache XML Project. All Rights Reserved.