19. The one or more computer readable storage media of claim 12 , wherein evaluating the compiled path expression comprises sending the parsing instruction to an XML parser.
12. One or more non-transitory computer-readable storage media storing instructions that, when executed by one or more computing devices, causes: receiving a path expression to be evaluated on an encoded XML data source, wherein the encoded XML data source is defined by an XML schema, wherein the path expression comprises path expression steps, each path expression step of said path expression steps specifying at least a characteristic of an element or an element attribute; wherein the encoded XML data source comprises an encoded representation of a particular element encoded within said encoded XML data source; prior to evaluating the encoded XML data source, compiling the path expression, thereby forming a compiled path expression, wherein the compiled path expression comprises a representation of a path expression step of the path expression, said representation of a path expression step of the path expression including said encoded representation of a particular element; wherein the compiled path expression also comprises a parsing instruction associated with the representation of the path expression step of the path expression; wherein compiling the path expression comprises: based on analyzing the XML schema, determining a portion of the encoded XML data source that cannot match the path expression step, and generating the parsing instruction to skip said portion of the encoded XML data source; evaluating the compiled path expression on the encoded XML data source, wherein evaluating the compiled path expression includes skipping a portion of the encoded XML data source, based on the parsing instruction, without evaluating whether said portion of the encoded XML data source matches against the path expression step; and generating a result based on the evaluation of the path expression.