12. A system for processing queries of an XML document, the system comprising: a tokenizer configured to generate a plurality of tokens based on the contents of the XML document; a processor configured to: receive at least one query expression, wherein the at least one query expression comprises one or more components, and wherein each of the components comprises at least one symbol; generate at least one index and a data structure, wherein the generated data structure is indicative of hierarchical relationships between the one or more components of the received at least one query expression, the generated data structure further defining respective lists of the one or more components having corresponding symbols and the index comprising a plurality of entries with at least one of the entries for each symbol of the received at least one query expression and wherein the generated at least one index relates each symbol of the received at least one query expression in a corresponding one of the entries to a corresponding component in the respective lists defined by the generated data structure; generate a plurality of tokens based on contents of the XML document; identify one or more tokens that matches at least one symbol by comparing the plurality of tokens with the generated at least one index; for each of the identified one or more tokens: retrieving a respective list of matching components corresponding to the matched at least one symbol of the generated structure and marking each matching component of the respective list of matching components; and output data indicative of a match to the received at least one query expression subsequent to marking each of the components of the received at least one query expression.
12. A system for processing queries of an XML document, the system comprising: a tokenizer configured to generate a plurality of tokens based on the contents of the XML document; a processor configured to: receive at least one query expression, wherein the at least one query expression comprises one or more components, and wherein each of the components comprises at least one symbol; generate at least one index and a data structure, wherein the generated data structure is indicative of hierarchical relationships between the one or more components of the received at least one query expression, the generated data structure further defining respective lists of the one or more components having corresponding symbols and the index comprising a plurality of entries with at least one of the entries for each symbol of the received at least one query expression and wherein the generated at least one index relates each symbol of the received at least one query expression in a corresponding one of the entries to a corresponding component in the respective lists defined by the generated data structure; generate a plurality of tokens based on contents of the XML document; identify one or more tokens that matches at least one symbol by comparing the plurality of tokens with the generated at least one index; for each of the identified one or more tokens: retrieving a respective list of matching components corresponding to the matched at least one symbol of the generated structure and marking each matching component of the respective list of matching components; and output data indicative of a match to the received at least one query expression subsequent to marking each of the components of the received at least one query expression. 16. The system of claim 12 , wherein the query expression comprises an XPath expression.