XPath (XML Path Language) je samostatn² standard W3C, kter² se pou₧φvß v n∞kolika dalÜφch jazycφch vΦetn∞ XSLT. V XPathu lze zapisovat jednoduchΘ v²razy, kterΘ vybφrajφ Φßsti XML dokumentu. XML dokument je p°itom chßpßn jako stromovß struktura, kde jsou jednotlivΘ elementy, atributy a text chßpßny jako uzly (viz obrßzek 3).
V²razy v XPath jsou podobnΘ zßpisu cest ve struktu°e adresß°∙. Kdybychom nap°φklad cht∞li vybrat vÜechny polo₧ky faktury, pou₧ijeme XPath v²raz /faktura/polozka. Lomφtko p°itom odd∞luje jednu ·rove≥ ve stromu. Znamenß to, ₧e polo₧ka musφ b²t dφt∞tem faktury. Pokud nßm na hloubce vno°enφ nezßle₧φ, pou₧ijeme dv∞ lomφtka bezprost°edn∞ za sebou û hledajφ se pak vÜichni potomci v libovolnΘ ·rovni stromu.
Podobn∞ jako v adresß°ovΘ struktu°e, m∙₧eme se i zde odvolßvat na aktußlnφ uzel stromu pomocφ teΦky a p°ejφt na nad°azenou ·rove≥ pomocφ dvou teΦek.
Pokud se chceme ve v²razu odkßzat na atribut, napφÜeme p°ed jeho jmΘno @. V²raz //@m∞na vybere vÜechny atributy m∞na kdekoliv v dokumentu.
Za v²raz lze do hranat²ch zßvorek zapisovat podmφnku, kterß v²b∞r z·₧φ. Pokud jako podmφnku zapφÜeme Φφslo, vybere se element s dan²m po°adφm. Nap°φklad /faktura/polozka[1] vybere prvnφ polo₧ku faktury. Poslednφ polo₧ku bychom vybrali s vyu₧itφm specißlnφ funkce last() û /faktura/polozka[last()]. VÜe lze samoz°ejm∞ navzßjem kombinovat. Pokud vßs zajφmajφ pouze polo₧ky, kde je cena uvedena v dolarech, proΦ nepou₧φt t°eba tento v²raz //polozka[cena/@mena='USD'].
Mo₧nosti XPath jsou samoz°ejm∞ mnohem v∞tÜφ, ale prostor Φlßnku nßm neumo₧≥uje se jimi zab²vat podrobn∞. K dispozici jsou funkce pro zßkladnφ v²poΦty, pro prßci s °et∞zci a samoz°ejm∞ i logickΘ spojky.