Introduction to Filters

OBO-Edit filters allow you to specify some subset of an ontology. A filter might be able to pick out all the terms in the ontology that have "kinase" in their name, or find every link in the ontology whose relationship type is part_of.

If a term or link belongs to the subset that a filter specifies, the term or link is said to match the filter. For example, if we create a filter for terms whose name contains the word "kinase", that filter would match "fructokinase activity" but not "fructose-biophosphatase activity". 

Once a filter has been created, there are a number of things you can do with it. Filters can be used to search an ontology, resulting in a list of matching terms and links. A filter can be used to create a custom renderer for an ontology, resulting in special coloring or fonts for matching terms and links. Or, a filter can be used to filter an ontology so that terms or links that don't match the filter are hidden in the ontology editor panel.


Link Filters vs Term Filters

There are two kinds of filters in OBO-Edit: term filters and link filters.

Term filters match ontology "terms". Things like relations, instances and classes can be matched by a term filter.

Link filters match links between terms. This does not mean that a link filter matches two terms. A link filter will never match any terms. It will only match links between terms.

A link can be thought of as a triplet that consists of a child term, a relationship type, and a parent term. This guide uses the following notation for describing a link: [child term] --[type]--> [parent term]. An is_a link between "organ growth" and "growth" would be written as: "organ growth" --is_a--> "growth".