Skip to content

Getting Hands on with Ontologies


Sign up for a free GitHub account


No advance preparation is necessary.

Optional: If you are unfamiliar with ontologies, this introduction to ontologies explanation may be helpful.

What is delivered as part of the course

Description: The purpose of this lesson is to train biomedical researchers on how to find a term, what to do if they find too many terms, how to decide on which term to use, and what to do if no term is found.

Learning objectives

  • Understand open source ontology community development
  • Identify the best ontology or ontologies for annotation of biomedical data
  • Find ontology terms and chose the best ontology term
  • Make new term requests


Introduction to Community Based Ontology Development

This how to guide on How to be an Open Science Engineer - maximizing impact for a better world has a lot of details about the philosophy behind open science ontology engineering. Some key points are summarized below.

  • The ontologies that I will promote in this lesson are part of the OBO Foundry, a community of ontology developers that are committed to developing open, freely available, community ontologies under a share set of guiding principles, that ensure the ontologies are interoperable, scientifically accurate, amongst other qualities.
  • A key feature of the success of our ontologies is the community who contributes to them. (I claim they are successful because they are widely used in biomedical curation, databases, bioinformatics and computational analyses.)
  • Principle of Collaboration:
    • These ontologies rely on community contributions and many are not funded. We value your expertise in making new term requests, requesting changes or commenting on existing tickets.
    • The OBO Academy has a lot of self-paced learning material, if you are inclined to learn how to contribute directly to ontologies.
    • Join Slack channels and email lists.
    • Reduce work for others as much as possible by communicating clearly.
    • Be positive and generous with gratitude and attribution.
    • Promote truly open communication: Create public tickets which can be searched and referred to later.
  • Principle of Upstream Fixing
    • Report an bugs or errors to the source ontology.
    • Make term requests for any missing terms.
  • Principle of No Ownership:
    • Ensure that you see your issues through to the end.
    • Feel free to nudge ontology curators.

Where to find ontology terms and how to chose the right terms

See lesson on Using Ontologies and Ontology Terms

How to make new term requests

See How to guide on Make term requests to existing ontologies


  1. Sign up for a GitHub account if you do not already have one. (Some of the exercises can be done without being signed into GitHub).
  2. Search for an ontology term in OLS:
    • Search for 'exhaust exposure'. Note how many results you get. Do you have a sense of how to select the appropriate term for your annotations?
  3. Make a new term request for a missing term:
    • Suppose you want a more general term than already exists: exhuast exposure. Using the instructions in How to guide on Make term requests to existing ontologies, make a new term request to an appropriate GitHub repository for an ontology, such as ECTO. (Note, since this is just for practice, please do not submit the ticket.)