org.apache.xerces.impl
public class XMLDTDScannerImpl extends XMLScanner implements XMLDTDScanner, XMLComponent, XMLEntityHandler
This component requires the following features and properties from the component manager that uses it:
Version: $Id: XMLDTDScannerImpl.java,v 1.52 2004/10/04 21:45:49 mrglavas Exp $
Field Summary | |
---|---|
protected XMLDTDContentModelHandler | fDTDContentModelHandler DTD content model handler. |
protected XMLDTDHandler | fDTDHandler DTD handler. |
protected int | fScannerState Scanner state. |
protected boolean | fSeenExternalDTD Seen external DTD. |
protected boolean | fSeenExternalPE Seen external parameter entity. |
protected boolean | fStandalone Standalone. |
protected static int | SCANNER_STATE_END_OF_INPUT Scanner state: end of input. |
protected static int | SCANNER_STATE_MARKUP_DECL Scanner state: markup declaration. |
protected static int | SCANNER_STATE_TEXT_DECL Scanner state: text declaration. |
Constructor Summary | |
---|---|
XMLDTDScannerImpl() Default constructor. | |
XMLDTDScannerImpl(SymbolTable symbolTable, XMLErrorReporter errorReporter, XMLEntityManager entityManager) Constructor for he use of non-XMLComponentManagers. |
Method Summary | |
---|---|
void | endEntity(String name, Augmentations augs)
This method notifies the end of an entity. |
XMLDTDContentModelHandler | getDTDContentModelHandler()
getDTDContentModelHandler
|
XMLDTDHandler | getDTDHandler()
getDTDHandler
|
Boolean | getFeatureDefault(String featureId)
Returns the default state for a feature, or null if this
component does not want to report a default value for this
feature.
|
Object | getPropertyDefault(String propertyId)
Returns the default state for a property, or null if this
component does not want to report a default value for this
property.
|
String[] | getRecognizedFeatures()
Returns a list of feature identifiers that are recognized by
this component. |
String[] | getRecognizedProperties()
Returns a list of property identifiers that are recognized by
this component. |
void | reset(XMLComponentManager componentManager)
reset
|
void | reset() |
protected String | scanAttDefaultDecl(String elName, String atName, String type, XMLString defaultVal, XMLString nonNormalizedDefaultVal)
Scans an attribute default declaration
[60] DefaultDecl ::= '#REQUIRED' | '#IMPLIED' | (('#FIXED' S)? |
protected void | scanAttlistDecl()
Scans an attlist declaration
[52] AttlistDecl ::= '<! |
protected void | scanComment()
Scans a comment.
|
protected boolean | scanDecls(boolean complete)
Dispatch an XML "event".
|
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.
|
protected void | scanElementDecl()
Scans an element declaration
[45] elementdecl ::= '<! |
protected void | scanEntityValue(XMLString value, XMLString nonNormalizedValue)
Scans an entity value.
|
protected boolean | scanningInternalSubset() |
protected void | scanPIData(String target, XMLString data)
Scans a processing data. |
protected boolean | scanTextDecl()
Dispatch an XML "event".
|
void | setDTDContentModelHandler(XMLDTDContentModelHandler dtdContentModelHandler)
setDTDContentModelHandler
|
void | setDTDHandler(XMLDTDHandler dtdHandler)
setDTDHandler
|
void | setInputSource(XMLInputSource inputSource)
Sets the input source.
|
protected void | setScannerState(int state)
Sets the scanner state.
|
void | startEntity(String name, XMLResourceIdentifier identifier, String encoding, Augmentations augs)
This method notifies of the start of an entity. |
protected void | startPE(String name, boolean literal)
start a parameter entity dealing with the textdecl if there is any
|
Parameters: name The name of the entity. augs Additional information that may include infoset augmentations
Throws: XNIException Thrown by handler to signal an error.
Returns: XMLDTDContentModelHandler
Returns: the XMLDTDHandler
Parameters: featureId The feature identifier.
Since: Xerces 2.2.0
Parameters: propertyId The property identifier.
Since: Xerces 2.2.0
Parameters: componentManager
[60] DefaultDecl ::= '#REQUIRED' | '#IMPLIED' | (('#FIXED' S)? AttValue)
Parameters: name The name of the attribute being scanned. defaultVal The string to fill in with the default value.
[52] AttlistDecl ::= '<!ATTLIST' S Name AttDef* S? '>' [53] AttDef ::= S Name S AttType S DefaultDecl
Note: Called after scanning past '<!ATTLIST'
[15] Comment ::= '<!--' ((Char - '-') | ('-' (Char - '-')))* '-->'
Note: Called after scanning past '<!--'
Parameters: complete True if this method is intended to scan and dispatch as much as possible.
Returns: True if there is more to scan.
Throws: IOException Thrown on i/o error. XNIException Thrown on parse error.
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.
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. hasExternalDTD 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.
[45] elementdecl ::= '<!ELEMENT' S Name S contentspec S? '>' [46] contentspec ::= 'EMPTY' | 'ANY' | Mixed | children
Note: Called after scanning past '<!ELEMENT'
Parameters: value The string to fill in with the value. nonNormalizedValue The string to fill in with the non-normalized value. Note: This method uses fString, fStringBuffer (through the use of scanCharReferenceValue), and fStringBuffer2, anything in them at the time of calling is lost.
Parameters: target The PI target data The string to fill in with the data
Parameters: complete True if this method is intended to scan and dispatch as much as possible.
Returns: True if a TextDecl was scanned.
Throws: IOException Thrown on i/o error. XNIException Thrown on parse error.
Parameters: dtdContentModelHandler
Parameters: dtdHandler
Parameters: inputSource The input source or null.
Throws: IOException Thrown on i/o error.
Parameters: state The new scanner state.
Parameters: name The name of the entity. identifier The resource identifier. encoding The auto-detected IANA encoding name of the entity stream. This value will be null in those situations where the entity encoding is not auto-detected (e.g. internal entities or a document entity that is parsed from a java.io.Reader). augs Additional information that may include infoset augmentations
Throws: XNIException Thrown by handler to signal an error.
Parameters: name The name of the parameter entity to start (without the '%') literal Whether this is happening within a literal