Welcome to the home page of QuiX-Tool Suite. The QuiX-Tool Suite provides tools to process XML streams and documents. Stream means the XML input is processed event by event like in SAX interface. The QuiX-Tool Suite is based on early algorithms: query answers are delivered as soon as possible and all pratical cases at the earliest time point.

What is the QuiX-Tool Suite?

The QuiX-Tool Suite provides an implementation of the main XML standart over streams. XPath, XSLT, XQuery and XProc are W3C standarts while Schematron is an ISO one:

QuiX Tool Hierachy
Tool Version
QuiXPath 2.0
QuiXProc 1.1
QuiXSchematron 1.0
QuiXSLT 0.5
X-Fun 0.5
QuiXQuery 0.1

Why quering XML streams?

Stream-based processing overcomes pitfalls of the traditional in memory processing:

  • Documents can be too big to be stored in main memory, as in DOM. Indeed, a document could potentially load hundreds of MB of data, risking a MemoryException being thrown if too much is loaded! A stream takles this problem since it model a document as a suite of events. So XML data will not be loaded at the same time.
  • Monitoring unbounded XML streams: in streaming applications, querying engines find output events of interest or compute real-time analytics.
  • Filter before distribute: filters select information before being distributed to the subscribers.
  • Processed before the full data is retrieved: in a validation process, send error messages as soon as possible. Do not wait that the validator recieved the end of the stream.
  • Pipelined processing: send the output of one step of pipeline to next one with an XML stream. XProc is an example of pipeline langage for XML.