Выражения XPath /AllReport/Report/DataPoint1
и //DataPoint1
будут возвращать список всех узлов DataPoint1
в вашем примере документа.Затем вы можете выполнить итерацию по этому списку, используя любые средства, которые предоставляет вам ваша библиотека DOM или выбранный язык.
То, что вы будете использовать, будет зависеть от характера самого документа.Если каждый экземпляр DataPoint1
, к которому вы хотите получить доступ, вложен одинаково, используйте первый.Если вы не можете быть уверены в вложенности DataPoint1
(возможно, в некоторых отчетах есть подотчеты или имеется «сводка» DataPoint1
потомок AllReport
, тогда последний может быть предпочтительным.
Этокак правило, лучше всего выбирать более точное выражение как по причинам производительности, так и по причинам обнаружения ошибок.