Class DTDParser


  • public class DTDParser
    extends java.lang.Object
    This implements parsing of XML 1.0 DTDs.

    This conforms to the portion of the XML 1.0 specification related to the external DTD subset.

    For multi-language applications (such as web servers using XML processing to create dynamic content), a method supports choosing a locale for parser diagnostics which is both understood by the message recipient and supported by the parser.

    This parser produces a stream of parse events. It supports some features (exposing comments, CDATA sections, and entity references) which are not required to be reported by conformant XML processors.

    Version:
    $Id: DTDParser.java,v 1.2 2009-04-16 15:25:49 snajper Exp $
    Author:
    David Brownell, Janet Koenig, Kohsuke KAWAGUCHI
    • Constructor Detail

      • DTDParser

        public DTDParser()
    • Method Detail

      • setLocale

        public void setLocale​(java.util.Locale l)
                       throws org.xml.sax.SAXException
        Used by applications to request locale for diagnostics.
        Parameters:
        l - The locale to use, or null to use system defaults (which may include only message IDs).
        Throws:
        org.xml.sax.SAXException
      • getLocale

        public java.util.Locale getLocale()
        Returns the diagnostic locale.
      • chooseLocale

        public java.util.Locale chooseLocale​(java.lang.String[] languages)
                                      throws org.xml.sax.SAXException
        Chooses a client locale to use for diagnostics, using the first language specified in the list that is supported by this parser. That locale is then set using setLocale(). Such a list could be provided by a variety of user preference mechanisms, including the HTTP Accept-Language header field.
        Parameters:
        languages - Array of language specifiers, ordered with the most preferable one at the front. For example, "en-ca" then "fr-ca", followed by "zh_CN". Both RFC 1766 and Java styles are supported.
        Returns:
        The chosen locale, or null.
        Throws:
        org.xml.sax.SAXException
        See Also:
        MessageCatalog
      • setEntityResolver

        public void setEntityResolver​(org.xml.sax.EntityResolver r)
        Lets applications control entity resolution.
      • getEntityResolver

        public org.xml.sax.EntityResolver getEntityResolver()
        Returns the object used to resolve entities
      • setDtdHandler

        public void setDtdHandler​(DTDEventListener handler)
        Used by applications to set handling of DTD parsing events.
      • getDtdHandler

        public DTDEventListener getDtdHandler()
        Returns the handler used to for DTD parsing events.
      • parse

        public void parse​(org.xml.sax.InputSource in)
                   throws java.io.IOException,
                          org.xml.sax.SAXException
        Parse a DTD.
        Throws:
        java.io.IOException
        org.xml.sax.SAXException
      • parse

        public void parse​(java.lang.String uri)
                   throws java.io.IOException,
                          org.xml.sax.SAXException
        Parse a DTD.
        Throws:
        java.io.IOException
        org.xml.sax.SAXException
      • getPublicId

        public java.lang.String getPublicId()
      • getSystemId

        public java.lang.String getSystemId()
      • getLineNumber

        public int getLineNumber()
      • getColumnNumber

        public int getColumnNumber()