XQuery Test Suite Result Summary

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

The latest version of this test suite is XQTS 1.0.1. Implementations that have used older versions of the test suite are noted.

When results are listed as number/number/number, then indicate passed/failed/total. Passed and failed together may not equal total, due to tests not run or not reported.

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

XQuery

FeatureeXist-1.0
(XQTS 0.9.0)
eXist-1.0.1
(XQTS 0.9.0)
eXist-1.1eXist-1.1.1Summary
Minimal Conformance 9148 / 1506 / 14637  9151 / 1500 / 14637  13568 / 2138 / 14637  13579 / 2116 / 14637 0/4
Optional Features
    Schema Import Feature 77 / 194 / 174  77 / 194 / 174  102 / 144 / 174  102 / 144 / 174 0/4
    Schema Validation Feature 22 / 0 / 25  22 / 0 / 25  10 / 30 / 25  10 / 30 / 25 0/4
    Static Typing Feature 27 / 36 / 46  27 / 36 / 46  29 / 34 / 46  29 / 34 / 46 0/4
    Full Axis Feature 8 / 244 / 130  8 / 244 / 130  130 / 0 / 130  130 / 0 / 130 2/4
    Module Feature 27 / 2 / 32  27 / 2 / 32  17 / 30 / 32  17 / 30 / 32 0/4
    Trivial XML Embedding Feature 1 / 6 / 4  1 / 6 / 4  1 / 6 / 4  1 / 6 / 4 0/4

Implementations:

eXist-1.0

Organization:eXist Open Source native XML database
http://www.exist-db.org
Implementation:eXist-1.0
Version:20061015

eXist-1.0.1

Organization:eXist Open Source native XML database
http://www.exist-db.org
Implementation:eXist-1.0.1
Version:20061024

eXist-1.1

Organization:eXist Open Source native XML database
http://www.exist-db.org
Implementation:eXist-1.1
Version:20061015

eXist-1.1.1

Organization:eXist Open Source native XML database
http://www.exist-db.org
Implementation:eXist-1.1.1
Version:20061024

Summarized Results:

XQuery

