opendap/src/main/java/opendap/dap/parsers/DDSXMLParser.java
private BaseType newBaseType(Element e) throws DASException, NoSuchTypeException {

        if (_Debug) System.out.println("Getting new BaseType() from: " + e);

        // What's the Element Name? This IS the OPeNDAP typename.
        String type = e.getName();

        // What is the name of this variable? Since BaseType derived types
        // are not required to have names we have to do this carefully.
        String name = null;
        org.jdom2.Attribute nameAttr = e.getAttribute("name");

        if (nameAttr != null)
            name = nameAttr.getValue();

        if (_Debug) System.out.println("    type: " + type + "   name: '" + name + "'");

        // GO get a fresh new OPeNDAP variable (BaseType derived type)
        currentBT = newBaseTypeFactory(type, name);

        //Parse any Attribute tagged child elements for this variable.
        parseAttributes(e, "--- ");

        //Parse any Alias tagged child elements for this variable.
        parseAliases(e, "+++ ");

        return (currentBT);
    }
private BaseType newBaseType(Element e) throws DASException, NoSuchTypeException {

        if (_Debug) System.out.println("Getting new BaseType() from: " + e);

        // What's the Element Name? This IS the OPeNDAP typename.
        String type = e.getName();

        // What is the name of this variable? Since BaseType derived types
        // are not required to have names we have to do this carefully.
        String name = null;
        org.jdom2.Attribute nameAttr = e.getAttribute("name");

        if (nameAttr != null)
            name = nameAttr.getValue();

        if (_Debug) System.out.println("    type: " + type + "   name: '" + name + "'");

        // GO get a fresh new OPeNDAP variable (BaseType derived type)
        currentBT = newBaseTypeFactory(type, name);

        //Parse any Attribute tagged child elements for this variable.
        parseAttributes(e, "--- ");

        //Parse any Alias tagged child elements for this variable.
        parseAliases(e, "+++ ");

        return (currentBT);
    }
/*
Builds a new BaseType derived type from the passed XML element.
<p>This happens in 4 steps:
<ul>
<li> 1) Determine the OPeNDAP type and vairiable name </li>
<li> 2) Get an new one of the thing in (1) </li>
<li> 3) Parse any Attribute tags associated with this OPeNDAP type.
(They appear as children of the XML element)</li>
<li> 4) Parse any Alias tags associated with this OPeNDAP type.
(They appear as children of the XML element)</li>
</ul>