code: def to_dict(_dict, onts, mdb_safe=False):
      
      res = {}
      if isinstance(_dict, SamlBase):
          res["__class__"] = "%s&%s" % (_dict.c_namespace, _dict.c_tag)
          for key in _dict.keyswv():
              if key in IMP_SKIP:
                  continue
              val = getattr(_dict, key)
              if key == "extension_elements":
                  _eel = extension_elements_to_elements(val, onts)
                  _val = [_eval(_v, onts, mdb_safe) for _v in _eel]
              elif key == "extension_attributes":
                  if mdb_safe:
                      _val = dict([(k.replace(".", "__"), v) for k, v in
                                   val.items()])
                      #_val = {k.replace(".", "__"): v for k, v in val.items()}
                  else:
                      _val = val
              else:
                  _val = _eval(val, onts, mdb_safe)
  
              if _val:
                  if mdb_safe:
                      key = key.replace(".", "__")
                  res[key] = _val
      else:
          for key, val in _dict.items():
              _val = _eval(val, onts, mdb_safe)
              if _val:
                  if mdb_safe and "." in key:
                      key = key.replace(".", "__")
                  res[key] = _val
      return res
docs: Convert a pysaml2 SAML2 message class instance into a basic dictionary
      format.
      The export interface.
  
      :param _dict: The pysaml2 metadata instance
      :param onts: List of schemas to use for the conversion
      :return: The converted information