*Introduction *Evaluating XPath expressions on streaming XML, without caching data and without randomly accessing XML data, will improve the performance of XPath evaluation. Considering the time constraints of this projects I propose that following sections of XPath to be implemented in the GSoC project and other areas be covered later on with or without streaming support.
Since it is had to evaluate all types of XPath expressions on streaming XML the API will enable the caller to decide whether it should be evaluated without caching XML data or not. *Axes** * The set of axes that will be supported on streaming XML will be attribute, child, and following-sibling. Most of the other axes will be supported but not on streaming XML. Supporting other axes is possible but requires complex algorithms; implementation of which is not possible within the timeframe of GSoC. *Predicates* Only predicates which involve attributes will be supported on streaming XML. Even most of the present XPath engines do not support other types of predicates on streaming XML. However, predicates involving location paths other than attributes will be support without streaming. *Caching *Currently there is no option in axiom to disable caching and one option to deal with this is to free momory once a node has been processed. However, there will be a slight problem with the links to that node by other nodes; therefore, these links should also be cleared. This can be done using axiom_node_detach, etc. Please give your suggestions on this. -- Varuna www.xvpj.net