com.ctc.wstx.sr
Class VNsInputElementStack

java.lang.Object
  extended bycom.ctc.wstx.sr.InputElementStack
      extended bycom.ctc.wstx.sr.NsInputElementStack
          extended bycom.ctc.wstx.sr.VNsInputElementStack
All Implemented Interfaces:
AttributeInfo, InputConfigFlags, javax.xml.namespace.NamespaceContext

public class VNsInputElementStack
extends NsInputElementStack

Sub-class of NsInputElementStack that adds basic support for (DTD-based) validation of XML documents.


Field Summary
protected  java.util.Map mElemSpecs
          Map that contains element specifications from DTD; null for non-validating parsers.
 
Fields inherited from class com.ctc.wstx.sr.NsInputElementStack
mAttrCollector, mElements, mLastLocalName, mLastName, mLastNsURI, mLastPrefix, mNamespaces, mNsCounts, mPrefixXml, mPrefixXmlns, mSize
 
Fields inherited from class com.ctc.wstx.sr.InputElementStack
mReporter, UNKNOWN_ATTR_TYPE
 
Fields inherited from interface com.ctc.wstx.cfg.InputConfigFlags
CFG_CACHE_DTDS, CFG_COALESCE_TEXT, CFG_INTERN_NS_URIS, CFG_LAZY_PARSING, CFG_NAMESPACE_AWARE, CFG_NORMALIZE_ATTR_VALUES, CFG_NORMALIZE_LFS, CFG_PRESERVE_LOCATION, CFG_REPLACE_ENTITY_REFS, CFG_REPORT_ALL_TEXT_AS_CHARACTERS, CFG_REPORT_PROLOG_WS, CFG_SUPPORT_DTD, CFG_SUPPORT_DTDPP, CFG_SUPPORT_EXTERNAL_ENTITIES, CFG_VALIDATE_AGAINST_DTD, CFG_VALIDATE_TEXT_CHARS, CONTENT_ALLOW_DTD_ANY, CONTENT_ALLOW_MIXED, CONTENT_ALLOW_NON_MIXED, CONTENT_ALLOW_NONE, CONTENT_ALLOW_UNDEFINED
 
Constructor Summary
VNsInputElementStack(int initialSize, java.lang.String prefixXml, java.lang.String prefixXmlns, boolean normAttrs)
           
 
Method Summary
 java.lang.String getAttributeType(int index)
          Input element stack has to ask validator about this data; validator keeps track of attribute declarations for the current element
 int getIdAttributeIndex()
          Default implementation just indicates it does not know of such attributes; this because that requires DTD information that only some implementations have.
 int getNotationAttributeIndex()
          Default implementation just indicates it does not know of such attributes; this because that requires DTD information that only some implementations have.
 int pop()
          Method called by the stream reader to remove the topmost (start) element from the stack; called when an end element is encountered during parsing.
 int resolveElem(boolean internNsURIs)
          Method called to update information about top of the stack, with attribute information passed in.
 void setElementSpecs(java.util.Map elemSpecs, SymbolTable symbols, boolean normAttrs, java.util.Map generalEntities)
          Method called by the validating stream reader if and when it has read internal and/or external DTD subsets, and has thus parsed element specifications.
 
Methods inherited from class com.ctc.wstx.sr.NsInputElementStack
createNonTransientNsContext, findAttributeIndex, getAttrCollector, getAttributeCount, getCurrentNsCount, getDefaultNsURI, getDepth, getLocalName, getLocalNsPrefix, getLocalNsURI, getNamespaceURI, getNsURI, getPrefix, getPrefix, getPrefixes, getQName, getTopElementDesc, getTotalNsCount, isEmpty, isNamespaceAware, matches, push, push
 
Methods inherited from class com.ctc.wstx.sr.InputElementStack
connectReporter
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

mElemSpecs

protected java.util.Map mElemSpecs
Map that contains element specifications from DTD; null for non-validating parsers.

Constructor Detail

VNsInputElementStack

public VNsInputElementStack(int initialSize,
                            java.lang.String prefixXml,
                            java.lang.String prefixXmlns,
                            boolean normAttrs)
Method Detail

setElementSpecs

public void setElementSpecs(java.util.Map elemSpecs,
                            SymbolTable symbols,
                            boolean normAttrs,
                            java.util.Map generalEntities)
Method called by the validating stream reader if and when it has read internal and/or external DTD subsets, and has thus parsed element specifications.

Overrides:
setElementSpecs in class InputElementStack

pop

public int pop()
        throws WstxException
Description copied from class: InputElementStack
Method called by the stream reader to remove the topmost (start) element from the stack; called when an end element is encountered during parsing.

Overrides:
pop in class NsInputElementStack
Returns:
Validation state that should be effective for the parent element state
Throws:
WstxException

resolveElem

public int resolveElem(boolean internNsURIs)
                throws WstxException
Method called to update information about top of the stack, with attribute information passed in. Will resolve namespace references, and update namespace stack with information.

Overrides:
resolveElem in class NsInputElementStack
Returns:
Validation state that should be effective for the fully resolved element context
Throws:
WstxException

getAttributeType

public java.lang.String getAttributeType(int index)
Input element stack has to ask validator about this data; validator keeps track of attribute declarations for the current element

Overrides:
getAttributeType in class InputElementStack

getIdAttributeIndex

public int getIdAttributeIndex()
Description copied from class: InputElementStack
Default implementation just indicates it does not know of such attributes; this because that requires DTD information that only some implementations have.

Specified by:
getIdAttributeIndex in interface AttributeInfo
Overrides:
getIdAttributeIndex in class InputElementStack

getNotationAttributeIndex

public int getNotationAttributeIndex()
Description copied from class: InputElementStack
Default implementation just indicates it does not know of such attributes; this because that requires DTD information that only some implementations have.

Specified by:
getNotationAttributeIndex in interface AttributeInfo
Overrides:
getNotationAttributeIndex in class InputElementStack