| SimpleAnnotation.java |
1 /*
2 * SimpleAnnotation.java
3 *
4 * Copyright (c) 1998-2004, The University of Sheffield.
5 *
6 * This file is part of GATE (see http://gate.ac.uk/), and is free
7 * software, licenced under the GNU Library General Public License,
8 * Version 2, June 1991 (in the distribution as file licence.html,
9 * and also available at http://gate.ac.uk/gate/licence.html).
10 *
11 * Hamish Cunningham, 19/Jan/00
12 *
13 * $Id: SimpleAnnotation.java,v 1.1 2004/07/23 11:33:20 kalina Exp $
14 */
15
16 package gate;
17
18 import java.io.Serializable;
19 import java.util.Set;
20
21 import gate.util.FeatureBearer;
22 import gate.util.IdBearer;
23
24 /** An Annotation is an arc in an AnnotationSet. It is immutable, to avoid
25 * the situation where each annotation has to point to its parent graph in
26 * order to tell it to update its indices when it changes.
27 * <P> Changes from TIPSTER: no ID; single span only.
28 *
29 * SimpleAnnotation was introduced to simplify the API of annotations
30 */
31 public interface SimpleAnnotation
32 extends FeatureBearer, IdBearer, Comparable, Serializable {
33
34 /** The type of the annotation (corresponds to TIPSTER "name"). */
35 public String getType();
36
37 /** The start node. */
38 public Node getStartNode();
39
40 /** The end node. */
41 public Node getEndNode();
42
43 /** Ordering */
44 public int compareTo(Object o) throws ClassCastException;
45
46 } // interface SimpleAnnotation,
47