org.apache.xerces.impl.xs
Class XSDDescription

java.lang.Object
  extended by org.apache.xerces.util.XMLResourceIdentifierImpl
      extended by org.apache.xerces.impl.xs.XSDDescription
All Implemented Interfaces:
XMLGrammarDescription, XMLSchemaDescription, XMLResourceIdentifier

public class XSDDescription
extends XMLResourceIdentifierImpl
implements XMLSchemaDescription

All information specific to XML Schema grammars.

Version:
$Id: XSDDescription.java 446734 2006-09-15 20:51:23Z mrglavas $
Author:
Neil Graham, IBM, Neeraj Bajaj, SUN Microsystems.

Field Summary
static short CONTEXT_ATTRIBUTE
          Indicate that the parse of the current schema document is triggered by the occurrence of an attribute whose namespace is the target namespace of this schema document.
static short CONTEXT_ELEMENT
          Indicate that the parse of the current schema document is triggered by the occurrence of an element whose namespace is the target namespace of this schema document.
static short CONTEXT_IMPORT
          Indicate that the current schema document is ed by another schema document.
static short CONTEXT_INCLUDE
          Indicate that the current schema document is d by another schema document.
static short CONTEXT_INITIALIZE
          Indicate that this description was just initialized.
static short CONTEXT_INSTANCE
          Indicate that the parse of the current schema document is triggered by xsi:schemaLocation/noNamespaceSchemaLocation attribute(s) in the instance document.
static short CONTEXT_PREPARSE
          Indicate that the current schema document is being preparsed.
static short CONTEXT_REDEFINE
          Indicate that the current schema document is d by another schema document.
static short CONTEXT_XSITYPE
          Indicate that the parse of the current schema document is triggered by the occurrence of an "xsi:type" attribute, whose value (a QName) has the target namespace of this schema document as its namespace.
 
Fields inherited from interface org.apache.xerces.xni.grammars.XMLGrammarDescription
XML_DTD, XML_SCHEMA
 
Constructor Summary
XSDDescription()
           
 
Method Summary
 boolean equals(java.lang.Object descObj)
          Compares this grammar with the given grammar.
 boolean fromInstance()
           
 XMLAttributes getAttributes()
          If a call is triggered by an element/attribute/xsi:type in the instance, this call returns all attribute of such element (or enclosing element).
 short getContextType()
          Get the context.
 QName getEnclosingElementName()
          If a call is triggered by an attribute or xsi:type, then this mehtod returns the enclosing element of such element.
 java.lang.String getGrammarType()
          the type of the grammar (e.g., DTD or XSD);
 java.lang.String[] getLocationHints()
          For import and references from the instance document, it's possible to have multiple hints for one namespace.
 java.lang.String getTargetNamespace()
          If the context is "include" or "redefine", then return the target namespace of the enclosing schema document; otherwise, the expected target namespace of this document.
 QName getTriggeringComponent()
          If a call is triggered by an element/attribute/xsi:type in the instance, this call returns the name of such triggering component: the name of the element/attribute, or the value of the xsi:type.
 int hashCode()
          Returns the hash code of this grammar
 XSDDescription makeClone()
           
 void reset()
          resets all the fields
 void setAttributes(XMLAttributes attributes)
           
 void setContextType(short contextType)
           
 void setEnclosingElementName(QName enclosedElementName)
           
 void setLocationHints(java.lang.String[] locationHints)
           
 void setTargetNamespace(java.lang.String targetNamespace)
           
 void setTriggeringComponent(QName triggeringComponent)
           
 
Methods inherited from class org.apache.xerces.util.XMLResourceIdentifierImpl
clear, getBaseSystemId, getExpandedSystemId, getLiteralSystemId, getNamespace, getPublicId, setBaseSystemId, setExpandedSystemId, setLiteralSystemId, setNamespace, setPublicId, setValues, setValues, toString
 
Methods inherited from class java.lang.Object
getClass, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface org.apache.xerces.xni.XMLResourceIdentifier
getBaseSystemId, getExpandedSystemId, getLiteralSystemId, getNamespace, getPublicId, setBaseSystemId, setExpandedSystemId, setLiteralSystemId, setNamespace, setPublicId
 

Field Detail

CONTEXT_INITIALIZE

public static final short CONTEXT_INITIALIZE
Indicate that this description was just initialized.

See Also:
Constant Field Values

CONTEXT_INCLUDE

public static final short CONTEXT_INCLUDE
Indicate that the current schema document is d by another schema document.

See Also:
Constant Field Values

CONTEXT_REDEFINE

public static final short CONTEXT_REDEFINE
Indicate that the current schema document is d by another schema document.

