Annotation
![]() |
An annotation is a note that is made while reading any form of text. This may be as simple as underlining or highlighting passages. Annotated bibliographies give people a source that is useful to an author in constructing a paper or argument. Creating these comments, usually a few sentences long, establishes a summary for and expresses the relevance of each source prior to writing. The term also has a special meaning in a number of other fields.
Software engineering
In programming, annotations at one time were used mainly for the purpose of expanding code documentation and comments. They were typically ignored when the code is compiled or executed. Today (mid-2012), annotations have been greatly expanded in some languages (such as Java) and by frameworks built on top of the languages (such as Spring) so they can add significant runtime features to an application. There are annotations for things such as making objects automatically (sort of) storable in a database, for making objects cachable or for asserting multi-threading behavior of code.
Not only code but text manipulated by a program can be annotated; e.g. A markup language (such as XML or HTML) is a modern system for annotating a text in a way that is syntactically distinguishable from that text.
Java annotations
A special case is the Java programming language, where annotations can be used as a special form of syntactic metadata in the source code.[1] Classes, methods, variables, parameters and packages may be annotated. The annotations can be embedded in class files generated by the compiler and may be retained by the Java virtual machine and thus influence the run-time behaviour of an application. For details, see Java annotation.
Source control
Annotate aka Blame or Praise is a function used in source control systems such as Team Foundation Server and Subversion to determine who committed changes to the source code into the repository. A person, who is annotated, is blamed for committing changes to the source code into the repository which caused the program to fail or behave in an unintended fashion.
Computational biology
Since the 1980s, molecular biology and bioinformatics have created the need for DNA annotation. DNA annotation or genome annotation is the process of identifying the locations of genes and all of the coding regions in a genome and determining what those genes do. An annotation (irrespective of the context) is a note added by way of explanation or commentary. Once a genome is sequenced, it needs to be annotated to make sense of it.
For DNA annotation, a previously unknown sequence representation of genetic material is enriched with information relating genomic position to intron-exon boundaries, regulatory sequences, repeats, gene names and protein products. This annotation is stored in genomic databases as Mouse Genome Informatics, FlyBase, and WormBase. Educational materials on some aspects of biological annotation from this year's Gene Ontology annotation camp and similar events are available at the Gene Ontology website.
The National Center for Biomedical Ontology (www.bioontology.org) develops tools for automated annotation of database records based on the textual descriptions of those records.
Imaging
In the digital imaging community the term annotation is commonly used for visible metadata superimposed on an image without changing the underlying master image, such as sticky notes, virtual laser pointers, circles, arrows, and black-outs (cf. redaction).
Law
In the United States, legal publishers such as Thomson West and Lexis Nexis publish annotated versions of statutes, providing information about court cases that have interpreted the statutes. Both the federal United States Code and state statutes are subject to interpretation by the courts, and the annotated statutes are valuable tools in legal research.
Linguistics
In linguistics, annotation include comments and metadata; these non-transcriptional annotations are also non-linguistic. A collection of texts with linguistic annotations is known as a corpus (plural corpora). The Linguistic Annotation Wiki describes tools and formats for creating and managing linguistic.
See also
- Automatic image annotation
- Coding (social sciences)
- Marginalia
- Text annotation
- Web annotation
- PDF annotation
- XPS annotation
- Footnote
- Abstract (summary)
- Nota Bene
- Comment
- Java annotation
References
- ^ "JDK 5.0 Developer's Guide: Annotations". Sun Microsystems. 2007-12-18. Archived from the original on 6 March 2008. Retrieved 2008-03-05.
{{cite web}}
: Unknown parameter|deadurl=
ignored (|url-status=
suggested) (help).