Class DDSXMLParser


  • public class DDSXMLParser
    extends Object
    DDSXMLParser is used to parse a DDX (the XML formatted persistent representation of a DDS) into a DDS object in memory. This parser uses the Xerces XML parser and JDOM packages to perform it's duties.
    • Constructor Detail

      • DDSXMLParser

        public DDSXMLParser​(String nameSpace)
        Constructs a new DDSXMLParser. The OPeNDAP namespace is defined during the construction of an instance of this class.
    • Method Detail

      • getLastDomDoc

        public org.jdom2.Document getLastDomDoc()
        Returns the Document object created by the most recent invocation of the parser. This might be usefull to some XML hacker somewhere. :)
        Returns:
        The Document object created by the most recent invocation of the parser.
      • parse

        public void parse​(org.jdom2.Document ddx,
                          DDS targetDDS,
                          BaseTypeFactory fac,
                          boolean validation)
                   throws DAP2Exception
        Parse the DDX waiting in the InputStream and instantiate all of the member BaseType variables and their associated Attributes into a DDS using the passed BaseTypeFactory
        Parameters:
        ddx - A JDOM Document containing the DDX to parse.
        targetDDS - The DDS in which to place all of the BaseType variables and their associated Attributes.
        fac - The BaseTypeFactory to use when creating new BaseType variables.
        validation - Is a boolean indicating whether or not the parser should validate the XML document using the Schema (typically referenced in the document itself). In general server side applications should always vaidate, while clients shouldn't bother (since they are ostensibly receiving the document from a server that has already done so.)
        Throws:
        DAP2Exception
        See Also:
        DDS, BaseTypeFactory
      • parse

        public void parse​(InputStream is,
                          DDS targetDDS,
                          BaseTypeFactory fac,
                          boolean validation)
                   throws DAP2Exception
        Parse the DDX waiting in the InputStream and instantiate all of the member BaseType variables and their associated Attributes into a DDS using the passed BaseTypeFactory
        Parameters:
        is - The InputStream containing the DDX to parse.
        targetDDS - The DDS in which to place all of the BaseType variables and their associated Attributes.
        fac - The BaseTypeFactory to use when creating new BaseType variables.
        validation - Is a boolean indicating whether or not the parser should validate the XML document using the Schema (typically referenced in the document itself). In general server side applications should always vaidate, while clients shouldn't bother (since they are ostensibly receiving the document from a server that has already done so.)
        Throws:
        DAP2Exception
        See Also:
        DDS, BaseTypeFactory
      • normalizeToXML

        public static String normalizeToXML​(String s)
        This method is used to normalize strings prior to their inclusion in XML documents. XML has certain parsing requirements around reserved characters. These reserved characters must be replaced with symbols recognized by the XML parser as place holder for the actual symbol.

        The rule for this normalization is as follows:

        • The < (less than) character is replaced with &lt;
        • The > (greater than) character is replaced with &gt;
        • The & (ampersand) character is replaced with &amp;
        • The ' (apostrophe) character is replaced with &apos;
        • The " (double quote) character is replaced with &quot;
        Parameters:
        s - The String to be normalized.
        Returns:
        The normalized String.