Examples of DependencyNode


Examples of org.maltparserx.core.syntaxgraph.node.DependencyNode

    currentAction.getAction(actionContainers);
    int trans = transActionContainer.getActionCode();
    if ((trans == LEFTARC || trans == RIGHTARC) && !isActionContainersLabeled()) {
      return false;
    }
    DependencyNode stackTop = ((NivreConfig)config).getStack().peek();
    if (!((NivreConfig)config).isAllowRoot() && stackTop.isRoot() && trans != SHIFT) {
      return false;
    }
    if (trans == LEFTARC && stackTop.isRoot()) {
      return false;
    }
    return true;
  }
View Full Code Here

Examples of org.maltparserx.core.syntaxgraph.node.DependencyNode

  }
 
  public void setDependencyGraph(DependencyStructure source) throws MaltChainedException {
    dependencyGraph.clear();
    for (int index : source.getTokenIndices()) {
      DependencyNode gnode = source.getTokenNode(index);
      DependencyNode pnode = dependencyGraph.addTokenNode(gnode.getIndex());
      for (SymbolTable table : gnode.getLabelTypes()) {
        pnode.addLabel(table, gnode.getLabelSymbol(table));
      }
     
      if (gnode.hasHead()) {
        Edge s = gnode.getHeadEdge();
        Edge t = dependencyGraph.addDependencyEdge(s.getSource().getIndex(), s.getTarget().getIndex());
View Full Code Here

Examples of org.maltparserx.core.syntaxgraph.node.DependencyNode

      right = covingtonConfig.getRight();
      rightstop = covingtonConfig.getRightstop();
      leftstop = covingtonConfig.getLeftstop();
    } else {
      for (int i = 0, n = dependencyGraph.getHighestTokenIndex(); i <= n; i++) {
        DependencyNode node = dependencyGraph.getDependencyNode(i);
        if (node != null) {
          input.add(node);
        }
      }
      if (allowRoot == true) {
View Full Code Here

Examples of org.maltparserx.core.syntaxgraph.node.DependencyNode

    setGuideName("ArcEager");
  }
 
  public GuideUserAction predict(DependencyStructure gold, ParserConfiguration config) throws MaltChainedException {
    final NivreConfig nivreConfig = (NivreConfig)config;
    final DependencyNode stackPeek = nivreConfig.getStack().peek();
    final int stackPeekIndex = stackPeek.getIndex();
    final int inputPeekIndex = nivreConfig.getInput().peek().getIndex();
   
    if (!stackPeek.isRoot() && gold.getTokenNode(stackPeekIndex).getHead().getIndex() == inputPeekIndex) {
      return updateActionContainers(ArcEager.LEFTARC, gold.getTokenNode(stackPeekIndex).getHeadEdge().getLabelSet());
    } else if (gold.getTokenNode(inputPeekIndex).getHead().getIndex() == stackPeekIndex) {
      return updateActionContainers(ArcEager.RIGHTARC, gold.getTokenNode(inputPeekIndex).getHeadEdge().getLabelSet());
    } else if (!nivreConfig.isAllowReduce() && !stackPeek.hasHead()) {
      return updateActionContainers(ArcEager.SHIFT, null);
    } else if (gold.getTokenNode(inputPeekIndex).hasLeftDependent() &&
        gold.getTokenNode(inputPeekIndex).getLeftmostDependent().getIndex() < stackPeekIndex) {
      return updateActionContainers(ArcEager.REDUCE, null);
    } else if (gold.getTokenNode(inputPeekIndex).getHead().getIndex() < stackPeekIndex &&
View Full Code Here

Examples of org.maltparserx.core.syntaxgraph.node.DependencyNode

      featureValue.setSymbol(table.getNullValueSymbol(NullValueId.NO_NODE));
      featureValue.setNullValue(true);     
    } else {
      // Unfortunately this method takes a lot of time  arg1.getAddressClass().asSubclass(org.maltparser.core.syntaxgraph.node.DependencyNode.class);
      // Cast the address arguments to dependency nodes
      final DependencyNode node = (DependencyNode)arg1.getAddress();
      int numof = 0;
      if (numOfRelation == NumOfRelation.DEPS) {
        numof = node.getLeftDependentCount() +  node.getRightDependentCount();
      } else if (numOfRelation == NumOfRelation.LDEPS) {
        numof = node.getLeftDependentCount();
      } else if (numOfRelation == NumOfRelation.RDEPS) {
        numof = node.getRightDependentCount();
      }
      int lower = -1;
      boolean f = false;
      for (Integer upper : normalization.keySet()) {
        if (numof >= lower && numof < upper) {
View Full Code Here

Examples of org.maltparserx.core.syntaxgraph.node.DependencyNode

    } else {
      int leftstop = covingtonConfig.getLeftstop();
      int left = covingtonConfig.getLeft();
      if (trans == NOARC) {
        DependencyStructure dg = covingtonConfig.getDependencyStructure();
        DependencyNode leftNode = covingtonConfig.getInput().get(covingtonConfig.getLeft());
        if (dg.getTokenNode(leftNode.getIndex()) != null && dg.getTokenNode(leftNode.getIndex()).hasHead()) {
          left = dg.getTokenNode(leftNode.getIndex()).getHead().getIndex();
        } else {
          left = leftstop - 1;
        }
      } else {
        DependencyNode rightNode = covingtonConfig.getRightTarget();
        left--;
        DependencyNode leftNode = null;
        while (left >= leftstop) {
          leftNode = covingtonConfig.getInput().get(left);
          if (rightNode.findComponent().getIndex() != leftNode.findComponent().getIndex()) {
            break;
          }
          left--;
        }
      }
View Full Code Here

Examples of org.maltparserx.core.syntaxgraph.node.DependencyNode

  }

  public boolean permissible(GuideUserAction currentAction, ParserConfiguration config) throws MaltChainedException {
    currentAction.getAction(actionContainers);
    final int trans = transActionContainer.getActionCode();
    final DependencyNode stackPeek = ((NivreConfig)config).getStack().peek();
    if ((trans == LEFTARC || trans == RIGHTARC) && !isActionContainersLabeled()) {
      return false;
    }
    if ((trans == LEFTARC || trans == REDUCE) && stackPeek.isRoot()) {
      return false;
    }
    if (trans == LEFTARC && stackPeek.hasHead()) {
      return false;
    }
    if (trans == REDUCE && !stackPeek.hasHead() && !((NivreConfig)config).isAllowReduce()) {
      return false;
    }
    return true;
  }
View Full Code Here

Examples of org.maltparserx.core.syntaxgraph.node.DependencyNode

    return "covproj";
  }
 
  public boolean permissible(GuideUserAction currentAction, ParserConfiguration config) throws MaltChainedException {
    CovingtonConfig covingtonConfig = (CovingtonConfig)config;
    DependencyNode leftTarget = covingtonConfig.getLeftTarget();
    DependencyNode rightTarget = covingtonConfig.getRightTarget();
    DependencyStructure dg = covingtonConfig.getDependencyGraph();
    currentAction.getAction(actionContainers);
    int trans = transActionContainer.getActionCode();
   
    if (trans == SHIFT && covingtonConfig.isAllowShift() == false) {
      return false;
    }
    if ((trans == LEFTARC || trans == RIGHTARC) && !isActionContainersLabeled()) {
      return false;
    }
    if (trans == LEFTARC && leftTarget.isRoot()) {
      return false;
    }
    if (trans == LEFTARC && dg.hasLabeledDependency(leftTarget.getIndex())) {
      return false;
    }
    if (trans == RIGHTARC && dg.hasLabeledDependency(rightTarget.getIndex())) {
      return false;
    }
    return true;
  }
View Full Code Here

Examples of org.maltparserx.core.syntaxgraph.node.DependencyNode

  private void update(CovingtonConfig covingtonConfig, int trans) {
    if (trans == SHIFT) {
      covingtonConfig.setRight(covingtonConfig.getRight() + 1);
      covingtonConfig.setLeft(covingtonConfig.getRight() - 1);
    } else {
      DependencyNode rightNode = covingtonConfig.getRightTarget();
      int leftstop = covingtonConfig.getLeftstop();
      int left = covingtonConfig.getLeft();
      left--;
      DependencyNode leftNode = null;
      while (left >= leftstop) {
        leftNode = covingtonConfig.getInput().get(left);
        if (rightNode.findComponent().getIndex() != leftNode.findComponent().getIndex() &&
            !(leftNode.hasHead() && rightNode.hasHead())) {
          break;
        }
        left--;
      }
      if (left < leftstop) {
View Full Code Here

Examples of org.maltparserx.core.syntaxgraph.node.DependencyNode

    return "covnonproj";
  }
 
  public boolean permissible(GuideUserAction currentAction, ParserConfiguration config) throws MaltChainedException {
    CovingtonConfig covingtonConfig = (CovingtonConfig)config;
    DependencyNode leftTarget = covingtonConfig.getLeftTarget();
    DependencyNode rightTarget = covingtonConfig.getRightTarget();
    DependencyStructure dg = covingtonConfig.getDependencyGraph();
    currentAction.getAction(actionContainers);
    int trans = transActionContainer.getActionCode();
   
    if (trans == SHIFT && covingtonConfig.isAllowShift() == false) {
      return false;
    }
    if ((trans == LEFTARC || trans == RIGHTARC) && !isActionContainersLabeled()) {
      return false;
    }
    if (trans == LEFTARC && leftTarget.isRoot()) {
      return false;
    }
    if (trans == LEFTARC && dg.hasLabeledDependency(leftTarget.getIndex())) {
      return false;
    }
    if (trans == RIGHTARC && dg.hasLabeledDependency(rightTarget.getIndex())) {
      return false;
    }
    return true;
  }
View Full Code Here
TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.