| OntoLexLR.java |
1 /*
2 * OntoLexLR.java
3 *
4 * Copyright (c) 1998-2005, 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 * Kalina Bontcheva, 23/February/2003
12 *
13 * $Id: OntoLexLR.java,v 1.5 2005/01/11 13:51:36 ian Exp $
14 */
15
16 package gate.lexicon;
17
18 import java.util.List;
19 import java.util.Set;
20
21 import gate.LanguageResource;
22
23 /**
24 *
25 * <p>Title: OntoLexLR interface, GATE2 </p>
26 * <p>Description: This interface describes the mapping between ontological
27 * concepts/instances and lexical entries. Such mapping is needed to
28 * support language generation and also understanding that uses both lexicons
29 * of synonyms and other lexical info and an ontology of the domain.
30 * </p>
31 * <P> Developed for the purpose of the
32 * <a href="http://www.aktors.org/miakt/">MIAKT project</a>, February 2003.</P>
33 * <p>Copyright: Copyright (c) 2000</p>
34 * <p>Company: University Of Sheffield</p>
35 * @author Kalina Bontcheva
36 * @version 1.0
37 */
38
39 public interface OntoLexLR extends LanguageResource {
40
41 /** Returns a list of objects which are the concept IDs corresponding to
42 * the given lexical Id. A list is returned because there might be more than
43 * one such concept IDs. Null is returned if there is no corresponding
44 * concept ID.
45 */
46 public List getConceptIds(Object lexId);
47
48 /** Returns a list of objects which are the lexical IDs corresponding to
49 * the given concept Id. A list is returned because there might be more than
50 * one such lexical IDs. Null is returned if there is no corresponding
51 * lexical ID.
52 */
53 public List getLexIds(Object conceptId);
54
55 /** Returns a list of objects which are all lexical IDs in this mapping.
56 */
57 public Set getAllLexIds();
58
59 /** Returns a list of objects which are all concept IDs in this mapping.
60 */
61 public Set getAllConceptIds();
62
63 /** Add a concept<->lexical ID pair
64 */
65 public void add(Object conceptId, Object lexId);
66
67 /** Remove all mappings to lexical items for the given concept Id
68 */
69 public void removeByConcept(Object conceptId);
70
71 /** Remove all mappings to concept items for the given lexical Id
72 */
73 public void removeByLexId(Object lexId);
74
75 /** Remove the given mapping
76 */
77 public void remove(Object conceptId, Object lexId);
78
79 /**
80 * True if the mapping is empty
81 */
82 public boolean isEmpty();
83
84 /**
85 * Clear the mapping
86 */
87 public void clear();
88
89 /**
90 * Accessor for the lexical Id property. It
91 * specifies which lexicon is this mapping for
92 */
93 public Object getLexKBIdentifier();
94
95 /**
96 * Set method for the lexical Id property. It
97 * specifies which lexicon is this mapping for
98 */
99 public void setLexKBIdentifier(Object lexId);
100
101 /** Accessor for the ontology Id property */
102 public Object getOntologyIdentifier();
103
104 /**
105 * Set method for the ontology Id property. It
106 * specifies which ontology is this mapping for
107 */
108 public void setOntologyIdentifier(Object ontoId);
109 }