XPath-akselit (akselit)
- Edellinen sivu XPath-grammatiikka
- Seuraava sivu XPath-laskin
XML-esimerkkidokumentti
Käytämme tätä XML-dokumenttia seuraavassa esimerkissä:
<?xml version="1.0" encoding="ISO-8859-1"?> <bookstore><title lang="eng">Harry Potter</title> <price>29.99</price> </book> <title lang="eng">Learning XML</title> <price>39.95</price> </book> </bookstore>
XPath-akseli
Akseli määrittelee solmunjoukon suhteessa nykyiseen solmuun. | Tulos |
---|---|
Akselin nimi | ancestor |
Valitse nykyisen solmun kaikki esi-isät (äiti, isoväki jne.). | ancestor-or-self |
Valitse nykyisen solmun kaikki esi-isät (äiti, isoväki jne.) sekä nykyinen solmu itsessään. | Valitse nykyisen solmun kaikki attribuutit. |
attribute | Valitse nykyisen solmun kaikki lapsielementit. |
child | descendant |
Valitse nykyisen solmun kaikki jälkeläiset elementit (lapsi, lapsenlapsi jne.). | descendant-or-self |
Valitse nykyisen solmun kaikki jälkeläiset elementit (lapsi, lapsenlapsi jne.) sekä nykyinen solmu itsessään. | following |
Valitse nykyisen solmun alkusignaalimerkin jälkeen olevat kaikki solmut. | namespace |
Valitse nykyisen solmun kaikki nimenkutsu-solmut. | parent |
Valitse nykyisen solmun emo-solmu. | preceding |
Valitse nykyisen solmun alkusignaalimerkin edellä olevat kaikki solmut. | preceding-sibling |
Valitse nykyisen solmun kaikki edeltävät samanlaiset solmut. | self |
Valitse nykyinen solmu.
Sijaintipolkuilmaisu
Sijaintipolku voi olla joko absoluuttinen tai suhteellinen.
Absoluuttinen sijaintipolku: Absoluuttinen polku alkaa oikealla vinoviivalla (/), mutta suhteellinen polku ei. Molemmissa tapauksissa sijaintipolku sisältää yhden tai useamman askeleen, ja jokainen askel erotellaan viivalla:
/step/step/...
Suhteellinen sijaintipolku:
step/step/...
Jokainen askel lasketaan nykyisen solmunjoukon solmujen perusteella.
Askeleet (step) sisältävät:
- Akseli (axis)
- Määritä valittujen solmujen ja nykyisen solmun välinen puurakenne
- Solmutesti (node-test)
- Tunnista jokin akselissa oleva solmu
- Nolla tai useita lausekkeita (predicate)
- Tiekohtaisesti hienosäätä valittua solmunjoukkoa
Askeleen syntaksi:
Akselin nimi::solmu_testi[lauseke]
Esimerkki
Esimerkki | Tulos |
---|---|
child::book | Valitse kaikki nykyisen solmun lapsielementtien book-solmut. |
attribute::lang | Valitse nykyisen solmun lang-ominaisuus. |
child::* | Valitse nykyisen solmun kaikki lapsielementit. |
attribute::* | Valitse nykyisen solmun kaikki attribuutit. |
child::text() | Valitse nykyisen solmun kaikki tekstilapsisolmut. |
child::node() | Valitse nykyisen solmun kaikki lapsisolmut. |
descendant::book | Valitse kaikki book-lapsisolmut nykyisestä solusta. |
ancestor::book | Valitse kaikki book-esi-isät |
ancestor-or-self::book | Valitse kaikki book-esi-isät ja nykyinen solu (jos nykyinen solu on book-solmu) |
child::*/child::price | Valitse kaikki price-lapsisolmut nykyisestä solusta. |
- Edellinen sivu XPath-grammatiikka
- Seuraava sivu XPath-laskin