Проверьте, существует ли узел в XML, используя XPath в Java - PullRequest
0 голосов
/ 29 июня 2010

У меня есть разные формы XML, которые я должен проанализировать,

<AMDI>
...
<MI>
</MI>
</AMDI>

или

<AMDI>
...
<AD>
</AD>
</AMDI>

Поэтому я хочу построить запрос XPath в зависимости от типа узла (если это MI: XML_ITEMS = "// MI / DL / D", если это AD: XML_ITEMS = "// AD / DL / D ") Я работаю с DocumentBuilder и XPathExpression. Спасибо за помощь:)

Ответы [ 2 ]

2 голосов
/ 29 июня 2010

В XPath 1.0 :

//MI/DL/D  |   //AD/DL/D

Это не синтаксически допустимо в XPath 1.0 :

//(MI|AD)/DL/D

Но вы можете использоватьесли у вас есть движок XPath 2.0.

2 голосов
/ 29 июня 2010

Вы также можете перечислить различные узлы, как это:

Node node = doc.getDocumentElement();
NodeList type = node.getChildNodes();
for(int i=0; i<nodes.getLength();i++)
     System.out.println(type.item(i).getNodeName();

И выберите узел записи :) Большое спасибо

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...