See Also:
Constant Field Values

CONTEXT_IMPORT

public static final short CONTEXT_IMPORT
Indicate that the current schema document is ed by another schema document.

See Also:
Constant Field Values

CONTEXT_PREPARSE

public static final short CONTEXT_PREPARSE
Indicate that the current schema document is being preparsed.

See Also:
Constant Field Values

CONTEXT_INSTANCE

public static final short CONTEXT_INSTANCE
Indicate that the parse of the current schema document is triggered by xsi:schemaLocation/noNamespaceSchemaLocation attribute(s) in the instance document. This value is only used if we don't defer the loading of schema documents.

See Also:
Constant Field Values

CONTEXT_ELEMENT

public static final short CONTEXT_ELEMENT
Indicate that the parse of the current schema document is triggered by the occurrence of an element whose namespace is the target namespace of this schema document. This value is only used if we do defer the loading of schema documents until a component from that namespace is referenced from the instance.

See Also:
Constant Field Values

CONTEXT_ATTRIBUTE

public static final short CONTEXT_ATTRIBUTE
Indicate that the parse of the current schema document is triggered by the occurrence of an attribute whose namespace is the target namespace of this schema document. This value is only used if we do defer the loading of schema documents until a component from that namespace is referenced from the instance.

See Also:
Constant Field Values

CONTEXT_XSITYPE

public static final short CONTEXT_XSITYPE
Indicate that the parse of the current schema document is triggered by the occurrence of an "xsi:type" attribute, whose value (a QName) has the target namespace of this schema document as its namespace. This value is only used if we do defer the loading of schema documents until a component from that namespace is referenced from the instance.

See Also:
Constant Field Values
Constructor Detail

XSDDescription

public XSDDescription()
Method Detail

getGrammarType

public java.lang.String getGrammarType()
the type of the grammar (e.g., DTD or XSD);

Specified by:
getGrammarType in interface XMLGrammarDescription
Returns:
the type of this grammar
See Also:
Grammar

getContextType

public short getContextType()
Get the context. The returned value is one of the pre-defined CONTEXT_xxx constants.

Specified by:
getContextType in interface XMLSchemaDescription
Returns:
the value indicating the context

getTargetNamespace

public java.lang.String getTargetNamespace()
If the context is "include" or "redefine", then return the target namespace of the enclosing schema document; otherwise, the expected target namespace of this document.

Specified by:
getTargetNamespace in interface XMLSchemaDescription
Returns:
the expected/enclosing target namespace

getLocationHints

public java.lang.String[] getLocationHints()
For import and references from the instance document, it's possible to have multiple hints for one namespace. So this method returns an array, which contains all location hints.

Specified by:
getLocationHints in interface XMLSchemaDescription
Returns:
an array of all location hints associated to the expected target namespace

getTriggeringComponent

public QName getTriggeringComponent()
If a call is triggered by an element/attribute/xsi:type in the instance, this call returns the name of such triggering component: the name of the element/attribute, or the value of the xsi:type.

Specified by:
getTriggeringComponent in interface XMLSchemaDescription
Returns:
the name of the triggering component

getEnclosingElementName

public QName getEnclosingElementName()
If a call is triggered by an attribute or xsi:type, then this mehtod returns the enclosing element of such element.

Specified by:
getEnclosingElementName in interface XMLSchemaDescription
Returns:
the name of the enclosing element

getAttributes

public XMLAttributes getAttributes()
If a call is triggered by an element/attribute/xsi:type in the instance, this call returns all attribute of such element (or enclosing element).

Specified by:
getAttributes in interface XMLSchemaDescription
Returns:
all attributes of the tiggering/enclosing element

fromInstance

public boolean fromInstance()

equals

public boolean equals(java.lang.Object descObj)
Compares this grammar with the given grammar. Currently, we compare the target namespaces.

Overrides:
equals in class java.lang.Object
Parameters:
descObj - The description of the grammar to be compared with
Returns:
True if they are equal, else false

hashCode

public int hashCode()
Returns the hash code of this grammar

Overrides:
hashCode in class XMLResourceIdentifierImpl
Returns:
The hash code

setContextType

public void setContextType(short contextType)

setTargetNamespace

public void setTargetNamespace(java.lang.String targetNamespace)

setLocationHints

public void setLocationHints(java.lang.String[] locationHints)

setTriggeringComponent

public void setTriggeringComponent(QName triggeringComponent)

setEnclosingElementName

public void setEnclosingElementName(QName enclosedElementName)

setAttributes

public void setAttributes(XMLAttributes attributes)

reset

public void reset()
resets all the fields


makeClone

public XSDDescription makeClone()