public static boolean infoIsNamedEntity(Info info) { boolean ret = false; if (info!=null){if(info.getNodeInfo()!=null){if(info.getNodeInfo().getNamedEntityAnnotation()!=null) { ret = true; }}} return ret; }
public ExtendedInfo(Info info, AdditionalNodeInformation additionalNodeInformation) { super(info.getId(), info.getNodeInfo(), info.getEdgeInfo()); this.additionalNodeInformation = additionalNodeInformation; }
@Override protected String getWordOf(BasicNode node) { String ret = null; try { ret = node.getInfo().getNodeInfo().getWord(); } catch(NullPointerException e) {} return ret; } }
private static <T extends Info, S extends AbstractNode<T,S>> boolean isNamedEntity(S node) { boolean ret = false; try { if (node.getInfo().getNodeInfo().getNamedEntityAnnotation() != null) ret = true; } catch(NullPointerException e) {} return ret; }
public boolean areMatch() { boolean ret = false; try{ret = node.getInfo().getNodeInfo().getWord().equalsIgnoreCase(neWord.getWord());}catch(Exception e){} return ret; }
private static <T extends Info,S extends AbstractNode<T,S>> List<String> getEntailedModifiersOfNonNegatedNode(S node) throws ParseTreeException { if (node.getChildren() != null) return getEntailedModifiersOfNonNegatedParent(node); // recurse // else { // this is a leaf, return only the leaf's word List<String> selectOffspring = new Vector<String>(); String parentWord = node.getInfo().getNodeInfo().getWord(); selectOffspring.add(parentWord); return selectOffspring; } }
public static <T extends Info, S extends AbstractNode<T,S>> Map<String,S> mapVarIdToNode(S tree) { Map<String,S> ret = new LinkedHashMap<String, S>(); for (S node : TreeIterator.iterableTree(tree)) { if (InfoGetFields.isVariable(node.getInfo())) { Integer varIdInteger = node.getInfo().getNodeInfo().getVariableId(); String varId = varIdInteger.toString(); ret.put(varId,node); } } return ret; }
public Info newInfoRTT(Info nodeInfo, Info edgeInfo, Info additionalInformation) { return new DefaultInfo(nodeInfo.getId(), nodeInfo.getNodeInfo(), edgeInfo.getEdgeInfo()); }
@Override public String getNPRuleForNoun(BasicNode full_tree, BasicNode current_tree) throws InitException { if (current_tree.hasChildren()) //if it have children, it's a NP, so also save it's NP phrase { List<NodeInfo> nodes = new ArrayList<NodeInfo>(); //Get all the relevantNodes nodes.addAll(getRelevantNPnodes(current_tree)); return getFinalStringRepresentation(nodes, current_tree.getInfo().getNodeInfo()); //returns null if not in order } else { return null; } }
public static boolean isArtificialRoot(AbstractNode<? extends Info, ?> node) { boolean ret = false; try { if (node.getInfo().getId().equals(AbstractBasicParser.ROOT_NODE_ID)) if (node.getInfo().getNodeInfo().getWordLemma()==null) ret = true; } catch(NullPointerException e) {} return ret; }
/** * return true iff the node is negated * @param node * @return */ public static <T extends Info, S extends AbstractNode<T,S>> boolean isNegated(S node) { if (node.getChildren() != null) for( S child : node.getChildren()) if (NEG_WORDS.contains(child.getInfo().getNodeInfo().getWordLemma())) return true; return false; }
public Info newInfoRT(Info nodeInfo, Info edgeInfo) { return new DefaultInfo(nodeInfo.getId(), nodeInfo.getNodeInfo(), edgeInfo.getEdgeInfo()); }
public ExtendedInfo convertFromIR(Info info) { return new ExtendedInfo(info.getId(),info.getNodeInfo(),info.getEdgeInfo(),ExtendedNodeConstructor.EMPTY_ADDITIONAL_NODE_INFORMATION); }
public ExtendedInfo newInfoRT(Info nodeInfo, ExtendedInfo edgeInfo) { return new ExtendedInfo(nodeInfo.getId(), nodeInfo.getNodeInfo(), edgeInfo.getEdgeInfo(), ExtendedNodeConstructor.EMPTY_ADDITIONAL_NODE_INFORMATION); }
@Override public int compare(BasicNode o1, BasicNode o2) { if (o1.getAntecedent() != null && o2.getAntecedent() == null) { return 1; } else if (o1.getAntecedent() == null && o2.getAntecedent() != null) { return -1; } else { return o1.getInfo().getNodeInfo().getSerial() - o2.getInfo().getNodeInfo().getSerial(); } }
public ExtendedInfo convertFromIRT(Info info, ExtendedInfo additionalInformation) { return new ExtendedInfo(info.getId(),info.getNodeInfo(),info.getEdgeInfo(),ExtendedInfoGetFields.getAdditionalNodeInformation(additionalInformation)); }
public ExtendedInfo newInfoRTT(Info nodeInfo, ExtendedInfo edgeInfo, ExtendedInfo additionalInformation) { return new ExtendedInfo(nodeInfo.getId(), nodeInfo.getNodeInfo(), edgeInfo.getEdgeInfo(), ExtendedInfoGetFields.getAdditionalNodeInformation(additionalInformation)); }
protected boolean relevantNode(BasicNode node) { return node != null && node.getInfo().getNodeInfo().getSyntacticInfo().getPartOfSpeech() != null && posFilter.isRelevant(node.getInfo().getNodeInfo().getSyntacticInfo().getPartOfSpeech().getCanonicalPosTag()); }
private static void addNeToAntecedents(BasicConstructionNode mutableParseTree) { for (BasicConstructionNode mutableNode : TreeIterator.iterableTree(mutableParseTree)) { if (mutableNode.getAntecedent()!=null) { BasicConstructionNode antecedent = AbstractNodeUtils.getDeepAntecedentOf(mutableNode); if (antecedent.getInfo().getNodeInfo().getNamedEntityAnnotation()!=null) { NamedEntity ne = antecedent.getInfo().getNodeInfo().getNamedEntityAnnotation(); Info newInfo = new DefaultInfo(mutableNode.getInfo().getId(), new DefaultNodeInfo(mutableNode.getInfo().getNodeInfo().getWord(), mutableNode.getInfo().getNodeInfo().getWordLemma(), mutableNode.getInfo().getNodeInfo().getSerial(), ne, mutableNode.getInfo().getNodeInfo().getSyntacticInfo()), mutableNode.getInfo().getEdgeInfo()); mutableNode.setInfo(newInfo); } } } }
/** * for tracing. */ private static String outNode(BasicNode node) { String result = String.format("id=%s:ser=%d:%s:%s", node.getInfo().getId(), node.getInfo().getNodeInfo().getSerial(), node.getInfo().getNodeInfo().getWord(), node.getInfo().getEdgeInfo().getDependencyRelation()!=null?node.getInfo().getEdgeInfo().getDependencyRelation().getStringRepresentation():"null"); if (node.getAntecedent() != null) { result += String.format("(^%s)", outNode(node.getAntecedent())); } return result; }