code: def read_from_ancillary_file(self, custom_xml=None):
          
  
          if custom_xml and os.path.isfile(self.xml_uri):
              self.read_xml()
          else:
              if not self.read_json():
                  self.read_xml()
docs: try to read xml and json from existing files or db.
  
          This is used when instantiating a new metadata object. We explicitly
          check if a custom XML was passed so we give it priority on the JSON.
          If no custom XML is passed, JSON has priority
  
          :param custom_xml: the path to a custom xml file
          :type custom_xml: str