code: def parse_attribute_map(filenames):
      
      forward = {}
      backward = {}
      for filename in filenames:
          with open(filename) as fp:
              for line in fp:
                  (name, friendly_name, name_format) = line.strip().split()
                  forward[(name, name_format)] = friendly_name
                  backward[friendly_name] = (name, name_format)
  
      return forward, backward
docs: Expects a file with each line being composed of the oid for the attribute
      exactly one space, a user friendly name of the attribute and then
      the type specification of the name.
  
      :param filenames: List of filenames on mapfiles.
      :return: A 2-tuple, one dictionary with the oid as keys and the friendly
          names as values, the other one the other way around.