Мой XML
<row>
<entry>1.</entry>
<entry>foo</entry>
<entry>morefoo</entry>
</row>
<row>
<entry>2.</entry>
<entry>2foo</entry>
<entry>2morefoo</entry>
</row>
Это некорректный XML-документ . Правильно сформированный XML-документ должен иметь ровно один элемент верхнего уровня. Я буду использовать следующий (исправленный, чтобы быть правильно оформленным) документ XML:
<rows>
<row>
<entry>1.</entry>
<entry>foo</entry>
<entry>morefoo</entry>
</row>
<row>
<entry>2.</entry>
<entry>2foo</entry>
<entry>2morefoo</entry>
</row>
</rows>
Как мне выбрать значение
только первого тега 'entry'?
/*/row/entry[1]
Вышеприведенное выбирает первый entry
элемент -детей каждого элемента row
.
/*/row[1]/entry[1]
Вышеуказанный элемент выбирает первый entry
элемент -дет первого элемента row
в документе.
/*/row[2]/entry[1]
Вышеуказанный элемент выбирает первый entry
элемент -дет второго элемента row
в документе.
(//entry)[1]
Вышеуказанный элемент выбирает первый entry
элемент во всем документе.
//entry[1]
Обратите внимание, что это отличается от предыдущего выражения: здесь выбирается каждый элемент entry
в документе, который является первым entry
-компонентом его родителя.