while (!nodeStack.isEmpty() && element.getLevel() > 0 && element.getLevel() <= nodeStack.peek().getLevel()) { Node nephew = nodeStack.pop(); if (element.isLeaf() ) { int index = nodeStack.size() - 1; while (parent == null) { if (peek.getLevel() < element.getLevel()) { parent = peek; } else { if (!nodeStack.isEmpty() && nodeStack.peek().getLevel() < element.getLevel()) { nodeStack.peek().addElement(element); } else {
while (!nodeStack.isEmpty() && element.getLevel() > 0 && element.getLevel() <= nodeStack.peek().getLevel()) { Node nephew = nodeStack.pop(); if (element.isLeaf() ) { int index = nodeStack.size() - 1; while (parent == null) { if (peek.getLevel() < element.getLevel()) { parent = peek; } else { if (!nodeStack.isEmpty() && nodeStack.peek().getLevel() < element.getLevel()) { nodeStack.peek().addElement(element); } else {
private void processNode(Node node, List<String> sentence, List<String> lemmas, List<String> tags, List<String> target, String inheritedTag) { String phraseTag = getChunkTag(node.getSyntacticTag()); boolean inherited = false; if (phraseTag.equals("O") && inheritedTag != null) { phraseTag = inheritedTag; inherited = true; } TreeElement[] elements = node.getElements(); for (int i = 0; i < elements.length; i++) { if (elements[i].isLeaf()) { boolean isIntermediate = false; if (i > 0 && elements[i - 1].isLeaf() && phraseTag != null && !phraseTag.equals("O")) { isIntermediate = true; } if (inherited && target.size() > 0 && target.get(target.size() - 1).endsWith(phraseTag)) { isIntermediate = true; } processLeaf((Leaf) elements[i], isIntermediate, phraseTag, sentence, lemmas, tags, target); } else { processNode((Node) elements[i], sentence, lemmas, tags, target, phraseTag); } } }
private void processNode(Node node, List<String> sentence, List<String> lemmas, List<String> tags, List<String> target, String inheritedTag) { String phraseTag = getChunkTag(node.getSyntacticTag()); boolean inherited = false; if (phraseTag.equals("O") && inheritedTag != null) { phraseTag = inheritedTag; inherited = true; } TreeElement[] elements = node.getElements(); for (int i = 0; i < elements.length; i++) { if (elements[i].isLeaf()) { boolean isIntermediate = false; if (i > 0 && elements[i - 1].isLeaf() && phraseTag != null && !phraseTag.equals("O")) { isIntermediate = true; } if (inherited && target.size() > 0 && target.get(target.size() - 1).endsWith(phraseTag)) { isIntermediate = true; } processLeaf((Leaf) elements[i], isIntermediate, phraseTag, sentence, lemmas, tags, target); } else { processNode((Node) elements[i], sentence, lemmas, tags, target, phraseTag); } } }
/** * Recursive method to process a node in Arvores Deitadas format. * * @param node * the node to be processed * @param sentence * the sentence tokens we got so far * @param names * the names we got so far */ private void process(Node node, List<String> sentence, List<Span> names) { if (node != null) { for (TreeElement element : node.getElements()) { if (element.isLeaf()) { processLeaf((Leaf) element, sentence, names); } else { process((Node) element, sentence, names); } } } }
/** * Recursive method to process a node in Arvores Deitadas format. * * @param node * the node to be processed * @param sentence * the sentence tokens we got so far * @param names * the names we got so far */ private void process(Node node, List<String> sentence, List<Span> names) { if (node != null) { for (TreeElement element : node.getElements()) { if (element.isLeaf()) { processLeaf((Leaf) element, sentence, names); } else { process((Node) element, sentence, names); } } } }
/** * Recursive method to process a node in Arvores Deitadas format. * * @param node * the node to be processed * @param sentence * the sentence tokens we got so far * @param names * the names we got so far */ private void process(Node node, List<String> sentence, List<Span> names) { if (node != null) { for (TreeElement element : node.getElements()) { if (element.isLeaf()) { processLeaf((Leaf) element, sentence, names); } else { process((Node) element, sentence, names); } } } }
/** * Recursive method to process a node in Arvores Deitadas format. * * @param node * the node to be processed * @param sentence * the sentence tokens we got so far * @param names * the names we got so far */ private void process(Node node, List<String> sentence, List<Span> names) { if (node != null) { for (TreeElement element : node.getElements()) { if (element.isLeaf()) { processLeaf((Leaf) element, sentence, names); } else { process((Node) element, sentence, names); } } } }
/** * Recursive method to process a node in Arvores Deitadas format. * * @param node * the node to be processed * @param sentence * the sentence tokens we got so far * @param names * the names we got so far */ private void process(Node node, List<String> sentence, List<Span> names) { if (node != null) { for (TreeElement element : node.getElements()) { if (element.isLeaf()) { processLeaf((Leaf) element, sentence, names); } else { process((Node) element, sentence, names); } } } }
/** * Recursive method to process a node in Arvores Deitadas format. * * @param node * the node to be processed * @param sentence * the sentence tokens we got so far * @param names * the names we got so far */ private void process(Node node, List<String> sentence, List<Span> names) { if (node != null) { for (TreeElement element : node.getElements()) { if (element.isLeaf()) { processLeaf((Leaf) element, sentence, names); } else { process((Node) element, sentence, names); } } } }
private void processRoot(Node root, List<String> sentence,List<String> lemmas, List<String> tags, List<String> target) { if (root != null) { TreeElement[] elements = root.getElements(); for (int i = 0; i < elements.length; i++) { if (elements[i].isLeaf()) { processLeaf((Leaf) elements[i], false, "O", sentence, lemmas, tags, target); } else { processNode((Node) elements[i], sentence, lemmas, tags, target, null); } } } }
protected void processRoot(Node root, List<String> sentence, List<String> tags, List<String> target) { if (root != null) { TreeElement[] elements = root.getElements(); for (int i = 0; i < elements.length; i++) { if (elements[i].isLeaf()) { processLeaf((Leaf) elements[i], false, OTHER, sentence, tags, target); } else { processNode((Node) elements[i], sentence, tags, target, null); } } } }
protected void processRoot(Node root, List<String> sentence, List<String> tags, List<String> target) { if (root != null) { TreeElement[] elements = root.getElements(); for (int i = 0; i < elements.length; i++) { if (elements[i].isLeaf()) { processLeaf((Leaf) elements[i], false, OTHER, sentence, tags, target); } else { processNode((Node) elements[i], sentence, tags, target, null); } } } }
protected void processRoot(Node root, List<String> sentence, List<String> tags, List<String> target) { if (root != null) { TreeElement[] elements = root.getElements(); for (int i = 0; i < elements.length; i++) { if (elements[i].isLeaf()) { processLeaf((Leaf) elements[i], false, OTHER, sentence, tags, target); } else { processNode((Node) elements[i], sentence, tags, target, null); } } } }
private int countLeafs(Node node) { int counter = 0; for (TreeElement element : node.getElements()) { if(element.isLeaf()) { counter++; } else { counter += countLeafs((Node)element); } } return counter; }
private void process(Node node, List<String> sentence, List<String> tags, List<String> con, List<String> prop) { if (node != null) { for (TreeElement element : node.getElements()) { if (element.isLeaf()) { processLeaf((Leaf) element, sentence, tags, con, prop); } else { process((Node) element, sentence, tags, con, prop); } } } }