Taxon constraints

Chris Mungall edited this page Jun 17, 2015 · 8 revisions

Taxon constraints

Status: intermediate draft

Authors and contributors:

  • Chris Mungall (author)
  • Jen Deegan (contributor)

Date: 2012

Document Type: ontology_design_pattern


Confusion over naming and homology can lead to errors when developing or using multi-species ontologies. The addition of taxon constraints in OWL can eliminate certain kinds of errors


We use the following shortcut properties

These are expanded to in_taxon axioms, with the exception of the last one, which has no logical interpretation and is intended to mark areas where we suspect there should be a taxon constraint, with further discussion required


Often we can never be sure when a structure evolved, when it disappears, or when a structure that fits the same definition convergently evolved. Taxon constraints are not intended to convey precise (sometimes controversial) hypotheses - rather they convey conservative, relatively uncontroversial 'common knowledge' that is useful for error checking and building taxon modules.

Use of NCBI taxonomy ontology

The main ontology translation of NCBITaxonomy equates taxa with classes whose instances are organisms. The taxon constraints follow this model.

The NCBI taxonomy may not be precise enough for precise evolutionary hypotheses, but it should be sufficient for the kinds of broad taxon constraints useful for error checking.

Reference structures and variants

Taxon constraints should be understood to refer to reference members of species. For example, 'digit 6 never_in_taxon Homo sapiens' is a valid taxon constraint despire the presence of polydactlyous humans.

Viewing in Protege

You can see the only_in_taxon constraints for a class by navigating to that class in Protege. You will also see any inherited constraints under the "anonymous ancestors" view.

Seeing the never_in_taxon constraints is more difficult - these are expanded to [General Class Inclusion Axioms]. Click on the taxon of interest, and view the "usage" tab. For example, the structures that are never present in Homo sapiens:


What is being said here is that the intersection of the set placenta labyrinth and the set of things in Homo sapiens is the empty set.

Note this won't show inherited never_in constraints - however, the reasoner will detect these.

See Also: