SimpleDocument.java
01 /*
02  *  SimpleDocument.java
03  *
04  *  Copyright (c) 1995-2012, The University of Sheffield. See the file
05  *  COPYRIGHT.txt in the software or at http://gate.ac.uk/gate/COPYRIGHT.txt
06  *
07  *  This file is part of GATE (see http://gate.ac.uk/), and is free
08  *  software, licenced under the GNU Library General Public License,
09  *  Version 2, June 1991 (in the distribution as file licence.html,
10  *  and also available at http://gate.ac.uk/gate/licence.html).
11  *
12  *  Kalina Bontcheva, 23/Jul/2004
13  *
14  *  $Id: SimpleDocument.java 17649 2014-03-13 15:04:17Z markagreenwood $
15  */
16 
17 package gate;
18 
19 import java.net.URL;
20 import java.util.Set;
21 
22 
23 /** Represents the commonalities between all sorts of documents.
24  */
25 public interface SimpleDocument extends LanguageResource, Comparable<Object> {
26 
27   /**
28    * The parameter name for the document URL
29    */
30   public static final String
31     DOCUMENT_URL_PARAMETER_NAME = "sourceUrl";
32 
33   /** Documents are identified by URLs
34    */
35   public URL getSourceUrl();
36 
37   /** Set method for the document's URL
38    */
39   public void setSourceUrl(URL sourceUrl);
40 
41   public DocumentContent getContent();
42 
43   /** Set method for the document content
44    */
45   public void setContent(DocumentContent newContent);
46 
47   /** Get the default set of annotations. The set is created if it
48    *  doesn't exist yet.
49    */
50   public AnnotationSet getAnnotations();
51 
52   /** Get a named set of annotations. Creates a new set if one with this
53    *  name doesn't exist yet.
54    */
55   public AnnotationSet getAnnotations(String name);
56 
57   /** @return a set of all named annotation sets in existence or null if none.
58     */
59   public Set<String> getAnnotationSetNames();
60 
61   /**
62    * Removes one of the named annotation sets.
63    * Note that the default annotation set cannot be removed.
64    @param name the name of the annotation set to be removed
65    */
66   public void removeAnnotationSet(String name);
67 
68 // interface SimpleDocument