XML và XPath

XPath là gì?

XPath Là một yếu tố chính trong tiêu chuẩn XSLT.

XPath có thể được sử dụng để xác định (di chuyển) các phần tử và thuộc tính trong tài liệu XML.

XPath

XPath
  • XPath là ngữ pháp để định nghĩa các phần của tài liệu XML
  • XPath sử dụng biểu thức đường dẫn để di chuyển trong tài liệu XML
  • XPath bao gồm thư viện hàm tiêu chuẩn
  • XPath là yếu tố chính trong XSLT và XQuery
  • XPath là tiêu chuẩn đề xuất của W3C

Biểu thức đường dẫn XPath

XPath sử dụng biểu thức đường dẫn để chọn các nút hoặc tập hợp các nút trong tài liệu XML. Các biểu thức đường dẫn này trông rất giống với những biểu thức bạn thấy khi sử dụng hệ thống tệp truyền thống của máy tính.

Công thức XPath có thể được sử dụng trong JavaScript, Java, XML Schema, PHP, Python, C và C++ và nhiều ngôn ngữ khác.

XPath được sử dụng trong XSLT

XPath là một yếu tố chính trong tiêu chuẩn XSLT.

Hiểu biết XPath, bạn có thể sử dụng tối đa XSL.

Mẫu XPath

Chúng ta sẽ sử dụng dưới đây XML tài liệu:

<?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>

Trong bảng dưới đây, chúng tôi liệt kê một số biểu thức XPath và kết quả của biểu thức:

Biểu thức XPath Kết quả
/bookstore/book[1] Chọn phần tử book là con của phần tử bookstore và là phần tử đầu tiên.
/bookstore/book[last()] Chọn phần tử book là con của phần tử bookstore và là phần tử cuối cùng.
/bookstore/book[last()-1] Chọn phần tử book là con của phần tử bookstore và là phần tử倒数第二个.
/bookstore/book[position()<3] Chọn hai phần tử book là con của phần tử bookstore.
//title[@lang] Chọn tất cả các phần tử title có thuộc tính tên là lang.
//title[@lang='en'] Chọn tất cả các phần tử title có thuộc tính "lang" và giá trị là "en".
/bookstore/book[price>35.00] Chọn tất cả các phần tử book trong phần tử bookstore có giá trị phần tử price lớn hơn 35.00.
/bookstore/book[price>35.00]/title Chọn tất cả các yếu tố title trong yếu tố book của yếu tố bookstore, giá trị yếu tố price lớn hơn 35.00.

Hướng dẫn XPath

Bạn sẽ học được về XPath của nhiều kiến thức hơn.