code: def get_xml(pmc_id):
      
      if pmc_id.upper().startswith('PMC'):
          pmc_id = pmc_id[3:]
      # Request params
      params = {}
      params['verb'] = 'GetRecord'
      params['identifier'] = 'oai:pubmedcentral.nih.gov:%s' % pmc_id
      params['metadataPrefix'] = 'pmc'
      # Submit the request
      res = requests.get(pmc_url, params)
      if not res.status_code == 200:
          logger.warning("Couldn't download %s" % pmc_id)
          return None
      # Read the bytestream
      xml_bytes = res.content
      # Check for any XML errors; xml_str should still be bytes
      tree = ET.XML(xml_bytes, parser=UTB())
      xmlns = "http://www.openarchives.org/OAI/2.0/"
      err_tag = tree.find('{%s}error' % xmlns)
      if err_tag is not None:
          err_code = err_tag.attrib['code']
          err_text = err_tag.text
          logger.warning('PMC client returned with error %s: %s'
                         % (err_code, err_text))
          return None
      # If no error, return the XML as a unicode string
      else:
          return xml_bytes.decode('utf-8')
docs: Returns XML for the article corresponding to a PMC ID.