Class XML11DTDScannerImpl
- java.lang.Object
-
- org.smooks.engine.delivery.sax.ng.org.apache.xerces.impl.XMLScanner
-
- org.smooks.engine.delivery.sax.ng.org.apache.xerces.impl.XMLDTDScannerImpl
-
- org.smooks.engine.delivery.sax.ng.org.apache.xerces.impl.XML11DTDScannerImpl
-
- All Implemented Interfaces:
XMLEntityHandler
,XMLComponent
,XMLDTDContentModelSource
,XMLDTDScanner
,XMLDTDSource
public class XML11DTDScannerImpl extends XMLDTDScannerImpl
This class is responsible for scanning the declarations found in the internal and external subsets of a DTD in an XML document. The scanner acts as the sources for the DTD information which is communicated to the DTD handlers.This component requires the following features and properties from the component manager that uses it:
- http://xml.org/sax/features/validation
- http://apache.org/xml/features/scanner/notify-char-refs
- http://apache.org/xml/properties/internal/symbol-table
- http://apache.org/xml/properties/internal/error-reporter
- http://apache.org/xml/properties/internal/entity-manager
- Version:
- $Id$
- Author:
- Arnaud Le Hors, IBM, Andy Clark, IBM, Glenn Marcy, IBM, Eric Ye, IBM
-
-
Field Summary
-
Fields inherited from class org.smooks.engine.delivery.sax.ng.org.apache.xerces.impl.XMLDTDScannerImpl
fDTDContentModelHandler, fDTDHandler, fScannerState, fSeenExternalDTD, fSeenPEReferences, fStandalone, SCANNER_STATE_END_OF_INPUT, SCANNER_STATE_MARKUP_DECL, SCANNER_STATE_TEXT_DECL
-
Fields inherited from class org.smooks.engine.delivery.sax.ng.org.apache.xerces.impl.XMLScanner
DEBUG_ATTR_NORMALIZATION, ENTITY_MANAGER, ERROR_REPORTER, fAmpSymbol, fAposSymbol, fCharRefLiteral, fEncodingSymbol, fEntityDepth, fEntityManager, fEntityScanner, fErrorReporter, fGtSymbol, fLtSymbol, fNamespaces, fNotifyCharRefs, fParserSettings, fQuotSymbol, fReportEntity, fResourceIdentifier, fScanningAttribute, fStandaloneSymbol, fSymbolTable, fValidation, fVersionSymbol, NAMESPACES, NOTIFY_CHAR_REFS, PARSER_SETTINGS, SYMBOL_TABLE, VALIDATION
-
-
Constructor Summary
Constructors Constructor Description XML11DTDScannerImpl()
Default constructor.XML11DTDScannerImpl(SymbolTable symbolTable, XMLErrorReporter errorReporter, XMLEntityManager entityManager)
Constructor for he use of non-XMLComponentManagers.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected String
getVersionNotSupportedKey()
protected boolean
isInvalid(int value)
protected boolean
isInvalidLiteral(int value)
protected int
isUnchangedByNormalization(XMLString value)
Checks whether this string would be unchanged by normalization.protected boolean
isValidNameChar(int value)
protected boolean
isValidNameStartChar(int value)
protected boolean
isValidNameStartHighSurrogate(int value)
protected boolean
isValidNCName(int value)
protected void
normalizeWhitespace(XMLString value)
Normalize whitespace in an XMLString converting all whitespace characters to space characters.protected void
normalizeWhitespace(XMLString value, int fromIndex)
Normalize whitespace in an XMLString converting all whitespace characters to space characters.protected boolean
scanPubidLiteral(XMLString literal)
Scans public ID literal.protected boolean
versionSupported(String version)
-
Methods inherited from class org.smooks.engine.delivery.sax.ng.org.apache.xerces.impl.XMLDTDScannerImpl
endEntity, getDTDContentModelHandler, getDTDHandler, getFeatureDefault, getPropertyDefault, getRecognizedFeatures, getRecognizedProperties, reset, reset, scanAttDefaultDecl, scanAttlistDecl, scanComment, scanDecls, scanDTDExternalSubset, scanDTDInternalSubset, scanElementDecl, scanEntityValue, scanningInternalSubset, scanPIData, scanTextDecl, setDTDContentModelHandler, setDTDHandler, setInputSource, setScannerState, startEntity, startPE
-
Methods inherited from class org.smooks.engine.delivery.sax.ng.org.apache.xerces.impl.XMLScanner
getFeature, reportFatalError, scanAttributeValue, scanCharReferenceValue, scanComment, scanExternalID, scanPI, scanPseudoAttribute, scanSurrogates, scanXMLDeclOrTextDecl, setFeature, setProperty
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.smooks.engine.delivery.sax.ng.org.apache.xerces.xni.parser.XMLComponent
setFeature, setProperty
-
-
-
-
Constructor Detail
-
XML11DTDScannerImpl
public XML11DTDScannerImpl()
Default constructor.
-
XML11DTDScannerImpl
public XML11DTDScannerImpl(SymbolTable symbolTable, XMLErrorReporter errorReporter, XMLEntityManager entityManager)
Constructor for he use of non-XMLComponentManagers.
-
-
Method Detail
-
scanPubidLiteral
protected boolean scanPubidLiteral(XMLString literal) throws IOException, XNIException
Scans public ID literal. [12] PubidLiteral ::= '"' PubidChar* '"' | "'" (PubidChar - "'")* "'" [13] PubidChar::= #x20 | #xD | #xA | [a-zA-Z0-9] | [-'()+,./:=?;!*#@$_%] The returned string is normalized according to the following rule, from http://www.w3.org/TR/REC-xml#dt-pubid: Before a match is attempted, all strings of white space in the public identifier must be normalized to single space characters (#x20), and leading and trailing white space must be removed.- Overrides:
scanPubidLiteral
in classXMLScanner
- Parameters:
literal
- The string to fill in with the public ID literal.- Returns:
- True on success. Note: This method uses fStringBuffer, anything in it at the time of calling is lost.
- Throws:
IOException
XNIException
-
normalizeWhitespace
protected void normalizeWhitespace(XMLString value)
Normalize whitespace in an XMLString converting all whitespace characters to space characters.- Overrides:
normalizeWhitespace
in classXMLScanner
-
normalizeWhitespace
protected void normalizeWhitespace(XMLString value, int fromIndex)
Normalize whitespace in an XMLString converting all whitespace characters to space characters.- Overrides:
normalizeWhitespace
in classXMLScanner
-
isUnchangedByNormalization
protected int isUnchangedByNormalization(XMLString value)
Checks whether this string would be unchanged by normalization.- Overrides:
isUnchangedByNormalization
in classXMLScanner
- Returns:
- -1 if the value would be unchanged by normalization, otherwise the index of the first whitespace character which would be transformed.
-
isInvalid
protected boolean isInvalid(int value)
- Overrides:
isInvalid
in classXMLScanner
-
isInvalidLiteral
protected boolean isInvalidLiteral(int value)
- Overrides:
isInvalidLiteral
in classXMLScanner
-
isValidNameChar
protected boolean isValidNameChar(int value)
- Overrides:
isValidNameChar
in classXMLScanner
-
isValidNameStartChar
protected boolean isValidNameStartChar(int value)
- Overrides:
isValidNameStartChar
in classXMLScanner
-
isValidNCName
protected boolean isValidNCName(int value)
- Overrides:
isValidNCName
in classXMLScanner
-
isValidNameStartHighSurrogate
protected boolean isValidNameStartHighSurrogate(int value)
- Overrides:
isValidNameStartHighSurrogate
in classXMLScanner
-
versionSupported
protected boolean versionSupported(String version)
- Overrides:
versionSupported
in classXMLScanner
-
getVersionNotSupportedKey
protected String getVersionNotSupportedKey()
- Overrides:
getVersionNotSupportedKey
in classXMLScanner
-
-