Axi ya XPath

Mfano wa eneo la XML

Tunakutana hapa chini ta kutumia hii hali ya XML:

<?xml version="1.0" encoding="ISO-8859-1"?>
<bookstore>
<book>
  <title lang="eng">Harry Potter</title>
  <price>29.99</price>
</book>
<book>
  <title lang="eng">Learning XML</title>
  <price>39.95</price>
</book>
</bookstore>

Mstari wa XPath

Mstari inaweza kuzingatia mababu yote ya mchezo kwa kuzingatia mchezo hicho.

Jina la mstari Matokeo
ancestor Chagula mababu yote ya chaguo hicho.
ancestor-or-self Chagula mababu yote ya chaguo hicho kwa kuzingatia mababu yote ya chaguo hicho.
attribute Chagula mafupi yote ya chaguo.
child Chagula mababu yote ya chaguo ya kizuri.
descendant Chagula mababu yote ya chaguo hicho.
descendant-or-self Chagula mababu yote ya chaguo hicho kwa kuzingatia mababu yote ya chaguo hicho.
following Chagula mababu yote ya chaguo hicho kwa kuzingatia kifungu cha kina cha chaguo hicho.
namespace Chagula mababu yote ya chaguo hicho kwa kuzingatia mifupi ya nafasi.
parent Chagula mchezo wa mababu wa chaguo hicho.
preceding Chagula mababu yote ya chaguo hicho kwa kuzingatia kifungu cha kina cha chaguo hicho.
preceding-sibling Chagula mababu yote ya chaguo hicho.
self Chagula mchezo hicho.

Mchelele wa mstari wa kina

Inayohesabu shughuli ya mstari wa kina

Njia ya mstari wa kina inaweza kuwa na ukubwa na ukisia.

Njia ya mstari wa kina inaweza kuwa na ukubwa na ukisia. Njia za kina zote zinaanza na kifungu cha kina ( / ) kwa sababu ya kina za kina zote zinaonyesha kina kimoja au zaidi za kina, kila kina kinapokea kifungu cha kina:

/hatua/hatua/...

Njia ya mstari wa kina:

hatua/hatua/...

Kila hatua inasababisha mchezo hicho kwa kuzingatia mchezo yote ya mchezo hicho.

Hatua (step) inahusu:

Mstari (axis)
Kuchunguza mstari wa mchezo na mchezo hicho
Mchelele wa mchezo (node-test)
Kutambua mchezo kwa mstari fulani
Kina kimoja au zaidi za kina (predicate)
Kuwaambia kina na kina zilizochaguliwa

Inayohesabu shughuli ya hatua:

Jina la mstari::mchezo [mchelele]

Mivuno

Mivuno Matokeo
child::book Chagula mababu ya chaguo yote ya book ya chaguo hicho.
attribute::lang Chagula mafupi ya lang ya chaguo hicho.
child::* Chagula mababu yote ya chaguo ya kizuri.
attribute::* Chagula mafupi yote ya chaguo.
child::text() Chagula mababu ya chaguo yote ya text.
child::node() Chagula mtaalamu wa mababu yote ya chaguo hicho.
descendant::book 选取当前节点的所有 book 后代。
ancestor::book 选择当前节点的所有 book 先辈。
ancestor-or-self::book 选取当前节点的所有 book 先辈以及当前节点(如果此节点是 book 节点)
child::*/child::price 选取当前节点的所有 price 孙节点。