Java 我如何从依存关系图中提取句子中的单词,顺序如下:current_单词、governor、dependent和relationtype

Java 我如何从依存关系图中提取句子中的单词,顺序如下:current_单词、governor、dependent和relationtype,java,xml,stanford-nlp,Java,Xml,Stanford Nlp,我有这样一句话: 她将庆祝复活节 我有一个依赖关系图: 方法依赖关系图为给定的句子生成依赖关系图。 输出出现了很多次,但单词没有出现。我曾尝试在变量中保留最初的句子,但它不起作用。 我不知道如何将句子中每个单词的结果作为字符串返回一次,因为我将在另一个方法中重用它。 我不知道如果我对一个词有更多的依赖性,我该怎么做,因为我必须只保留三个词。 我必须将结果保存在逗号分隔值文件中,然后在机器学习工具中进行处理。知道如何使用我的代码获得此结果吗?提前谢谢 <dependencies styl

我有这样一句话:

她将庆祝复活节

我有一个依赖关系图:

方法依赖关系图为给定的句子生成依赖关系图。 输出出现了很多次,但单词没有出现。我曾尝试在变量中保留最初的句子,但它不起作用。 我不知道如何将句子中每个单词的结果作为字符串返回一次,因为我将在另一个方法中重用它。 我不知道如果我对一个词有更多的依赖性,我该怎么做,因为我必须只保留三个词。 我必须将结果保存在逗号分隔值文件中,然后在机器学习工具中进行处理。知道如何使用我的代码获得此结果吗?提前谢谢

  <dependencies style="typed">
      <dep type="nsubj">
        <governor idx="3">celebrate</governor>
        <dependent idx="1">She</dependent>
      </dep>
      <dep type="aux">
        <governor idx="3">celebrate</governor>
        <dependent idx="2">will</dependent>
      </dep>
      <dep type="dobj">
        <governor idx="3">celebrate</governor>`enter code here`
        <dependent idx="4">Easter</dependent>
      </dep>
      <dep type="punct">
        <governor idx="3">celebrate</governor>
        <dependent idx="5">.</dependent>
      </dep>
    </dependencies>
public static String depRel(String graph) throws SAXException, IOException,
        ParserConfigurationException {
    String xml_String;
    String[] split_Sentence = graph.split("\\s+");
    xml_String = Features.dependency_Graph(graph);
    String result = "";
    String dependent = "";
    String governor = "";
    String type = "";


    Document document = convertStringToDocument(xmlString);
    document.getDocumentElement().normalize();
    Element root = document.getDocumentElement();
    NodeList nList = document.getElementsByTagName("dependencies");
    for (int temp = 0; temp < nList.getLength(); temp++) {
        Node node = nList.item(temp);
        if (node.getNodeType() == Node.ELEMENT_NODE) {
            Element eElement1 = (Element) node;

        }
        NodeList nodesDocPart = node.getChildNodes();
        for (int temp2 = 0; temp2 < nodesDocPart.getLength(); temp2++) {

            Node n = nodesDocPart.item(temp2);

            if (n.getNodeType() == Node.ELEMENT_NODE) {
                Element el1 = (Element) n;
                type = el1.getAttribute("type");
            }

            // /////////////////////////////////////////////////sentence/////////////////////////////////////////////
            NodeList nodesSentencePart = n.getChildNodes();
            for (int temp3 = 0; temp3 < nodesSentencePart.getLength(); temp3++) {
                Node sentence = nodesSentencePart.item(temp3);
                if (sentence.getNodeType() == Node.ELEMENT_NODE) {

                    Element eElement4 = (Element) sentence;
                    if (eElement4.getTagName().equals("governor")) {
                        governor = eElement4.getTextContent();
                        result = governor + 
                                + dependent + ":" + type;

                    } else if (eElement4.getTagName().equals("dependent")) {
                        dependent = eElement4.getTextContent();
                        result = dependent  + governor
                                + ":" + type;

                    }

                }
                for (int i = 0; i < splitSentence.length; i++) {
                    if (split_Sentence[i].equals(dependent)) {

                        result = split_Sentence[i] + governor + dependent
                                + type;
                    }
                }
                System.out.println("Rez=> " + result);
            }

        }

    }

    return result;

}
I want for every word the next output:
result=current_Word+governor+dependent+relation_type.