Class NonValidator

java.lang.Object
net.n3.nanoxml.NonValidator
All Implemented Interfaces:
IXMLValidator

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.
Author:
Marc De Scheemaecker
  • Field Details

    • parameterEntityResolver

      protected IXMLEntityResolver parameterEntityResolver
      The parameter entity resolver.
    • 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.
  • Constructor Details

    • NonValidator

      public NonValidator()
      Creates the "validator".
  • Method Details

    • finalize

      protected void finalize() throws Throwable
      Cleans up the object when it's destroyed.
      Overrides:
      finalize in class Object
      Throws:
      Throwable
    • setParameterEntityResolver

      public void setParameterEntityResolver(IXMLEntityResolver resolver)
      Sets the parameter entity resolver.
      Specified by:
      setParameterEntityResolver in interface IXMLValidator
      Parameters:
      resolver - the entity resolver.
    • getParameterEntityResolver

      public IXMLEntityResolver getParameterEntityResolver()
      Returns the parameter entity resolver.
      Specified by:
      getParameterEntityResolver in interface IXMLValidator
      Returns:
      the entity resolver.
    • parseDTD

      public void parseDTD(String publicID, IXMLReader reader, IXMLEntityResolver entityResolver, boolean external) throws Exception
      Parses the DTD. The validator object is responsible for reading the full DTD.
      Specified by:
      parseDTD in interface IXMLValidator
      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:
      Exception - If something went wrong.
    • processElement

      protected void processElement(IXMLReader reader, IXMLEntityResolver entityResolver) throws Exception
      Processes an element in the DTD.
      Parameters:
      reader - the reader to read data from.
      entityResolver - the entity resolver.
      Throws:
      Exception - If something went wrong.
    • processConditionalSection

      protected void processConditionalSection(IXMLReader reader, IXMLEntityResolver entityResolver) throws Exception
      Processes a conditional section.
      Parameters:
      reader - the reader to read data from.
      entityResolver - the entity resolver.
      Throws:
      Exception - If something went wrong.
    • processIgnoreSection

      protected void processIgnoreSection(IXMLReader reader, IXMLEntityResolver entityResolver) throws Exception
      Processes an ignore section.
      Parameters:
      reader - the reader to read data from.
      entityResolver - the entity resolver.
      Throws:
      Exception - If something went wrong.
    • processAttList

      protected void processAttList(IXMLReader reader, IXMLEntityResolver entityResolver) throws Exception
      Processes an ATTLIST element.
      Parameters:
      reader - the reader to read data from.
      entityResolver - the entity resolver.
      Throws:
      Exception - If something went wrong.
    • processEntity

      protected void processEntity(IXMLReader reader, IXMLEntityResolver entityResolver) throws Exception
      Processes an ENTITY element.
      Parameters:
      reader - the reader to read data from.
      entityResolver - the entity resolver.
      Throws:
      Exception - If something went wrong.
    • elementStarted

      public void elementStarted(String name, String systemId, int lineNr)
      Indicates that an element has been started.
      Specified by:
      elementStarted in interface IXMLValidator
      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.
    • elementEnded

      public void elementEnded(String name, String systemId, int lineNr)
      Indicates that the current element has ended.
      Specified by:
      elementEnded in interface IXMLValidator
      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.
    • 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.
      Specified by:
      elementAttributesProcessed in interface IXMLValidator
      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.
    • attributeAdded

      public void attributeAdded(String key, String value, String systemId, int lineNr)
      Indicates that an attribute has been added to the current element.
      Specified by:
      attributeAdded in interface IXMLValidator
      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.
    • PCDataAdded

      public void PCDataAdded(String systemId, int lineNr)
      Indicates that a new #PCDATA element has been encountered.
      Specified by:
      PCDataAdded in interface IXMLValidator
      Parameters:
      systemId - the system ID of the XML data of the element.
      lineNr - the line number in the XML data of the element.