net.n3.nanoxml

Class NonValidator

public class NonValidator extends Object implements IXMLValidator

NonValidator is a concrete implementation of IXMLValidator which processes the DTD and handles entity definitions. It does not do any validation itself.

Version: $Name: RELEASE_2_2_1 $, $Revision: 1.4 $

Author: Marc De Scheemaecker

Field Summary
protected HashtableattributeDefaultValues
Contains the default values for attributes for the different element types.
protected StackcurrentElements
The stack of elements to be processed.
protected IXMLEntityResolverparameterEntityResolver
The parameter entity resolver.
Constructor Summary
NonValidator()
Creates the "validator".
Method Summary
voidattributeAdded(String key, String value, String systemId, int lineNr)
Indicates that an attribute has been added to the current element.
voidelementAttributesProcessed(String name, Properties extraAttributes, String systemId, int lineNr)
This method is called when the attributes of an XML element have been processed.
voidelementEnded(String name, String systemId, int lineNr)
Indicates that the current element has ended.
voidelementStarted(String name, String systemId, int lineNr)
Indicates that an element has been started.
protected voidfinalize()
Cleans up the object when it's destroyed.
IXMLEntityResolvergetParameterEntityResolver()
Returns the parameter entity resolver.
voidparseDTD(String publicID, IXMLReader reader, IXMLEntityResolver entityResolver, boolean external)
Parses the DTD.
protected voidprocessAttList(IXMLReader reader, IXMLEntityResolver entityResolver)
Processes an ATTLIST element.
protected voidprocessConditionalSection(IXMLReader reader, IXMLEntityResolver entityResolver)
Processes a conditional section.
protected voidprocessElement(IXMLReader reader, IXMLEntityResolver entityResolver)
Processes an element in the DTD.
protected voidprocessEntity(IXMLReader reader, IXMLEntityResolver entityResolver)
Processes an ENTITY element.
protected voidprocessIgnoreSection(IXMLReader reader, IXMLEntityResolver entityResolver)
Processes an ignore section.
voidPCDataAdded(String systemId, int lineNr)
Indicates that a new #PCDATA element has been encountered.
voidsetParameterEntityResolver(IXMLEntityResolver resolver)
Sets the parameter entity resolver.

Field Detail

attributeDefaultValues

protected Hashtable attributeDefaultValues
Contains the default values for attributes for the different element types.

currentElements

protected Stack currentElements
The stack of elements to be processed.

parameterEntityResolver

protected IXMLEntityResolver parameterEntityResolver
The parameter entity resolver.

Constructor Detail

NonValidator

public NonValidator()
Creates the "validator".

Method Detail

attributeAdded

public void attributeAdded(String key, String value, String systemId, int lineNr)
Indicates that an attribute has been added to the current element.

Parameters: key the name of the attribute. value the value of the attribute. systemId the system ID of the XML data of the element. lineNr the line number in the XML data of the element.

elementAttributesProcessed

public void elementAttributesProcessed(String name, Properties extraAttributes, String systemId, int lineNr)
This method is called when the attributes of an XML element have been processed. If there are attributes with a default value which have not been specified yet, they have to be put into extraAttributes.

Parameters: name the name of the element. extraAttributes where to put extra attributes. systemId the system ID of the XML data of the element. lineNr the line number in the XML data of the element.

elementEnded

public void elementEnded(String name, String systemId, int lineNr)
Indicates that the current element has ended.

Parameters: name the name of the element. systemId the system ID of the XML data of the element. lineNr the line number in the XML data of the element.

elementStarted

public void elementStarted(String name, String systemId, int lineNr)
Indicates that an element has been started.

Parameters: name the name of the element. systemId the system ID of the XML data of the element. lineNr the line number in the XML data of the element.

finalize

protected void finalize()
Cleans up the object when it's destroyed.

getParameterEntityResolver

public IXMLEntityResolver getParameterEntityResolver()
Returns the parameter entity resolver.

Returns: the entity resolver.

parseDTD

public void parseDTD(String publicID, IXMLReader reader, IXMLEntityResolver entityResolver, boolean external)
Parses the DTD. The validator object is responsible for reading the full DTD.

Parameters: publicID the public ID, which may be null. reader the reader to read the DTD from. entityResolver the entity resolver. external true if the DTD is external.

Throws: java.lang.Exception If something went wrong.

processAttList

protected void processAttList(IXMLReader reader, IXMLEntityResolver entityResolver)
Processes an ATTLIST element.

Parameters: reader the reader to read data from. entityResolver the entity resolver.

Throws: java.lang.Exception If something went wrong.

processConditionalSection

protected void processConditionalSection(IXMLReader reader, IXMLEntityResolver entityResolver)
Processes a conditional section.

Parameters: reader the reader to read data from. entityResolver the entity resolver.

Throws: java.lang.Exception If something went wrong.

processElement

protected void processElement(IXMLReader reader, IXMLEntityResolver entityResolver)
Processes an element in the DTD.

Parameters: reader the reader to read data from. entityResolver the entity resolver.

Throws: java.lang.Exception If something went wrong.

processEntity

protected void processEntity(IXMLReader reader, IXMLEntityResolver entityResolver)
Processes an ENTITY element.

Parameters: reader the reader to read data from. entityResolver the entity resolver.

Throws: java.lang.Exception If something went wrong.

processIgnoreSection

protected void processIgnoreSection(IXMLReader reader, IXMLEntityResolver entityResolver)
Processes an ignore section.

Parameters: reader the reader to read data from. entityResolver the entity resolver.

Throws: java.lang.Exception If something went wrong.

PCDataAdded

public void PCDataAdded(String systemId, int lineNr)
Indicates that a new #PCDATA element has been encountered.

Parameters: systemId the system ID of the XML data of the element. lineNr the line number in the XML data of the element.

setParameterEntityResolver

public void setParameterEntityResolver(IXMLEntityResolver resolver)
Sets the parameter entity resolver.

Parameters: resolver the entity resolver.