XML og XPath

Hvad er XPath?

XPath er en hovedkomponent i XSLT-standarden.

XPath kan bruges til at定位(导航)XML-dokumentets elementer og egenskaber

XPath

XPath
  • XPath bruges til at definere syntax for forskellige dele af et XML-dokument
  • XPath bruger stiplukkedeklarationer til at navigere i XML-dokumenter
  • XPath indeholder en standardfunktionslib
  • XPath er en hovedkomponent i XSLT og XQuery
  • XPath er en anbefalet standard af W3C

XPath-stiplukkedeklarationer

XPath bruger stiplukkedeklarationer til at vælge noder eller noderækker i XML-dokumenter. Disse stiplukkedeklarationer ser meget ud som de udtryk, du ser, når du bruger et traditionelt computerfilsystem.

XPath-udtryk kan bruges i JavaScript, Java, XML Schema, PHP, Python, C og C++ samt mange andre sprog.

XPath bruges til XSLT

XPath er en hovedkomponent i XSLT-standarden.

Forstå XPath, og du kan udnytte XSL fuldt ud.

XPath Eksempler

Vi vil bruge følgende XML-dokument:

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

I tabellen nedenfor er nogle XPath-udtryk og deres resultater listet:

XPath-udtryk Resultat
/bookstore/book[1] Vælg det første book-element som er under bookstore-elementet.
/bookstore/book[last()] Vælg det sidste book-element som er under bookstore-elementet.
/bookstore/book[last()-1] Vælg det næstsidste book-element som er under bookstore-elementet.
/bookstore/book[position()<3] Vælg de to første book-elementer som er under bookstore-elementet.
//title[@lang] Vælg alle title-elementer med egenskab navngivet lang.
//title[@lang='en'] Vælg alle title-elementer med "lang"-egenskab og værdi "en".
/bookstore/book[price>35.00] Vælg alle book-elementer i bookstore-elementet, hvor price-elementets værdi er større end 35.00.
/bookstore/book[price>35.00]/title Vælg alle title elementer i book elementer i bookstore elementet, hvor price elementets værdi er større end 35.00.

XPath Tutorial

Du vil lære om i vores XPath tutorial XPath Mere viden.