ایکس پی اچ مثال

ਇਸ ਸੈਕਸ਼ਨ ਵਿੱਚ, ਅਸੀਂ ਕੁਝ ਬੇਸਿਕ XPath ਗਰੰਥ ਸਿੱਖਣ ਲਈ ਉਦਾਹਰਨ ਵਰਤਾਂਗੇ:

XML ਇੰਸਟੈਂਸ ਦਸਤਾਵੇਜ਼

ਅਸੀਂ ਹੇਠਾਂ ਦੇ ਉਦਾਹਰਨ ਵਿੱਚ ਇਸ XML ਦਸਤਾਵੇਜ਼ ਦੀ ਵਰਤੋਂ ਕਰਾਂਗੇ:

"books.xml" :

<?xml version="1.0" encoding="ISO-8859-1"?>
<bookstore>
<book category="COOKING">
  <title lang="en">Everyday Italian</title>
  <author>Giada De Laurentiis</author>
  <year>2005</year>
  <price>30.00</price>
</book>
<book category="CHILDREN">
  <title lang="en">Harry Potter</title>
  <author>J K. Rowling</author>
  <year>2005</year>
  <price>29.99</price>
</book>
<book category="WEB">
  <title lang="en">XQuery Kick Start</title>
  <author>James McGovern</author>
  <author>Per Bothner</author>
  <author>Kurt Cagle</author>
  <author>James Linn</author>
  <author>Vaidyanathan Nagarajan</author>
  <year>2003</year>
  <price>49.99</price>
</book>
<book category="WEB">
  <title lang="en">Learning XML</title>
  <author>Erik T. Ray</author>
  <year>2003</year>
  <price>39.95</price>
</book>
</bookstore>

ਆਪਣੇ ਬਰਾਉਜ਼ਰ ਵਿੱਚ ਇਹ "books.xml" ਫਾਈਲ ਦੇਖੋ.

XML ਦਸਤਾਵੇਜ਼ ਲੋਡ ਕਰੋ

ਸਾਰੇ ਅਧਿਕਾਂਸ਼ਕ ਬਰਾਉਜ਼ਰ ਨੂੰ XMLHttpRequest ਦੇ ਰਾਹੀਂ XML ਦਸਤਾਵੇਜ਼ ਲੋਡ ਕਰਨ ਦੀ ਸਮਰੱਥਾ ਹੈ。

ਅਧਿਕਾਂਸ਼ਕ ਬਰਾਉਜ਼ਰਾਂ ਲਈ ਕੋਡ:

var xmlhttp=new XMLHttpRequest()

ਪੁਰਾਣੇ ਮਾਈਕਰੋਸਾਫਟ ਬਰਾਉਜ਼ਰ (IE 5 ਅਤੇ 6) ਲਈ ਕੋਡ:

var xmlhttp=new ActiveXObject("Microsoft.XMLHTTP")

ਨੋਡ ਚੋਣ ਕਰੋ

ਅਫਸੋਸ, Internet Explorer ਅਤੇ ਹੋਰ XPath ਦੇ ਤੌਰ 'ਤੇ ਹੋਰ ਵਿਵਹਾਰ ਕਰਦੇ ਹਨ。

ਸਾਡੇ ਉਦਾਹਰਣ ਵਿੱਚ ਅਧਿਕਾਂਸ਼ਕ ਬਰਾਉਜ਼ਰਾਂ ਲਈ ਕੋਡ ਸ਼ਾਮਲ ਕੀਤਾ ਗਿਆ ਹੈ。

Internet Explorer selectNodes() ਮੱਥਦ ਦੇ ਰਾਹੀਂ XML ਦਸਤਾਵੇਜ਼ ਵਿੱਚ ਨੋਡ ਚੋਣ ਕਰਦਾ ਹੈ:

xmlDoc.selectNodes(xpath);

Firefox, Chrome, Opera ਅਤੇ Safari evaluate() ਮੱਥਦ ਦੇ ਰਾਹੀਂ XML ਦਸਤਾਵੇਜ਼ ਵਿੱਚ ਨੋਡ ਚੋਣ ਕਰਦੇ ਹਨ:

xmlDoc.evaluate(xpath, xmlDoc, null, XPathResult.ANY_TYPE,null);

ਸਾਰੇ title ਚੋਣ ਕਰੋ

ਹੇਠਲੇ ਉਦਾਹਰਣ ਵਿੱਚ ਸਾਰੇ title ਨੋਡਾਂ ਚੋਣ ਕਰੋ:

