AnnotationFactory.java
01 /*
02  *  This file is part of GATE (see http://gate.ac.uk/), and is free
03  *  software, licenced under the GNU Library General Public License,
04  *  Version 2, June 1991 (in the distribution as file licence.html,
05  *  and also available at http://gate.ac.uk/gate/licence.html).
06  *
07  *  Created on Jul 25, 2005
08  *  
09  *  $Id: AnnotationFactory.java 7452 2006-06-15 14:45:17Z ian_roberts $
10  *
11  */
12 package gate.annotation;
13 
14 import gate.Annotation;
15 import gate.AnnotationSet;
16 import gate.Node;
17 import gate.FeatureMap;
18 
19 /**
20  * Factory used to create annotations in an annotation set.
21  
22  @author Ken Williams
23  */
24 public interface AnnotationFactory
25 {
26   /**
27    * Adds a new AnnotationImpl to the given set.
28    @param set the set to which the new annotation will be added
29    @param id the ID to use for the new annotation
30    @param start the starting node for the new annotation
31    @param end the ending node for the new annotation
32    @param type the type of the new annotation
33    @param features the features for the new annotation
34    */
35   public Annotation createAnnotationInSet(AnnotationSet set, Integer id,
36                                           Node start, Node end, String type,
37                                           FeatureMap features);
38 }