org.biojava.ontology
Interface Term

All Superinterfaces:
Annotatable, Changeable
All Known Subinterfaces:
ComparableTerm, ComparableTriple, OntologyTerm, RemoteTerm, Triple, Variable
All Known Implementing Classes:
AbstractTerm, IntegerOntology.IntTerm, OntologyTerm.Impl, RemoteTerm.Impl, SimpleComparableTerm, SimpleComparableTriple, Term.Impl, Triple.Impl, Variable.Impl

public interface Term
extends Annotatable

A term in an ontology. This has an Annotation which can be used for storing additional human-displayable information. It is strongly recommended that the Annotation is not used for any machine-readable data -- this should be represented by relations in the ontology instead.

Terms are things that represent things. They are the same sort of thing as a Java object or a prolog atom. A sub-set of terms are themselves relations. This means that they are used to describe associations between pairs of terms. Since all terms can be described, it is possible (and indeed encouraged) to describe relations. As a minimum, you should consider saying if they are identity or partial order relations, or if they are transitive, reflexive, symmetrical, anti-symmetrical or anything else you know about them. This gives the inference engine some chance of working out what is going on.

Since:
1.4
Author:
Thomas Down, Matthew Pocock
See Also:
ComparableTerm

Nested Class Summary
static class Term.Impl
          Simple in-memory implementation of an ontology term.
 
Nested classes/interfaces inherited from interface org.biojava.bio.Annotatable
Annotatable.AnnotationForwarder
 
Field Summary
static ChangeType ONTOLOGY
          ChangeType which indicates that this term's ontology has been altered
 
Fields inherited from interface org.biojava.bio.Annotatable
ANNOTATION
 
Method Summary
 void addSynonym(java.lang.Object synonym)
          Add a synonym for this term.
 java.lang.String getDescription()
          Return a human-readable description of this term, or the empty string if none is available.
 java.lang.String getName()
          Return the name of this term.
 Ontology getOntology()
          Return the ontology in which this term exists.
 java.lang.Object[] getSynonyms()
          Return the synonyms for this term.
 void removeSynonym(java.lang.Object synonym)
          Remove a synonym for this term.
 
Methods inherited from interface org.biojava.bio.Annotatable
getAnnotation
 
Methods inherited from interface org.biojava.utils.Changeable
addChangeListener, addChangeListener, isUnchanging, removeChangeListener, removeChangeListener
 

Field Detail

ONTOLOGY

static final ChangeType ONTOLOGY
ChangeType which indicates that this term's ontology has been altered

Method Detail

getName

java.lang.String getName()
Return the name of this term.


getDescription

java.lang.String getDescription()
Return a human-readable description of this term, or the empty string if none is available.


getOntology

Ontology getOntology()
Return the ontology in which this term exists.


getSynonyms

java.lang.Object[] getSynonyms()
Return the synonyms for this term.


addSynonym

void addSynonym(java.lang.Object synonym)
Add a synonym for this term.


removeSynonym

void removeSynonym(java.lang.Object synonym)
Remove a synonym for this term.