Skip to content

Cell Ontology (CL) relations guide.


The aim of this document is to provide an accessible guide to how to use relations to record the properties that define cell types including location, lineage, function, morphology and marker genes. The term 'relations' here refers principally to OWL object properties, but also includes annoation properties used as shortcuts for more expressive logical axioms that can be programatically generated from them.

Relations in this guide are grouped by general use case (e.g. recording location) and each is illustrated by an example e.g.-

  • melanocyte subClassOf ‘has part’ some melanosome.

This should be read as ‘all melanocytes have some type of melanosome as a part’ as should all axioms of this form. The examples should all be correct, but may not reflect the full complexity of axioms in the ontology. Where no example is currently present in CL, examples are taken from the Drosophila Anatomy Ontology, which follows the same schema.

Recording location

Location of cell types is recorded by relating a cell type to a term in an anatomical ontology. For the Cell Ontology this means a term from Uberon.

'part of'

Use part_of for cases where the location is a material anatomical structure (rather than a space, such as a sinus) and all of the cell is within the anatomical structure.

epithelial cell' subClassOf 'part of' some epithelium

‘part of’ is transitive, which means that it applies across chains of relationships. For example,

‘ileal goblet cell’ part_of some ileum

ilium ‘part of’ some ‘small intestine’

‘small intestine’ ‘part of’ some intestine


’ileal goblet cell’ ‘part of’ some ‘small intestine’ & ‘ileal goblet cell’ ‘part of’ some intestine


To record the location of a cell in an anatomical space (e.g., a sinus), 'located in' is used.

For example:

lymph node marginal reticular cell’ subClassOf 'located in' some 'subcapsular sinus of lymph node'


'part of' applies in cases where an entire cell is within an anatomical structure, but some cells have parts in multiple anatomical structures. For example, many neurons span multiple regions of the central nervous system. The general relation for this is overlaps (has some part in).

overlaps is not currently used directly in the cell ontology (time of writing 05/2023), but more specific relationships exist for recording the location of neurons and their parts. These are described in the next section.

Recording the location of neurons

has soma location

When neurobiologists talk about the location of vertebrate neurons, they are typically referring to soma location. The importance of soma location to identify is underscored by how commonly cell types are named, in part, by soma location. We therefore have a dedicated relation for recording this: 'has soma location'.

For example, anterior horn motor neuron has the following subclass axiom:

'has soma location' some 'ventral horn of spinal cord'

axiomatization of ‘has soma location’

  • subPropertyOf: overlaps # if X has_soma_location some Y, then X overlaps some Y)

  • domain: neuron # X has_soma_location some Y => X is inferred to be a subClassOf neuron

  • property chain: has_soma_location o part_of --> has_soma_location # If x has soma location y and y is part_of z, then x has_soma_location_z

Example of reasoning with the property chain:

'cortical interneuron' equivalentTo 'interneuron' that has_soma_location some 'cerebral cortex'

'rosehip neuron' subClassOf interneuron and has_soma_location some 'cortical layer 1'

'cortical layer 1' subClassOf part_of some 'cerebral cortex

=> 'rosehip neuron' subClassOf 'cortical interneuron'

sends synaptic output to region

A relationship between a neuron and a region, where the neuron has a functionally relevant number of output synapses in that region.

'adult basket subesophageal neuron' SubClassOf sends synaptic output to region some inferior posterior slope

receives synaptic input in region

A relationship between a neuron and a region, where the neuron has a functionally relevant number of input synapses:

e.g. 'adult basket subesophageal neuron' SubClassOf ‘receives synaptic input in region’ some ‘superior posterior slope


Use this to record the tracts or nerves that a neuron’s projections fasciculate with.

e.g. ‘Betz cell’ subClasssOf ‘fasciculates with’ some ‘corticospinal tract’.

subPropertyOf: overlaps

domain: neuron

range: neuron projection bundle

Recording synaptic connectivity (neurons)

To record neuron-to-neuron or motor neuron-to-target muscle connectivity, consider the following object properties. These properties should be used when connectivity is key to the definition, for example, in cases where a motor neuron type is defined by the type of muscle fiber on which it synapses.

synapsed to

For example, 'alpha motor neuron' SubClassOf synapsed to some 'extrafusal muscle fiber'

