Interface DTDEventListener

  • All Superinterfaces:
    java.util.EventListener
    All Known Implementing Classes:
    DTDHandlerBase

    public interface DTDEventListener
    extends java.util.EventListener
    All DTD parsing events are signaled through this interface.
    • Method Summary

      All Methods Instance Methods Abstract Methods 
      Modifier and Type Method Description
      void attributeDecl​(java.lang.String elementName, java.lang.String attributeName, java.lang.String attributeType, java.lang.String[] enumeration, short attributeUse, java.lang.String defaultValue)
      For each entry in an ATTLIST declaration, this event will be fired.
      void characters​(char[] ch, int start, int length)
      Receive notification of character data.
      void childElement​(java.lang.String elementName, short occurence)  
      void comment​(java.lang.String text)
      Receive notification that a comment has been read.
      void connector​(short connectorType)
      Connectors in one model group is guaranteed to be the same.
      void endCDATA()
      Receive notification that the CDATA section finished.
      void endContentModel​(java.lang.String elementName, short contentModelType)
      receives notification that parsing of content model is finished.
      void endDTD()
      Receive notification of the end of a DTD.
      void endModelGroup​(short occurence)  
      void error​(org.xml.sax.SAXParseException e)  
      void externalGeneralEntityDecl​(java.lang.String name, java.lang.String publicId, java.lang.String systemId)
      Receive notification of an external parsed general entity declaration event.
      void externalParameterEntityDecl​(java.lang.String name, java.lang.String publicId, java.lang.String systemId)
      Receive notification of an external parameter entity declaration event.
      void fatalError​(org.xml.sax.SAXParseException e)  
      void ignorableWhitespace​(char[] ch, int start, int length)
      Receive notification of ignorable whitespace in element content.
      void internalGeneralEntityDecl​(java.lang.String name, java.lang.String value)
      Receive notification of a internal general entity declaration event.
      void internalParameterEntityDecl​(java.lang.String name, java.lang.String value)
      Receive notification of a internal parameter entity declaration event.
      void mixedElement​(java.lang.String elementName)
      receives notification of child element of mixed content model.this method is called for each child element.
      void notationDecl​(java.lang.String name, java.lang.String publicId, java.lang.String systemId)
      Receive notification of a Notation Declaration.
      void processingInstruction​(java.lang.String target, java.lang.String data)
      Receive notification of a Processing Instruction.
      void setDocumentLocator​(org.xml.sax.Locator loc)  
      void startCDATA()
      Receive notification that a CDATA section is beginning.
      void startContentModel​(java.lang.String elementName, short contentModelType)
      receives notification that parsing of content model is beginning.
      void startDTD​(InputEntity in)
      Receive notification of the beginning of the DTD.
      void startModelGroup()  
      void unparsedEntityDecl​(java.lang.String name, java.lang.String publicId, java.lang.String systemId, java.lang.String notationName)
      Receive notification of an unparsed entity declaration.
      void warning​(org.xml.sax.SAXParseException err)  
    • Method Detail

      • setDocumentLocator

        void setDocumentLocator​(org.xml.sax.Locator loc)
      • processingInstruction

        void processingInstruction​(java.lang.String target,
                                   java.lang.String data)
                            throws org.xml.sax.SAXException
        Receive notification of a Processing Instruction. Processing instructions contain information meaningful to the application.
        Parameters:
        target - The target of the proceessing instruction which should have meaning to the application.
        data - The instruction itself which should contain valid XML characters.
        Throws:
        org.xml.sax.SAXException - for errors
      • notationDecl

        void notationDecl​(java.lang.String name,
                          java.lang.String publicId,
                          java.lang.String systemId)
                   throws org.xml.sax.SAXException
        Receive notification of a Notation Declaration. Notation declarations are used by elements and entities for identifying embedded non-XML data.
        Parameters:
        name - The notation name, referred to by entities and elements.
        publicId - The public identifier
        systemId - The system identifier
        Throws:
        org.xml.sax.SAXException - for errors
      • unparsedEntityDecl

        void unparsedEntityDecl​(java.lang.String name,
                                java.lang.String publicId,
                                java.lang.String systemId,
                                java.lang.String notationName)
                         throws org.xml.sax.SAXException
        Receive notification of an unparsed entity declaration. Unparsed entities are non-XML data.
        Parameters:
        name - The name of the unparsed entity.
        publicId - The public identifier
        systemId - The system identifier
        notationName - The associated notation
        Throws:
        org.xml.sax.SAXException - for errors
      • internalGeneralEntityDecl

        void internalGeneralEntityDecl​(java.lang.String name,
                                       java.lang.String value)
                                throws org.xml.sax.SAXException
        Receive notification of a internal general entity declaration event.
        Parameters:
        name - The internal general entity name.
        value - The value of the entity, which may include unexpanded entity references. Character references will have been expanded.
        Throws:
        org.xml.sax.SAXException - for errors
        See Also:
        externalGeneralEntityDecl(String, String, String)
      • externalGeneralEntityDecl

        void externalGeneralEntityDecl​(java.lang.String name,
                                       java.lang.String publicId,
                                       java.lang.String systemId)
                                throws org.xml.sax.SAXException
        Receive notification of an external parsed general entity declaration event.

        If a system identifier is present, and it is a relative URL, the parser will have resolved it fully before passing it through this method to a listener.

        Parameters:
        name - The entity name.
        publicId - The entity's public identifier, or null if none was given.
        systemId - The entity's system identifier.
        Throws:
        org.xml.sax.SAXException - for errors
        See Also:
        unparsedEntityDecl(String, String, String, String)
      • internalParameterEntityDecl

        void internalParameterEntityDecl​(java.lang.String name,
                                         java.lang.String value)
                                  throws org.xml.sax.SAXException
        Receive notification of a internal parameter entity declaration event.
        Parameters:
        name - The internal parameter entity name.
        value - The value of the entity, which may include unexpanded entity references. Character references will have been expanded.
        Throws:
        org.xml.sax.SAXException - for errors
        See Also:
        externalParameterEntityDecl(String, String, String)
      • externalParameterEntityDecl

        void externalParameterEntityDecl​(java.lang.String name,
                                         java.lang.String publicId,
                                         java.lang.String systemId)
                                  throws org.xml.sax.SAXException
        Receive notification of an external parameter entity declaration event.

        If a system identifier is present, and it is a relative URL, the parser will have resolved it fully before passing it through this method to a listener.

        Parameters:
        name - The parameter entity name.
        publicId - The entity's public identifier, or null if none was given.
        systemId - The entity's system identifier.
        Throws:
        org.xml.sax.SAXException - for errors
        See Also:
        unparsedEntityDecl(String, String, String, String)
      • startDTD

        void startDTD​(InputEntity in)
               throws org.xml.sax.SAXException
        Receive notification of the beginning of the DTD.
        Parameters:
        in - Current input entity.
        Throws:
        org.xml.sax.SAXException - for errors
        See Also:
        endDTD()
      • endDTD

        void endDTD()
             throws org.xml.sax.SAXException
        Receive notification of the end of a DTD. The parser will invoke this method only once.
        Throws:
        org.xml.sax.SAXException - for errors
        See Also:
        startDTD(InputEntity)
      • comment

        void comment​(java.lang.String text)
              throws org.xml.sax.SAXException
        Receive notification that a comment has been read.

        Note that processing instructions are the mechanism designed to hold information for consumption by applications, not comments. XML systems may rely on applications being able to access information found in processing instructions; this is not true of comments, which are typically discarded.

        Parameters:
        text - the text within the comment delimiters.
        Throws:
        org.xml.sax.SAXException - for errors
      • characters

        void characters​(char[] ch,
                        int start,
                        int length)
                 throws org.xml.sax.SAXException
        Receive notification of character data.

        The Parser will call this method to report each chunk of character data. SAX parsers may return all contiguous character data in a single chunk, or they may split it into several chunks; however, all of the characters in any single event must come from the same external entity, so that the Locator provides useful information.

        The application must not attempt to read from the array outside of the specified range.

        Note that some parsers will report whitespace using the ignorableWhitespace() method rather than this one (validating parsers must do so).

        Parameters:
        ch - The characters from the DTD.
        start - The start position in the array.
        length - The number of characters to read from the array.
        Throws:
        org.xml.sax.SAXException - for errors
        See Also:
        ignorableWhitespace(char[], int, int)
      • ignorableWhitespace

        void ignorableWhitespace​(char[] ch,
                                 int start,
                                 int length)
                          throws org.xml.sax.SAXException
        Receive notification of ignorable whitespace in element content.

        Validating Parsers must use this method to report each chunk of ignorable whitespace (see the W3C XML 1.0 recommendation, section 2.10): non-validating parsers may also use this method if they are capable of parsing and using content models.

        SAX parsers may return all contiguous whitespace in a single chunk, or they may split it into several chunks; however, all of the characters in any single event must come from the same external entity, so that the Locator provides useful information.

        The application must not attempt to read from the array outside of the specified range.

        Parameters:
        ch - The characters from the DTD.
        start - The start position in the array.
        length - The number of characters to read from the array.
        Throws:
        org.xml.sax.SAXException - for errors
        See Also:
        characters(char[], int, int)
      • startCDATA

        void startCDATA()
                 throws org.xml.sax.SAXException
        Receive notification that a CDATA section is beginning. Data in a CDATA section is is reported through the appropriate event, either characters() or ignorableWhitespace.
        Throws:
        org.xml.sax.SAXException - for errors
        See Also:
        endCDATA()
      • endCDATA

        void endCDATA()
               throws org.xml.sax.SAXException
        Receive notification that the CDATA section finished.
        Throws:
        org.xml.sax.SAXException - for errors
        See Also:
        startCDATA()
      • fatalError

        void fatalError​(org.xml.sax.SAXParseException e)
                 throws org.xml.sax.SAXException
        Throws:
        org.xml.sax.SAXException
      • error

        void error​(org.xml.sax.SAXParseException e)
            throws org.xml.sax.SAXException
        Throws:
        org.xml.sax.SAXException
      • warning

        void warning​(org.xml.sax.SAXParseException err)
              throws org.xml.sax.SAXException
        Throws:
        org.xml.sax.SAXException
      • startContentModel

        void startContentModel​(java.lang.String elementName,
                               short contentModelType)
                        throws org.xml.sax.SAXException
        receives notification that parsing of content model is beginning.
        Parameters:
        elementName - name of the element whose content model is going to be defined.
        contentModelType - CONTENT_MODEL_EMPTY this element has EMPTY content model. This notification will be immediately followed by the corresponding endContentModel. CONTENT_MODEL_ANY this element has ANY content model. This notification will be immediately followed by the corresponding endContentModel. CONTENT_MODEL_MIXED this element has mixed content model. #PCDATA will not be reported. each child element will be reported by mixedElement method. CONTENT_MODEL_CHILDREN this elemen has child content model. The actual content model will be reported by childElement, startModelGroup, endModelGroup, and connector methods. Possible call sequences are:

        START := MODEL_GROUP MODEL_GROUP := startModelGroup TOKEN (connector TOKEN)* endModelGroup TOKEN := childElement | MODEL_GROUP

        Throws:
        org.xml.sax.SAXException - for errors
      • endContentModel

        void endContentModel​(java.lang.String elementName,
                             short contentModelType)
                      throws org.xml.sax.SAXException
        receives notification that parsing of content model is finished.
        Parameters:
        elementName -
        contentModelType -
        Throws:
        org.xml.sax.SAXException - for errors
      • attributeDecl

        void attributeDecl​(java.lang.String elementName,
                           java.lang.String attributeName,
                           java.lang.String attributeType,
                           java.lang.String[] enumeration,
                           short attributeUse,
                           java.lang.String defaultValue)
                    throws org.xml.sax.SAXException
        For each entry in an ATTLIST declaration, this event will be fired.

        DTD allows the same attributes to be declared more than once, and in that case the first one wins. I think this method will be only fired for the first one, but I need to check.

        Parameters:
        elementName -
        attributeName -
        defaultValue -
        enumeration -
        attributeUse -
        attributeType -
        Throws:
        org.xml.sax.SAXException - for errors
      • childElement

        void childElement​(java.lang.String elementName,
                          short occurence)
                   throws org.xml.sax.SAXException
        Throws:
        org.xml.sax.SAXException
      • mixedElement

        void mixedElement​(java.lang.String elementName)
                   throws org.xml.sax.SAXException
        receives notification of child element of mixed content model.this method is called for each child element.
        Parameters:
        elementName -
        Throws:
        org.xml.sax.SAXException - for errors
        See Also:
        startContentModel(String, short)
      • startModelGroup

        void startModelGroup()
                      throws org.xml.sax.SAXException
        Throws:
        org.xml.sax.SAXException
      • endModelGroup

        void endModelGroup​(short occurence)
                    throws org.xml.sax.SAXException
        Throws:
        org.xml.sax.SAXException
      • connector

        void connector​(short connectorType)
                throws org.xml.sax.SAXException
        Connectors in one model group is guaranteed to be the same.

        IOW, you'll never see an event sequence like (a|b,c)

        Parameters:
        connectorType -
        Throws:
        org.xml.sax.SAXException - for errors