/bookstore/book/title

ਆਪਣੇ ਅਨੁਸਾਰ ਪ੍ਰਯੋਗ ਕਰੋ

ਪਹਿਲੇ book ਦੇ title ਚੋਣ ਕਰੋ

ਹੇਠਲੇ ਉਦਾਹਰਣ ਵਿੱਚ bookstore ਐਲੀਮੈਂਟ ਦੇ ਨਾਲਚ ਪਹਿਲੇ book ਐਲੀਮੈਂਟ ਦੇ title ਚੋਣ ਕਰੋ:

/bookstore/book[1]/title

ਆਪਣੇ ਅਨੁਸਾਰ ਪ੍ਰਯੋਗ ਕਰੋ

ਇੱਥੇ ਇੱਕ ਪ੍ਰਸ਼ਨ ਹੈ। ਉੱਪਰਲੇ ਉਦਾਹਰਣ ਵਿੱਚ IE ਅਤੇ ਹੋਰ ਬਰਾਉਜ਼ਰਾਂ ਵਿੱਚ ਵੱਖ-ਵੱਖ ਨਤੀਜੇ ਦਿੰਦੇ ਹਨ。

IE5 ਅਤੇ ਉੱਚ ਸੰਸਕਰਣ ਵਿੱਚ [0] ਨੂੰ ਪਹਿਲੇ ਨੋਡ ਵਜੋਂ ਦੇਖਦੇ ਹਨ ਜਦਕਿ W3C ਦੇ ਨਿਯਮ ਅਨੁਸਾਰ ਹੋਣਾ ਚਾਹੀਦਾ ਹੈ [1]。

IE5+ ਵਿੱਚ [0] ਅਤੇ [1] ਦੇ ਮੁਦਦੇ ਨੂੰ ਹੱਲ ਕਰਨ ਲਈ XPath ਨੂੰ ਭਾਸ਼ਾ ਚੋਣ (SelectionLanguage) ਸੈਟ ਕਰ ਸਕਦੇ ਹਾਂ。

ਹੇਠਲੇ ਉਦਾਹਰਣ ਵਿੱਚ bookstore ਐਲੀਮੈਂਟ ਦੇ ਨਾਲਚ ਪਹਿਲੇ book ਐਲੀਮੈਂਟ ਦੇ title ਚੋਣ ਕਰੋ:

xml.setProperty("SelectionLanguage","XPath");
xml.selectNodes("/bookstore/book[1]/title");

ਆਪਣੇ ਅਨੁਸਾਰ ਪ੍ਰਯੋਗ ਕਰੋ

ਸਾਰੀਆਂ ਕੀਮਤਾਂ ਚੋਣ ਕਰੋ

ਹੇਠਲੇ ਉਦਾਹਰਣ ਵਿੱਚ ਚੋਣ ਕਰੋ price ਨੋਡ ਵਿੱਚ ਸਾਰੇ ਟੈਕਸਟ:

/bookstore/book/price/text()

ਆਪਣੇ ਅਨੁਸਾਰ ਪ੍ਰਯੋਗ ਕਰੋ

ਚੋਣ ਕਰੋ ਜਿਨ੍ਹਾਂ ਦੀ ਕੀਮਤ 35 ਤੋਂ ਉੱਪਰ ਹੈ

ਹੇਠ ਦੇ ਉਦਾਹਰਣ ਵਿੱਚ ਮੁੱਲ ਜਿਸ ਤੋਂ ਵੱਧ ਹੈ 35 ਦੇ ਸਾਰੇ price ਨੋਟ ਚੁਣੇ ਗਏ ਹਨ:

/bookstore/book[price>35]/price

ਆਪਣੇ ਅਨੁਸਾਰ ਪ੍ਰਯੋਗ ਕਰੋ

ਮੁੱਲ ਜਿਸ ਤੋਂ ਵੱਧ ਹੈ 35 ਦੇ title ਨੋਟ ਚੁਣੇ ਗਏ ਹਨ

ਹੇਠ ਦੇ ਉਦਾਹਰਣ ਵਿੱਚ ਮੁੱਲ ਜਿਸ ਤੋਂ ਵੱਧ ਹੈ 35 ਦੇ ਸਾਰੇ title ਨੋਟ ਚੁਣੇ ਗਏ ਹਨ:

/bookstore/book[price>35]/title

ਆਪਣੇ ਅਨੁਸਾਰ ਪ੍ਰਯੋਗ ਕਰੋ