Два текущих ответа неверны:
/*/*
не выбирает все узлы, которые являются дочерними для верхнего узла . Он не выбирает текстовые узлы, инструкции обработки или комментарии, которые являются дочерними элементами верхнего элемента.
Одно выражение XPath, которое выбирает все узлы, являющиеся дочерними элементами верхнего элемента:
/*/node()
//
не является синтаксически правильным выражением XPath; в соответствии с XPath Spec :
// это сокращение от
/ Потомок или само-:: узел () / * * тысяча двадцать пять
Отметьте начало незавершенного шага локации в самом конце расширенной аббревиатуры. Если к нему ничего не добавлено, все выражение XPath, содержащее аббревиатуру, заканчивается и, следовательно, синтаксически неверно.
Еще одно примечание состоит в том, что сокращение //
не обязательно при указании выбора всех узлов, которые являются дочерними элементами верхнего элемента. Если вы хотите выбрать все узлы в документе XML, которые нисходят из верхнего элемента, то выберите одно выражение XPath:
/*//node()