def handle_sourceType(self, element):  # noqa
        # name="sourceType"
        #   <xsd:sequence>
        #     <xsd:element name="name" type="controlledVocabulary"/>
        #     <xsd:element name="contact">
        #       <xsd:complexType>
        #         <xsd:attribute name="email" type="xsd:string"
        #                                     use="required"/>
        #         <xsd:attribute name="url" type="xsd:anyURI"/>
        #       </xsd:complexType>
        #     </xsd:element>
        #   </xsd:sequence>
        parsed = {}
        for child in element:
            value = {}
            if child.tag == "name":
                value = self.handle_controlledVocabulary(child)
            elif child.tag == "contact":
                if "url" in child.attrib:
                    value["url"] = child.attrib["url"]
                if child.attrib in "email":
                    value["email"] = child.attrib["email"]
                else:
                    log.warning("'contact' must have an attribute: "
                                "'email'")
                    value["email"] = "missing"
            if value:
                parsed.update(value)
        return parsed
dataset/ETHPy150Open Unidata/siphon/siphon/metadata.py/_ComplexTypes.handle_sourceType/swapped operands of `in`