FeatureeXist-1.0
(XQTS 0.9.0)
eXist-1.0.1
(XQTS 0.9.0)
eXist-1.1eXist-1.1.1Summary
Minimal Conformance
    Optional Feature Errors
        Single error code for extra features0/180/1814/1814/180/4
    XQuery Basics
        Static Context Evaluation0/10/10/10/10/4
        Query Types
            XQuery Sequence Type Syntax21/2121/2121/2121/214/4
    XQuery Expressions
        Primary Expressions
            Literals67/11967/119117/119117/1190/4
            Parenthesized Expressions18/2018/2018/2018/200/4
            Context Item Expressions
                External Context Item Expressions21/2421/2422/2422/240/4
                Internal Context Item Expressions21/2121/2121/2121/214/4
            Function Calls0/280/2827/2827/280/4
        Path Expressions
            General Path Expression Tests0/10/10/10/10/4
            Steps
                Axes160/186160/186159/186159/1860/4
                Node Tests
                    NodeTest17/2417/2417/2417/240/4
                    NameTest21/3721/3737/3737/372/4
            Predicates42/4442/4444/4444/442/4
            Unabbreviated Syntax25/2625/2625/2625/260/4
            Abbreviated Syntax21/2121/2121/2121/214/4
        Sequence Expressions
            Constructing Sequences
                Comma Operator51/5451/5454/5454/542/4
                Range Expression27/6527/6558/6558/650/4
            Filter Expressions22/11622/116110/116110/1160/4
            Combining Node Sequences18/2018/2018/2018/200/4
        Operators
            Arithmetic Operators
                Arithmetic Operators on Numeric Values
                    op:numeric-add65/13765/137129/137129/1370/4
                    op:numeric-subtract69/10769/107104/107104/1070/4
                    op:numeric-multiply46/7946/7979/7979/792/4
                    op:numeric-divide62/10562/10589/10589/1050/4
                    op:numeric-integer-divide56/10956/109108/109108/1090/4
                    op:numeric-mod29/5829/5857/5857/580/4
                    op:numeric-unary-plus39/5139/5146/5146/510/4
                    op:numeric-unary-minus39/5239/5248/5248/520/4
                Arithmetic Operators on Duration Values
                    op:add-yearMonthDurations21/2421/2424/2424/242/4
                    op:subtract-yearMonthDurations21/3021/3030/3030/302/4
                    op:multiply-yearMonthDuration24/3724/3737/3737/372/4
                    op:divide-yearMonthDuration21/2721/2727/2727/272/4
                    op:divide-yearMonthDuration-by-yearMonthDuration21/2221/2222/2222/222/4
                    op:add-dayTimeDurations21/2421/2424/2424/242/4
                    op:subtract-dayTimeDurations21/3021/3030/3030/302/4
                    op:multiply-dayTimeDuration23/3223/3232/3232/322/4
                    op:divide-dayTimeDuration19/3619/3635/3635/360/4
                    op:divide-dayTimeDuration-by-dayTimeDuration21/2221/2221/2221/220/4
                Arithmetic Operators on Duration and Date Time Values
                    op:subtract-dateTimes-yielding-dayTimeDuration16/2616/2622/2622/260/4
                    op:subtract-dates-yielding-dayTimeDuration20/2620/2626/2626/262/4
                    op:subtract-times17/2917/2925/2925/290/4
                    op:add-yearMonthDuration-to-dateTime19/2619/2625/2625/260/4
                    op:add-dayTimeDuration-to-dateTime19/2419/2423/2423/240/4
                    op:subtract-yearMonthDuration-from-dateTime19/2119/2120/2120/210/4
                    op:subtract-dayTimeDuration-from-dateTime20/2020/2020/2020/204/4
                    op:add-yearMonthDuration-to-date19/2419/2423/2423/240/4
                    op:add-dayTimeDuration-to-date19/2219/2221/2221/220/4
                    op:subtract-yearMonthDuration-from-date21/2321/2322/2322/230/4
                    op:subtract-dayTimeDuration-from-date19/2119/2120/2120/210/4
                    op:add-dayTimeDuration-to-time21/2421/2424/2424/242/4
                    op:subtract-dayTimeDuration-from-time21/2621/2626/2626/262/4
            Comparison Operators
                Value Comparison
                    Comparison of Numeric Values
                        op:numeric-equal131/178131/178178/178178/1782/4
                        op:numeric-less-than130/152130/152152/152152/1522/4
                        op:numeric-greater-than65/8865/8888/8888/882/4
                    Comparison Operators on Boolean Values
                        op:boolean-equal41/4941/4946/4946/490/4
                        op:boolean-less-than36/3936/3939/3939/392/4
                        op:boolean-greater-than36/3936/3939/3939/392/4
                    Comparisons of Duration, Date Time Values
                        op:yearMonthDuration-less-than22/2822/2828/2828/282/4
                        op:yearMonthDuration-greater-than22/2822/2828/2828/282/4
                        op:dayTimeDuration-less-than22/2822/2826/2826/280/4
                        op:dayTimeDuration-greater-than22/2822/2826/2826/280/4
                        op:duration equal66/12966/129105/129105/1290/4
                        op:dateTime-equal20/5220/5252/5252/522/4
                        op:dateTime-less-than22/2822/2828/2828/282/4
                        op:dateTime-greater-than22/2822/2828/2828/282/4
                        op:date-equal20/2820/2828/2828/282/4
                        op:date-less-than24/3024/3030/3030/302/4
                        op:date-greater-than24/3024/3030/3030/302/4
                        op:time-equal20/4020/4040/4040/402/4
                        op:time-less-than24/3024/3030/3030/302/4
                        op:time-greater-than24/3024/3030/3030/302/4
                        op:gYearMonth-equal23/3223/3231/3231/320/4
                        op:gYear-equal24/3224/3232/3232/322/4
                        op:gMonthDay-equal23/3123/3131/3131/312/4
                        op:gMonth-equal23/3123/3129/3129/310/4
                        op:gDay-equal22/3122/3130/3130/310/4
                        op:yearMonthDuration-equal0/70/77/77/72/4
                        op:dayTimeDuration-equal0/80/87/87/80/4
                    Comparison Operators on QName Values
                        op:QName-equal26/3626/3632/3632/360/4
                        fn:prefix-from-QName20/2420/2424/2424/242/4
                    Comparison Operators on base64Binary and hexBinary Types
                        op:hexBinary-equal24/2924/2929/2929/292/4
                        op:base64Binary-equal24/2724/2726/2727/271/4
                    Comparison Operators on NOTATION Types
                        op:NOTATION-equal
                    Type Checking and Error Handling0/420/4228/4228/420/4
                    Comparison of String Values
                        xs:string eq/ne xs:string0/50/55/55/52/4
                        xs:string gt/ge xs:string0/50/55/55/52/4
                        xs:string lt/le xs:string0/50/55/55/52/4
                    Comparison of AnyURI Values
                        xs:anyURI eq/ne xs:anyURI0/140/1410/1410/140/4
                General Comparisons
                    The "=" operator for general comparisons99/15899/158151/158151/1580/4
                    The "!=" operator for general comparisons99/14099/140136/140136/1400/4
                    The "< (less than)" operator for general comparisons89/11989/119108/119108/1190/4
                    The "<= (less than or equal)" operator for general comparisons99/10899/108107/108107/1080/4
                    The "> (greater than)" operator for general comparisons98/11898/118117/118117/1180/4
                    The ">= (greater than or equal)" operator for general comparisons99/11099/110109/110109/1100/4
                Node Comparisons
                    op:is-same-node22/2822/2828/2828/282/4
                    op:node-before21/3321/3332/3332/330/4
                    op:node-after16/3316/3327/3327/330/4
            Operators on Sequences
                op:union16/2316/2317/2317/230/4
                op:intersect19/2319/2319/2319/230/4
                op:except20/2320/2320/2320/230/4
        Logical Expressions318/364316/364363/364361/3640/4
        Constructors
            Direct Element Constructors153/232152/232172/232171/2320/4
                Attributes39/5139/5142/5142/510/4
                Namespace Declaration Attributes28/2928/2929/2929/292/4
                Content51/8250/8263/8262/820/4
                White Space Element Content22/5722/5725/5725/570/4
            Other Direct Constructors20/2020/2020/2020/204/4
            Computed Constructors
                Computed Element Constructors46/5145/5147/5146/510/4
                Computed Attribute Constructors27/3327/3328/3328/330/4
                Document Node Constructors20/2420/2421/2421/240/4
                Text Node Constructors14/2016/2014/2016/200/4
                Computed Processing-instruction Constructors41/4141/4141/4141/414/4
                Computed Comment Constructors18/2118/2118/2118/210/4
            In-scope Namespaces of a Constructed Element14/2014/2014/2014/200/4
        Tests of For-Let-Where-OrderBy-Return Expressions
            FOR Clause
                FOR Clause without TypeDeclaration14/8714/8785/8785/870/4
                FOR Clause with TypeDeclaration30/5530/5537/5537/550/4
                FOR Clause with a Positional Variable0/300/3030/3030/302/4
            LET Clause
                LET Clause without TypeDeclaration19/2719/2725/2725/270/4
                LET Clause with TypeDeclaration24/2424/2424/2424/244/4
            WHERE Clause19/4019/4039/4039/400/4
            ORDER BY Clause
                ORDER BY Clause with OrderModifier97/10697/106100/106100/1060/4
                ORDER BY Clause without OrderModifier36/4036/4036/4036/400/4
            RETURN Clause5/205/2020/2020/202/4
        Ordered and Unordered Expressions15/2615/2619/2619/260/4
        Conditional Expressions17/3217/3231/3231/320/4
        Quantified Expressions
            Quantified Expressions Without TypeDeclaration59/15859/158142/158142/1580/4
            Quantified Expressions With TypeDeclaration1/301/3015/3015/300/4
        Expressions on Sequence Types
            Instance Of110/176110/176175/176175/1760/4
            Typeswitch24/3624/3635/3635/360/4
            Cast from Derived types21/2121/2121/2121/214/4
            Cast from Derived types To Parents21/2121/2121/2121/214/4
            Casting within a branch of the type hierarchy19/2119/2121/2121/212/4
            Cast672/2207672/22072137/22072145/22070/4
            Castable646/688646/688685/688685/6880/4
            Treat25/4325/4339/4339/430/4
        Modules and Prologs
            Version Declaration15/2715/2719/2719/270/4
            Boundary-space Declaration3/273/276/276/270/4
            Default Collation Declaration2/72/75/75/70/4
            Copy Namespaces Declaration0/270/274/274/270/4
            Base URI Declaration16/3016/3016/3016/300/4
            Construction Declaration20/2520/2523/2523/250/4
            Default Namespace Declaration24/3524/3535/3535/352/4
            Ordering Mode Declaration17/2517/2518/2518/250/4
            Empty Order Declaration16/3216/3218/3218/320/4
            Namespace Declaration17/3417/3427/3427/340/4
            Variable Declaration
                External Variable References without TypeDeclaration21/2321/231/231/230/4
                External Variable References with TypeDeclatation20/2420/2421/2421/240/4
                Internal Variable References without TypeDeclaration61/7661/7674/7674/760/4
                Internal Variable References with TypeDeclatation21/4421/4441/4441/440/4
            Function Declaration22/10022/10075/10074/1000/4
            Option Declaration Declaration2/82/87/87/80/4
        XQuery Comments20/4020/4040/4040/402/4
        Extension Expression25/5025/5048/5048/500/4
        Implicit Context
    Functions
        Accessor Functions
            fn:node-name24/2724/2717/2717/270/4
            fn:nilled1/261/264/264/260/4
            fn:string41/4841/4847/4847/480/4
            fn:data39/4339/4343/4343/432/4
            fn:base-uri18/2518/2521/2521/250/4
            fn:static-base-uri14/1714/1717/1717/172/4
            fn:document-uri19/2419/2422/2422/240/4
        The Error Function49/5949/5959/5959/592/4
        The Trace Function21/2721/2727/2727/272/4
        Constructor Functions
            fn:dateTime1/491/498/498/490/4
        Functions on Numeric Values
            fn:abs120/131125/131126/131131/1311/4
            fn:ceiling39/4539/4545/4545/452/4
            fn:floor39/4539/4545/4545/452/4
            fn:round39/4839/4848/4848/482/4
            fn:round-half-to-even39/5239/5252/5252/522/4
        Functions on Strings
            Functions to Assemble and Disassemble Strings
                fn:codepoints-to-string19/4619/4646/4646/462/4
                fn:string-to-codepoints21/4321/4342/4342/430/4
            Equality and Comparison of Strings
                fn:compare27/4227/4238/4238/420/4
                fn:codepoint-equal3/213/213/213/210/4
            Functions on String Values
                fn:concat82/9182/9191/9191/912/4
                fn:string-join26/3326/3333/3333/332/4
                fn:substring21/3621/3636/3636/362/4
                fn:string-length21/2921/2928/2928/290/4
                fn:normalize-space26/3526/3532/3532/350/4
                fn:normalize-unicode5/345/349/349/340/4
                fn:upper-case20/2420/2424/2424/242/4
                fn:lower-case20/2420/2424/2424/242/4
                fn:translate21/3421/3430/3430/340/4
                surrogate values for various string functions.9/159/159/159/150/4
                fn:encode-for-uri16/2916/2920/2920/290/4
                fn:iri-to-uri7/367/3633/3633/360/4
                fn:escape-html-uri24/3324/3331/3331/330/4
            Functions Based on Substring Matching
                fn:contains18/3218/3225/3225/320/4
                fn:starts-with18/3218/3225/3225/320/4
                fn:ends-with18/3118/3125/3125/310/4
                fn:substring-before17/3117/3125/3125/310/4
                fn:substring-after17/3217/3225/3225/320/4
            String Functions that Use Pattern Matching
                fn:matches45/5545/5554/5554/550/4
                fn:replace43/5243/5251/5251/520/4
                fn:tokenize30/3930/3939/3939/392/4
        Functions for anyURI
            fn:resolve-uri2/292/294/294/290/4
        Functions on Boolean Values
            fn:true21/2421/2424/2424/242/4
            fn:false21/2421/2424/2424/242/4
            fn:not60/7060/7070/7070/702/4
        Functions on Durations, Dates and Times
            Component Extraction Functions on Durations, Dates and Times
                fn:years-from-duration22/3022/3030/3030/302/4
                fn:months-from-duration22/3022/3030/3030/302/4
                fn:days-from-duration22/3022/3030/3030/302/4
                fn:hours-from-duration22/3022/3030/3030/302/4
                fn:minutes-from-duration22/3122/3131/3131/312/4
                fn:seconds-from-duration23/3123/3131/3131/312/4
                fn:year-from-dateTime22/2722/2727/2727/272/4
                fn:month-from-dateTime22/2722/2727/2727/272/4
                fn:day-from-dateTime22/2722/2727/2727/272/4
                fn:hours-from-dateTime22/2722/2727/2727/272/4
                fn:minutes-from-dateTime22/2722/2727/2727/272/4
                fn:seconds-from-dateTime22/2722/2727/2727/272/4
                fn:timezone-from-dateTime20/2720/2727/2727/272/4
                fn:year-from-date22/2722/2727/2727/272/4
                fn:month-from-date22/2722/2727/2727/272/4
                fn:day-from-date22/2722/2727/2727/272/4
                fn:timezone-from-date20/2720/2727/2727/272/4
                fn:hours-from-time22/2722/2727/2727/272/4
                fn:minutes-from-time22/2722/2727/2727/272/4
                fn:seconds-from-time22/2722/2727/2727/272/4
                fn:timezone-from-time20/2720/2727/2727/272/4
            Timezone Adjustment on Dates and Time Values
                fn:adjust-dateTime-to-timezone26/4226/4242/4242/422/4
                fn:adjust-date-to-timezone22/3622/3636/3636/362/4
                fn:adjust-time-to-timezone23/3923/3939/3939/392/4
        Functions Related to QNames
            Additional Constructor Functions for QNames
                fn:resolve-QName5/265/269/269/260/4
                fn:QName19/3219/3228/3228/320/4
            fn:local-name-from-QName11/2411/2423/2423/240/4
            fn:namespace-uri-from-QName11/2611/2626/2626/262/4
            fn:namespace-uri-for-prefix9/239/2311/2311/230/4
            fn:in-scope-prefixes2/222/224/224/220/4
        Functions on Nodes
            fn:name22/2622/2623/2623/260/4
            fn:local-name23/2623/2625/2625/260/4
            fn:namespace-uri26/2926/2928/2928/290/4
            fn:number37/6037/6058/6058/600/4
            fn:lang2/292/295/295/290/4
            fn:root22/2822/2826/2826/280/4
        Functions on Sequences
            General Functions and Operators on Sequences
                fn:boolean90/12290/122122/122122/1222/4
                fn:index-of21/4721/4744/4744/470/4
                fn:empty39/4839/4848/4848/482/4
                fn:exists39/5339/5353/5353/532/4
                fn:distinct-values56/8656/8670/8670/860/4
                fn:insert-before20/4120/4141/4141/412/4
                fn:remove20/4420/4441/4441/440/4
                fn:reverse39/6039/6060/6060/602/4
                fn:subsequence20/6720/6762/6762/670/4
                fn:unordered23/3123/3131/3131/312/4
            Functions That Test the Cardinality of Sequences
                fn:zero-or-one40/4840/4848/4848/482/4
                fn:one-or-more40/4840/4848/4848/482/4
                fn:exactly-one40/5040/5050/5050/502/4
            fn:deep-equal95/15695/156148/156148/1560/4
            Aggregate Functions
                fn:count39/5739/5757/5757/572/4
                fn:avg169/215169/215210/215210/2150/4
                fn:max105/172105/172168/172168/1720/4
                fn:min105/172105/172168/172168/1720/4
                fn:sum161/198161/198188/198188/1980/4
            Functions that Generate Sequences
                fn:id5/265/2625/2625/260/4
                fn:idref5/265/269/269/260/4
                fn:doc-available0/20/21/21/20/4
                fn:doc3/153/156/156/150/4
                fn:collection0/130/130/130/130/4
        Context Functions
            fn:position22/6522/6565/6565/652/4
            fn:last22/5122/5151/5151/512/4
            fn:current-dateTime12/2612/2614/2614/260/4
            fn:current-date12/2312/2314/2314/230/4
            fn:current-time12/2212/2214/2214/220/4
            fn:default-collation1/51/53/53/50/4
            fn:implicit-timezone9/269/2610/2610/260/4
