XML и XPath

  • Предыдущая страница XML DOM
  • Следующая страница XML XSLT

Что такое XPath?

XPath является одним из основных элементов стандарта XSLT.

XPath может использоваться для定位 (навигации) элементов и атрибутов в документе XML.

XPath

XPath
  • XPath используется для определения грамматики различных частей документа XML
  • XPath использует путь выражения для навигации по документу XML
  • XPath включает стандартную библиотеку функций
  • XPath является основным элементом в XSLT и XQuery
  • XPath является рекомендованным стандартом W3C

Путь выражения XPath

XPath использует путь выражения для выбора узлов или набора узлов в документе XML. Эти путь выражения очень похожи на те, которые вы видите, когда используете традиционную систему файловых файлов.

Выражения XPath могут использоваться в JavaScript, Java, XML Schema, PHP, Python, C и C++ и многих других языках.

XPath используется в XSLT

XPath является одним из основных элементов стандарта XSLT.

Если вы понимаете XPath, вы сможете充分利用 XSL.

Примеры XPath

Мы будем использовать следующий XML-документ:

<?xml version="1.0" encoding="UTF-8"?>
<bookstore>
<book category="美食">
  <title lang="zh">雅舍谈吃</title>
  <author>梁实秋</author>
  <year>2013</year>
  <price>35</price>
</book>
<book category="детские">
  <title lang="zh">Удачный папа-лис</title>
  <author>Рольф Дал</author>
  <year>2009</year>
  <price>10.00</price>
</book>
<book category="литература">
  <title lang="zh">Перевод знакомого в незнакомое</title>
  <author>Зигмунд Бауман</author>
  <author>Петер Хавна</author>
  <author>Kurt Cagle</author>
  <author>James Linn</author>
  <author>Vaidyanathan Nagarajan</author>
  <year>2003</year>
  <price>49.99</price>
</book>
<book category="политика">
  <title lang="zh">О демократии в США</title>
  <author>Токвиль</author>
  <year>1989</year>
  <price>60.00</price>
</book>
</bookstore>

В таблице ниже мы перечислили некоторые выражения XPath и результаты этих выражений:

Выражения XPath Результат
/bookstore/book[1] Выберите первый элемент book, который является ребенком элемента bookstore.
/bookstore/book[last()] Выберите последний элемент book, который является ребенком элемента bookstore.
/bookstore/book[last()-1] Выберите второй по счету элемент book, который является ребенком элемента bookstore.
/bookstore/book[position()<3] Выберите первые два элемента book, которые являются детьми элемента bookstore.
//title[@lang] Выберите все элементы title, у которых есть атрибут lang.
//title[@lang='en'] Выберите все элементы title, у которых атрибут lang имеет значение "en".
/bookstore/book[price>35.00] Выберите все элементы book в элементе bookstore, у которых значение элемента price больше 35.00.
/bookstore/book[price>35.00]/title Выбрать все элементы title, для которых значение элемента price больше 35.00 в элементе book, который находится в элементе bookstore.

Учебник по XPath

Вы узнаете о XPath Дополнительная информация.

  • Предыдущая страница XML DOM
  • Следующая страница XML XSLT