Relation.java
01 /*
02  *  Relation.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  *  Marin Dimitrov, 16/May/2002
13  *
14  *  $Id: Relation.java 15333 2012-02-07 13:18:33Z ian_roberts $
15  */
16 
17 package gate.wordnet;
18 
19 
20 
21 /** Represents WordNet relation.
22  */
23 public interface Relation {
24 
25   /** !    Antonym (noun,verb,adjective,adverb) */
26   public static final int REL_ANTONYM = 10001;
27 
28   /**    Hypernym (noun,verb)*/
29   public static final int REL_HYPERNYM = 10002;
30 
31   /** ~    Hyponym (noun,verb)*/
32   public static final int REL_HYPONYM = 10003;
33 
34   /** #m    Member holonym (noun)*/
35   public static final int REL_MEMBER_HOLONYM = 10004;
36 
37   /** #s    Substance holonym (noun)*/
38   public static final int REL_SUBSTANCE_HOLONYM = 10005;
39 
40   /** #p    Part holonym (noun)*/
41   public static final int REL_PART_HOLONYM = 10006;
42 
43   /** %m    Member meronym (noun)*/
44   public static final int REL_MEMBER_MERONYM = 10007;
45 
46   /** %s    Substance meronym (noun)*/
47   public static final int REL_SUBSTANCE_MERONYM = 10008;
48 
49   /** %p    Part meronym (noun)*/
50   public static final int REL_PART_MERONYM = 10009;
51 
52   /** =    Attribute (noun,adjective)*/
53   public static final int REL_ATTRIBUTE = 10010;
54 
55   /** *    Entailment (verb) */
56   public static final int REL_ENTAILMENT = 10011;
57 
58   /** >    Cause (verb)*/
59   public static final int REL_CAUSE = 10012;
60 
61   /** ^    Also see (verb,adjective)*/
62   public static final int REL_SEE_ALSO = 10013;
63 
64   /** $    Verb Group (verb)*/
65   public static final int REL_VERB_GROUP = 10014;
66 
67   /** <    Participle of verb (adjective)*/
68   public static final int REL_PARTICIPLE_OF_VERB = 10015;
69 
70   /** &    Similar to (adjective)*/
71   public static final int REL_SIMILAR_TO = 10016;
72 
73   /** \    Pertainym - pertains to noun (adjective)*/
74   public static final int REL_PERTAINYM = 10017;
75 
76   /** \    Derived from adjective (adverb)*/
77   public static final int REL_DERIVED_FROM_ADJECTIVE = 10018;
78 
79   /** returns the type of the relation - one of REL_XXX*/
80   public int getType();
81 
82   /** returns the inverse relation (Hyponym  <-> Hypernym, etc)*/
83   public int getInverseType();
84 
85   /** returns a label for the relation, e.g. "HYPERNYM" */
86   public String getLabel();
87 
88   /** returns a symbol for the relation, e.g. "@" */
89   public String getSymbol();
90 
91   /** checks if the relation is applicab;le to specific POS - see REL_XXX comments */
92   public boolean isApplicableTo(int pos);
93 
94 }