org.apache.xerces.xni.parser
Interface XMLDTDScanner

All Superinterfaces:
XMLDTDContentModelSource, XMLDTDSource
All Known Implementing Classes:
XML11DTDScannerImpl, XMLDTDScannerImpl

public interface XMLDTDScanner
extends XMLDTDSource, XMLDTDContentModelSource

This interface defines a generic DTD scanner. This interface allows a scanner to be used interchangably in existing parser configurations.

If the parser configuration uses a DTD scanner that implements this interface, components should be able to query the scanner instance from the component manager using the following property identifier:

"http://apache.org/xml/properties/internal/dtd-scanner"

Version:
$Id: XMLDTDScanner.java 447244 2006-09-18 05:20:40Z mrglavas $
Author:
Andy Clark, IBM

Method Summary
 boolean scanDTDExternalSubset(boolean complete)
          Scans the external subset of the document.
 boolean scanDTDInternalSubset(boolean complete, boolean standalone, boolean hasExternalSubset)
          Scans the internal subset of the document.
 void setInputSource(XMLInputSource inputSource)
          Sets the input source.
 
Methods inherited from interface org.apache.xerces.xni.parser.XMLDTDSource
getDTDHandler, setDTDHandler
 
Methods inherited from interface org.apache.xerces.xni.parser.XMLDTDContentModelSource
getDTDContentModelHandler, setDTDContentModelHandler
 

Method Detail

setInputSource

void setInputSource(XMLInputSource inputSource)
                    throws java.io.IOException
Sets the input source.

Parameters:
inputSource - The input source or null.
Throws:
java.io.IOException - Thrown on i/o error.

scanDTDInternalSubset

boolean scanDTDInternalSubset(boolean complete,
                              boolean standalone,
                              boolean hasExternalSubset)
                              throws java.io.IOException,
                                     XNIException
Scans the internal subset of the document.

Parameters:
complete - True if the scanner should scan the document completely, pushing all events to the registered document handler. A value of false indicates that that the scanner should only scan the next portion of the document and return. A scanner instance is permitted to completely scan a document if it does not support this "pull" scanning model.
standalone - True if the document was specified as standalone. This value is important for verifying certain well-formedness constraints.
hasExternalSubset - True if the document has an external DTD. This allows the scanner to properly notify the handler of the end of the DTD in the absence of an external subset.
Returns:
True if there is more to scan, false otherwise.
Throws:
java.io.IOException
XNIException

scanDTDExternalSubset

boolean scanDTDExternalSubset(boolean complete)
                              throws java.io.IOException,
                                     XNIException
Scans the external subset of the document.

Parameters:
complete - True if the scanner should scan the document completely, pushing all events to the registered document handler. A value of false indicates that that the scanner should only scan the next portion of the document and return. A scanner instance is permitted to completely scan a document if it does not support this "pull" scanning model.
Returns:
True if there is more to scan, false otherwise.
Throws:
java.io.IOException
XNIException