Cílem je poskytnout abstraktní model dat v příslušném značkování tak, abychom:
mohli validovat, zda dokumenty jsou syntakticky korektní, zda odpovídají schématu
následně mohli dokumenty (data) zpracovávat jako silně typované:
hodnoty textových uzlů pak interpretovány jako hodnoty primitivních datových typů (int, float, boolean...), nebo vestavěných neprimitivních typů - řetězec, datum
elementy interpretovány jako hodnoty uživatelských
objektových typů, např. element person
jako
objekt třídy Person
.
používat informace o struktuře validních dokumentů např. při vyhledávání:
víme-li např., že element from
se
vyskytuje jen jako dceřinný v elementu
message
, můžeme a priori rozhodnout, že
výsledek XPath dotazu /address/from
bude nad
validními dokumenty vždy prázdný
totéž např. pro dokumenty, kde známe pořadí výskytu
dceřinných elementů za sebou - pak můžeme např. predikovat obsah
XPath osy following-sibling
.
používat je při vizualizaci, formátování, editaci(!)