docs: def get_ebnf_template():
      """Get EBNF template from Github belbio/bel_specifications repo"""
  
      spec_dir = config["bel"]["lang"]["specifications"]
      local_fp = f"{spec_dir}/bel.ebnf.j2"
  
      repo_url = (
          "https://api.github.com/repos/belbio/bel_specifications/contents/resources/bel.ebnf.j2"
      )
  
      params = {}
      github_access_token = os.getenv("GITHUB_ACCESS_TOKEN", "")
      if github_access_token:
          params = {"access_token": github_access_token}
  
      try:
          # Get download url for template file
          r = requests.get(repo_url, params=params)
  
          if r.status_code == 200:
              template_url = r.json()["download_url"]
          else:
              log.warning("Could not get EBNF file download url from Github")
  
          # Get template file
          try:
              r = requests.get(template_url, params=params, allow_redirects=True)
              if r.status_code == 200:
                  open(local_fp, "wt").write(r.text)
              else:
                  log.warning(
                      f"Could not download EBNF file from Github -- Status: {r.status_code}  Msg: {r.text}"
                  )
  
          except Exception as e:
              log.warning(
                  f"Could not download EBNF file from Github -- Status: {r.status_code}  Msg: {e}"
              )
  
      except Exception as e:
          log.warning("Could not download BEL EBNF template file")
          if not os.path.exists(f"{spec_dir}/local_fp"):
              log.error("No BEL EBNF template file available")
  
      return local_fp