docs: def extract_links_from_reference(self, short_id):
          """
          Return a dictionary with supplement files (pdf, csv, zip, ipynb, html
          and so on) extracted from supplement page.
  
          @return: @see CourseraOnDemand._extract_links_from_text
          """
          logging.debug('Gathering resource URLs for short_id <%s>.', short_id)
  
          try:
              dom = get_page(self._session, OPENCOURSE_REFERENCE_ITEM_URL,
                             json=True,
                             course_id=self._course_id,
                             short_id=short_id)
  
              resource_content = {}
  
              # Supplement content has structure as follows:
              # 'linked' {
              #   'openCourseAssets.v1' [ {
              #       'definition' {
              #           'value'
  
              for asset in dom['linked']['openCourseAssets.v1']:
                  value = asset['definition']['value']
                  # Supplement lecture types are known to contain both <asset> tags
                  # and <a href> tags (depending on the course), so we extract
                  # both of them.
                  extend_supplement_links(
                      resource_content, self._extract_links_from_text(value))
  
                  instructions = (IN_MEMORY_MARKER + self._markup_to_html(value),
                                  'resources')
                  extend_supplement_links(
                      resource_content, {IN_MEMORY_EXTENSION: [instructions]})
  
              return resource_content
          except requests.exceptions.HTTPError as exception:
              logging.error('Could not download supplement %s: %s',
                            short_id, exception)
              if is_debug_run():
                  logging.exception('Could not download supplement %s: %s',
                                    short_id, exception)
              return None