synapsed by

For example, 'extrafusal muscle fiber' SubClassOf synapsed by some 'alpha motor neuron'

Recording function

Cellular function is recorded by linking GO biological process terms with the object properties 'capable of' and ‘capable of part of’

'capable of'

Use this relation where the cell is capable of carrying out the entirety of the process

For example, 'hilus cell of ovary' has the following subclass:

'capable of' some 'androgen secretion'

Recording neurotransmitter for neurons

To record which neurotransmitter a neuron releases, use a 'capable of' relation to link the neuron to a subclass of GO neurotransmitter secretion that references a neurotransmitter type. This should be sufficient for autoclassification.

e.g. 'medium spiny neuron' 'capable of' some 'gamma-aminobutyric acid secretion, neurotransmission'

‘capable of part of’

Use this relationship where only part of the process occurs in the cell type.

e.g. 'retinal bipolar neuron' 'capable of part of' some 'visual perception'

Recording developmental lineage

Developmental lineage is recorded between cell types with the object property develops from (a transitive property), or in the case where there are no intermediates between the cells, 'directly develops from' (a non-transitive subproperty of develops_from)

For example, 'leukocyte' subClassOf develops from some 'hematopoietic stem cell'

Recording cell markers

Only markers that are necessary to define a cell type should be recorded.

cell surface (protein) markers

The cell ontology has a set of terms for recording cell surface markers.

The most commonly used relation for recording markers is 'has plasma membrane part'. This object property is used to record cell surface markers, especially in immune cells. There are also more specific properties, 'has low plasma membrane amount' and 'has high plasma membrane amount', that can be used at an editor's discretion. In each case, a term from the PRotein Ontology (PRO) or a protein complex term from the Gene Ontology (GO) is used as the object of the relation.

For example, 'alpha-beta T cell' has the following equivalence axiom:

'T cell' and 'has plasma membrane part' some 'alpha-beta T cell receptor complex'

Absence of a marker can be recorded using lacks_plasma_membrane_part

Warning - this is used in place of the more accurate OWL expression "NOT has_part some X*** in order to keep within the EL profile of OWL. It's use with a general class as a target can potentially lead to reasoning errors.

recording gene markers


Use this to link a cell type to a gene or gene product that defines it:

For example:

'lamp5 GABAergic cortical interneuron' EquivalentTo: interneuron and ('has soma location' some 'cerebral cortex') and ('capable of' some 'gamma-aminobutyric acid secretion, neurotransmission') and (expresses some 'lysosome-associated membrane glycoprotein 5')

In FBbt, FlyBase Gene IDs are permitted here (using standard resolvable URL pattern). In CL currenly only PRO IDs are permitted. In PCL, a broader range of IDs have been used (depending on data sources used).

Recording cell parts

To record parts above the granularity of proteins and complexes, use a 'has part' relationship with an object from the Gene Ontology cellular_component branch.

e.g. 'melanocyte' subClassOf 'has part' some 'melanosome'

This GO term can be combined with a PATO quality term (e.g. for shape) where necessary, e.g.

For example:

'mature basophil' subClassOf ('has part' some (nucleus and ('has characteristic' some lobed)))

Recording general cellular characteristics

The ontology PATO, has a rich set of terms that can be used to record the general characteristics of cells, such as their morphology. These are recorded using 'has characteristic'.

In choosing PATO terms, avoid those referring to some change in characteristic (e.g,.’ increased branchiness’). The following list of examples is not exhaustive:

Recording Morphology

PATO has a set of general morphology terms which may be applicable to cells.

For example, erythrocyte subClassOf 'has characteristic' some biconcave

PATO also has a set of terms for specific cell morphologies (mostly neuronal), e.g.

‘Betz cell’ subClassOf ‘has characteristic’ some ‘standard pyramidal morphology’

Recording nuclear number

To record the number of nuclei in a cell, use a PATO subclass under the term 'nucleate quality' with the 'has characteristic' relation.


For example,

platelet subClassOf ('has_characteristic' some anucleate)

Note - that PATO includes bridging axioms that infer part relationships based on these characteristics.


cell and ('has characteristic' some multinucleate) SubClassOf 'has part' some nucleus

Taxon constraints