code: def parse_qualifier(self, tup_tree):
          
  
          self.check_node(tup_tree, 'QUALIFIER', ('NAME', 'TYPE'),
                          ('OVERRIDABLE', 'TOSUBCLASS', 'TOINSTANCE',
                           'TRANSLATABLE', 'PROPAGATED', 'xml:lang'),
                          ('VALUE', 'VALUE.ARRAY'))
  
          # The 'xml:lang' attribute is tolerated but ignored.
  
          attrl = attrs(tup_tree)
          qname = attrl['NAME']
          _type = attrl['TYPE']
  
          value = self.unpack_value(tup_tree)
  
          propagated = self.unpack_boolean(attrl.get('PROPAGATED', 'false'))
          overridable = self.unpack_boolean(attrl.get('OVERRIDABLE', 'true'))
          tosubclass = self.unpack_boolean(attrl.get('TOSUBCLASS', 'true'))
          toinstance = self.unpack_boolean(attrl.get('TOINSTANCE', 'false'))
          translatable = self.unpack_boolean(attrl.get('TRANSLATABLE', 'false'))
  
          qual = CIMQualifier(qname, value, _type,
                              propagated=propagated, overridable=overridable,
                              tosubclass=tosubclass, toinstance=toinstance,
                              translatable=translatable)
  
          return qual
docs: Parse QUALIFIER element returning CIMQualifier.
  
            ::
  
              <!ELEMENT QUALIFIER (VALUE | VALUE.ARRAY)>
              <!ATTLIST QUALIFIER
                  %CIMName;
                  %CIMType;              #REQUIRED
                  %Propagated;
                  %QualifierFlavor;
                  xml:lang NMTOKEN #IMPLIED>