def _parse_geospatial_coverage(self, element):
        element_type = "geospatialCoverage"
        md = {}
        # <xsd:element name="geospatialCoverage">
        #  <xsd:complexType>
        #   <xsd:sequence>
        #    <xsd:element name="northsouth" type="spatialRange"
        #                 minOccurs="0" />
        #    <xsd:element name="eastwest" type="spatialRange"
        #                 minOccurs="0" />
        #    <xsd:element name="updown" type="spatialRange"
        #                 minOccurs="0" />
        #    <xsd:element name="name" type="controlledVocabulary"
        #                 minOccurs="0" maxOccurs="unbounded"/>
        #   </xsd:sequence>
        #
        #   <xsd:attribute name="zpositive" type="upOrDown" default="up"/>
        #  </xsd:complexType>
        # </xsd:element>
        elements = {"northsouth": "spatialRange",
                    "eastwest": "spatialRange",
                    "updown": "spatialRange",
                    "name": "controlledVocabulary"
                    }
        attrs = {"zpositive": "upOrDown"}

        if element.attrib:
            for attr in element.attrib:
                if attrs in attr:
                    handler_name = attrs[attr]
                    handler = self._get_handler(handler_name)
                    value = handler(element)
                    md.update({attr: value})
                else:
                    log.warning("Attr on %s : %s not captured", attr,
                                element_type)

        for child in element:
            child_name = child.tag
            if child_name in elements:
                handler_name = elements[child_name]
                handler = self._get_handler(handler_name)
                value = handler(child)
                md.update(value)
        self.metadata.setdefault(element_type, []).append(md)
dataset/ETHPy150Open Unidata/siphon/siphon/metadata.py/TDSCatalogMetadata._parse_geospatial_coverage/swapped operands of `in`