public Pointer[] getPointers(PointerType type) { return getSource().getPointers(type); }
public Pointer[] getPointers() { return getSource().getPointers(); }
private void addPointerFeature(Set<String> f1, Synset synset, WordNetFeatureClass name, String key) { if (featureClasses.contains(name)) { for (Pointer p : synset.getPointers()) { f1.add(key + p.getType().getLabel()); } } }
private void addPointerFeature(Set<String> f1, Synset synset, WordNetFeatureClass name, String key) { if (featureClasses.contains(name)) { for (Pointer p : synset.getPointers()) { f1.add(key + p.getType().getLabel()); } } }
private void addRelatedWordsLexFileFeatures(Set<String> f1, Synset synset, PointerType type, WordNetFeatureClass name, String key) throws JWNLException { if (featureClasses.contains(name)) { Pointer[] pointers = synset.getPointers(type); for (Pointer p : pointers) { Synset target = p.getTargetSynset(); f1.add(key + target.getLexFileName()); } } }
private void addRelatedWordsLexFileFeatures(Set<String> f1, Synset synset, PointerType type, WordNetFeatureClass name, String key) throws JWNLException { if (featureClasses.contains(name)) { Pointer[] pointers = synset.getPointers(type); for (Pointer p : pointers) { Synset target = p.getTargetSynset(); f1.add(key + target.getLexFileName()); } } }
/** returns all the pointers of the synset that contains this word whose source is this word */ public Pointer[] getPointers() { Pointer[] source = getSynset().getPointers(); List list = new ArrayList(source.length); for (int i = 0; i < source.length; ++i) { Pointer pointer = source[i]; if (this.equals(pointer.getSource())) list.add(pointer); } return (Pointer[]) list.toArray(new Pointer[list.size()]); } }
private void addRelatedWordsFeatures(Set<String> f1, Synset synset, PointerType type, WordNetFeatureClass name, String key) throws JWNLException { if (featureClasses.contains(name)) { Pointer[] pointers = synset.getPointers(type); for (Pointer p : pointers) { Synset target = p.getTargetSynset(); for (Word w : target.getWords()) { f1.add(key + w.getLemma()); } } } }
private void addRelatedWordsFeatures(Set<String> f1, Synset synset, PointerType type, WordNetFeatureClass name, String key) throws JWNLException { if (featureClasses.contains(name)) { Pointer[] pointers = synset.getPointers(type); for (Pointer p : pointers) { Synset target = p.getTargetSynset(); for (Word w : target.getWords()) { f1.add(key + w.getLemma()); } } } }
public synchronized List<Synset> getRelated(String word, POS pos, PointerType type, boolean firstOnly) throws JWNLException { List<Synset> output = new ArrayList<>(); IndexWord indexWord = getIndexWord(pos, word); if (indexWord == null) return output; for (Synset synset : indexWord.getSenses()) { Pointer[] pointers = synset.getPointers(type); for (Pointer p : pointers) { output.add(p.getTargetSynset()); } if (firstOnly) break; } return output; }
public synchronized List<Synset> getRelated(String word, POS pos, PointerType type, boolean firstOnly) throws JWNLException { List<Synset> output = new ArrayList<>(); IndexWord indexWord = getIndexWord(pos, word); if (indexWord == null) return output; for (Synset synset : indexWord.getSenses()) { Pointer[] pointers = synset.getPointers(type); for (Pointer p : pointers) { output.add(p.getTargetSynset()); } if (firstOnly) break; } return output; }
private void getParents(Synset synset, List<String> parents) throws JWNLException { Pointer[] pointers = synset.getPointers(); for (int pi = 0, pn = pointers.length; pi < pn;pi++) { if (pointers[pi].getType() == PointerType.HYPERNYM) { Synset parent = pointers[pi].getTargetSynset(); parents.add(String.valueOf(parent.getOffset())); getParents(parent,parents); } } }
private void getParents(Synset synset, List<String> parents) throws JWNLException { Pointer[] pointers = synset.getPointers(); for (int pi=0,pn=pointers.length;pi<pn;pi++) { if (pointers[pi].getType() == PointerType.HYPERNYM) { Synset parent = pointers[pi].getTargetSynset(); parents.add(String.valueOf(parent.getOffset())); getParents(parent,parents); } } }
@Nullable public static String mapSynsetToBBN(@Nullable final String synsetID) { final List<String> ids = Lists.newLinkedList(); ids.add(synsetID); while (!ids.isEmpty()) { final String id = ids.remove(0); final List<String> bbns = SYNSET_TO_BBN.get(id); if (bbns != null && !bbns.isEmpty()) { return bbns.get(0); // return only first BBN in case of ambiguity } try { final Synset source = getSynset(id); final List<String> hypernymIDs = Lists.newArrayList(); for (final PointerType type : new PointerType[] { PointerType.HYPERNYM, PointerType.INSTANCE_HYPERNYM }) { for (final Pointer pointer : source.getPointers(type)) { final Synset target = pointer.getTargetSynset(); hypernymIDs.add(getSynsetID(target.getOffset(), target.getPOS().getKey())); } } Collections.sort(hypernymIDs); // necessary in order to get deterministic results ids.addAll(hypernymIDs); } catch (final JWNLException ex) { throw new Error("Unexpected exception (!)", ex); } } return null; }
public synchronized Set<String> getPointers(String word, POS pos, boolean firstOnly) throws JWNLException { Set<String> pointers = new LinkedHashSet<>(); IndexWord indexWord = getIndexWord(pos, word); if (indexWord == null) return pointers; for (Synset synset : indexWord.getSenses()) { for (Pointer p : synset.getPointers()) { pointers.add(p.getType().getLabel()); } if (firstOnly) break; } return pointers; }
public synchronized Set<String> getPointers(String word, POS pos, boolean firstOnly) throws JWNLException { Set<String> pointers = new LinkedHashSet<>(); IndexWord indexWord = getIndexWord(pos, word); if (indexWord == null) return pointers; for (Synset synset : indexWord.getSenses()) { for (Pointer p : synset.getPointers()) { pointers.add(p.getType().getLabel()); } if (firstOnly) break; } return pointers; }
public static Set<String> getGenericSet(final String synsetID, final PointerType... pointerTypes) { final Set<String> ret = Sets.newHashSet(); final Synset synset = getSynset(synsetID); if (synset != null) { for (final PointerType pointerType : pointerTypes) { for (final Pointer pointer : synset.getPointers(pointerType)) { try { final Synset target = pointer.getTargetSynset(); ret.add(getSynsetID(target.getOffset(), target.getPOS().getKey())); } catch (final Throwable ex) { throw new RuntimeException(ex); } } } } return ret; }
public synchronized List<String> getRelatedWords(String word, POS pos, PointerType type, boolean firstOnly) throws JWNLException { List<String> syns = new ArrayList<>(); IndexWord indexWord = getIndexWord(pos, word); if (indexWord == null) return syns; for (Synset synset : indexWord.getSenses()) { Pointer[] pointers = synset.getPointers(type); for (Pointer p : pointers) { Synset target = p.getTargetSynset(); for (Word w : target.getWords()) { syns.add(w.getLemma()); } } if (firstOnly) break; } return syns; }
public synchronized List<String> getRelatedWords(String word, POS pos, PointerType type, boolean firstOnly) throws JWNLException { List<String> syns = new ArrayList<>(); IndexWord indexWord = getIndexWord(pos, word); if (indexWord == null) return syns; for (Synset synset : indexWord.getSenses()) { Pointer[] pointers = synset.getPointers(type); for (Pointer p : pointers) { Synset target = p.getTargetSynset(); for (Word w : target.getWords()) { syns.add(w.getLemma()); } } if (firstOnly) break; } return syns; }