Entities and Relationships
The Annotate SDK revolves around three major concepts: Projects, Datasets, and Ontologies. Each of these concepts is linked to a class
that allows you to interact with them using the Annotate SDK. For example, the Project has an associated Project class and the Dataset has an associated Dataset class.
Entity Relationships
The following diagram shows how entities in Encord are organized.
SDK Data Structure
The following diagram shows how data in the Encord SDK is structured for each labeled Data Unit.
Users
Users are people authenticated to interact with the Encord platform. Users can access resources and capabilities that are also available on the platform. For a Web app specific description of capabilities, go to the Annotate page.
Projects
The space where labels, annotations, and reviews live. Projects can be linked to multiple datasets. For a Web-app specific introduction, go to the Projects page.
Datasets
Datasets are subsets of data you upload to Encord. Datasets are attached to, and can be reused across multiple Projects.
Learn more about Datasets in Encord here.
Each Dataset is identified using a unique "<dataset_hash>"
- a unique ID that can be found within the dataset’s Settings, or the URL in the Encord platform when the dataset is being viewed, as shown below.
Data units
Datasets are composed of data units - packages of data that constitute a single annotation task. For example, a video, a single image, an image group, or a DICOM series. Data units are identified using their <data_hash>
, which is found in the URL when the data unit is open in your browser, as shown below.
app.encord.com/label_editor/\<data_hash>&\<project_hash>/0/0
or app.us.encord.com/label_editor/\<data_hash>&\<project_hash>/0/0
<data_unit_hash>
and the <project_hash>
are both shown in the URl when a data unit is open in the browser. They are separated by the ’&’ symbol.Label Row
Label Rows are collections of labels belonging to a particular data unit in a Project.
Branches
All labels are created on a branch. In Consensus Projects, each annotator works on their own separate branch to create labels. In Non-Consensus Projects, all labels are created on the main
branch.
Learn more about Consensus Projects here.
Ontology
Ontologies are hierarchical structures that define the top-level concepts and categories in your data, along with nested attributes for detailed annotations. They consist of Classes at the top level, which can be either Objects or Classifications.
Learn more about Ontologies here.
Was this page helpful?