code: def parse_complex_list(tree_to_parse, xpath_root, xpath_map, complex_key):
      
  
      complex_list = []
  
      for element in get_elements(tree_to_parse, xpath_root):
          complex_struct = parse_complex(element, xpath_root, xpath_map, complex_key)
          if complex_struct:
              complex_list.append(complex_struct)
  
      return complex_list
docs: Creates and returns a list of Dictionary data structures parsed from the metadata.
      :param tree_to_parse: the XML tree compatible with element_utils to be parsed
      :param xpath_root: the XPATH location of each structure inside the parent element
      :param xpath_map: a dict of XPATHs corresponding to a complex definition
      :param complex_key: indicates which complex definition describes each structure