The disclosed teachings provide methods and systems for efficient evaluation of XPath queries. In particular, the disclosed evaluation methods require only polynomial time with respect to the total size of an input XPath query and an input XML document. Crucial for the new methods is the notion of “context-value tables”. This idea can be further refined for queries in Core XPath and XSLT Patterns so as to yield even a linear time evaluation method. Moreover, the disclosed methods can be used for improving existing methods and systems for processing XPath expressions so to guarantee polynomial worst-case complexity.