XQuery Update Test Suite Result Summary

This document contains the results of running the XML Query Update Test Suite on one or more implementaions of the XQuery Update Facility.

The latest version of this test suite is XQuery Update Test Suite 1.0.1. Implementations that have used older versions of the test suite are noted.

The latest version of our files is available at http://dev.w3.org/cvsweb/2007/xquery-update-10-test-suite/.

Legend:    
        
passed    
        
almost passed
(≥ 98%)
    
        
failed    
        
untested
Figures are quoted as Passed / Failed / Total (any discrepancy represents tests not run or not reported)
XQuery

XQueryX

FeatureMXQuery
(XQTS 1.0.1-current)
Anonymous
(XQTS XQUTS_cvshead)
Saxon-EEZorba
(XQTS current)
Anonymous
(XQTS XQUTS_cvshead)
Zorba
(XQTS current)
Summary
Minimal Conformance 667 / 0 / 667 
100%
 667 / 0 / 667 
100%
 667 / 0 / 667 
100%
 667 / 0 / 667 
100%
 667 / 0 / 667 
100%
 667 / 0 / 667 
100%
6/6
Optional Features
    Revalidation 37 / 0 / 77  35 / 0 / 77  74 / 0 / 77  73 / 0 / 77  35 / 0 / 77  73 / 0 / 77 0/6
    Update Facility Static Typing Feature 0 / 0 / 27  27 / 0 / 27  0 / 0 / 27  0 / 0 / 27  27 / 0 / 27  0 / 0 / 27 2/6
    Tests that need the Full Axis Feature 14 / 0 / 14  14 / 0 / 14  14 / 0 / 14  14 / 0 / 14  14 / 0 / 14  14 / 0 / 14 6/6
    fn:put applied to nodes other than document and element nodes 4 / 0 / 8  4 / 0 / 8  4 / 0 / 8  4 / 0 / 8  4 / 0 / 8  4 / 0 / 8 0/6

Implementations:

MXQuery

Organization:ETH Zurich
http://mxquery.org
Implementation:MXQuery
Version:0.7.0

Saxon-EE

Organization:Saxonica
http://www.saxonica.com/
Implementation:Saxon-EE
Version:9.3.0.-1

Zorba

Organization:FLWOR Foundation
http://zorba-xquery.com/
Implementation:Zorba
Version:2.0.3

Zorba

Organization:FLWOR Foundation
http://zorba-xquery.com/
Implementation:Zorba
Version:2.0.3

Summarized Results:

Legend:    
        
passed    
        
almost passed
(≥ 98%)
    
        
failed    
        
untested
Figures are quoted as Passed / Failed / Total (any discrepancy represents tests not run or not reported)
XQuery

XQueryX

FeatureMXQuery
(XQTS 1.0.1-current)
Anonymous
(XQTS XQUTS_cvshead)
Saxon-EEZorba
(XQTS current)
Anonymous
(XQTS XQUTS_cvshead)
Zorba
(XQTS current)
Summary
Minimal Conformance
    Extensions to the Prolog
        Variable Declaration2/22/22/22/22/22/26/6
        Function Declaration21/2121/2121/2121/2121/2121/216/6
    New Kinds of Expressions
        Insert Expressions100/100100/100100/100100/100100/100100/1006/6
        Delete Expressions30/3030/3030/3030/3030/3030/306/6
        Replace Expressions
            Replacing a Node22/2222/2222/2222/2222/2222/226/6
            Replacing the Value of a Node33/3333/3333/3333/3333/3333/336/6
        Rename Expressions44/4444/4444/4444/4444/4444/446/6
        Transform Expressions58/5858/5858/5858/5858/5858/586/6
        Compatibility of Updating Expressions30/3030/3030/3030/3030/3030/306/6
    Extension to Existing Expressions
        FLWOR Expressions25/2525/2525/2525/2525/2525/256/6
        Typeswitch Expressions38/3838/3838/3838/3838/3838/386/6
        Conditional Expressions38/3838/3838/3838/3838/3838/386/6
        Comma Expressions38/3838/3838/3838/3838/3838/386/6
        Parenthesized Expression3/33/33/33/33/33/36/6
        Function Call6/66/66/66/66/66/66/6
        Other Expressions32/3232/3232/3232/3232/3232/326/6
    Extensions to Built-in Function Library
        fn:put
            fn:put() applied to document nodes8/88/88/88/88/88/86/6
            fn:put() applied to element nodes3/33/33/33/33/33/36/6
    XML Query Update Operations
        XML Query Update Primitives
            upd:insertBefore Primitive
            upd:insertAfter Primitive
            upd:insertInto Primitive
            upd:insertIntoAsFirst Primitive
            upd:insertIntoAsLast Primitive
            upd:insertAttributes Primitive
            upd:delete Primitive
            upd:replaceNode Primitive
            upd:replaceValue Primitive
            upd:replaceElementContent Primitive
            upd:rename Primitive
            Data model errors on changing attributes17/1717/1717/1717/1717/1717/176/6
            Namespace binding conflicts on attribute updates19/1919/1919/1919/1919/1919/196/6
        XQuery Update Routines
            upd:mergeUpdates2/22/22/22/22/22/26/6
            upd:applyUpdates21/2121/2121/2121/2121/2121/216/6
            upd:revalidate
            upd:removeType
            upd:setToUntyped10/1010/1010/1010/1010/1010/106/6
            upd:propagateNamespace6/66/66/66/66/66/66/6
    Additional Typing60/6060/6060/6060/6060/6060/606/6
    Other Tests1/11/11/11/11/11/16/6
Optional Features
    Revalidation
        Revalidation Declaration = strict0/210/2121/2121/210/2121/213/6
        Revalidation Declaration = strict unsupported1/11/10/10/11/10/13/6
        Revalidation Declaration = lax0/190/1919/1919/190/1919/193/6
        Revalidation Declaration = lax unsupported1/11/10/10/11/10/13/6
        Revalidation Declaration = skip33/3333/3333/3333/3333/3333/336/6
        Revalidation Declaration = skip unsupported1/10/10/10/10/10/11/6
        Revalidation Declaration = strict + skip1/10/11/10/10/10/12/6
    Update Facility Static Typing Feature0/2727/270/270/2727/270/272/6
    Tests that need the Full Axis Feature14/1414/1414/1414/1414/1414/146/6
    fn:put applied to nodes other than document and element nodes
        fn:put() applied to comment nodes1/11/10/11/11/11/15/6
        fn:put() applied to comment nodes - unsupported0/10/11/10/10/10/11/6
        fn:put() applied to processing-instruction nodes1/11/10/11/11/11/15/6
        fn:put() applied to processing-instruction nodes - unsupported0/10/11/10/10/10/11/6
        fn:put() applied to attribute nodes0/10/10/11/10/11/12/6
        fn:put() applied to attribute nodes - unsupported1/11/11/10/11/10/14/6
        fn:put() applied to text nodes1/11/10/11/11/11/15/6
        fn:put() applied to text nodes - unsupported0/10/11/10/10/10/11/6
Use Cases
    Use Cases "R" - Updating Relational Data11/1111/1111/1111/1111/1111/116/6
    Use Cases "address Book" - Synchronizing address book entries1/11/11/11/11/11/16/6
    Use Cases "Soap" - processing messages1/11/11/11/11/11/16/6
    Use Cases "Namespaces" - moving elements from one namespace to another1/11/11/11/11/11/16/6
    Use Cases "Parts" - modifying recursive documents7/77/77/77/77/77/76/6
    Use Cases "Nil"1/11/11/11/11/11/16/6