Мой xml выглядит следующим образом. Фокус находится на третьем уровне: <name>
, <address>
и т. Д. Я хотел бы найти позицию родителя <customer>
.xPath, чтобы получить позицию родительского узла, используя счет
Я использую «count(../preceding-sibling::*) + 1
», но он не возвращает счет, когда узел пуст. Как это исправить? Благодарю.
<record>
<customer>
<name>Sue A</name> -- return 1
<address>123 Main St</address> -- return 1
<phone></phone> -- missing
<status>A</status> -- return 1
</customer>
<customer>
<name>John B</name> -- return 2
<address></address> -- missing
<phone>123-456-7890</phone> -- return 2
<status></status> -- missing
</customer>
…
</record>
Просьба указать [mcve], который демонстрирует проблему. Вы отказались от того, как вы устанавливаете текущий узел при оценке вашего XPath. – kjhughes