Axyana software
productsaboutsite mapcontact
products
    Change log

 

Site Map
Contact

Qizx/open Change Log

 

January 14, 2008: Qizx/open is now a XMLmind product

Please visit http://www.xmlmind.com/qizx/.

 

Version 0.2p7 -Sept 23, 2007

  • Bug fix:
    • Serialization: The <?xml declaration was appearing in HTML, even with the option omit-xml-declaration equal to true.

Version 0.2p6 -June 11, 2007

  • Bug fix:
    • Serialization: characters not supported by the encoding are now output as a character entity reference. in HTML mode, symbolic character entities defined in HTML4 are used if the encoding cannot represent them: for example Unicode character U+8482 (TM sign) is output as &trade;
    • Java API: the QName passed as argument of the "endElement" event in SAXEventHandler and derived classes (eg NodeXMLReader) was not correct.

Version 1.1p4 -Feb 17, 2007

  • Bug fixing:
    • Java binding issue with overloaded methods: the basic problem is that XQuery does not support function overloading, therefore calling overloaded Java methods bound as XQuery functions should not be supported by Qizx in principle. This feature was however partially supported in Qizx/open 1.0 but the changes in type handling in 1.1 have made it nearly unusable.

      Qizx/open 1.1p4 attempts to improve on the current situation: the types of arguments (declared or inferred) are used to select the best matching overloaded method. This should solve most cases. However there are still issues when argument types map to xdt:object.

      See the documentation for more details and for examples.

Version 1.1p3 -Oct 1st, 2006

Bug fixing and conformance release: passes 99.9% of all 'MinimalConformance' tests from the latest instalment (v1.0) of the XQuery Test Suite. Passes also all the tests of the optional feature "Modules".

Remaining issues:

  • Advanced Unicode features: surrogates and normalizations. Low priority, as very few users are likely to be concerned.

Other bug fixes:

  • Compilation bug in complex FLWOR expressions with joins [B. Haible/ILOG]

Version 1.1p2 - Sep 3, 2006

Bug fixing and conformance release: passes 99.5% of all 'MinimalConformance' tests from the latest instalment (v1.0) of the XQuery Test Suite.

Remaining issues (0.6%) mainly concern:

  • Functions id/idref. Will be implemented, but not in the near future.
  • Advanced Unicode features: surrogates and normalizations. Low priority, as very few users are likely to be concerned.

New features:

  • The collection() function has now a simple implementation that accepts a list of document URI's separated by commas or semicolons. Document URI's are resolved in the same way as by function doc().

Version 1.1p1 - June 25, 2006

Bug fixing version:

  • Slight improvements in conformance: 96.5% of XQuery Test Suite 0.9 (95% of XQTS 0.9.4)
  • Fixed blocking bug in namespace handling (wrong "duplicate attribute" error).
  • Introduced 3 new function names in SQL Connectivity, due to an issue with function overloading: sqlx:execStatement, sqlx:rawExecStatement, sqlx:execUpdateStatement.

Known bugs, not yet fixed:

  • Java binding: trying to call overloaded methods or constructors in a Java class may fail in a platform dependent way. The issue was already existing in 0.1 but has been worsened by type-checking changes in 0.2.

Version 1.1 - May 29, 2006

  • Big step toward full compliance with the XML Query Candidate Recommendation (CR) of Nov 2005. Qizx/open v1.1 passes over 96% of XQTS 0.9, the official test suite (against 75% in version 1.0).

    Note: XQTS 0.9 itself is not yet completely correct (up to 2% of broken tests).

    The main changes are:

    • Typing control has been relaxed to be only at runtime. Former versions of Qizx/open had a different understanding of "strongly typed" than the W3C drafts and were enforcing typing much in the way of classical languages like Java.
      However static typing can still be used to optimize expressions. For example the Fibonacci function is about 4 times faster with an explicit type declaration for argument and return value than if weakly typed.
    • All date/duration functions and operators that we were reluctant to implement so far are now available. There are a few extensions (casting dateTimes and durations from/to numbers).

    Remaining discrepancies with the standard mainly concern namespaces (specific functions, copy/inherit in constructors, serialization). This will be fixed in 1.2.

  • GUI improvements in Qizx Studio: persistent history, XML-like display, results displayed by blocks, export of results, memory monitoring, document cache control.
  • Bug fixes (bugs signalled by users):
    • the cache of DocumentManager now detects a modification of the source file of a document.
    • Local variables in global init expression (HJ Rennau)
    • broken translate function (HJ Rennau)
    • NPE in FLOWR join analysis (P Senellart)
    • Serialization (A Lauro)
    • getPackage() not suitable in J2EE

Version 1.0 - Oct 5, 2005

  • Qizx/open License changed from GPL to Mozilla Public License.
  • New Java API: major evolution towards a XQJ compatible design. See the XQuery API documentation for more detail.
    • XQueryProcessor replaced by XQueryConnection and XQueryExpression.
    • The XQ engine is remotely accessible through Java RMI. This feature is of interest mainly to XQuest, the coming database query engine. However it also opens new possibilities for this open-source version.
    • Packages renamed from net.xfra.qizopen.* to net.axyana.qizxopen.*
    • Numerous renamings of classes and interfaces: Node to XQNode, Value to XQValue, Item to XQItem etc.
  • Renaming of date/time functions for compatibility with W3C specs: e.g. year-from-date instead of get-year-from-date.
  • Path expressions without explicit root use the Default Input as root, if the current item is not defined. Namely for example //COMMENT is equivalent to input()//COMMENT. The default input can be defined through the Java API, or through the -input option in the command-line tool qizxopen_batch.
  • Documentation has been reorganized and is more comprehensive.

Version 0.4p2 - Oct 22, 2004

  • Bug fix: more than 8 nested 'for' loops generated an exception
  • Bug fix: module import syntax and semantic issues.
  • Bug fix: type checking problem with arrays in Java binding.

Version 0.4p1 - Sep 22, 2004

  • Bug fix: syntax issue on else (not recognized after a computed node constructor).
  • Bug fix: improper join optimization on non-node FLWR loops.
  • Bug fix: join optimization: node order and boundary issues on inequality in where.
  • Added a "Tag View" in Graphic User Interface.
  • API Enhancement: XQueryProcessor.setInput(org.xml.sax.InputSource)

Version 0.4 - August 17, 2004

  • Graphic user interface: a new tool to experiment with XQuery in a nicer way.
  • SQL Connection: a new extension allowing easy inclusion of information from relational databases into XQuery-generated documents. See the user's and developer's guides.
  • Syntax update with respect to July 2004 draft: prologue declarations, priorities, variable initialization, ordered/unordered.
  • New extension functions: XSL transformations, eval (dynamic evaluation).
  • Non-standard syntax extension: try/catch.
  • Revised documentation.

Version 0.3_01 - April 08, 2004

  • XQuery Server Pages (Servlet environment for using XQuery in Web applications):
    • tested on Tomcat 4.2 and 5.0, Caucho Resin 3.0.6, fixed bugs in XSLT post-processing adapter to Xalan and Saxon.
    • Java binding security features brought in operation: see documentation.
  • Java binding: rewritten and extended. Better handling of overridden methods.
  • Fixed issue with 'local' namespace on functions: no more mandatory.
  • Miscellaneous bug fixes and optimizations.

Version 0.3 - March 12, 2004

  • Servlet environment for using XQuery in Web applications (aka "XQuery Server Pages"). Demos can be downloaded as separate .war
  • Detection and optimization of several cases of joins.
  • New extension functions (context-sensitive text search [or index-less fulltext search] and text highlight, miscellaneous utility functions).
  • Revised documentation.
  • Changes in the November 2003 Draft:
    • syntax (attribute test) ; new namespace and PI constructors ; casting numeric values to string ; changes in functions: empty string vs empty sequence, enhancement of regular expressions, changes in aggregate functions. ; operator (m to n)
  • Java binding: new security features. Support of java.util.Enumeration, java.util.Vector , java.util.ArrayList as function return values.
  • Modules: fixed syntax bug, revised management of global variables (now thread-safe).
  • Serialization: added TEXT output method.
  • Command-line application: more options, modified display of results.
  • Miscellaneous bug fixes and optimizations.
  • Reorganization of package hierarchy: data model-related classes independent of XQuery put into net.xfra.qizx.dm.

Version 0.2_01 - Oct 18, 2003 (maintenance)

  • Type-checking issues: the rules about untypedAtomic are now correctly handled. So far the type-checking was too strict, not accepting xdt:untypedAtomic (i.e. nodes, in absence of schema) for atomic function arguments.
  • Improved Document Manager: XML catalogs using Sun's URI resolver, and tunable caching. (See the User Guide).
  • Other fixes:
    • syntax: separator between declarations, PI test
    • extension functions are now in a private namespace "qizx.extensions" with a predefined prefix "qizx". For example: qizx:serialize().
    • Added functions get-<component>-from-<date_time_types>
    • miscellaneous fixes, improvement of error handling.

Version 0.2 - Sep 15, 2003

  • Upgrade to August 2003 Working Draft:
    • syntax of declarations ("declare function", "declare variable", order). The former syntax is still accepted.
    • New computed constructors (PI, comment, Namespace).
    • Completed support of the Full Axis optional feature: added axes preceding, preceding-sibling and following.
  • Enhanced serialization: additional options, support of XHTML and HTML.(see the User Guide for more details).
  • Support for Java extension functions: mechanism similar to XT or Saxon. Allows to manipulate wrapped Java objects, to invoke constructors, static and non-static methods. Maps Java array arguments to/from item sequences. (see the User Guide for more details).
  • Optimization of user function calls and FLWOR expressions.

Version 0.1 - Aug 20, 2003

Initial release

 


 


© 2004-2008 Axyana software. Site update 2008-01-15 using Qizx.

Java and all Java-based marks are trademarks or registered trademarks of Sun Microsystems, Inc. in the U.S. and other countries.
Acrobat is a trademark of Adobe Systems Incorporated.