Befitting their importance in machine learning applications, Ontologies are a first-class entity in the Encord platform, with direct connections to users, Organizations, and Projects. One Ontology can be linked to multiple Projects simultaneously, while Projects can only have a single Ontology

DICOM customers might be more familiar with the term ‘labeling protocol’, which is equivalent to an Ontology.

Edit Ontologies

Modifying an Ontology impacts all Projects it is linked to, potentially leading to issues with existing labels. We strongly advise against altering Ontologies that are currently in use by Projects with labeled data, as this can result in corrupted labels, making them invalid for training machine learning models. Deleting parts of an Ontology may also leave behind orphaned labels, which require cleanup.

You can edit any Ontology by updating its structure in the same way you did during the creation process. To edit an Ontology, simply select it from your list of Ontologies.

If you attempt to edit an Ontology used by multiple Projects, a warning appears. The Linked Projects pane in the Ontology Settings will show a list of all Projects using that Ontology.

  • Best practice: We recommend copying the Ontology, making the necessary changes to the duplicate, and using the revised version in future projects. This approach minimizes the risk to existing data while allowing you to implement updates.
  • Avoid changes to active Ontologies: Editing an Ontology that is in use is generally discouraged. While adding new elements is usually safe, renaming or modifying existing ones can corrupt labels and compromise your data.
  • Be cautious with deletions: Deleting parts of an Ontology is not recommended, as it may result in orphaned labels that need manual cleanup.
  • Programmatic migrations: If changes are necessary, we can run programmatic migrations. However, this process must be carefully scoped and coordinated with our support team. Contact support for assistance.

Ontology settings

Select an Ontology, and navigate to the Settings tab to access the Ontology’s settings.

Copy Ontologies

An Ontology can be copied in the Options page of the Ontology’s settings. Click the Copy ontology button to copy the Ontology.

Copying an ontology copies all object primitives, and you have the option to copy any team members associated with the Ontology. The new Ontology is not attached to any Projects.

Manage collaborators

Team members / collaborators associated with the Ontology are managed in the Team pane of the Ontology’s options.

Add collaborators

  1. Click the Invite collaborators button to add users to the Ontology. A dialog appears.
  1. Type the email address of the user(s) you want to add, and select the role you want to give these users.
  1. Click Add to add these users to the Ontology.

Change collaborator role

To change the role of a collaborator on the Ontology, click the dropdown and select the role you want to apply to the user.

  • Users with the Admin role can modify the Ontology
  • Users with the Viewer role cannot make changes to the Ontology. However, a Viewer can copy the Ontology.
An Admin cannot be reverted to a Viewer. To revoke Admin access for a user, contact support@encord.com.

Delete collaborators

Delete collaborators by clicking the Delete icon next to a user’s name.

Object primitives

Object primitives (formerly called Skeleton templates) are customizable Ontology class.

Object primitives are created in the Object primitives section of the Settings tab of an Ontology. Here you define a configuration of key points, and the vertices between them.

  • A. ‘Add a primitive’: Start creating a new object primitive template.
  • B. ‘Names hidden’: Show or hide the vertex names in the canvas.
  • C. ‘Add a point’: Add more points on the canvas. Points are added to the list of points as they are made.
  • D. ‘Add an edge’: Add more edges. Mouseover the first point and click once before clicking over the
    end point of the edge. Edges are added to the list of edges as they are created.
  • E. ‘Move/edit’: Move vertices. Mouseover the vertex you wish to move. Click and drag to move the target vertex to the new desired location.
  • F. ‘Save current state’: Save the template. If you exit the editor screen without saving all your work will be lost.
  • G. ‘Name’: Enter a name for this object primitive. This name will be displayed in the ontology structure object annotation type selection.
  • H. ‘Delete template’: Delete this object primitive. Please ensure you’ve removed this object primitives from
    all connected objects before deleting, or the ontology structure may enter an unstable state.
  • I. ‘Points’: List of points with their coordinates and names. Coordinates are defined as (0, 0) in the
    upper left. You can also add points using the + Add a point button at the bottom of the list.
  • J. ‘Edges’: List of edges. You can also add edges by using the + Add an edge button at the bottom of the list.

To create an object primitive:

  1. Click Add a primitive (A).
  2. Give your primitive a meaningful name.
  3. Click Add. You are now ready to set up your primitive.
  4. Click Add a point (C). Add as many points as you need.
  5. Click Add an edge (D). Connect your points as needed.
  6. Click Save current state (F) to save your primitive.
You can adjust the color of points and edges by clicking the color circle next to their names in the list of points and edges.

To use your object primitive:

  1. Return to the Schema tab of your Ontology.
  2. Click + Add object.
  3. Select your object primitive from the list of Object classes.
  4. Save your Ontology.
Learn how to work with Skeletons here

Linked Projects

The Linked projects pane shows a list of Projects using the Ontology. You can jump to any of the projects displayed by clicking the View link.

Delete Ontology

Use the Danger zone pane to delete an Ontology.

Ontologies that are attached to one or more Project cannot be deleted. To delete an Ontology, it has to be removed from all Projects it is attached to.
Note that deletion is a permanent action, and deleted Ontologies cannot be restored.

View and join Ontologies in your Org

Organization Admins can search for and join any Ontology that exists within the Organization.

  1. Navigate to Ontologies in the Encord platform.
  2. Select the All Encord ontologies tab.
  3. Find the Ontology you want to join.
  4. Click Join ontology to join the Ontology.

When an Organization Admin joins an Ontology, they are automatically assigned the Admin user role for that Ontology.

Ontologies can be filtered by Ontology owner.
See all the Ontologies you belong to by clicking the Filter by search bar, and selecting My ontologies only.