如何在XML流上高效地执行大量复杂XQuery查询是当今研究的热点之一。在数据选择分发等应用中,还希望在解析流的同时尽早地输出查询结果。为此,本文将XQuery查询的路径导航和结果构造两个阶段分别运行于服务器、客户机两端。导航阶段针对XQuery查询定义了扩展的基本XSIEQ机E-XSIEQ(Extended XML Stream Query with Immediate Evaluation),它是一种被索引化、基于栈的自动机。在E-XSIEQ机上设计应用了TreeBuf(Tree Buffer)算法,它是一种树型提升缓冲的查询算法,算法使用了前缀共享计算的技术,能高效处理XQuery查询,而且能优化XPath查询。实验证明了TreeBuf算法的高效性。