Optional Features
    Schema Import Feature
        FLWOR Expressions that requires a schema import0/170/170/170/170/4
        Computed Element Constructors2/42/42/42/40/4
        Version Declaration2/22/22/22/24/4
        Misc Functions that depends entirely on schema validation.15/3715/374/374/370/4
        Cast42/4842/4847/4847/480/4
        op:numeric-equal0/20/22/22/22/4
        op:NOTATION-equal12/2212/2212/2212/220/4
        Constructor Functions for User Defined Functions1/101/1010/1010/102/4
        Schema Import2/312/3122/3122/310/4
        FOR Clause with TypeDeclaration1/11/11/11/14/4
    Schema Validation Feature
        Validate Expression22/2522/2510/2510/250/4
    Static Typing Feature
        Static Typing of Path Expressions
            Static Typing of Steps Expressions
                Static Typing of Axes Steps5/215/215/215/210/4
        Static Typing of FLWOR expressions22/2522/2524/2524/250/4
            Static Typing of 'where' clause
    Full Axis Feature
        ancestor Axis1/221/2222/2222/222/4
        ancestor-or-self Axis2/222/2222/2222/222/4
        following Axis1/211/2121/2121/212/4
        following-sibling Axis1/221/2222/2222/222/4
        preceding Axis2/212/2121/2121/212/4
        preceding-sibling Axis1/221/2222/2222/222/4
    Module Feature
        Module Import27/3227/3217/3217/320/4
        Module Declaration
    Trivial XML Embedding Feature1/41/41/41/40/4
Tests for the appendices.
    Tests for Appendix A-4 of the Query Specs.8/98/98/98/90/4
    Various User defined functions from annex "E" of the F and O specs.8/88/88/88/84/4
Use Cases
    Use Case "XMP": Experiences and Exemplars12/1212/1212/1212/124/4
    Use Case "TREE": Queries that preserve hierarchy6/66/66/66/64/4
    Use Case "SEQ" - Queries based on Sequence4/54/54/54/50/4
    Use Case "R" - Access to Relational Data18/1818/1818/1818/184/4
    Use Case "SGML": Standard Generalized Markup Language11/1111/1111/1111/114/4
    Use Case "STRING": String Search3/43/43/43/40/4
    Use Case "NS" - Queries Using Namespaces8/88/88/88/84/4
    Use Case "PARTS" - Recursive Parts Explosion0/10/10/10/10/4
Consistency in XQTS Catalog0/30/30/30/30/4