Class 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.
    Version:
    $Name: RELEASE_2_2_1 $, $Revision: 1.4 $
    Author:
    Marc De Scheemaecker
    • Field Detail

      • 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 Detail

      • NonValidator

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

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