## org.apache.xerces.xni.parser
Interface XMLDTDScanner

All Superinterfaces:
  XMLDTDContentModelSource, XMLDTDSource

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

    public 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

    public 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.

### scanDTDExternalSubset

    public 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.

Copyright © 1999-2007 The Apache Software Foundation. All Rights Reserved.