|
[XML-DEV Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message] Re: Streaming XML
Hi, IMHO, a nice or decent XSLT/XQuery processing engine for XML streaming processing should be able to get the evaluation plan in which minimal memory bufffers are required. Some XSLT/XQuery programs are purely streamable, then no extra memory is needed. A possible approach is as follows. Inside the engine, the input XSLT or XQuery programs are translated into a program utilizing SAX apis. Thus, there are some optimization opportunities here. Our goal is to compose an efficient target program as much as possible. 1. No schema is available. A proper program can be obtained which uses as little memory as possible. 2. With schema. With schema information of the XML documents to be processed, the target program can be improved. 3. With schema and more semantic constraints, such as key or keyref, uniquesness. With more constraints information, the target program can be improved more. Given an XSLT or XQuery program, and the schema information or constraints, a smart developer can write a Java or C program which uses as little memory as possible. But can that be generalized? In other words, are there algorithms which take XSLT/XQuery programs and schema as input, and generate the optimal evaluation plan, since both are Turing-complete? Sorry for that, I have to admit that I did not grasp Turing-complete like concepts very well. Can we translate XSLT program, which essentially operate on tree model, into operations on sequence or streaming model? That is the key issue. best regards, Zhimao Guo
|
PURCHASE STYLUS STUDIO ONLINE TODAY!Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced! Download The World's Best XML IDE!Accelerate XML development with our award-winning XML IDE - Download a free trial today! Subscribe in XML format
|
|||||||||

Cart








