<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="XQUTSCatalog.xsl" ?>
<test-suite xmlns="http://www.w3.org/2005/02/query-test-update"
   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" CatalogDesignDate="2009-08-13"
   version="1.0.1 dev" SourceOffsetPath="./" ResultOffsetPath="ExpectedTestResults/"
   XQueryQueryOffsetPath="Queries/XQuery/" XQueryXQueryOffsetPath="Queries/XQueryX/"
   XQueryFileExtension=".xq" XQueryXFileExtension=".xqx"
   xsi:schemaLocation="http://www.w3.org/2005/02/query-test-update XQUTSCatalog.xsd">

   <test-suite-info>
      <title>XQuery Update Test Suite 1.0.0</title>
      <description> Test Suite for XQuery Update 1.0. See
         http://dev.w3.org/2007/xquery-update-10-test-suite/. </description>
   </test-suite-info>

   <citations>
      <citation-spec name="XQUPDATE">
         <description last-mod="2009-06-09">XQuery Update Facility 1.0</description>
         <spec-URI>http://www.w3.org/TR/xquery-update-10/</spec-URI>
      </citation-spec>
   </citations>
   <comparisons>
      <comparison name="XML">
         <description last-mod="2003-03-25">The XML InfoSets should be canonicalized and
            compared.</description>
      </comparison>
      <comparison name="Fragment">
         <description last-mod="2004-10-20"> A 'fragment' refers to an XML based instance which has
            multiple top-level elements and NO XML declaration. The comparator for this should
            simply wrap the entire fragment in a container element and perform XML comparison.
         </description>
      </comparison>
      <comparison name="Text">
         <description last-mod="2003-03-25"> Each line of non-whitespace text should match. New-line
            sequences may vary and should be neutralized. Due to issues with the XML serialization
            of certain characters (e.g. '&lt;'), it is not possible to simply compare the actual and
            expected results. Rather (as is the case with the 'Fragment' comparator) the test
            harness should convert the results into valid XML (by adding a container element) and
            perform comparison on the XML canonicalized versions of the results. </description>
      </comparison>
      <comparison name="Ignore">
         <description last-mod="2003-03-25"> Only the presence/absence of this file is significant,
            not its content. </description>
      </comparison>
      <comparison name="Inspect">
         <description last-mod="2003-03-25"> Automated comparison is not possible. the output should
            be inspected by a human. </description>
      </comparison>
   </comparisons>
   <roles>
      <role name="principal-data">
         <description last-mod="2003-03-25"> This is the source that is handed in to the processor
            as the initial input sequence, setting the "evaluation context" as described in XQuery
            chapter 2. </description>
      </role>
      <role name="supplemental-data">
         <description last-mod="2003-03-25"> These are sources that may be read by functions such as
            fn:document() as the query is evaluated. </description>
      </role>
      <role name="schema">
         <description last-mod="2003-03-25"> These are schema definitions that may be referenced by
            sources or in the query. </description>
      </role>
      <role name="dtd">
         <description last-mod="2003-03-25"> These are dtd definitions that may be referenced by
            sources or in the query. </description>
      </role>
      <role name="principal">
         <description last-mod="2003-03-25"> This is an output (either text or XML) that will
            contain the query results. If the processor invocation sequence accepts a filename for
            results, this name may be passed, possibly prefixed by a partial directory path to allow
            storage of the results in a separate directory tree. </description>
      </role>
      <role name="console-log">
         <description last-mod="2003-03-25"> This is an output (text file tagged .log) that will
            contain the captured "console" output for a command-line invocation, or equivalent
            messages from a harness. The main goal is to capture error messages that came from the
            processor. </description>
         <note> A test lab may choose to capture console output for every test case, in which case
            the presence of this element is a signal that the console log of this test contains
            messages that are significant to the pass/fail determination. </note>
      </role>
   </roles>
   <scenarios>
      <scenario name="standard">
         <description last-mod="2005-06-10"> A query this is expected to produce valid results.
            Principal input should always be specified, even if the query doesn't have any PathExpr.
         </description>
      </scenario>
      <scenario name="parse-error">
         <description last-mod="2005-06-10"> A query this is expected to raise a parsing/syntax
            error at query parse time. Principal input should always be specified, even if the query
            doesn't have any PathExpr. </description>
      </scenario>
      <scenario name="runtime-error">
         <description last-mod="2005-06-10"> A query this is expected to raise a runtime error at
            query parse time. Runtime errors in this case include those raised by static typing
            rules. Principal input should always be specified, even if the query doesn't have any
            PathExpr. </description>
      </scenario>
      <scenario name="trivial">
         <description last-mod="2006-03-29"> A query this is expected to produce valid results.
            Principal input should always be specified, even if the query doesn't have any PathExpr.
            The initial query returns an &lt;xqx:xquery&gt; element (Trivial Embedding of XQuery).
            This embedded query is then executed to produce the final result. </description>
      </scenario>
   </scenarios>
   <sources>
      <source ID="XQUTSCatalog" FileName="XQUTSCatalog.xml" Creator="XQuery Test Task Force"
         schema="XQUTSCatalogxsd">
         <description last-mod="2005-04-14">XQuery Test Suite Catalog</description>
      </source>
      <source ID="emptydoc" FileName="TestSources/emptydoc.xml" Creator="David Marston">
         <description last-mod="2003-03-25">Contains just a "doc" element, no
            comments/text/PIs.</description>
      </source>
      <source ID="airports" FileName="TestSources/airports.xml" Creator="spec-authors">
         <description last-mod="2006-05-08">Data for use cases.</description>
      </source>
      <source ID="soapMsg" FileName="TestSources/soapMsg.xml" Creator="spec-authors">
         <description last-mod="2006-05-08">Data for use cases.</description>
      </source>
      <source ID="archive" FileName="TestSources/archive.xml" Creator="spec-authors">
         <description last-mod="2006-05-08">Data for use cases.</description>
      </source>
      <source ID="copy1" FileName="TestSources/copy1.xml" Creator="spec-authors">
         <description last-mod="2006-05-08">Data for use cases.</description>
      </source>
      <source ID="copy2" FileName="TestSources/copy2.xml" Creator="spec-authors">
         <description last-mod="2006-05-08">Data for use cases.</description>
      </source>
      <source ID="grant" FileName="TestSources/grant.xml" Creator="spec-authors">
         <description last-mod="2006-05-08">Data for use cases.</description>
      </source>
      <source ID="log" FileName="TestSources/log.xml" Creator="spec-authors">
         <description last-mod="2006-05-08">Data for use cases.</description>
      </source>
      <source ID="part-list" FileName="TestSources/part-list.xml" Creator="spec-authors">
         <description last-mod="2006-05-08">Data for use cases.</description>
      </source>
      <source ID="part-tree" FileName="TestSources/part-tree.xml" Creator="spec-authors">
         <description last-mod="2006-05-08">Data for use cases.</description>
      </source>
      <source ID="items" FileName="TestSources/items.xml" Creator="XML Query WG">
         <description last-mod="2005-02-11">Data for the the XML Query RDB use cases</description>
      </source>
      <source ID="bids" FileName="TestSources/bids.xml" Creator="XML Query WG">
         <description last-mod="2005-02-11">Data for the the XML Query RDB use cases</description>
      </source>
      <source ID="users" FileName="TestSources/users.xml" Creator="XML Query WG">
         <description last-mod="2005-02-11">Data for the the XML Query RDB use cases</description>
      </source>
      <source ID="users2" FileName="TestSources/users2.xml" Creator="XML Query WG">
         <description last-mod="2005-02-11">Data for the the XML Query RDB use cases (Includes
            Anabel Lee)</description>
      </source>
      <source ID="employees" FileName="TestSources/employees.xml" Creator="XML Query Working Group">
         <description last-mod="2006-05-08">Data for nil use case</description>
      </source>
      <source ID="employeesNIST" FileName="TestSources/employeesNIST.xml" Creator="CarmeloMontanez">
         <description last-mod="2006-05-08">One of the main data files for the NIST
            tests</description>
      </source>
      <source ID="works-mod" FileName="TestSources/works-mod.xml" Creator="Carmelo Montanez">
         <description last-mod="2005-02-11">One of the main XML File used by NIST
            tests.</description>
      </source>
      <source ID="books" FileName="TestSources/books.xml" Creator="Michael Kay"
         schema="books-schema">
         <description last-mod="2008-01-03">A list of books (used for schema-aware
            testing)</description>
      </source>
      <source ID="books2" FileName="TestSources/books2.xml" Creator="Andrew Eisenberg"
         schema="books2-schema">
         <description last-mod="2008-12-02">Modification of books source document with a LANGUAGE
            element that is nil.</description>
      </source>
      <source ID="books3" FileName="TestSources/books3.xml" Creator="Andrew Eisenberg">
         <description last-mod="2008-12-02">books source document, but without an associated schema.</description>
      </source>
      <source ID="TopMany" FileName="TestSources/TopMany.xml" Creator="David Marston">
         <description last-mod="2003-03-25">Like TreeCompass, but with comments and PIs off the
            root. PI targets vary.</description>
         <note>All text nodes must have non-whitespace characters.</note>
      </source>
      <source ID="putOutput" FileName="TestSources/putoutput.xml" Creator="Andrew Eisenberg">
         <description last-mod="2008-11-05">Expected location of the result of fn:put
            operatons.</description>
         <note>This file does not exist by design.</note>
      </source>
      <source ID="putOutput2" FileName="TestSources/putoutput2.xml" Creator="Andrew Eisenberg">
         <description last-mod="2008-11-05">Expected location of the result of fn:put
            operatons.</description>
         <note>This file does not exist by design.</note>
      </source>
      <schema ID="books-schema" uri="http://ns.example.com/books" FileName="TestSources/books.xsd">
         <description last-mod="2008-01-03">Schema for books.xml</description>
      </schema>
      <schema ID="books2-schema" uri="http://ns.example.com/books2"
         FileName="TestSources/books2.xsd">
         <description last-mod="2008-12-02">Schema for books2.xml</description>
      </schema>
      <schema ID="XQUTSCatalogxsd" uri="http://www.w3.org/2005/02/query-test-update"
         FileName="XQUTSCatalog.xsd">
         <description last-mod="2005-04-14">Schema for Update Catalog</description>
      </schema>
   </sources>
   <implementation-defined-items>
      <implementation-defined-item spec="XQUPDATE" name="supportedRevalidationModes">
         <description last-mod="2008-11-05">The revalidation modes that are supported by this
            implementation.</description>
      </implementation-defined-item>
      <implementation-defined-item spec="XQUPDATE" name="defaultRevalidationMode">
         <description last-mod="2008-11-05">The default revalidation mode for this
            implementation.</description>
      </implementation-defined-item>
      <!--
      <implementation-defined-item spec="XQUPDATE" name="errorParentlessDelete">
         <description last-mod="2008-11-05">Whether the implementation raises dynamic error [err:XUDY0020] if a node is deleted that had no parent before execution of the query began.</description>
      </implementation-defined-item>
      -->
      <implementation-defined-item spec="XQUPDATE" name="externalFunctionXDMPUL">
         <description last-mod="2008-11-05">The mechanism (if any) by which an external function can
            return an XDM instance and/or a pending update list to the invoking query.</description>
      </implementation-defined-item>
      <implementation-defined-item spec="XQUPDATE" name="fnPutSemantics">
         <description last-mod="2008-11-05">The semantics of fn:put(), including the kinds of nodes
            accepted as operands by this function.</description>
      </implementation-defined-item>
   </implementation-defined-items>
   <features>
      <feature name="Minimal Conformance"/>
      <feature name="Update Facility Static Typing Feature"/>
   </features>
   <context-properties>
      <context-property context-type="static" name="Revalidation mode"/>
   </context-properties>
   <test-group name="Minimal Conformance">
      <GroupInfo>
         <title>Minimal Conformance</title>
         <description/>
      </GroupInfo>
      <test-group name="Extensions to the Prolog">
         <GroupInfo>
            <title>Extensions to the Prolog</title>
            <description/>
         </GroupInfo>
         <test-group name="Variable Declaration">
            <GroupInfo>
               <title>Variable Declaration</title>
               <description/>
            </GroupInfo>
            <test-case name="variable-declaration-01" FilePath="Prolog/VariableDeclaration/"
               scenario="runtime-error" Creator="Andrew Eisenberg">
               <description>Variable declaration with an updating expression rhs.</description>
               <spec-citation spec="XQUPDATE" section-number="2.2.2"
                  section-title="Variable Declaration" section-pointer="id-variable-declaration"/>
               <state time="0">
                  <query name="variable-declaration-01" date="2008-10-17"/>
                  <input-file role="principal-data" variable="employees">employees</input-file>
                  <expected-error>XUST0001</expected-error>
               </state>
            </test-case>
            <test-case name="variable-declaration-02" FilePath="Prolog/VariableDeclaration/"
               scenario="runtime-error" Creator="Andrew Eisenberg">
               <description>Variable declaration with an updating expression rhs.</description>
               <spec-citation spec="XQUPDATE" section-number="2.2.2"
                  section-title="Variable Declaration" section-pointer="id-variable-declaration"/>
               <state time="0">
                  <query name="variable-declaration-02" date="2008-10-17"/>
                  <input-file role="principal-data" variable="employees">employees</input-file>
                  <expected-error>XUST0001</expected-error>
               </state>
            </test-case>
         </test-group>
         <test-group name="Function Declaration">
            <GroupInfo>
               <title>Function Declaration</title>
               <description/>
            </GroupInfo>
            <test-case name="id-function-declaration-01" FilePath="FunctionDeclaration/"
               scenario="standard" Creator="Carmelo Montanez">
               <description>Evaluates an insert expression used with an updating function and
                  enclosed expression is also updating expression.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.1" section-title="Insert"
                  section-pointer="id-insert"/>
               <spec-citation spec="XQUPDATE" section-number="2.5.6"
                  section-title="Function Declaration" section-pointer="id-function-declaration"/>
               <state time="0">
                  <query name="id-function-declaration-01" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
               </state>
               <state time="1">
                  <query name="id-function-declaration-01-test" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="Fragment"
                     >id-function-declaration-01.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-function-declaration-02" FilePath="FunctionDeclaration/"
               scenario="runtime-error" Creator="Carmelo Montanez">
               <description>Evaluates an insert expression used with non updating/non external
                  function and enclosed expression is also updating expression.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.1" section-title="Insert"
                  section-pointer="id-insert"/>
               <spec-citation spec="XQUPDATE" section-number="2.5.6"
                  section-title="Function Declaration" section-pointer="id-function-declaration"/>
               <state time="0">
                  <query name="id-function-declaration-02" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context"
                     >employeesNIST</input-file>
                  <expected-error>XUST0001</expected-error>
               </state>
            </test-case>
            <test-case name="id-function-declaration-03" FilePath="FunctionDeclaration/"
               scenario="standard" Creator="Carmelo Montanez">
               <description>Evaluates an insert expression used with an updating/non external
                  function and enclosed expression is an empty sequence.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.1" section-title="Insert"
                  section-pointer="id-insert"/>
               <spec-citation spec="XQUPDATE" section-number="2.5.6"
                  section-title="Function Declaration" section-pointer="id-function-declaration"/>
               <state time="0">
                  <query name="id-function-declaration-03" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
               </state>
               <state time="1">
                  <query name="id-function-declaration-03-test" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="Fragment"
                     >id-function-declaration-03.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-function-declaration-04" FilePath="FunctionDeclaration/"
               scenario="runtime-error" Creator="Carmelo Montanez">
               <description>Evaluates an update expression used with an updating/non external
                  function and enclosed expression is a call to fn:error.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.1" section-title="Insert"
                  section-pointer="id-insert"/>
               <spec-citation spec="XQUPDATE" section-number="2.5.6"
                  section-title="Function Declaration" section-pointer="id-function-declaration"/>
               <state time="0">
                  <query name="id-function-declaration-04" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <expected-error>FOER0000</expected-error>
               </state>
            </test-case>
            <test-case name="id-function-declaration-05" FilePath="FunctionDeclaration/"
               scenario="runtime-error" Creator="Carmelo Montanez">
               <description>Evaluates a mathematical expression used with an updating/non external
                  function. Enclosed expression is a mathematical expression.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.1" section-title="Insert"
                  section-pointer="id-insert"/>
               <spec-citation spec="XQUPDATE" section-number="2.5.6"
                  section-title="Function Declaration" section-pointer="id-function-declaration"/>
               <state time="0">
                  <query name="id-function-declaration-05" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context"
                     >employeesNIST</input-file>
                  <expected-error>XUST0002</expected-error>
               </state>
            </test-case>
            <test-case name="id-function-declaration-06" FilePath="FunctionDeclaration/"
               scenario="standard" Creator="Carmelo Montanez">
               <description>Evaluates a delete expression used with an updating function and
                  enclosed expression is also updating (delete) expression.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.2" section-title="Delete"
                  section-pointer="id-delete"/>
               <spec-citation spec="XQUPDATE" section-number="2.5.6"
                  section-title="Function Declaration" section-pointer="id-function-declaration"/>
               <state time="0">
                  <query name="id-function-declaration-06" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
               </state>
               <state time="1">
                  <query name="id-function-declaration-06-test" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="Fragment"
                     >id-function-declaration-06.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-function-declaration-07" FilePath="FunctionDeclaration/"
               scenario="runtime-error" Creator="Carmelo Montanez">
               <description>Evaluates a delete expression used with non updating/non external
                  function and enclosed expression is an updating (delete)expression.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.2" section-title="Delete"
                  section-pointer="id-delete"/>
               <spec-citation spec="XQUPDATE" section-number="2.5.6"
                  section-title="Function Declaration" section-pointer="id-function-declaration"/>
               <state time="0">
                  <query name="id-function-declaration-07" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context"
                     >employeesNIST</input-file>
                  <expected-error>XUST0001</expected-error>
               </state>
            </test-case>
            <test-case name="id-function-declaration-08" FilePath="FunctionDeclaration/"
               scenario="standard" Creator="Carmelo Montanez">
               <description>Evaluates a replace expression used with an updating function and
                  enclosed expression is also updating (replace) expression.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.3" section-title="Replace"
                  section-pointer="id-replace"/>
               <spec-citation spec="XQUPDATE" section-number="2.5.6"
                  section-title="Function Declaration" section-pointer="id-function-declaration"/>
               <spec-citation spec="XQUPDATE" section-number="2.4.3.2"
                  section-title="Replacing the Value of a Node"
                  section-pointer="id-replacing-node-value"/>
               <state time="0">
                  <query name="id-function-declaration-08" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
               </state>
               <state time="1">
                  <query name="id-function-declaration-08-test" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="Fragment"
                     >id-function-declaration-08.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-function-declaration-09" FilePath="FunctionDeclaration/"
               scenario="runtime-error" Creator="Carmelo Montanez">
               <description>Evaluates a replace expression used with non updating/non external
                  function and enclosed expression is also updating
                  (replace)expression.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.3" section-title="Replace"
                  section-pointer="id-replace"/>
               <spec-citation spec="XQUPDATE" section-number="2.5.6"
                  section-title="Function Declaration" section-pointer="id-function-declaration"/>
               <spec-citation spec="XQUPDATE" section-number="2.4.3.2"
                  section-title="Replacing the Value of a Node"
                  section-pointer="id-replacing-node-value"/>
               <state time="0">
                  <query name="id-function-declaration-09" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context"
                     >employeesNIST</input-file>
                  <expected-error>XUST0001</expected-error>
               </state>
            </test-case>
            <test-case name="id-function-declaration-010" FilePath="FunctionDeclaration/"
               scenario="standard" Creator="Carmelo Montanez">
               <description>Evaluates a rename expression used with an updating function and
                  enclosed expression is also updating (rename) expression.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.4" section-title="Rename"
                  section-pointer="id-rename"/>
               <spec-citation spec="XQUPDATE" section-number="2.5.6"
                  section-title="Function Declaration" section-pointer="id-function-declaration"/>
               <state time="0">
                  <query name="id-function-declaration-010" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
               </state>
               <state time="1">
                  <query name="id-function-declaration-010-test" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="Fragment"
                     >id-function-declaration-010.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-function-declaration-011" FilePath="FunctionDeclaration/"
               scenario="runtime-error" Creator="Carmelo Montanez">
               <description>Evaluates a rename expression used with non updating/non external
                  function and enclosed expression is also updating (rename)
                  expression.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.4" section-title="Rename"
                  section-pointer="id-rename"/>
               <spec-citation spec="XQUPDATE" section-number="2.5.6"
                  section-title="Function Declaration" section-pointer="id-function-declaration"/>
               <state time="0">
                  <query name="id-function-declaration-011" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context"
                     >employeesNIST</input-file>
                  <expected-error>XUST0001</expected-error>
               </state>
            </test-case>
            <test-case name="id-function-declaration-012" FilePath="FunctionDeclaration/"
               scenario="runtime-error" Creator="Carmelo Montanez">
               <description>Evaluates a transform expression used with an updating function and
                  enclosed expression is also updating (transform) expression.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.5" section-title="Transform"
                  section-pointer="id-transform"/>
               <spec-citation spec="XQUPDATE" section-number="2.5.6"
                  section-title="Function Declaration" section-pointer="id-function-declaration"/>
               <state time="0">
                  <query name="id-function-declaration-012" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <expected-error>XUST0002</expected-error>
               </state>
            </test-case>
            <test-case name="id-function-declaration-013" FilePath="FunctionDeclaration/"
               scenario="standard" Creator="Carmelo Montanez">
               <description>Evaluates a transform expression used with non updating/non external
                  function and enclosed expression is non updating (transform)
                  expression.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.5" section-title="Transform"
                  section-pointer="id-transform"/>
               <spec-citation spec="XQUPDATE" section-number="2.5.6"
                  section-title="Function Declaration" section-pointer="id-function-declaration"/>
               <state time="0">
                  <query name="id-function-declaration-013" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context"
                     >employeesNIST</input-file>
                  <output-file role="principal" compare="Fragment"
                     >id-function-declaration-013.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-function-declaration-014" FilePath="FunctionDeclaration/"
               scenario="runtime-error" Creator="Carmelo Montanez">
               <description>Evaluation of a function declaration declared as updating and a return
                  type is specified.</description>
               <spec-citation spec="XQUPDATE" section-number="2.5.6"
                  section-title="Function Declaration" section-pointer="id-function-declaration"/>
               <state time="0">
                  <query name="id-function-declaration-014" date="2007-08-07"/>
                  <input-file role="principal-data" variable="input-context"
                     >employeesNIST</input-file>
                  <expected-error>XUST0028</expected-error>
                  <expected-error>XUST0002</expected-error>
               </state>
            </test-case>
            <test-case name="id-function-declaration-015" FilePath="FunctionDeclaration/"
               scenario="runtime-error" Creator="Michael Kay">
               <description>Updating function contains updating expression in a disallowed
                  place.</description>
               <spec-citation spec="XQUPDATE" section-number="2.5.6"
                  section-title="Function Declaration" section-pointer="id-function-declaration"/>
               <state time="0">
                  <query name="id-function-declaration-015" date="2009-05-30"/>
                  <input-file role="principal-data" variable="input-context"
                     >employeesNIST</input-file>
                  <expected-error>XUST0001</expected-error>
               </state>
            </test-case>
            <test-case name="id-function-declaration-016" FilePath="FunctionDeclaration/"
               scenario="runtime-error" Creator="Michael Kay">
               <description>Updating function returns a value on a non-executed
                  branch.</description>
               <spec-citation spec="XQUPDATE" section-number="2.5.6"
                  section-title="Function Declaration" section-pointer="id-function-declaration"/>
               <state time="0">
                  <query name="id-function-declaration-016" date="2009-05-30"/>
                  <input-file role="principal-data" variable="input-context"
                     >employeesNIST</input-file>
                  <expected-error>XUST0001</expected-error>
               </state>
            </test-case>
            <test-case name="id-function-declaration-017" FilePath="FunctionDeclaration/"
               scenario="standard" Creator="Michael Kay">
               <description>Recursive updating function.</description>
               <spec-citation spec="XQUPDATE" section-number="2.5.6"
                  section-title="Function Declaration" section-pointer="id-function-declaration"/>
               <state time="0">
                  <query name="id-function-declaration-017" date="2009-05-30"/>
                  <output-file role="principal" compare="Fragment"
                     >id-function-declaration-017.xml</output-file>
               </state>
            </test-case>
            <test-case name="function-declaration-01" FilePath="Prolog/FunctionDeclaration/"
               scenario="runtime-error" Creator="Andrew Eisenberg">
               <description>Function declaration, non-updating, with updating
                  expression.</description>
               <spec-citation spec="XQUPDATE" section-number="2.2.3"
                  section-title="Function Declaration" section-pointer="id-function-declaration"/>
               <state time="0">
                  <query name="function-declaration-01" date="2008-10-17"/>
                  <input-file role="principal-data" variable="employees">employees</input-file>
                  <expected-error>XUST0001</expected-error>
               </state>
            </test-case>
            <test-case name="function-declaration-02" FilePath="Prolog/FunctionDeclaration/"
               scenario="runtime-error" Creator="Andrew Eisenberg">
               <description>Function declaration, updating, with return type.</description>
               <spec-citation spec="XQUPDATE" section-number="2.2.3"
                  section-title="Function Declaration" section-pointer="id-function-declaration"/>
               <state time="0">
                  <query name="function-declaration-02" date="2008-10-17"/>
                  <input-file role="principal-data" variable="employees">employees</input-file>
                  <expected-error>XUST0028</expected-error>
               </state>
            </test-case>
            <test-case name="function-declaration-03" FilePath="Prolog/FunctionDeclaration/"
               scenario="runtime-error" Creator="Andrew Eisenberg">
               <description>Function declaration, updating, with simple expression.</description>
               <spec-citation spec="XQUPDATE" section-number="2.2.3"
                  section-title="Function Declaration" section-pointer="id-function-declaration"/>
               <state time="0">
                  <query name="function-declaration-03" date="2008-10-17"/>
                  <input-file role="principal-data" variable="employees">employees</input-file>
                  <expected-error>XUST0002</expected-error>
               </state>
            </test-case>
            <test-case name="function-declaration-04" FilePath="Prolog/FunctionDeclaration/"
               scenario="standard" Creator="Andrew Eisenberg">
               <description>Function declaration, updating, with vacuous expression.</description>
               <spec-citation spec="XQUPDATE" section-number="2.2.3"
                  section-title="Function Declaration" section-pointer="id-function-declaration"/>
               <state time="0">
                  <query name="function-declaration-04" date="2008-10-17"/>
                  <input-file role="principal-data" variable="employees">employees</input-file>
                  <output-file role="principal" compare="Text"
                     >function-declaration-04.txt</output-file>
               </state>
            </test-case>
         </test-group>
      </test-group>
      <test-group name="NewExpressions">
         <GroupInfo>
            <title>New Kinds of Expressions</title>
            <description/>
         </GroupInfo>
         <test-group name="InsertExpressions">
            <GroupInfo>
               <title>Insert Expressions</title>
               <description/>
            </GroupInfo>
            <test-case name="id-insert-expr-01" FilePath="InsertExpressions/" scenario="standard"
               Creator="Carmelo Montanez">
               <description>Evaluates a simple insert expression with "after" clause only. Inserts
                  an element.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.1" section-title="Insert"
                  section-pointer="id-insert"/>
               <state time="0">
                  <query name="id-insert-expr-01" date="2006-11-13"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
               </state>
               <state time="1">
                  <query name="id-insert-expr-01-test" date="2007-02-08"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="Fragment"
                     >id-insert-expr-01.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-insert-expr-02" FilePath="InsertExpressions/" scenario="standard"
               Creator="Carmelo Montanez">
               <description>Evaluates a simple insert expression with "after" clause only. Inserts
                  an element.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.1" section-title="Insert"
                  section-pointer="id-insert"/>
               <state time="0">
                  <query name="id-insert-expr-02" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
               </state>
               <state time="1">
                  <query name="id-insert-expr-02-test" date="2006-11-13"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="Fragment"
                     >id-insert-expr-02.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-insert-expr-03" FilePath="InsertExpressions/" scenario="standard"
               Creator="Carmelo Montanez">
               <description>Evaluates a simple insert expression with "as first" and "into" clauses.
                  Inserts an element.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.1" section-title="Insert"
                  section-pointer="id-insert"/>
               <state time="0">
                  <query name="id-insert-expr-03" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
               </state>
               <state time="1">
                  <query name="id-insert-expr-03-test" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="Fragment"
                     >id-insert-expr-03.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-insert-expr-04" FilePath="InsertExpressions/" scenario="standard"
               Creator="Carmelo Montanez">
               <description>Evaluates a simple insert expression with "as last" and "into" clauses.
                  Inserts an element.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.1" section-title="Insert"
                  section-pointer="id-insert"/>
               <state time="0">
                  <query name="id-insert-expr-04" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
               </state>
               <state time="1">
                  <query name="id-insert-expr-04-test" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="Fragment"
                     >id-insert-expr-04.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-insert-expr-05" FilePath="InsertExpressions/" scenario="standard"
               Creator="Carmelo Montanez">
               <description>Evaluates a simple insert expression with "into" clause only. Inserts an
                  element.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.1" section-title="Insert"
                  section-pointer="id-insert"/>
               <state time="0">
                  <query name="id-insert-expr-05" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
               </state>
               <state time="1">
                  <query name="id-insert-expr-05-test" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="Fragment"
                     >id-insert-expr-05.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-insert-expr-06" FilePath="InsertExpressions/" scenario="standard"
               Creator="Carmelo Montanez">
               <description>Evaluates a simple insert expression with "after" clause only. Inserts
                  an attribute.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.1" section-title="Insert"
                  section-pointer="id-insert"/>
               <state time="0">
                  <query name="id-insert-expr-06" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
               </state>
               <state time="1">
                  <query name="id-insert-expr-06-test" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="Fragment"
                     >id-insert-expr-06.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-insert-expr-07" FilePath="InsertExpressions/" scenario="standard"
               Creator="Carmelo Montanez">
               <description>Evaluates a simple insert expression with "before" clause only. Inserts
                  an attribute.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.1" section-title="Insert"
                  section-pointer="id-insert"/>
               <state time="0">
                  <query name="id-insert-expr-07" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
               </state>
               <state time="1">
                  <query name="id-insert-expr-07-test" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="Fragment"
                     >id-insert-expr-07.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-insert-expr-08" FilePath="InsertExpressions/" scenario="standard"
               Creator="Carmelo Montanez">
               <description>Evaluates a simple insert expression with "as first" and "into" clauses.
                  Inserts an attribute.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.1" section-title="Insert"
                  section-pointer="id-insert"/>
               <state time="0">
                  <query name="id-insert-expr-08" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
               </state>
               <state time="1">
                  <query name="id-insert-expr-08-test" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="Fragment"
                     >id-insert-expr-08.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-insert-expr-09" FilePath="InsertExpressions/" scenario="standard"
               Creator="Carmelo Montanez">
               <description>Evaluates a simple insert expression with "as last" and "into" clauses.
                  Inserts an attribute.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.1" section-title="Insert"
                  section-pointer="id-insert"/>
               <state time="0">
                  <query name="id-insert-expr-09" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
               </state>
               <state time="1">
                  <query name="id-insert-expr-09-test" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="Fragment"
                     >id-insert-expr-09.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-insert-expr-010" FilePath="InsertExpressions/" scenario="standard"
               Creator="Carmelo Montanez">
               <description>Evaluates a simple insert expression with "into" clause only. Inserts an
                  attribute.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.1" section-title="Insert"
                  section-pointer="id-insert"/>
               <state time="0">
                  <query name="id-insert-expr-010" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
               </state>
               <state time="1">
                  <query name="id-insert-expr-010-test" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="Fragment"
                     >id-insert-expr-010.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-insert-expr-011" FilePath="InsertExpressions/" scenario="standard"
               Creator="Carmelo Montanez">
               <description>Evaluates a simple insert expression with "after" clause only. Inserts a
                  comment.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.1" section-title="Insert"
                  section-pointer="id-insert"/>
               <state time="0">
                  <query name="id-insert-expr-011" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
               </state>
               <state time="1">
                  <query name="id-insert-expr-011-test" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="Fragment"
                     >id-insert-expr-011.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-insert-expr-012" FilePath="InsertExpressions/" scenario="standard"
               Creator="Carmelo Montanez">
               <description>Evaluates a simple insert expression with "before" clause only. Inserts
                  a comment.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.1" section-title="Insert"
                  section-pointer="id-insert"/>
               <state time="0">
                  <query name="id-insert-expr-012" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
               </state>
               <state time="1">
                  <query name="id-insert-expr-012-test" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="Fragment"
                     >id-insert-expr-012.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-insert-expr-013" FilePath="InsertExpressions/" scenario="standard"
               Creator="Carmelo Montanez">
               <description>Evaluates a simple insert expression with "as first" and "into" clauses.
                  Inserts a comment.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.1" section-title="Insert"
                  section-pointer="id-insert"/>
               <state time="0">
                  <query name="id-insert-expr-013" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
               </state>
               <state time="1">
                  <query name="id-insert-expr-013-test" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="Fragment"
                     >id-insert-expr-013.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-insert-expr-014" FilePath="InsertExpressions/" scenario="standard"
               Creator="Carmelo Montanez">
               <description>Evaluates a simple insert expression with "as first" and "into" clauses.
                  Inserts a comment.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.1" section-title="Insert"
                  section-pointer="id-insert"/>
               <state time="0">
                  <query name="id-insert-expr-014" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
               </state>
               <state time="1">
                  <query name="id-insert-expr-014-test" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="Fragment"
                     >id-insert-expr-014.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-insert-expr-015" FilePath="InsertExpressions/" scenario="standard"
               Creator="Carmelo Montanez">
               <description>Evaluates a simple insert expression with "into" clause only. Inserts a
                  comment.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.1" section-title="Insert"
                  section-pointer="id-insert"/>
               <state time="0">
                  <query name="id-insert-expr-015" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
               </state>
               <state time="1">
                  <query name="id-insert-expr-015-test" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="Fragment"
                     >id-insert-expr-015.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-insert-expr-016" FilePath="InsertExpressions/" scenario="standard"
               Creator="Carmelo Montanez">
               <description>Evaluates a simple insert expression with "before" clause only. Inserts
                  an element into a directly constructed element node.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.1" section-title="Insert"
                  section-pointer="id-insert"/>
               <state time="0">
                  <query name="id-insert-expr-016" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
               </state>
               <state time="1">
                  <query name="id-insert-expr-016-test" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="Fragment"
                     >id-insert-expr-016.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-insert-expr-017" FilePath="InsertExpressions/" scenario="standard"
               Creator="Carmelo Montanez">
               <description>Evaluates a simple insert expression with "after" clause only. Inserts
                  an element into a directly constructed element node.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.1" section-title="Insert"
                  section-pointer="id-insert"/>
               <state time="0">
                  <query name="id-insert-expr-017" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
               </state>
               <state time="1">
                  <query name="id-insert-expr-017-test" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="Fragment"
                     >id-insert-expr-017.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-insert-expr-018" FilePath="InsertExpressions/" scenario="standard"
               Creator="Carmelo Montanez">
               <description>Evaluates a simple insert expression with "as first" and "into" clauses.
                  Inserts an element into a directly constructed element node.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.1" section-title="Insert"
                  section-pointer="id-insert"/>
               <state time="0">
                  <query name="id-insert-expr-018" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
               </state>
               <state time="1">
                  <query name="id-insert-expr-018-test" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="Fragment"
                     >id-insert-expr-018.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-insert-expr-019" FilePath="InsertExpressions/" scenario="standard"
               Creator="Carmelo Montanez">
               <description>Evaluates a simple insert expression with "as last" and "into" clauses.
                  Inserts an element into a directly constructed element node.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.1" section-title="Insert"
                  section-pointer="id-insert"/>
               <state time="0">
                  <query name="id-insert-expr-019" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
               </state>
               <state time="1">
                  <query name="id-insert-expr-019-test" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="Fragment"
                     >id-insert-expr-019.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-insert-expr-020" FilePath="InsertExpressions/" scenario="standard"
               Creator="Carmelo Montanez">
               <description>Evaluates a simple insert expression with "into" clause only. Inserts an
                  element into a directly constructed element node.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.1" section-title="Insert"
                  section-pointer="id-insert"/>
               <state time="0">
                  <query name="id-insert-expr-020" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
               </state>
               <state time="1">
                  <query name="id-insert-expr-020-test" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="Fragment"
                     >id-insert-expr-020.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-insert-expr-021" FilePath="InsertExpressions/" scenario="standard"
               Creator="Carmelo Montanez">
               <description>Evaluates a simple insert expression with "after" only. Insert a
                  sequence of element nodes into a directly constructed element node.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.1" section-title="Insert"
                  section-pointer="id-insert"/>
               <state time="0">
                  <query name="id-insert-expr-021" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
               </state>
               <state time="1">
                  <query name="id-insert-expr-021-test" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="Fragment"
                     >id-insert-expr-021.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-insert-expr-022" FilePath="InsertExpressions/" scenario="standard"
               Creator="Carmelo Montanez">
               <description>Evaluation of simple insert expression that uses "into" clause only to
                  insert a sequence of element nodes into into an XML data source.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.1" section-title="Insert"
                  section-pointer="id-insert"/>
               <state time="0">
                  <query name="id-insert-expr-022" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
               </state>
               <state time="1">
                  <query name="id-insert-expr-022-test" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="Fragment"
                     >id-insert-expr-022.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-insert-expr-023" FilePath="InsertExpressions/"
               scenario="runtime-error" Creator="Carmelo Montanez">
               <description>Evaluates a simple insert expression where source expression is an
                  updating expression.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.1" section-title="Insert"
                  section-pointer="id-insert"/>
               <state time="0">
                  <query name="id-insert-expr-023" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context"
                     >employeesNIST</input-file>
                  <expected-error>XUST0001</expected-error>
               </state>
            </test-case>
            <test-case name="id-insert-expr-024" FilePath="InsertExpressions/"
               scenario="runtime-error" Creator="Carmelo Montanez">
               <description>Evaluates a simple insert expression where target expression is an
                  updating expression.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.1" section-title="Insert"
                  section-pointer="id-insert"/>
               <state time="0">
                  <query name="id-insert-expr-024" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context"
                     >employeesNIST</input-file>
                  <expected-error>XUST0001</expected-error>
               </state>
            </test-case>
            <test-case name="id-insert-expr-025" FilePath="InsertExpressions/"
               scenario="runtime-error" Creator="Carmelo Montanez">
               <description>Evaluates a simple insert expression where both source and target
                  expressions are updating expressions.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.1" section-title="Insert"
                  section-pointer="id-insert"/>
               <state time="0">
                  <query name="id-insert-expr-025" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context"
                     >employeesNIST</input-file>
                  <expected-error>XUST0001</expected-error>
               </state>
            </test-case>
            <test-case name="id-insert-expr-026" FilePath="InsertExpressions/"
               scenario="runtime-error" Creator="Carmelo Montanez">
               <description>Evaluates an insert expression where the source sequence have an
                  attribute node following an element node.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.1" section-title="Insert"
                  section-pointer="id-insert"/>
               <state time="0">
                  <query name="id-insert-expr-026" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context"
                     >employeesNIST</input-file>
                  <expected-error>XUTY0004</expected-error>
               </state>
            </test-case>
            <test-case name="id-insert-expr-027" FilePath="InsertExpressions/"
               scenario="runtime-error" Creator="Carmelo Montanez">
               <description>Evaluates an insert expression where the target expression is a sequence
                  of nodes.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.1" section-title="Insert"
                  section-pointer="id-insert"/>
               <state time="0">
                  <query name="id-insert-expr-027" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context"
                     >employeesNIST</input-file>
                  <expected-error>XUTY0005</expected-error>
               </state>
            </test-case>
            <test-case name="id-insert-expr-028" FilePath="InsertExpressions/"
               scenario="runtime-error" Creator="Carmelo Montanez">
               <description>Evaluates an insert expression where the target expression is the empty
                  sequence.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.1" section-title="Insert"
                  section-pointer="id-insert"/>
               <state time="0">
                  <query name="id-insert-expr-028" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context"
                     >employeesNIST</input-file>
                  <expected-error>XUDY0027</expected-error>
               </state>
            </test-case>
            <test-case name="id-insert-expr-029" FilePath="InsertExpressions/"
               scenario="runtime-error" Creator="Carmelo Montanez">
               <description>Evaluates an insert expression where the target expression evaluates to
                  a number.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.1" section-title="Insert"
                  section-pointer="id-insert"/>
               <state time="0">
                  <query name="id-insert-expr-029" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context"
                     >employeesNIST</input-file>
                  <expected-error>XUTY0005</expected-error>
               </state>
            </test-case>
            <test-case name="id-insert-expr-030" FilePath="InsertExpressions/" scenario="standard"
               Creator="Carmelo Montanez">
               <description>Evaluates an insert expression where the source expression evaluates to
                  a number.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.1" section-title="Insert"
                  section-pointer="id-insert"/>
               <state time="0">
                  <query name="id-insert-expr-030" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context"
                     >employeesNIST</input-file>
               </state>
               <state time="1">
                  <query name="id-insert-expr-030-test" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context"
                     >employeesNIST</input-file>
                  <output-file role="principal" compare="Fragment"
                     >id-insert-expr-030.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-insert-expr-031" FilePath="InsertExpressions/" scenario="standard"
               Creator="Carmelo Montanez">
               <description>Evaluates an insert expression where the target expression is a complex
                  expression.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.1" section-title="Insert"
                  section-pointer="id-insert"/>
               <state time="0">
                  <query name="id-insert-expr-031" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
               </state>
               <state time="1">
                  <query name="id-insert-expr-031-test" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="Fragment"
                     >id-insert-expr-031.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-insert-expr-032" FilePath="InsertExpressions/" scenario="standard"
               Creator="Carmelo Montanez">
               <description>Evaluation of insert expression where a sequence of attributes is
                  inserted as first.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.1" section-title="Insert"
                  section-pointer="id-insert"/>
               <state time="0">
                  <query name="id-insert-expr-032" date="2007-07-26"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
               </state>
               <state time="1">
                  <query name="id-insert-expr-032-test" date="2007-07-26"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="Fragment"
                     >id-insert-expr-032.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-insert-expr-033" FilePath="InsertExpressions/" scenario="standard"
               Creator="Carmelo Montanez">
               <description>Evaluation of insert expression where a sequence of attributes is
                  inserted as last.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.1" section-title="Insert"
                  section-pointer="id-insert"/>
               <state time="0">
                  <query name="id-insert-expr-033" date="2007-07-26"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
               </state>
               <state time="1">
                  <query name="id-insert-expr-033-test" date="2007-07-26"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="Fragment"
                     >id-insert-expr-033.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-insert-expr-034" FilePath="InsertExpressions/" scenario="standard"
               Creator="Carmelo Montanez">
               <description>Evaluation of insert expression where a sequence of nodes is inserted as
                  first. Make sure order is preserved.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.1" section-title="Insert"
                  section-pointer="id-insert"/>
               <state time="0">
                  <query name="id-insert-expr-034" date="2007-07-26"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
               </state>
               <state time="1">
                  <query name="id-insert-expr-034-test" date="2007-07-26"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="Fragment"
                     >id-insert-expr-034.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-insert-expr-035" FilePath="InsertExpressions/" scenario="standard"
               Creator="Carmelo Montanez">
               <description>Evaluation of insert expression where a sequence of nodes is inserted as
                  last. Make sure order is preserved.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.1" section-title="Insert"
                  section-pointer="id-insert"/>
               <state time="0">
                  <query name="id-insert-expr-035" date="2007-07-26"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
               </state>
               <state time="1">
                  <query name="id-insert-expr-035-test" date="2007-07-26"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="Fragment"
                     >id-insert-expr-035.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-insert-expr-036" FilePath="InsertExpressions/" scenario="standard"
               Creator="Carmelo Montanez">
               <description>Evaluation of insert expression where a sequence of nodes is inserted
                  using "before" clause. Make sure order is preserved.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.1" section-title="Insert"
                  section-pointer="id-insert"/>
               <state time="0">
                  <query name="id-insert-expr-036" date="2007-07-26"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
               </state>
               <state time="1">
                  <query name="id-insert-expr-036-test" date="2007-07-26"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="Fragment"
                     >id-insert-expr-036.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-insert-expr-037" FilePath="InsertExpressions/" scenario="standard"
               Creator="Carmelo Montanez">
               <description>Evaluation of insert expression where a sequence of nodes is inserted
                  using "after" clause. Make sure order is preserved.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.1" section-title="Insert"
                  section-pointer="id-insert"/>
               <state time="0">
                  <query name="id-insert-expr-037" date="2007-07-26"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
               </state>
               <state time="1">
                  <query name="id-insert-expr-037-test" date="2007-07-26"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="Fragment"
                     >id-insert-expr-037.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-insert-expr-038" FilePath="InsertExpressions/" scenario="standard"
               Creator="Carmelo Montanez">
               <description>Evaluation of insert expression where a sequence of Comment nodes are
                  inserted using "before" clause. Make sure order is preserved.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.1" section-title="Insert"
                  section-pointer="id-insert"/>
               <state time="0">
                  <query name="id-insert-expr-038" date="2007-07-26"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
               </state>
               <state time="1">
                  <query name="id-insert-expr-038-test" date="2007-07-26"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="Fragment"
                     >id-insert-expr-038.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-insert-expr-039" FilePath="InsertExpressions/" scenario="standard"
               Creator="Carmelo Montanez">
               <description>Evaluation of insert expression where a sequence of Comment nodes are
                  inserted using "after" clause. Make sure order is preserved.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.1" section-title="Insert"
                  section-pointer="id-insert"/>
               <state time="0">
                  <query name="id-insert-expr-039" date="2007-07-26"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
               </state>
               <state time="1">
                  <query name="id-insert-expr-039-test" date="2007-07-26"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="Fragment"
                     >id-insert-expr-039.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-insert-expr-040" FilePath="InsertExpressions/" scenario="standard"
               Creator="Carmelo Montanez">
               <description>Evaluation of insert expression where a two groups of element nodes is
                  inserted as using "after" clause. Make sure order is mantained within a
                  groups.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.1" section-title="Insert"
                  section-pointer="id-insert"/>
               <state time="0">
                  <query name="id-insert-expr-040" date="2007-07-26"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
               </state>
               <state time="1">
                  <query name="id-insert-expr-040-test" date="2007-07-26"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="Fragment"
                     >id-insert-expr-040.xml</output-file>
                  <output-file role="principal" compare="Fragment"
                     >id-insert-expr-040-alt.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-insert-expr-041" FilePath="InsertExpressions/" scenario="standard"
               Creator="Carmelo Montanez">
               <description>Evaluation of insert expression where a two groups of element nodes is
                  inserted as using "before" clause. Make sure order is mantained within a
                  groups.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.1" section-title="Insert"
                  section-pointer="id-insert"/>
               <state time="0">
                  <query name="id-insert-expr-041" date="2007-07-26"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
               </state>
               <state time="1">
                  <query name="id-insert-expr-041-test" date="2007-07-26"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="Fragment"
                     >id-insert-expr-041.xml</output-file>
                  <output-file role="principal" compare="Fragment"
                     >id-insert-expr-041-alt.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-insert-expr-042" FilePath="InsertExpressions/" scenario="standard"
               Creator="Carmelo Montanez">
               <description>Evaluation of insert expression where two groups of element nodes are
                  inserted as using "before" and "after" clauses respectively. Make sure order is
                  mantained within groups.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.1" section-title="Insert"
                  section-pointer="id-insert"/>
               <state time="0">
                  <query name="id-insert-expr-042" date="2007-07-27"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
               </state>
               <state time="1">
                  <query name="id-insert-expr-042-test" date="2007-07-27"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="Fragment"
                     >id-insert-expr-042.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-insert-expr-043" FilePath="InsertExpressions/" scenario="standard"
               Creator="Carmelo Montanez">
               <description>Evaluation of insert expression where two groups of element nodes are
                  inserted as using "after" and "before" clauses respectively. Make sure order is
                  mantained within groups.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.1" section-title="Insert"
                  section-pointer="id-insert"/>
               <state time="0">
                  <query name="id-insert-expr-043" date="2007-07-27"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
               </state>
               <state time="1">
                  <query name="id-insert-expr-043-test" date="2007-07-27"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="Fragment"
                     >id-insert-expr-043.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-insert-expr-044" FilePath="InsertExpressions/" scenario="standard"
               Creator="Carmelo Montanez">
               <description>Evaluation of insert expression, where the source expression is a
                  transform expression.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.1" section-title="Insert"
                  section-pointer="id-insert"/>
               <state time="0">
                  <query name="id-insert-expr-044" date="2007-08-07"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
               </state>
               <state time="1">
                  <query name="id-insert-expr-044-test" date="2007-08-07"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="Fragment"
                     >id-insert-expr-044.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-insert-expr-045" FilePath="InsertExpressions/"
               scenario="runtime-error" Creator="Carmelo Montanez">
               <description>Evaluation of insert expression, where the before clause is used and the
                  result is a document node.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.1" section-title="Insert"
                  section-pointer="id-insert"/>
               <state time="0">
                  <query name="id-insert-expr-045" date="2007-08-07"/>
                  <input-file role="principal-data" variable="input-context"
                     >employeesNIST</input-file>
                  <expected-error>XUTY0006</expected-error>
               </state>
            </test-case>
            <test-case name="id-insert-expr-046" FilePath="InsertExpressions/"
               scenario="runtime-error" Creator="Carmelo Montanez">
               <description>Evaluation of insert expression, where the after clause is used and the
                  result is a document node.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.1" section-title="Insert"
                  section-pointer="id-insert"/>
               <state time="0">
                  <query name="id-insert-expr-046" date="2007-08-07"/>
                  <input-file role="principal-data" variable="input-context"
                     >employeesNIST</input-file>
                  <expected-error>XUTY0006</expected-error>
               </state>
            </test-case>
            <test-case name="id-insert-expr-047" FilePath="InsertExpressions/" scenario="standard"
               Creator="Carmelo Montanez">
               <description>Evaluation of insert expression, where the target is a comment node and
                  usage of after clause.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.1" section-title="Insert"
                  section-pointer="id-insert"/>
               <state time="0">
                  <query name="id-insert-expr-047" date="2007-08-07"/>
                  <input-file role="principal-data" variable="input-context"
                     >employeesNIST</input-file>
               </state>
               <state time="1">
                  <query name="id-insert-expr-047-test" date="2007-09-26"/>
                  <input-file role="principal-data" variable="input-context"
                     >employeesNIST</input-file>
                  <output-file role="principal" compare="Fragment"
                     >id-insert-expr-047.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-insert-expr-048" FilePath="InsertExpressions/" scenario="standard"
               Creator="Carmelo Montanez">
               <description>Evaluation of insert expression, where the target is a comment node and
                  usage of before clause.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.1" section-title="Insert"
                  section-pointer="id-insert"/>
               <state time="0">
                  <query name="id-insert-expr-048" date="2007-08-07"/>
                  <input-file role="principal-data" variable="input-context"
                     >employeesNIST</input-file>
               </state>
               <state time="1">
                  <query name="id-insert-expr-048-test" date="2007-09-26"/>
                  <input-file role="principal-data" variable="input-context"
                     >employeesNIST</input-file>
                  <output-file role="principal" compare="Fragment"
                     >id-insert-expr-048.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-insert-expr-049" FilePath="InsertExpressions/" scenario="standard"
               Creator="Carmelo Montanez">
               <description>Evaluation of insert expression, where two nodes are inserted into the
                  same node using the "as first" clause.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.1" section-title="Insert"
                  section-pointer="id-insert"/>
               <state time="0">
                  <query name="id-insert-expr-049" date="2007-08-07"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
               </state>
               <state time="1">
                  <query name="id-insert-expr-049-test" date="2007-08-07"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="Fragment"
                     >id-insert-expr-049.xml</output-file>
                  <output-file role="principal" compare="Fragment"
                     >id-insert-expr-049-alt.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-insert-expr-050" FilePath="InsertExpressions/" scenario="standard"
               Creator="Carmelo Montanez">
               <description>Evaluation of insert expression, where two nodes are inserted into the
                  same node using the "as last" clause.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.1" section-title="Insert"
                  section-pointer="id-insert"/>
               <state time="0">
                  <query name="id-insert-expr-050" date="2007-08-07"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
               </state>
               <state time="1">
                  <query name="id-insert-expr-050-test" date="2007-08-07"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="Fragment"
                     >id-insert-expr-050.xml</output-file>
                  <output-file role="principal" compare="Fragment"
                     >id-insert-expr-050-alt.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-insert-expr-051" FilePath="InsertExpressions/" scenario="standard"
               Creator="Andrew Eisenberg">
               <description>Same as id-insert-expr-01, but using keyword "nodes".</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.1" section-title="Insert"
                  section-pointer="id-insert"/>
               <state time="0">
                  <query name="id-insert-expr-051" date="2008-10-17"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
               </state>
               <state time="1">
                  <query name="id-insert-expr-051-test" date="2008-10-17"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="Fragment"
                     >id-insert-expr-051.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-insert-expr-052" FilePath="InsertExpressions/" scenario="standard"
               Creator="Andrew Eisenberg">
               <description>Insert into respects as first, as last, before, and after.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.1" section-title="Insert"
                  section-pointer="id-insert"/>
               <state time="0">
                  <query name="id-insert-expr-052" date="2008-10-17"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
               </state>
               <state time="1">
                  <query name="id-insert-expr-052-test" date="2008-10-17"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="XML">id-insert-expr-052a.xml</output-file>
                  <output-file role="principal" compare="XML">id-insert-expr-052b.xml</output-file>
                  <output-file role="principal" compare="XML">id-insert-expr-052c.xml</output-file>
                  <output-file role="principal" compare="XML">id-insert-expr-052d.xml</output-file>
                  <output-file role="principal" compare="XML">id-insert-expr-052e.xml</output-file>
                  <output-file role="principal" compare="XML">id-insert-expr-052f.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-insert-expr-053" FilePath="InsertExpressions/" scenario="standard"
               Creator="Andrew Eisenberg">
               <description>Insert empty sequences into, as first, as last, before, and
                  after.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.1" section-title="Insert"
                  section-pointer="id-insert"/>
               <state time="0">
                  <query name="id-insert-expr-053" date="2008-10-17"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
               </state>
               <state time="1">
                  <query name="id-insert-expr-053-test" date="2008-10-17"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="XML">id-insert-expr-053.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-insert-expr-054" FilePath="InsertExpressions/"
               scenario="runtime-error" Creator="Andrew Eisenberg">
               <description>Insert an element into a comment.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.1" section-title="Insert"
                  section-pointer="id-insert"/>
               <state time="0">
                  <query name="id-insert-expr-054" date="2008-10-17"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <expected-error>XUTY0005</expected-error>
               </state>
            </test-case>
            <test-case name="id-insert-expr-055" FilePath="InsertExpressions/"
               scenario="runtime-error" Creator="Andrew Eisenberg">
               <description>Insert an element into a text node.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.1" section-title="Insert"
                  section-pointer="id-insert"/>
               <state time="0">
                  <query name="id-insert-expr-055" date="2008-10-17"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <expected-error>XUTY0005</expected-error>
               </state>
            </test-case>
            <test-case name="id-insert-expr-056" FilePath="InsertExpressions/"
               scenario="runtime-error" Creator="Andrew Eisenberg">
               <description>Insert an element into a PI.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.1" section-title="Insert"
                  section-pointer="id-insert"/>
               <state time="0">
                  <query name="id-insert-expr-056" date="2008-10-17"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <expected-error>XUTY0005</expected-error>
               </state>
            </test-case>
            <test-case name="id-insert-expr-057" FilePath="InsertExpressions/"
               scenario="runtime-error" Creator="Andrew Eisenberg">
               <description>Insert text node into a text node.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.1" section-title="Insert"
                  section-pointer="id-insert"/>
               <state time="0">
                  <query name="id-insert-expr-057" date="2008-10-17"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <expected-error>XUTY0005</expected-error>
               </state>
            </test-case>
            <test-case name="id-insert-expr-058" FilePath="InsertExpressions/"
               scenario="runtime-error" Creator="Andrew Eisenberg">
               <description>Insert an element before an attribute.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.1" section-title="Insert"
                  section-pointer="id-insert"/>
               <state time="0">
                  <query name="id-insert-expr-058" date="2008-10-17"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <expected-error>XUTY0006</expected-error>
               </state>
            </test-case>
            <test-case name="id-insert-expr-059" FilePath="InsertExpressions/"
               scenario="runtime-error" Creator="Andrew Eisenberg">
               <description>Insert an element after an attribute.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.1" section-title="Insert"
                  section-pointer="id-insert"/>
               <state time="0">
                  <query name="id-insert-expr-059" date="2008-10-17"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <expected-error>XUTY0006</expected-error>
               </state>
            </test-case>
            <test-case name="id-insert-expr-060" FilePath="InsertExpressions/"
               scenario="runtime-error" Creator="Andrew Eisenberg">
               <description>Insert an attribute before an attribute.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.1" section-title="Insert"
                  section-pointer="id-insert"/>
               <state time="0">
                  <query name="id-insert-expr-060" date="2008-10-17"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <expected-error>XUTY0006</expected-error>
               </state>
            </test-case>
            <test-case name="id-insert-expr-061" FilePath="InsertExpressions/"
               scenario="runtime-error" Creator="Andrew Eisenberg">
               <description>Insert an attribute after an attribute.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.1" section-title="Insert"
                  section-pointer="id-insert"/>
               <state time="0">
                  <query name="id-insert-expr-061" date="2008-10-17"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <expected-error>XUTY0006</expected-error>
               </state>
            </test-case>
            <test-case name="id-insert-expr-062" FilePath="InsertExpressions/"
               scenario="runtime-error" Creator="Andrew Eisenberg">
               <description>Insert an element before an element without a parent.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.1" section-title="Insert"
                  section-pointer="id-insert"/>
               <state time="0">
                  <query name="id-insert-expr-062" date="2008-10-17"/>
                  <input-file role="principal-data" variable="input-context">emptydoc</input-file>
                  <expected-error>XUDY0029</expected-error>
               </state>
            </test-case>
            <test-case name="id-insert-expr-063" FilePath="InsertExpressions/"
               scenario="runtime-error" Creator="Andrew Eisenberg">
               <description>Insert an element after an element without a parent.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.1" section-title="Insert"
                  section-pointer="id-insert"/>
               <state time="0">
                  <query name="id-insert-expr-063" date="2008-10-17"/>
                  <input-file role="principal-data" variable="input-context">emptydoc</input-file>
                  <expected-error>XUDY0029</expected-error>
               </state>
            </test-case>
            <test-case name="id-insert-expr-064" FilePath="InsertExpressions/"
               scenario="runtime-error" Creator="Andrew Eisenberg">
               <description>Insert an attribute into a comment.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.1" section-title="Insert"
                  section-pointer="id-insert"/>
               <state time="0">
                  <query name="id-insert-expr-064" date="2008-10-17"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <expected-error>XUTY0005</expected-error>
                  <expected-error>XUTY0022</expected-error>
               </state>
            </test-case>
            <test-case name="id-insert-expr-065" FilePath="InsertExpressions/"
               scenario="runtime-error" Creator="Andrew Eisenberg">
               <description>Insert an attribute into a text node.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.1" section-title="Insert"
                  section-pointer="id-insert"/>
               <state time="0">
                  <query name="id-insert-expr-065" date="2008-10-17"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <expected-error>XUTY0005</expected-error>
                  <expected-error>XUTY0022</expected-error>
               </state>
            </test-case>
            <test-case name="id-insert-expr-066" FilePath="InsertExpressions/"
               scenario="runtime-error" Creator="Andrew Eisenberg">
               <description>Insert an attribute into a PI.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.1" section-title="Insert"
                  section-pointer="id-insert"/>
               <state time="0">
                  <query name="id-insert-expr-066" date="2008-10-17"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <expected-error>XUTY0005</expected-error>
                  <expected-error>XUTY0022</expected-error>
               </state>
            </test-case>
            <test-case name="id-insert-expr-067" FilePath="InsertExpressions/"
               scenario="runtime-error" Creator="Andrew Eisenberg">
               <description>Insert an attribute into a document.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.1" section-title="Insert"
                  section-pointer="id-insert"/>
               <state time="0">
                  <query name="id-insert-expr-067" date="2008-10-17"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <expected-error>XUTY0022</expected-error>
               </state>
            </test-case>
            <test-case name="id-insert-expr-068" FilePath="InsertExpressions/"
               scenario="runtime-error" Creator="Andrew Eisenberg">
               <description>Insert an attribute into attribute.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.1" section-title="Insert"
                  section-pointer="id-insert"/>
               <state time="0">
                  <query name="id-insert-expr-068" date="2008-10-17"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <expected-error>XUTY0005</expected-error>
                  <expected-error>XUTY0022</expected-error>
               </state>
            </test-case>
            <test-case name="id-insert-expr-069" FilePath="InsertExpressions/"
               scenario="runtime-error" Creator="Andrew Eisenberg">
               <description>Insert an attribute before an element without a parent.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.1" section-title="Insert"
                  section-pointer="id-insert"/>
               <state time="0">
                  <query name="id-insert-expr-069" date="2008-10-18"/>
                  <input-file role="principal-data" variable="input-context">emptydoc</input-file>
                  <expected-error>XUDY0029</expected-error>
                  <expected-error>XUDY0030</expected-error>
               </state>
            </test-case>
            <test-case name="id-insert-expr-070" FilePath="InsertExpressions/"
               scenario="runtime-error" Creator="Andrew Eisenberg">
               <description>Insert an attribute after an element without a parent.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.1" section-title="Insert"
                  section-pointer="id-insert"/>
               <state time="0">
                  <query name="id-insert-expr-070" date="2008-10-18"/>
                  <input-file role="principal-data" variable="input-context">emptydoc</input-file>
                  <expected-error>XUDY0029</expected-error>
                  <expected-error>XUDY0030</expected-error>
               </state>
            </test-case>
            <test-case name="id-insert-expr-071" FilePath="InsertExpressions/"
               scenario="runtime-error" Creator="Andrew Eisenberg">
               <description>Insert an attribute before an text node without a parent.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.1" section-title="Insert"
                  section-pointer="id-insert"/>
               <state time="0">
                  <query name="id-insert-expr-071" date="2008-10-18"/>
                  <input-file role="principal-data" variable="input-context">emptydoc</input-file>
                  <expected-error>XUDY0029</expected-error>
                  <expected-error>XUDY0030</expected-error>
               </state>
            </test-case>
            <test-case name="id-insert-expr-072" FilePath="InsertExpressions/"
               scenario="runtime-error" Creator="Andrew Eisenberg">
               <description>Insert an attribute after an text node without a parent.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.1" section-title="Insert"
                  section-pointer="id-insert"/>
               <state time="0">
                  <query name="id-insert-expr-072" date="2008-10-18"/>
                  <input-file role="principal-data" variable="input-context">emptydoc</input-file>
                  <expected-error>XUDY0029</expected-error>
                  <expected-error>XUDY0030</expected-error>
               </state>
            </test-case>
            <test-case name="id-insert-expr-073" FilePath="InsertExpressions/"
               scenario="runtime-error" Creator="Andrew Eisenberg">
               <description>Insert an attribute before a comment without a parent.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.1" section-title="Insert"
                  section-pointer="id-insert"/>
               <state time="0">
                  <query name="id-insert-expr-073" date="2008-10-18"/>
                  <input-file role="principal-data" variable="input-context">emptydoc</input-file>
                  <expected-error>XUDY0029</expected-error>
                  <expected-error>XUDY0030</expected-error>
               </state>
            </test-case>
            <test-case name="id-insert-expr-074" FilePath="InsertExpressions/"
               scenario="runtime-error" Creator="Andrew Eisenberg">
               <description>Insert an attribute after a comment without a parent.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.1" section-title="Insert"
                  section-pointer="id-insert"/>
               <state time="0">
                  <query name="id-insert-expr-074" date="2008-10-18"/>
                  <input-file role="principal-data" variable="input-context">emptydoc</input-file>
                  <expected-error>XUDY0029</expected-error>
                  <expected-error>XUDY0030</expected-error>
               </state>
            </test-case>
            <test-case name="id-insert-expr-075" FilePath="InsertExpressions/"
               scenario="runtime-error" Creator="Andrew Eisenberg">
               <description>Insert an attribute before a PI without a parent.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.1" section-title="Insert"
                  section-pointer="id-insert"/>
               <state time="0">
                  <query name="id-insert-expr-075" date="2008-10-18"/>
                  <input-file role="principal-data" variable="input-context">emptydoc</input-file>
                  <expected-error>XUDY0029</expected-error>
                  <expected-error>XUDY0030</expected-error>
               </state>
            </test-case>
            <test-case name="id-insert-expr-076" FilePath="InsertExpressions/"
               scenario="runtime-error" Creator="Andrew Eisenberg">
               <description>Insert an attribute after a PI without a parent.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.1" section-title="Insert"
                  section-pointer="id-insert"/>
               <state time="0">
                  <query name="id-insert-expr-076" date="2008-10-18"/>
                  <input-file role="principal-data" variable="input-context">emptydoc</input-file>
                  <expected-error>XUDY0029</expected-error>
                  <expected-error>XUDY0030</expected-error>
               </state>
            </test-case>
            <test-case name="id-insert-expr-077" FilePath="InsertExpressions/" scenario="standard"
               Creator="Andrew Eisenberg">
               <description>Insert text nodes as first, as last, before, and after.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.1" section-title="Insert"
                  section-pointer="id-insert"/>
               <state time="0">
                  <query name="id-insert-expr-077" date="2008-10-18"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
               </state>
               <state time="1">
                  <query name="id-insert-expr-077-test" date="2008-10-18"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="XML">id-insert-expr-077.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-insert-expr-078" FilePath="InsertExpressions/" scenario="standard"
               Creator="Andrew Eisenberg">
               <description>Insert PI as first, as last, before, and after.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.1" section-title="Insert"
                  section-pointer="id-insert"/>
               <state time="0">
                  <query name="id-insert-expr-078" date="2008-10-18"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
               </state>
               <state time="1">
                  <query name="id-insert-expr-078-test" date="2008-10-18"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="XML">id-insert-expr-078.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-insert-expr-079" FilePath="InsertExpressions/" scenario="standard"
               Creator="Andrew Eisenberg">
               <description>Insert a document as first.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.1" section-title="Insert"
                  section-pointer="id-insert"/>
               <state time="0">
                  <query name="id-insert-expr-079" date="2008-10-18"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
               </state>
               <state time="1">
                  <query name="id-insert-expr-079-test" date="2008-10-18"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="XML">id-insert-expr-079.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-insert-expr-080" FilePath="InsertExpressions/" scenario="standard"
               Creator="Andrew Eisenberg">
               <description>Insert a mixed sequence as first, as last, before, and
                  after.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.1" section-title="Insert"
                  section-pointer="id-insert"/>
               <state time="0">
                  <query name="id-insert-expr-080" date="2008-10-18"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
               </state>
               <state time="1">
                  <query name="id-insert-expr-080-test" date="2008-10-18"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="XML">id-insert-expr-080.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-insert-expr-081" FilePath="InsertExpressions/" scenario="standard"
               Creator="Andrew Eisenberg">
               <description>Check namepsace propogation when inserting an element.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.1" section-title="Insert"
                  section-pointer="id-insert"/>
               <state time="0">
                  <query name="id-insert-expr-081" date="2008-12-18"/>
                  <input-file role="principal-data" variable="input-context">emptydoc</input-file>
                  <output-file role="principal" compare="Text">id-insert-expr-081a.txt</output-file>
               </state>
            </test-case>
            <test-case name="id-insert-expr-082" FilePath="InsertExpressions/" scenario="standard"
               Creator="Andrew Eisenberg">
               <description>Check namepsace propogation when inserting an element.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.1" section-title="Insert"
                  section-pointer="id-insert"/>
               <state time="0">
                  <query name="id-insert-expr-082" date="2008-12-18"/>
                  <input-file role="principal-data" variable="input-context">emptydoc</input-file>
                  <output-file role="principal" compare="Text">id-insert-expr-082a.txt</output-file>
               </state>
            </test-case>
            <test-case name="id-insert-expr-083" FilePath="InsertExpressions/" scenario="standard"
               Creator="Andrew Eisenberg">
               <description>Check namepsace propogation when inserting an element.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.1" section-title="Insert"
                  section-pointer="id-insert"/>
               <state time="0">
                  <query name="id-insert-expr-083" date="2008-12-18"/>
                  <input-file role="principal-data" variable="input-context">emptydoc</input-file>
                  <output-file role="principal" compare="Text">id-insert-expr-083a.txt</output-file>
               </state>
            </test-case>
            <test-case name="id-insert-expr-084" FilePath="InsertExpressions/" scenario="standard"
               Creator="Andrew Eisenberg">
               <description>Check namepsace propogation when inserting an element.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.1" section-title="Insert"
                  section-pointer="id-insert"/>
               <state time="0">
                  <query name="id-insert-expr-084" date="2008-12-18"/>
                  <input-file role="principal-data" variable="input-context">emptydoc</input-file>
                  <output-file role="principal" compare="Text">id-insert-expr-084a.txt</output-file>
               </state>
            </test-case>
            <test-case name="id-insert-expr-085" FilePath="InsertExpressions/" scenario="standard"
               Creator="Andrew Eisenberg">
               <description>Check namepsace propogation when inserting an element.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.1" section-title="Insert"
                  section-pointer="id-insert"/>
               <state time="0">
                  <query name="id-insert-expr-085" date="2008-12-18"/>
                  <input-file role="principal-data" variable="input-context">emptydoc</input-file>
                  <output-file role="principal" compare="Text">id-insert-expr-085a.txt</output-file>
               </state>
            </test-case>
            <test-case name="id-insert-expr-086" FilePath="InsertExpressions/" scenario="standard"
               Creator="Andrew Eisenberg">
               <description>Check namepsace propogation when inserting an attribute.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.1" section-title="Insert"
                  section-pointer="id-insert"/>
               <state time="0">
                  <query name="id-insert-expr-086" date="2008-12-18"/>
                  <input-file role="principal-data" variable="input-context">emptydoc</input-file>
                  <output-file role="principal" compare="Text">id-insert-expr-086a.txt</output-file>
               </state>
            </test-case>
            <test-case name="id-insert-expr-081-no-inherit" FilePath="InsertExpressions/"
               scenario="standard" Creator="Josh Spiegel">
               <description>Check namepsace propogation when inserting an element.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.1" section-title="Insert"
                  section-pointer="id-insert"/>
               <state time="0">
                  <query name="id-insert-expr-081-no-inherit" date="2010-04-02"/>
                  <input-file role="principal-data" variable="input-context">emptydoc</input-file>
                  <output-file role="principal" compare="Text"
                     >id-insert-expr-081-no-inherit.txt</output-file>
               </state>
            </test-case>
            <test-case name="id-insert-expr-082-no-inherit" FilePath="InsertExpressions/"
               scenario="standard" Creator="Josh Spiegel">
               <description>Check namepsace propogation when inserting an element.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.1" section-title="Insert"
                  section-pointer="id-insert"/>
               <state time="0">
                  <query name="id-insert-expr-082-no-inherit" date="2010-04-02"/>
                  <input-file role="principal-data" variable="input-context">emptydoc</input-file>
                  <output-file role="principal" compare="Text"
                     >id-insert-expr-082-no-inherit.txt</output-file>
               </state>
            </test-case>
            <test-case name="id-insert-expr-083-no-inherit" FilePath="InsertExpressions/"
               scenario="standard" Creator="Josh Spiegel">
               <description>Check namepsace propogation when inserting an element.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.1" section-title="Insert"
                  section-pointer="id-insert"/>
               <state time="0">
                  <query name="id-insert-expr-083-no-inherit" date="2010-04-02"/>
                  <input-file role="principal-data" variable="input-context">emptydoc</input-file>
                  <output-file role="principal" compare="Text"
                     >id-insert-expr-083-no-inherit.txt</output-file>
               </state>
            </test-case>
            <test-case name="id-insert-expr-084-no-inherit" FilePath="InsertExpressions/"
               scenario="standard" Creator="Josh Spiegel">
               <description>Check namepsace propogation when inserting an element.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.1" section-title="Insert"
                  section-pointer="id-insert"/>
               <state time="0">
                  <query name="id-insert-expr-084-no-inherit" date="2010-04-02"/>
                  <input-file role="principal-data" variable="input-context">emptydoc</input-file>
                  <output-file role="principal" compare="Text"
                     >id-insert-expr-084-no-inherit.txt</output-file>
               </state>
            </test-case>
            <test-case name="id-insert-expr-085-no-inherit" FilePath="InsertExpressions/"
               scenario="standard" Creator="Josh Spiegel">
               <description>Check namepsace propogation when inserting an element.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.1" section-title="Insert"
                  section-pointer="id-insert"/>
               <state time="0">
                  <query name="id-insert-expr-085-no-inherit" date="2010-04-02"/>
                  <input-file role="principal-data" variable="input-context">emptydoc</input-file>
                  <output-file role="principal" compare="Text"
                     >id-insert-expr-085-no-inherit.txt</output-file>
               </state>
            </test-case>
            <test-case name="id-insert-expr-086-no-inherit" FilePath="InsertExpressions/"
               scenario="standard" Creator="Josh Spiegel">
               <description>Check namepsace propogation when inserting an attribute.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.1" section-title="Insert"
                  section-pointer="id-insert"/>
               <state time="0">
                  <query name="id-insert-expr-086-no-inherit" date="2010-04-02"/>
                  <input-file role="principal-data" variable="input-context">emptydoc</input-file>
                  <output-file role="principal" compare="Text"
                     >id-insert-expr-086-no-inherit.txt</output-file>
               </state>
            </test-case>
            <test-case name="id-insert-expr-087" FilePath="InsertExpressions/"
               scenario="runtime-error" Creator="Andrew Eisenberg">
               <description>Insert an attribute before an element that does not have an element
                  parent.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.1" section-title="Insert"
                  section-pointer="id-insert"/>
               <state time="0">
                  <query name="id-insert-expr-087" date="2009-02-06"/>
                  <input-file role="principal-data" variable="input-context">TopMany</input-file>
                  <expected-error>XUDY0030</expected-error>
               </state>
            </test-case>
            <test-case name="id-insert-expr-088" FilePath="InsertExpressions/"
               scenario="runtime-error" Creator="Andrew Eisenberg">
               <description>Insert an attribute after an element that does not have an element
                  parent.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.1" section-title="Insert"
                  section-pointer="id-insert"/>
               <state time="0">
                  <query name="id-insert-expr-088" date="2009-02-06"/>
                  <input-file role="principal-data" variable="input-context">TopMany</input-file>
                  <expected-error>XUDY0030</expected-error>
               </state>
            </test-case>
            <test-case name="id-insert-expr-089" FilePath="InsertExpressions/"
               scenario="runtime-error" Creator="Andrew Eisenberg">
               <description>Insert an attribute before a comment that does not have an element
                  parent.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.1" section-title="Insert"
                  section-pointer="id-insert"/>
               <state time="0">
                  <query name="id-insert-expr-089" date="2009-02-06"/>
                  <input-file role="principal-data" variable="input-context">TopMany</input-file>
                  <expected-error>XUDY0030</expected-error>
               </state>
            </test-case>
            <test-case name="id-insert-expr-090" FilePath="InsertExpressions/"
               scenario="runtime-error" Creator="Andrew Eisenberg">
               <description>Insert an attribute after a comment that does not have an element
                  parent.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.1" section-title="Insert"
                  section-pointer="id-insert"/>
               <state time="0">
                  <query name="id-insert-expr-090" date="2009-02-06"/>
                  <input-file role="principal-data" variable="input-context">TopMany</input-file>
                  <expected-error>XUDY0030</expected-error>
               </state>
            </test-case>
            <test-case name="id-insert-expr-091" FilePath="InsertExpressions/"
               scenario="runtime-error" Creator="Andrew Eisenberg">
               <description>Insert an attribute before a PI that does not have an element
                  parent.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.1" section-title="Insert"
                  section-pointer="id-insert"/>
               <state time="0">
                  <query name="id-insert-expr-091" date="2009-02-06"/>
                  <input-file role="principal-data" variable="input-context">TopMany</input-file>
                  <expected-error>XUDY0030</expected-error>
               </state>
            </test-case>
            <test-case name="id-insert-expr-092" FilePath="InsertExpressions/"
               scenario="runtime-error" Creator="Andrew Eisenberg">
               <description>Insert an attribute after a PI that does not have an element
                  parent.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.1" section-title="Insert"
                  section-pointer="id-insert"/>
               <state time="0">
                  <query name="id-insert-expr-092" date="2009-02-06"/>
                  <input-file role="principal-data" variable="input-context">TopMany</input-file>
                  <expected-error>XUDY0030</expected-error>
               </state>
            </test-case>
            <test-case name="id-insert-expr-093" FilePath="InsertExpressions/" scenario="standard"
               Creator="Michael Kay">
               <description>Insert an attribute that requires creation of a new namespace
                  node.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.1" section-title="Insert"
                  section-pointer="id-insert"/>
               <state time="0">
                  <query name="id-insert-expr-093" date="2009-12-07"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
               </state>
               <state time="1">
                  <query name="id-insert-expr-093-test" date="2009-12-07"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="XML">id-insert-expr-093.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-insert-expr-094" FilePath="InsertExpressions/" scenario="standard"
               Creator="Andrew Eisenberg">
               <description>Insert an attribute that doesn't conflict with an element in the default namespace.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.1" section-title="Insert"
                  section-pointer="id-insert"/>
               <state time="0">
                  <query name="id-insert-expr-094" date="2010-06-11"/>
                  <input-file role="principal-data" variable="input-context">books3</input-file>
               </state>
               <state time="1">
                  <query name="id-insert-expr-094-test" date="2010-06-11"/>
                  <input-file role="principal-data" variable="input-context">books3</input-file>
                  <output-file role="principal" compare="XML">id-insert-expr-094.xml</output-file>
               </state>
            </test-case>
         </test-group>
         <test-group name="DeleteExpressions">
            <GroupInfo>
               <title>Delete Expressions</title>
               <description/>
            </GroupInfo>
            <test-case name="id-delete-expr-01" FilePath="DeleteExpressions/" scenario="standard"
               Creator="Carmelo Montanez">
               <description>A delete expression that removes an element from a directly constructed
                  element node.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.2" section-title="Delete"
                  section-pointer="id-delete"/>
               <state time="0">
                  <query name="id-delete-expr-01" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
               </state>
               <state time="1">
                  <query name="id-delete-expr-01-test" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="Fragment"
                     >id-delete-expr-01.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-delete-expr-02" FilePath="DeleteExpressions/" scenario="standard"
               Creator="Carmelo Montanez">
               <description>A delete expression that removes an attribute from a directly
                  constructed element node.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.2" section-title="Delete"
                  section-pointer="id-delete"/>
               <state time="0">
                  <query name="id-delete-expr-02" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
               </state>
               <state time="1">
                  <query name="id-delete-expr-02-test" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="Fragment"
                     >id-delete-expr-02.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-delete-expr-03" FilePath="DeleteExpressions/" scenario="standard"
               Creator="Carmelo Montanez">
               <description>A delete expression that removes a comment node from a directly
                  constructed element node.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.2" section-title="Delete"
                  section-pointer="id-delete"/>
               <state time="0">
                  <query name="id-delete-expr-03" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
               </state>
               <state time="1">
                  <query name="id-delete-expr-03-test" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="Fragment"
                     >id-delete-expr-03.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-delete-expr-04" FilePath="DeleteExpressions/" scenario="standard"
               Creator="Carmelo Montanez">
               <description>A delete expression that removes multiple element nodes from an XML
                  File.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.2" section-title="Delete"
                  section-pointer="id-delete"/>
               <state time="0">
                  <query name="id-delete-expr-04" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
               </state>
               <state time="1">
                  <query name="id-delete-expr-04-test" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="Fragment"
                     >id-delete-expr-04.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-delete-expr-05" FilePath="DeleteExpressions/" scenario="standard"
               Creator="Carmelo Montanez">
               <description>A delete expression that removes a sequence of element nodes from
                  directly constructed element nodes.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.2" section-title="Delete"
                  section-pointer="id-delete"/>
               <state time="0">
                  <query name="id-delete-expr-05" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
               </state>
               <state time="1">
                  <query name="id-delete-expr-05-test" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="Text">id-delete-expr-05.txt</output-file>
               </state>
            </test-case>
            <test-case name="id-delete-expr-06" FilePath="DeleteExpressions/"
               scenario="runtime-error" Creator="Carmelo Montanez">
               <description>A delete expression where the target expression is an updating
                  expression.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.2" section-title="Delete"
                  section-pointer="id-delete"/>
               <state time="0">
                  <query name="id-delete-expr-06" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context"
                     >employeesNIST</input-file>
                  <expected-error>XUST0001</expected-error>
               </state>
            </test-case>
            <test-case name="id-delete-expr-07" FilePath="DeleteExpressions/"
               scenario="runtime-error" Creator="Carmelo Montanez">
               <description>A delete expression where the target expression is a mathematical
                  expression.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.2" section-title="Delete"
                  section-pointer="id-delete"/>
               <state time="0">
                  <query name="id-delete-expr-07" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context"
                     >employeesNIST</input-file>
                  <expected-error>XUTY0007</expected-error>
               </state>
            </test-case>
            <test-case name="id-delete-expr-08" FilePath="DeleteExpressions/" scenario="standard"
               Creator="Carmelo Montanez">
               <description>A delete expression where the target expression results in a sequence of
                  zero nodes.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.2" section-title="Delete"
                  section-pointer="id-delete"/>
               <state time="0">
                  <query name="id-delete-expr-08" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
               </state>
               <state time="1">
                  <query name="id-delete-expr-08-test" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="Fragment"
                     >id-delete-expr-08.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-delete-expr-09" FilePath="DeleteExpressions/" scenario="standard"
               Creator="Carmelo Montanez">
               <description>A delete expression where the target expression is set to
                  "()".</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.2" section-title="Delete"
                  section-pointer="id-delete"/>
               <state time="0">
                  <query name="id-delete-expr-09" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
               </state>
               <state time="1">
                  <query name="id-delete-expr-09-test" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="Text">id-delete-expr-09.txt</output-file>
               </state>
            </test-case>
            <test-case name="id-delete-expr-010" FilePath="DeleteExpressions/" scenario="standard"
               Creator="Carmelo Montanez">
               <description>A delete expression where the target expression is a complex
                  one.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.2" section-title="Delete"
                  section-pointer="id-delete"/>
               <state time="0">
                  <query name="id-delete-expr-010" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
               </state>
               <state time="1">
                  <query name="id-delete-expr-010-test" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="Fragment"
                     >id-delete-expr-010.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-delete-expr-011" FilePath="DeleteExpressions/"
               scenario="runtime-error" Creator="Carmelo Montanez">
               <description>A delete expression where the target expression results in a sequence of
                  integers.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.2" section-title="Delete"
                  section-pointer="id-delete"/>
               <state time="0">
                  <query name="id-delete-expr-011" date="2007-08-02"/>
                  <input-file role="principal-data" variable="input-context"
                     >employeesNIST</input-file>
                  <expected-error>XUTY0007</expected-error>
               </state>
            </test-case>
            <test-case name="id-delete-expr-012" FilePath="DeleteExpressions/" scenario="standard"
               Creator="Carmelo Montanez">
               <description>A delete expression with multiple delete states.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.2" section-title="Delete"
                  section-pointer="id-delete"/>
               <state time="0">
                  <query name="id-delete-expr-012" date="2007-08-31"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
               </state>
               <state time="1">
                  <query name="id-delete-expr-012-test" date="2007-08-31"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="Text">id-delete-expr-012.txt</output-file>
               </state>
               <state time="2">
                  <query name="id-delete-expr-012-1" date="2007-08-31"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
               </state>
               <state time="3">
                  <query name="id-delete-expr-012-1-test" date="2007-08-31"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="Text"
                     >id-delete-expr-012-1.txt</output-file>
               </state>
            </test-case>
            <test-case name="id-delete-expr-013" FilePath="DeleteExpressions/" scenario="standard"
               Creator="Andrew Eisenberg">
               <description>Delete an element node and its parent.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.2" section-title="Delete"
                  section-pointer="id-delete"/>
               <state time="0">
                  <query name="id-delete-expr-013" date="2008-10-20"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
               </state>
               <state time="1">
                  <query name="id-delete-expr-013-test" date="2008-10-20"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="XML">id-delete-expr-013.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-delete-expr-014" FilePath="DeleteExpressions/" scenario="standard"
               Creator="Andrew Eisenberg">
               <description>Delete an element node parent and then the element node.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.2" section-title="Delete"
                  section-pointer="id-delete"/>
               <state time="0">
                  <query name="id-delete-expr-014" date="2008-10-20"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
               </state>
               <state time="1">
                  <query name="id-delete-expr-014-test" date="2008-10-20"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="XML">id-delete-expr-014.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-delete-expr-015" FilePath="DeleteExpressions/" scenario="standard"
               Creator="Andrew Eisenberg">
               <description>Delete an element node multiple times.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.2" section-title="Delete"
                  section-pointer="id-delete"/>
               <state time="0">
                  <query name="id-delete-expr-015" date="2008-10-20"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
               </state>
               <state time="1">
                  <query name="id-delete-expr-015-test" date="2008-10-20"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="XML">id-delete-expr-015.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-delete-expr-016" FilePath="DeleteExpressions/" scenario="standard"
               Creator="Andrew Eisenberg">
               <description>Delete an element node multiple times.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.2" section-title="Delete"
                  section-pointer="id-delete"/>
               <state time="0">
                  <query name="id-delete-expr-016" date="2008-10-20"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
               </state>
               <state time="1">
                  <query name="id-delete-expr-015-test" date="2008-10-20"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="XML">id-delete-expr-016.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-delete-expr-017" FilePath="DeleteExpressions/" scenario="standard"
               Creator="Andrew Eisenberg">
               <description>Delete an element node, making sure that it is remains visible in this
                  snapshot.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.2" section-title="Delete"
                  section-pointer="id-delete"/>
               <state time="0">
                  <query name="id-delete-expr-017" date="2008-10-20"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
               </state>
               <state time="1">
                  <query name="id-delete-expr-017-test" date="2008-10-20"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="XML">id-delete-expr-017.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-delete-expr-018" FilePath="DeleteExpressions/" scenario="standard"
               Creator="Andrew Eisenberg">
               <description>Delete an element node, making sure that it is remains visible in this
                  snapshot.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.2" section-title="Delete"
                  section-pointer="id-delete"/>
               <state time="0">
                  <query name="id-delete-expr-018" date="2008-10-20"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
               </state>
               <state time="1">
                  <query name="id-delete-expr-018-test" date="2008-10-20"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="XML">id-delete-expr-018.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-delete-expr-019" FilePath="DeleteExpressions/" scenario="standard"
               Creator="Andrew Eisenberg">
               <description>Delete an attribute node multiple times.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.2" section-title="Delete"
                  section-pointer="id-delete"/>
               <spec-citation spec="XQUPDATE" section-number="3.1.7" section-title="upd:delete"
                  section-pointer="id-upd-delete"/>
               <state time="0">
                  <query name="id-delete-expr-019" date="2008-11-12"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
               </state>
               <state time="1">
                  <query name="id-delete-expr-019-test" date="2008-11-12"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="XML">id-delete-expr-019.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-delete-expr-020" FilePath="DeleteExpressions/" scenario="standard"
               Creator="Andrew Eisenberg">
               <description>Delete a text node multiple times.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.2" section-title="Delete"
                  section-pointer="id-delete"/>
               <spec-citation spec="XQUPDATE" section-number="3.1.7" section-title="upd:delete"
                  section-pointer="id-upd-delete"/>
               <state time="0">
                  <query name="id-delete-expr-020" date="2008-11-12"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
               </state>
               <state time="1">
                  <query name="id-delete-expr-020-test" date="2008-11-12"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="XML">id-delete-expr-020.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-delete-expr-021" FilePath="DeleteExpressions/" scenario="standard"
               Creator="Andrew Eisenberg">
               <description>Delete a comment node multiple times.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.2" section-title="Delete"
                  section-pointer="id-delete"/>
               <spec-citation spec="XQUPDATE" section-number="3.1.7" section-title="upd:delete"
                  section-pointer="id-upd-delete"/>
               <state time="0">
                  <query name="id-delete-expr-021" date="2008-11-12"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
               </state>
               <state time="1">
                  <query name="id-delete-expr-021-test" date="2008-11-12"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="XML">id-delete-expr-021.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-delete-expr-022" FilePath="DeleteExpressions/" scenario="standard"
               Creator="Andrew Eisenberg">
               <description>Delete a PI node multiple times.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.2" section-title="Delete"
                  section-pointer="id-delete"/>
               <spec-citation spec="XQUPDATE" section-number="3.1.7" section-title="upd:delete"
                  section-pointer="id-upd-delete"/>
               <state time="0">
                  <query name="id-delete-expr-022" date="2008-11-12"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
               </state>
               <state time="1">
                  <query name="id-delete-expr-022-test" date="2008-11-12"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="XML">id-delete-expr-022.xml</output-file>
               </state>
            </test-case>
            <test-case name="complex-deletes-q3" FilePath="DeleteExpressions/" scenario="standard"
               Creator="John Snelson">
               <description>Delete all PIs with target "a-pi".</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.2" section-title="Delete"
                  section-pointer="id-delete"/>
               <state time="0">
                  <query name="complex-deletes-q3" date="2007-10-23"/>
                  <input-file role="principal-data" variable="input-context">TopMany</input-file>
               </state>
               <state time="1">
                  <query name="complex-deletes-q3-test" date="2007-10-23"/>
                  <input-file role="principal-data" variable="input-context">TopMany</input-file>
                  <output-file role="principal" compare="Fragment"
                     >complex-deletes-q3.xml</output-file>
               </state>
               <state time="2">
                  <query name="complex-deletes-q3-test2" date="2007-10-23"/>
                  <input-file role="principal-data" variable="input-context">TopMany</input-file>
                  <output-file role="principal" compare="Fragment"
                     >complex-deletes-q3-2.xml</output-file>
               </state>
            </test-case>
            <test-case name="complex-deletes-q4" FilePath="DeleteExpressions/" scenario="standard"
               Creator="John Snelson">
               <description>Delete last text node child of document element.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.2" section-title="Delete"
                  section-pointer="id-delete"/>
               <state time="0">
                  <query name="complex-deletes-q4" date="2007-10-23"/>
                  <input-file role="principal-data" variable="input-context">TopMany</input-file>
               </state>
               <state time="1">
                  <query name="complex-deletes-q4-test" date="2007-10-23"/>
                  <input-file role="principal-data" variable="input-context">TopMany</input-file>
                  <output-file role="principal" compare="Fragment"
                     >complex-deletes-q4.xml</output-file>
               </state>
               <state time="2">
                  <query name="complex-deletes-q4-test2" date="2007-10-23"/>
                  <input-file role="principal-data" variable="input-context">TopMany</input-file>
                  <output-file role="principal" compare="Fragment"
                     >complex-deletes-q4-2.xml</output-file>
               </state>
            </test-case>
            <test-case name="complex-deletes-q5" FilePath="DeleteExpressions/" scenario="standard"
               Creator="John Snelson">
               <description>Delete all text node children of element "south".</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.2" section-title="Delete"
                  section-pointer="id-delete"/>
               <state time="0">
                  <query name="complex-deletes-q5" date="2007-10-23"/>
                  <input-file role="principal-data" variable="input-context">TopMany</input-file>
               </state>
               <state time="1">
                  <query name="complex-deletes-q5-test" date="2007-10-23"/>
                  <input-file role="principal-data" variable="input-context">TopMany</input-file>
                  <output-file role="principal" compare="Fragment"
                     >complex-deletes-q5.xml</output-file>
               </state>
               <state time="2">
                  <query name="complex-deletes-q5-test2" date="2007-10-23"/>
                  <input-file role="principal-data" variable="input-context">TopMany</input-file>
                  <output-file role="principal" compare="Fragment"
                     >complex-deletes-q5-2.xml</output-file>
               </state>
            </test-case>
            <test-case name="complex-deletes-q10" FilePath="DeleteExpressions/" scenario="standard"
               Creator="John Snelson">
               <description>Delete the element called "far-east".</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.2" section-title="Delete"
                  section-pointer="id-delete"/>
               <state time="0">
                  <query name="complex-deletes-q10" date="2007-10-23"/>
                  <input-file role="principal-data" variable="input-context">TopMany</input-file>
               </state>
               <state time="1">
                  <query name="complex-deletes-q10-test" date="2007-10-23"/>
                  <input-file role="principal-data" variable="input-context">TopMany</input-file>
                  <output-file role="principal" compare="Fragment"
                     >complex-deletes-q10.xml</output-file>
               </state>
               <state time="2">
                  <query name="complex-deletes-q10-test2" date="2007-10-23"/>
                  <input-file role="principal-data" variable="input-context">TopMany</input-file>
                  <output-file role="principal" compare="Fragment"
                     >complex-deletes-q10-2.xml</output-file>
               </state>
            </test-case>
            <test-case name="complex-deletes-q11" FilePath="DeleteExpressions/" scenario="standard"
               Creator="John Snelson">
               <description>Delete all attributes called "mark".</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.2" section-title="Delete"
                  section-pointer="id-delete"/>
               <state time="0">
                  <query name="complex-deletes-q11" date="2007-10-23"/>
                  <input-file role="principal-data" variable="input-context">TopMany</input-file>
               </state>
               <state time="1">
                  <query name="complex-deletes-q11-test" date="2007-10-23"/>
                  <input-file role="principal-data" variable="input-context">TopMany</input-file>
                  <output-file role="principal" compare="Fragment"
                     >complex-deletes-q11.xml</output-file>
               </state>
               <state time="2">
                  <query name="complex-deletes-q11-test2" date="2007-10-23"/>
                  <input-file role="principal-data" variable="input-context">TopMany</input-file>
                  <output-file role="principal" compare="Fragment"
                     >complex-deletes-q11-2.xml</output-file>
               </state>
            </test-case>
            <test-case name="complex-deletes-q12" FilePath="DeleteExpressions/" scenario="standard"
               Creator="John Snelson">
               <description>Delete all attributes on the "west" element.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.2" section-title="Delete"
                  section-pointer="id-delete"/>
               <state time="0">
                  <query name="complex-deletes-q12" date="2007-10-23"/>
                  <input-file role="principal-data" variable="input-context">TopMany</input-file>
               </state>
               <state time="1">
                  <query name="complex-deletes-q12-test" date="2007-10-23"/>
                  <input-file role="principal-data" variable="input-context">TopMany</input-file>
                  <output-file role="principal" compare="Fragment"
                     >complex-deletes-q12.xml</output-file>
               </state>
               <state time="2">
                  <query name="complex-deletes-q12-test2" date="2007-10-23"/>
                  <input-file role="principal-data" variable="input-context">TopMany</input-file>
                  <output-file role="principal" compare="Fragment"
                     >complex-deletes-q12-2.xml</output-file>
               </state>
            </test-case>
            <test-case name="complex-deletes-q13" FilePath="DeleteExpressions/" scenario="standard"
               Creator="John Snelson">
               <description>Delete the attributes names "west-attr-2", "center-attr-2", and
                  "south-attr-2".</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.2" section-title="Delete"
                  section-pointer="id-delete"/>
               <state time="0">
                  <query name="complex-deletes-q13" date="2007-10-23"/>
                  <input-file role="principal-data" variable="input-context">TopMany</input-file>
               </state>
               <state time="1">
                  <query name="complex-deletes-q13-test" date="2007-10-23"/>
                  <input-file role="principal-data" variable="input-context">TopMany</input-file>
                  <output-file role="principal" compare="Fragment"
                     >complex-deletes-q13.xml</output-file>
               </state>
               <state time="2">
                  <query name="complex-deletes-q13-test2" date="2007-10-23"/>
                  <input-file role="principal-data" variable="input-context">TopMany</input-file>
                  <output-file role="principal" compare="Fragment"
                     >complex-deletes-q13-2.xml</output-file>
               </state>
            </test-case>
            <test-case name="complex-deletes-q14" FilePath="DeleteExpressions/" scenario="standard"
               Creator="John Snelson">
               <description>Delete the document node.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.2" section-title="Delete"
                  section-pointer="id-delete"/>
               <state time="0">
                  <query name="complex-deletes-q14" date="2007-10-23"/>
                  <input-file role="principal-data" variable="input-context">TopMany</input-file>
                  <output-file role="principal" compare="Fragment"
                     >complex-deletes-q14.xml</output-file>
                  <!--
                  <expected-error>XUDY0020</expected-error>
                  -->
               </state>
               <state time="1">
                  <query name="complex-deletes-q14-test" date="2007-10-23"/>
                  <input-file role="principal-data" variable="input-context">TopMany</input-file>
                  <output-file role="principal" compare="Fragment"
                     >complex-deletes-q14-2.xml</output-file>
               </state>
            </test-case>
         </test-group>
         <test-group name="ReplaceExpressions">
            <GroupInfo>
               <title>Replace Expressions</title>
               <description/>
            </GroupInfo>
            <test-group name="ReplaceNode">
               <GroupInfo>
                  <title>Replacing a Node</title>
                  <description/>
               </GroupInfo>
               <test-case name="id-replace-expr-01" FilePath="ReplaceExpressions/"
                  scenario="standard" Creator="Carmelo Montanez">
                  <description>Evaluates a replace expression, which replaces an element
                     node.</description>
                  <spec-citation spec="XQUPDATE" section-number="2.4.3.1"
                     section-title="Replacing a Node" section-pointer="id-replacing-node"/>
                  <state time="0">
                     <query name="id-replace-expr-01" date="2007-06-04"/>
                     <input-file role="principal-data" variable="input-context"
                        >works-mod</input-file>
                  </state>
                  <state time="1">
                     <query name="id-replace-expr-01-test" date="2007-06-04"/>
                     <input-file role="principal-data" variable="input-context"
                        >works-mod</input-file>
                     <output-file role="principal" compare="Fragment"
                        >id-replace-expr-01.xml</output-file>
                  </state>
               </test-case>
               <test-case name="id-replace-expr-02" FilePath="ReplaceExpressions/"
                  scenario="standard" Creator="Carmelo Montanez">
                  <description>Evaluates a replace expression, which replaces an attribute
                     node.</description>
                  <spec-citation spec="XQUPDATE" section-number="2.4.3.1"
                     section-title="Replacing a Node" section-pointer="id-replacing-node"/>
                  <state time="0">
                     <query name="id-replace-expr-02" date="2007-06-04"/>
                     <input-file role="principal-data" variable="input-context"
                        >works-mod</input-file>
                  </state>
                  <state time="1">
                     <query name="id-replace-expr-02-test" date="2007-06-04"/>
                     <input-file role="principal-data" variable="input-context"
                        >works-mod</input-file>
                     <output-file role="principal" compare="Fragment"
                        >id-replace-expr-02.xml</output-file>
                  </state>
               </test-case>
               <test-case name="id-replace-expr-03" FilePath="ReplaceExpressions/"
                  scenario="standard" Creator="Carmelo Montanez">
                  <description>Evaluates a replace expression that replaces a comment
                     node.</description>
                  <spec-citation spec="XQUPDATE" section-number="2.4.3.1"
                     section-title="Replacing a Node" section-pointer="id-replacing-node"/>
                  <state time="0">
                     <query name="id-replace-expr-03" date="2007-06-04"/>
                     <input-file role="principal-data" variable="input-context"
                        >works-mod</input-file>
                  </state>
                  <state time="1">
                     <query name="id-replace-expr-03-test" date="2007-06-04"/>
                     <input-file role="principal-data" variable="input-context"
                        >works-mod</input-file>
                     <output-file role="principal" compare="Fragment"
                        >id-replace-expr-03.xml</output-file>
                  </state>
               </test-case>
               <test-case name="id-replace-expr-04" FilePath="ReplaceExpressions/"
                  scenario="standard" Creator="Carmelo Montanez">
                  <description>Evaluates a replace expression that replaces Processing Instruction
                     node.</description>
                  <spec-citation spec="XQUPDATE" section-number="2.4.3.1"
                     section-title="Replacing a Node" section-pointer="id-replacing-node"/>
                  <state time="0">
                     <query name="id-replace-expr-04" date="2007-06-04"/>
                     <input-file role="principal-data" variable="input-context"
                        >works-mod</input-file>
                  </state>
                  <state time="1">
                     <query name="id-replace-expr-04-test" date="2007-06-04"/>
                     <input-file role="principal-data" variable="input-context"
                        >works-mod</input-file>
                     <output-file role="principal" compare="Fragment"
                        >id-replace-expr-04.xml</output-file>
                  </state>
               </test-case>
               <test-case name="id-replace-expr-010" FilePath="ReplaceExpressions/"
                  scenario="standard" Creator="Carmelo Montanez">
                  <description>Evaluates a replace expression, which replaces an element node with a
                     sequence of zero nodes.</description>
                  <spec-citation spec="XQUPDATE" section-number="2.4.3.1"
                     section-title="Replacing a Node" section-pointer="id-replacing-node"/>
                  <state time="0">
                     <query name="id-replace-expr-010" date="2007-06-04"/>
                     <input-file role="principal-data" variable="input-context"
                        >employeesNIST</input-file>
                  </state>
                  <state time="1">
                     <query name="id-replace-expr-010-test" date="2007-06-04"/>
                     <input-file role="principal-data" variable="input-context"
                        >employeesNIST</input-file>
                     <output-file role="principal" compare="Fragment"
                        >id-replace-expr-010.xml</output-file>
                  </state>
               </test-case>
               <test-case name="id-replace-expr-011" FilePath="ReplaceExpressions/"
                  scenario="runtime-error" Creator="Carmelo Montanez">
                  <description>Evaluates a replace expression, where expression following the "with"
                     clause is an updating expression.</description>
                  <spec-citation spec="XQUPDATE" section-number="2.4.3.1"
                     section-title="Replacing a Node" section-pointer="id-replacing-node"/>
                  <state time="0">
                     <query name="id-replace-expr-011" date="2007-06-04"/>
                     <input-file role="principal-data" variable="input-context"
                        >employeesNIST</input-file>
                     <expected-error>XUST0001</expected-error>
                  </state>
               </test-case>
               <test-case name="id-replace-expr-012" FilePath="ReplaceExpressions/"
                  scenario="runtime-error" Creator="Carmelo Montanez">
                  <description>Evaluates a replace expression, where the target expression is an
                     updating expression.</description>
                  <spec-citation spec="XQUPDATE" section-number="2.4.3.1"
                     section-title="Replacing a Node" section-pointer="id-replacing-node"/>
                  <state time="0">
                     <query name="id-replace-expr-012" date="2007-06-04"/>
                     <input-file role="principal-data" variable="input-context"
                        >employeesNIST</input-file>
                     <expected-error>XUST0001</expected-error>
                  </state>
               </test-case>
               <test-case name="id-replace-expr-013" FilePath="ReplaceExpressions/"
                  scenario="runtime-error" Creator="Carmelo Montanez">
                  <description>Evaluates a replace expression, where the target expression results
                     in more than one node.</description>
                  <spec-citation spec="XQUPDATE" section-number="2.4.3.1"
                     section-title="Replacing a Node" section-pointer="id-replacing-node"/>
                  <state time="0">
                     <query name="id-replace-expr-013" date="2007-06-04"/>
                     <input-file role="principal-data" variable="input-context"
                        >employeesNIST</input-file>
                     <expected-error>XUTY0008</expected-error>
                  </state>
               </test-case>
               <test-case name="id-replace-expr-014" FilePath="ReplaceExpressions/"
                  scenario="runtime-error" Creator="Carmelo Montanez">
                  <description>Evaluates a replace expression, where the target expression results
                     in a single node with no parent property.</description>
                  <spec-citation spec="XQUPDATE" section-number="2.4.3.1"
                     section-title="Replacing a Node" section-pointer="id-replacing-node"/>
                  <state time="0">
                     <query name="id-replace-expr-014" date="2007-06-04"/>
                     <input-file role="principal-data" variable="input-context"
                        >employeesNIST</input-file>
                     <expected-error>XUDY0009</expected-error>
                  </state>
               </test-case>
               <test-case name="id-replace-expr-015" FilePath="ReplaceExpressions/"
                  scenario="runtime-error" Creator="Carmelo Montanez">
                  <description>Evaluates a replace expression, where the target is a document
                     node.</description>
                  <spec-citation spec="XQUPDATE" section-number="2.4.3.1"
                     section-title="Replacing a Node" section-pointer="id-replacing-node"/>
                  <state time="0">
                     <query name="id-replace-expr-015" date="2007-06-04"/>
                     <input-file role="principal-data" variable="input-context"
                        >employeesNIST</input-file>
                     <expected-error>XUTY0008</expected-error>
                  </state>
               </test-case>
               <test-case name="id-replace-expr-016" FilePath="ReplaceExpressions/"
                  scenario="runtime-error" Creator="Carmelo Montanez">
                  <description>Evaluates a replace expression, where an attempt is made to replace
                     an attribute node with an element node.</description>
                  <spec-citation spec="XQUPDATE" section-number="2.4.3.1"
                     section-title="Replacing a Node" section-pointer="id-replacing-node"/>
                  <state time="0">
                     <query name="id-replace-expr-016" date="2007-06-04"/>
                     <input-file role="principal-data" variable="input-context"
                        >employeesNIST</input-file>
                     <expected-error>XUTY0011</expected-error>
                  </state>
               </test-case>
               <test-case name="id-replace-expr-022" FilePath="ReplaceExpressions/"
                  scenario="runtime-error" Creator="Carmelo Montanez">
                  <description>Evaluation of a replace expression where an Element node value is
                     replaced with an attribute node.</description>
                  <spec-citation spec="XQUPDATE" section-number="2.4.3.1"
                     section-title="Replacing a Node" section-pointer="id-replacing-node"/>
                  <state time="0">
                     <query name="id-replace-expr-022" date="2007-08-01"/>
                     <input-file role="principal-data" variable="input-context"
                        >works-mod</input-file>
                     <expected-error>XUTY0010</expected-error>
                  </state>
               </test-case>
               <test-case name="id-replace-expr-023" FilePath="ReplaceExpressions/"
                  scenario="runtime-error" Creator="Carmelo Montanez">
                  <description> Evaluation of a replace expression, where the target node is an
                     attribute and the replacement list is not exclusively attribute
                     nodes.</description>
                  <spec-citation spec="XQUPDATE" section-number="2.4.3.1"
                     section-title="Replacing a Node" section-pointer="id-replacing-node"/>
                  <state time="0">
                     <query name="id-replace-expr-023" date="2007-08-01"/>
                     <input-file role="principal-data" variable="input-context"
                        >employeesNIST</input-file>
                     <expected-error>XUTY0011</expected-error>
                  </state>
               </test-case>
               <test-case name="id-replace-expr-028" FilePath="ReplaceExpressions/"
                  scenario="runtime-error" Creator="Andrew Eisenberg">
                  <description>Evaluation of a replace expression where an empty traget is replaced
                     with an attribute node.</description>
                  <spec-citation spec="XQUPDATE" section-number="2.4.3.1"
                     section-title="Replacing a Node" section-pointer="id-replacing-node"/>
                  <state time="0">
                     <query name="id-replace-expr-028" date="2008-10-20"/>
                     <input-file role="principal-data" variable="input-context"
                        >works-mod</input-file>
                     <expected-error>XUDY0027</expected-error>
                  </state>
               </test-case>
               <test-case name="id-replace-expr-029" FilePath="ReplaceExpressions/"
                  scenario="standard" Creator="Andrew Eisenberg">
                  <description>Replace the values of text nodes.</description>
                  <spec-citation spec="XQUPDATE" section-number="2.4.3.1"
                     section-title="Replacing a Node" section-pointer="id-replacing-node"/>
                  <state time="0">
                     <query name="id-replace-expr-029" date="2008-10-20"/>
                     <input-file role="principal-data" variable="input-context"
                        >works-mod</input-file>
                  </state>
                  <state time="1">
                     <query name="id-replace-expr-029-test" date="2008-10-20"/>
                     <input-file role="principal-data" variable="input-context"
                        >works-mod</input-file>
                     <output-file role="principal" compare="XML"
                        >id-replace-expr-029.xml</output-file>
                  </state>
               </test-case>
               <test-case name="id-replace-expr-030" FilePath="ReplaceExpressions/"
                  scenario="standard" Creator="Andrew Eisenberg">
                  <description>Replace the values of text nodes.</description>
                  <spec-citation spec="XQUPDATE" section-number="2.4.3.1"
                     section-title="Replacing a Node" section-pointer="id-replacing-node"/>
                  <state time="0">
                     <query name="id-replace-expr-030" date="2008-10-20"/>
                     <input-file role="principal-data" variable="input-context"
                        >works-mod</input-file>
                  </state>
                  <state time="1">
                     <query name="id-replace-expr-030-test" date="2008-10-20"/>
                     <input-file role="principal-data" variable="input-context"
                        >works-mod</input-file>
                     <output-file role="principal" compare="XML"
                        >id-replace-expr-030.xml</output-file>
                  </state>
               </test-case>
               <test-case name="id-replace-expr-031" FilePath="ReplaceExpressions/"
                  scenario="standard" Creator="Andrew Eisenberg">
                  <description>Replace the value of a element node with a sequence.</description>
                  <spec-citation spec="XQUPDATE" section-number="2.4.3.1"
                     section-title="Replacing a Node" section-pointer="id-replacing-node"/>
                  <state time="0">
                     <query name="id-replace-expr-031" date="2008-10-20"/>
                     <input-file role="principal-data" variable="input-context"
                        >works-mod</input-file>
                  </state>
                  <state time="1">
                     <query name="id-replace-expr-031-test" date="2008-10-20"/>
                     <input-file role="principal-data" variable="input-context"
                        >works-mod</input-file>
                     <output-file role="principal" compare="XML"
                        >id-replace-expr-031.xml</output-file>
                  </state>
               </test-case>
               <test-case name="id-replace-expr-032" FilePath="ReplaceExpressions/"
                  scenario="standard" Creator="Andrew Eisenberg">
                  <description>Replace the value of a element node with a sequence.</description>
                  <spec-citation spec="XQUPDATE" section-number="2.4.3.1"
                     section-title="Replacing a Node" section-pointer="id-replacing-node"/>
                  <state time="0">
                     <query name="id-replace-expr-032" date="2008-10-20"/>
                     <input-file role="principal-data" variable="input-context"
                        >works-mod</input-file>
                  </state>
                  <state time="1">
                     <query name="id-replace-expr-032-test" date="2008-10-20"/>
                     <input-file role="principal-data" variable="input-context"
                        >works-mod</input-file>
                     <output-file role="principal" compare="XML"
                        >id-replace-expr-032.xml</output-file>
                  </state>
               </test-case>
               <test-case name="id-replace-expr-033" FilePath="ReplaceExpressions/"
                  scenario="standard" Creator="Andrew Eisenberg">
                  <description>Replace the value of a element node with a document.</description>
                  <spec-citation spec="XQUPDATE" section-number="2.4.3.1"
                     section-title="Replacing a Node" section-pointer="id-replacing-node"/>
                  <state time="0">
                     <query name="id-replace-expr-033" date="2008-10-20"/>
                     <input-file role="principal-data" variable="input-context"
                        >works-mod</input-file>
                  </state>
                  <state time="1">
                     <query name="id-replace-expr-033-test" date="2008-10-20"/>
                     <input-file role="principal-data" variable="input-context"
                        >works-mod</input-file>
                     <output-file role="principal" compare="XML"
                        >id-replace-expr-033.xml</output-file>
                  </state>
               </test-case>
               <test-case name="id-replace-expr-034" FilePath="ReplaceExpressions/"
                  scenario="standard" Creator="Andrew Eisenberg">
                  <description>Replace an attribute node with a sequence of attribute
                     nodes.</description>
                  <spec-citation spec="XQUPDATE" section-number="2.4.3.1"
                     section-title="Replacing a Node" section-pointer="id-replacing-node"/>
                  <state time="0">
                     <query name="id-replace-expr-034" date="2008-10-20"/>
                     <input-file role="principal-data" variable="input-context"
                        >works-mod</input-file>
                  </state>
                  <state time="1">
                     <query name="id-replace-expr-034-test" date="2008-10-20"/>
                     <input-file role="principal-data" variable="input-context"
                        >works-mod</input-file>
                     <output-file role="principal" compare="XML"
                        >id-replace-expr-034.xml</output-file>
                  </state>
               </test-case>
               <test-case name="id-replace-expr-045" FilePath="ReplaceExpressions/"
                  scenario="standard" Creator="Andrew Eisenberg">
                  <description>Check namepsace propogation when replacing an
                     attribute.</description>
                  <spec-citation spec="XQUPDATE" section-number="2.4.3.1"
                     section-title="Replacing a Node" section-pointer="id-replacing-node"/>
                  <state time="0">
                     <query name="id-replace-expr-045" date="2008-12-18"/>
                     <input-file role="principal-data" variable="input-context"
                        >emptydoc</input-file>
                     <output-file role="principal" compare="Text"
                        >id-replace-expr-045a.txt</output-file>
                  </state>
               </test-case>
               <test-case name="id-replace-expr-045-no-inherit" FilePath="ReplaceExpressions/"
                  scenario="standard" Creator="Josh Spiegel">
                  <description>Check namepsace propogation when replacing an
                     attribute.</description>
                  <spec-citation spec="XQUPDATE" section-number="2.4.3.1"
                     section-title="Replacing a Node" section-pointer="id-replacing-node"/>
                  <state time="0">
                     <query name="id-replace-expr-045-no-inherit" date="2010-04-02"/>
                     <input-file role="principal-data" variable="input-context"
                        >emptydoc</input-file>
                     <output-file role="principal" compare="Text"
                        >id-replace-expr-045-no-inherit.txt</output-file>
                  </state>
               </test-case>
            </test-group>
            <test-group name="ReplaceValue">
               <GroupInfo>
                  <title>Replacing the Value of a Node</title>
                  <description/>
               </GroupInfo>
               <test-case name="id-replace-expr-05" FilePath="ReplaceExpressions/"
                  scenario="standard" Creator="Carmelo Montanez">
                  <description>Evaluates a replace expression, which replaces an element node and
                     usage of "value of" keyword.</description>
                  <spec-citation spec="XQUPDATE" section-number="2.4.3.2"
                     section-title="Replacing the Value of a Node"
                     section-pointer="id-replacing-node-value"/>
                  <state time="0">
                     <query name="id-replace-expr-05" date="2007-06-04"/>
                     <input-file role="principal-data" variable="input-context"
                        >works-mod</input-file>
                  </state>
                  <state time="1">
                     <query name="id-replace-expr-05-test" date="2007-06-04"/>
                     <input-file role="principal-data" variable="input-context"
                        >works-mod</input-file>
                     <output-file role="principal" compare="Fragment"
                        >id-replace-expr-05.xml</output-file>
                  </state>
               </test-case>
               <test-case name="id-replace-expr-06" FilePath="ReplaceExpressions/"
                  scenario="standard" Creator="Carmelo Montanez">
                  <description>Evaluates a replace expression, which replaces an attribute node and
                     usage of "value of" keyword.</description>
                  <spec-citation spec="XQUPDATE" section-number="2.4.3.2"
                     section-title="Replacing the Value of a Node"
                     section-pointer="id-replacing-node-value"/>
                  <state time="0">
                     <query name="id-replace-expr-06" date="2007-06-04"/>
                     <input-file role="principal-data" variable="input-context"
                        >works-mod</input-file>
                  </state>
                  <state time="1">
                     <query name="id-replace-expr-06-test" date="2007-06-04"/>
                     <input-file role="principal-data" variable="input-context"
                        >works-mod</input-file>
                     <output-file role="principal" compare="Fragment"
                        >id-replace-expr-06.xml</output-file>
                  </state>
               </test-case>
               <test-case name="id-replace-expr-07" FilePath="ReplaceExpressions/"
                  scenario="standard" Creator="Carmelo Montanez">
                  <description>Evaluates a replace expression, which replaces a comment node and
                     usage of "value of" keyword.</description>
                  <spec-citation spec="XQUPDATE" section-number="2.4.3.2"
                     section-title="Replacing the Value of a Node"
                     section-pointer="id-replacing-node-value"/>
                  <state time="0">
                     <query name="id-replace-expr-07" date="2007-06-04"/>
                     <input-file role="principal-data" variable="input-context"
                        >works-mod</input-file>
                  </state>
                  <state time="1">
                     <query name="id-replace-expr-07-test" date="2007-06-04"/>
                     <input-file role="principal-data" variable="input-context"
                        >works-mod</input-file>
                     <output-file role="principal" compare="Fragment"
                        >id-replace-expr-07.xml</output-file>
                  </state>
               </test-case>
               <test-case name="id-replace-expr-08" FilePath="ReplaceExpressions/"
                  scenario="standard" Creator="Carmelo Montanez">
                  <description>Evaluates a replace expression, which replaces a Processing
                     Instruction node and usage of "value of" keyword.</description>
                  <spec-citation spec="XQUPDATE" section-number="2.4.3.2"
                     section-title="Replacing the Value of a Node"
                     section-pointer="id-replacing-node-value"/>
                  <state time="0">
                     <query name="id-replace-expr-08" date="2007-06-04"/>
                     <input-file role="principal-data" variable="input-context"
                        >works-mod</input-file>
                  </state>
                  <state time="1">
                     <query name="id-replace-expr-08-test" date="2007-06-04"/>
                     <input-file role="principal-data" variable="input-context"
                        >works-mod</input-file>
                     <output-file role="principal" compare="Fragment"
                        >id-replace-expr-08.xml</output-file>
                  </state>
               </test-case>
               <test-case name="id-replace-expr-09" FilePath="ReplaceExpressions/"
                  scenario="standard" Creator="Carmelo Montanez">
                  <description>Evaluates a replace expression, which replaces an element node and
                     usage of "value of" keyword. It uses an arithmetic expression.</description>
                  <spec-citation spec="XQUPDATE" section-number="2.4.3.2"
                     section-title="Replacing the Value of a Node"
                     section-pointer="id-replacing-node-value"/>
                  <state time="0">
                     <query name="id-replace-expr-09" date="2007-06-04"/>
                     <input-file role="principal-data" variable="input-context"
                        >works-mod</input-file>
                  </state>
                  <state time="1">
                     <query name="id-replace-expr-09-test" date="2007-06-04"/>
                     <input-file role="principal-data" variable="input-context"
                        >works-mod</input-file>
                     <output-file role="principal" compare="Fragment"
                        >id-replace-expr-09.xml</output-file>
                  </state>
               </test-case>
               <test-case name="id-replace-expr-017" FilePath="ReplaceExpressions/"
                  scenario="runtime-error" Creator="Carmelo Montanez">
                  <description>Evaluates a replace expression, where expression following the "with"
                     clause is an updating expression and usage of "value of" keyword.</description>
                  <spec-citation spec="XQUPDATE" section-number="2.4.3.2"
                     section-title="Replacing the Value of a Node"
                     section-pointer="id-replacing-node-value"/>
                  <state time="0">
                     <query name="id-replace-expr-017" date="2007-06-04"/>
                     <input-file role="principal-data" variable="input-context"
                        >employeesNIST</input-file>
                     <expected-error>XUST0001</expected-error>
                  </state>
               </test-case>
               <test-case name="id-replace-expr-018" FilePath="ReplaceExpressions/"
                  scenario="runtime-error" Creator="Carmelo Montanez">
                  <description>Evaluates a replace expression, where the target expression is an
                     updating expression and usage of the "value of" keyword.</description>
                  <spec-citation spec="XQUPDATE" section-number="2.4.3.2"
                     section-title="Replacing the Value of a Node"
                     section-pointer="id-replacing-node-value"/>
                  <state time="0">
                     <query name="id-replace-expr-018" date="2007-06-04"/>
                     <input-file role="principal-data" variable="input-context"
                        >employeesNIST</input-file>
                     <expected-error>XUST0001</expected-error>
                  </state>
               </test-case>
               <test-case name="id-replace-expr-019" FilePath="ReplaceExpressions/"
                  scenario="runtime-error" Creator="Carmelo Montanez">
                  <description>Evaluates a replace expression, where the target expression results
                     into more than one node and usage of the "value of" keyword.</description>
                  <spec-citation spec="XQUPDATE" section-number="2.4.3.2"
                     section-title="Replacing the Value of a Node"
                     section-pointer="id-replacing-node-value"/>
                  <state time="0">
                     <query name="id-replace-expr-019" date="2007-06-04"/>
                     <input-file role="principal-data" variable="input-context"
                        >employeesNIST</input-file>
                     <expected-error>XUTY0008</expected-error>
                  </state>
               </test-case>
               <test-case name="id-replace-expr-020" FilePath="ReplaceExpressions/"
                  scenario="runtime-error" Creator="Carmelo Montanez">
                  <description>Evaluates a replace expression, where the target is a document node
                     and usage of the "value of" keyword.</description>
                  <spec-citation spec="XQUPDATE" section-number="2.4.3.2"
                     section-title="Replacing the Value of a Node"
                     section-pointer="id-replacing-node-value"/>
                  <state time="0">
                     <query name="id-replace-expr-020" date="2007-06-04"/>
                     <input-file role="principal-data" variable="input-context"
                        >employeesNIST</input-file>
                     <expected-error>XUTY0008</expected-error>
                  </state>
               </test-case>
               <test-case name="id-replace-expr-021" FilePath="ReplaceExpressions/"
                  scenario="standard" Creator="Carmelo Montanez">
                  <description>Evaluates a replace expression, used to replace an attribute node's
                     value with an element node and usage of the "value of" clause.</description>
                  <spec-citation spec="XQUPDATE" section-number="2.4.3.2"
                     section-title="Replacing the Value of a Node"
                     section-pointer="id-replacing-node-value"/>
                  <state time="0">
                     <query name="id-replace-expr-021" date="2007-06-04"/>
                     <input-file role="principal-data" variable="input-context"
                        >employeesNIST</input-file>
                  </state>
                  <state time="1">
                     <query name="id-replace-expr-021-test" date="2007-10-05"/>
                     <input-file role="principal-data" variable="input-context"
                        >employeesNIST</input-file>
                     <output-file role="principal" compare="Fragment"
                        >id-replace-expr-021.xml</output-file>
                  </state>
               </test-case>
               <test-case name="id-replace-expr-024" FilePath="ReplaceExpressions/"
                  scenario="runtime-error" Creator="Carmelo Montanez">
                  <description>Evaluates a replace expression with value of clause, where the target
                     is a comment node and replacement string contains two adjacents
                     hypens.</description>
                  <spec-citation spec="XQUPDATE" section-number="2.4.3.2"
                     section-title="Replacing the Value of a Node"
                     section-pointer="id-replacing-node-value"/>
                  <state time="0">
                     <query name="id-replace-expr-024" date="2007-08-02"/>
                     <input-file role="principal-data" variable="input-context"
                        >employeesNIST</input-file>
                     <expected-error>XQDY0072</expected-error>
                  </state>
               </test-case>
               <test-case name="id-replace-expr-025" FilePath="ReplaceExpressions/"
                  scenario="runtime-error" Creator="Carmelo Montanez">
                  <description>Evaluates a replace expression with value of clause, where the target
                     is a PI node and replacement string contains "?>".</description>
                  <spec-citation spec="XQUPDATE" section-number="2.4.3.2"
                     section-title="Replacing the Value of a Node"
                     section-pointer="id-replacing-node-value"/>
                  <state time="0">
                     <query name="id-replace-expr-025" date="2007-08-02"/>
                     <input-file role="principal-data" variable="input-context"
                        >employeesNIST</input-file>
                     <expected-error>XQDY0026</expected-error>
                  </state>
               </test-case>
               <test-case name="id-replace-expr-026" FilePath="ReplaceExpressions/"
                  scenario="runtime-error" Creator="Carmelo Montanez">
                  <description>Evaluates a replace expression with value of clause, where the target
                     expression results in and empty sequence.</description>
                  <spec-citation spec="XQUPDATE" section-number="2.4.3.2"
                     section-title="Replacing the Value of a Node"
                     section-pointer="id-replacing-node-value"/>
                  <state time="0">
                     <query name="id-replace-expr-026" date="2007-08-02"/>
                     <input-file role="principal-data" variable="input-context"
                        >employeesNIST</input-file>
                     <expected-error>XUDY0027</expected-error>
                  </state>
               </test-case>
               <test-case name="id-replace-expr-027" FilePath="ReplaceExpressions/"
                  scenario="runtime-error" Creator="Carmelo Montanez">
                  <description>Evaluates a replace expression with value of clause, where the target
                     expression is set to "()"</description>
                  <spec-citation spec="XQUPDATE" section-number="2.4.3.2"
                     section-title="Replacing the Value of a Node"
                     section-pointer="id-replacing-node-value"/>
                  <state time="0">
                     <query name="id-replace-expr-027" date="2007-08-02"/>
                     <input-file role="principal-data" variable="input-context"
                        >employeesNIST</input-file>
                     <expected-error>XUDY0027</expected-error>
                  </state>
               </test-case>
               <test-case name="id-replace-expr-035" FilePath="ReplaceExpressions/"
                  scenario="standard" Creator="Andrew Eisenberg">
                  <description>Replace value of element with empty sequence.</description>
                  <spec-citation spec="XQUPDATE" section-number="2.4.3.2"
                     section-title="Replacing the Value of a Node"
                     section-pointer="id-replacing-node-value"/>
                  <state time="0">
                     <query name="id-replace-expr-035" date="2008-10-20"/>
                     <input-file role="principal-data" variable="input-context"
                        >works-mod</input-file>
                  </state>
                  <state time="1">
                     <query name="id-replace-expr-035-test" date="2008-10-20"/>
                     <input-file role="principal-data" variable="input-context"
                        >works-mod</input-file>
                     <output-file role="principal" compare="XML"
                        >id-replace-expr-035.xml</output-file>
                  </state>
               </test-case>
               <test-case name="id-replace-expr-036" FilePath="ReplaceExpressions/"
                  scenario="standard" Creator="Andrew Eisenberg">
                  <description>Replace value of element with a sequence.</description>
                  <spec-citation spec="XQUPDATE" section-number="2.4.3.2"
                     section-title="Replacing the Value of a Node"
                     section-pointer="id-replacing-node-value"/>
                  <state time="0">
                     <query name="id-replace-expr-036" date="2008-10-20"/>
                     <input-file role="principal-data" variable="input-context"
                        >works-mod</input-file>
                  </state>
                  <state time="1">
                     <query name="id-replace-expr-036-test" date="2008-10-20"/>
                     <input-file role="principal-data" variable="input-context"
                        >works-mod</input-file>
                     <output-file role="principal" compare="XML"
                        >id-replace-expr-036.xml</output-file>
                  </state>
               </test-case>
               <test-case name="id-replace-expr-037" FilePath="ReplaceExpressions/"
                  scenario="standard" Creator="Andrew Eisenberg">
                  <description>Replace value of an attribute with empty sequence.</description>
                  <spec-citation spec="XQUPDATE" section-number="2.4.3.2"
                     section-title="Replacing the Value of a Node"
                     section-pointer="id-replacing-node-value"/>
                  <state time="0">
                     <query name="id-replace-expr-037" date="2008-10-20"/>
                     <input-file role="principal-data" variable="input-context"
                        >works-mod</input-file>
                  </state>
                  <state time="1">
                     <query name="id-replace-expr-037-test" date="2008-10-20"/>
                     <input-file role="principal-data" variable="input-context"
                        >works-mod</input-file>
                     <output-file role="principal" compare="XML"
                        >id-replace-expr-037.xml</output-file>
                  </state>
               </test-case>
               <test-case name="id-replace-expr-038" FilePath="ReplaceExpressions/"
                  scenario="standard" Creator="Andrew Eisenberg">
                  <description>Replace value of a comment with empty sequence.</description>
                  <spec-citation spec="XQUPDATE" section-number="2.4.3.2"
                     section-title="Replacing the Value of a Node"
                     section-pointer="id-replacing-node-value"/>
                  <state time="0">
                     <query name="id-replace-expr-038" date="2008-10-20"/>
                     <input-file role="principal-data" variable="input-context"
                        >works-mod</input-file>
                  </state>
                  <state time="1">
                     <query name="id-replace-expr-038-test" date="2008-10-20"/>
                     <input-file role="principal-data" variable="input-context"
                        >works-mod</input-file>
                     <output-file role="principal" compare="XML"
                        >id-replace-expr-038.xml</output-file>
                  </state>
               </test-case>
               <test-case name="id-replace-expr-039" FilePath="ReplaceExpressions/"
                  scenario="standard" Creator="Andrew Eisenberg">
                  <description>Replace value of a PI with empty sequence.</description>
                  <spec-citation spec="XQUPDATE" section-number="2.4.3.2"
                     section-title="Replacing the Value of a Node"
                     section-pointer="id-replacing-node-value"/>
                  <state time="0">
                     <query name="id-replace-expr-039" date="2008-10-20"/>
                     <input-file role="principal-data" variable="input-context"
                        >works-mod</input-file>
                  </state>
                  <state time="1">
                     <query name="id-replace-expr-039-test" date="2008-10-20"/>
                     <input-file role="principal-data" variable="input-context"
                        >works-mod</input-file>
                     <output-file role="principal" compare="XML"
                        >id-replace-expr-039.xml</output-file>
                  </state>
               </test-case>
               <test-case name="id-replace-expr-040" FilePath="ReplaceExpressions/"
                  scenario="standard" Creator="Andrew Eisenberg">
                  <description>Replace value of a text node with empty sequence.</description>
                  <spec-citation spec="XQUPDATE" section-number="2.4.3.2"
                     section-title="Replacing the Value of a Node"
                     section-pointer="id-replacing-node-value"/>
                  <state time="0">
                     <query name="id-replace-expr-040" date="2008-10-20"/>
                     <input-file role="principal-data" variable="input-context"
                        >works-mod</input-file>
                  </state>
                  <state time="1">
                     <query name="id-replace-expr-040-test" date="2008-10-20"/>
                     <input-file role="principal-data" variable="input-context"
                        >works-mod</input-file>
                     <output-file role="principal" compare="XML"
                        >id-replace-expr-040.xml</output-file>
                  </state>
               </test-case>
               <test-case name="id-replace-expr-041" FilePath="ReplaceExpressions/"
                  scenario="standard" Creator="Andrew Eisenberg">
                  <description>Replace value of an attribute with a sequence.</description>
                  <spec-citation spec="XQUPDATE" section-number="2.4.3.2"
                     section-title="Replacing the Value of a Node"
                     section-pointer="id-replacing-node-value"/>
                  <state time="0">
                     <query name="id-replace-expr-041" date="2008-10-20"/>
                     <input-file role="principal-data" variable="input-context"
                        >works-mod</input-file>
                  </state>
                  <state time="1">
                     <query name="id-replace-expr-041-test" date="2008-10-20"/>
                     <input-file role="principal-data" variable="input-context"
                        >works-mod</input-file>
                     <output-file role="principal" compare="XML"
                        >id-replace-expr-041.xml</output-file>
                  </state>
               </test-case>
               <test-case name="id-replace-expr-042" FilePath="ReplaceExpressions/"
                  scenario="standard" Creator="Andrew Eisenberg">
                  <description>Replace value of a comment with a sequence.</description>
                  <spec-citation spec="XQUPDATE" section-number="2.4.3.2"
                     section-title="Replacing the Value of a Node"
                     section-pointer="id-replacing-node-value"/>
                  <state time="0">
                     <query name="id-replace-expr-042" date="2008-10-20"/>
                     <input-file role="principal-data" variable="input-context"
                        >works-mod</input-file>
                  </state>
                  <state time="1">
                     <query name="id-replace-expr-042-test" date="2008-10-20"/>
                     <input-file role="principal-data" variable="input-context"
                        >works-mod</input-file>
                     <output-file role="principal" compare="XML"
                        >id-replace-expr-042.xml</output-file>
                  </state>
               </test-case>
               <test-case name="id-replace-expr-043" FilePath="ReplaceExpressions/"
                  scenario="standard" Creator="Andrew Eisenberg">
                  <description>Replace value of a PI with a sequence.</description>
                  <spec-citation spec="XQUPDATE" section-number="2.4.3.2"
                     section-title="Replacing the Value of a Node"
                     section-pointer="id-replacing-node-value"/>
                  <state time="0">
                     <query name="id-replace-expr-043" date="2008-10-20"/>
                     <input-file role="principal-data" variable="input-context"
                        >works-mod</input-file>
                  </state>
                  <state time="1">
                     <query name="id-replace-expr-043-test" date="2008-10-20"/>
                     <input-file role="principal-data" variable="input-context"
                        >works-mod</input-file>
                     <output-file role="principal" compare="XML"
                        >id-replace-expr-043.xml</output-file>
                  </state>
               </test-case>
               <test-case name="id-replace-expr-044" FilePath="ReplaceExpressions/"
                  scenario="standard" Creator="Andrew Eisenberg">
                  <description>Replace value of a text node with a sequence.</description>
                  <spec-citation spec="XQUPDATE" section-number="2.4.3.2"
                     section-title="Replacing the Value of a Node"
                     section-pointer="id-replacing-node-value"/>
                  <state time="0">
                     <query name="id-replace-expr-044" date="2008-10-20"/>
                     <input-file role="principal-data" variable="input-context"
                        >works-mod</input-file>
                  </state>
                  <state time="1">
                     <query name="id-replace-expr-044-test" date="2008-10-20"/>
                     <input-file role="principal-data" variable="input-context"
                        >works-mod</input-file>
                     <output-file role="principal" compare="XML"
                        >id-replace-expr-044.xml</output-file>
                  </state>
               </test-case>
               <test-case name="complex-replacevalues-q3" FilePath="ReplaceExpressions/"
                  scenario="standard" Creator="John Snelson">
                  <description>Replace value of all PIs with target "a-pi".</description>
                  <spec-citation spec="XQUPDATE" section-number="2.4.3.2"
                     section-title="Replacing the Value of a Node"
                     section-pointer="id-replacing-node-value"/>
                  <spec-citation spec="XQUPDATE" section-number="2.5.1"
                     section-title="FLWOR Expression" section-pointer="id-flwor-expr"/>
                  <state time="0">
                     <query name="complex-replacevalues-q3" date="2007-10-23"/>
                     <input-file role="principal-data" variable="input-context">TopMany</input-file>
                  </state>
                  <state time="1">
                     <query name="complex-replacevalues-q3-test" date="2007-10-23"/>
                     <input-file role="principal-data" variable="input-context">TopMany</input-file>
                     <output-file role="principal" compare="Fragment"
                        >complex-replacevalues-q3.xml</output-file>
                  </state>
                  <state time="2">
                     <query name="complex-replacevalues-q3-test2" date="2007-10-23"/>
                     <input-file role="principal-data" variable="input-context">TopMany</input-file>
                     <output-file role="principal" compare="Fragment"
                        >complex-replacevalues-q3-2.xml</output-file>
                  </state>
               </test-case>
               <test-case name="complex-replacevalues-q4" FilePath="ReplaceExpressions/"
                  scenario="standard" Creator="John Snelson">
                  <description>Replace value of last text node child of document
                     element.</description>
                  <spec-citation spec="XQUPDATE" section-number="2.4.3.2"
                     section-title="Replacing the Value of a Node"
                     section-pointer="id-replacing-node-value"/>
                  <state time="0">
                     <query name="complex-replacevalues-q4" date="2007-10-23"/>
                     <input-file role="principal-data" variable="input-context">TopMany</input-file>
                  </state>
                  <state time="1">
                     <query name="complex-replacevalues-q4-test" date="2007-10-23"/>
                     <input-file role="principal-data" variable="input-context">TopMany</input-file>
                     <output-file role="principal" compare="Fragment"
                        >complex-replacevalues-q4.xml</output-file>
                  </state>
                  <state time="2">
                     <query name="complex-replacevalues-q4-test2" date="2007-10-23"/>
                     <input-file role="principal-data" variable="input-context">TopMany</input-file>
                     <output-file role="principal" compare="Fragment"
                        >complex-replacevalues-q4-2.xml</output-file>
                  </state>
               </test-case>
               <test-case name="complex-replacevalues-q5" FilePath="ReplaceExpressions/"
                  scenario="standard" Creator="John Snelson">
                  <description>Replace value of all text node children of element
                     "south".</description>
                  <spec-citation spec="XQUPDATE" section-number="2.4.3.2"
                     section-title="Replacing the Value of a Node"
                     section-pointer="id-replacing-node-value"/>
                  <spec-citation spec="XQUPDATE" section-number="2.5.1"
                     section-title="FLWOR Expression" section-pointer="id-flwor-expr"/>
                  <state time="0">
                     <query name="complex-replacevalues-q5" date="2007-10-23"/>
                     <input-file role="principal-data" variable="input-context">TopMany</input-file>
                  </state>
                  <state time="1">
                     <query name="complex-replacevalues-q5-test" date="2007-10-23"/>
                     <input-file role="principal-data" variable="input-context">TopMany</input-file>
                     <output-file role="principal" compare="Fragment"
                        >complex-replacevalues-q5.xml</output-file>
                  </state>
                  <state time="2">
                     <query name="complex-replacevalues-q5-test2" date="2007-10-23"/>
                     <input-file role="principal-data" variable="input-context">TopMany</input-file>
                     <output-file role="principal" compare="Fragment"
                        >complex-replacevalues-q5-2.xml</output-file>
                  </state>
               </test-case>
               <test-case name="complex-replacevalues-q9" FilePath="ReplaceExpressions/"
                  scenario="standard" Creator="John Snelson">
                  <description>Replace value of the element called "center".</description>
                  <spec-citation spec="XQUPDATE" section-number="2.4.3.2"
                     section-title="Replacing the Value of a Node"
                     section-pointer="id-replacing-node-value"/>
                  <state time="0">
                     <query name="complex-replacevalues-q9" date="2007-10-23"/>
                     <input-file role="principal-data" variable="input-context">TopMany</input-file>
                  </state>
                  <state time="1">
                     <query name="complex-replacevalues-q9-test" date="2007-10-23"/>
                     <input-file role="principal-data" variable="input-context">TopMany</input-file>
                     <output-file role="principal" compare="Fragment"
                        >complex-replacevalues-q9.xml</output-file>
                  </state>
                  <state time="2">
                     <query name="complex-replacevalues-q9-test2" date="2007-10-23"/>
                     <input-file role="principal-data" variable="input-context">TopMany</input-file>
                     <output-file role="principal" compare="Fragment"
                        >complex-replacevalues-q9-2.xml</output-file>
                  </state>
               </test-case>
               <test-case name="complex-replacevalues-q10" FilePath="ReplaceExpressions/"
                  scenario="standard" Creator="John Snelson">
                  <description>Replace value of the element called "south".</description>
                  <spec-citation spec="XQUPDATE" section-number="2.4.3.2"
                     section-title="Replacing the Value of a Node"
                     section-pointer="id-replacing-node-value"/>
                  <state time="0">
                     <query name="complex-replacevalues-q10" date="2007-10-23"/>
                     <input-file role="principal-data" variable="input-context">TopMany</input-file>
                  </state>
                  <state time="1">
                     <query name="complex-replacevalues-q10-test" date="2007-10-23"/>
                     <input-file role="principal-data" variable="input-context">TopMany</input-file>
                     <output-file role="principal" compare="Fragment"
                        >complex-replacevalues-q10.xml</output-file>
                  </state>
                  <state time="2">
                     <query name="complex-replacevalues-q10-test2" date="2007-10-23"/>
                     <input-file role="principal-data" variable="input-context">TopMany</input-file>
                     <output-file role="principal" compare="Fragment"
                        >complex-replacevalues-q10-2.xml</output-file>
                  </state>
               </test-case>
               <test-case name="complex-replacevalues-q11" FilePath="ReplaceExpressions/"
                  scenario="standard" Creator="John Snelson">
                  <description>Replace value of all attributes called "mark".</description>
                  <spec-citation spec="XQUPDATE" section-number="2.4.3.2"
                     section-title="Replacing the Value of a Node"
                     section-pointer="id-replacing-node-value"/>
                  <spec-citation spec="XQUPDATE" section-number="2.5.1"
                     section-title="FLWOR Expression" section-pointer="id-flwor-expr"/>
                  <state time="0">
                     <query name="complex-replacevalues-q11" date="2007-10-23"/>
                     <input-file role="principal-data" variable="input-context">TopMany</input-file>
                  </state>
                  <state time="1">
                     <query name="complex-replacevalues-q11-test" date="2007-10-23"/>
                     <input-file role="principal-data" variable="input-context">TopMany</input-file>
                     <output-file role="principal" compare="Fragment"
                        >complex-replacevalues-q11.xml</output-file>
                  </state>
                  <state time="2">
                     <query name="complex-replacevalues-q11-test2" date="2007-10-23"/>
                     <input-file role="principal-data" variable="input-context">TopMany</input-file>
                     <output-file role="principal" compare="Fragment"
                        >complex-replacevalues-q11-2.xml</output-file>
                  </state>
               </test-case>
               <test-case name="complex-replacevalues-q12" FilePath="ReplaceExpressions/"
                  scenario="standard" Creator="John Snelson">
                  <description>Replace value of all attributes on the "west" element.</description>
                  <spec-citation spec="XQUPDATE" section-number="2.4.3.2"
                     section-title="Replacing the Value of a Node"
                     section-pointer="id-replacing-node-value"/>
                  <spec-citation spec="XQUPDATE" section-number="2.5.1"
                     section-title="FLWOR Expression" section-pointer="id-flwor-expr"/>
                  <state time="0">
                     <query name="complex-replacevalues-q12" date="2007-10-23"/>
                     <input-file role="principal-data" variable="input-context">TopMany</input-file>
                  </state>
                  <state time="1">
                     <query name="complex-replacevalues-q12-test" date="2007-10-23"/>
                     <input-file role="principal-data" variable="input-context">TopMany</input-file>
                     <output-file role="principal" compare="Fragment"
                        >complex-replacevalues-q12.xml</output-file>
                  </state>
                  <state time="2">
                     <query name="complex-replacevalues-q12-test2" date="2007-10-23"/>
                     <input-file role="principal-data" variable="input-context">TopMany</input-file>
                     <output-file role="principal" compare="Fragment"
                        >complex-replacevalues-q12-2.xml</output-file>
                  </state>
               </test-case>
               <test-case name="complex-replacevalues-q13" FilePath="ReplaceExpressions/"
                  scenario="standard" Creator="John Snelson">
                  <description>Replace the value of the attributes named "west-attr-2",
                     "center-attr-2", and "south-attr-2".</description>
                  <spec-citation spec="XQUPDATE" section-number="2.4.3.2"
                     section-title="Replacing the Value of a Node"
                     section-pointer="id-replacing-node-value"/>
                  <spec-citation spec="XQUPDATE" section-number="2.5.1"
                     section-title="FLWOR Expression" section-pointer="id-flwor-expr"/>
                  <state time="0">
                     <query name="complex-replacevalues-q13" date="2007-10-23"/>
                     <input-file role="principal-data" variable="input-context">TopMany</input-file>
                  </state>
                  <state time="1">
                     <query name="complex-replacevalues-q13-test" date="2007-10-23"/>
                     <input-file role="principal-data" variable="input-context">TopMany</input-file>
                     <output-file role="principal" compare="Fragment"
                        >complex-replacevalues-q13.xml</output-file>
                  </state>
                  <state time="2">
                     <query name="complex-replacevalues-q13-test2" date="2007-10-23"/>
                     <input-file role="principal-data" variable="input-context">TopMany</input-file>
                     <output-file role="principal" compare="Fragment"
                        >complex-replacevalues-q13-2.xml</output-file>
                  </state>
               </test-case>
               <test-case name="complex-replacevalues-q14" FilePath="ReplaceExpressions/"
                  scenario="standard" Creator="John Snelson">
                  <description>Replace the value of the "far-west" element with a string containing
                     markup.</description>
                  <spec-citation spec="XQUPDATE" section-number="2.4.3.2"
                     section-title="Replacing the Value of a Node"
                     section-pointer="id-replacing-node-value"/>
                  <state time="0">
                     <query name="complex-replacevalues-q14" date="2008-01-03"/>
                     <input-file role="principal-data" variable="input-context">TopMany</input-file>
                  </state>
                  <state time="1">
                     <query name="complex-replacevalues-q14-test" date="2008-01-03"/>
                     <input-file role="principal-data" variable="input-context">TopMany</input-file>
                     <output-file role="principal" compare="Fragment"
                        >complex-replacevalues-q14.xml</output-file>
                  </state>
                  <state time="2">
                     <query name="complex-replacevalues-q14-test2" date="2008-01-03"/>
                     <input-file role="principal-data" variable="input-context">TopMany</input-file>
                     <output-file role="principal" compare="Fragment"
                        >complex-replacevalues-q14-2.xml</output-file>
                  </state>
               </test-case>
            </test-group>
         </test-group>
         <test-group name="RenameExpressions">
            <GroupInfo>
               <title>Rename Expressions</title>
               <description/>
            </GroupInfo>
            <test-case name="id-rename-expr-01" FilePath="RenameExpressions/" scenario="standard"
               Creator="Carmelo Montanez">
               <description>A rename expression that renames an element from a directly constructed
                  element node.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.4" section-title="Rename"
                  section-pointer="id-rename"/>
               <state time="0">
                  <query name="id-rename-expr-01" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
               </state>
               <state time="1">
                  <query name="id-rename-expr-01-test" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="Fragment"
                     >id-rename-expr-01.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-rename-expr-02" FilePath="RenameExpressions/" scenario="standard"
               Creator="Carmelo Montanez">
               <description>A rename expression that renames an attribute from a directly
                  constructed element node.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.4" section-title="Rename"
                  section-pointer="id-rename"/>
               <state time="0">
                  <query name="id-rename-expr-02" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
               </state>
               <state time="1">
                  <query name="id-rename-expr-02-test" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="Fragment"
                     >id-rename-expr-02.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-rename-expr-03" FilePath="RenameExpressions/" scenario="standard"
               Creator="Carmelo Montanez">
               <description>A rename expression that renames a Processing Instruction.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.4" section-title="Rename"
                  section-pointer="id-rename"/>
               <state time="0">
                  <query name="id-rename-expr-03" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
               </state>
               <state time="1">
                  <query name="id-rename-expr-03-test" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="Fragment"
                     >id-rename-expr-03.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-rename-expr-04" FilePath="RenameExpressions/" scenario="standard"
               Creator="Carmelo Montanez">
               <description>A rename expression that renames an element from an xml
                  file.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.4" section-title="Rename"
                  section-pointer="id-rename"/>
               <state time="0">
                  <query name="id-rename-expr-04" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
               </state>
               <state time="1">
                  <query name="id-rename-expr-04-test" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="Fragment"
                     >id-rename-expr-04.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-rename-expr-05" FilePath="RenameExpressions/" scenario="standard"
               Creator="Carmelo Montanez">
               <description>A rename expression that renames an attribute from an xml
                  file.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.4" section-title="Rename"
                  section-pointer="id-rename"/>
               <state time="0">
                  <query name="id-rename-expr-05" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
               </state>
               <state time="1">
                  <query name="id-rename-expr-05-test" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="Fragment"
                     >id-rename-expr-05.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-rename-expr-06" FilePath="RenameExpressions/"
               scenario="runtime-error" Creator="Carmelo Montanez">
               <description>A rename expression where the target expression is an updating
                  expression.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.4" section-title="Rename"
                  section-pointer="id-rename"/>
               <state time="0">
                  <query name="id-rename-expr-06" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context"
                     >employeesNIST</input-file>
                  <expected-error>XUST0001</expected-error>
               </state>
            </test-case>
            <test-case name="id-rename-expr-07" FilePath="RenameExpressions/"
               scenario="runtime-error" Creator="Carmelo Montanez">
               <description>A rename expression where the target expression results in a sequence of
                  two nodes.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.4" section-title="Rename"
                  section-pointer="id-rename"/>
               <state time="0">
                  <query name="id-rename-expr-07" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context"
                     >employeesNIST</input-file>
                  <expected-error>XUTY0012</expected-error>
               </state>
            </test-case>
            <test-case name="id-rename-expr-08" FilePath="RenameExpressions/"
               scenario="runtime-error" Creator="Carmelo Montanez">
               <description>A rename expression where the target expression is the empty
                  sequence.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.4" section-title="Rename"
                  section-pointer="id-rename"/>
               <state time="0">
                  <query name="id-rename-expr-08" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context"
                     >employeesNIST</input-file>
                  <expected-error>XUDY0027</expected-error>
               </state>
            </test-case>
            <test-case name="id-rename-expr-09" FilePath="RenameExpressions/"
               scenario="runtime-error" Creator="Carmelo Montanez">
               <description>A rename expression where the new name expression is the empty
                  sequence.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.4" section-title="Rename"
                  section-pointer="id-rename"/>
               <state time="0">
                  <query name="id-rename-expr-09" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context"
                     >employeesNIST</input-file>
                  <expected-error>XPTY0004</expected-error>
               </state>
            </test-case>
            <test-case name="id-rename-expr-010" FilePath="RenameExpressions/"
               scenario="runtime-error" Creator="Carmelo Montanez">
               <description>A rename expression where the new name expression is an updating
                  expression.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.4" section-title="Rename"
                  section-pointer="id-rename"/>
               <state time="0">
                  <query name="id-rename-expr-010" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context"
                     >employeesNIST</input-file>
                  <expected-error>XUST0001</expected-error>
                  <expected-error>XPTY0004</expected-error>
               </state>
            </test-case>
            <test-case name="id-rename-expr-011" FilePath="RenameExpressions/" scenario="standard"
               Creator="Carmelo Montanez">
               <description>A rename expression where the new name expression is build dynamically
                  (fn:string-join function).</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.4" section-title="Rename"
                  section-pointer="id-rename"/>
               <state time="0">
                  <query name="id-rename-expr-011" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
               </state>
               <state time="1">
                  <query name="id-rename-expr-011-test" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="Fragment"
                     >id-rename-expr-011.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-rename-expr-012" FilePath="RenameExpressions/"
               scenario="runtime-error" Creator="Carmelo Montanez">
               <description>A rename expression where the target expression evaluates to a
                  number.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.4" section-title="Rename"
                  section-pointer="id-rename"/>
               <state time="0">
                  <query name="id-rename-expr-012" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context"
                     >employeesNIST</input-file>
                  <expected-error>XUTY0012</expected-error>
               </state>
            </test-case>
            <test-case name="id-rename-expr-013" FilePath="RenameExpressions/"
               scenario="runtime-error" Creator="Carmelo Montanez">
               <description>A rename expression where the newname expression evaluates to a
                  number.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.4" section-title="Rename"
                  section-pointer="id-rename"/>
               <state time="0">
                  <query name="id-rename-expr-013" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context"
                     >employeesNIST</input-file>
                  <expected-error>XPTY0004</expected-error>
               </state>
            </test-case>
            <test-case name="id-rename-expr-014" FilePath="RenameExpressions/" scenario="standard"
               Creator="Carmelo Montanez">
               <description>A rename expression where the target expression is a complex
                  one.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.4" section-title="Rename"
                  section-pointer="id-rename"/>
               <state time="0">
                  <query name="id-rename-expr-014" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
               </state>
               <state time="1">
                  <query name="id-rename-expr-014-test" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="Fragment"
                     >id-rename-expr-014.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-rename-expr-015" FilePath="RenameExpressions/"
               scenario="runtime-error" Creator="Carmelo Montanez">
               <description>A rename expression where the target expression evaluates to a sequence
                  of two attribute nodes.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.4" section-title="Rename"
                  section-pointer="id-rename"/>
               <state time="0">
                  <query name="id-rename-expr-015" date="2007-08-02"/>
                  <input-file role="principal-data" variable="input-context"
                     >employeesNIST</input-file>
                  <expected-error>XUTY0012</expected-error>
               </state>
            </test-case>
            <test-case name="id-rename-expr-016" FilePath="RenameExpressions/" scenario="standard"
               Creator="Carmelo Montanez">
               <description>A rename expression, where the new name expression uses fn:concat
                  function.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.4" section-title="Rename"
                  section-pointer="id-rename"/>
               <state time="0">
                  <query name="id-rename-expr-016" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
               </state>
               <state time="1">
                  <query name="id-rename-expr-016-test" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="Fragment"
                     >id-rename-expr-016.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-rename-expr-017" FilePath="RenameExpressions/" scenario="standard"
               Creator="Carmelo Montanez">
               <description>A rename expression, where the new name expression uses fn:substring
                  function.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.4" section-title="Rename"
                  section-pointer="id-rename"/>
               <state time="0">
                  <query name="id-rename-expr-017" date="2007-08-09"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
               </state>
               <state time="1">
                  <query name="id-rename-expr-017-test" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="Fragment"
                     >id-rename-expr-017.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-rename-expr-018" FilePath="RenameExpressions/" scenario="standard"
               Creator="Carmelo Montanez">
               <description>A rename expression, where the new name expression is a transform
                  expression that returns a node. The fn:name function is used to retrieve the name
                  of the node.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.4" section-title="Rename"
                  section-pointer="id-rename"/>
               <state time="0">
                  <query name="id-rename-expr-018" date="2007-08-09"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
               </state>
               <state time="1">
                  <query name="id-rename-expr-018-test" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="Fragment"
                     >id-rename-expr-018.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-rename-expr-019" FilePath="RenameExpressions/"
               scenario="runtime-error" Creator="Carmelo Montanez">
               <description>A rename expression where the target expression is a comment
                  node.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.4" section-title="Rename"
                  section-pointer="id-rename"/>
               <state time="0">
                  <query name="id-rename-expr-019" date="2007-08-09"/>
                  <input-file role="principal-data" variable="input-context"
                     >employeesNIST</input-file>
                  <expected-error>XUTY0012</expected-error>
               </state>
            </test-case>
            <test-case name="id-rename-expr-020" FilePath="RenameExpressions/"
               scenario="runtime-error" Creator="Carmelo Montanez">
               <description>A rename expression where the new name expression is a comment
                  node.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.4" section-title="Rename"
                  section-pointer="id-rename"/>
               <state time="0">
                  <query name="id-rename-expr-020" date="2007-08-09"/>
                  <input-file role="principal-data" variable="input-context"
                     >employeesNIST</input-file>
                  <expected-error>XQDY0074</expected-error>
               </state>
            </test-case>
            <test-case name="id-rename-expr-021" FilePath="RenameExpressions/" scenario="standard"
               Creator="Andrew Eisenberg">
               <description>Rename a document node.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.4" section-title="Rename"
                  section-pointer="id-rename"/>
               <state time="0">
                  <query name="id-rename-expr-021" date="2008-10-21"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <expected-error>XUTY0012</expected-error>
               </state>
            </test-case>
            <test-case name="id-rename-expr-022" FilePath="RenameExpressions/" scenario="standard"
               Creator="Andrew Eisenberg">
               <description>Rename a text node.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.4" section-title="Rename"
                  section-pointer="id-rename"/>
               <state time="0">
                  <query name="id-rename-expr-022" date="2008-10-21"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <expected-error>XUTY0012</expected-error>
               </state>
            </test-case>
            <test-case name="id-rename-expr-023" FilePath="RenameExpressions/"
               scenario="runtime-error" Creator="Andrew Eisenberg">
               <description>Rename an element using a sequence.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.4" section-title="Rename"
                  section-pointer="id-rename"/>
               <state time="0">
                  <query name="id-rename-expr-023" date="2008-10-21"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <expected-error>XPTY0004</expected-error>
               </state>
            </test-case>
            <test-case name="id-rename-expr-024" FilePath="RenameExpressions/"
               scenario="runtime-error" Creator="Andrew Eisenberg">
               <description>Rename an element using a sequence.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.4" section-title="Rename"
                  section-pointer="id-rename"/>
               <state time="0">
                  <query name="id-rename-expr-024" date="2008-10-21"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <expected-error>XPTY0004</expected-error>
               </state>
            </test-case>
            <test-case name="id-rename-expr-025" FilePath="RenameExpressions/"
               scenario="runtime-error" Creator="Andrew Eisenberg">
               <description>Rename an attribute using a number.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.4" section-title="Rename"
                  section-pointer="id-rename"/>
               <state time="0">
                  <query name="id-rename-expr-025" date="2008-10-21"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <expected-error>XPTY0004</expected-error>
               </state>
            </test-case>
            <test-case name="id-rename-expr-026" FilePath="RenameExpressions/"
               scenario="runtime-error" Creator="Andrew Eisenberg">
               <description>Rename an attribute using an invalid NCName.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.4" section-title="Rename"
                  section-pointer="id-rename"/>
               <state time="0">
                  <query name="id-rename-expr-026" date="2008-10-21"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <expected-error>XQDY0074</expected-error>
               </state>
            </test-case>
            <test-case name="id-rename-expr-027" FilePath="RenameExpressions/"
               scenario="runtime-error" Creator="Andrew Eisenberg">
               <description>Rename an element using an invalid QName.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.4" section-title="Rename"
                  section-pointer="id-rename"/>
               <state time="0">
                  <query name="id-rename-expr-027" date="2008-10-21"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <expected-error>XQDY0074</expected-error>
               </state>
            </test-case>
            <test-case name="id-rename-expr-028" FilePath="RenameExpressions/"
               scenario="runtime-error" Creator="Andrew Eisenberg">
               <description>Rename an attribute using an invalid QName.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.4" section-title="Rename"
                  section-pointer="id-rename"/>
               <state time="0">
                  <query name="id-rename-expr-028" date="2008-10-21"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <expected-error>XQDY0074</expected-error>
               </state>
            </test-case>
            <test-case name="id-rename-expr-029" FilePath="RenameExpressions/" scenario="standard"
               Creator="Andrew Eisenberg">
               <description>Rename an element using a QName.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.4" section-title="Rename"
                  section-pointer="id-rename"/>
               <state time="0">
                  <query name="id-rename-expr-029" date="2008-10-21"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
               </state>
               <state time="1">
                  <query name="id-rename-expr-029-test" date="2008-10-21"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="XML">id-rename-expr-029.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-rename-expr-030" FilePath="RenameExpressions/" scenario="standard"
               Creator="Andrew Eisenberg">
               <description>Rename an attribute using a QName.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.4" section-title="Rename"
                  section-pointer="id-rename"/>
               <state time="0">
                  <query name="id-rename-expr-030" date="2008-10-21"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
               </state>
               <state time="1">
                  <query name="id-rename-expr-030-test" date="2008-10-21"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="XML">id-rename-expr-030.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-rename-expr-031" FilePath="RenameExpressions/" scenario="standard"
               Creator="Andrew Eisenberg">
               <description>Rename an element using a QName.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.4" section-title="Rename"
                  section-pointer="id-rename"/>
               <state time="0">
                  <query name="id-rename-expr-031" date="2008-10-21"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
               </state>
               <state time="1">
                  <query name="id-rename-expr-031-test" date="2008-10-21"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="XML">id-rename-expr-031.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-rename-expr-032" FilePath="RenameExpressions/" scenario="standard"
               Creator="Andrew Eisenberg">
               <description>Rename an attribute using a QName.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.4" section-title="Rename"
                  section-pointer="id-rename"/>
               <state time="0">
                  <query name="id-rename-expr-032" date="2008-10-21"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
               </state>
               <state time="1">
                  <query name="id-rename-expr-032-test" date="2008-10-21"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="XML">id-rename-expr-032.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-rename-expr-033" FilePath="RenameExpressions/" scenario="standard"
               Creator="Andrew Eisenberg">
               <description>Check namepsace propogation when renaming an element.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.4" section-title="Rename"
                  section-pointer="id-rename"/>
               <state time="0">
                  <query name="id-rename-expr-033" date="2008-12-18"/>
                  <input-file role="principal-data" variable="input-context">emptydoc</input-file>
                  <output-file role="principal" compare="Text">id-rename-expr-033a.txt</output-file>
               </state>
            </test-case>
            <test-case name="id-rename-expr-034" FilePath="RenameExpressions/" scenario="standard"
               Creator="Andrew Eisenberg">
               <description>Check namepsace propogation when renaming an attribute.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.4" section-title="Rename"
                  section-pointer="id-rename"/>
               <state time="0">
                  <query name="id-rename-expr-034" date="2008-12-18"/>
                  <input-file role="principal-data" variable="input-context">emptydoc</input-file>
                  <output-file role="principal" compare="Text">id-rename-expr-034a.txt</output-file>
               </state>
            </test-case>
            <test-case name="id-rename-expr-033-no-inherit" FilePath="RenameExpressions/"
               scenario="standard" Creator="Josh Spiegel">
               <description>Check namepsace propogation when renaming an element.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.4" section-title="Rename"
                  section-pointer="id-rename"/>
               <state time="0">
                  <query name="id-rename-expr-033-no-inherit" date="2010-04-02"/>
                  <input-file role="principal-data" variable="input-context">emptydoc</input-file>
                  <output-file role="principal" compare="Text"
                     >id-rename-expr-033-no-inherit.txt</output-file>
               </state>
            </test-case>
            <test-case name="id-rename-expr-034-no-inherit" FilePath="RenameExpressions/"
               scenario="standard" Creator="Josh Spiegel">
               <description>Check namepsace propogation when renaming an attribute.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.4" section-title="Rename"
                  section-pointer="id-rename"/>
               <state time="0">
                  <query name="id-rename-expr-034-no-inherit" date="2010-04-02"/>
                  <input-file role="principal-data" variable="input-context">emptydoc</input-file>
                  <output-file role="principal" compare="Text"
                     >id-rename-expr-034-no-inherit.txt</output-file>
               </state>
            </test-case>
            <test-case name="id-rename-expr-035" FilePath="RenameExpressions/" scenario="standard"
               Creator="Michael Kay">
               <description>Rename an element to be in a namespace (the default
                  namespace)</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.4" section-title="Rename"
                  section-pointer="id-rename"/>
               <state time="0">
                  <query name="id-rename-expr-035" date="2010-02-20"/>
                  <input-file role="principal-data" variable="input-context">emptydoc</input-file>
                  <output-file role="principal" compare="XML">id-rename-expr-035.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-rename-expr-036" FilePath="RenameExpressions/" scenario="standard"
               Creator="Michael Kay">
               <description>Rename an element to be in a namespace (with a prefix)</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.4" section-title="Rename"
                  section-pointer="id-rename"/>
               <state time="0">
                  <query name="id-rename-expr-036" date="2010-02-20"/>
                  <input-file role="principal-data" variable="input-context">emptydoc</input-file>
                  <output-file role="principal" compare="XML">id-rename-expr-036.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-rename-expr-037" FilePath="RenameExpressions/" scenario="standard"
               Creator="Michael Kay">
               <description>Rename an attribute to be in a namespace (with a prefix)</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.4" section-title="Rename"
                  section-pointer="id-rename"/>
               <state time="0">
                  <query name="id-rename-expr-037" date="2010-02-20"/>
                  <input-file role="principal-data" variable="input-context">emptydoc</input-file>
                  <output-file role="principal" compare="XML">id-rename-expr-037.xml</output-file>
               </state>
            </test-case>
            <test-case name="complex-renames-q1" FilePath="RenameExpressions/" scenario="standard"
               Creator="John Snelson">
               <description>Rename all PIs with target "a-pi".</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.4" section-title="Rename"
                  section-pointer="id-rename"/>
               <spec-citation spec="XQUPDATE" section-number="2.5.1"
                  section-title="FLWOR Expression" section-pointer="id-flwor-expr"/>
               <state time="0">
                  <query name="complex-renames-q1" date="2007-10-23"/>
                  <input-file role="principal-data" variable="input-context">TopMany</input-file>
               </state>
               <state time="1">
                  <query name="complex-renames-q1-test" date="2007-10-23"/>
                  <input-file role="principal-data" variable="input-context">TopMany</input-file>
                  <output-file role="principal" compare="Fragment"
                     >complex-renames-q1.xml</output-file>
               </state>
               <state time="2">
                  <query name="complex-renames-q1-test2" date="2007-10-23"/>
                  <input-file role="principal-data" variable="input-context">TopMany</input-file>
                  <output-file role="principal" compare="Fragment"
                     >complex-renames-q1-2.xml</output-file>
               </state>
            </test-case>
            <test-case name="complex-renames-q5" FilePath="RenameExpressions/" scenario="standard"
               Creator="John Snelson">
               <description>Rename the element called "far-east".</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.4" section-title="Rename"
                  section-pointer="id-rename"/>
               <state time="0">
                  <query name="complex-renames-q5" date="2007-10-23"/>
                  <input-file role="principal-data" variable="input-context">TopMany</input-file>
               </state>
               <state time="1">
                  <query name="complex-renames-q5-test" date="2007-10-23"/>
                  <input-file role="principal-data" variable="input-context">TopMany</input-file>
                  <output-file role="principal" compare="Fragment"
                     >complex-renames-q5.xml</output-file>
               </state>
               <state time="2">
                  <query name="complex-renames-q5-test2" date="2007-10-23"/>
                  <input-file role="principal-data" variable="input-context">TopMany</input-file>
                  <output-file role="principal" compare="Fragment"
                     >complex-renames-q5-2.xml</output-file>
               </state>
            </test-case>
            <test-case name="complex-renames-q6" FilePath="RenameExpressions/" scenario="standard"
               Creator="John Snelson">
               <description>Rename all attributes called "mark".</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.4" section-title="Rename"
                  section-pointer="id-rename"/>
               <spec-citation spec="XQUPDATE" section-number="2.5.1"
                  section-title="FLWOR Expression" section-pointer="id-flwor-expr"/>
               <state time="0">
                  <query name="complex-renames-q6" date="2007-10-23"/>
                  <input-file role="principal-data" variable="input-context">TopMany</input-file>
               </state>
               <state time="1">
                  <query name="complex-renames-q6-test" date="2007-10-23"/>
                  <input-file role="principal-data" variable="input-context">TopMany</input-file>
                  <output-file role="principal" compare="Fragment"
                     >complex-renames-q6.xml</output-file>
               </state>
               <state time="2">
                  <query name="complex-renames-q6-test2" date="2007-10-23"/>
                  <input-file role="principal-data" variable="input-context">TopMany</input-file>
                  <output-file role="principal" compare="Fragment"
                     >complex-renames-q6-2.xml</output-file>
               </state>
            </test-case>
            <test-case name="complex-renames-q7" FilePath="RenameExpressions/" scenario="standard"
               Creator="John Snelson">
               <description>Rename all attributes on the "west" element.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.4" section-title="Rename"
                  section-pointer="id-rename"/>
               <spec-citation spec="XQUPDATE" section-number="2.5.1"
                  section-title="FLWOR Expression" section-pointer="id-flwor-expr"/>
               <state time="0">
                  <query name="complex-renames-q7" date="2007-10-23"/>
                  <input-file role="principal-data" variable="input-context">TopMany</input-file>
               </state>
               <state time="1">
                  <query name="complex-renames-q7-test" date="2007-10-23"/>
                  <input-file role="principal-data" variable="input-context">TopMany</input-file>
                  <output-file role="principal" compare="Fragment"
                     >complex-renames-q7.xml</output-file>
               </state>
               <state time="2">
                  <query name="complex-renames-q7-test2" date="2007-10-23"/>
                  <input-file role="principal-data" variable="input-context">TopMany</input-file>
                  <output-file role="principal" compare="Fragment"
                     >complex-renames-q7-2.xml</output-file>
               </state>
            </test-case>
            <test-case name="complex-renames-q8" FilePath="RenameExpressions/" scenario="standard"
               Creator="John Snelson">
               <description>Rename the attributes names "west-attr-2", "center-attr-2", and
                  "south-attr-2".</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.4" section-title="Rename"
                  section-pointer="id-rename"/>
               <spec-citation spec="XQUPDATE" section-number="2.5.1"
                  section-title="FLWOR Expression" section-pointer="id-flwor-expr"/>
               <state time="0">
                  <query name="complex-renames-q8" date="2007-10-23"/>
                  <input-file role="principal-data" variable="input-context">TopMany</input-file>
               </state>
               <state time="1">
                  <query name="complex-renames-q8-test" date="2007-10-23"/>
                  <input-file role="principal-data" variable="input-context">TopMany</input-file>
                  <output-file role="principal" compare="Fragment"
                     >complex-renames-q8.xml</output-file>
               </state>
               <state time="2">
                  <query name="complex-renames-q8-test2" date="2007-10-23"/>
                  <input-file role="principal-data" variable="input-context">TopMany</input-file>
                  <output-file role="principal" compare="Fragment"
                     >complex-renames-q8-2.xml</output-file>
               </state>
            </test-case>
         </test-group>
         <test-group name="TransformExpressions">
            <GroupInfo>
               <title>Transform Expressions</title>
               <description/>
            </GroupInfo>
            <test-case name="id-transform-expr-01" FilePath="TransformExpressions/"
               scenario="standard" Creator="Carmelo Montanez">
               <description>Evaluates a transform expression with modify clause set to empty
                  sequence.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.5" section-title="Transform"
                  section-pointer="id-transform"/>
               <state time="0">
                  <query name="id-transform-expr-01" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="Fragment"
                     >id-transform-expr-01.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-transform-expr-02" FilePath="TransformExpressions/"
               scenario="standard" Creator="Carmelo Montanez">
               <description>Evaluates a transform expression with modify clause set to a delete
                  expression.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.5" section-title="Transform"
                  section-pointer="id-transform"/>
               <state time="0">
                  <query name="id-transform-expr-02" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="Fragment"
                     >id-transform-expr-02.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-transform-expr-03" FilePath="TransformExpressions/"
               scenario="standard" Creator="Carmelo Montanez">
               <description>Evaluates a transform expression with modify clause set to a rename
                  expression.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.5" section-title="Transform"
                  section-pointer="id-transform"/>
               <state time="0">
                  <query name="id-transform-expr-03" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="Fragment"
                     >id-transform-expr-03.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-transform-expr-04" FilePath="TransformExpressions/"
               scenario="standard" Creator="Carmelo Montanez">
               <description>Evaluates a transform expression with modify clause set to an insert
                  expression.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.5" section-title="Transform"
                  section-pointer="id-transform"/>
               <state time="0">
                  <query name="id-transform-expr-04" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="Fragment"
                     >id-transform-expr-04.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-transform-expr-05" FilePath="TransformExpressions/"
               scenario="standard" Creator="Carmelo Montanez">
               <description>Evaluates a transform expression with modify clause set to a replace
                  expression.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.5" section-title="Transform"
                  section-pointer="id-transform"/>
               <state time="0">
                  <query name="id-transform-expr-05" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="Fragment"
                     >id-transform-expr-05.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-transform-expr-06" FilePath="TransformExpressions/"
               scenario="runtime-error" Creator="Carmelo Montanez">
               <description>Evaluates a transform expression where multiple element nodes are
                  bounded.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.5" section-title="Transform"
                  section-pointer="id-transform"/>
               <state time="0">
                  <query name="id-transform-expr-06" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="Fragment"
                     >id-transform-expr-06.xml</output-file>
                  <expected-error>XUTY0013</expected-error>
               </state>
            </test-case>
            <test-case name="id-transform-expr-07" FilePath="TransformExpressions/"
               scenario="standard" Creator="Carmelo Montanez">
               <description>Evaluates a transform expression where an attribute is
                  transformed.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.5" section-title="Transform"
                  section-pointer="id-transform"/>
               <state time="0">
                  <query name="id-transform-expr-07" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="Fragment"
                     >id-transform-expr-07.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-transform-expr-08" FilePath="TransformExpressions/"
               scenario="standard" Creator="Carmelo Montanez">
               <description>Evaluates a transform expression where a comment is
                  transformed.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.5" section-title="Transform"
                  section-pointer="id-transform"/>
               <state time="0">
                  <query name="id-transform-expr-08" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="Fragment"
                     >id-transform-expr-08.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-transform-expr-09" FilePath="TransformExpressions/"
               scenario="runtime-error" Creator="Carmelo Montanez">
               <description>Evaluates a transform expression where the modify clause contains a call
                  to fn:error()</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.5" section-title="Transform"
                  section-pointer="id-transform"/>
               <state time="0">
                  <query name="id-transform-expr-09" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <expected-error>FOER0000</expected-error>
               </state>
            </test-case>
            <test-case name="id-transform-expr-010" FilePath="TransformExpressions/"
               scenario="standard" Creator="Carmelo Montanez">
               <description>Evaluates a transform expression where two variables are bounded and
                  only one is transformed.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.5" section-title="Transform"
                  section-pointer="id-transform"/>
               <state time="0">
                  <query name="id-transform-expr-010" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="Fragment"
                     >id-transform-expr-010.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-transform-expr-011" FilePath="TransformExpressions/"
               scenario="standard" Creator="Carmelo Montanez">
               <description>Evaluates a transform expression where two variables are bounded and
                  both are transformed.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.5" section-title="Transform"
                  section-pointer="id-transform"/>
               <state time="0">
                  <query name="id-transform-expr-011" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="Fragment"
                     >id-transform-expr-011.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-transform-expr-012" FilePath="TransformExpressions/"
               scenario="runtime-error" Creator="Carmelo Montanez">
               <description>Evaluates a transform expression where the source expression is an
                  updating expression.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.5" section-title="Transform"
                  section-pointer="id-transform"/>
               <state time="0">
                  <query name="id-transform-expr-012" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context"
                     >employeesNIST</input-file>
                  <expected-error>XUST0001</expected-error>
               </state>
            </test-case>
            <test-case name="id-transform-expr-013" FilePath="TransformExpressions/"
               scenario="runtime-error" Creator="Carmelo Montanez">
               <description>Evaluates a transform expression where the modify clause contains a
                  non-updating expression.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.5" section-title="Transform"
                  section-pointer="id-transform"/>
               <state time="0">
                  <query name="id-transform-expr-013" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context"
                     >employeesNIST</input-file>
                  <expected-error>XUST0002</expected-error>
               </state>
            </test-case>
            <test-case name="id-transform-expr-014" FilePath="TransformExpressions/"
               scenario="runtime-error" Creator="Carmelo Montanez">
               <description>Evaluates a transform expression where the return expression contains an
                  updating expression.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.5" section-title="Transform"
                  section-pointer="id-transform"/>
               <state time="0">
                  <query name="id-transform-expr-014" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context"
                     >employeesNIST</input-file>
                  <expected-error>XUST0001</expected-error>
               </state>
            </test-case>
            <test-case name="id-transform-expr-015" FilePath="TransformExpressions/"
               scenario="runtime-error" Creator="Carmelo Montanez">
               <description>Evaluates a transform expression the pending update list contains a node
                  that was not created within this transform expression.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.5" section-title="Transform"
                  section-pointer="id-transform"/>
               <state time="0">
                  <query name="id-transform-expr-015" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context"
                     >employeesNIST</input-file>
                  <expected-error>XUDY0014</expected-error>
               </state>
            </test-case>
            <test-case name="id-transform-expr-016" FilePath="TransformExpressions/"
               scenario="standard" Creator="Carmelo Montanez">
               <description>Evaluates a transform expression, which inserts a node and deletes a
                  node with the same name.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.5" section-title="Transform"
                  section-pointer="id-transform"/>
               <state time="0">
                  <query name="id-transform-expr-016" date="2007-07-27"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="Fragment"
                     >id-transform-expr-016.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-transform-expr-017" FilePath="TransformExpressions/"
               scenario="standard" Creator="Carmelo Montanez">
               <description>Evaluates a transform expression, which deletes a node and insert a node
                  with the same name.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.5" section-title="Transform"
                  section-pointer="id-transform"/>
               <state time="0">
                  <query name="id-transform-expr-017" date="2007-07-27"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="Fragment"
                     >id-transform-expr-017.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-transform-expr-018" FilePath="TransformExpressions/"
               scenario="runtime-error" Creator="Carmelo Montanez">
               <description>Evaluates a transform expression, which contains an embedded Transform
                  expression.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.5" section-title="Transform"
                  section-pointer="id-transform"/>
               <state time="0">
                  <query name="id-transform-expr-018" date="2007-07-31"/>
                  <input-file role="principal-data" variable="input-context"
                     >employeesNIST</input-file>
                  <expected-error>XUST0002</expected-error>
               </state>
            </test-case>
            <test-case name="id-transform-expr-019" FilePath="TransformExpressions/"
               scenario="runtime-error" Creator="Carmelo Montanez">
               <description>Evaluates a transform expression, where an element node is affected by
                  more than one rename expression.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.5" section-title="Transform"
                  section-pointer="id-transform"/>
               <spec-citation spec="XQUPDATE" section-number="2.4.6"
                  section-title="Compatibility of Updating Expressions"
                  section-pointer="id-compatibility"/>
               <state time="0">
                  <query name="id-transform-expr-019" date="2007-07-31"/>
                  <input-file role="principal-data" variable="input-context"
                     >employeesNIST</input-file>
                  <expected-error>XUDY0015</expected-error>
               </state>
            </test-case>
            <test-case name="id-transform-expr-020" FilePath="TransformExpressions/"
               scenario="runtime-error" Creator="Carmelo Montanez">
               <description>Evaluates a transform expression, where an element node is affected by
                  more than one replace expression (no "value of" being specified.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.5" section-title="Transform"
                  section-pointer="id-transform"/>
               <spec-citation spec="XQUPDATE" section-number="2.4.6"
                  section-title="Compatibility of Updating Expressions"
                  section-pointer="id-compatibility"/>
               <state time="0">
                  <query name="id-transform-expr-020" date="2007-07-31"/>
                  <input-file role="principal-data" variable="input-context"
                     >employeesNIST</input-file>
                  <expected-error>XUDY0016</expected-error>
               </state>
            </test-case>
            <test-case name="id-transform-expr-021" FilePath="TransformExpressions/"
               scenario="runtime-error" Creator="Carmelo Montanez">
               <description>Evaluates a transform expression, where an attribute node is affected by
                  more than one rename expression.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.5" section-title="Transform"
                  section-pointer="id-transform"/>
               <spec-citation spec="XQUPDATE" section-number="2.4.6"
                  section-title="Compatibility of Updating Expressions"
                  section-pointer="id-compatibility"/>
               <state time="0">
                  <query name="id-transform-expr-021" date="2007-08-01"/>
                  <input-file role="principal-data" variable="input-context"
                     >employeesNIST</input-file>
                  <expected-error>XUDY0015</expected-error>
               </state>
            </test-case>
            <test-case name="id-transform-expr-022" FilePath="TransformExpressions/"
               scenario="runtime-error" Creator="Carmelo Montanez">
               <description>Evaluates a transform expression, where an attribute node is affected by
                  more than one replace expression (no "value of" being specified.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.5" section-title="Transform"
                  section-pointer="id-transform"/>
               <spec-citation spec="XQUPDATE" section-number="2.4.6"
                  section-title="Compatibility of Updating Expressions"
                  section-pointer="id-compatibility"/>
               <state time="0">
                  <query name="id-transform-expr-022" date="2007-08-01"/>
                  <input-file role="principal-data" variable="input-context"
                     >employeesNIST</input-file>
                  <expected-error>XUDY0016</expected-error>
               </state>
            </test-case>
            <test-case name="id-transform-expr-023" FilePath="TransformExpressions/"
               scenario="runtime-error" Creator="Carmelo Montanez">
               <description>Evaluates a transform expression, where an attribute node is affected by
                  more than one replace value expression.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.5" section-title="Transform"
                  section-pointer="id-transform"/>
               <spec-citation spec="XQUPDATE" section-number="2.4.6"
                  section-title="Compatibility of Updating Expressions"
                  section-pointer="id-compatibility"/>
               <state time="0">
                  <query name="id-transform-expr-023" date="2007-08-01"/>
                  <input-file role="principal-data" variable="input-context"
                     >employeesNIST</input-file>
                  <expected-error>XUDY0017</expected-error>
               </state>
            </test-case>
            <test-case name="id-transform-expr-024" FilePath="TransformExpressions/"
               scenario="runtime-error" Creator="Carmelo Montanez">
               <description>Evaluates a transform expression, where an element node is affected by
                  more than one replace value expression.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.5" section-title="Transform"
                  section-pointer="id-transform"/>
               <spec-citation spec="XQUPDATE" section-number="2.4.6"
                  section-title="Compatibility of Updating Expressions"
                  section-pointer="id-compatibility"/>
               <state time="0">
                  <query name="id-transform-expr-024" date="2007-08-01"/>
                  <input-file role="principal-data" variable="input-context"
                     >employeesNIST</input-file>
                  <expected-error>XUDY0017</expected-error>
               </state>
            </test-case>
            <test-case name="id-transform-expr-025" FilePath="TransformExpressions/"
               scenario="standard" Creator="Carmelo Montanez">
               <description>Evaluates a transform expression, where an Element is modified by a
                  "replace" expression and of its children is also updated by a "replace with value
                  of" expression.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.5" section-title="Transform"
                  section-pointer="id-transform"/>
               <state time="0">
                  <query name="id-transform-expr-025" date="2007-08-01"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="Fragment"
                     >id-transform-expr-025.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-transform-expr-026" FilePath="TransformExpressions/"
               scenario="runtime-error" Creator="Carmelo Montanez">
               <description>Evaluates a transform expression, where the source expression results in
                  more than one single element node.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.5" section-title="Transform"
                  section-pointer="id-transform"/>
               <state time="0">
                  <query name="id-transform-expr-026" date="2007-08-02"/>
                  <input-file role="principal-data" variable="input-context"
                     >employeesNIST</input-file>
                  <expected-error>XUTY0013</expected-error>
               </state>
            </test-case>
            <test-case name="id-transform-expr-027" FilePath="TransformExpressions/"
               scenario="runtime-error" Creator="Carmelo Montanez">
               <description>Evaluates a transform expression, where the source expression results in
                  more than one single attribute node.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.5" section-title="Transform"
                  section-pointer="id-transform"/>
               <state time="0">
                  <query name="id-transform-expr-027" date="2007-08-02"/>
                  <input-file role="principal-data" variable="input-context"
                     >employeesNIST</input-file>
                  <expected-error>XUTY0013</expected-error>
               </state>
            </test-case>
            <test-case name="id-transform-expr-028" FilePath="TransformExpressions/"
               scenario="standard" Creator="Jenise Reyes">
               <description>Evaluates a transform expression, which inserts a node to insure the
                  original data is not modified.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.5" section-title="Transform"
                  section-pointer="id-transform"/>
               <state time="0">
                  <query name="id-transform-expr-028" date="2007-10-12"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
               </state>
               <state time="1">
                  <query name="id-transform-expr-028-test" date="2007-10-12"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="Fragment"
                     >id-transform-expr-028.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-transform-expr-029" FilePath="TransformExpressions/"
               scenario="standard" Creator="Jenise Reyes">
               <description>Evaluates a transform expression, which deletes a node to insure the
                  original data is not modified.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.5" section-title="Transform"
                  section-pointer="id-transform"/>
               <state time="0">
                  <query name="id-transform-expr-029" date="2007-10-12"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
               </state>
               <state time="1">
                  <query name="id-transform-expr-029-test" date="2007-10-12"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="Fragment"
                     >id-transform-expr-029.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-transform-expr-030" FilePath="TransformExpressions/"
               scenario="standard" Creator="Jenise Reyes">
               <description>Evaluates a transform expression, which contains a replace expression to
                  insure the original data is not modified.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.5" section-title="Transform"
                  section-pointer="id-transform"/>
               <state time="0">
                  <query name="id-transform-expr-030" date="2007-10-12"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
               </state>
               <state time="1">
                  <query name="id-transform-expr-030-test" date="2007-10-12"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="Fragment"
                     >id-transform-expr-030.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-transform-expr-031" FilePath="TransformExpressions/"
               scenario="standard" Creator="Jenise Reyes">
               <description>Evaluates a transform expression, which contains a rename expression to
                  insure the original data is not modified.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.5" section-title="Transform"
                  section-pointer="id-transform"/>
               <state time="0">
                  <query name="id-transform-expr-031" date="2007-10-12"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
               </state>
               <state time="1">
                  <query name="id-transform-expr-031-test" date="2007-10-12"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="Fragment"
                     >id-transform-expr-031.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-transform-expr-032" FilePath="TransformExpressions/"
               scenario="standard" Creator="Andrew Eisenberg">
               <description>Transform with copy binding to an empty sequence.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.5" section-title="Transform"
                  section-pointer="id-transform"/>
               <state time="0">
                  <query name="id-transform-expr-032" date="2008-10-21"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <expected-error>XUTY0013</expected-error>
               </state>
            </test-case>
            <test-case name="id-transform-expr-033" FilePath="TransformExpressions/"
               scenario="standard" Creator="Andrew Eisenberg">
               <description>Transform with copy binding to an empty sequence.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.5" section-title="Transform"
                  section-pointer="id-transform"/>
               <state time="0">
                  <query name="id-transform-expr-033" date="2008-10-21"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="XML"
                     >id-transform-expr-033.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-transform-expr-034" FilePath="TransformExpressions/"
               scenario="standard" Creator="Andrew Eisenberg">
               <description>Transform a document.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.5" section-title="Transform"
                  section-pointer="id-transform"/>
               <state time="0">
                  <query name="id-transform-expr-034" date="2008-10-21"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="XML"
                     >id-transform-expr-034.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-transform-expr-035" FilePath="TransformExpressions/"
               scenario="standard" Creator="Andrew Eisenberg">
               <description>Transform an attribute.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.5" section-title="Transform"
                  section-pointer="id-transform"/>
               <state time="0">
                  <query name="id-transform-expr-035" date="2008-10-21"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="XML"
                     >id-transform-expr-035.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-transform-expr-036" FilePath="TransformExpressions/"
               scenario="standard" Creator="Andrew Eisenberg">
               <description>Transform a text node.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.5" section-title="Transform"
                  section-pointer="id-transform"/>
               <state time="0">
                  <query name="id-transform-expr-036" date="2008-10-21"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="XML"
                     >id-transform-expr-036.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-transform-expr-037" FilePath="TransformExpressions/"
               scenario="standard" Creator="Andrew Eisenberg">
               <description>Transform a comment.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.5" section-title="Transform"
                  section-pointer="id-transform"/>
               <state time="0">
                  <query name="id-transform-expr-037" date="2008-10-21"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="XML"
                     >id-transform-expr-037.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-transform-expr-038" FilePath="TransformExpressions/"
               scenario="standard" Creator="Andrew Eisenberg">
               <description>Transform a PI.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.5" section-title="Transform"
                  section-pointer="id-transform"/>
               <state time="0">
                  <query name="id-transform-expr-038" date="2008-10-21"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="XML"
                     >id-transform-expr-038.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-transform-expr-039" FilePath="TransformExpressions/"
               scenario="standard" Creator="Andrew Eisenberg">
               <description>Transform two elements copied from the same element.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.5" section-title="Transform"
                  section-pointer="id-transform"/>
               <state time="0">
                  <query name="id-transform-expr-039" date="2008-10-21"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="XML"
                     >id-transform-expr-039.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-transform-expr-040" FilePath="TransformExpressions/"
               scenario="standard" Creator="Andrew Eisenberg">
               <description>Transform a document by changing the namespaces of its
                  elements.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.5" section-title="Transform"
                  section-pointer="id-transform"/>
               <state time="0">
                  <query name="id-transform-expr-040" date="2008-10-21"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="XML"
                     >id-transform-expr-040.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-transform-expr-041" FilePath="TransformExpressions/"
               scenario="standard" Creator="Andrew Eisenberg">
               <description>Transform a document by changing the namespaces of its
                  elements.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.5" section-title="Transform"
                  section-pointer="id-transform"/>
               <state time="0">
                  <query name="id-transform-expr-041" date="2008-10-21"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="XML"
                     >id-transform-expr-041.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-transform-expr-042" FilePath="TransformExpressions/"
               scenario="standard" Creator="Andrew Eisenberg">
               <description>Copy clause creates a new element node.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.5" section-title="Transform"
                  section-pointer="id-transform"/>
               <state time="0">
                  <query name="id-transform-expr-042" date="2008-12-02"/>
                  <input-file role="principal-data" variable="input-context">books</input-file>
                  <output-file role="principal" compare="Text"
                     >id-transform-expr-042.txt</output-file>
               </state>
            </test-case>
            <test-case name="id-transform-expr-043" FilePath="TransformExpressions/"
               scenario="standard" Creator="Andrew Eisenberg">
               <description>Copy clause changes the type of the new element node.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.5" section-title="Transform"
                  section-pointer="id-transform"/>
               <state time="0">
                  <query name="id-transform-expr-043" date="2008-12-02"/>
                  <input-file role="principal-data" variable="input-context">books</input-file>
                  <output-file role="principal" compare="Text"
                     >id-transform-expr-043.txt</output-file>
               </state>
            </test-case>
            <test-case name="id-transform-expr-044" FilePath="TransformExpressions/"
               scenario="standard" Creator="Andrew Eisenberg">
               <description>Copy clause changes the nilled property of the new element
                  node.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.5" section-title="Transform"
                  section-pointer="id-transform"/>
               <state time="0">
                  <query name="id-transform-expr-044" date="2008-12-02"/>
                  <input-file role="principal-data" variable="input-context">books2</input-file>
                  <output-file role="principal" compare="Text"
                     >id-transform-expr-044.txt</output-file>
               </state>
            </test-case>
            <test-case name="id-transform-expr-045" FilePath="TransformExpressions/"
               scenario="standard" Creator="Andrew Eisenberg">
               <description>Copy clause changes the is-idref property of the new element
                  node.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.5" section-title="Transform"
                  section-pointer="id-transform"/>
               <state time="0">
                  <query name="id-transform-expr-045" date="2008-12-02"/>
                  <input-file role="principal-data" variable="input-context">books2</input-file>
                  <output-file role="principal" compare="Text"
                     >id-transform-expr-045.txt</output-file>
               </state>
            </test-case>
            <test-case name="id-transform-expr-046" FilePath="TransformExpressions/"
               scenario="standard" Creator="Andrew Eisenberg">
               <description>Copy clause changes the is-id property of the new element
                  node.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.5" section-title="Transform"
                  section-pointer="id-transform"/>
               <state time="0">
                  <query name="id-transform-expr-046" date="2008-12-02"/>
                  <input-file role="principal-data" variable="input-context">books2</input-file>
                  <output-file role="principal" compare="Text"
                     >id-transform-expr-046.txt</output-file>
               </state>
            </test-case>
            <test-case name="id-transform-expr-047" FilePath="TransformExpressions/"
               scenario="standard" Creator="Andrew Eisenberg">
               <description>Copy clause changes the id property of a new attribute
                  node.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.5" section-title="Transform"
                  section-pointer="id-transform"/>
               <state time="0">
                  <query name="id-transform-expr-047" date="2008-12-02"/>
                  <input-file role="principal-data" variable="input-context">books</input-file>
                  <output-file role="principal" compare="Text"
                     >id-transform-expr-047.txt</output-file>
               </state>
            </test-case>
            <test-case name="id-transform-expr-048" FilePath="TransformExpressions/"
               scenario="standard" Creator="Andrew Eisenberg">
               <description>Copy clause changes the is-idrefs property of a new attribute
                  node.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.5" section-title="Transform"
                  section-pointer="id-transform"/>
               <state time="0">
                  <query name="id-transform-expr-048" date="2008-12-02"/>
                  <input-file role="principal-data" variable="input-context">books</input-file>
                  <output-file role="principal" compare="Text"
                     >id-transform-expr-048.txt</output-file>
               </state>
            </test-case>
            <test-case name="id-transform-expr-049" FilePath="TransformExpressions/"
               scenario="standard" Creator="Andrew Eisenberg">
               <description>Copy clause changes the type of a new attribute node.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.5" section-title="Transform"
                  section-pointer="id-transform"/>
               <state time="0">
                  <query name="id-transform-expr-049" date="2008-12-02"/>
                  <input-file role="principal-data" variable="input-context">books</input-file>
                  <output-file role="principal" compare="Text"
                     >id-transform-expr-049.txt</output-file>
               </state>
            </test-case>
            <test-case name="id-transform-expr-050" FilePath="TransformExpressions/"
               scenario="standard" Creator="Andrew Eisenberg">
               <description>Copy clause changes the type of an xml:id attribute node, but not the
                  is-id property.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.5" section-title="Transform"
                  section-pointer="id-transform"/>
               <state time="0">
                  <query name="id-transform-expr-050" date="2008-12-02"/>
                  <input-file role="principal-data" variable="input-context">books</input-file>
                  <output-file role="principal" compare="Text"
                     >id-transform-expr-050.txt</output-file>
               </state>
            </test-case>
            <test-case name="id-transform-expr-051" FilePath="TransformExpressions/"
               scenario="standard" Creator="Andrew Eisenberg">
               <description>The copy clause sometimes changes the in-scope-namespaces.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.5" section-title="Transform"
                  section-pointer="id-transform"/>
               <state time="0">
                  <query name="id-transform-expr-051" date="2008-12-03"/>
                  <input-file role="principal-data" variable="input-context">emptydoc</input-file>
                  <output-file role="principal" compare="Text"
                     >id-transform-expr-051.txt</output-file>
               </state>
            </test-case>
            <test-case name="id-transform-expr-052" FilePath="TransformExpressions/"
               scenario="standard" Creator="Andrew Eisenberg">
               <description>The copy clause sometimes changes the in-scope-namespaces.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.5" section-title="Transform"
                  section-pointer="id-transform"/>
               <state time="0">
                  <query name="id-transform-expr-052" date="2008-12-03"/>
                  <input-file role="principal-data" variable="input-context">emptydoc</input-file>
                  <output-file role="principal" compare="Text"
                     >id-transform-expr-052.txt</output-file>
               </state>
            </test-case>
            <test-case name="id-transform-expr-053" FilePath="TransformExpressions/"
               scenario="standard" Creator="Andrew Eisenberg">
               <description>The copy clause sometimes changes the in-scope-namespaces.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.5" section-title="Transform"
                  section-pointer="id-transform"/>
               <state time="0">
                  <query name="id-transform-expr-053" date="2008-12-03"/>
                  <input-file role="principal-data" variable="input-context">emptydoc</input-file>
                  <output-file role="principal" compare="Text"
                     >id-transform-expr-053.txt</output-file>
               </state>
            </test-case>
            <test-case name="id-transform-expr-054" FilePath="TransformExpressions/"
               scenario="standard" Creator="Andrew Eisenberg">
               <description>The copy clause sometimes changes the in-scope-namespaces.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.5" section-title="Transform"
                  section-pointer="id-transform"/>
               <state time="0">
                  <query name="id-transform-expr-054" date="2008-12-03"/>
                  <input-file role="principal-data" variable="input-context">emptydoc</input-file>
                  <output-file role="principal" compare="Text"
                     >id-transform-expr-054.txt</output-file>
               </state>
            </test-case>
            <test-case name="id-transform-expr-055" FilePath="TransformExpressions/"
               scenario="runtime-error" Creator="Andrew Eisenberg">
               <description>Within a transform, an element node is renamed more than
                  once.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.5" section-title="Transform"
                  section-pointer="id-transform"/>
               <spec-citation spec="XQUPDATE" section-number="2.4.6"
                  section-title="Compatibility of Updating Expressions"
                  section-pointer="id-compatibility"/>
               <state time="0">
                  <query name="id-transform-expr-055" date="2008-12-03"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <expected-error>XUDY0015</expected-error>
               </state>
            </test-case>
            <test-case name="id-transform-expr-056" FilePath="TransformExpressions/"
               scenario="runtime-error" Creator="Andrew Eisenberg">
               <description>Within a transform, an attribute node is renamed more than
                  once.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.5" section-title="Transform"
                  section-pointer="id-transform"/>
               <spec-citation spec="XQUPDATE" section-number="2.4.6"
                  section-title="Compatibility of Updating Expressions"
                  section-pointer="id-compatibility"/>
               <state time="0">
                  <query name="id-transform-expr-056" date="2008-12-03"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <expected-error>XUDY0015</expected-error>
               </state>
            </test-case>
            <test-case name="id-transform-expr-057" FilePath="TransformExpressions/"
               scenario="runtime-error" Creator="Andrew Eisenberg">
               <description>Within a transform, an element node is replaced more than
                  once.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.5" section-title="Transform"
                  section-pointer="id-transform"/>
               <spec-citation spec="XQUPDATE" section-number="2.4.6"
                  section-title="Compatibility of Updating Expressions"
                  section-pointer="id-compatibility"/>
               <state time="0">
                  <query name="id-transform-expr-057" date="2008-12-03"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <expected-error>XUDY0016</expected-error>
               </state>
            </test-case>
            <test-case name="id-transform-expr-058" FilePath="TransformExpressions/"
               scenario="runtime-error" Creator="Andrew Eisenberg">
               <description>Within a transform, the value of an element node is replaced more than
                  once.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.5" section-title="Transform"
                  section-pointer="id-transform"/>
               <spec-citation spec="XQUPDATE" section-number="2.4.6"
                  section-title="Compatibility of Updating Expressions"
                  section-pointer="id-compatibility"/>
               <state time="0">
                  <query name="id-transform-expr-058" date="2008-12-03"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <expected-error>XUDY0017</expected-error>
               </state>
            </test-case>
         </test-group>
         <test-group name="Compatibility">
            <GroupInfo>
               <title>Compatibility of Updating Expressions</title>
               <description/>
            </GroupInfo>
            <test-case name="compatibility-001" FilePath="Compatibility/" scenario="runtime-error"
               Creator="Andrew Eisenberg">
               <description>An element node is renamed more than once.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.6"
                  section-title="Compatibility of Updating Expressions"
                  section-pointer="id-compatibility"/>
               <state time="0">
                  <query name="compatibility-001" date="2008-10-22"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <expected-error>XUDY0015</expected-error>
               </state>
            </test-case>
            <test-case name="compatibility-002" FilePath="Compatibility/" scenario="runtime-error"
               Creator="Andrew Eisenberg">
               <description>An element node is renamed more than once.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.6"
                  section-title="Compatibility of Updating Expressions"
                  section-pointer="id-compatibility"/>
               <state time="0">
                  <query name="compatibility-002" date="2008-10-22"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <expected-error>XUDY0015</expected-error>
               </state>
            </test-case>
            <test-case name="compatibility-003" FilePath="Compatibility/" scenario="runtime-error"
               Creator="Andrew Eisenberg">
               <description>An attribute node is renamed more than once.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.6"
                  section-title="Compatibility of Updating Expressions"
                  section-pointer="id-compatibility"/>
               <state time="0">
                  <query name="compatibility-003" date="2008-10-22"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <expected-error>XUDY0015</expected-error>
               </state>
            </test-case>
            <test-case name="compatibility-004" FilePath="Compatibility/" scenario="runtime-error"
               Creator="Andrew Eisenberg">
               <description>An attribute node is renamed more than once.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.6"
                  section-title="Compatibility of Updating Expressions"
                  section-pointer="id-compatibility"/>
               <state time="0">
                  <query name="compatibility-004" date="2008-10-22"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <expected-error>XUDY0015</expected-error>
               </state>
            </test-case>
            <test-case name="compatibility-005" FilePath="Compatibility/" scenario="runtime-error"
               Creator="Andrew Eisenberg">
               <description>A PI node is renamed more than once.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.6"
                  section-title="Compatibility of Updating Expressions"
                  section-pointer="id-compatibility"/>
               <state time="0">
                  <query name="compatibility-005" date="2008-10-22"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <expected-error>XUDY0015</expected-error>
               </state>
            </test-case>
            <test-case name="compatibility-006" FilePath="Compatibility/" scenario="runtime-error"
               Creator="Andrew Eisenberg">
               <description>A PI node is renamed more than once.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.6"
                  section-title="Compatibility of Updating Expressions"
                  section-pointer="id-compatibility"/>
               <state time="0">
                  <query name="compatibility-006" date="2008-10-22"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <expected-error>XUDY0015</expected-error>
               </state>
            </test-case>
            <test-case name="compatibility-007" FilePath="Compatibility/" scenario="runtime-error"
               Creator="Andrew Eisenberg">
               <description>An element node is replaced more than once.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.6"
                  section-title="Compatibility of Updating Expressions"
                  section-pointer="id-compatibility"/>
               <state time="0">
                  <query name="compatibility-007" date="2008-10-22"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <expected-error>XUDY0016</expected-error>
               </state>
            </test-case>
            <test-case name="compatibility-008" FilePath="Compatibility/" scenario="runtime-error"
               Creator="Andrew Eisenberg">
               <description>An element node is replaced more than once.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.6"
                  section-title="Compatibility of Updating Expressions"
                  section-pointer="id-compatibility"/>
               <state time="0">
                  <query name="compatibility-008" date="2008-10-22"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <expected-error>XUDY0016</expected-error>
               </state>
            </test-case>
            <test-case name="compatibility-009" FilePath="Compatibility/" scenario="runtime-error"
               Creator="Andrew Eisenberg">
               <description>An attribute node is replaced more than once.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.6"
                  section-title="Compatibility of Updating Expressions"
                  section-pointer="id-compatibility"/>
               <state time="0">
                  <query name="compatibility-009" date="2008-10-22"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <expected-error>XUDY0016</expected-error>
               </state>
            </test-case>
            <test-case name="compatibility-010" FilePath="Compatibility/" scenario="runtime-error"
               Creator="Andrew Eisenberg">
               <description>An attribute node is replaced more than once.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.6"
                  section-title="Compatibility of Updating Expressions"
                  section-pointer="id-compatibility"/>
               <state time="0">
                  <query name="compatibility-010" date="2008-10-22"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <expected-error>XUDY0016</expected-error>
               </state>
            </test-case>
            <test-case name="compatibility-011" FilePath="Compatibility/" scenario="runtime-error"
               Creator="Andrew Eisenberg">
               <description>An text node is replaced more than once.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.6"
                  section-title="Compatibility of Updating Expressions"
                  section-pointer="id-compatibility"/>
               <state time="0">
                  <query name="compatibility-011" date="2008-10-22"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <expected-error>XUDY0016</expected-error>
               </state>
            </test-case>
            <test-case name="compatibility-012" FilePath="Compatibility/" scenario="runtime-error"
               Creator="Andrew Eisenberg">
               <description>An text node is replaced more than once.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.6"
                  section-title="Compatibility of Updating Expressions"
                  section-pointer="id-compatibility"/>
               <state time="0">
                  <query name="compatibility-012" date="2008-10-22"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <expected-error>XUDY0016</expected-error>
               </state>
            </test-case>
            <test-case name="compatibility-013" FilePath="Compatibility/" scenario="runtime-error"
               Creator="Andrew Eisenberg">
               <description>An PI node is replaced more than once.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.6"
                  section-title="Compatibility of Updating Expressions"
                  section-pointer="id-compatibility"/>
               <state time="0">
                  <query name="compatibility-013" date="2008-10-22"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <expected-error>XUDY0016</expected-error>
               </state>
            </test-case>
            <test-case name="compatibility-014" FilePath="Compatibility/" scenario="runtime-error"
               Creator="Andrew Eisenberg">
               <description>An PI node is replaced more than once.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.6"
                  section-title="Compatibility of Updating Expressions"
                  section-pointer="id-compatibility"/>
               <state time="0">
                  <query name="compatibility-014" date="2008-10-22"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <expected-error>XUDY0016</expected-error>
               </state>
            </test-case>
            <test-case name="compatibility-015" FilePath="Compatibility/" scenario="runtime-error"
               Creator="Andrew Eisenberg">
               <description>A comment node is replaced more than once.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.6"
                  section-title="Compatibility of Updating Expressions"
                  section-pointer="id-compatibility"/>
               <state time="0">
                  <query name="compatibility-015" date="2008-10-22"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <expected-error>XUDY0016</expected-error>
               </state>
            </test-case>
            <test-case name="compatibility-016" FilePath="Compatibility/" scenario="runtime-error"
               Creator="Andrew Eisenberg">
               <description>A comment node is replaced more than once.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.6"
                  section-title="Compatibility of Updating Expressions"
                  section-pointer="id-compatibility"/>
               <state time="0">
                  <query name="compatibility-016" date="2008-10-22"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <expected-error>XUDY0016</expected-error>
               </state>
            </test-case>
            <test-case name="compatibility-017" FilePath="Compatibility/" scenario="runtime-error"
               Creator="Andrew Eisenberg">
               <description>The value of an element node is replaced more than once.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.6"
                  section-title="Compatibility of Updating Expressions"
                  section-pointer="id-compatibility"/>
               <state time="0">
                  <query name="compatibility-017" date="2008-10-22"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <expected-error>XUDY0017</expected-error>
               </state>
            </test-case>
            <test-case name="compatibility-018" FilePath="Compatibility/" scenario="runtime-error"
               Creator="Andrew Eisenberg">
               <description>The value of an element node is replaced more than once.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.6"
                  section-title="Compatibility of Updating Expressions"
                  section-pointer="id-compatibility"/>
               <state time="0">
                  <query name="compatibility-018" date="2008-10-22"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <expected-error>XUDY0017</expected-error>
               </state>
            </test-case>
            <test-case name="compatibility-019" FilePath="Compatibility/" scenario="runtime-error"
               Creator="Andrew Eisenberg">
               <description>The value of an attribute node is replaced more than once.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.6"
                  section-title="Compatibility of Updating Expressions"
                  section-pointer="id-compatibility"/>
               <state time="0">
                  <query name="compatibility-019" date="2008-10-22"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <expected-error>XUDY0017</expected-error>
               </state>
            </test-case>
            <test-case name="compatibility-020" FilePath="Compatibility/" scenario="runtime-error"
               Creator="Andrew Eisenberg">
               <description>The value of an attribute node is replaced more than once.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.6"
                  section-title="Compatibility of Updating Expressions"
                  section-pointer="id-compatibility"/>
               <state time="0">
                  <query name="compatibility-020" date="2008-10-22"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <expected-error>XUDY0017</expected-error>
               </state>
            </test-case>
            <test-case name="compatibility-021" FilePath="Compatibility/" scenario="runtime-error"
               Creator="Andrew Eisenberg">
               <description>The value of a text node is replaced more than once.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.6"
                  section-title="Compatibility of Updating Expressions"
                  section-pointer="id-compatibility"/>
               <state time="0">
                  <query name="compatibility-021" date="2008-10-22"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <expected-error>XUDY0017</expected-error>
               </state>
            </test-case>
            <test-case name="compatibility-022" FilePath="Compatibility/" scenario="runtime-error"
               Creator="Andrew Eisenberg">
               <description>The value of a text node is replaced more than once.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.6"
                  section-title="Compatibility of Updating Expressions"
                  section-pointer="id-compatibility"/>
               <state time="0">
                  <query name="compatibility-022" date="2008-10-22"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <expected-error>XUDY0017</expected-error>
               </state>
            </test-case>
            <test-case name="compatibility-023" FilePath="Compatibility/" scenario="runtime-error"
               Creator="Andrew Eisenberg">
               <description>The value of a PI node is replaced more than once.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.6"
                  section-title="Compatibility of Updating Expressions"
                  section-pointer="id-compatibility"/>
               <state time="0">
                  <query name="compatibility-023" date="2008-10-22"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <expected-error>XUDY0017</expected-error>
               </state>
            </test-case>
            <test-case name="compatibility-024" FilePath="Compatibility/" scenario="runtime-error"
               Creator="Andrew Eisenberg">
               <description>The value of a PI node is replaced more than once.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.6"
                  section-title="Compatibility of Updating Expressions"
                  section-pointer="id-compatibility"/>
               <state time="0">
                  <query name="compatibility-024" date="2008-10-22"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <expected-error>XUDY0017</expected-error>
               </state>
            </test-case>
            <test-case name="compatibility-025" FilePath="Compatibility/" scenario="runtime-error"
               Creator="Andrew Eisenberg">
               <description>The value of a comment node is replaced more than once.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.6"
                  section-title="Compatibility of Updating Expressions"
                  section-pointer="id-compatibility"/>
               <state time="0">
                  <query name="compatibility-025" date="2008-10-22"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <expected-error>XUDY0017</expected-error>
               </state>
            </test-case>
            <test-case name="compatibility-026" FilePath="Compatibility/" scenario="runtime-error"
               Creator="Andrew Eisenberg">
               <description>The value of a comment node is replaced more than once.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.6"
                  section-title="Compatibility of Updating Expressions"
                  section-pointer="id-compatibility"/>
               <state time="0">
                  <query name="compatibility-026" date="2008-10-22"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <expected-error>XUDY0017</expected-error>
               </state>
            </test-case>
            <test-case name="compatibility-027" FilePath="Compatibility/" scenario="standard"
               Creator="Andrew Eisenberg">
               <description>Replace and replace value of operate on the same element.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.6"
                  section-title="Compatibility of Updating Expressions"
                  section-pointer="id-compatibility"/>
               <state time="0">
                  <query name="compatibility-027" date="2008-10-23"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
               </state>
               <state time="1">
                  <query name="compatibility-027-test" date="2008-10-23"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="XML">compatibility-027.xml</output-file>
               </state>
            </test-case>
            <test-case name="compatibility-028" FilePath="Compatibility/" scenario="standard"
               Creator="Andrew Eisenberg">
               <description>Replace and replace value of operate on the same element.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.6"
                  section-title="Compatibility of Updating Expressions"
                  section-pointer="id-compatibility"/>
               <state time="0">
                  <query name="compatibility-028" date="2008-10-23"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
               </state>
               <state time="1">
                  <query name="compatibility-028-test" date="2008-10-23"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="XML">compatibility-028.xml</output-file>
               </state>
            </test-case>
            <test-case name="compatibility-029" FilePath="Compatibility/" scenario="standard"
               Creator="Andrew Eisenberg">
               <description>Replace value of and insert operate on the same element.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.6"
                  section-title="Compatibility of Updating Expressions"
                  section-pointer="id-compatibility"/>
               <state time="0">
                  <query name="compatibility-029" date="2008-10-23"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
               </state>
               <state time="1">
                  <query name="compatibility-029-test" date="2008-10-23"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="XML">compatibility-029.xml</output-file>
               </state>
            </test-case>
            <test-case name="compatibility-030" FilePath="Compatibility/" scenario="standard"
               Creator="Andrew Eisenberg">
               <description>Replace value of and insert operate on the same element.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.6"
                  section-title="Compatibility of Updating Expressions"
                  section-pointer="id-compatibility"/>
               <state time="0">
                  <query name="compatibility-030" date="2008-10-23"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
               </state>
               <state time="1">
                  <query name="compatibility-030-test" date="2008-10-23"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="XML">compatibility-030.xml</output-file>
               </state>
            </test-case>
         </test-group>
      </test-group>
      <test-group name="ExtensionExistingFunctions">
         <GroupInfo>
            <title>Extension to Existing Expressions</title>
            <description/>
         </GroupInfo>
         <test-group name="FLWORExpression">
            <GroupInfo>
               <title>FLWOR Expressions</title>
               <description/>
            </GroupInfo>
            <test-case name="id-flwor-expr-01" FilePath="FLWORExpression/" scenario="runtime-error"
               Creator="Carmelo Montanez">
               <description>Evaluates an insert expression used with FLWOR expression where the let
                  clause is an updating expression.</description>
               <spec-citation spec="XQUPDATE" section-number="2.5.5"
                  section-title="FLWOR Expression" section-pointer="id-flwor-expr"/>
               <spec-citation spec="XQUPDATE" section-number="2.4.1" section-title="Insert"
                  section-pointer="id-insert"/>
               <state time="0">
                  <query name="id-flwor-expr-01" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context"
                     >employeesNIST</input-file>
                  <expected-error>XUST0001</expected-error>
               </state>
            </test-case>
            <test-case name="id-flwor-expr-02" FilePath="FLWORExpression/" scenario="runtime-error"
               Creator="Carmelo Montanez">
               <description>Evaluates an insert expression used with FLWOR expression where the for
                  clause is an updating expression.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.1" section-title="Insert"
                  section-pointer="id-insert"/>
               <spec-citation spec="XQUPDATE" section-number="2.5.5"
                  section-title="FLWOR Expression" section-pointer="id-flwor-expr"/>
               <state time="0">
                  <query name="id-flwor-expr-02" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context"
                     >employeesNIST</input-file>
                  <expected-error>XUST0001</expected-error>
               </state>
            </test-case>
            <test-case name="id-flwor-expr-03" FilePath="FLWORExpression/" scenario="runtime-error"
               Creator="Carmelo Montanez">
               <description>Evaluates an insert expression used with FLWOR expression where the
                  "where" clause is an updating expression.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.1" section-title="Insert"
                  section-pointer="id-insert"/>
               <spec-citation spec="XQUPDATE" section-number="2.5.5"
                  section-title="FLWOR Expression" section-pointer="id-flwor-expr"/>
               <state time="0">
                  <query name="id-flwor-expr-03" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context"
                     >employeesNIST</input-file>
                  <expected-error>XUST0001</expected-error>
               </state>
            </test-case>
            <test-case name="id-flwor-expr-04" FilePath="FLWORExpression/" scenario="runtime-error"
               Creator="Carmelo Montanez">
               <description>Evaluates an insert expression used with FLWOR expression where the
                  "order by" clause is an updating expression.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.1" section-title="Insert"
                  section-pointer="id-insert"/>
               <spec-citation spec="XQUPDATE" section-number="2.5.5"
                  section-title="FLWOR Expression" section-pointer="id-flwor-expr"/>
               <state time="0">
                  <query name="id-flwor-expr-04" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context"
                     >employeesNIST</input-file>
                  <expected-error>XUST0001</expected-error>
               </state>
            </test-case>
            <test-case name="id-flwor-expr-05" FilePath="FLWORExpression/" scenario="runtime-error"
               Creator="Carmelo Montanez">
               <description>Evaluates a delete expression used with FLWOR expression where the let
                  clause is an updating expression.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.2" section-title="Delete"
                  section-pointer="id-delete"/>
               <spec-citation spec="XQUPDATE" section-number="2.5.5"
                  section-title="FLWOR Expression" section-pointer="id-flwor-expr"/>
               <state time="0">
                  <query name="id-flwor-expr-05" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context"
                     >employeesNIST</input-file>
                  <expected-error>XUST0001</expected-error>
               </state>
            </test-case>
            <test-case name="id-flwor-expr-06" FilePath="FLWORExpression/" scenario="runtime-error"
               Creator="Carmelo Montanez">
               <description>Evaluates a delete expression used with FLWOR expression where the for
                  clause is an updating expression.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.2" section-title="Delete"
                  section-pointer="id-delete"/>
               <spec-citation spec="XQUPDATE" section-number="2.5.5"
                  section-title="FLWOR Expression" section-pointer="id-flwor-expr"/>
               <state time="0">
                  <query name="id-flwor-expr-06" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context"
                     >employeesNIST</input-file>
                  <expected-error>XUST0001</expected-error>
               </state>
            </test-case>
            <test-case name="id-flwor-expr-07" FilePath="FLWORExpression/" scenario="runtime-error"
               Creator="Carmelo Montanez">
               <description>Evaluates a delete expression used with FLWOR expression where the
                  "where" clause is an updating expression.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.2" section-title="Delete"
                  section-pointer="id-delete"/>
               <spec-citation spec="XQUPDATE" section-number="2.5.5"
                  section-title="FLWOR Expression" section-pointer="id-flwor-expr"/>
               <state time="0">
                  <query name="id-flwor-expr-07" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context"
                     >employeesNIST</input-file>
                  <expected-error>XUST0001</expected-error>
               </state>
            </test-case>
            <test-case name="id-flwor-expr-08" FilePath="FLWORExpression/" scenario="runtime-error"
               Creator="Carmelo Montanez">
               <description>Evaluates a delete expression used with FLWOR expression where the
                  "order by" clause is an updating expression.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.2" section-title="Delete"
                  section-pointer="id-delete"/>
               <spec-citation spec="XQUPDATE" section-number="2.5.5"
                  section-title="FLWOR Expression" section-pointer="id-flwor-expr"/>
               <state time="0">
                  <query name="id-flwor-expr-08" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context"
                     >employeesNIST</input-file>
                  <expected-error>XUST0001</expected-error>
               </state>
            </test-case>
            <test-case name="id-flwor-expr-09" FilePath="FLWORExpression/" scenario="runtime-error"
               Creator="Carmelo Montanez">
               <description>Evaluates a replace expression used with FLOWR expression with "let"
                  clause set to an updating (replace) expression.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.3" section-title="Replace"
                  section-pointer="id-replace"/>
               <spec-citation spec="XQUPDATE" section-number="2.5.5"
                  section-title="FLWOR Expression" section-pointer="id-flwor-expr"/>
               <spec-citation spec="XQUPDATE" section-number="2.4.3.2"
                  section-title="Replacing the Value of a Node"
                  section-pointer="id-replacing-node-value"/>
               <state time="0">
                  <query name="id-flwor-expr-09" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context"
                     >employeesNIST</input-file>
                  <expected-error>XUST0001</expected-error>
               </state>
            </test-case>
            <test-case name="id-flwor-expr-010" FilePath="FLWORExpression/" scenario="runtime-error"
               Creator="Carmelo Montanez">
               <description>Evaluates a replace expression used with FLOWR expression with "for"
                  clause set to an updating (replace) expression.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.3" section-title="Replace"
                  section-pointer="id-replace"/>
               <spec-citation spec="XQUPDATE" section-number="2.5.5"
                  section-title="FLWOR Expression" section-pointer="id-flwor-expr"/>
               <spec-citation spec="XQUPDATE" section-number="2.4.3.2"
                  section-title="Replacing the Value of a Node"
                  section-pointer="id-replacing-node-value"/>
               <state time="0">
                  <query name="id-flwor-expr-010" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context"
                     >employeesNIST</input-file>
                  <expected-error>XUST0001</expected-error>
               </state>
            </test-case>
            <test-case name="id-flwor-expr-011" FilePath="FLWORExpression/" scenario="runtime-error"
               Creator="Carmelo Montanez">
               <description>Evaluates a replace expression used with FLOWR expression with "where"
                  clause set to an updating (replace) expression.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.3" section-title="Replace"
                  section-pointer="id-replace"/>
               <spec-citation spec="XQUPDATE" section-number="2.5.5"
                  section-title="FLWOR Expression" section-pointer="id-flwor-expr"/>
               <spec-citation spec="XQUPDATE" section-number="2.4.3.2"
                  section-title="Replacing the Value of a Node"
                  section-pointer="id-replacing-node-value"/>
               <state time="0">
                  <query name="id-flwor-expr-011" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context"
                     >employeesNIST</input-file>
                  <expected-error>XUST0001</expected-error>
               </state>
            </test-case>
            <test-case name="id-flwor-expr-012" FilePath="FLWORExpression/" scenario="runtime-error"
               Creator="Carmelo Montanez">
               <description>Evaluates a replace expression used with FLOWR expression with "order
                  by" clause set to an updating (replace) expression.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.3" section-title="Replace"
                  section-pointer="id-replace"/>
               <spec-citation spec="XQUPDATE" section-number="2.5.5"
                  section-title="FLWOR Expression" section-pointer="id-flwor-expr"/>
               <spec-citation spec="XQUPDATE" section-number="2.4.3.1"
                  section-title="Replacing a Node" section-pointer="id-replacing-node"/>
               <state time="0">
                  <query name="id-flwor-expr-012" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context"
                     >employeesNIST</input-file>
                  <expected-error>XUST0001</expected-error>
               </state>
            </test-case>
            <test-case name="id-flwor-expr-013" FilePath="FLWORExpression/" scenario="runtime-error"
               Creator="Carmelo Montanez">
               <description>Evaluation of a rename expression use with FLWOR expression where let
                  clause is an updating expression.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.4" section-title="Rename"
                  section-pointer="id-rename"/>
               <spec-citation spec="XQUPDATE" section-number="2.5.5"
                  section-title="FLWOR Expression" section-pointer="id-flwor-expr"/>
               <state time="0">
                  <query name="id-flwor-expr-013" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context"
                     >employeesNIST</input-file>
                  <expected-error>XUST0001</expected-error>
               </state>
            </test-case>
            <test-case name="id-flwor-expr-014" FilePath="FLWORExpression/" scenario="runtime-error"
               Creator="Carmelo Montanez">
               <description>Evaluation of a rename expression use with FLWOR expression where the
                  "for" clause is an updating expression.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.4" section-title="Rename"
                  section-pointer="id-rename"/>
               <spec-citation spec="XQUPDATE" section-number="2.5.5"
                  section-title="FLWOR Expression" section-pointer="id-flwor-expr"/>
               <state time="0">
                  <query name="id-flwor-expr-014" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context"
                     >employeesNIST</input-file>
                  <expected-error>XUST0001</expected-error>
               </state>
            </test-case>
            <test-case name="id-flwor-expr-015" FilePath="FLWORExpression/" scenario="runtime-error"
               Creator="Carmelo Montanez">
               <description>Evaluation of a rename expression use with FLWOR expression where the
                  "where" clause is an updating expression.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.4" section-title="Rename"
                  section-pointer="id-rename"/>
               <spec-citation spec="XQUPDATE" section-number="2.5.5"
                  section-title="FLWOR Expression" section-pointer="id-flwor-expr"/>
               <state time="0">
                  <query name="id-flwor-expr-015" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context"
                     >employeesNIST</input-file>
                  <expected-error>XUST0001</expected-error>
               </state>
            </test-case>
            <test-case name="id-flwor-expr-016" FilePath="FLWORExpression/" scenario="runtime-error"
               Creator="Carmelo Montanez">
               <description>Evaluation of a rename expression use with FLWOR expression where the
                  "order by" clause is an updating expression.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.4" section-title="Rename"
                  section-pointer="id-rename"/>
               <spec-citation spec="XQUPDATE" section-number="2.5.5"
                  section-title="FLWOR Expression" section-pointer="id-flwor-expr"/>
               <state time="0">
                  <query name="id-flwor-expr-016" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context"
                     >employeesNIST</input-file>
                  <expected-error>XUST0001</expected-error>
               </state>
            </test-case>
            <test-case name="id-flwor-expr-017" FilePath="FLWORExpression/" scenario="standard"
               Creator="Carmelo Montanez">
               <description>Evaluates a transform expression together with a FLWOR expression where
                  the "let" expression is a transform expression.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.5" section-title="Transform"
                  section-pointer="id-transform"/>
               <spec-citation spec="XQUPDATE" section-number="2.5.5"
                  section-title="FLWOR Expression" section-pointer="id-flwor-expr"/>
               <state time="0">
                  <query name="id-flwor-expr-017" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context"
                     >employeesNIST</input-file>
                  <output-file role="principal" compare="Fragment"
                     >id-flwor-expr-017.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-flwor-expr-018" FilePath="FLWORExpression/" scenario="standard"
               Creator="Carmelo Montanez">
               <description>Evaluates a transform expression together with a FLWOR expression where
                  the "for" expression is a non updating (transform) expression.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.5" section-title="Transform"
                  section-pointer="id-transform"/>
               <spec-citation spec="XQUPDATE" section-number="2.5.5"
                  section-title="FLWOR Expression" section-pointer="id-flwor-expr"/>
               <state time="0">
                  <query name="id-flwor-expr-018" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context"
                     >employeesNIST</input-file>
                  <output-file role="principal" compare="Fragment"
                     >id-flwor-expr-018.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-flwor-expr-019" FilePath="FLWORExpression/" scenario="standard"
               Creator="Carmelo Montanez">
               <description>Evaluates a transform expression together with a FLWOR expression where
                  the "where" expression is an non updating (transform) expression.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.5" section-title="Transform"
                  section-pointer="id-transform"/>
               <spec-citation spec="XQUPDATE" section-number="2.5.5"
                  section-title="FLWOR Expression" section-pointer="id-flwor-expr"/>
               <state time="0">
                  <query name="id-flwor-expr-019" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context"
                     >employeesNIST</input-file>
                  <output-file role="principal" compare="Fragment"
                     >id-flwor-expr-019.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-flwor-expr-020" FilePath="FLWORExpression/" scenario="standard"
               Creator="Carmelo Montanez">
               <description>Evaluates a transform expression together with a FLWOR expression where
                  the "order by" expression is a non updating (transform) expression.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.5" section-title="Transform"
                  section-pointer="id-transform"/>
               <spec-citation spec="XQUPDATE" section-number="2.5.5"
                  section-title="FLWOR Expression" section-pointer="id-flwor-expr"/>
               <state time="0">
                  <query name="id-flwor-expr-020" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context"
                     >employeesNIST</input-file>
                  <output-file role="principal" compare="Fragment"
                     >id-flwor-expr-020.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-flwor-expr-021" FilePath="FLWORExpression/" scenario="standard"
               Creator="Carmelo Montanez">
               <description>Evaluation of a FLWOR expression, where return is a delete expression
                  that deletes a series nodes bounded via let clause.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.2" section-title="Delete"
                  section-pointer="id-delete"/>
               <spec-citation spec="XQUPDATE" section-number="2.5.1"
                  section-title="FLWOR Expression" section-pointer="id-flwor-expr"/>
               <state time="0">
                  <query name="id-flwor-expr-021" date="2007-08-02"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
               </state>
               <state time="1">
                  <query name="id-flwor-expr-021-test" date="2007-08-02"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="Text">id-flwor-expr-021.txt</output-file>
               </state>
            </test-case>
            <test-case name="id-flwor-expr-022" FilePath="FLWORExpression/" scenario="standard"
               Creator="Carmelo Montanez">
               <description>Evaluation of a FLWOR expression, where return is a delete expression
                  that deletes a series nodes bounded via for clause.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.2" section-title="Delete"
                  section-pointer="id-delete"/>
               <spec-citation spec="XQUPDATE" section-number="2.5.1"
                  section-title="FLWOR Expression" section-pointer="id-flwor-expr"/>
               <state time="0">
                  <query name="id-flwor-expr-022" date="2007-08-02"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
               </state>
               <state time="1">
                  <query name="id-flwor-expr-022-test" date="2007-08-02"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="Text">id-flwor-expr-022.txt</output-file>
               </state>
            </test-case>
            <test-case name="id-flwor-expr-023" FilePath="FLWORExpression/" scenario="standard"
               Creator="Andrew Eisenberg">
               <description>For clause that contains a for expression with a simple return
                  clause.</description>
               <spec-citation spec="XQUPDATE" section-number="2.5.1"
                  section-title="FLWOR Expression" section-pointer="id-flwor-expr"/>
               <state time="0">
                  <query name="id-flwor-expr-023" date="2008-10-25"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="XML">id-flwor-expr-023.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-flwor-expr-024" FilePath="FLWORExpression/" scenario="standard"
               Creator="Andrew Eisenberg">
               <description>For clause that contains a for expression with a updating return
                  clause.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.2" section-title="Delete"
                  section-pointer="id-delete"/>
               <spec-citation spec="XQUPDATE" section-number="2.5.1"
                  section-title="FLWOR Expression" section-pointer="id-flwor-expr"/>
               <state time="0">
                  <query name="id-flwor-expr-024" date="2008-10-25"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <expected-error>XUST0001</expected-error>
               </state>
            </test-case>
            <test-case name="id-flwor-expr-025" FilePath="FLWORExpression/" scenario="standard"
               Creator="Andrew Eisenberg">
               <description>For clause that contains a for expression with a vacuous return
                  clause.</description>
               <spec-citation spec="XQUPDATE" section-number="2.5.1"
                  section-title="FLWOR Expression" section-pointer="id-flwor-expr"/>
               <state time="0">
                  <query name="id-flwor-expr-025" date="2008-10-25"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="Fragment"
                     >id-flwor-expr-025.xml</output-file>
               </state>
            </test-case>
         </test-group>
         <test-group name="TypeswitchExpression">
            <GroupInfo>
               <title>Typeswitch Expressions</title>
               <description/>
            </GroupInfo>
            <test-case name="id-typeswitch-expr-01" FilePath="TypeswitchExpression/"
               scenario="runtime-error" Creator="Carmelo Montanez">
               <description>Evaluates an insert expression used with typeswitch expression where the
                  operand is an updating expression.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.1" section-title="Insert"
                  section-pointer="id-insert"/>
               <spec-citation spec="XQUPDATE" section-number="2.5.2"
                  section-title="Typeswitch Expression" section-pointer="id-typeswitch-expr"/>
               <state time="0">
                  <query name="id-typeswitch-expr-01" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context"
                     >employeesNIST</input-file>
                  <expected-error>XUST0001</expected-error>
               </state>
            </test-case>
            <test-case name="id-typeswitch-expr-02" FilePath="TypeswitchExpression/"
               scenario="standard" Creator="Carmelo Montanez">
               <description>Evaluates an insert expression used with typeswitch expression where a
                  branch (a "case") is an updating expression. Other branches return
                  ().</description>
               <spec-citation spec="XQUPDATE" section-number="2.5.2"
                  section-title="Typeswitch Expression" section-pointer="id-typeswitch-expr"/>
               <spec-citation spec="XQUPDATE" section-number="2.4.1" section-title="Insert"
                  section-pointer="id-insert"/>
               <state time="0">
                  <query name="id-typeswitch-expr-02" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
               </state>
               <state time="1">
                  <query name="id-typeswitch-expr-02-test" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="Fragment"
                     >id-typeswitch-expr-02.xml</output-file>
                  <output-file role="principal" compare="Fragment"
                     >id-typeswitch-expr-02a.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-typeswitch-expr-03" FilePath="TypeswitchExpression/"
               scenario="standard" Creator="Carmelo Montanez">
               <description>Evaluates an insert expression used with typeswitch expression where a
                  branch (the "default") is an updating expression. Other branches return
                  ().</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.1" section-title="Insert"
                  section-pointer="id-insert"/>
               <spec-citation spec="XQUPDATE" section-number="2.5.2"
                  section-title="Typeswitch Expression" section-pointer="id-typeswitch-expr"/>
               <state time="0">
                  <query name="id-typeswitch-expr-03" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
               </state>
               <state time="1">
                  <query name="id-typeswitch-expr-03-test" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="Fragment"
                     >id-typeswitch-expr-03.xml</output-file>
                  <output-file role="principal" compare="Fragment"
                     >id-typeswitch-expr-03a.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-typeswitch-expr-04" FilePath="TypeswitchExpression/"
               scenario="standard" Creator="Carmelo Montanez">
               <description>Evaluates an insert expression used with typeswitch expression where a
                  branch (a "case") is an updating expression. Other branches return
                  fn:error().</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.1" section-title="Insert"
                  section-pointer="id-insert"/>
               <spec-citation spec="XQUPDATE" section-number="2.5.2"
                  section-title="Typeswitch Expression" section-pointer="id-typeswitch-expr"/>
               <state time="0">
                  <query name="id-typeswitch-expr-04" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
               </state>
               <state time="1">
                  <query name="id-typeswitch-expr-04-test" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="Fragment"
                     >id-typeswitch-expr-04.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-typeswitch-expr-05" FilePath="TypeswitchExpression/"
               scenario="runtime-error" Creator="Carmelo Montanez">
               <description>Evaluates an insert expression used with typeswitch expression where a
                  branch (the "default") is an updating expression. Other branches return
                  fn:error().</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.1" section-title="Insert"
                  section-pointer="id-insert"/>
               <spec-citation spec="XQUPDATE" section-number="2.5.2"
                  section-title="Typeswitch Expression" section-pointer="id-typeswitch-expr"/>
               <state time="0">
                  <query name="id-typeswitch-expr-05" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <expected-error>FOER0000</expected-error>
               </state>
            </test-case>
            <test-case name="id-typeswitch-expr-06" FilePath="TypeswitchExpression/"
               scenario="runtime-error" Creator="Carmelo Montanez">
               <description>Evaluates an insert expression used with typeswitch expression where a
                  branch (a "case") is an updating expression. Other branches return a
                  string.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.1" section-title="Insert"
                  section-pointer="id-insert"/>
               <spec-citation spec="XQUPDATE" section-number="2.5.2"
                  section-title="Typeswitch Expression" section-pointer="id-typeswitch-expr"/>
               <state time="0">
                  <query name="id-typeswitch-expr-06" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context"
                     >employeesNIST</input-file>
                  <expected-error>XUST0001</expected-error>
               </state>
            </test-case>
            <test-case name="id-typeswitch-expr-07" FilePath="TypeswitchExpression/"
               scenario="runtime-error" Creator="Carmelo Montanez">
               <description>Evaluates an insert expression used with typeswitch expression where a
                  branch (the "default") is an updating expression. Other branches return a
                  string.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.1" section-title="Insert"
                  section-pointer="id-insert"/>
               <spec-citation spec="XQUPDATE" section-number="2.5.2"
                  section-title="Typeswitch Expression" section-pointer="id-typeswitch-expr"/>
               <state time="0">
                  <query name="id-typeswitch-expr-07" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context"
                     >employeesNIST</input-file>
                  <expected-error>XUST0001</expected-error>
               </state>
            </test-case>
            <test-case name="id-typeswitch-expr-08" FilePath="TypeswitchExpression/"
               scenario="runtime-error" Creator="Carmelo Montanez">
               <description>Evaluates a delete expression used with typeswitch expression where the
                  operand is an updating expression.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.2" section-title="Delete"
                  section-pointer="id-delete"/>
               <spec-citation spec="XQUPDATE" section-number="2.5.2"
                  section-title="Typeswitch Expression" section-pointer="id-typeswitch-expr"/>
               <state time="0">
                  <query name="id-typeswitch-expr-08" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context"
                     >employeesNIST</input-file>
                  <expected-error>XUST0001</expected-error>
               </state>
            </test-case>
            <test-case name="id-typeswitch-expr-09" FilePath="TypeswitchExpression/"
               scenario="standard" Creator="Carmelo Montanez">
               <description>Evaluates a delete expression used with typeswitch expression where a
                  branch (a case) is an updating expression. The other branches are set to
                  "()".</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.2" section-title="Delete"
                  section-pointer="id-delete"/>
               <spec-citation spec="XQUPDATE" section-number="2.5.2"
                  section-title="Typeswitch Expression" section-pointer="id-typeswitch-expr"/>
               <state time="0">
                  <query name="id-typeswitch-expr-09" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
               </state>
               <state time="1">
                  <query name="id-typeswitch-expr-09-test" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="Fragment"
                     >id-typeswitch-expr-09.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-typeswitch-expr-010" FilePath="TypeswitchExpression/"
               scenario="standard" Creator="Carmelo Montanez">
               <description>Evaluates a delete expression used with typeswitch expression where a
                  branch (the default) is an updating expression. The other branches are set to
                  "()".</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.2" section-title="Delete"
                  section-pointer="id-delete"/>
               <spec-citation spec="XQUPDATE" section-number="2.5.2"
                  section-title="Typeswitch Expression" section-pointer="id-typeswitch-expr"/>
               <state time="0">
                  <query name="id-typeswitch-expr-010" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
               </state>
               <state time="1">
                  <query name="id-typeswitch-expr-010-test" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="Fragment"
                     >id-typeswitch-expr-010.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-typeswitch-expr-011" FilePath="TypeswitchExpression/"
               scenario="standard" Creator="Carmelo Montanez">
               <description>Evaluation of insert expression used with typeswitch expression where
                  branch (a "case") is an updating expression. All other branches return
                  "fn:error()".</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.2" section-title="Delete"
                  section-pointer="id-delete"/>
               <spec-citation spec="XQUPDATE" section-number="2.5.2"
                  section-title="Typeswitch Expression" section-pointer="id-typeswitch-expr"/>
               <state time="0">
                  <query name="id-typeswitch-expr-011" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
               </state>
               <state time="1">
                  <query name="id-typeswitch-expr-011-test" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="Fragment"
                     >id-typeswitch-expr-011.xml</output-file>
                  <output-file role="principal" compare="Fragment"
                     >id-typeswitch-expr-011-2.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-typeswitch-expr-012" FilePath="TypeswitchExpression/"
               scenario="runtime-error" Creator="Carmelo Montanez">
               <description>Evaluation of insert expression used with typeswitch expression where
                  branch (the "default") is an updating expression. All other branches return
                  "fn:error()".</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.2" section-title="Delete"
                  section-pointer="id-delete"/>
               <spec-citation spec="XQUPDATE" section-number="2.5.2"
                  section-title="Typeswitch Expression" section-pointer="id-typeswitch-expr"/>
               <state time="0">
                  <query name="id-typeswitch-expr-012" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <expected-error>FOER0000</expected-error>
               </state>
            </test-case>
            <test-case name="id-typeswitch-expr-013" FilePath="TypeswitchExpression/"
               scenario="runtime-error" Creator="Carmelo Montanez">
               <description>Evaluation of insert expression used with typeswitch expression where
                  branch (the "case") is an updating expression. All other branches return a
                  string.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.2" section-title="Delete"
                  section-pointer="id-delete"/>
               <spec-citation spec="XQUPDATE" section-number="2.5.2"
                  section-title="Typeswitch Expression" section-pointer="id-typeswitch-expr"/>
               <state time="0">
                  <query name="id-typeswitch-expr-013" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context"
                     >employeesNIST</input-file>
                  <expected-error>XUST0001</expected-error>
               </state>
            </test-case>
            <test-case name="id-typeswitch-expr-014" FilePath="TypeswitchExpression/"
               scenario="runtime-error" Creator="Carmelo Montanez">
               <description>Evaluation of insert expression used with typeswitch expression where
                  branch (the "default") is an updating expression. All other branches return
                  string.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.2" section-title="Delete"
                  section-pointer="id-delete"/>
               <spec-citation spec="XQUPDATE" section-number="2.5.2"
                  section-title="Typeswitch Expression" section-pointer="id-typeswitch-expr"/>
               <state time="0">
                  <query name="id-typeswitch-expr-014" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context"
                     >employeesNIST</input-file>
                  <expected-error>XUST0001</expected-error>
               </state>
            </test-case>
            <test-case name="id-typeswitch-expr-015" FilePath="TypeswitchExpression/"
               scenario="runtime-error" Creator="Carmelo Montanez">
               <description>Evaluates a replace expression used together with a typeswitch
                  expression where the operand is an updating (replace) expression.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.3" section-title="Replace"
                  section-pointer="id-replace"/>
               <spec-citation spec="XQUPDATE" section-number="2.5.2"
                  section-title="Typeswitch Expression" section-pointer="id-typeswitch-expr"/>
               <spec-citation spec="XQUPDATE" section-number="2.4.3.2"
                  section-title="Replacing the Value of a Node"
                  section-pointer="id-replacing-node-value"/>
               <state time="0">
                  <query name="id-typeswitch-expr-015" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context"
                     >employeesNIST</input-file>
                  <expected-error>XUST0001</expected-error>
               </state>
            </test-case>
            <test-case name="id-typeswitch-expr-016" FilePath="TypeswitchExpression/"
               scenario="standard" Creator="Carmelo Montanez">
               <description>Evaluates a replace expression used together with a typeswitch
                  expression where a branch (a case) is an updating (replace) expression. Other
                  branches are the empty sequence.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.3" section-title="Replace"
                  section-pointer="id-replace"/>
               <spec-citation spec="XQUPDATE" section-number="2.5.2"
                  section-title="Typeswitch Expression" section-pointer="id-typeswitch-expr"/>
               <spec-citation spec="XQUPDATE" section-number="2.4.3.2"
                  section-title="Replacing the Value of a Node"
                  section-pointer="id-replacing-node-value"/>
               <state time="0">
                  <query name="id-typeswitch-expr-016" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
               </state>
               <state time="1">
                  <query name="id-typeswitch-expr-016-test" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="Fragment"
                     >id-typeswitch-expr-016.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-typeswitch-expr-017" FilePath="TypeswitchExpression/"
               scenario="standard" Creator="Carmelo Montanez">
               <description>Evaluates a replace expression used together with a typeswitch
                  expression where a branch (the default) is an updating (replace) expression. Other
                  branches are the empty sequence.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.3" section-title="Replace"
                  section-pointer="id-replace"/>
               <spec-citation spec="XQUPDATE" section-number="2.5.2"
                  section-title="Typeswitch Expression" section-pointer="id-typeswitch-expr"/>
               <spec-citation spec="XQUPDATE" section-number="2.4.3.2"
                  section-title="Replacing the Value of a Node"
                  section-pointer="id-replacing-node-value"/>
               <state time="0">
                  <query name="id-typeswitch-expr-017" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
               </state>
               <state time="1">
                  <query name="id-typeswitch-expr-017-test" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="Fragment"
                     >id-typeswitch-expr-017.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-typeswitch-expr-018" FilePath="TypeswitchExpression/"
               scenario="standard" Creator="Carmelo Montanez">
               <description>Evaluates a replace expression used together with a typeswitch
                  expression where a branch (a case) is an updating (replace) expression. Other
                  branches are a call to the fn:error function.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.3" section-title="Replace"
                  section-pointer="id-replace"/>
               <spec-citation spec="XQUPDATE" section-number="2.5.2"
                  section-title="Typeswitch Expression" section-pointer="id-typeswitch-expr"/>
               <spec-citation spec="XQUPDATE" section-number="2.4.3.2"
                  section-title="Replacing the Value of a Node"
                  section-pointer="id-replacing-node-value"/>
               <state time="0">
                  <query name="id-typeswitch-expr-018" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
               </state>
               <state time="1">
                  <query name="id-typeswitch-expr-018-test" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="Fragment"
                     >id-typeswitch-expr-018.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-typeswitch-expr-019" FilePath="TypeswitchExpression/"
               scenario="standard" Creator="Carmelo Montanez">
               <description>Evaluates a replace expression used together with a typeswitch
                  expression where a branch (the default) is an updating (replace) expression. Other
                  branches are a call to the fn:error function.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.3" section-title="Replace"
                  section-pointer="id-replace"/>
               <spec-citation spec="XQUPDATE" section-number="2.5.2"
                  section-title="Typeswitch Expression" section-pointer="id-typeswitch-expr"/>
               <spec-citation spec="XQUPDATE" section-number="2.4.3.2"
                  section-title="Replacing the Value of a Node"
                  section-pointer="id-replacing-node-value"/>
               <state time="0">
                  <query name="id-typeswitch-expr-019" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
               </state>
               <state time="1">
                  <query name="id-typeswitch-expr-019-test" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="Fragment"
                     >id-typeswitch-expr-019.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-typeswitch-expr-020" FilePath="TypeswitchExpression/"
               scenario="runtime-error" Creator="Carmelo Montanez">
               <description>Evaluates a replace expression used together with a typeswitch
                  expression where a branch (a case) is an updating (replace) expression. Other
                  branches return a string.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.3" section-title="Replace"
                  section-pointer="id-replace"/>
               <spec-citation spec="XQUPDATE" section-number="2.5.2"
                  section-title="Typeswitch Expression" section-pointer="id-typeswitch-expr"/>
               <spec-citation spec="XQUPDATE" section-number="2.4.3.2"
                  section-title="Replacing the Value of a Node"
                  section-pointer="id-replacing-node-value"/>
               <state time="0">
                  <query name="id-typeswitch-expr-020" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context"
                     >employeesNIST</input-file>
                  <expected-error>XUST0001</expected-error>
               </state>
            </test-case>
            <test-case name="id-typeswitch-expr-021" FilePath="TypeswitchExpression/"
               scenario="runtime-error" Creator="Carmelo Montanez">
               <description>Evaluates a replace expression used together with a typeswitch
                  expression where a branch (the default) is an updating (transform) expression.
                  Other branches return a string.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.3" section-title="Replace"
                  section-pointer="id-replace"/>
               <spec-citation spec="XQUPDATE" section-number="2.5.2"
                  section-title="Typeswitch Expression" section-pointer="id-typeswitch-expr"/>
               <spec-citation spec="XQUPDATE" section-number="2.4.3.2"
                  section-title="Replacing the Value of a Node"
                  section-pointer="id-replacing-node-value"/>
               <state time="0">
                  <query name="id-typeswitch-expr-021" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context"
                     >employeesNIST</input-file>
                  <expected-error>XUST0001</expected-error>
               </state>
            </test-case>
            <test-case name="id-typeswitch-expr-022" FilePath="TypeswitchExpression/"
               scenario="runtime-error" Creator="Carmelo Montanez">
               <description>Evaluation of a rename expression use with a typeswitch expression where
                  the operand is an updating expression.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.4" section-title="Rename"
                  section-pointer="id-rename"/>
               <spec-citation spec="XQUPDATE" section-number="2.5.2"
                  section-title="Typeswitch Expression" section-pointer="id-typeswitch-expr"/>
               <state time="0">
                  <query name="id-typeswitch-expr-022" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context"
                     >employeesNIST</input-file>
                  <expected-error>XUST0001</expected-error>
               </state>
            </test-case>
            <test-case name="id-typeswitch-expr-023" FilePath="TypeswitchExpression/"
               scenario="standard" Creator="Carmelo Montanez">
               <description>Evaluation of a rename expression use with a typeswitch expression where
                  a branch (a case) is an updating expression. Other branches equal to the empty
                  sequence</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.4" section-title="Rename"
                  section-pointer="id-rename"/>
               <spec-citation spec="XQUPDATE" section-number="2.5.2"
                  section-title="Typeswitch Expression" section-pointer="id-typeswitch-expr"/>
               <state time="0">
                  <query name="id-typeswitch-expr-023" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
               </state>
               <state time="1">
                  <query name="id-typeswitch-expr-023-test" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="Fragment"
                     >id-typeswitch-expr-023.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-typeswitch-expr-024" FilePath="TypeswitchExpression/"
               scenario="standard" Creator="Carmelo Montanez">
               <description>Evaluation of a rename expression use with a typeswitch expression where
                  a branch (the default) is an updating expression. Other branches equal to the
                  empty sequence.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.4" section-title="Rename"
                  section-pointer="id-rename"/>
               <spec-citation spec="XQUPDATE" section-number="2.5.2"
                  section-title="Typeswitch Expression" section-pointer="id-typeswitch-expr"/>
               <state time="0">
                  <query name="id-typeswitch-expr-024" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
               </state>
               <state time="1">
                  <query name="id-typeswitch-expr-024-test" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="Fragment"
                     >id-typeswitch-expr-024.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-typeswitch-expr-025" FilePath="TypeswitchExpression/"
               scenario="standard" Creator="Carmelo Montanez">
               <description>Evaluation of a rename expression use with a typeswitch expression where
                  a branch (a case) is an updating expression. Other branches are an invokation to
                  "fn:error()" </description>
               <spec-citation spec="XQUPDATE" section-number="2.4.4" section-title="Rename"
                  section-pointer="id-rename"/>
               <spec-citation spec="XQUPDATE" section-number="2.5.2"
                  section-title="Typeswitch Expression" section-pointer="id-typeswitch-expr"/>
               <state time="0">
                  <query name="id-typeswitch-expr-025" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
               </state>
               <state time="1">
                  <query name="id-typeswitch-expr-025-test" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="Fragment"
                     >id-typeswitch-expr-025.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-typeswitch-expr-026" FilePath="TypeswitchExpression/"
               scenario="runtime-error" Creator="Carmelo Montanez">
               <description>Evaluation of a rename expression use with a typeswitch expression where
                  a branch (the default) is an updating expression. Other branches are an invokation
                  to "fn:error()" </description>
               <spec-citation spec="XQUPDATE" section-number="2.4.4" section-title="Rename"
                  section-pointer="id-rename"/>
               <spec-citation spec="XQUPDATE" section-number="2.5.2"
                  section-title="Typeswitch Expression" section-pointer="id-typeswitch-expr"/>
               <state time="0">
                  <query name="id-typeswitch-expr-026" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <expected-error>FOER0000</expected-error>
               </state>
            </test-case>
            <test-case name="id-typeswitch-expr-027" FilePath="TypeswitchExpression/"
               scenario="runtime-error" Creator="Carmelo Montanez">
               <description>Evaluation of a rename expression use with a typeswitch expression a
                  branch (a case)is an updating expression. Other branches return a
                  string</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.4" section-title="Rename"
                  section-pointer="id-rename"/>
               <spec-citation spec="XQUPDATE" section-number="2.5.2"
                  section-title="Typeswitch Expression" section-pointer="id-typeswitch-expr"/>
               <state time="0">
                  <query name="id-typeswitch-expr-027" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context"
                     >employeesNIST</input-file>
                  <expected-error>XUST0001</expected-error>
               </state>
            </test-case>
            <test-case name="id-typeswitch-expr-028" FilePath="TypeswitchExpression/"
               scenario="runtime-error" Creator="Carmelo Montanez">
               <description>Evaluation of a rename expression use with a typeswitch expression a
                  branch (the default)is an updating expression. Other branches return a
                  string</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.4" section-title="Rename"
                  section-pointer="id-rename"/>
               <spec-citation spec="XQUPDATE" section-number="2.5.2"
                  section-title="Typeswitch Expression" section-pointer="id-typeswitch-expr"/>
               <state time="0">
                  <query name="id-typeswitch-expr-028" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context"
                     >employeesNIST</input-file>
                  <expected-error>XUST0001</expected-error>
               </state>
            </test-case>
            <test-case name="id-typeswitch-expr-029" FilePath="TypeswitchExpression/"
               scenario="standard" Creator="Carmelo Montanez">
               <description>Evaluates a transform expression together with a typeswitch expression
                  where the operand is a non updating (transform) expression.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.5" section-title="Transform"
                  section-pointer="id-transform"/>
               <spec-citation spec="XQUPDATE" section-number="2.5.2"
                  section-title="Typeswitch Expression" section-pointer="id-typeswitch-expr"/>
               <state time="0">
                  <query name="id-typeswitch-expr-029" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context"
                     >employeesNIST</input-file>
                  <output-file role="principal" compare="Fragment"
                     >id-typeswitch-expr-029.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-typeswitch-expr-030" FilePath="TypeswitchExpression/"
               scenario="standard" Creator="Carmelo Montanez">
               <description>Evaluates a transform expression together with a typeswitch expression
                  where a branch (a case) is an updating (transform) expression. Other branches are
                  "()"</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.5" section-title="Transform"
                  section-pointer="id-transform"/>
               <spec-citation spec="XQUPDATE" section-number="2.5.2"
                  section-title="Typeswitch Expression" section-pointer="id-typeswitch-expr"/>
               <state time="0">
                  <query name="id-typeswitch-expr-030" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="Fragment"
                     >id-typeswitch-expr-030.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-typeswitch-expr-031" FilePath="TypeswitchExpression/"
               scenario="standard" Creator="Carmelo Montanez">
               <description>Evaluates a transform expression together with a typeswitch expression
                  where a branch (the default) is an updating (transform) expression. Other branches
                  are "()".</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.5" section-title="Transform"
                  section-pointer="id-transform"/>
               <spec-citation spec="XQUPDATE" section-number="2.5.2"
                  section-title="Typeswitch Expression" section-pointer="id-typeswitch-expr"/>
               <state time="0">
                  <query name="id-typeswitch-expr-031" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="Fragment"
                     >id-typeswitch-expr-031.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-typeswitch-expr-032" FilePath="TypeswitchExpression/"
               scenario="standard" Creator="Carmelo Montanez">
               <description>Evaluates a transform expression together with a typeswitch expression
                  where a branch (a case) is a non updating (transform) expression and the other
                  cases an invokation to fn:error.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.5" section-title="Transform"
                  section-pointer="id-transform"/>
               <spec-citation spec="XQUPDATE" section-number="2.5.2"
                  section-title="Typeswitch Expression" section-pointer="id-typeswitch-expr"/>
               <state time="0">
                  <query name="id-typeswitch-expr-032" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="Fragment"
                     >id-typeswitch-expr-032.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-typeswitch-expr-033" FilePath="TypeswitchExpression/"
               scenario="standard" Creator="Carmelo Montanez">
               <description>Evaluates a transform expression together with a typeswitch expression
                  where a branch (the default)is a non updating (transform) expression and the other
                  cases an invokation to fn:error.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.5" section-title="Transform"
                  section-pointer="id-transform"/>
               <spec-citation spec="XQUPDATE" section-number="2.5.2"
                  section-title="Typeswitch Expression" section-pointer="id-typeswitch-expr"/>
               <state time="0">
                  <query name="id-typeswitch-expr-033" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="Fragment"
                     >id-typeswitch-expr-033.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-typeswitch-expr-034" FilePath="TypeswitchExpression/"
               scenario="standard" Creator="Carmelo Montanez">
               <description>Evaluates a transform expression together with a typeswitch expression
                  where a branch (a case)is an updating (transform) and the other branches return a
                  string.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.5" section-title="Transform"
                  section-pointer="id-transform"/>
               <spec-citation spec="XQUPDATE" section-number="2.5.2"
                  section-title="Typeswitch Expression" section-pointer="id-typeswitch-expr"/>
               <state time="0">
                  <query name="id-typeswitch-expr-034" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context"
                     >employeesNIST</input-file>
                  <output-file role="principal" compare="Fragment"
                     >id-typeswitch-expr-034.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-typeswitch-expr-035" FilePath="TypeswitchExpression/"
               scenario="standard" Creator="Carmelo Montanez">
               <description>Evaluates a transform expression together with a typeswitch expression
                  where a branch (the default)is an updating (transform) and the other branches
                  return a string.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.5" section-title="Transform"
                  section-pointer="id-transform"/>
               <spec-citation spec="XQUPDATE" section-number="2.5.2"
                  section-title="Typeswitch Expression" section-pointer="id-typeswitch-expr"/>
               <state time="0">
                  <query name="id-typeswitch-expr-035" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context"
                     >employeesNIST</input-file>
                  <output-file role="principal" compare="Fragment"
                     >id-typeswitch-expr-035.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-typeswitch-expr-036" FilePath="TypeswitchExpression/"
               scenario="standard" Creator="Andrew Eisenberg">
               <description>Updating typeswitch expression in an updating typeswitch
                  expression.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.3" section-title="Replace"
                  section-pointer="id-replace"/>
               <spec-citation spec="XQUPDATE" section-number="2.5.2"
                  section-title="Typeswitch Expression" section-pointer="id-typeswitch-expr"/>
               <state time="0">
                  <query name="id-typeswitch-expr-036" date="2008-10-25"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
               </state>
               <state time="1">
                  <query name="id-typeswitch-expr-036-test" date="2008-10-25"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="XML"
                     >id-typeswitch-expr-036.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-typeswitch-expr-037" FilePath="TypeswitchExpression/"
               scenario="standard" Creator="Andrew Eisenberg">
               <description>Vacuous typeswitch expression in an updating typeswitch
                  expression.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.3" section-title="Replace"
                  section-pointer="id-replace"/>
               <spec-citation spec="XQUPDATE" section-number="2.5.2"
                  section-title="Typeswitch Expression" section-pointer="id-typeswitch-expr"/>
               <state time="0">
                  <query name="id-typeswitch-expr-037" date="2008-10-25"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
               </state>
               <state time="1">
                  <query name="id-typeswitch-expr-037-test" date="2008-10-25"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="XML"
                     >id-typeswitch-expr-037.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-typeswitch-expr-038" FilePath="TypeswitchExpression/"
               scenario="standard" Creator="Andrew Eisenberg">
               <description>Simple typeswitch expression in an updating typeswitch
                  expression.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.3" section-title="Replace"
                  section-pointer="id-replace"/>
               <spec-citation spec="XQUPDATE" section-number="2.5.2"
                  section-title="Typeswitch Expression" section-pointer="id-typeswitch-expr"/>
               <state time="0">
                  <query name="id-typeswitch-expr-038" date="2008-10-25"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <expected-error>XUST0001</expected-error>
               </state>
            </test-case>
         </test-group>
         <test-group name="ConditionalExpression">
            <GroupInfo>
               <title>Conditional Expressions</title>
               <description/>
            </GroupInfo>
            <test-case name="id-conditional-expr-01" FilePath="ConditionalExpression/"
               scenario="standard" Creator="Carmelo Montanez">
               <description>Evaluates an insert expression used with conditional expression where a
                  branch (the "then") is an updating expression. Other branch return
                  ().</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.1" section-title="Insert"
                  section-pointer="id-insert"/>
               <spec-citation spec="XQUPDATE" section-number="2.5.3"
                  section-title="Conditional Expression" section-pointer="id-conditional-expr"/>
               <state time="0">
                  <query name="id-conditional-expr-01" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
               </state>
               <state time="1">
                  <query name="id-conditional-expr-01-test" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="Fragment"
                     >id-conditional-expr-01.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-conditional-expr-02" FilePath="ConditionalExpression/"
               scenario="standard" Creator="Carmelo Montanez">
               <description>Evaluates an insert expression used with conditional expression where a
                  branch (the "else") is an updating expression. Other branch returns
                  ().</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.1" section-title="Insert"
                  section-pointer="id-insert"/>
               <spec-citation spec="XQUPDATE" section-number="2.5.3"
                  section-title="Conditional Expression" section-pointer="id-conditional-expr"/>
               <state time="0">
                  <query name="id-conditional-expr-02" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
               </state>
               <state time="1">
                  <query name="id-conditional-expr-02-test" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="Fragment"
                     >id-conditional-expr-02.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-conditional-expr-03" FilePath="ConditionalExpression/"
               scenario="standard" Creator="Carmelo Montanez">
               <description>Evaluates an insert expression used with conditional expression where a
                  branch (the "then") is an updating expression. Other branch calls
                  fn:error().</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.1" section-title="Insert"
                  section-pointer="id-insert"/>
               <spec-citation spec="XQUPDATE" section-number="2.5.3"
                  section-title="Conditional Expression" section-pointer="id-conditional-expr"/>
               <state time="0">
                  <query name="id-conditional-expr-03" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
               </state>
               <state time="1">
                  <query name="id-conditional-expr-03-test" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="Fragment"
                     >id-conditional-expr-03.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-conditional-expr-04" FilePath="ConditionalExpression/"
               scenario="standard" Creator="Carmelo Montanez">
               <description>Evaluates an insert expression used with conditional expression where a
                  branch (the "else") is an updating expression. Other branch calls
                  fn:error().</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.1" section-title="Insert"
                  section-pointer="id-insert"/>
               <spec-citation spec="XQUPDATE" section-number="2.5.3"
                  section-title="Conditional Expression" section-pointer="id-conditional-expr"/>
               <state time="0">
                  <query name="id-conditional-expr-04" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
               </state>
               <state time="1">
                  <query name="id-conditional-expr-04-test" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="Fragment"
                     >id-conditional-expr-04.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-conditional-expr-05" FilePath="ConditionalExpression/"
               scenario="runtime-error" Creator="Carmelo Montanez">
               <description>Evaluates an insert expression used with conditional expression where a
                  branch (the "then") is an updating expression. Other branch print a
                  string.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.1" section-title="Insert"
                  section-pointer="id-insert"/>
               <spec-citation spec="XQUPDATE" section-number="2.5.3"
                  section-title="Conditional Expression" section-pointer="id-conditional-expr"/>
               <state time="0">
                  <query name="id-conditional-expr-05" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context"
                     >employeesNIST</input-file>
                  <expected-error>XUST0001</expected-error>
               </state>
            </test-case>
            <test-case name="id-conditional-expr-06" FilePath="ConditionalExpression/"
               scenario="runtime-error" Creator="Carmelo Montanez">
               <description>Evaluates an insert expression used with conditional expression where a
                  branch (the "else") is an updating expression. Other branch print a
                  string.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.1" section-title="Insert"
                  section-pointer="id-insert"/>
               <spec-citation spec="XQUPDATE" section-number="2.5.3"
                  section-title="Conditional Expression" section-pointer="id-conditional-expr"/>
               <state time="0">
                  <query name="id-conditional-expr-06" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context"
                     >employeesNIST</input-file>
                  <expected-error>XUST0001</expected-error>
               </state>
            </test-case>
            <test-case name="id-conditional-expr-07" FilePath="ConditionalExpression/"
               scenario="standard" Creator="Carmelo Montanez">
               <description>Evaluation of a delete expression used with conditional expression where
                  a branch (the "then") is an updating expression. The "else" returns the empty
                  sequence.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.2" section-title="Delete"
                  section-pointer="id-delete"/>
               <spec-citation spec="XQUPDATE" section-number="2.5.3"
                  section-title="Conditional Expression" section-pointer="id-conditional-expr"/>
               <state time="0">
                  <query name="id-conditional-expr-07" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
               </state>
               <state time="1">
                  <query name="id-conditional-expr-07-test" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="Fragment"
                     >id-conditional-expr-07.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-conditional-expr-08" FilePath="ConditionalExpression/"
               scenario="standard" Creator="Carmelo Montanez">
               <description>Evaluation of a delete expression used with conditional expression where
                  a branch (the "else") is an updating expression. The "then" returns the empty
                  sequence.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.2" section-title="Delete"
                  section-pointer="id-delete"/>
               <spec-citation spec="XQUPDATE" section-number="2.5.3"
                  section-title="Conditional Expression" section-pointer="id-conditional-expr"/>
               <state time="0">
                  <query name="id-conditional-expr-08" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
               </state>
               <state time="1">
                  <query name="id-conditional-expr-08-test" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="Fragment"
                     >id-conditional-expr-08.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-conditional-expr-09" FilePath="ConditionalExpression/"
               scenario="standard" Creator="Carmelo Montanez">
               <description>Evaluation of a delete expression used with conditional expression where
                  a branch (the "then") is an updating expression. The "else" returns
                  fn:error().</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.2" section-title="Delete"
                  section-pointer="id-delete"/>
               <spec-citation spec="XQUPDATE" section-number="2.5.3"
                  section-title="Conditional Expression" section-pointer="id-conditional-expr"/>
               <state time="0">
                  <query name="id-conditional-expr-09" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
               </state>
               <state time="1">
                  <query name="id-conditional-expr-09-test" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="Fragment"
                     >id-conditional-expr-09.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-conditional-expr-010" FilePath="ConditionalExpression/"
               scenario="standard" Creator="Carmelo Montanez">
               <description>Evaluation of a delete expression used with conditional expression where
                  a branch (the "else") is an updating expression. The "then" returns
                  fn:error().</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.2" section-title="Delete"
                  section-pointer="id-delete"/>
               <spec-citation spec="XQUPDATE" section-number="2.5.3"
                  section-title="Conditional Expression" section-pointer="id-conditional-expr"/>
               <state time="0">
                  <query name="id-conditional-expr-010" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
               </state>
               <state time="1">
                  <query name="id-conditional-expr-010-test" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="Fragment"
                     >id-conditional-expr-010.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-conditional-expr-011" FilePath="ConditionalExpression/"
               scenario="runtime-error" Creator="Carmelo Montanez">
               <description>Evaluation of a delete expression used with conditional expression where
                  a branch (the "then") is an updating expression. The "else" print a
                  string</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.2" section-title="Delete"
                  section-pointer="id-delete"/>
               <spec-citation spec="XQUPDATE" section-number="2.5.3"
                  section-title="Conditional Expression" section-pointer="id-conditional-expr"/>
               <state time="0">
                  <query name="id-conditional-expr-011" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context"
                     >employeesNIST</input-file>
                  <expected-error>XUST0001</expected-error>
               </state>
            </test-case>
            <test-case name="id-conditional-expr-012" FilePath="ConditionalExpression/"
               scenario="runtime-error" Creator="Carmelo Montanez">
               <description>Evaluation of a delete expression used with conditional expression where
                  a branch (the "else") is an updating expression. The "then" print a
                  string</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.2" section-title="Delete"
                  section-pointer="id-delete"/>
               <spec-citation spec="XQUPDATE" section-number="2.5.3"
                  section-title="Conditional Expression" section-pointer="id-conditional-expr"/>
               <state time="0">
                  <query name="id-conditional-expr-012" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context"
                     >employeesNIST</input-file>
                  <expected-error>XUST0001</expected-error>
               </state>
            </test-case>
            <test-case name="id-conditional-expr-013" FilePath="ConditionalExpression/"
               scenario="standard" Creator="Carmelo Montanez">
               <description>Evaluates a replace expression used together with a conditional
                  expression where a branch (the "then") is an updating (replace) expression. The
                  "else" return the empty sequence.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.3" section-title="Replace"
                  section-pointer="id-replace"/>
               <spec-citation spec="XQUPDATE" section-number="2.5.3"
                  section-title="Conditional Expression" section-pointer="id-conditional-expr"/>
               <spec-citation spec="XQUPDATE" section-number="2.4.3.2"
                  section-title="Replacing the Value of a Node"
                  section-pointer="id-replacing-node-value"/>
               <state time="0">
                  <query name="id-conditional-expr-013" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
               </state>
               <state time="1">
                  <query name="id-conditional-expr-013-test" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="Fragment"
                     >id-conditional-expr-013.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-conditional-expr-014" FilePath="ConditionalExpression/"
               scenario="standard" Creator="Carmelo Montanez">
               <description>Evaluates a replace expression used together with a conditional
                  expression where a branch (the "else") is an updating (replace) expression. The
                  "then" return the empty sequence.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.3" section-title="Replace"
                  section-pointer="id-replace"/>
               <spec-citation spec="XQUPDATE" section-number="2.5.3"
                  section-title="Conditional Expression" section-pointer="id-conditional-expr"/>
               <spec-citation spec="XQUPDATE" section-number="2.4.3.2"
                  section-title="Replacing the Value of a Node"
                  section-pointer="id-replacing-node-value"/>
               <state time="0">
                  <query name="id-conditional-expr-014" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
               </state>
               <state time="1">
                  <query name="id-conditional-expr-014-test" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="Fragment"
                     >id-conditional-expr-014.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-conditional-expr-015" FilePath="ConditionalExpression/"
               scenario="standard" Creator="Carmelo Montanez">
               <description>Evaluates a replace expression used together with a conditional
                  expression where a branch (the "then") is an updating (replace) expression. The
                  "else" invokes the fn:error function.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.3" section-title="Replace"
                  section-pointer="id-replace"/>
               <spec-citation spec="XQUPDATE" section-number="2.5.3"
                  section-title="Conditional Expression" section-pointer="id-conditional-expr"/>
               <spec-citation spec="XQUPDATE" section-number="2.4.3.2"
                  section-title="Replacing the Value of a Node"
                  section-pointer="id-replacing-node-value"/>
               <state time="0">
                  <query name="id-conditional-expr-015" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
               </state>
               <state time="1">
                  <query name="id-conditional-expr-015-test" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="Fragment"
                     >id-conditional-expr-015.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-conditional-expr-016" FilePath="ConditionalExpression/"
               scenario="standard" Creator="Carmelo Montanez">
               <description>Evaluates a replace expression used together with a conditional
                  expression where a branch (the "else") is an updating (replace) expression. The
                  "then" invokes the fn:error function.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.3" section-title="Replace"
                  section-pointer="id-replace"/>
               <spec-citation spec="XQUPDATE" section-number="2.5.3"
                  section-title="Conditional Expression" section-pointer="id-conditional-expr"/>
               <spec-citation spec="XQUPDATE" section-number="2.4.3.2"
                  section-title="Replacing the Value of a Node"
                  section-pointer="id-replacing-node-value"/>
               <state time="0">
                  <query name="id-conditional-expr-016" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
               </state>
               <state time="1">
                  <query name="id-conditional-expr-016-test" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="Fragment"
                     >id-conditional-expr-016.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-conditional-expr-017" FilePath="ConditionalExpression/"
               scenario="runtime-error" Creator="Carmelo Montanez">
               <description>Evaluates a replace expression used together with a conditional
                  expression where a branch (the then) is an updating (replace) expression. The
                  "else" just return a string.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.3" section-title="Replace"
                  section-pointer="id-replace"/>
               <spec-citation spec="XQUPDATE" section-number="2.5.3"
                  section-title="Conditional Expression" section-pointer="id-conditional-expr"/>
               <spec-citation spec="XQUPDATE" section-number="2.4.3.2"
                  section-title="Replacing the Value of a Node"
                  section-pointer="id-replacing-node-value"/>
               <state time="0">
                  <query name="id-conditional-expr-017" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context"
                     >employeesNIST</input-file>
                  <expected-error>XUST0001</expected-error>
               </state>
            </test-case>
            <test-case name="id-conditional-expr-018" FilePath="ConditionalExpression/"
               scenario="runtime-error" Creator="Carmelo Montanez">
               <description>Evaluates a replace expression used together with a conditional
                  expression where a branch (the else) is an updating (replace) expression. The
                  "then" just return a string.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.3" section-title="Replace"
                  section-pointer="id-replace"/>
               <spec-citation spec="XQUPDATE" section-number="2.5.3"
                  section-title="Conditional Expression" section-pointer="id-conditional-expr"/>
               <spec-citation spec="XQUPDATE" section-number="2.4.3.2"
                  section-title="Replacing the Value of a Node"
                  section-pointer="id-replacing-node-value"/>
               <state time="0">
                  <query name="id-conditional-expr-018" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context"
                     >employeesNIST</input-file>
                  <expected-error>XUST0001</expected-error>
               </state>
            </test-case>
            <test-case name="id-conditional-expr-019" FilePath="ConditionalExpression/"
               scenario="standard" Creator="Carmelo Montanez">
               <description>Evaluation of a rename expression used with a conditional expression
                  where a branch (the "then") is an updating expression. The "else" returns the
                  empty sequence.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.4" section-title="Rename"
                  section-pointer="id-rename"/>
               <spec-citation spec="XQUPDATE" section-number="2.5.3"
                  section-title="Conditional Expression" section-pointer="id-conditional-expr"/>
               <state time="0">
                  <query name="id-conditional-expr-019" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
               </state>
               <state time="1">
                  <query name="id-conditional-expr-019-test" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="Fragment"
                     >id-conditional-expr-019.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-conditional-expr-020" FilePath="ConditionalExpression/"
               scenario="standard" Creator="Carmelo Montanez">
               <description>Evaluation of a rename expression used with a conditional expression
                  where a branch (the "else") is an updating expression. The "then" returns the
                  empty sequence.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.4" section-title="Rename"
                  section-pointer="id-rename"/>
               <spec-citation spec="XQUPDATE" section-number="2.5.3"
                  section-title="Conditional Expression" section-pointer="id-conditional-expr"/>
               <state time="0">
                  <query name="id-conditional-expr-020" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
               </state>
               <state time="1">
                  <query name="id-conditional-expr-020-test" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="Fragment"
                     >id-conditional-expr-020.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-conditional-expr-021" FilePath="ConditionalExpression/"
               scenario="standard" Creator="Carmelo Montanez">
               <description>Evaluation of a rename expression used with a conditional expression
                  where a branch (the "then") is an updating expression. The "else" invokes the
                  fn:error function.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.4" section-title="Rename"
                  section-pointer="id-rename"/>
               <spec-citation spec="XQUPDATE" section-number="2.5.3"
                  section-title="Conditional Expression" section-pointer="id-conditional-expr"/>
               <state time="0">
                  <query name="id-conditional-expr-021" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
               </state>
               <state time="1">
                  <query name="id-conditional-expr-021-test" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="Fragment"
                     >id-conditional-expr-021.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-conditional-expr-022" FilePath="ConditionalExpression/"
               scenario="standard" Creator="Carmelo Montanez">
               <description>Evaluation of a rename expression used with a conditional expression
                  where a branch (the "else") is an updating expression. The "then" invokes the
                  fn:error function.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.4" section-title="Rename"
                  section-pointer="id-rename"/>
               <spec-citation spec="XQUPDATE" section-number="2.5.3"
                  section-title="Conditional Expression" section-pointer="id-conditional-expr"/>
               <state time="0">
                  <query name="id-conditional-expr-022" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
               </state>
               <state time="1">
                  <query name="id-conditional-expr-022-test" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="Fragment"
                     >id-conditional-expr-022.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-conditional-expr-023" FilePath="ConditionalExpression/"
               scenario="runtime-error" Creator="Carmelo Montanez">
               <description>Evaluation of rename expression used with conditional expression where a
                  branch (the "then") is an updating expression. The "else" prints a
                  string.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.4" section-title="Rename"
                  section-pointer="id-rename"/>
               <spec-citation spec="XQUPDATE" section-number="2.5.3"
                  section-title="Conditional Expression" section-pointer="id-conditional-expr"/>
               <state time="0">
                  <query name="id-conditional-expr-023" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context"
                     >employeesNIST</input-file>
                  <expected-error>XUST0001</expected-error>
               </state>
            </test-case>
            <test-case name="id-conditional-expr-024" FilePath="ConditionalExpression/"
               scenario="runtime-error" Creator="Carmelo Montanez">
               <description>Evaluation of a rename expression used with conditional expression where
                  a branch (the "else") is an updating expression. The "then" print a
                  string.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.4" section-title="Rename"
                  section-pointer="id-rename"/>
               <spec-citation spec="XQUPDATE" section-number="2.5.3"
                  section-title="Conditional Expression" section-pointer="id-conditional-expr"/>
               <state time="0">
                  <query name="id-conditional-expr-024" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context"
                     >employeesNIST</input-file>
                  <expected-error>XUST0001</expected-error>
               </state>
            </test-case>
            <test-case name="id-conditional-expr-025" FilePath="ConditionalExpression/"
               scenario="standard" Creator="Carmelo Montanez">
               <description>Evaluates a transform expression together with a conditional expression
                  where a branch (the "then")is an updating (transform) and the "else" returns the
                  empty sequence.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.5" section-title="Transform"
                  section-pointer="id-transform"/>
               <spec-citation spec="XQUPDATE" section-number="2.5.3"
                  section-title="Conditional Expression" section-pointer="id-conditional-expr"/>
               <state time="0">
                  <query name="id-conditional-expr-025" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="Fragment"
                     >id-conditional-expr-025.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-conditional-expr-026" FilePath="ConditionalExpression/"
               scenario="standard" Creator="Carmelo Montanez">
               <description>Evaluates a transform expression together with a conditional expression
                  where a branch (the "else")is an updating (transform) and the "then" returns the
                  empty sequence.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.5" section-title="Transform"
                  section-pointer="id-transform"/>
               <spec-citation spec="XQUPDATE" section-number="2.5.3"
                  section-title="Conditional Expression" section-pointer="id-conditional-expr"/>
               <state time="0">
                  <query name="id-conditional-expr-026" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="Fragment"
                     >id-conditional-expr-026.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-conditional-expr-027" FilePath="ConditionalExpression/"
               scenario="standard" Creator="Carmelo Montanez">
               <description>Evaluates a transform expression together with a conditional expression
                  where a branch (the "then")is an updating (transform) and the "else" is an
                  invokation to fn:error().</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.5" section-title="Transform"
                  section-pointer="id-transform"/>
               <spec-citation spec="XQUPDATE" section-number="2.5.3"
                  section-title="Conditional Expression" section-pointer="id-conditional-expr"/>
               <state time="0">
                  <query name="id-conditional-expr-027" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="Fragment"
                     >id-conditional-expr-027.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-conditional-expr-028" FilePath="ConditionalExpression/"
               scenario="standard" Creator="Carmelo Montanez">
               <description>Evaluates a transform expression together with a conditional expression
                  where a branch (the "else")is an updating (transform) and the "then" is an
                  invokation to fn:error().</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.5" section-title="Transform"
                  section-pointer="id-transform"/>
               <spec-citation spec="XQUPDATE" section-number="2.5.3"
                  section-title="Conditional Expression" section-pointer="id-conditional-expr"/>
               <state time="0">
                  <query name="id-conditional-expr-028" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="Fragment"
                     >id-conditional-expr-028.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-conditional-expr-029" FilePath="ConditionalExpression/"
               scenario="standard" Creator="Carmelo Montanez">
               <description>Evaluates a transform expression together with a conditional expression
                  where a branch (the "then")is an non updating (transform) and the "else" returns a
                  string.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.5" section-title="Transform"
                  section-pointer="id-transform"/>
               <spec-citation spec="XQUPDATE" section-number="2.5.3"
                  section-title="Conditional Expression" section-pointer="id-conditional-expr"/>
               <state time="0">
                  <query name="id-conditional-expr-029" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context"
                     >employeesNIST</input-file>
                  <output-file role="principal" compare="Fragment"
                     >id-conditional-expr-029.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-conditional-expr-030" FilePath="ConditionalExpression/"
               scenario="standard" Creator="Carmelo Montanez">
               <description>Evaluates a transform expression together with a conditional expression
                  where a branch (the "else")is a non updating (transform) and the "then" return a
                  string.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.5" section-title="Transform"
                  section-pointer="id-transform"/>
               <spec-citation spec="XQUPDATE" section-number="2.5.3"
                  section-title="Conditional Expression" section-pointer="id-conditional-expr"/>
               <state time="0">
                  <query name="id-conditional-expr-030" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context"
                     >employeesNIST</input-file>
                  <output-file role="principal" compare="Fragment"
                     >id-conditional-expr-030.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-conditional-expr-031" FilePath="ConditionalExpression/"
               scenario="standard" Creator="Carmelo Montanez">
               <description>Evaluates a transform expression together with a conditional expression
                  where the if-clause is an non-updating (transform) expression.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.5" section-title="Transform"
                  section-pointer="id-transform"/>
               <spec-citation spec="XQUPDATE" section-number="2.5.3"
                  section-title="Conditional Expression" section-pointer="id-conditional-expr"/>
               <state time="0">
                  <query name="id-conditional-expr-031" date="2007-08-02"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="Text"
                     >id-conditional-expr-031.txt</output-file>
               </state>
            </test-case>
            <test-case name="id-conditional-expr-032" FilePath="ConditionalExpression/"
               scenario="runtime-error" Creator="Carmelo Montanez">
               <description>Evaluates a transform expression together with a conditional expression
                  where the if-clause is an updating (delete) expression.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.5" section-title="Transform"
                  section-pointer="id-transform"/>
               <spec-citation spec="XQUPDATE" section-number="2.5.3"
                  section-title="Conditional Expression" section-pointer="id-conditional-expr"/>
               <state time="0">
                  <query name="id-conditional-expr-032" date="2007-08-02"/>
                  <input-file role="principal-data" variable="input-context"
                     >employeesNIST</input-file>
                  <expected-error>XUST0001</expected-error>
               </state>
            </test-case>
            <test-case name="id-conditional-expr-033" FilePath="ConditionalExpression/"
               scenario="standard" Creator="Carmelo Montanez">
               <description>Evaluates a conditional expression, where both branches are updating
                  expressions (delete). Both delete the same node (only one is
                  selected).</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.2" section-title="Delete"
                  section-pointer="id-delete"/>
               <spec-citation spec="XQUPDATE" section-number="2.5.3"
                  section-title="Conditional Expression" section-pointer="id-conditional-expr"/>
               <state time="0">
                  <query name="id-conditional-expr-033" date="2007-08-05"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
               </state>
               <state time="1">
                  <query name="id-conditional-expr-033-test" date="2007-08-05"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="Fragment"
                     >id-conditional-expr-033.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-conditional-expr-034" FilePath="ConditionalExpression/"
               scenario="runtime-error" Creator="Carmelo Montanez">
               <description>Evaluates a conditional expression, where the if branch contains a
                  delete expression and the else branch contains transform expression.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.5" section-title="Transform"
                  section-pointer="id-transform"/>
               <spec-citation spec="XQUPDATE" section-number="2.5.3"
                  section-title="Conditional Expression" section-pointer="id-conditional-expr"/>
               <state time="0">
                  <query name="id-conditional-expr-034" date="2007-08-06"/>
                  <input-file role="principal-data" variable="input-context"
                     >employeesNIST</input-file>
                  <expected-error>XUST0001</expected-error>
               </state>
            </test-case>
            <test-case name="id-conditional-expr-035" FilePath="ConditionalExpression/"
               scenario="standard" Creator="Carmelo Montanez">
               <description>Evaluates a conditional expression, where both branches contains a
                  transform expression.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.5" section-title="Transform"
                  section-pointer="id-transform"/>
               <spec-citation spec="XQUPDATE" section-number="2.5.3"
                  section-title="Conditional Expression" section-pointer="id-conditional-expr"/>
               <state time="0">
                  <query name="id-conditional-expr-035" date="2007-08-06"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="Fragment"
                     >id-conditional-expr-035.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-conditional-expr-036" FilePath="ConditionalExpression/"
               scenario="standard" Creator="Andrew Eisenberg">
               <description>Updating conditional expression in a conditional
                  expression.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.3.2"
                  section-title="Replacing the Value of a Node"
                  section-pointer="id-replacing-node-value"/>
               <spec-citation spec="XQUPDATE" section-number="2.5.3"
                  section-title="Conditional Expression" section-pointer="id-conditional-expr"/>
               <state time="0">
                  <query name="id-conditional-expr-036" date="2008-10-26"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
               </state>
               <state time="1">
                  <query name="id-conditional-expr-036-test" date="2008-10-26"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="XML"
                     >id-conditional-expr-036.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-conditional-expr-037" FilePath="ConditionalExpression/"
               scenario="standard" Creator="Andrew Eisenberg">
               <description>Vacuous conditional expression in a conditional
                  expression.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.3.2"
                  section-title="Replacing the Value of a Node"
                  section-pointer="id-replacing-node-value"/>
               <spec-citation spec="XQUPDATE" section-number="2.5.3"
                  section-title="Conditional Expression" section-pointer="id-conditional-expr"/>
               <state time="0">
                  <query name="id-conditional-expr-037" date="2008-10-26"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
               </state>
               <state time="1">
                  <query name="id-conditional-expr-037-test" date="2008-10-26"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="XML"
                     >id-conditional-expr-037.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-conditional-expr-038" FilePath="ConditionalExpression/"
               scenario="standard" Creator="Andrew Eisenberg">
               <description>Simple conditional expression in a conditional expression.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.3.2"
                  section-title="Replacing the Value of a Node"
                  section-pointer="id-replacing-node-value"/>
               <spec-citation spec="XQUPDATE" section-number="2.5.3"
                  section-title="Conditional Expression" section-pointer="id-conditional-expr"/>
               <state time="0">
                  <query name="id-conditional-expr-038" date="2008-10-26"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <expected-error>XUST0001</expected-error>
               </state>
            </test-case>
         </test-group>
         <test-group name="CommaExpression">
            <GroupInfo>
               <title>Comma Expressions</title>
               <description/>
            </GroupInfo>
            <test-case name="id-comma-expr-01" FilePath="CommaExpression/" scenario="standard"
               Creator="Carmelo Montanez">
               <description>Evaluates an insert expression used with comma expression where a both
                  expressions are updating expressions.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.1" section-title="Insert"
                  section-pointer="id-insert"/>
               <spec-citation spec="XQUPDATE" section-number="2.5.4"
                  section-title="Comma Expression" section-pointer="id-comma-expr"/>
               <state time="0">
                  <query name="id-comma-expr-01" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
               </state>
               <state time="1">
                  <query name="id-comma-expr-01-test" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="Fragment"
                     >id-comma-expr-01.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-comma-expr-02" FilePath="CommaExpression/" scenario="standard"
               Creator="Carmelo Montanez">
               <description>Evaluates an insert expression used with comma expression where first
                  expression is an updating expression and second one is ().</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.1" section-title="Insert"
                  section-pointer="id-insert"/>
               <spec-citation spec="XQUPDATE" section-number="2.5.4"
                  section-title="Comma Expression" section-pointer="id-comma-expr"/>
               <state time="0">
                  <query name="id-comma-expr-02" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
               </state>
               <state time="1">
                  <query name="id-comma-expr-02-test" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="Fragment"
                     >id-comma-expr-02.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-comma-expr-03" FilePath="CommaExpression/" scenario="standard"
               Creator="Carmelo Montanez">
               <description>Evaluates an insert expression used with comma expression where first
                  expression is () and second expression is an updating expression.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.1" section-title="Insert"
                  section-pointer="id-insert"/>
               <spec-citation spec="XQUPDATE" section-number="2.5.4"
                  section-title="Comma Expression" section-pointer="id-comma-expr"/>
               <state time="0">
                  <query name="id-comma-expr-03" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
               </state>
               <state time="1">
                  <query name="id-comma-expr-03-test" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="Fragment"
                     >id-comma-expr-03.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-comma-expr-04" FilePath="CommaExpression/" scenario="runtime-error"
               Creator="Carmelo Montanez">
               <description>Evaluates an insert expression used with comma expression where first
                  expression is an updating expression and second one is call to
                  fn:error().</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.1" section-title="Insert"
                  section-pointer="id-insert"/>
               <spec-citation spec="XQUPDATE" section-number="2.5.4"
                  section-title="Comma Expression" section-pointer="id-comma-expr"/>
               <state time="0">
                  <query name="id-comma-expr-04" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <expected-error>FOER0000</expected-error>
               </state>
               <state time="1">
                  <query name="id-comma-expr-04-test" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="Fragment"
                     >id-comma-expr-04.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-comma-expr-05" FilePath="CommaExpression/" scenario="runtime-error"
               Creator="Carmelo Montanez">
               <description>Evaluates an insert expression used with comma expression where first
                  expression is a call to fn:error() and second expression is an updating
                  expression.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.1" section-title="Insert"
                  section-pointer="id-insert"/>
               <spec-citation spec="XQUPDATE" section-number="2.5.4"
                  section-title="Comma Expression" section-pointer="id-comma-expr"/>
               <state time="0">
                  <query name="id-comma-expr-05" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <expected-error>FOER0000</expected-error>
               </state>
               <state time="1">
                  <query name="id-comma-expr-05-test" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="Fragment"
                     >id-comma-expr-05.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-comma-expr-06" FilePath="CommaExpression/" scenario="runtime-error"
               Creator="Carmelo Montanez">
               <description>Evaluates an insert expression used with comma expression where first
                  expression is an updating expression and second one a mathematical
                  expression.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.1" section-title="Insert"
                  section-pointer="id-insert"/>
               <spec-citation spec="XQUPDATE" section-number="2.5.4"
                  section-title="Comma Expression" section-pointer="id-comma-expr"/>
               <state time="0">
                  <query name="id-comma-expr-06" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context"
                     >employeesNIST</input-file>
                  <expected-error>XUST0001</expected-error>
               </state>
            </test-case>
            <test-case name="id-comma-expr-07" FilePath="CommaExpression/" scenario="runtime-error"
               Creator="Carmelo Montanez">
               <description>Evaluates an insert expression used with comma expression where first
                  expression is mathematical expression and second one is an updating
                  expression.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.1" section-title="Insert"
                  section-pointer="id-insert"/>
               <spec-citation spec="XQUPDATE" section-number="2.5.4"
                  section-title="Comma Expression" section-pointer="id-comma-expr"/>
               <state time="0">
                  <query name="id-comma-expr-07" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context"
                     >employeesNIST</input-file>
                  <expected-error>XUST0001</expected-error>
               </state>
            </test-case>
            <test-case name="id-comma-expr-08" FilePath="CommaExpression/" scenario="standard"
               Creator="Carmelo Montanez">
               <description>Evaluation a delete expression used with comma expression where both
                  expressions are updating expressions.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.2" section-title="Delete"
                  section-pointer="id-delete"/>
               <spec-citation spec="XQUPDATE" section-number="2.5.4"
                  section-title="Comma Expression" section-pointer="id-comma-expr"/>
               <state time="0">
                  <query name="id-comma-expr-08" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
               </state>
               <state time="1">
                  <query name="id-comma-expr-08-test" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="Fragment"
                     >id-comma-expr-08.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-comma-expr-09" FilePath="CommaExpression/" scenario="standard"
               Creator="Carmelo Montanez">
               <description>Evaluation of a delete expression used with comma expression where first
                  expression is an updating expression and the secon one is ().</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.2" section-title="Delete"
                  section-pointer="id-delete"/>
               <spec-citation spec="XQUPDATE" section-number="2.5.4"
                  section-title="Comma Expression" section-pointer="id-comma-expr"/>
               <state time="0">
                  <query name="id-comma-expr-09" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
               </state>
               <state time="1">
                  <query name="id-comma-expr-09-test" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="Fragment"
                     >id-comma-expr-09.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-comma-expr-010" FilePath="CommaExpression/" scenario="standard"
               Creator="Carmelo Montanez">
               <description>Evaluation of a delete expression used with comma expression where first
                  expression is () and second expression is an updating expression.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.2" section-title="Delete"
                  section-pointer="id-delete"/>
               <spec-citation spec="XQUPDATE" section-number="2.5.4"
                  section-title="Comma Expression" section-pointer="id-comma-expr"/>
               <state time="0">
                  <query name="id-comma-expr-010" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
               </state>
               <state time="1">
                  <query name="id-comma-expr-010-test" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="Fragment"
                     >id-comma-expr-010.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-comma-expr-011" FilePath="CommaExpression/" scenario="runtime-error"
               Creator="Carmelo Montanez">
               <description>Evaluation of a delete expression used with comma expression where first
                  expression is an updating expression and the second one a call to
                  fn:error().</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.2" section-title="Delete"
                  section-pointer="id-delete"/>
               <spec-citation spec="XQUPDATE" section-number="2.5.4"
                  section-title="Comma Expression" section-pointer="id-comma-expr"/>
               <state time="0">
                  <query name="id-comma-expr-011" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <expected-error>FOER0000</expected-error>
               </state>
            </test-case>
            <test-case name="id-comma-expr-012" FilePath="CommaExpression/" scenario="runtime-error"
               Creator="Carmelo Montanez">
               <description>Evaluation of a delete expression used with comma expression where
                  second expression is an updating expression and the first one a call to
                  fn:error().</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.2" section-title="Delete"
                  section-pointer="id-delete"/>
               <spec-citation spec="XQUPDATE" section-number="2.5.4"
                  section-title="Comma Expression" section-pointer="id-comma-expr"/>
               <state time="0">
                  <query name="id-comma-expr-012" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <expected-error>FOER0000</expected-error>
               </state>
            </test-case>
            <test-case name="id-comma-expr-013" FilePath="CommaExpression/" scenario="runtime-error"
               Creator="Carmelo Montanez">
               <description>Evaluation of a delete expression used with comma expression where first
                  expression is an updating expression and the second one is a mathematical
                  expression.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.2" section-title="Delete"
                  section-pointer="id-delete"/>
               <spec-citation spec="XQUPDATE" section-number="2.5.4"
                  section-title="Comma Expression" section-pointer="id-comma-expr"/>
               <state time="0">
                  <query name="id-comma-expr-013" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context"
                     >employeesNIST</input-file>
                  <expected-error>XUST0001</expected-error>
               </state>
            </test-case>
            <test-case name="id-comma-expr-014" FilePath="CommaExpression/" scenario="runtime-error"
               Creator="Carmelo Montanez">
               <description>Evaluation of a delete expression used with comma expression where first
                  expression is a mathematical expression and the second one is an updating
                  expression.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.2" section-title="Delete"
                  section-pointer="id-delete"/>
               <spec-citation spec="XQUPDATE" section-number="2.5.4"
                  section-title="Comma Expression" section-pointer="id-comma-expr"/>
               <state time="0">
                  <query name="id-comma-expr-014" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context"
                     >employeesNIST</input-file>
                  <expected-error>XUST0001</expected-error>
               </state>
            </test-case>
            <test-case name="id-comma-expr-015" FilePath="CommaExpression/" scenario="standard"
               Creator="Carmelo Montanez">
               <description>Evaluation of a replace expression used with comma expression where both
                  expressions are updating (replace) expressions.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.3" section-title="Replace"
                  section-pointer="id-replace"/>
               <spec-citation spec="XQUPDATE" section-number="2.5.4"
                  section-title="Comma Expression" section-pointer="id-comma-expr"/>
               <spec-citation spec="XQUPDATE" section-number="2.4.3.2"
                  section-title="Replacing the Value of a Node"
                  section-pointer="id-replacing-node-value"/>
               <state time="0">
                  <query name="id-comma-expr-015" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
               </state>
               <state time="1">
                  <query name="id-comma-expr-015-test" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="Fragment"
                     >id-comma-expr-015.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-comma-expr-016" FilePath="CommaExpression/" scenario="standard"
               Creator="Carmelo Montanez">
               <description>Evaluation of a replace expression used with comma expression where
                  first expression is an updating (replace) expression and the second one is
                  ().</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.3" section-title="Replace"
                  section-pointer="id-replace"/>
               <spec-citation spec="XQUPDATE" section-number="2.5.4"
                  section-title="Comma Expression" section-pointer="id-comma-expr"/>
               <spec-citation spec="XQUPDATE" section-number="2.4.3.2"
                  section-title="Replacing the Value of a Node"
                  section-pointer="id-replacing-node-value"/>
               <state time="0">
                  <query name="id-comma-expr-016" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
               </state>
               <state time="1">
                  <query name="id-comma-expr-016-test" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="Fragment"
                     >id-comma-expr-016.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-comma-expr-017" FilePath="CommaExpression/" scenario="standard"
               Creator="Carmelo Montanez">
               <description>Evaluation of a replace expression used with comma expression where
                  first expression is the empty sequence and the second one is an updating (replace)
                  expression.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.3" section-title="Replace"
                  section-pointer="id-replace"/>
               <spec-citation spec="XQUPDATE" section-number="2.5.4"
                  section-title="Comma Expression" section-pointer="id-comma-expr"/>
               <spec-citation spec="XQUPDATE" section-number="2.4.3.2"
                  section-title="Replacing the Value of a Node"
                  section-pointer="id-replacing-node-value"/>
               <state time="0">
                  <query name="id-comma-expr-017" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
               </state>
               <state time="1">
                  <query name="id-comma-expr-017-test" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="Fragment"
                     >id-comma-expr-017.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-comma-expr-018" FilePath="CommaExpression/" scenario="runtime-error"
               Creator="Carmelo Montanez">
               <description>Evaluation of a replace expression used with comma expression where
                  first expression is an updating (replace) expression and the second one a call to
                  fn:error().</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.3" section-title="Replace"
                  section-pointer="id-replace"/>
               <spec-citation spec="XQUPDATE" section-number="2.5.4"
                  section-title="Comma Expression" section-pointer="id-comma-expr"/>
               <spec-citation spec="XQUPDATE" section-number="2.4.3.2"
                  section-title="Replacing the Value of a Node"
                  section-pointer="id-replacing-node-value"/>
               <state time="0">
                  <query name="id-comma-expr-018" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <expected-error>FOER0000</expected-error>
               </state>
            </test-case>
            <test-case name="id-comma-expr-019" FilePath="CommaExpression/" scenario="runtime-error"
               Creator="Carmelo Montanez">
               <description>Evaluation of a replace expression used with comma expression where
                  first expression is a call to fn:error() and the second one is an updating
                  (replace) expression.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.3" section-title="Replace"
                  section-pointer="id-replace"/>
               <spec-citation spec="XQUPDATE" section-number="2.5.4"
                  section-title="Comma Expression" section-pointer="id-comma-expr"/>
               <spec-citation spec="XQUPDATE" section-number="2.4.3.2"
                  section-title="Replacing the Value of a Node"
                  section-pointer="id-replacing-node-value"/>
               <state time="0">
                  <query name="id-comma-expr-019" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <expected-error>FOER0000</expected-error>
               </state>
            </test-case>
            <test-case name="id-comma-expr-020" FilePath="CommaExpression/" scenario="runtime-error"
               Creator="Carmelo Montanez">
               <description>Evaluation of a replace expression used with comma expression where
                  first expression is an updating (replace) expression and the second one is a
                  mathematical expression.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.3" section-title="Replace"
                  section-pointer="id-replace"/>
               <spec-citation spec="XQUPDATE" section-number="2.5.4"
                  section-title="Comma Expression" section-pointer="id-comma-expr"/>
               <spec-citation spec="XQUPDATE" section-number="2.4.3.2"
                  section-title="Replacing the Value of a Node"
                  section-pointer="id-replacing-node-value"/>
               <state time="0">
                  <query name="id-comma-expr-020" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context"
                     >employeesNIST</input-file>
                  <expected-error>XUST0001</expected-error>
               </state>
            </test-case>
            <test-case name="id-comma-expr-021" FilePath="CommaExpression/" scenario="runtime-error"
               Creator="Carmelo Montanez">
               <description>Evaluation of a replace expression used with comma expression where
                  first expression is a mathematical expression and second one is an updating
                  (replace) expression.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.3" section-title="Replace"
                  section-pointer="id-replace"/>
               <spec-citation spec="XQUPDATE" section-number="2.5.4"
                  section-title="Comma Expression" section-pointer="id-comma-expr"/>
               <spec-citation spec="XQUPDATE" section-number="2.4.3.2"
                  section-title="Replacing the Value of a Node"
                  section-pointer="id-replacing-node-value"/>
               <state time="0">
                  <query name="id-comma-expr-021" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context"
                     >employeesNIST</input-file>
                  <expected-error>XUST0001</expected-error>
               </state>
            </test-case>
            <test-case name="id-comma-expr-022" FilePath="CommaExpression/" scenario="standard"
               Creator="Carmelo Montanez">
               <description>Evaluation of rename expression used with comma expression where both
                  expressions are updating expressions. </description>
               <spec-citation spec="XQUPDATE" section-number="2.4.4" section-title="Rename"
                  section-pointer="id-rename"/>
               <spec-citation spec="XQUPDATE" section-number="2.5.4"
                  section-title="Comma Expression" section-pointer="id-comma-expr"/>
               <state time="0">
                  <query name="id-comma-expr-022" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
               </state>
               <state time="1">
                  <query name="id-comma-expr-022-test" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="Fragment"
                     >id-comma-expr-022.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-comma-expr-023" FilePath="CommaExpression/" scenario="standard"
               Creator="Carmelo Montanez">
               <description>Evaluation of a rename expression used with comma expression where first
                  expression is an updating expression and the second one is ().</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.4" section-title="Rename"
                  section-pointer="id-rename"/>
               <spec-citation spec="XQUPDATE" section-number="2.5.4"
                  section-title="Comma Expression" section-pointer="id-comma-expr"/>
               <state time="0">
                  <query name="id-comma-expr-023" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
               </state>
               <state time="1">
                  <query name="id-comma-expr-023-test" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="Fragment"
                     >id-comma-expr-023.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-comma-expr-024" FilePath="CommaExpression/" scenario="standard"
               Creator="Carmelo Montanez">
               <description>Evaluation of a rename expression used with comma expression where first
                  expression is () and second expression is an updating expression.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.4" section-title="Rename"
                  section-pointer="id-rename"/>
               <spec-citation spec="XQUPDATE" section-number="2.5.4"
                  section-title="Comma Expression" section-pointer="id-comma-expr"/>
               <state time="0">
                  <query name="id-comma-expr-024" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
               </state>
               <state time="1">
                  <query name="id-comma-expr-024-test" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="Fragment"
                     >id-comma-expr-024.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-comma-expr-025" FilePath="CommaExpression/" scenario="runtime-error"
               Creator="Carmelo Montanez">
               <description>Evaluation of a rename expression used with comma expression where first
                  expression is an updating expression and the second one a call to
                  fn:error().</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.4" section-title="Rename"
                  section-pointer="id-rename"/>
               <spec-citation spec="XQUPDATE" section-number="2.5.4"
                  section-title="Comma Expression" section-pointer="id-comma-expr"/>
               <state time="0">
                  <query name="id-comma-expr-025" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <expected-error>FOER0000</expected-error>
               </state>
            </test-case>
            <test-case name="id-comma-expr-026" FilePath="CommaExpression/" scenario="runtime-error"
               Creator="Carmelo Montanez">
               <description>Evaluation of a rename expression used with comma expression where first
                  expression is a call to fn:error() and the second one updating
                  expression.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.4" section-title="Rename"
                  section-pointer="id-rename"/>
               <spec-citation spec="XQUPDATE" section-number="2.5.4"
                  section-title="Comma Expression" section-pointer="id-comma-expr"/>
               <state time="0">
                  <query name="id-comma-expr-026" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <expected-error>FOER0000</expected-error>
               </state>
            </test-case>
            <test-case name="id-comma-expr-027" FilePath="CommaExpression/" scenario="runtime-error"
               Creator="Carmelo Montanez">
               <description>Evaluation of a rename expression used with comma expression where first
                  expression is an updating expression and the second one is a mathematical
                  expression.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.4" section-title="Rename"
                  section-pointer="id-rename"/>
               <spec-citation spec="XQUPDATE" section-number="2.5.4"
                  section-title="Comma Expression" section-pointer="id-comma-expr"/>
               <state time="0">
                  <query name="id-comma-expr-027" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context"
                     >employeesNIST</input-file>
                  <expected-error>XUST0001</expected-error>
               </state>
            </test-case>
            <test-case name="id-comma-expr-028" FilePath="CommaExpression/" scenario="runtime-error"
               Creator="Carmelo Montanez">
               <description>Evaluation of a rename expression used with comma expression where first
                  expression is a mathematical expression and second one is an updating
                  expression.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.4" section-title="Rename"
                  section-pointer="id-rename"/>
               <spec-citation spec="XQUPDATE" section-number="2.5.4"
                  section-title="Comma Expression" section-pointer="id-comma-expr"/>
               <state time="0">
                  <query name="id-comma-expr-028" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context"
                     >employeesNIST</input-file>
                  <expected-error>XUST0001</expected-error>
               </state>
            </test-case>
            <test-case name="id-comma-expr-029" FilePath="CommaExpression/" scenario="standard"
               Creator="Carmelo Montanez">
               <description>Evaluates a transform expression together with a comma expression where
                  both expressions are non-updating (transform) expressions.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.5" section-title="Transform"
                  section-pointer="id-transform"/>
               <spec-citation spec="XQUPDATE" section-number="2.5.4"
                  section-title="Comma Expression" section-pointer="id-comma-expr"/>
               <state time="0">
                  <query name="id-comma-expr-029" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="Fragment"
                     >id-comma-expr-029.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-comma-expr-030" FilePath="CommaExpression/" scenario="standard"
               Creator="Carmelo Montanez">
               <description>Evaluates a transform expression together with a comma expression where
                  the first expression is an non-updating (transform) expression. The second one is
                  the empty sequence.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.5" section-title="Transform"
                  section-pointer="id-transform"/>
               <spec-citation spec="XQUPDATE" section-number="2.5.4"
                  section-title="Comma Expression" section-pointer="id-comma-expr"/>
               <state time="0">
                  <query name="id-comma-expr-030" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="Fragment"
                     >id-comma-expr-030.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-comma-expr-031" FilePath="CommaExpression/" scenario="standard"
               Creator="Carmelo Montanez">
               <description>Evaluates a transform expression together with a comma expression where
                  the first expression is the empty sequence and the second one is an non-updating
                  (transform) expression.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.5" section-title="Transform"
                  section-pointer="id-transform"/>
               <spec-citation spec="XQUPDATE" section-number="2.5.4"
                  section-title="Comma Expression" section-pointer="id-comma-expr"/>
               <state time="0">
                  <query name="id-comma-expr-031" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="Fragment"
                     >id-comma-expr-031.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-comma-expr-032" FilePath="CommaExpression/" scenario="runtime-error"
               Creator="Carmelo Montanez">
               <description>Evaluates a transform expression together with a comma expression where
                  the first expression is an non-updating (transform) expression and the second one
                  an invokation to "fn:error()".</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.5" section-title="Transform"
                  section-pointer="id-transform"/>
               <spec-citation spec="XQUPDATE" section-number="2.5.4"
                  section-title="Comma Expression" section-pointer="id-comma-expr"/>
               <state time="0">
                  <query name="id-comma-expr-032" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <expected-error>FOER0000</expected-error>
               </state>
            </test-case>
            <test-case name="id-comma-expr-033" FilePath="CommaExpression/" scenario="runtime-error"
               Creator="Carmelo Montanez">
               <description>Evaluates a transform expression together with a comma expression where
                  the first expression is an invokation to "fn:error()" and the second one is an
                  non-updating (transform) expression.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.5" section-title="Transform"
                  section-pointer="id-transform"/>
               <spec-citation spec="XQUPDATE" section-number="2.5.4"
                  section-title="Comma Expression" section-pointer="id-comma-expr"/>
               <state time="0">
                  <query name="id-comma-expr-033" date="2007-06-01"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <expected-error>FOER0000</expected-error>
               </state>
            </test-case>
            <test-case name="id-comma-expr-034" FilePath="CommaExpression/" scenario="standard"
               Creator="Carmelo Montanez">
               <description>Evaluates a transform expression together with a comma expression where
                  the first expression is an non-updating (transform) expression and the second one
                  is a mathematical expression.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.5" section-title="Transform"
                  section-pointer="id-transform"/>
               <spec-citation spec="XQUPDATE" section-number="2.5.4"
                  section-title="Comma Expression" section-pointer="id-comma-expr"/>
               <state time="0">
                  <query name="id-comma-expr-034" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context"
                     >employeesNIST</input-file>
                  <output-file role="principal" compare="Fragment"
                     >id-comma-expr-034.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-comma-expr-035" FilePath="CommaExpression/" scenario="standard"
               Creator="Carmelo Montanez">
               <description>Evaluates a transform expression together with a comma expression where
                  the first expression is a mathematical expression and the second one is an
                  non-updating (transform) expression.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.5" section-title="Transform"
                  section-pointer="id-transform"/>
               <spec-citation spec="XQUPDATE" section-number="2.5.4"
                  section-title="Comma Expression" section-pointer="id-comma-expr"/>
               <state time="0">
                  <query name="id-comma-expr-035" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context"
                     >employeesNIST</input-file>
                  <output-file role="principal" compare="Fragment"
                     >id-comma-expr-035.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-comma-expr-036" FilePath="CommaExpression/" scenario="standard"
               Creator="Andrew Eisenberg">
               <description>Updating comma expression in a conditional expression.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.3.2"
                  section-title="Replacing the Value of a Node"
                  section-pointer="id-replacing-node-value"/>
               <spec-citation spec="XQUPDATE" section-number="2.5.4"
                  section-title="Comma Expression" section-pointer="id-comma-expr"/>
               <state time="0">
                  <query name="id-comma-expr-036" date="2008-10-26"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
               </state>
               <state time="1">
                  <query name="id-comma-expr-036-test" date="2008-10-26"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="XML">id-comma-expr-036.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-comma-expr-037" FilePath="CommaExpression/" scenario="standard"
               Creator="Andrew Eisenberg">
               <description>Vacuous comma expression in a conditional expression.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.3.2"
                  section-title="Replacing the Value of a Node"
                  section-pointer="id-replacing-node-value"/>
               <spec-citation spec="XQUPDATE" section-number="2.5.4"
                  section-title="Comma Expression" section-pointer="id-comma-expr"/>
               <state time="0">
                  <query name="id-comma-expr-037" date="2008-10-26"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
               </state>
               <state time="1">
                  <query name="id-comma-expr-037-test" date="2008-10-26"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="XML">id-comma-expr-037.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-comma-expr-038" FilePath="CommaExpression/" scenario="standard"
               Creator="Andrew Eisenberg">
               <description>Simple comma expression in a conditional expression.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.3.2"
                  section-title="Replacing the Value of a Node"
                  section-pointer="id-replacing-node-value"/>
               <spec-citation spec="XQUPDATE" section-number="2.5.4"
                  section-title="Comma Expression" section-pointer="id-comma-expr"/>
               <state time="0">
                  <query name="id-comma-expr-038" date="2008-10-26"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <expected-error>XUST0001</expected-error>
               </state>
            </test-case>
         </test-group>
         <test-group name="ParenthesizedExpressions">
            <GroupInfo>
               <title>Parenthesized Expression</title>
               <description/>
            </GroupInfo>
            <test-case name="parenthesized-expr-01" FilePath="ParenthesizedExpressions/"
               scenario="standard" Creator="Andrew Eisenberg">
               <description>Parenthesized simple expression.</description>
               <spec-citation spec="XQUPDATE" section-number="2.5.5"
                  section-title="Parenthesized Expression" section-pointer="id-parenthesized-expr"/>
               <state time="0">
                  <query name="parenthesized-expr-01" date="2008-10-25"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="XML"
                     >parenthesized-expr-01.xml</output-file>
               </state>
            </test-case>
            <test-case name="parenthesized-expr-02" FilePath="ParenthesizedExpressions/"
               scenario="standard" Creator="Andrew Eisenberg">
               <description>Parenthesized updating expression.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.2" section-title="Delete"
                  section-pointer="id-delete"/>
               <spec-citation spec="XQUPDATE" section-number="2.5.5"
                  section-title="Parenthesized Expression" section-pointer="id-parenthesized-expr"/>
               <state time="0">
                  <query name="parenthesized-expr-02" date="2008-10-25"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <expected-error>XUST0001</expected-error>
               </state>
            </test-case>
            <test-case name="parenthesized-expr-03" FilePath="ParenthesizedExpressions/"
               scenario="standard" Creator="Andrew Eisenberg">
               <description>Parenthesized vacuous expression.</description>
               <spec-citation spec="XQUPDATE" section-number="2.5.5"
                  section-title="Parenthesized Expression" section-pointer="id-parenthesized-expr"/>
               <state time="0">
                  <query name="parenthesized-expr-03" date="2008-10-25"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="Fragment"
                     >parenthesized-expr-03.xml</output-file>
               </state>
            </test-case>
         </test-group>
         <test-group name="FunctionCall">
            <GroupInfo>
               <title>Function Call</title>
               <description/>
            </GroupInfo>
            <test-case name="id-function-call-01" FilePath="FunctionCall/" scenario="runtime-error"
               Creator="Carmelo Montanez">
               <description>Evaluates an insert expression as an parameter to a function
                  call.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.1" section-title="Insert"
                  section-pointer="id-insert"/>
               <spec-citation spec="XQUPDATE" section-number="2.5.7" section-title="Function Call"
                  section-pointer="id-function-call"/>
               <state time="0">
                  <query name="id-function-call-01" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context"
                     >employeesNIST</input-file>
                  <expected-error>XUST0001</expected-error>
               </state>
            </test-case>
            <test-case name="id-function-call-02" FilePath="FunctionCall/" scenario="runtime-error"
               Creator="Carmelo Montanez">
               <description>Evaluates a delete expression as a parameter to a function
                  call.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.2" section-title="Delete"
                  section-pointer="id-delete"/>
               <spec-citation spec="XQUPDATE" section-number="2.5.7" section-title="Function Call"
                  section-pointer="id-function-call"/>
               <state time="0">
                  <query name="id-function-call-02" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context"
                     >employeesNIST</input-file>
                  <expected-error>XUST0001</expected-error>
               </state>
            </test-case>
            <test-case name="id-function-call-03" FilePath="FunctionCall/" scenario="runtime-error"
               Creator="Carmelo Montanez">
               <description>Evaluates a replace expression as a parameter to a function
                  call.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.3" section-title="Replace"
                  section-pointer="id-replace"/>
               <spec-citation spec="XQUPDATE" section-number="2.5.6"
                  section-title="Function Declaration" section-pointer="id-function-declaration"/>
               <spec-citation spec="XQUPDATE" section-number="2.4.3.1"
                  section-title="Replacing a Node" section-pointer="id-replacing-node"/>
               <state time="0">
                  <query name="id-function-call-03" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context"
                     >employeesNIST</input-file>
                  <expected-error>XUST0001</expected-error>
               </state>
            </test-case>
            <test-case name="id-function-call-04" FilePath="FunctionCall/" scenario="runtime-error"
               Creator="Carmelo Montanez">
               <description>Evaluates a rename expression as a parameter to a function
                  call.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.4" section-title="Rename"
                  section-pointer="id-rename"/>
               <spec-citation spec="XQUPDATE" section-number="2.5.6"
                  section-title="Function Declaration" section-pointer="id-function-declaration"/>
               <state time="0">
                  <query name="id-function-call-04" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context"
                     >employeesNIST</input-file>
                  <expected-error>XUST0001</expected-error>
               </state>
            </test-case>
            <test-case name="id-function-call-05" FilePath="FunctionCall/" scenario="standard"
               Creator="Carmelo Montanez">
               <description>Evaluates a transform expression as a parameter to a function
                  call.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.5" section-title="Transform"
                  section-pointer="id-transform"/>
               <spec-citation spec="XQUPDATE" section-number="2.5.6"
                  section-title="Function Declaration" section-pointer="id-function-declaration"/>
               <state time="0">
                  <query name="id-function-call-05" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context"
                     >employeesNIST</input-file>
                  <output-file role="principal" compare="Fragment"
                     >id-function-call-05.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-function-call-06" FilePath="FunctionCall/" scenario="runtime-error"
               Creator="Carmelo Montanez">
               <description>Evaluates a function call than contains two parameters, one updating
                  (rename) and an integer.</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.4" section-title="Rename"
                  section-pointer="id-rename"/>
               <spec-citation spec="XQUPDATE" section-number="2.5.7" section-title="Function Call"
                  section-pointer="id-function-call"/>
               <state time="0">
                  <query name="id-function-call-06" date="2007-06-04"/>
                  <input-file role="principal-data" variable="input-context"
                     >employeesNIST</input-file>
                  <expected-error>XUST0001</expected-error>
               </state>
            </test-case>
         </test-group>
         <test-group name="OtherExpressions">
            <GroupInfo>
               <title>Other Expressions</title>
               <description/>
            </GroupInfo>
            <test-case name="id-other-expr-01" FilePath="OtherExpressions/" scenario="runtime-error"
               Creator="Carmelo Montanez">
               <description>Evaluates usage of an updating expression (delete) in initializing
                  expression for variable declaration.</description>
               <spec-citation spec="XQUPDATE" section-number="2.2.2"
                  section-title="Variable Declaration" section-pointer="id-variable-declaration"/>
               <state time="0">
                  <query name="id-other-expr-01" date="2007-08-06"/>
                  <input-file role="principal-data" variable="input-context"
                     >employeesNIST</input-file>
                  <expected-error>XUST0001</expected-error>
               </state>
            </test-case>
            <test-case name="id-other-expr-02" FilePath="OtherExpressions/" scenario="runtime-error"
               Creator="Carmelo Montanez">
               <description>Evaluates usage of an updating expression (insert) in initializing
                  expression for variable declaration.</description>
               <spec-citation spec="XQUPDATE" section-number="2.2.2"
                  section-title="Variable Declaration" section-pointer="id-variable-declaration"/>
               <state time="0">
                  <query name="id-other-expr-02" date="2007-08-06"/>
                  <input-file role="principal-data" variable="input-context"
                     >employeesNIST</input-file>
                  <expected-error>XUST0001</expected-error>
               </state>
            </test-case>
            <test-case name="id-other-expr-03" FilePath="OtherExpressions/" scenario="runtime-error"
               Creator="Carmelo Montanez">
               <description>Evaluates usage of an updating expression (rename) in initializing
                  expression for variable declaration.</description>
               <spec-citation spec="XQUPDATE" section-number="2.2.2"
                  section-title="Variable Declaration" section-pointer="id-variable-declaration"/>
               <state time="0">
                  <query name="id-other-expr-03" date="2007-08-06"/>
                  <input-file role="principal-data" variable="input-context"
                     >employeesNIST</input-file>
                  <expected-error>XUST0001</expected-error>
               </state>
            </test-case>
            <test-case name="id-other-expr-04" FilePath="OtherExpressions/" scenario="runtime-error"
               Creator="Carmelo Montanez">
               <description>Evaluates usage of an updating expression (replace) in initializing
                  expression for variable declaration.</description>
               <spec-citation spec="XQUPDATE" section-number="2.2.2"
                  section-title="Variable Declaration" section-pointer="id-variable-declaration"/>
               <state time="0">
                  <query name="id-other-expr-04" date="2007-08-06"/>
                  <input-file role="principal-data" variable="input-context"
                     >employeesNIST</input-file>
                  <expected-error>XUST0001</expected-error>
               </state>
            </test-case>
            <test-case name="id-other-expr-05" FilePath="OtherExpressions/" scenario="standard"
               Creator="Carmelo Montanez">
               <description>Evaluates usage of an non-updating expression (transform) in
                  initializing expression for variable declaration.</description>
               <spec-citation spec="XQUPDATE" section-number="2.2.2"
                  section-title="Variable Declaration" section-pointer="id-variable-declaration"/>
               <state time="0">
                  <query name="id-other-expr-05" date="2007-08-06"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="Fragment"
                     >id-other-expr-05.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-other-expr-06" FilePath="OtherExpressions/" scenario="runtime-error"
               Creator="Carmelo Montanez">
               <description>Evaluates usage of an updating expression (delete) as part of a logical
                  (and) expression and usage of fn:true() function.</description>
               <spec-citation spec="XQUPDATE" section-number="2.5.8"
                  section-title="Other Expressions" section-pointer="id-other-expr"/>
               <state time="0">
                  <query name="id-other-expr-06" date="2007-08-09"/>
                  <input-file role="principal-data" variable="input-context"
                     >employeesNIST</input-file>
                  <expected-error>XUST0001</expected-error>
               </state>
            </test-case>
            <test-case name="id-other-expr-07" FilePath="OtherExpressions/" scenario="runtime-error"
               Creator="Carmelo Montanez">
               <description>Evaluates usage of an updating expression (delete) as part of a logical
                  (or) expression and usage of fn:true() function.</description>
               <spec-citation spec="XQUPDATE" section-number="2.5.8"
                  section-title="Other Expressions" section-pointer="id-other-expr"/>
               <state time="0">
                  <query name="id-other-expr-07" date="2007-08-09"/>
                  <input-file role="principal-data" variable="input-context"
                     >employeesNIST</input-file>
                  <expected-error>XUST0001</expected-error>
               </state>
            </test-case>
            <test-case name="id-other-expr-08" FilePath="OtherExpressions/" scenario="runtime-error"
               Creator="Carmelo Montanez">
               <description>Evaluates usage of an updating expression (delete) as part of a logical
                  (and) expression and usage of fn:false() function.</description>
               <spec-citation spec="XQUPDATE" section-number="2.5.8"
                  section-title="Other Expressions" section-pointer="id-other-expr"/>
               <state time="0">
                  <query name="id-other-expr-08" date="2007-08-09"/>
                  <input-file role="principal-data" variable="input-context"
                     >employeesNIST</input-file>
                  <expected-error>XUST0001</expected-error>
               </state>
            </test-case>
            <test-case name="id-other-expr-09" FilePath="OtherExpressions/" scenario="runtime-error"
               Creator="Carmelo Montanez">
               <description>Evaluates usage of an updating expression (delete) as part of a logical
                  (or) expression and usage of fn:false() function.</description>
               <spec-citation spec="XQUPDATE" section-number="2.5.8"
                  section-title="Other Expressions" section-pointer="id-other-expr"/>
               <state time="0">
                  <query name="id-other-expr-09" date="2007-08-09"/>
                  <input-file role="principal-data" variable="input-context"
                     >employeesNIST</input-file>
                  <expected-error>XUST0001</expected-error>
               </state>
            </test-case>
            <test-case name="id-other-expr-010" FilePath="OtherExpressions/"
               scenario="runtime-error" Creator="Carmelo Montanez">
               <description>Evaluates usage of an updating expression (rename) as part of a logical
                  (and) expression and usage of fn:true() function.</description>
               <spec-citation spec="XQUPDATE" section-number="2.5.8"
                  section-title="Other Expressions" section-pointer="id-other-expr"/>
               <state time="0">
                  <query name="id-other-expr-010" date="2007-08-09"/>
                  <input-file role="principal-data" variable="input-context"
                     >employeesNIST</input-file>
                  <expected-error>XUST0001</expected-error>
               </state>
            </test-case>
            <test-case name="id-other-expr-011" FilePath="OtherExpressions/"
               scenario="runtime-error" Creator="Carmelo Montanez">
               <description>Evaluates usage of an updating expression (replace) as part of a logical
                  (and) expression and usage of fn:true() function.</description>
               <spec-citation spec="XQUPDATE" section-number="2.5.8"
                  section-title="Other Expressions" section-pointer="id-other-expr"/>
               <state time="0">
                  <query name="id-other-expr-011" date="2007-08-09"/>
                  <input-file role="principal-data" variable="input-context"
                     >employeesNIST</input-file>
                  <expected-error>XUST0001</expected-error>
               </state>
            </test-case>
            <test-case name="id-other-expr-012" FilePath="OtherExpressions/"
               scenario="runtime-error" Creator="Carmelo Montanez">
               <description>Evaluates usage of an updating expression (insert) as part of a logical
                  (and) expression and usage of fn:true() function.</description>
               <spec-citation spec="XQUPDATE" section-number="2.5.8"
                  section-title="Other Expressions" section-pointer="id-other-expr"/>
               <state time="0">
                  <query name="id-other-expr-012" date="2007-08-09"/>
                  <input-file role="principal-data" variable="input-context"
                     >employeesNIST</input-file>
                  <expected-error>XUST0001</expected-error>
               </state>
            </test-case>
            <test-case name="id-other-expr-013" FilePath="OtherExpressions/" scenario="standard"
               Creator="Carmelo Montanez">
               <description>Evaluates usage of an non updating expression (transform) as part of a
                  logical (and) expression and usage of fn:true() function.</description>
               <spec-citation spec="XQUPDATE" section-number="2.5.8"
                  section-title="Other Expressions" section-pointer="id-other-expr"/>
               <state time="0">
                  <query name="id-other-expr-013" date="2007-08-09"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="Text">id-other-expr-013.txt</output-file>
               </state>
            </test-case>
            <test-case name="id-other-expr-014" FilePath="OtherExpressions/"
               scenario="runtime-error" Creator="Carmelo Montanez">
               <description>Evaluates usage of an updating expression (rename) as part of a Node
                  Comparison (is) expression.</description>
               <spec-citation spec="XQUPDATE" section-number="2.5.8"
                  section-title="Other Expressions" section-pointer="id-other-expr"/>
               <state time="0">
                  <query name="id-other-expr-014" date="2007-08-09"/>
                  <input-file role="principal-data" variable="input-context"
                     >employeesNIST</input-file>
                  <expected-error>XUST0001</expected-error>
               </state>
            </test-case>
            <test-case name="id-other-expr-015" FilePath="OtherExpressions/"
               scenario="runtime-error" Creator="Carmelo Montanez">
               <description>Evaluates usage of an updating expression (delete) as part of a Node
                  Comparison (is) expression.</description>
               <spec-citation spec="XQUPDATE" section-number="2.5.8"
                  section-title="Other Expressions" section-pointer="id-other-expr"/>
               <state time="0">
                  <query name="id-other-expr-015" date="2007-08-09"/>
                  <input-file role="principal-data" variable="input-context"
                     >employeesNIST</input-file>
                  <expected-error>XUST0001</expected-error>
               </state>
            </test-case>
            <test-case name="id-other-expr-016" FilePath="OtherExpressions/"
               scenario="runtime-error" Creator="Carmelo Montanez">
               <description>Evaluates usage of an updating expression (replace) as part of a Node
                  Comparison (is) expression.</description>
               <spec-citation spec="XQUPDATE" section-number="2.5.8"
                  section-title="Other Expressions" section-pointer="id-other-expr"/>
               <state time="0">
                  <query name="id-other-expr-016" date="2007-08-09"/>
                  <input-file role="principal-data" variable="input-context"
                     >employeesNIST</input-file>
                  <expected-error>XUST0001</expected-error>
               </state>
            </test-case>
            <test-case name="id-other-expr-017" FilePath="OtherExpressions/" scenario="standard"
               Creator="Carmelo Montanez">
               <description>Evaluates usage of an non updating expression (transform) as part of a
                  node comparison (is) expression.</description>
               <spec-citation spec="XQUPDATE" section-number="2.5.8"
                  section-title="Other Expressions" section-pointer="id-other-expr"/>
               <state time="0">
                  <query name="id-other-expr-017" date="2007-08-09"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="Text">id-other-expr-017.txt</output-file>
               </state>
            </test-case>
            <test-case name="id-other-expr-018" FilePath="OtherExpressions/" scenario="standard"
               Creator="Carmelo Montanez">
               <description>Evaluates usage of an non updating expression (transform) as part of a
                  node comparison (is) expression (both operands are transform
                  expressions).</description>
               <spec-citation spec="XQUPDATE" section-number="2.5.8"
                  section-title="Other Expressions" section-pointer="id-other-expr"/>
               <state time="0">
                  <query name="id-other-expr-018" date="2007-08-09"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="Text">id-other-expr-018.txt</output-file>
               </state>
            </test-case>
            <test-case name="id-other-expr-019" FilePath="OtherExpressions/"
               scenario="runtime-error" Creator="Carmelo Montanez">
               <description>Evaluates usage of an updating expression (insert) as part of a Node
                  Comparison (is) expression.</description>
               <spec-citation spec="XQUPDATE" section-number="2.5.8"
                  section-title="Other Expressions" section-pointer="id-other-expr"/>
               <state time="0">
                  <query name="id-other-expr-019" date="2007-08-09"/>
                  <input-file role="principal-data" variable="input-context"
                     >employeesNIST</input-file>
                  <expected-error>XUST0001</expected-error>
               </state>
            </test-case>
            <test-case name="id-other-expr-020" FilePath="OtherExpressions/"
               scenario="runtime-error" Creator="Carmelo Montanez">
               <description>Evaluates usage of an updating expression (insert) as part of a Value
                  Comparison (eq operator) expression.</description>
               <spec-citation spec="XQUPDATE" section-number="2.5.8"
                  section-title="Other Expressions" section-pointer="id-other-expr"/>
               <state time="0">
                  <query name="id-other-expr-020" date="2007-08-09"/>
                  <input-file role="principal-data" variable="input-context"
                     >employeesNIST</input-file>
                  <expected-error>XUST0001</expected-error>
               </state>
            </test-case>
            <test-case name="id-other-expr-021" FilePath="OtherExpressions/"
               scenario="runtime-error" Creator="Carmelo Montanez">
               <description>Evaluates usage of an updating expression (rename) as part of a Value
                  Comparison (ne operator) expression.</description>
               <spec-citation spec="XQUPDATE" section-number="2.5.8"
                  section-title="Other Expressions" section-pointer="id-other-expr"/>
               <state time="0">
                  <query name="id-other-expr-021" date="2007-08-09"/>
                  <input-file role="principal-data" variable="input-context"
                     >employeesNIST</input-file>
                  <expected-error>XUST0001</expected-error>
               </state>
            </test-case>
            <test-case name="id-other-expr-022" FilePath="OtherExpressions/"
               scenario="runtime-error" Creator="Carmelo Montanez">
               <description>Evaluates usage of an updating expression (rename) as part of a Value
                  Comparison (gt operator) expression.</description>
               <spec-citation spec="XQUPDATE" section-number="2.5.8"
                  section-title="Other Expressions" section-pointer="id-other-expr"/>
               <state time="0">
                  <query name="id-other-expr-022" date="2007-08-09"/>
                  <input-file role="principal-data" variable="input-context"
                     >employeesNIST</input-file>
                  <expected-error>XUST0001</expected-error>
               </state>
            </test-case>
            <test-case name="id-other-expr-023" FilePath="OtherExpressions/"
               scenario="runtime-error" Creator="Carmelo Montanez">
               <description>Evaluates usage of an updating expression (rename) as part of a Value
                  Comparison (lt operator) expression.</description>
               <spec-citation spec="XQUPDATE" section-number="2.5.8"
                  section-title="Other Expressions" section-pointer="id-other-expr"/>
               <state time="0">
                  <query name="id-other-expr-023" date="2007-08-09"/>
                  <input-file role="principal-data" variable="input-context"
                     >employeesNIST</input-file>
                  <expected-error>XUST0001</expected-error>
               </state>
            </test-case>
            <test-case name="id-other-expr-024" FilePath="OtherExpressions/"
               scenario="runtime-error" Creator="Carmelo Montanez">
               <description>Evaluates usage of an updating expression (rename) as part of a Value
                  Comparison (le operator) expression.</description>
               <spec-citation spec="XQUPDATE" section-number="2.5.8"
                  section-title="Other Expressions" section-pointer="id-other-expr"/>
               <state time="0">
                  <query name="id-other-expr-024" date="2007-08-09"/>
                  <input-file role="principal-data" variable="input-context"
                     >employeesNIST</input-file>
                  <expected-error>XUST0001</expected-error>
               </state>
            </test-case>
            <test-case name="id-other-expr-025" FilePath="OtherExpressions/"
               scenario="runtime-error" Creator="Carmelo Montanez">
               <description>Evaluates usage of an updating expression (rename) as part of a Value
                  Comparison (ge operator) expression.</description>
               <spec-citation spec="XQUPDATE" section-number="2.5.8"
                  section-title="Other Expressions" section-pointer="id-other-expr"/>
               <state time="0">
                  <query name="id-other-expr-025" date="2007-08-09"/>
                  <input-file role="principal-data" variable="input-context"
                     >employeesNIST</input-file>
                  <expected-error>XUST0001</expected-error>
               </state>
            </test-case>
            <test-case name="id-other-expr-26" FilePath="OtherExpressions/" scenario="runtime-error"
               Creator="armelo Montanez">
               <description>Evaluates usage of an updating expression (delete) as part of a sequence
                  expression (union operator).</description>
               <spec-citation spec="XQUPDATE" section-number="2.5.8"
                  section-title="Other Expressions" section-pointer="id-other-expr"/>
               <state time="0">
                  <query name="id-other-expr-026" date="2007-08-09"/>
                  <input-file role="principal-data" variable="input-context"
                     >employeesNIST</input-file>
                  <expected-error>XUST0001</expected-error>
               </state>
            </test-case>
            <test-case name="id-other-expr-027" FilePath="OtherExpressions/"
               scenario="runtime-error" Creator="armelo Montanez">
               <description>Evaluates usage of an updating expression (delete) as part of a sequence
                  expression (intersect operator).</description>
               <spec-citation spec="XQUPDATE" section-number="2.5.8"
                  section-title="Other Expressions" section-pointer="id-other-expr"/>
               <state time="0">
                  <query name="id-other-expr-027" date="2007-08-09"/>
                  <input-file role="principal-data" variable="input-context"
                     >employeesNIST</input-file>
                  <expected-error>XUST0001</expected-error>
               </state>
            </test-case>
            <test-case name="id-other-expr-028" FilePath="OtherExpressions/"
               scenario="runtime-error" Creator="armelo Montanez">
               <description>Evaluates usage of an updating expression (delete) as part of a sequence
                  expression (except operator).</description>
               <spec-citation spec="XQUPDATE" section-number="2.5.8"
                  section-title="Other Expressions" section-pointer="id-other-expr"/>
               <state time="0">
                  <query name="id-other-expr-028" date="2007-08-09"/>
                  <input-file role="principal-data" variable="input-context"
                     >employeesNIST</input-file>
                  <expected-error>XUST0001</expected-error>
               </state>
            </test-case>
            <test-case name="id-other-expr-029" FilePath="OtherExpressions/" scenario="standard"
               Creator="Carmelo Montanez">
               <description>Evaluates usage of a non updating expression (transform) as part of a
                  sequence expression (union operator).</description>
               <spec-citation spec="XQUPDATE" section-number="2.5.8"
                  section-title="Other Expressions" section-pointer="id-other-expr"/>
               <state time="0">
                  <query name="id-other-expr-029" date="2007-08-09"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="Fragment"
                     >id-other-expr-029.xml</output-file>
                  <output-file role="principal" compare="Fragment"
                     >id-other-expr-029-2.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-other-expr-030" FilePath="OtherExpressions/" scenario="standard"
               Creator="Carmelo Montanez">
               <description>Evaluates usage of a non updating expression (transform) as part of a
                  sequence expression (intersect operator).</description>
               <spec-citation spec="XQUPDATE" section-number="2.5.8"
                  section-title="Other Expressions" section-pointer="id-other-expr"/>
               <state time="0">
                  <query name="id-other-expr-030" date="2007-08-09"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="Text">id-other-expr-030.txt</output-file>
               </state>
            </test-case>
            <test-case name="id-other-expr-031" FilePath="OtherExpressions/" scenario="standard"
               Creator="Carmelo Montanez">
               <description>Evaluates usage of a non updating expression (transform) as part of a
                  sequence expression (except operator).</description>
               <spec-citation spec="XQUPDATE" section-number="2.5.8"
                  section-title="Other Expressions" section-pointer="id-other-expr"/>
               <state time="0">
                  <query name="id-other-expr-031" date="2007-08-09"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <output-file role="principal" compare="Fragment"
                     >id-other-expr-031.xml</output-file>
               </state>
            </test-case>
            <test-case name="id-other-expr-032" FilePath="OtherExpressions/"
               scenario="runtime-error" Creator="Carmelo Montanez">
               <description>Evaluates usage of an updating expression (delete) as part of a range
                  expression.</description>
               <spec-citation spec="XQUPDATE" section-number="2.5.8"
                  section-title="Other Expressions" section-pointer="id-other-expr"/>
               <state time="0">
                  <query name="id-other-expr-032" date="2007-08-09"/>
                  <input-file role="principal-data" variable="input-context"
                     >employeesNIST</input-file>
                  <expected-error>XUST0001</expected-error>
               </state>
            </test-case>
         </test-group>
      </test-group>
      <test-group name="ExtensionFunctions">
         <GroupInfo>
            <title>Extensions to Built-in Function Library</title>
            <description/>
         </GroupInfo>
         <test-group name="fnput">
            <GroupInfo>
               <title>fn:put</title>
               <description/>
            </GroupInfo>
            <test-group name="fnput - document">
               <GroupInfo>
                  <title>fn:put() applied to document nodes</title>
                  <description>These tests all call fn:put with the argument being a document
                     node.</description>
               </GroupInfo>
               <test-case name="fn-put-001" FilePath="Put/" scenario="standard"
                  Creator="Andrew Eisenberg">
                  <description>Store a document.</description>
                  <spec-citation spec="XQUPDATE" section-number="2.6.1" section-title="fn:put"
                     section-pointer="id-func-put"/>
                  <state time="0">
                     <query name="fn-put-001" date="2008-11-05"/>
                     <input-URI role="principal-data" variable="input-URI">putOutput</input-URI>
                  </state>
                  <state time="1">
                     <query name="fn-put-001-test" date="2008-11-05"/>
                     <input-URI role="principal-data" variable="input-URI">putOutput</input-URI>
                     <output-file role="principal" compare="XML">fn-put-001.xml</output-file>
                  </state>
               </test-case>
               <test-case name="fn-put-007" FilePath="Put/" scenario="runtime-error"
                  Creator="Andrew Eisenberg">
                  <description>Bad URI as argument to fn:put.</description>
                  <spec-citation spec="XQUPDATE" section-number="2.6.1" section-title="fn:put"
                     section-pointer="id-func-put"/>
                  <state time="0">
                     <query name="fn-put-007" date="2008-11-05"/>
                     <input-file role="principal-data" variable="input-context"
                        >emptydoc</input-file>
                     <expected-error>FOUP0002</expected-error>
                  </state>
               </test-case>
               <test-case name="fn-put-008" FilePath="Put/" scenario="runtime-error"
                  Creator="Andrew Eisenberg">
                  <description>Check that fn:put is an updating function.</description>
                  <spec-citation spec="XQUPDATE" section-number="2.6.1" section-title="fn:put"
                     section-pointer="id-func-put"/>
                  <state time="0">
                     <query name="fn-put-008" date="2008-11-05"/>
                     <input-URI role="principal-data" variable="input-URI">putOutput</input-URI>
                     <expected-error>XUST0001</expected-error>
                  </state>
               </test-case>
               <test-case name="fn-put-009" FilePath="Put/" scenario="standard"
                  Creator="Andrew Eisenberg">
                  <description>Check that fn:put is an updating function.</description>
                  <spec-citation spec="XQUPDATE" section-number="2.6.1" section-title="fn:put"
                     section-pointer="id-func-put"/>
                  <state time="0">
                     <query name="fn-put-009" date="2008-11-05"/>
                     <input-file role="principal-data" variable="input-context"
                        >works-mod</input-file>
                     <input-URI role="principal-data" variable="input-URI">putOutput</input-URI>
                  </state>
                  <state time="1">
                     <query name="fn-put-009a-test" date="2008-11-05"/>
                     <input-URI role="principal-data" variable="input-URI">putOutput</input-URI>
                     <output-file role="principal" compare="XML">fn-put-009a.xml</output-file>
                  </state>
                  <state time="2">
                     <query name="fn-put-009b-test" date="2008-11-05"/>
                     <input-file role="principal-data" variable="input-context"
                        >works-mod</input-file>
                     <output-file role="principal" compare="XML">fn-put-009b.xml</output-file>
                  </state>
               </test-case>
               <test-case name="fn-put-011" FilePath="Put/" scenario="runtime-error"
                  Creator="Andrew Eisenberg">
                  <description>Check that fn:put does not become effective until after completion of
                     the snapshot.</description>
                  <spec-citation spec="XQUPDATE" section-number="2.6.1" section-title="fn:put"
                     section-pointer="id-func-put"/>
                  <state time="0">
                     <query name="fn-put-011" date="2008-11-05"/>
                     <input-file role="principal-data" variable="input-context"
                        >works-mod</input-file>
                     <input-URI role="principal-data" variable="input-URI">putOutput</input-URI>
                     <expected-error>FODC0002</expected-error>
                     <expected-error>FODC0005</expected-error>
                  </state>
               </test-case>
               <test-case name="fn-put-012" FilePath="Put/" scenario="runtime-error"
                  Creator="Andrew Eisenberg">
                  <description>Multiple invocations of fn:put on the same URI.</description>
                  <spec-citation spec="XQUPDATE" section-number="2.6.1" section-title="fn:put"
                     section-pointer="id-func-put"/>
                  <state time="0">
                     <query name="fn-put-012" date="2008-11-05"/>
                     <input-URI role="principal-data" variable="input-URI">putOutput</input-URI>
                     <expected-error>XUDY0031</expected-error>
                  </state>
               </test-case>
               <test-case name="fn-put-013" FilePath="Put/" scenario="standard"
                  Creator="Andrew Eisenberg">
                  <description>Multiple invocations of fn:put on different URIs.</description>
                  <spec-citation spec="XQUPDATE" section-number="2.6.1" section-title="fn:put"
                     section-pointer="id-func-put"/>
                  <state time="0">
                     <query name="fn-put-013" date="2008-11-05"/>
                     <input-URI role="principal-data" variable="input-URI">putOutput</input-URI>
                     <input-URI role="principal-data" variable="input-URI-2">putOutput2</input-URI>
                  </state>
                  <state time="1">
                     <query name="fn-put-013a-test" date="2008-11-05"/>
                     <input-URI role="principal-data" variable="input-URI">putOutput</input-URI>
                     <output-file role="principal" compare="XML">fn-put-013a.xml</output-file>
                  </state>
                  <state time="2">
                     <query name="fn-put-013b-test" date="2008-11-05"/>
                     <input-URI role="principal-data" variable="input-URI-2">putOutput2</input-URI>
                     <output-file role="principal" compare="XML">fn-put-013b.xml</output-file>
                  </state>
               </test-case>
               <test-case name="fn-put-014" FilePath="Put/" scenario="runtime-error"
                  Creator="Andrew Eisenberg">
                  <description>Multiple invocations of fn:put on the same URI.</description>
                  <spec-citation spec="XQUPDATE" section-number="2.6.1" section-title="fn:put"
                     section-pointer="id-func-put"/>
                  <state time="0">
                     <query name="fn-put-014" date="2008-11-12"/>
                     <input-URI role="principal-data" variable="input-URI">putOutput</input-URI>
                     <expected-error>XUDY0031</expected-error>
                  </state>
               </test-case>
            </test-group>
            <test-group name="put-element">
               <GroupInfo>
                  <title>fn:put() applied to element nodes</title>
                  <description>These tests all call fn:put with the argument being an element
                     node.</description>
               </GroupInfo>
               <test-case name="put-001" FilePath="Put/" scenario="standard" Creator="Saxonica">
                  <description>simple test of fn:put function</description>
                  <spec-citation spec="XQUPDATE" section-number="2.6.1" section-title="fn:put"
                     section-pointer="id-func-put"/>
                  <state time="0">
                     <query name="put-001" date="2008-04-06"/>
                     <input-URI role="principal-data" variable="input-URI">putOutput</input-URI>
                  </state>
                  <state time="1">
                     <query name="put-001-test" date="2008-04-06"/>
                     <input-URI role="principal-data" variable="input-URI">putOutput</input-URI>
                     <output-file role="principal" compare="Fragment">put-001.xml</output-file>
                  </state>
               </test-case>
               <test-case name="fn-put-002" FilePath="Put/" scenario="standard"
                  Creator="Andrew Eisenberg">
                  <description>Store an element.</description>
                  <spec-citation spec="XQUPDATE" section-number="2.6.1" section-title="fn:put"
                     section-pointer="id-func-put"/>
                  <state time="0">
                     <query name="fn-put-002" date="2008-11-05"/>
                     <input-URI role="principal-data" variable="input-URI">putOutput</input-URI>
                  </state>
                  <state time="1">
                     <query name="fn-put-002-test" date="2008-11-05"/>
                     <input-URI role="principal-data" variable="input-URI">putOutput</input-URI>
                     <output-file role="principal" compare="XML">fn-put-002.xml</output-file>
                  </state>
               </test-case>
               <test-case name="fn-put-010" FilePath="Put/" scenario="standard"
                  Creator="Andrew Eisenberg">
                  <description>Check that fn:put is an updating function.</description>
                  <spec-citation spec="XQUPDATE" section-number="2.6.1" section-title="fn:put"
                     section-pointer="id-func-put"/>
                  <state time="0">
                     <query name="fn-put-010" date="2008-11-05"/>
                     <input-file role="principal-data" variable="input-context"
                        >works-mod</input-file>
                     <input-URI role="principal-data" variable="input-URI">putOutput</input-URI>
                  </state>
                  <state time="1">
                     <query name="fn-put-010a-test" date="2008-11-05"/>
                     <input-URI role="principal-data" variable="input-URI">putOutput</input-URI>
                     <output-file role="principal" compare="XML">fn-put-010a.xml</output-file>
                  </state>
                  <state time="2">
                     <query name="fn-put-010b-test" date="2008-11-05"/>
                     <input-file role="principal-data" variable="input-context"
                        >works-mod</input-file>
                     <output-file role="principal" compare="XML">fn-put-010b.xml</output-file>
                  </state>
               </test-case>
            </test-group>
         </test-group>
      </test-group>
      <test-group name="UpdateOperations">
         <GroupInfo>
            <title>XML Query Update Operations</title>
            <description/>
         </GroupInfo>
         <test-group name="UpdatePrimitives">
            <GroupInfo>
               <title>XML Query Update Primitives</title>
               <description/>
            </GroupInfo>
            <test-group name="updinsertBefore">
               <GroupInfo>
                  <title>upd:insertBefore Primitive</title>
                  <description/>
               </GroupInfo>
            </test-group>
            <test-group name="updinsertAfter">
               <GroupInfo>
                  <title>upd:insertAfter Primitive</title>
                  <description/>
               </GroupInfo>
            </test-group>
            <test-group name="updinsertInto">
               <GroupInfo>
                  <title>upd:insertInto Primitive</title>
                  <description/>
               </GroupInfo>
            </test-group>
            <test-group name="updinsertIntoAsFirst">
               <GroupInfo>
                  <title>upd:insertIntoAsFirst Primitive</title>
                  <description/>
               </GroupInfo>
            </test-group>
            <test-group name="updinsertIntoAsLast">
               <GroupInfo>
                  <title>upd:insertIntoAsLast Primitive</title>
                  <description/>
               </GroupInfo>
            </test-group>
            <test-group name="updinsertAttributes">
               <GroupInfo>
                  <title>upd:insertAttributes Primitive</title>
                  <description/>
               </GroupInfo>
            </test-group>
            <test-group name="updDelete">
               <GroupInfo>
                  <title>upd:delete Primitive</title>
                  <description/>
               </GroupInfo>
            </test-group>
            <test-group name="updReplaceNode">
               <GroupInfo>
                  <title>upd:replaceNode Primitive</title>
                  <description/>
               </GroupInfo>
            </test-group>
            <test-group name="updReplaceValue">
               <GroupInfo>
                  <title>upd:replaceValue Primitive</title>
                  <description/>
               </GroupInfo>
            </test-group>
            <test-group name="updReplaceElementContent">
               <GroupInfo>
                  <title>upd:replaceElementContent Primitive</title>
                  <description/>
               </GroupInfo>
            </test-group>
            <test-group name="updRename">
               <GroupInfo>
                  <title>upd:rename Primitive</title>
                  <description/>
               </GroupInfo>
            </test-group>
            <test-group name="AttrDataModelErrs">
               <GroupInfo>
                  <title>Data model errors on changing attributes</title>
                  <description/>
               </GroupInfo>
               <test-case name="attribute-errors-q1" FilePath="UpdatePrimitives/AttributeErrors/"
                  scenario="runtime-error" Creator="John Snelson">
                  <description/>
                  <spec-citation spec="XQUPDATE" section-number="3.2.2"
                     section-title="upd:applyUpdates" section-pointer="id-upd-apply-updates"/>
                  <state time="0">
                     <query name="attribute-errors-q1" date="2007-08-30"/>
                     <input-file role="principal-data" variable="input-context"
                        >works-mod</input-file>
                     <expected-error>XUDY0021</expected-error>
                  </state>
               </test-case>
               <test-case name="attribute-errors-q2" FilePath="UpdatePrimitives/AttributeErrors/"
                  scenario="runtime-error" Creator="John Snelson">
                  <description/>
                  <spec-citation spec="XQUPDATE" section-number="3.2.2"
                     section-title="upd:applyUpdates" section-pointer="id-upd-apply-updates"/>
                  <state time="0">
                     <query name="attribute-errors-q2" date="2007-08-30"/>
                     <input-file role="principal-data" variable="input-context"
                        >works-mod</input-file>
                     <expected-error>XUDY0021</expected-error>
                  </state>
               </test-case>
               <test-case name="attribute-errors-q3" FilePath="UpdatePrimitives/AttributeErrors/"
                  scenario="runtime-error" Creator="John Snelson">
                  <description/>
                  <spec-citation spec="XQUPDATE" section-number="3.2.2"
                     section-title="upd:applyUpdates" section-pointer="id-upd-apply-updates"/>
                  <state time="0">
                     <query name="attribute-errors-q3" date="2007-08-30"/>
                     <input-file role="principal-data" variable="input-context"
                        >works-mod</input-file>
                     <expected-error>XUDY0021</expected-error>
                  </state>
               </test-case>
               <test-case name="attribute-errors-q4" FilePath="UpdatePrimitives/AttributeErrors/"
                  scenario="runtime-error" Creator="John Snelson">
                  <description/>
                  <spec-citation spec="XQUPDATE" section-number="3.2.2"
                     section-title="upd:applyUpdates" section-pointer="id-upd-apply-updates"/>
                  <state time="0">
                     <query name="attribute-errors-q4" date="2007-08-30"/>
                     <input-file role="principal-data" variable="input-context"
                        >works-mod</input-file>
                     <expected-error>XUDY0021</expected-error>
                  </state>
               </test-case>
               <test-case name="attribute-errors-q5" FilePath="UpdatePrimitives/AttributeErrors/"
                  scenario="runtime-error" Creator="John Snelson">
                  <description/>
                  <spec-citation spec="XQUPDATE" section-number="3.2.2"
                     section-title="upd:applyUpdates" section-pointer="id-upd-apply-updates"/>
                  <state time="0">
                     <query name="attribute-errors-q5" date="2007-08-30"/>
                     <input-file role="principal-data" variable="input-context"
                        >works-mod</input-file>
                     <expected-error>XUDY0021</expected-error>
                  </state>
               </test-case>
               <test-case name="attribute-errors-q6" FilePath="UpdatePrimitives/AttributeErrors/"
                  scenario="runtime-error" Creator="John Snelson">
                  <description/>
                  <spec-citation spec="XQUPDATE" section-number="3.2.2"
                     section-title="upd:applyUpdates" section-pointer="id-upd-apply-updates"/>
                  <state time="0">
                     <query name="attribute-errors-q6" date="2007-08-30"/>
                     <input-file role="principal-data" variable="input-context"
                        >works-mod</input-file>
                     <expected-error>XUDY0021</expected-error>
                  </state>
               </test-case>
               <test-case name="attribute-errors-q7" FilePath="UpdatePrimitives/AttributeErrors/"
                  scenario="runtime-error" Creator="John Snelson">
                  <description/>
                  <spec-citation spec="XQUPDATE" section-number="3.2.2"
                     section-title="upd:applyUpdates" section-pointer="id-upd-apply-updates"/>
                  <state time="0">
                     <query name="attribute-errors-q7" date="2007-08-30"/>
                     <input-file role="principal-data" variable="input-context"
                        >works-mod</input-file>
                     <expected-error>XUDY0021</expected-error>
                  </state>
               </test-case>
               <test-case name="attribute-errors-q8" FilePath="UpdatePrimitives/AttributeErrors/"
                  scenario="standard" Creator="John Snelson">
                  <description/>
                  <spec-citation spec="XQUPDATE" section-number="3.2.2"
                     section-title="upd:applyUpdates" section-pointer="id-upd-apply-updates"/>
                  <state time="0">
                     <query name="attribute-errors-q8" date="2007-08-30"/>
                     <input-file role="principal-data" variable="input-context"
                        >works-mod</input-file>
                  </state>
                  <state time="1">
                     <query name="attribute-errors-q8-test" date="2007-08-30"/>
                     <input-file role="principal-data" variable="input-context"
                        >works-mod</input-file>
                     <output-file role="principal" compare="Fragment"
                        >attribute-errors-q8.xml</output-file>
                  </state>
               </test-case>
               <test-case name="attribute-errors-q9" FilePath="UpdatePrimitives/AttributeErrors/"
                  scenario="runtime-error" Creator="John Snelson">
                  <description/>
                  <spec-citation spec="XQUPDATE" section-number="3.2.2"
                     section-title="upd:applyUpdates" section-pointer="id-upd-apply-updates"/>
                  <state time="0">
                     <query name="attribute-errors-q9" date="2007-08-30"/>
                     <input-file role="principal-data" variable="input-context"
                        >works-mod</input-file>
                     <expected-error>XUDY0021</expected-error>
                  </state>
               </test-case>
               <test-case name="attribute-errors-q10" FilePath="UpdatePrimitives/AttributeErrors/"
                  scenario="runtime-error" Creator="John Snelson">
                  <description/>
                  <spec-citation spec="XQUPDATE" section-number="3.2.2"
                     section-title="upd:applyUpdates" section-pointer="id-upd-apply-updates"/>
                  <state time="0">
                     <query name="attribute-errors-q10" date="2007-08-30"/>
                     <input-file role="principal-data" variable="input-context"
                        >works-mod</input-file>
                     <expected-error>XUDY0021</expected-error>
                  </state>
               </test-case>
               <test-case name="attribute-errors-q11" FilePath="UpdatePrimitives/AttributeErrors/"
                  scenario="standard" Creator="John Snelson">
                  <description/>
                  <spec-citation spec="XQUPDATE" section-number="3.2.2"
                     section-title="upd:applyUpdates" section-pointer="id-upd-apply-updates"/>
                  <state time="0">
                     <query name="attribute-errors-q11" date="2007-08-30"/>
                     <input-file role="principal-data" variable="input-context"
                        >works-mod</input-file>
                  </state>
                  <state time="1">
                     <query name="attribute-errors-q11-test" date="2007-08-30"/>
                     <input-file role="principal-data" variable="input-context"
                        >works-mod</input-file>
                     <output-file role="principal" compare="Fragment"
                        >attribute-errors-q11.xml</output-file>
                  </state>
               </test-case>
               <test-case name="attribute-errors-q12" FilePath="UpdatePrimitives/AttributeErrors/"
                  scenario="runtime-error" Creator="John Snelson">
                  <description/>
                  <spec-citation spec="XQUPDATE" section-number="3.2.2"
                     section-title="upd:applyUpdates" section-pointer="id-upd-apply-updates"/>
                  <state time="0">
                     <query name="attribute-errors-q12" date="2007-08-30"/>
                     <input-file role="principal-data" variable="input-context"
                        >works-mod</input-file>
                     <expected-error>XUDY0021</expected-error>
                  </state>
               </test-case>
               <test-case name="attribute-errors-q13" FilePath="UpdatePrimitives/AttributeErrors/"
                  scenario="runtime-error" Creator="John Snelson">
                  <description/>
                  <spec-citation spec="XQUPDATE" section-number="3.2.2"
                     section-title="upd:applyUpdates" section-pointer="id-upd-apply-updates"/>
                  <state time="0">
                     <query name="attribute-errors-q13" date="2007-08-30"/>
                     <input-file role="principal-data" variable="input-context"
                        >works-mod</input-file>
                     <expected-error>XUDY0021</expected-error>
                  </state>
               </test-case>
               <test-case name="attribute-errors-q14" FilePath="UpdatePrimitives/AttributeErrors/"
                  scenario="runtime-error" Creator="John Snelson">
                  <description/>
                  <spec-citation spec="XQUPDATE" section-number="3.2.2"
                     section-title="upd:applyUpdates" section-pointer="id-upd-apply-updates"/>
                  <state time="0">
                     <query name="attribute-errors-q14" date="2007-08-30"/>
                     <input-file role="principal-data" variable="input-context"
                        >works-mod</input-file>
                     <output-file role="principal" compare="Fragment"
                        >attribute-errors-q14.xml</output-file>
                  </state>
               </test-case>
               <test-case name="attribute-errors-q15" FilePath="UpdatePrimitives/AttributeErrors/"
                  scenario="runtime-error" Creator="John Snelson">
                  <description/>
                  <spec-citation spec="XQUPDATE" section-number="3.2.2"
                     section-title="upd:applyUpdates" section-pointer="id-upd-apply-updates"/>
                  <state time="0">
                     <query name="attribute-errors-q15" date="2007-08-30"/>
                     <input-file role="principal-data" variable="input-context"
                        >works-mod</input-file>
                     <expected-error>XUDY0021</expected-error>
                  </state>
               </test-case>
               <test-case name="attribute-errors-q16" FilePath="UpdatePrimitives/AttributeErrors/"
                  scenario="runtime-error" Creator="John Snelson">
                  <description/>
                  <spec-citation spec="XQUPDATE" section-number="3.2.2"
                     section-title="upd:applyUpdates" section-pointer="id-upd-apply-updates"/>
                  <state time="0">
                     <query name="attribute-errors-q16" date="2007-08-30"/>
                     <input-file role="principal-data" variable="input-context"
                        >works-mod</input-file>
                     <expected-error>XUDY0021</expected-error>
                  </state>
               </test-case>
               <test-case name="attribute-errors-q17" FilePath="UpdatePrimitives/AttributeErrors/"
                  scenario="runtime-error" Creator="John Snelson">
                  <description/>
                  <spec-citation spec="XQUPDATE" section-number="3.2.2"
                     section-title="upd:applyUpdates" section-pointer="id-upd-apply-updates"/>
                  <state time="0">
                     <query name="attribute-errors-q17" date="2007-08-30"/>
                     <input-file role="principal-data" variable="input-context"
                        >works-mod</input-file>
                     <expected-error>XUDY0021</expected-error>
                  </state>
               </test-case>
            </test-group>
            <test-group name="NSBindingConflictErrs">
               <GroupInfo>
                  <title>Namespace binding conflicts on attribute updates</title>
                  <description/>
               </GroupInfo>
               <test-case name="namespace-errors-q1" FilePath="UpdatePrimitives/NamespaceErrors/"
                  scenario="runtime-error" Creator="John Snelson">
                  <description>Insert after of attribute with implicit namespace binding that
                     clashes.</description>
                  <spec-citation spec="XQUPDATE" section-number="2.3.1" section-title="Insert"
                     section-pointer="id-insert"/>
                  <state time="0">
                     <query name="namespace-errors-q1" date="2007-08-30"/>
                     <input-file role="principal-data" variable="input-context">grant</input-file>
                     <expected-error>XUDY0023</expected-error>
                  </state>
               </test-case>
               <test-case name="namespace-errors-q2" FilePath="UpdatePrimitives/NamespaceErrors/"
                  scenario="runtime-error" Creator="John Snelson">
                  <description>Insert of attribute with implicit namespace binding that
                     clashes.</description>
                  <spec-citation spec="XQUPDATE" section-number="2.3.1" section-title="Insert"
                     section-pointer="id-insert"/>
                  <state time="0">
                     <query name="namespace-errors-q2" date="2007-08-30"/>
                     <input-file role="principal-data" variable="input-context">grant</input-file>
                     <expected-error>XUDY0023</expected-error>
                  </state>
               </test-case>
               <test-case name="namespace-errors-q3" FilePath="UpdatePrimitives/NamespaceErrors/"
                  scenario="runtime-error" Creator="John Snelson">
                  <description>Insert as first of attribute with implicit namespace binding that
                     clashes.</description>
                  <spec-citation spec="XQUPDATE" section-number="2.3.1" section-title="Insert"
                     section-pointer="id-insert"/>
                  <state time="0">
                     <query name="namespace-errors-q3" date="2007-08-30"/>
                     <input-file role="principal-data" variable="input-context">grant</input-file>
                     <expected-error>XUDY0023</expected-error>
                  </state>
               </test-case>
               <test-case name="namespace-errors-q4" FilePath="UpdatePrimitives/NamespaceErrors/"
                  scenario="runtime-error" Creator="John Snelson">
                  <description>Rename of no namespace element with implicit namespace binding that
                     clashes.</description>
                  <spec-citation spec="XQUPDATE" section-number="2.3.4" section-title="Rename"
                     section-pointer="id-rename"/>
                  <state time="0">
                     <query name="namespace-errors-q4" date="2007-08-30"/>
                     <input-file role="principal-data" variable="input-context">grant</input-file>
                     <expected-error>XUDY0023</expected-error>
                  </state>
               </test-case>
               <test-case name="namespace-errors-q5" FilePath="UpdatePrimitives/NamespaceErrors/"
                  scenario="runtime-error" Creator="John Snelson">
                  <description>Rename of namespaced element with implicit namespace binding that
                     clashes.</description>
                  <spec-citation spec="XQUPDATE" section-number="2.3.4" section-title="Rename"
                     section-pointer="id-rename"/>
                  <state time="0">
                     <query name="namespace-errors-q5" date="2007-08-30"/>
                     <input-file role="principal-data" variable="input-context">grant</input-file>
                     <expected-error>XUDY0023</expected-error>
                  </state>
               </test-case>
               <test-case name="namespace-errors-q6" FilePath="UpdatePrimitives/NamespaceErrors/"
                  scenario="runtime-error" Creator="John Snelson">
                  <description>Rename of attribute with implicit namespace binding that
                     clashes.</description>
                  <spec-citation spec="XQUPDATE" section-number="2.3.4" section-title="Rename"
                     section-pointer="id-rename"/>
                  <state time="0">
                     <query name="namespace-errors-q6" date="2007-08-30"/>
                     <input-file role="principal-data" variable="input-context">grant</input-file>
                     <expected-error>XUDY0023</expected-error>
                  </state>
               </test-case>
               <test-case name="namespace-errors-q7" FilePath="UpdatePrimitives/NamespaceErrors/"
                  scenario="runtime-error" Creator="John Snelson">
                  <description>Replace of attribute with implicit namespace binding that
                     clashes.</description>
                  <spec-citation spec="XQUPDATE" section-number="2.3.3" section-title="Replace"
                     section-pointer="id-replace"/>
                  <state time="0">
                     <query name="namespace-errors-q7" date="2007-08-30"/>
                     <input-file role="principal-data" variable="input-context">grant</input-file>
                     <expected-error>XUDY0023</expected-error>
                  </state>
               </test-case>
               <test-case name="namespace-errors-q8" FilePath="UpdatePrimitives/NamespaceErrors/"
                  scenario="runtime-error" Creator="John Snelson">
                  <description>Replace of attribute with muliple attributes, one of which has an
                     implicit namespace binding that clashes.</description>
                  <spec-citation spec="XQUPDATE" section-number="2.3.3" section-title="Replace"
                     section-pointer="id-replace"/>
                  <state time="0">
                     <query name="namespace-errors-q8" date="2007-08-30"/>
                     <input-file role="principal-data" variable="input-context">grant</input-file>
                     <expected-error>XUDY0023</expected-error>
                  </state>
               </test-case>
               <test-case name="namespace-errors-q9" FilePath="UpdatePrimitives/NamespaceErrors/"
                  scenario="runtime-error" Creator="John Snelson">
                  <description>Multiple inserts of attribute with implicit namespace binding that
                     clashes.</description>
                  <spec-citation spec="XQUPDATE" section-number="3.1.6"
                     section-title="upd:insertAttributes" section-pointer="id-upd-insert-attributes"/>
                  <spec-citation spec="XQUPDATE" section-number="3.2.1"
                     section-title="upd:mergeUpdates" section-pointer="id-upd-merge-updates"/>
                  <state time="0">
                     <query name="namespace-errors-q9" date="2007-08-30"/>
                     <input-file role="principal-data" variable="input-context">grant</input-file>
                     <expected-error>XUDY0024</expected-error>
                  </state>
               </test-case>
               <test-case name="namespace-errors-q10" FilePath="UpdatePrimitives/NamespaceErrors/"
                  scenario="runtime-error" Creator="John Snelson">
                  <description>Insert and replace of attributes with implicit namespace binding that
                     clashes.</description>
                  <spec-citation spec="XQUPDATE" section-number="3.1.6"
                     section-title="upd:insertAttributes" section-pointer="id-upd-insert-attributes"/>
                  <spec-citation spec="XQUPDATE" section-number="3.1.8"
                     section-title="upd:replaceNode" section-pointer="id-upd-replacenode"/>
                  <spec-citation spec="XQUPDATE" section-number="3.2.1"
                     section-title="upd:mergeUpdates" section-pointer="id-upd-merge-updates"/>
                  <state time="0">
                     <query name="namespace-errors-q10" date="2007-08-30"/>
                     <input-file role="principal-data" variable="input-context">grant</input-file>
                     <expected-error>XUDY0024</expected-error>
                  </state>
               </test-case>
               <test-case name="namespace-errors-q11" FilePath="UpdatePrimitives/NamespaceErrors/"
                  scenario="runtime-error" Creator="John Snelson">
                  <description>Multiple replaces of attributes with implicit namespace binding that
                     clashes.</description>
                  <spec-citation spec="XQUPDATE" section-number="3.1.8"
                     section-title="upd:replaceNode" section-pointer="id-upd-replacenode"/>
                  <spec-citation spec="XQUPDATE" section-number="3.2.1"
                     section-title="upd:mergeUpdates" section-pointer="id-upd-merge-updates"/>
                  <state time="0">
                     <query name="namespace-errors-q11" date="2007-08-30"/>
                     <input-file role="principal-data" variable="input-context">grant</input-file>
                     <expected-error>XUDY0024</expected-error>
                  </state>
               </test-case>
               <test-case name="namespace-errors-q12" FilePath="UpdatePrimitives/NamespaceErrors/"
                  scenario="runtime-error" Creator="John Snelson">
                  <description>Replace and rename of attributes with implicit namespace binding that
                     clashes.</description>
                  <spec-citation spec="XQUPDATE" section-number="3.1.8"
                     section-title="upd:replaceNode" section-pointer="id-upd-replacenode"/>
                  <spec-citation spec="XQUPDATE" section-number="3.1.11" section-title="upd:rename"
                     section-pointer="id-upd-rename"/>
                  <spec-citation spec="XQUPDATE" section-number="3.2.1"
                     section-title="upd:mergeUpdates" section-pointer="id-upd-merge-updates"/>
                  <state time="0">
                     <query name="namespace-errors-q12" date="2007-08-30"/>
                     <input-file role="principal-data" variable="input-context">grant</input-file>
                     <expected-error>XUDY0024</expected-error>
                  </state>
               </test-case>
               <test-case name="namespace-errors-q13" FilePath="UpdatePrimitives/NamespaceErrors/"
                  scenario="runtime-error" Creator="John Snelson">
                  <description>Two renames of attributes with implicit namespace binding that
                     clashes.</description>
                  <spec-citation spec="XQUPDATE" section-number="3.1.11" section-title="upd:rename"
                     section-pointer="id-upd-rename"/>
                  <spec-citation spec="XQUPDATE" section-number="3.2.1"
                     section-title="upd:mergeUpdates" section-pointer="id-upd-merge-updates"/>
                  <state time="0">
                     <query name="namespace-errors-q13" date="2007-08-30"/>
                     <input-file role="principal-data" variable="input-context">grant</input-file>
                     <expected-error>XUDY0024</expected-error>
                  </state>
               </test-case>
               <test-case name="namespace-errors-q14" FilePath="UpdatePrimitives/NamespaceErrors/"
                  scenario="runtime-error" Creator="John Snelson">
                  <description>Rename and insert of attributes with implicit namespace binding that
                     clashes.</description>
                  <spec-citation spec="XQUPDATE" section-number="3.1.6"
                     section-title="upd:insertAttributes" section-pointer="id-upd-insert-attributes"/>
                  <spec-citation spec="XQUPDATE" section-number="3.1.11" section-title="upd:rename"
                     section-pointer="id-upd-rename"/>
                  <spec-citation spec="XQUPDATE" section-number="3.2.1"
                     section-title="upd:mergeUpdates" section-pointer="id-upd-merge-updates"/>
                  <state time="0">
                     <query name="namespace-errors-q14" date="2007-08-30"/>
                     <input-file role="principal-data" variable="input-context">grant</input-file>
                     <expected-error>XUDY0024</expected-error>
                  </state>
               </test-case>
               <test-case name="namespace-errors-q15" FilePath="UpdatePrimitives/NamespaceErrors/"
                  scenario="runtime-error" Creator="John Snelson">
                  <description>Rename of element and insert of attribute with implicit namespace
                     binding that clashes.</description>
                  <spec-citation spec="XQUPDATE" section-number="3.1.6"
                     section-title="upd:insertAttributes" section-pointer="id-upd-insert-attributes"/>
                  <spec-citation spec="XQUPDATE" section-number="3.1.11" section-title="upd:rename"
                     section-pointer="id-upd-rename"/>
                  <spec-citation spec="XQUPDATE" section-number="3.2.1"
                     section-title="upd:mergeUpdates" section-pointer="id-upd-merge-updates"/>
                  <state time="0">
                     <query name="namespace-errors-q15" date="2007-08-30"/>
                     <input-file role="principal-data" variable="input-context">grant</input-file>
                     <expected-error>XUDY0024</expected-error>
                  </state>
               </test-case>
               <test-case name="namespace-errors-q16" FilePath="UpdatePrimitives/NamespaceErrors/"
                  scenario="standard" Creator="Andrew Eisenberg">
                  <description>Rename of element with non-prefixed implicit namespace binding that
                     does not clash.</description>
                  <spec-citation spec="XQUPDATE" section-number="3.1.11" section-title="upd:rename"
                     section-pointer="id-upd-rename"/>
                  <state time="0">
                     <query name="namespace-errors-q16" date="2008-11-05"/>
                     <input-file role="principal-data" variable="input-context">grant</input-file>
                  </state>
                  <state time="1">
                     <query name="namespace-errors-q16-test" date="2010-04-08"/>
                     <input-file role="principal-data" variable="input-context">grant</input-file>
                     <output-file role="principal" compare="XML"
                        >namespace-errors-q16.xml</output-file>
                  </state>
               </test-case>
               <test-case name="namespace-errors-q17" FilePath="UpdatePrimitives/NamespaceErrors/"
                  scenario="runtime-error" Creator="Andrew Eisenberg">
                  <description>Insert new attributes with implicit namespace bindings that
                     clash.</description>
                  <spec-citation spec="XQUPDATE" section-number="2.4.1" section-title="Insert"
                     section-pointer="id-insert"/>
                  <state time="0">
                     <query name="namespace-errors-q17" date="2008-11-06"/>
                     <input-file role="principal-data" variable="input-context">grant</input-file>
                     <expected-error>XUDY0024</expected-error>
                  </state>
               </test-case>
               <test-case name="namespace-errors-q18" FilePath="UpdatePrimitives/NamespaceErrors/"
                  scenario="runtime-error" Creator="Andrew Eisenberg">
                  <description>Insert new attributes with implicit namespace bindings that
                     clash.</description>
                  <spec-citation spec="XQUPDATE" section-number="2.4.1" section-title="Insert"
                     section-pointer="id-insert"/>
                  <state time="0">
                     <query name="namespace-errors-q18" date="2008-11-06"/>
                     <input-file role="principal-data" variable="input-context">grant</input-file>
                     <expected-error>XUDY0024</expected-error>
                  </state>
               </test-case>
               <test-case name="namespace-errors-q19" FilePath="UpdatePrimitives/NamespaceErrors/"
                  scenario="runtime-error" Creator="Andrew Eisenberg">
                  <description>Replace introduces new attributes with implicit namespace bindings
                     that clash.</description>
                  <spec-citation spec="XQUPDATE" section-number="2.4.3" section-title="Replace"
                     section-pointer="id-replace"/>
                  <state time="0">
                     <query name="namespace-errors-q19" date="2008-11-06"/>
                     <input-file role="principal-data" variable="input-context">grant</input-file>
                     <expected-error>XUDY0024</expected-error>
                  </state>
               </test-case>
            </test-group>
         </test-group>
         <test-group name="UpdateRoutines">
            <GroupInfo>
               <title>XQuery Update Routines</title>
               <description/>
            </GroupInfo>
            <test-group name="mergeUpdates">
               <GroupInfo>
                  <title>upd:mergeUpdates</title>
                  <description/>
               </GroupInfo>
               <test-case name="mergeUpdates-001" FilePath="UpdateRoutines/mergeUpdates/"
                  scenario="standard" Creator="Andrew Eisenberg">
                  <description>Multiple operations that add non-conflicting namespace bindings to a
                     node.</description>
                  <spec-citation spec="XQUPDATE" section-number="3.2.1"
                     section-title="upd:mergeUpdates" section-pointer="id-upd-merge-updates"/>
                  <state time="0">
                     <query name="mergeUpdates-001" date="2008-11-12"/>
                     <input-file role="principal-data" variable="input-context"
                        >works-mod</input-file>
                  </state>
                  <state time="1">
                     <query name="mergeUpdates-001-test" date="2008-11-12"/>
                     <input-file role="principal-data" variable="input-context"
                        >works-mod</input-file>
                     <output-file role="principal" compare="XML">mergeUpdates-001.xml</output-file>
                  </state>
               </test-case>
               <test-case name="mergeUpdates-002" FilePath="UpdateRoutines/mergeUpdates/"
                  scenario="runtime-error" Creator="Andrew Eisenberg">
                  <description>Multiple operations that add conflicting namespace bindings to a
                     node.</description>
                  <spec-citation spec="XQUPDATE" section-number="3.2.1"
                     section-title="upd:mergeUpdates" section-pointer="id-upd-merge-updates"/>
                  <state time="0">
                     <query name="mergeUpdates-002" date="2008-11-12"/>
                     <input-file role="principal-data" variable="input-context"
                        >works-mod</input-file>
                     <expected-error>XUDY0024</expected-error>
                  </state>
               </test-case>
            </test-group>
            <test-group name="applyUpdates">
               <GroupInfo>
                  <title>upd:applyUpdates</title>
                  <description/>
               </GroupInfo>
               <test-case name="applyUpdates-001" FilePath="UpdateRoutines/applyUpdates/"
                  scenario="standard" Creator="Andrew Eisenberg">
                  <description>Apply insertInto then delete.</description>
                  <spec-citation spec="XQUPDATE" section-number="3.2.2"
                     section-title="upd:applyUpdates" section-pointer="id-upd-apply-updates"/>
                  <state time="0">
                     <query name="applyUpdates-001" date="2008-11-04"/>
                     <input-file role="principal-data" variable="input-context"
                        >works-mod</input-file>
                  </state>
                  <state time="1">
                     <query name="applyUpdates-001-test" date="2008-11-04"/>
                     <input-file role="principal-data" variable="input-context"
                        >works-mod</input-file>
                     <output-file role="principal" compare="XML">applyUpdates-001.xml</output-file>
                  </state>
               </test-case>
               <test-case name="applyUpdates-002" FilePath="UpdateRoutines/applyUpdates/"
                  scenario="standard" Creator="Andrew Eisenberg">
                  <description>Apply insertInto then delete.</description>
                  <spec-citation spec="XQUPDATE" section-number="3.2.2"
                     section-title="upd:applyUpdates" section-pointer="id-upd-apply-updates"/>
                  <state time="0">
                     <query name="applyUpdates-002" date="2008-11-04"/>
                     <input-file role="principal-data" variable="input-context"
                        >works-mod</input-file>
                  </state>
                  <state time="1">
                     <query name="applyUpdates-002-test" date="2008-11-04"/>
                     <input-file role="principal-data" variable="input-context"
                        >works-mod</input-file>
                     <output-file role="principal" compare="XML">applyUpdates-002.xml</output-file>
                  </state>
               </test-case>
               <test-case name="applyUpdates-003" FilePath="UpdateRoutines/applyUpdates/"
                  scenario="standard" Creator="Andrew Eisenberg">
                  <description>Apply insertBefore then replaceNode.</description>
                  <spec-citation spec="XQUPDATE" section-number="3.2.2"
                     section-title="upd:applyUpdates" section-pointer="id-upd-apply-updates"/>
                  <state time="0">
                     <query name="applyUpdates-003" date="2008-11-04"/>
                     <input-file role="principal-data" variable="input-context"
                        >works-mod</input-file>
                  </state>
                  <state time="1">
                     <query name="applyUpdates-003-test" date="2008-11-04"/>
                     <input-file role="principal-data" variable="input-context"
                        >works-mod</input-file>
                     <output-file role="principal" compare="XML">applyUpdates-003.xml</output-file>
                  </state>
               </test-case>
               <test-case name="applyUpdates-004" FilePath="UpdateRoutines/applyUpdates/"
                  scenario="standard" Creator="Andrew Eisenberg">
                  <description>Apply insertBefore then replaceNode.</description>
                  <spec-citation spec="XQUPDATE" section-number="3.2.2"
                     section-title="upd:applyUpdates" section-pointer="id-upd-apply-updates"/>
                  <state time="0">
                     <query name="applyUpdates-004" date="2008-11-04"/>
                     <input-file role="principal-data" variable="input-context"
                        >works-mod</input-file>
                  </state>
                  <state time="1">
                     <query name="applyUpdates-004-test" date="2008-11-04"/>
                     <input-file role="principal-data" variable="input-context"
                        >works-mod</input-file>
                     <output-file role="principal" compare="XML">applyUpdates-004.xml</output-file>
                  </state>
               </test-case>
               <test-case name="applyUpdates-005" FilePath="UpdateRoutines/applyUpdates/"
                  scenario="standard" Creator="Andrew Eisenberg">
                  <description>Apply insertAsFirst then replaceElementContent.</description>
                  <spec-citation spec="XQUPDATE" section-number="3.2.2"
                     section-title="upd:applyUpdates" section-pointer="id-upd-apply-updates"/>
                  <state time="0">
                     <query name="applyUpdates-005" date="2008-11-04"/>
                     <input-file role="principal-data" variable="input-context"
                        >works-mod</input-file>
                  </state>
                  <state time="1">
                     <query name="applyUpdates-005-test" date="2008-11-04"/>
                     <input-file role="principal-data" variable="input-context"
                        >works-mod</input-file>
                     <output-file role="principal" compare="XML">applyUpdates-005.xml</output-file>
                  </state>
               </test-case>
               <test-case name="applyUpdates-006" FilePath="UpdateRoutines/applyUpdates/"
                  scenario="standard" Creator="Andrew Eisenberg">
                  <description>Apply insertAsFirst then replaceElementContent.</description>
                  <spec-citation spec="XQUPDATE" section-number="3.2.2"
                     section-title="upd:applyUpdates" section-pointer="id-upd-apply-updates"/>
                  <state time="0">
                     <query name="applyUpdates-006" date="2008-11-04"/>
                     <input-file role="principal-data" variable="input-context"
                        >works-mod</input-file>
                  </state>
                  <state time="1">
                     <query name="applyUpdates-006-test" date="2008-11-04"/>
                     <input-file role="principal-data" variable="input-context"
                        >works-mod</input-file>
                     <output-file role="principal" compare="XML">applyUpdates-006.xml</output-file>
                  </state>
               </test-case>
               <test-case name="applyUpdates-007" FilePath="UpdateRoutines/applyUpdates/"
                  scenario="standard" Creator="Andrew Eisenberg">
                  <description>Apply replaceNode then delete.</description>
                  <spec-citation spec="XQUPDATE" section-number="3.2.2"
                     section-title="upd:applyUpdates" section-pointer="id-upd-apply-updates"/>
                  <state time="0">
                     <query name="applyUpdates-007" date="2008-11-04"/>
                     <input-file role="principal-data" variable="input-context"
                        >works-mod</input-file>
                  </state>
                  <state time="1">
                     <query name="applyUpdates-007-test" date="2008-11-04"/>
                     <input-file role="principal-data" variable="input-context"
                        >works-mod</input-file>
                     <output-file role="principal" compare="XML">applyUpdates-007.xml</output-file>
                  </state>
               </test-case>
               <test-case name="applyUpdates-008" FilePath="UpdateRoutines/applyUpdates/"
                  scenario="standard" Creator="Andrew Eisenberg">
                  <description>Apply replaceNode then delete.</description>
                  <spec-citation spec="XQUPDATE" section-number="3.2.2"
                     section-title="upd:applyUpdates" section-pointer="id-upd-apply-updates"/>
                  <state time="0">
                     <query name="applyUpdates-008" date="2008-11-04"/>
                     <input-file role="principal-data" variable="input-context"
                        >works-mod</input-file>
                  </state>
                  <state time="1">
                     <query name="applyUpdates-008-test" date="2008-11-04"/>
                     <input-file role="principal-data" variable="input-context"
                        >works-mod</input-file>
                     <output-file role="principal" compare="XML">applyUpdates-008.xml</output-file>
                  </state>
               </test-case>
               <test-case name="applyUpdates-009" FilePath="UpdateRoutines/applyUpdates/"
                  scenario="standard" Creator="Andrew Eisenberg">
                  <description>Apply multiple operations to the same node.</description>
                  <spec-citation spec="XQUPDATE" section-number="3.2.2"
                     section-title="upd:applyUpdates" section-pointer="id-upd-apply-updates"/>
                  <state time="0">
                     <query name="applyUpdates-009" date="2008-11-04"/>
                     <input-file role="principal-data" variable="input-context"
                        >works-mod</input-file>
                  </state>
                  <state time="1">
                     <query name="applyUpdates-009-test" date="2008-11-04"/>
                     <input-file role="principal-data" variable="input-context"
                        >works-mod</input-file>
                     <output-file role="principal" compare="XML">applyUpdates-009.xml</output-file>
                  </state>
               </test-case>
               <test-case name="applyUpdates-010" FilePath="UpdateRoutines/applyUpdates/"
                  scenario="standard" Creator="Andrew Eisenberg">
                  <description>Apply multiple operations to the same node.</description>
                  <spec-citation spec="XQUPDATE" section-number="3.2.2"
                     section-title="upd:applyUpdates" section-pointer="id-upd-apply-updates"/>
                  <state time="0">
                     <query name="applyUpdates-010" date="2008-11-04"/>
                     <input-file role="principal-data" variable="input-context"
                        >works-mod</input-file>
                  </state>
                  <state time="1">
                     <query name="applyUpdates-010-test" date="2008-11-04"/>
                     <input-file role="principal-data" variable="input-context"
                        >works-mod</input-file>
                     <output-file role="principal" compare="XML">applyUpdates-010.xml</output-file>
                  </state>
               </test-case>
               <test-case name="applyUpdates-011" FilePath="UpdateRoutines/applyUpdates/"
                  scenario="standard" Creator="Andrew Eisenberg">
                  <description>Delete elements and merge text nodes.</description>
                  <spec-citation spec="XQUPDATE" section-number="3.2.2"
                     section-title="upd:applyUpdates" section-pointer="id-upd-apply-updates"/>
                  <state time="0">
                     <query name="applyUpdates-011" date="2008-11-04"/>
                     <input-file role="principal-data" variable="input-context"
                        >works-mod</input-file>
                  </state>
                  <state time="1">
                     <query name="applyUpdates-011-test" date="2008-11-04"/>
                     <input-file role="principal-data" variable="input-context"
                        >works-mod</input-file>
                     <output-file role="principal" compare="Text">applyUpdates-011.txt</output-file>
                  </state>
               </test-case>
               <test-case name="applyUpdates-012" FilePath="UpdateRoutines/applyUpdates/"
                  scenario="standard" Creator="Andrew Eisenberg">
                  <description>Delete the content of a text node.</description>
                  <spec-citation spec="XQUPDATE" section-number="3.2.2"
                     section-title="upd:applyUpdates" section-pointer="id-upd-apply-updates"/>
                  <state time="0">
                     <query name="applyUpdates-012" date="2008-11-04"/>
                     <input-file role="principal-data" variable="input-context"
                        >works-mod</input-file>
                  </state>
                  <state time="1">
                     <query name="applyUpdates-012-test" date="2008-11-04"/>
                     <input-file role="principal-data" variable="input-context"
                        >works-mod</input-file>
                     <output-file role="principal" compare="Text">applyUpdates-012.txt</output-file>
                  </state>
               </test-case>
               <test-case name="applyUpdates-013" FilePath="UpdateRoutines/applyUpdates/"
                  scenario="standard" Creator="Andrew Eisenberg">
                  <description>Insert and delete attributes with the same name.</description>
                  <spec-citation spec="XQUPDATE" section-number="3.2.2"
                     section-title="upd:applyUpdates" section-pointer="id-upd-apply-updates"/>
                  <state time="0">
                     <query name="applyUpdates-013" date="2008-11-04"/>
                     <input-file role="principal-data" variable="input-context"
                        >works-mod</input-file>
                  </state>
                  <state time="1">
                     <query name="applyUpdates-013-test" date="2008-11-04"/>
                     <input-file role="principal-data" variable="input-context"
                        >works-mod</input-file>
                     <output-file role="principal" compare="Text">applyUpdates-013.xml</output-file>
                  </state>
               </test-case>
               <test-case name="applyUpdates-014" FilePath="UpdateRoutines/applyUpdates/"
                  scenario="standard" Creator="Andrew Eisenberg">
                  <description>Insert and delete attributes with the same name.</description>
                  <spec-citation spec="XQUPDATE" section-number="3.2.2"
                     section-title="upd:applyUpdates" section-pointer="id-upd-apply-updates"/>
                  <state time="0">
                     <query name="applyUpdates-014" date="2008-11-04"/>
                     <input-file role="principal-data" variable="input-context"
                        >works-mod</input-file>
                  </state>
                  <state time="1">
                     <query name="applyUpdates-014-test" date="2008-11-04"/>
                     <input-file role="principal-data" variable="input-context"
                        >works-mod</input-file>
                     <output-file role="principal" compare="Text">applyUpdates-014.xml</output-file>
                  </state>
               </test-case>
               <!-- test removed in response to Bugzilla #6369
            <test-case  name="applyUpdates-015" FilePath="UpdateRoutines/applyUpdates/" scenario="standard" Creator="Andrew Eisenberg">
               <description>Change attribute name to an illegal value.</description>
               <spec-citation spec="XQUPDATE" section-number="3.2.2" section-title="upd:applyUpdates" section-pointer="id-upd-apply-updates"/>
               <state time="0">
                  <query name="applyUpdates-015" date="2008-11-04"/>
                  <input-file role="principal-data" variable="input-context">works-mod</input-file>
                  <expected-error>XUDY0021</expected-error>              	
               </state>
            </test-case>
            -->
               <test-case name="applyUpdates-016" FilePath="UpdateRoutines/applyUpdates/"
                  scenario="standard" Creator="Andrew Eisenberg">
                  <description>Check atomicity with a good operation and a bad
                     operation.</description>
                  <spec-citation spec="XQUPDATE" section-number="3.2.2"
                     section-title="upd:applyUpdates" section-pointer="id-upd-apply-updates"/>
                  <state time="0">
                     <query name="applyUpdates-016" date="2008-11-04"/>
                     <input-file role="principal-data" variable="input-context"
                        >works-mod</input-file>
                     <expected-error>XUDY0021</expected-error>
                  </state>
                  <state time="1">
                     <query name="applyUpdates-016-test" date="2008-11-04"/>
                     <input-file role="principal-data" variable="input-context"
                        >works-mod</input-file>
                     <output-file role="principal" compare="Text">applyUpdates-016.xml</output-file>
                  </state>
               </test-case>
               <test-case name="applyUpdates-021" FilePath="UpdateRoutines/applyUpdates/"
                  scenario="standard" Creator="Michael Kay">
                  <description>Insert and rename attributes with the same name.</description>
                  <spec-citation spec="XQUPDATE" section-number="3.2.2"
                     section-title="upd:applyUpdates" section-pointer="id-upd-apply-updates"/>
                  <state time="0">
                     <query name="applyUpdates-021" date="2009-01-29"/>
                     <input-file role="principal-data" variable="input-context"
                        >works-mod</input-file>
                  </state>
                  <state time="1">
                     <query name="applyUpdates-021-test" date="2009-01-29"/>
                     <input-file role="principal-data" variable="input-context"
                        >works-mod</input-file>
                     <output-file role="principal" compare="Text">applyUpdates-021.xml</output-file>
                  </state>
               </test-case>
               <test-case name="applyUpdates-022" FilePath="UpdateRoutines/applyUpdates/"
                  scenario="standard" Creator="Michael Kay">
                  <description>Insert and replace attributes with the same name.</description>
                  <spec-citation spec="XQUPDATE" section-number="3.2.2"
                     section-title="upd:applyUpdates" section-pointer="id-upd-apply-updates"/>
                  <state time="0">
                     <query name="applyUpdates-022" date="2009-01-29"/>
                     <input-file role="principal-data" variable="input-context"
                        >works-mod</input-file>
                  </state>
                  <state time="1">
                     <query name="applyUpdates-022-test" date="2009-01-29"/>
                     <input-file role="principal-data" variable="input-context"
                        >works-mod</input-file>
                     <output-file role="principal" compare="Text">applyUpdates-022.xml</output-file>
                  </state>
               </test-case>
               <test-case name="applyUpdates-023" FilePath="UpdateRoutines/applyUpdates/"
                  scenario="standard" Creator="Michael Kay">
                  <description>Insert two attributes with the same name and delete the containing
                     element.</description>
                  <spec-citation spec="XQUPDATE" section-number="3.2.2"
                     section-title="upd:applyUpdates" section-pointer="id-upd-apply-updates"/>
                  <state time="0">
                     <query name="applyUpdates-023" date="2009-01-29"/>
                     <input-file role="principal-data" variable="input-context"
                        >works-mod</input-file>
                     <expected-error>XUDY0021</expected-error>
                  </state>
               </test-case>
               <test-case name="applyUpdates-024" FilePath="UpdateRoutines/applyUpdates/"
                  scenario="standard" Creator="Michael Kay">
                  <description>Insert two attributes with the same name and delete the containing
                     element's parent.</description>
                  <spec-citation spec="XQUPDATE" section-number="3.2.2"
                     section-title="upd:applyUpdates" section-pointer="id-upd-apply-updates"/>
                  <state time="0">
                     <query name="applyUpdates-024" date="2009-01-29"/>
                     <input-file role="principal-data" variable="input-context"
                        >works-mod</input-file>
                     <expected-error>XUDY0021</expected-error>
                  </state>
               </test-case>
               <test-case name="applyUpdates-025" FilePath="UpdateRoutines/applyUpdates/"
                  scenario="standard" Creator="Michael Kay">
                  <description>Swap the names of two attribute nodes.</description>
                  <spec-citation spec="XQUPDATE" section-number="3.2.2"
                     section-title="upd:applyUpdates" section-pointer="id-upd-apply-updates"/>
                  <state time="0">
                     <query name="applyUpdates-025" date="2009-01-29"/>
                     <input-file role="principal-data" variable="input-context"
                        >works-mod</input-file>
                  </state>
                  <state time="1">
                     <query name="applyUpdates-025-test" date="2009-01-29"/>
                     <input-file role="principal-data" variable="input-context"
                        >works-mod</input-file>
                     <output-file role="principal" compare="Text">applyUpdates-025.xml</output-file>
                  </state>
               </test-case>
               <test-case name="applyUpdates-026" FilePath="UpdateRoutines/applyUpdates/"
                  scenario="standard" Creator="Michael Kay">
                  <description>Rename one attribute node, replace another.</description>
                  <spec-citation spec="XQUPDATE" section-number="3.2.2"
                     section-title="upd:applyUpdates" section-pointer="id-upd-apply-updates"/>
                  <state time="0">
                     <query name="applyUpdates-026" date="2009-01-29"/>
                     <input-file role="principal-data" variable="input-context"
                        >works-mod</input-file>
                  </state>
                  <state time="1">
                     <query name="applyUpdates-026-test" date="2009-01-29"/>
                     <input-file role="principal-data" variable="input-context"
                        >works-mod</input-file>
                     <output-file role="principal" compare="Text">applyUpdates-026.xml</output-file>
                  </state>
               </test-case>
            </test-group>
            <test-group name="revalidate">
               <GroupInfo>
                  <title>upd:revalidate</title>
                  <description> These are the same tests that are found in XQuery Update RemoveType
                     Tests, XQuery Update Lax Revalidation Tests, and XQuery Update Revalidation
                     Tests for copy-modify expressions (also called transform expressions). These
                     tests expect errors if the revalidation mode that is used is not supported.
                  </description>
               </GroupInfo>





            </test-group>
            <test-group name="removeType">
               <GroupInfo>
                  <title>upd:removeType</title>
                  <description> These are the same tests that are found in XQuery Update RemoveType
                     Tests. These tests expect errors if the revalidation mode that is used is not
                     supported. </description>
               </GroupInfo>

            </test-group>
            <test-group name="setToUntyped">
               <GroupInfo>
                  <title>upd:setToUntyped</title>
                  <description/>
               </GroupInfo>
               <test-case name="setToUntyped-001" FilePath="UpdateRoutines/setToUntyped/"
                  scenario="standard" Creator="Andrew Eisenberg">
                  <description>Check that all properties are set correctly by
                     upd:setToUntyped.</description>
                  <spec-citation spec="XQUPDATE" section-number="3.2.5"
                     section-title="upd:setToUntyped" section-pointer="id-upd-set-to-untyped"/>
                  <state time="0">
                     <query name="setToUntyped-001" date="2008-12-03"/>
                     <input-file role="principal-data" variable="input-context">books2</input-file>
                     <output-file role="principal" compare="Text">setToUntyped-001.txt</output-file>
                  </state>
               </test-case>
               <test-case name="setToUntyped-002" FilePath="UpdateRoutines/setToUntyped/"
                  scenario="standard" Creator="Andrew Eisenberg">
                  <description>Check that all properties are set correctly by
                     upd:setToUntyped.</description>
                  <spec-citation spec="XQUPDATE" section-number="3.2.5"
                     section-title="upd:setToUntyped" section-pointer="id-upd-set-to-untyped"/>
                  <state time="0">
                     <query name="setToUntyped-002" date="2008-12-03"/>
                     <input-file role="principal-data" variable="input-context">books2</input-file>
                     <output-file role="principal" compare="Text">setToUntyped-002.txt</output-file>
                  </state>
               </test-case>
               <test-case name="setToUntyped-003" FilePath="UpdateRoutines/setToUntyped/"
                  scenario="standard" Creator="Andrew Eisenberg">
                  <description>Check that all properties are set correctly by
                     upd:setToUntyped.</description>
                  <spec-citation spec="XQUPDATE" section-number="3.2.5"
                     section-title="upd:setToUntyped" section-pointer="id-upd-set-to-untyped"/>
                  <state time="0">
                     <query name="setToUntyped-003" date="2008-12-03"/>
                     <input-file role="principal-data" variable="input-context">books2</input-file>
                     <output-file role="principal" compare="Text">setToUntyped-003.txt</output-file>
                  </state>
               </test-case>
               <test-case name="setToUntyped-004" FilePath="UpdateRoutines/setToUntyped/"
                  scenario="standard" Creator="Andrew Eisenberg">
                  <description>Check that all properties are set correctly by
                     upd:setToUntyped.</description>
                  <spec-citation spec="XQUPDATE" section-number="3.2.5"
                     section-title="upd:setToUntyped" section-pointer="id-upd-set-to-untyped"/>
                  <state time="0">
                     <query name="setToUntyped-004" date="2008-12-03"/>
                     <input-file role="principal-data" variable="input-context">books2</input-file>
                     <output-file role="principal" compare="Text">setToUntyped-004.txt</output-file>
                  </state>
               </test-case>
               <test-case name="setToUntyped-005" FilePath="UpdateRoutines/setToUntyped/"
                  scenario="standard" Creator="Andrew Eisenberg">
                  <description>Check that all properties are set correctly by
                     upd:setToUntyped.</description>
                  <spec-citation spec="XQUPDATE" section-number="3.2.5"
                     section-title="upd:setToUntyped" section-pointer="id-upd-set-to-untyped"/>
                  <state time="0">
                     <query name="setToUntyped-005" date="2008-12-03"/>
                     <input-file role="principal-data" variable="input-context">books2</input-file>
                     <output-file role="principal" compare="Text">setToUntyped-005.txt</output-file>
                  </state>
               </test-case>
               <test-case name="setToUntyped-006" FilePath="UpdateRoutines/setToUntyped/"
                  scenario="standard" Creator="Andrew Eisenberg">
                  <description>Check that all properties are set correctly by
                     upd:setToUntyped.</description>
                  <spec-citation spec="XQUPDATE" section-number="3.2.5"
                     section-title="upd:setToUntyped" section-pointer="id-upd-set-to-untyped"/>
                  <state time="0">
                     <query name="setToUntyped-006" date="2008-12-03"/>
                     <input-file role="principal-data" variable="input-context">books2</input-file>
                     <output-file role="principal" compare="Text">setToUntyped-006.txt</output-file>
                  </state>
               </test-case>
               <test-case name="setToUntyped-007" FilePath="UpdateRoutines/setToUntyped/"
                  scenario="standard" Creator="Andrew Eisenberg">
                  <description>Check that all properties are set correctly by
                     upd:setToUntyped.</description>
                  <spec-citation spec="XQUPDATE" section-number="3.2.5"
                     section-title="upd:setToUntyped" section-pointer="id-upd-set-to-untyped"/>
                  <state time="0">
                     <query name="setToUntyped-007" date="2008-12-03"/>
                     <input-file role="principal-data" variable="input-context">books</input-file>
                     <output-file role="principal" compare="Text">setToUntyped-007.txt</output-file>
                  </state>
               </test-case>
               <test-case name="setToUntyped-008" FilePath="UpdateRoutines/setToUntyped/"
                  scenario="standard" Creator="Andrew Eisenberg">
                  <description>Check that all properties are set correctly by
                     upd:setToUntyped.</description>
                  <spec-citation spec="XQUPDATE" section-number="3.2.5"
                     section-title="upd:setToUntyped" section-pointer="id-upd-set-to-untyped"/>
                  <state time="0">
                     <query name="setToUntyped-008" date="2008-12-03"/>
                     <input-file role="principal-data" variable="input-context">books</input-file>
                     <output-file role="principal" compare="Text">setToUntyped-008.txt</output-file>
                  </state>
               </test-case>
               <test-case name="setToUntyped-009" FilePath="UpdateRoutines/setToUntyped/"
                  scenario="standard" Creator="Andrew Eisenberg">
                  <description>Check that all properties are set correctly by
                     upd:setToUntyped.</description>
                  <spec-citation spec="XQUPDATE" section-number="3.1.8"
                     section-title="upd:replaceNode" section-pointer="id-upd-replacenode"/>
                  <spec-citation spec="XQUPDATE" section-number="3.2.5"
                     section-title="upd:setToUntyped" section-pointer="id-upd-set-to-untyped"/>
                  <state time="0">
                     <query name="setToUntyped-009" date="2009-03-02"/>
                     <input-file role="principal-data" variable="input-context">books2</input-file>
                     <output-file role="principal" compare="Text">setToUntyped-009.txt</output-file>
                  </state>
               </test-case>
               <test-case name="setToUntyped-010" FilePath="UpdateRoutines/setToUntyped/"
                  scenario="standard" Creator="Andrew Eisenberg">
                  <description>Check that all properties are set correctly by
                     upd:setToUntyped.</description>
                  <spec-citation spec="XQUPDATE" section-number="3.1.8"
                     section-title="upd:replaceNode" section-pointer="id-upd-replacenode"/>
                  <spec-citation spec="XQUPDATE" section-number="3.2.5"
                     section-title="upd:setToUntyped" section-pointer="id-upd-set-to-untyped"/>
                  <state time="0">
                     <query name="setToUntyped-010" date="2009-03-02"/>
                     <input-file role="principal-data" variable="input-context">books2</input-file>
                     <output-file role="principal" compare="Text">setToUntyped-010.txt</output-file>
                  </state>
               </test-case>
            </test-group>
            <test-group name="propagateNamespace">
               <GroupInfo>
                  <title>upd:propagateNamespace</title>
                  <description/>
               </GroupInfo>
               <test-case name="propagateNamespaces01"
                  FilePath="UpdateRoutines/propagateNamespaces/" scenario="standard"
                  Creator="Josh Spiegel">
                  <description>Check that all properties are set correctly by
                     upd:propagateNamespaces.</description>
                  <spec-citation spec="XQUPDATE" section-number="3.2.6"
                     section-title="upd:propagateNamespaces"
                     section-pointer="id-upd-propagate-namespace"/>
                  <state time="0">
                     <query name="propagateNamespaces01" date="2010-04-02"/>
                     <output-file role="principal" compare="XML"
                        >propagateNamespaces01.xml</output-file>
                  </state>
               </test-case>
               <test-case name="propagateNamespaces02"
                  FilePath="UpdateRoutines/propagateNamespaces/" scenario="standard"
                  Creator="Josh Spiegel">
                  <description>Check that all properties are set correctly by
                     upd:propagateNamespaces.</description>
                  <spec-citation spec="XQUPDATE" section-number="3.2.6"
                     section-title="upd:propagateNamespaces"
                     section-pointer="id-upd-propagate-namespace"/>
                  <state time="0">
                     <query name="propagateNamespaces02" date="2010-04-02"/>
                     <output-file role="principal" compare="XML"
                        >propagateNamespaces02.xml</output-file>
                  </state>
               </test-case>
               <test-case name="propagateNamespaces03"
                  FilePath="UpdateRoutines/propagateNamespaces/" scenario="standard"
                  Creator="Josh Spiegel">
                  <description>Check that all properties are set correctly by
                     upd:propagateNamespaces.</description>
                  <spec-citation spec="XQUPDATE" section-number="3.2.6"
                     section-title="upd:propagateNamespaces"
                     section-pointer="id-upd-propagate-namespace"/>
                  <state time="0">
                     <query name="propagateNamespaces03" date="2010-04-02"/>
                     <output-file role="principal" compare="XML"
                        >propagateNamespaces03.xml</output-file>
                  </state>
               </test-case>
               <test-case name="propagateNamespaces04"
                  FilePath="UpdateRoutines/propagateNamespaces/" scenario="standard"
                  Creator="Josh Spiegel">
                  <description>Check that all properties are set correctly by
                     upd:propagateNamespaces.</description>
                  <spec-citation spec="XQUPDATE" section-number="3.2.6"
                     section-title="upd:propagateNamespaces"
                     section-pointer="id-upd-propagate-namespace"/>
                  <state time="0">
                     <query name="propagateNamespaces04" date="2010-04-02"/>
                     <output-file role="principal" compare="XML"
                        >propagateNamespaces04.xml</output-file>
                  </state>
               </test-case>
               <test-case name="propagateNamespaces05"
                  FilePath="UpdateRoutines/propagateNamespaces/" scenario="standard"
                  Creator="Josh Spiegel">
                  <description>Check that all properties are set correctly by
                     upd:propagateNamespaces.</description>
                  <spec-citation spec="XQUPDATE" section-number="3.2.6"
                     section-title="upd:propagateNamespaces"
                     section-pointer="id-upd-propagate-namespace"/>
                  <state time="0">
                     <query name="propagateNamespaces05" date="2010-04-02"/>
                     <output-file role="principal" compare="XML"
                        >propagateNamespaces05.xml</output-file>
                  </state>
               </test-case>
               <test-case name="propagateNamespaces06"
                  FilePath="UpdateRoutines/propagateNamespaces/" scenario="standard"
                  Creator="Josh Spiegel">
                  <description>Check that all properties are set correctly by
                     upd:propagateNamespaces.</description>
                  <spec-citation spec="XQUPDATE" section-number="3.2.6"
                     section-title="upd:propagateNamespaces"
                     section-pointer="id-upd-propagate-namespace"/>
                  <state time="0">
                     <query name="propagateNamespaces06" date="2010-04-02"/>
                     <output-file role="principal" compare="XML"
                        >propagateNamespaces06.xml</output-file>
                  </state>
               </test-case>
            </test-group>
         </test-group>
      </test-group>
      <test-group name="AdditionalTyping" featureOwner="Jonathan Robie">
         <GroupInfo>
            <title>Additional Typing</title>
            <description>Note that despite the names and descriptions of the tests in this group,
               they do not actually depend on the static typing feature; a product that implements
               dynamic type checking can run these tests and pass them. (MHK
               2010-04-07)</description>
         </GroupInfo>
         <test-case name="statictyp-xqupd-01" FilePath="Static-typing-xqupd/"
            scenario="runtime-error" Creator="Zhen Hua Liu">
            <description>Evaluation of static typing feature with delete expression.</description>
            <spec-citation spec="XQUPDATE" section-number="2.4.2" section-title="Delete"
               section-pointer="id-delete"/>
            <state time="0">
               <query name="statictyp-xqupd-01" date="2008-03-22"/>
               <expected-error>XUTY0007</expected-error>
            </state>
         </test-case>
         <test-case name="statictyp-xqupd-02" FilePath="Static-typing-xqupd/"
            scenario="runtime-error" Creator="Zhen Hua Liu">
            <description>Evaluation of static typing feature with delete expression.</description>
            <spec-citation spec="XQUPDATE" section-number="2.4.2" section-title="Delete"
               section-pointer="id-delete"/>
            <state time="0">
               <query name="statictyp-xqupd-02" date="2008-03-22"/>
               <expected-error>XUTY0007</expected-error>
            </state>
         </test-case>
         <test-case name="statictyp-xqupd-03" FilePath="Static-typing-xqupd/"
            scenario="runtime-error" Creator="Zhen Hua Liu">
            <description>Evaluation of static typing feature with insert into
               expression.</description>
            <spec-citation spec="XQUPDATE" section-number="2.4.1" section-title="Insert"
               section-pointer="id-insert"/>
            <state time="0">
               <query name="statictyp-xqupd-03" date="2008-03-22"/>
               <expected-error>XUTY0005</expected-error>
            </state>
         </test-case>
         <test-case name="statictyp-xqupd-04" FilePath="Static-typing-xqupd/"
            scenario="runtime-error" Creator="Zhen Hua Liu">
            <description>Evaluation of static typing feature with insert into
               expression.</description>
            <spec-citation spec="XQUPDATE" section-number="2.4.1" section-title="Insert"
               section-pointer="id-insert"/>
            <state time="0">
               <query name="statictyp-xqupd-04" date="2008-03-22"/>
               <expected-error>XUTY0005</expected-error>
            </state>
         </test-case>
         <test-case name="statictyp-xqupd-05" FilePath="Static-typing-xqupd/"
            scenario="runtime-error" Creator="Zhen Hua Liu">
            <description>Evaluation of static typing feature with insert into
               expression.</description>
            <spec-citation spec="XQUPDATE" section-number="2.4.1" section-title="Insert"
               section-pointer="id-insert"/>
            <state time="0">
               <query name="statictyp-xqupd-05" date="2008-03-22"/>
               <expected-error>XUTY0005</expected-error>
            </state>
         </test-case>
         <test-case name="statictyp-xqupd-06" FilePath="Static-typing-xqupd/"
            scenario="runtime-error" Creator="Zhen Hua Liu">
            <description>Evaluation of static typing feature with insert into
               expression.</description>
            <spec-citation spec="XQUPDATE" section-number="2.4.1" section-title="Insert"
               section-pointer="id-insert"/>
            <state time="0">
               <query name="statictyp-xqupd-06" date="2008-03-22"/>
               <expected-error>XUTY0005</expected-error>
            </state>
         </test-case>
         <test-case name="statictyp-xqupd-07" FilePath="Static-typing-xqupd/"
            scenario="runtime-error" Creator="Zhen Hua Liu">
            <description>Evaluation of static typing feature with insert into
               expression.</description>
            <spec-citation spec="XQUPDATE" section-number="2.4.1" section-title="Insert"
               section-pointer="id-insert"/>
            <state time="0">
               <query name="statictyp-xqupd-07" date="2008-03-22"/>
               <expected-error>XUTY0005</expected-error>
            </state>
         </test-case>
         <test-case name="statictyp-xqupd-08" FilePath="Static-typing-xqupd/"
            scenario="runtime-error" Creator="Zhen Hua Liu">
            <description>Evaluation of static typing feature with insert into
               expression.</description>
            <spec-citation spec="XQUPDATE" section-number="2.4.1" section-title="Insert"
               section-pointer="id-insert"/>
            <state time="0">
               <query name="statictyp-xqupd-08" date="2008-03-22"/>
               <expected-error>XUTY0005</expected-error>
            </state>
         </test-case>
         <test-case name="statictyp-xqupd-09" FilePath="Static-typing-xqupd/"
            scenario="runtime-error" Creator="Zhen Hua Liu">
            <description>Evaluation of static typing feature with insert into
               expression.</description>
            <spec-citation spec="XQUPDATE" section-number="2.4.1" section-title="Insert"
               section-pointer="id-insert"/>
            <state time="0">
               <query name="statictyp-xqupd-09" date="2008-03-22"/>
               <expected-error>XUTY0022</expected-error>
            </state>
         </test-case>
         <test-case name="statictyp-xqupd-10" FilePath="Static-typing-xqupd/"
            scenario="runtime-error" Creator="Zhen Hua Liu">
            <description>Evaluation of static typing feature with insert before
               expression.</description>
            <spec-citation spec="XQUPDATE" section-number="2.4.1" section-title="Insert"
               section-pointer="id-insert"/>
            <state time="0">
               <query name="statictyp-xqupd-10" date="2008-03-22"/>
               <expected-error>XUTY0006</expected-error>
            </state>
         </test-case>
         <test-case name="statictyp-xqupd-11" FilePath="Static-typing-xqupd/"
            scenario="runtime-error" Creator="Zhen Hua Liu">
            <description>Evaluation of static typing feature with insert before
               expression.</description>
            <spec-citation spec="XQUPDATE" section-number="2.4.1" section-title="Insert"
               section-pointer="id-insert"/>
            <state time="0">
               <query name="statictyp-xqupd-11" date="2008-03-22"/>
               <expected-error>XUTY0006</expected-error>
            </state>
         </test-case>
         <test-case name="statictyp-xqupd-12" FilePath="Static-typing-xqupd/"
            scenario="runtime-error" Creator="Zhen Hua Liu">
            <description>Evaluation of static typing feature with insert before
               expression.</description>
            <spec-citation spec="XQUPDATE" section-number="2.4.1" section-title="Insert"
               section-pointer="id-insert"/>
            <state time="0">
               <query name="statictyp-xqupd-12" date="2008-03-22"/>
               <expected-error>XUTY0006</expected-error>
            </state>
         </test-case>
         <test-case name="statictyp-xqupd-13" FilePath="Static-typing-xqupd/"
            scenario="runtime-error" Creator="Zhen Hua Liu">
            <description>Evaluation of static typing feature with insert before
               expression.</description>
            <spec-citation spec="XQUPDATE" section-number="2.4.1" section-title="Insert"
               section-pointer="id-insert"/>
            <state time="0">
               <query name="statictyp-xqupd-13" date="2008-03-22"/>
               <expected-error>XUTY0006</expected-error>
            </state>
         </test-case>
         <test-case name="statictyp-xqupd-14" FilePath="Static-typing-xqupd/"
            scenario="runtime-error" Creator="Zhen Hua Liu">
            <description>Evaluation of static typing feature with insert before
               expression.</description>
            <spec-citation spec="XQUPDATE" section-number="2.4.1" section-title="Insert"
               section-pointer="id-insert"/>
            <state time="0">
               <query name="statictyp-xqupd-14" date="2008-03-22"/>
               <expected-error>XUTY0006</expected-error>
            </state>
         </test-case>
         <test-case name="statictyp-xqupd-15" FilePath="Static-typing-xqupd/"
            scenario="runtime-error" Creator="Zhen Hua Liu">
            <description>Evaluation of static typing feature with insert before
               expression.</description>
            <spec-citation spec="XQUPDATE" section-number="2.4.1" section-title="Insert"
               section-pointer="id-insert"/>
            <state time="0">
               <query name="statictyp-xqupd-15" date="2008-03-22"/>
               <expected-error>XUTY0006</expected-error>
            </state>
         </test-case>
         <test-case name="statictyp-xqupd-16" FilePath="Static-typing-xqupd/"
            scenario="runtime-error" Creator="Zhen Hua Liu">
            <description>Evaluation of static typing feature with insert before
               expression.</description>
            <spec-citation spec="XQUPDATE" section-number="2.4.1" section-title="Insert"
               section-pointer="id-insert"/>
            <state time="0">
               <query name="statictyp-xqupd-16" date="2008-03-22"/>
               <expected-error>XUTY0006</expected-error>
            </state>
         </test-case>
         <test-case name="statictyp-xqupd-17" FilePath="Static-typing-xqupd/"
            scenario="runtime-error" Creator="Zhen Hua Liu">
            <description>Evaluation of static typing feature with delete expression.</description>
            <spec-citation spec="XQUPDATE" section-number="2.4.1" section-title="Insert"
               section-pointer="id-insert"/>
            <state time="0">
               <query name="statictyp-xqupd-17" date="2008-03-22"/>
               <expected-error>XUTY0006</expected-error>
            </state>
         </test-case>
         <test-case name="statictyp-xqupd-18" FilePath="Static-typing-xqupd/"
            scenario="runtime-error" Creator="Zhen Hua Liu">
            <description>Evaluation of static typing feature with insert after
               expression.</description>
            <spec-citation spec="XQUPDATE" section-number="2.4.1" section-title="Insert"
               section-pointer="id-insert"/>
            <state time="0">
               <query name="statictyp-xqupd-18" date="2008-03-22"/>
               <expected-error>XUTY0006</expected-error>
            </state>
         </test-case>
         <test-case name="statictyp-xqupd-19" FilePath="Static-typing-xqupd/"
            scenario="runtime-error" Creator="Zhen Hua Liu">
            <description>Evaluation of static typing feature with insert after
               expression.</description>
            <spec-citation spec="XQUPDATE" section-number="2.4.1" section-title="Insert"
               section-pointer="id-insert"/>
            <state time="0">
               <query name="statictyp-xqupd-19" date="2008-03-22"/>
               <expected-error>XUTY0006</expected-error>
            </state>
         </test-case>
         <test-case name="statictyp-xqupd-20" FilePath="Static-typing-xqupd/"
            scenario="runtime-error" Creator="Zhen Hua Liu">
            <description>Evaluation of static typing feature with insert after
               expression.</description>
            <spec-citation spec="XQUPDATE" section-number="2.4.1" section-title="Insert"
               section-pointer="id-insert"/>
            <state time="0">
               <query name="statictyp-xqupd-20" date="2008-03-22"/>
               <expected-error>XUTY0006</expected-error>
            </state>
         </test-case>
         <test-case name="statictyp-xqupd-21" FilePath="Static-typing-xqupd/"
            scenario="runtime-error" Creator="Zhen Hua Liu">
            <description>Evaluation of static typing feature with insert after
               expression.</description>
            <spec-citation spec="XQUPDATE" section-number="2.4.1" section-title="Insert"
               section-pointer="id-insert"/>
            <state time="0">
               <query name="statictyp-xqupd-21" date="2008-03-22"/>
               <expected-error>XUTY0006</expected-error>
            </state>
         </test-case>
         <test-case name="statictyp-xqupd-22" FilePath="Static-typing-xqupd/"
            scenario="runtime-error" Creator="Zhen Hua Liu">
            <description>Evaluation of static typing feature with insert after
               expression.</description>
            <spec-citation spec="XQUPDATE" section-number="2.4.1" section-title="Insert"
               section-pointer="id-insert"/>
            <state time="0">
               <query name="statictyp-xqupd-22" date="2008-03-22"/>
               <expected-error>XUTY0006</expected-error>
            </state>
         </test-case>
         <test-case name="statictyp-xqupd-23" FilePath="Static-typing-xqupd/"
            scenario="runtime-error" Creator="Zhen Hua Liu">
            <description>Evaluation of static typing feature with insert after
               expression.</description>
            <spec-citation spec="XQUPDATE" section-number="2.4.1" section-title="Insert"
               section-pointer="id-insert"/>
            <state time="0">
               <query name="statictyp-xqupd-23" date="2008-03-22"/>
               <expected-error>XUTY0006</expected-error>
            </state>
         </test-case>
         <test-case name="statictyp-xqupd-24" FilePath="Static-typing-xqupd/"
            scenario="runtime-error" Creator="Zhen Hua Liu">
            <description>Evaluation of static typing feature with insert after
               expression.</description>
            <spec-citation spec="XQUPDATE" section-number="2.4.1" section-title="Insert"
               section-pointer="id-insert"/>
            <state time="0">
               <query name="statictyp-xqupd-24" date="2008-03-22"/>
               <expected-error>XUTY0006</expected-error>
            </state>
         </test-case>
         <test-case name="statictyp-xqupd-25" FilePath="Static-typing-xqupd/"
            scenario="runtime-error" Creator="Zhen Hua Liu">
            <description>Evaluation of static typing feature with insert into
               expression.</description>
            <spec-citation spec="XQUPDATE" section-number="2.4.1" section-title="Insert"
               section-pointer="id-insert"/>
            <state time="0">
               <query name="statictyp-xqupd-25" date="2008-03-22"/>
               <expected-error>XUTY0022</expected-error>
            </state>
         </test-case>
         <test-case name="statictyp-xqupd-26" FilePath="Static-typing-xqupd/"
            scenario="runtime-error" Creator="Zhen Hua Liu">
            <description>Evaluation of static typing feature with replace expression.</description>
            <spec-citation spec="XQUPDATE" section-number="2.4.3" section-title="Replace"
               section-pointer="id-replace"/>
            <state time="0">
               <query name="statictyp-xqupd-26" date="2008-03-22"/>
               <expected-error>XUTY0008</expected-error>
            </state>
         </test-case>
         <test-case name="statictyp-xqupd-27" FilePath="Static-typing-xqupd/"
            scenario="runtime-error" Creator="Zhen Hua Liu">
            <description>Evaluation of static typing feature with replace expression.</description>
            <spec-citation spec="XQUPDATE" section-number="2.4.3" section-title="Replace"
               section-pointer="id-replace"/>
            <state time="0">
               <query name="statictyp-xqupd-27" date="2008-03-22"/>
               <expected-error>XUTY0010</expected-error>
            </state>
         </test-case>
         <test-case name="statictyp-xqupd-28" FilePath="Static-typing-xqupd/"
            scenario="runtime-error" Creator="Zhen Hua Liu">
            <description>Evaluation of static typing feature with replace expression.</description>
            <spec-citation spec="XQUPDATE" section-number="2.4.3" section-title="Replace"
               section-pointer="id-replace"/>
            <state time="0">
               <query name="statictyp-xqupd-28" date="2008-03-22"/>
               <expected-error>XUTY0010</expected-error>
            </state>
         </test-case>
         <test-case name="statictyp-xqupd-29" FilePath="Static-typing-xqupd/"
            scenario="runtime-error" Creator="Zhen Hua Liu">
            <description>Evaluation of static typing feature with replace expression.</description>
            <spec-citation spec="XQUPDATE" section-number="2.4.3" section-title="Replace"
               section-pointer="id-replace"/>
            <state time="0">
               <query name="statictyp-xqupd-29" date="2008-03-22"/>
               <expected-error>XUTY0010</expected-error>
            </state>
         </test-case>
         <test-case name="statictyp-xqupd-30" FilePath="Static-typing-xqupd/"
            scenario="runtime-error" Creator="Zhen Hua Liu">
            <description>Evaluation of static typing feature with replace expression.</description>
            <spec-citation spec="XQUPDATE" section-number="2.4.3" section-title="Replace"
               section-pointer="id-replace"/>
            <state time="0">
               <query name="statictyp-xqupd-30" date="2008-03-22"/>
               <expected-error>XUTY0010</expected-error>
            </state>
         </test-case>
         <test-case name="statictyp-xqupd-31" FilePath="Static-typing-xqupd/"
            scenario="runtime-error" Creator="Zhen Hua Liu">
            <description>Evaluation of static typing feature with replace expression.</description>
            <spec-citation spec="XQUPDATE" section-number="2.4.3" section-title="Replace"
               section-pointer="id-replace"/>
            <state time="0">
               <query name="statictyp-xqupd-31" date="2008-03-22"/>
               <expected-error>XUTY0010</expected-error>
            </state>
         </test-case>
         <test-case name="statictyp-xqupd-32" FilePath="Static-typing-xqupd/"
            scenario="runtime-error" Creator="Zhen Hua Liu">
            <description>Evaluation of static typing feature with replace expression.</description>
            <spec-citation spec="XQUPDATE" section-number="2.4.3" section-title="Replace"
               section-pointer="id-replace"/>
            <state time="0">
               <query name="statictyp-xqupd-32" date="2008-03-22"/>
               <expected-error>XUTY0010</expected-error>
            </state>
         </test-case>
         <test-case name="statictyp-xqupd-33" FilePath="Static-typing-xqupd/"
            scenario="runtime-error" Creator="Zhen Hua Liu">
            <description>Evaluation of static typing feature with replace expression.</description>
            <spec-citation spec="XQUPDATE" section-number="2.4.3" section-title="Replace"
               section-pointer="id-replace"/>
            <state time="0">
               <query name="statictyp-xqupd-33" date="2008-03-22"/>
               <expected-error>XUTY0010</expected-error>
            </state>
         </test-case>
         <test-case name="statictyp-xqupd-34" FilePath="Static-typing-xqupd/"
            scenario="runtime-error" Creator="Zhen Hua Liu">
            <description>Evaluation of static typing feature with replace expression.</description>
            <spec-citation spec="XQUPDATE" section-number="2.4.3" section-title="Replace"
               section-pointer="id-replace"/>
            <state time="0">
               <query name="statictyp-xqupd-34" date="2008-03-22"/>
               <expected-error>XUTY0010</expected-error>
            </state>
         </test-case>
         <test-case name="statictyp-xqupd-35" FilePath="Static-typing-xqupd/"
            scenario="runtime-error" Creator="Zhen Hua Liu">
            <description>Evaluation of static typing feature with replace expression.</description>
            <spec-citation spec="XQUPDATE" section-number="2.4.3" section-title="Replace"
               section-pointer="id-replace"/>
            <state time="0">
               <query name="statictyp-xqupd-35" date="2008-03-22"/>
               <expected-error>XUTY0010</expected-error>
            </state>
         </test-case>
         <test-case name="statictyp-xqupd-36" FilePath="Static-typing-xqupd/"
            scenario="runtime-error" Creator="Zhen Hua Liu">
            <description>Evaluation of static typing feature with replace expression.</description>
            <spec-citation spec="XQUPDATE" section-number="2.4.3" section-title="Replace"
               section-pointer="id-replace"/>
            <state time="0">
               <query name="statictyp-xqupd-36" date="2008-03-22"/>
               <expected-error>XUTY0010</expected-error>
            </state>
         </test-case>
         <test-case name="statictyp-xqupd-37" FilePath="Static-typing-xqupd/"
            scenario="runtime-error" Creator="Zhen Hua Liu">
            <description>Evaluation of static typing feature with replace expression.</description>
            <spec-citation spec="XQUPDATE" section-number="2.4.3" section-title="Replace"
               section-pointer="id-replace"/>
            <state time="0">
               <query name="statictyp-xqupd-37" date="2008-03-22"/>
               <expected-error>XUTY0010</expected-error>
            </state>
         </test-case>
         <test-case name="statictyp-xqupd-38" FilePath="Static-typing-xqupd/"
            scenario="runtime-error" Creator="Zhen Hua Liu">
            <description>Evaluation of static typing feature with replace expression.</description>
            <spec-citation spec="XQUPDATE" section-number="2.4.3" section-title="Replace"
               section-pointer="id-replace"/>
            <state time="0">
               <query name="statictyp-xqupd-38" date="2008-03-22"/>
               <expected-error>XUTY0010</expected-error>
            </state>
         </test-case>
         <test-case name="statictyp-xqupd-39" FilePath="Static-typing-xqupd/"
            scenario="runtime-error" Creator="Zhen Hua Liu">
            <description>Evaluation of static typing feature with replace expression.</description>
            <spec-citation spec="XQUPDATE" section-number="2.4.3" section-title="Replace"
               section-pointer="id-replace"/>
            <state time="0">
               <query name="statictyp-xqupd-39" date="2008-03-22"/>
               <expected-error>XUTY0010</expected-error>
            </state>
         </test-case>
         <test-case name="statictyp-xqupd-40" FilePath="Static-typing-xqupd/"
            scenario="runtime-error" Creator="Zhen Hua Liu">
            <description>Evaluation of static typing feature with replace expression.</description>
            <spec-citation spec="XQUPDATE" section-number="2.4.3" section-title="Replace"
               section-pointer="id-replace"/>
            <state time="0">
               <query name="statictyp-xqupd-40" date="2008-03-22"/>
               <expected-error>XUTY0010</expected-error>
            </state>
         </test-case>
         <test-case name="statictyp-xqupd-41" FilePath="Static-typing-xqupd/"
            scenario="runtime-error" Creator="Zhen Hua Liu">
            <description>Evaluation of static typing feature with replace expression.</description>
            <spec-citation spec="XQUPDATE" section-number="2.4.3" section-title="Replace"
               section-pointer="id-replace"/>
            <state time="0">
               <query name="statictyp-xqupd-41" date="2008-03-22"/>
               <expected-error>XUTY0010</expected-error>
            </state>
         </test-case>
         <test-case name="statictyp-xqupd-42" FilePath="Static-typing-xqupd/"
            scenario="runtime-error" Creator="Zhen Hua Liu">
            <description>Evaluation of static typing feature with replace expression.</description>
            <spec-citation spec="XQUPDATE" section-number="2.4.3" section-title="Replace"
               section-pointer="id-replace"/>
            <state time="0">
               <query name="statictyp-xqupd-42" date="2008-03-22"/>
               <expected-error>XUTY0010</expected-error>
            </state>
         </test-case>
         <test-case name="statictyp-xqupd-43" FilePath="Static-typing-xqupd/"
            scenario="runtime-error" Creator="Zhen Hua Liu">
            <description>Evaluation of static typing feature with replace expression.</description>
            <spec-citation spec="XQUPDATE" section-number="2.4.3" section-title="Replace"
               section-pointer="id-replace"/>
            <state time="0">
               <query name="statictyp-xqupd-43" date="2008-03-22"/>
               <expected-error>XUTY0011</expected-error>
            </state>
         </test-case>
         <test-case name="statictyp-xqupd-44" FilePath="Static-typing-xqupd/"
            scenario="runtime-error" Creator="Zhen Hua Liu">
            <description>Evaluation of static typing feature with replace expression.</description>
            <spec-citation spec="XQUPDATE" section-number="2.4.3" section-title="Replace"
               section-pointer="id-replace"/>
            <state time="0">
               <query name="statictyp-xqupd-44" date="2008-03-22"/>
               <expected-error>XUTY0011</expected-error>
            </state>
         </test-case>
         <test-case name="statictyp-xqupd-45" FilePath="Static-typing-xqupd/"
            scenario="runtime-error" Creator="Zhen Hua Liu">
            <description>Evaluation of static typing feature with replace expression.</description>
            <spec-citation spec="XQUPDATE" section-number="2.4.3" section-title="Replace"
               section-pointer="id-replace"/>
            <state time="0">
               <query name="statictyp-xqupd-45" date="2008-03-22"/>
               <expected-error>XUTY0011</expected-error>
            </state>
         </test-case>
         <test-case name="statictyp-xqupd-46" FilePath="Static-typing-xqupd/"
            scenario="runtime-error" Creator="Zhen Hua Liu">
            <description>Evaluation of static typing feature with replace expression.</description>
            <spec-citation spec="XQUPDATE" section-number="2.4.3" section-title="Replace"
               section-pointer="id-replace"/>
            <state time="0">
               <query name="statictyp-xqupd-46" date="2008-03-22"/>
               <expected-error>XUTY0011</expected-error>
            </state>
         </test-case>
         <test-case name="statictyp-xqupd-47" FilePath="Static-typing-xqupd/"
            scenario="runtime-error" Creator="Zhen Hua Liu">
            <description>Evaluation of static typing feature with replace expression.</description>
            <spec-citation spec="XQUPDATE" section-number="2.4.3" section-title="Replace"
               section-pointer="id-replace"/>
            <state time="0">
               <query name="statictyp-xqupd-47" date="2008-03-22"/>
               <expected-error>XUTY0008</expected-error>
            </state>
         </test-case>
         <test-case name="statictyp-xqupd-48" FilePath="Static-typing-xqupd/"
            scenario="runtime-error" Creator="Zhen Hua Liu">
            <description>Evaluation of static typing feature with replace expression.</description>
            <spec-citation spec="XQUPDATE" section-number="2.4.3" section-title="Replace"
               section-pointer="id-replace"/>
            <state time="0">
               <query name="statictyp-xqupd-48" date="2008-03-22"/>
               <expected-error>XUTY0008</expected-error>
            </state>
         </test-case>
         <test-case name="statictyp-xqupd-49" FilePath="Static-typing-xqupd/"
            scenario="runtime-error" Creator="Zhen Hua Liu">
            <description>Evaluation of static typing feature with replace expression.</description>
            <spec-citation spec="XQUPDATE" section-number="2.4.3" section-title="Replace"
               section-pointer="id-replace"/>
            <state time="0">
               <query name="statictyp-xqupd-49" date="2008-03-22"/>
               <expected-error>XUTY0008</expected-error>
            </state>
         </test-case>
         <test-case name="statictyp-xqupd-50" FilePath="Static-typing-xqupd/"
            scenario="runtime-error" Creator="Zhen Hua Liu">
            <description>Evaluation of static typing feature with replace expression.</description>
            <spec-citation spec="XQUPDATE" section-number="2.4.3" section-title="Replace"
               section-pointer="id-replace"/>
            <state time="0">
               <query name="statictyp-xqupd-50" date="2008-03-22"/>
               <expected-error>XUTY0008</expected-error>
            </state>
         </test-case>
         <test-case name="statictyp-xqupd-51" FilePath="Static-typing-xqupd/"
            scenario="runtime-error" Creator="Zhen Hua Liu">
            <description>Evaluation of static typing feature with rename expression.</description>
            <spec-citation spec="XQUPDATE" section-number="2.4.4" section-title="Rename"
               section-pointer="id-rename"/>
            <state time="0">
               <query name="statictyp-xqupd-51" date="2008-03-22"/>
               <expected-error>XUTY0012</expected-error>
            </state>
         </test-case>
         <test-case name="statictyp-xqupd-52" FilePath="Static-typing-xqupd/"
            scenario="runtime-error" Creator="Zhen Hua Liu">
            <description>Evaluation of static typing feature with rename expression.</description>
            <spec-citation spec="XQUPDATE" section-number="2.4.4" section-title="Rename"
               section-pointer="id-rename"/>
            <state time="0">
               <query name="statictyp-xqupd-52" date="2008-03-22"/>
               <expected-error>XUTY0012</expected-error>
            </state>
         </test-case>
         <test-case name="statictyp-xqupd-53" FilePath="Static-typing-xqupd/"
            scenario="runtime-error" Creator="Zhen Hua Liu">
            <description>Evaluation of static typing feature with rename expression.</description>
            <spec-citation spec="XQUPDATE" section-number="2.4.4" section-title="Rename"
               section-pointer="id-rename"/>
            <state time="0">
               <query name="statictyp-xqupd-53" date="2008-03-22"/>
               <expected-error>XUTY0012</expected-error>
            </state>
         </test-case>
         <test-case name="statictyp-xqupd-54" FilePath="Static-typing-xqupd/"
            scenario="runtime-error" Creator="Zhen Hua Liu">
            <description>Evaluation of static typing feature with rename expression.</description>
            <spec-citation spec="XQUPDATE" section-number="2.4.4" section-title="Rename"
               section-pointer="id-rename"/>
            <state time="0">
               <query name="statictyp-xqupd-54" date="2008-03-22"/>
               <expected-error>XUTY0012</expected-error>
            </state>
         </test-case>
         <test-case name="statictyp-xqupd-55" FilePath="Static-typing-xqupd/"
            scenario="runtime-error" Creator="Zhen Hua Liu">
            <description>Evaluation of static typing feature with rename expression.</description>
            <spec-citation spec="XQUPDATE" section-number="2.4.4" section-title="Rename"
               section-pointer="id-rename"/>
            <state time="0">
               <query name="statictyp-xqupd-55" date="2008-03-22"/>
               <expected-error>XUTY0012</expected-error>
            </state>
         </test-case>
         <test-case name="statictyp-xqupd-56" FilePath="Static-typing-xqupd/"
            scenario="runtime-error" Creator="Zhen Hua Liu">
            <description>Evaluation of static typing feature with transform
               expression.</description>
            <spec-citation spec="XQUPDATE" section-number="2.4.5" section-title="Transform"
               section-pointer="id-transform"/>
            <state time="0">
               <query name="statictyp-xqupd-56" date="2008-03-22"/>
               <expected-error>XUTY0013</expected-error>
            </state>
         </test-case>
         <test-case name="statictyp-xqupd-57" FilePath="Static-typing-xqupd/"
            scenario="runtime-error" Creator="Zhen Hua Liu">
            <description>Evaluation of static typing feature with transform
               expression.</description>
            <spec-citation spec="XQUPDATE" section-number="2.4.4" section-title="Rename"
               section-pointer="id-rename"/>
            <state time="0">
               <query name="statictyp-xqupd-57" date="2008-03-22"/>
               <expected-error>XUTY0013</expected-error>
            </state>
         </test-case>
         <test-case name="statictyp-xqupd-58" FilePath="Static-typing-xqupd/"
            scenario="runtime-error" Creator="Zhen Hua Liu">
            <description>Evaluation of static typing feature with rename expression.</description>
            <spec-citation spec="XQUPDATE" section-number="2.4.4" section-title="Rename"
               section-pointer="id-rename"/>
            <state time="0">
               <query name="statictyp-xqupd-58" date="2008-03-22"/>
               <expected-error>XPTY0004</expected-error>
            </state>
         </test-case>
         <test-case name="statictyp-xqupd-59" FilePath="Static-typing-xqupd/"
            scenario="runtime-error" Creator="Zhen Hua Liu">
            <description>Evaluation of static typing feature with rename expression.</description>
            <spec-citation spec="XQUPDATE" section-number="2.4.4" section-title="Rename"
               section-pointer="id-rename"/>
            <state time="0">
               <query name="statictyp-xqupd-59" date="2008-03-22"/>
               <expected-error>XPTY0004</expected-error>
            </state>
         </test-case>
         <test-case name="statictyp-xqupd-60" FilePath="Static-typing-xqupd/"
            scenario="runtime-error" Creator="Zhen Hua Liu">
            <description>Evaluation of static typing feature with rename expression.</description>
            <spec-citation spec="XQUPDATE" section-number="2.4.4" section-title="Rename"
               section-pointer="id-rename"/>
            <state time="0">
               <query name="statictyp-xqupd-60" date="2008-03-22"/>
               <expected-error>XPTY0004</expected-error>
            </state>
         </test-case>
      </test-group>
      <test-group name="MinOther">
         <GroupInfo>
            <title>Other Tests</title>
            <description/>
         </GroupInfo>
         <test-case name="update10keywords" FilePath="Other/" scenario="standard"
            Creator="Andrew Eisenberg">
            <description>keywords can be used as variable names</description>
            <spec-citation spec="XQUPDATE" section-number="A"
               section-title="EBNF for XQuery 1.0 Grammar with Update extensions"
               section-pointer="id-grammar"/>
            <state time="0">
               <query name="update10keywords" date="2009-05-11"/>
               <input-file role="principal-data" variable="input-context">emptydoc</input-file>
               <output-file role="principal" compare="Text">update10keywords.txt</output-file>
            </state>
         </test-case>
      </test-group>
   </test-group>
   <test-group name="Optional" featureOwner="Jonathan Robie">
      <GroupInfo>
         <title>Optional Features</title>
         <description/>
      </GroupInfo>
      <test-group name="Revalidation">
         <GroupInfo>
            <title>Revalidation</title>
            <description>Tests that the revalidation declaration in the prolog is accepted and has
               the required effect</description>
         </GroupInfo>
         <test-group name="Revalidation Declaration Strict">
            <GroupInfo>
               <title>Revalidation Declaration = strict</title>
               <description/>
               <depends-on>
                  <feature supported="true">revalidation:strict</feature>
                  <description>These tests are designed to be run by a product that supports
                     revalidation mode strict</description>
                  <spec-citation spec="XQUPDATE" section-number="2.2.1"
                     section-title="Revalidation Declaration"
                     section-pointer="id-revalidation-declaration"/>
               </depends-on>
            </GroupInfo>
            <test-case name="revalidation-declaration-01" FilePath="Prolog/RevalidationDeclaration/"
               scenario="standard" Creator="Andrew Eisenberg">
               <description>One declare validation specifying strict</description>
               <spec-citation spec="XQUPDATE" section-number="2.2.1"
                  section-title="Revalidation Declaration"
                  section-pointer="id-revalidation-declaration"/>
               <state time="0">
                  <query name="revalidation-declaration-01" date="2008-10-16"/>
                  <input-file role="principal-data" variable="input-context">emptydoc</input-file>
                  <output-file role="principal" compare="Text"
                     >revalidation-declaration-01.txt</output-file>
               </state>
            </test-case>
            <test-case name="revalidation-declaration-02" FilePath="Prolog/RevalidationDeclaration/"
               scenario="runtime-error" Creator="Andrew Eisenberg">
               <description>Two declare validation specifying strict</description>
               <spec-citation spec="XQUPDATE" section-number="2.2.1"
                  section-title="Revalidation Declaration"
                  section-pointer="id-revalidation-declaration"/>
               <state time="0">
                  <query name="revalidation-declaration-02" date="2008-10-16"/>
                  <input-file role="principal-data" variable="input-context">emptydoc</input-file>
                  <expected-error>XUST0003</expected-error>
               </state>
            </test-case>
            <test-case name="revalidate-valstrict-del-001" FilePath="ValStrict/"
               scenario="runtime-error" Creator="Saxonica">
               <description>deleting a mandatory element causes validation failure</description>
               <spec-citation spec="XQUPDATE" section-number="3.2.3" section-title="upd:revalidate"
                  section-pointer="id-upd-revalidate"/>
               <state time="0">
                  <query name="valstrict-del-001" date="2008-02-14"/>
                  <input-file role="principal-data" variable="books">books</input-file>
                  <expected-error>XQDY0027</expected-error>
               </state>
            </test-case>
            <test-case name="revalidate-valstrict-del-002" FilePath="ValStrict/" scenario="standard"
               Creator="Saxonica">
               <description>deleting an optional element is fine</description>
               <spec-citation spec="XQUPDATE" section-number="3.2.3" section-title="upd:revalidate"
                  section-pointer="id-upd-revalidate"/>
               <state time="0">
                  <query name="valstrict-del-002" date="2008-02-14"/>
                  <input-file role="principal-data" variable="books">books</input-file>
               </state>
               <state time="1">
                  <query name="revalidate-valstrict-del-002-test" date="2008-02-14"/>
                  <input-file role="principal-data" variable="books">books</input-file>
                  <output-file role="principal" compare="Fragment"
                     >valstrict-del-002.out</output-file>
               </state>
            </test-case>
            <test-case name="revalidate-valstrict-del-003" FilePath="ValStrict/"
               scenario="runtime-error" Creator="Saxonica">
               <description>deleting a mandatory attribute causes validation failure</description>
               <spec-citation spec="XQUPDATE" section-number="3.2.3" section-title="upd:revalidate"
                  section-pointer="id-upd-revalidate"/>
               <state time="0">
                  <query name="valstrict-del-003" date="2008-02-14"/>
                  <input-file role="principal-data" variable="books">books</input-file>
                  <expected-error>XQDY0027</expected-error>
               </state>
            </test-case>
            <test-case name="revalidate-valstrict-del-004" FilePath="ValStrict/" scenario="standard"
               Creator="Saxonica">
               <description>deleting an optional attribute is fine</description>
               <spec-citation spec="XQUPDATE" section-number="3.2.3" section-title="upd:revalidate"
                  section-pointer="id-upd-revalidate"/>
               <state time="0">
                  <query name="valstrict-del-004" date="2008-02-14"/>
                  <input-file role="principal-data" variable="books">books</input-file>
               </state>
               <state time="1">
                  <query name="revalidate-valstrict-del-004-test" date="2008-02-14"/>
                  <input-file role="principal-data" variable="books">books</input-file>
                  <output-file role="principal" compare="Fragment"
                     >valstrict-del-004.out</output-file>
               </state>
            </test-case>
            <test-case name="revalidate-valstrict-ins-001" FilePath="ValStrict/"
               scenario="runtime-error" Creator="Saxonica">
               <description>inserting a disallowed element causes validation failure</description>
               <spec-citation spec="XQUPDATE" section-number="3.2.3" section-title="upd:revalidate"
                  section-pointer="id-upd-revalidate"/>
               <state time="0">
                  <query name="valstrict-ins-001" date="2008-03-26"/>
                  <input-file role="principal-data" variable="books">books</input-file>
                  <expected-error>XQDY0027</expected-error>
               </state>
            </test-case>
            <test-case name="revalidate-valstrict-ins-002" FilePath="ValStrict/"
               scenario="runtime-error" Creator="Saxonica">
               <description>inserting an element that exceeds maxOccurs causes validation
                  failure</description>
               <spec-citation spec="XQUPDATE" section-number="3.2.3" section-title="upd:revalidate"
                  section-pointer="id-upd-revalidate"/>
               <state time="0">
                  <query name="valstrict-ins-002" date="2008-03-26"/>
                  <input-file role="principal-data" variable="books">books</input-file>
                  <expected-error>XQDY0027</expected-error>
               </state>
            </test-case>
            <test-case name="revalidate-valstrict-ins-003" FilePath="ValStrict/" scenario="standard"
               Creator="Saxonica">
               <description>Adding a second author to a book is fine (especially if it's Thursday
                  Next...)</description>
               <spec-citation spec="XQUPDATE" section-number="3.2.3" section-title="upd:revalidate"
                  section-pointer="id-upd-revalidate"/>
               <state time="0">
                  <query name="valstrict-ins-003" date="2008-03-25"/>
                  <input-file role="principal-data" variable="books">books</input-file>
               </state>
               <state time="1">
                  <query name="revalidate-valstrict-ins-003-test" date="2008-03-25"/>
                  <input-file role="principal-data" variable="books">books</input-file>
                  <output-file role="principal" compare="Fragment"
                     >valstrict-ins-003.out</output-file>
               </state>
            </test-case>
            <test-case name="revalidate-valstrict-ins-004" FilePath="ValStrict/"
               scenario="runtime-error" Creator="Saxonica">
               <description>inserting a disallowed attribute causes validation failure</description>
               <spec-citation spec="XQUPDATE" section-number="3.2.3" section-title="upd:revalidate"
                  section-pointer="id-upd-revalidate"/>
               <state time="0">
                  <query name="valstrict-ins-004" date="2008-03-26"/>
                  <input-file role="principal-data" variable="books">books</input-file>
                  <expected-error>XQDY0027</expected-error>
               </state>
            </test-case>
            <test-case name="revalidate-valstrict-ins-005" FilePath="ValStrict/" scenario="standard"
               Creator="Saxonica">
               <description>Adding an xml:id to a book is fine </description>
               <spec-citation spec="XQUPDATE" section-number="3.2.3" section-title="upd:revalidate"
                  section-pointer="id-upd-revalidate"/>
               <state time="0">
                  <query name="valstrict-ins-005" date="2008-03-25"/>
                  <input-file role="principal-data" variable="books">books</input-file>
               </state>
               <state time="1">
                  <query name="revalidate-valstrict-ins-005-test" date="2008-03-25"/>
                  <input-file role="principal-data" variable="books">books</input-file>
                  <output-file role="principal" compare="Fragment"
                     >valstrict-ins-005.out</output-file>
               </state>
            </test-case>
            <test-case name="revalidate-valstrict-ins-006" FilePath="ValStrict/"
               scenario="runtime-error" Creator="Saxonica">
               <description>Adding an xml:id to a book is an error if the ID isn't
                  unique</description>
               <spec-citation spec="XQUPDATE" section-number="3.2.3" section-title="upd:revalidate"
                  section-pointer="id-upd-revalidate"/>
               <state time="0">
                  <query name="valstrict-ins-006" date="2008-03-26"/>
                  <input-file role="principal-data" variable="books">books</input-file>
                  <expected-error>XQDY0027</expected-error>
               </state>
            </test-case>
            <test-case name="revalidate-valstrict-ins-007" FilePath="ValStrict/" scenario="standard"
               Creator="Saxonica">
               <description>Adding a duplicate xml:id to a book is fine if we change the ID that it
                  conflicts with</description>
               <spec-citation spec="XQUPDATE" section-number="3.2.3" section-title="upd:revalidate"
                  section-pointer="id-upd-revalidate"/>
               <state time="0">
                  <query name="valstrict-ins-007" date="2008-03-25"/>
                  <input-file role="principal-data" variable="books">books</input-file>
               </state>
               <state time="1">
                  <query name="revalidate-valstrict-ins-007-test" date="2008-03-25"/>
                  <input-file role="principal-data" variable="books">books</input-file>
                  <output-file role="principal" compare="Fragment"
                     >valstrict-ins-007.out</output-file>
               </state>
            </test-case>
            <test-case name="revalidate-valstrict-ren-001" FilePath="ValStrict/"
               scenario="runtime-error" Creator="Saxonica">
               <description>renaming an element is bad news if the new name is not
                  allowed</description>
               <spec-citation spec="XQUPDATE" section-number="3.2.3" section-title="upd:revalidate"
                  section-pointer="id-upd-revalidate"/>
               <state time="0">
                  <query name="valstrict-ren-001" date="2008-03-27"/>
                  <input-file role="principal-data" variable="books">books</input-file>
                  <expected-error>XQDY0027</expected-error>
               </state>
            </test-case>
            <test-case name="revalidate-valstrict-ren-002" FilePath="ValStrict/"
               scenario="runtime-error" Creator="Saxonica">
               <description>renaming an attribute is bad news if the new name is not
                  allowed</description>
               <spec-citation spec="XQUPDATE" section-number="3.2.3" section-title="upd:revalidate"
                  section-pointer="id-upd-revalidate"/>
               <state time="0">
                  <query name="valstrict-ren-002" date="2008-03-27"/>
                  <input-file role="principal-data" variable="books">books</input-file>
                  <expected-error>XQDY0027</expected-error>
               </state>
            </test-case>
            <test-case name="revalidate-valstrict-ren-003" FilePath="ValStrict/" scenario="standard"
               Creator="Saxonica">
               <description>renaming an element is OK if the new name is in the substitution
                  group</description>
               <spec-citation spec="XQUPDATE" section-number="3.2.3" section-title="upd:revalidate"
                  section-pointer="id-upd-revalidate"/>
               <state time="0">
                  <query name="valstrict-ren-003" date="2008-03-27"/>
                  <input-file role="principal-data" variable="books">books</input-file>
               </state>
               <state time="1">
                  <query name="revalidate-valstrict-ren-003-test" date="2008-03-27"/>
                  <input-file role="principal-data" variable="books">books</input-file>
                  <output-file role="principal" compare="Fragment"
                     >valstrict-ren-003.out</output-file>
               </state>
            </test-case>
            <test-case name="revalidate-valstrict-repnode-001" FilePath="ValStrict/"
               scenario="runtime-error" Creator="Saxonica">
               <description>replace element fails if the new node is invalid</description>
               <spec-citation spec="XQUPDATE" section-number="3.2.3" section-title="upd:revalidate"
                  section-pointer="id-upd-revalidate"/>
               <state time="0">
                  <query name="valstrict-repnode-001" date="2008-03-27"/>
                  <input-file role="principal-data" variable="books">books</input-file>
                  <expected-error>XQDY0027</expected-error>
               </state>
            </test-case>
            <test-case name="revalidate-valstrict-repnode-002" FilePath="ValStrict/"
               scenario="runtime-error" Creator="Saxonica">
               <description>replace attribute fails if the new node is invalid</description>
               <spec-citation spec="XQUPDATE" section-number="3.2.3" section-title="upd:revalidate"
                  section-pointer="id-upd-revalidate"/>
               <state time="0">
                  <query name="valstrict-repnode-002" date="2008-03-27"/>
                  <input-file role="principal-data" variable="books">books</input-file>
                  <expected-error>XQDY0027</expected-error>
               </state>
            </test-case>
            <test-case name="revalidate-valstrict-repnode-003" FilePath="ValStrict/"
               scenario="standard" Creator="Saxonica">
               <description>replacing an element is OK if the new node is valid</description>
               <spec-citation spec="XQUPDATE" section-number="3.2.3" section-title="upd:revalidate"
                  section-pointer="id-upd-revalidate"/>
               <state time="0">
                  <query name="valstrict-repnode-003" date="2008-03-27"/>
                  <input-file role="principal-data" variable="books">books</input-file>
               </state>
               <state time="1">
                  <query name="revalidate-valstrict-repnode-003-test" date="2008-03-27"/>
                  <input-file role="principal-data" variable="books">books</input-file>
                  <output-file role="principal" compare="Fragment"
                     >valstrict-repnode-003.out</output-file>
               </state>
            </test-case>
            <test-case name="revalidate-valtrans-ins-001" FilePath="ValTrans/"
               scenario="runtime-error" Creator="Saxonica">
               <description>inserting a disallowed element causes validation failure</description>
               <spec-citation spec="XQUPDATE" section-number="3.2.3" section-title="upd:revalidate"
                  section-pointer="id-upd-revalidate"/>
               <state time="0">
                  <query name="valtrans-ins-001" date="2008-03-27"/>
                  <input-file role="principal-data" variable="books">books</input-file>
                  <expected-error>XQDY0027</expected-error>
               </state>
            </test-case>
            <test-case name="revalidate-valtrans-ins-002" FilePath="ValTrans/" scenario="standard"
               Creator="Saxonica">
               <description>inserting an element is OK if the new node is valid</description>
               <spec-citation spec="XQUPDATE" section-number="3.2.3" section-title="upd:revalidate"
                  section-pointer="id-upd-revalidate"/>
               <state time="0">
                  <query name="valtrans-ins-002" date="2008-03-27"/>
                  <input-file role="principal-data" variable="books">books</input-file>
                  <output-file role="principal" compare="Fragment"
                     >valtrans-ins-002.out</output-file>
               </state>
            </test-case>
         </test-group>
         <test-group name="Revalidation Declaration Strict Unsupported">
            <GroupInfo>
               <title>Revalidation Declaration = strict unsupported</title>
               <description/>
               <depends-on>
                  <feature supported="false">revalidation:strict</feature>
                  <description>These tests are designed to be run only by a product that does NOT
                     support revalidation mode strict</description>
                  <spec-citation spec="XQUPDATE" section-number="2.2.1"
                     section-title="Revalidation Declaration"
                     section-pointer="id-revalidation-declaration"/>
               </depends-on>
            </GroupInfo>
            <test-case name="revalidation-declaration-01-fail"
               FilePath="Prolog/RevalidationDeclaration/" scenario="standard"
               Creator="Andrew Eisenberg">
               <description>One declare validation specifying strict</description>
               <spec-citation spec="XQUPDATE" section-number="2.2.1"
                  section-title="Revalidation Declaration"
                  section-pointer="id-revalidation-declaration"/>
               <state time="0">
                  <query name="revalidation-declaration-01" date="2008-10-16"/>
                  <input-file role="principal-data" variable="input-context">emptydoc</input-file>
                  <expected-error>XUST0026</expected-error>
               </state>
            </test-case>
         </test-group>
         <test-group name="Revalidation Declaration Lax">
            <GroupInfo>
               <title>Revalidation Declaration = lax</title>
               <description/>
               <depends-on>
                  <feature supported="true">revalidation:lax</feature>
                  <description>These tests are designed to be run by a product that supports
                     revalidation mode lax</description>
                  <spec-citation spec="XQUPDATE" section-number="2.2.1"
                     section-title="Revalidation Declaration"
                     section-pointer="id-revalidation-declaration"/>
               </depends-on>
            </GroupInfo>
            <test-case name="revalidation-declaration-03" FilePath="Prolog/RevalidationDeclaration/"
               scenario="standard" Creator="Andrew Eisenberg">
               <description>One declare validation specifying lax</description>
               <spec-citation spec="XQUPDATE" section-number="2.2.1"
                  section-title="Revalidation Declaration"
                  section-pointer="id-revalidation-declaration"/>
               <state time="0">
                  <query name="revalidation-declaration-03" date="2008-10-16"/>
                  <input-file role="principal-data" variable="input-context">emptydoc</input-file>
                  <output-file role="principal" compare="Text"
                     >revalidation-declaration-03.txt</output-file>
               </state>
            </test-case>
            <test-case name="revalidation-declaration-04" FilePath="Prolog/RevalidationDeclaration/"
               scenario="runtime-error" Creator="Andrew Eisenberg">
               <description>Two declare validation specifying lax</description>
               <spec-citation spec="XQUPDATE" section-number="2.2.1"
                  section-title="Revalidation Declaration"
                  section-pointer="id-revalidation-declaration"/>
               <state time="0">
                  <query name="revalidation-declaration-04" date="2008-10-16"/>
                  <input-file role="principal-data" variable="input-context">emptydoc</input-file>
                  <expected-error>XUST0003</expected-error>
               </state>
            </test-case>
            <test-case name="revalidate-vallax-del-001" FilePath="ValLax/" scenario="runtime-error"
               Creator="Saxonica">
               <description>deleting a mandatory element causes validation failure</description>
               <spec-citation spec="XQUPDATE" section-number="3.2.3" section-title="upd:revalidate"
                  section-pointer="id-upd-revalidate"/>
               <state time="0">
                  <query name="vallax-del-001" date="2009-01-28"/>
                  <input-file role="principal-data" variable="books">books</input-file>
                  <expected-error>XQDY0027</expected-error>
               </state>
            </test-case>
            <test-case name="revalidate-vallax-del-002" FilePath="ValLax/" scenario="standard"
               Creator="Saxonica">
               <description>deleting an optional element is fine</description>
               <spec-citation spec="XQUPDATE" section-number="3.2.3" section-title="upd:revalidate"
                  section-pointer="id-upd-revalidate"/>
               <state time="0">
                  <query name="vallax-del-002" date="2009-01-28"/>
                  <input-file role="principal-data" variable="books">books</input-file>
               </state>
               <state time="1">
                  <query name="revalidate-vallax-del-002-test" date="2009-01-28"/>
                  <input-file role="principal-data" variable="books">books</input-file>
                  <output-file role="principal" compare="Fragment">vallax-del-002.out</output-file>
               </state>
            </test-case>
            <test-case name="revalidate-vallax-del-003" FilePath="ValLax/" scenario="runtime-error"
               Creator="Saxonica">
               <description>deleting a mandatory attribute causes validation failure</description>
               <spec-citation spec="XQUPDATE" section-number="3.2.3" section-title="upd:revalidate"
                  section-pointer="id-upd-revalidate"/>
               <state time="0">
                  <query name="vallax-del-003" date="2009-01-28"/>
                  <input-file role="principal-data" variable="books">books</input-file>
                  <expected-error>XQDY0027</expected-error>
               </state>
            </test-case>
            <test-case name="revalidate-vallax-del-004" FilePath="ValLax/" scenario="standard"
               Creator="Saxonica">
               <description>deleting an optional attribute is fine</description>
               <spec-citation spec="XQUPDATE" section-number="3.2.3" section-title="upd:revalidate"
                  section-pointer="id-upd-revalidate"/>
               <state time="0">
                  <query name="vallax-del-004" date="2009-01-28"/>
                  <input-file role="principal-data" variable="books">books</input-file>
               </state>
               <state time="1">
                  <query name="revalidate-vallax-del-004-test" date="2009-01-28"/>
                  <input-file role="principal-data" variable="books">books</input-file>
                  <output-file role="principal" compare="Fragment">vallax-del-004.out</output-file>
               </state>
            </test-case>
            <test-case name="revalidate-vallax-ins-001" FilePath="ValLax/" scenario="runtime-error"
               Creator="Saxonica">
               <description>inserting a disallowed element causes validation failure</description>
               <spec-citation spec="XQUPDATE" section-number="3.2.3" section-title="upd:revalidate"
                  section-pointer="id-upd-revalidate"/>
               <state time="0">
                  <query name="vallax-ins-001" date="2009-01-28"/>
                  <input-file role="principal-data" variable="books">books</input-file>
                  <expected-error>XQDY0027</expected-error>
               </state>
            </test-case>
            <test-case name="revalidate-vallax-ins-002" FilePath="ValLax/" scenario="runtime-error"
               Creator="Saxonica">
               <description>inserting an element that exceeds maxOccurs causes validation
                  failure</description>
               <spec-citation spec="XQUPDATE" section-number="3.2.3" section-title="upd:revalidate"
                  section-pointer="id-upd-revalidate"/>
               <state time="0">
                  <query name="vallax-ins-002" date="2009-01-28"/>
                  <input-file role="principal-data" variable="books">books</input-file>
                  <expected-error>XQDY0027</expected-error>
               </state>
            </test-case>
            <test-case name="revalidate-vallax-ins-003" FilePath="ValLax/" scenario="standard"
               Creator="Saxonica">
               <description>Adding a second author to a book is fine (especially if it's Thursday
                  Next...)</description>
               <spec-citation spec="XQUPDATE" section-number="3.2.3" section-title="upd:revalidate"
                  section-pointer="id-upd-revalidate"/>
               <state time="0">
                  <query name="vallax-ins-003" date="2009-01-28"/>
                  <input-file role="principal-data" variable="books">books</input-file>
                  <expected-error>XUST0026</expected-error>
               </state>
               <state time="1">
                  <query name="revalidate-vallax-ins-003-test" date="2009-01-28"/>
                  <input-file role="principal-data" variable="books">books</input-file>
                  <output-file role="principal" compare="Fragment">vallax-ins-003.out</output-file>
               </state>
            </test-case>
            <test-case name="revalidate-vallax-ins-004" FilePath="ValLax/" scenario="runtime-error"
               Creator="Saxonica">
               <description>inserting a disallowed attribute causes validation failure</description>
               <spec-citation spec="XQUPDATE" section-number="3.2.3" section-title="upd:revalidate"
                  section-pointer="id-upd-revalidate"/>
               <state time="0">
                  <query name="vallax-ins-004" date="2009-01-28"/>
                  <input-file role="principal-data" variable="books">books</input-file>
                  <expected-error>XQDY0027</expected-error>
               </state>
            </test-case>
            <test-case name="revalidate-vallax-ins-005" FilePath="ValLax/" scenario="standard"
               Creator="Saxonica">
               <description>Adding an xml:id to a book is fine </description>
               <spec-citation spec="XQUPDATE" section-number="3.2.3" section-title="upd:revalidate"
                  section-pointer="id-upd-revalidate"/>
               <state time="0">
                  <query name="vallax-ins-005" date="2009-01-28"/>
                  <input-file role="principal-data" variable="books">books</input-file>
               </state>
               <state time="1">
                  <query name="revalidate-vallax-ins-005-test" date="2009-01-28"/>
                  <input-file role="principal-data" variable="books">books</input-file>
                  <output-file role="principal" compare="Fragment">vallax-ins-005.out</output-file>
               </state>
            </test-case>
            <test-case name="revalidate-vallax-ins-006" FilePath="ValLax/" scenario="runtime-error"
               Creator="Saxonica">
               <description>Adding an xml:id to a book is an error if the ID isn't
                  unique</description>
               <spec-citation spec="XQUPDATE" section-number="3.2.3" section-title="upd:revalidate"
                  section-pointer="id-upd-revalidate"/>
               <state time="0">
                  <query name="vallax-ins-006" date="2009-01-28"/>
                  <input-file role="principal-data" variable="books">books</input-file>
                  <expected-error>XQDY0027</expected-error>
               </state>
            </test-case>
            <test-case name="revalidate-vallax-ins-007" FilePath="ValLax/" scenario="standard"
               Creator="Saxonica">
               <description>Adding a duplicate xml:id to a book is fine if we change the ID that it
                  conflicts with</description>
               <spec-citation spec="XQUPDATE" section-number="3.2.3" section-title="upd:revalidate"
                  section-pointer="id-upd-revalidate"/>
               <state time="0">
                  <query name="vallax-ins-007" date="2009-01-28"/>
                  <input-file role="principal-data" variable="books">books</input-file>
               </state>
               <state time="1">
                  <query name="revalidate-vallax-ins-007-test" date="2009-01-28"/>
                  <input-file role="principal-data" variable="books">books</input-file>
                  <output-file role="principal" compare="Fragment">vallax-ins-007.out</output-file>
               </state>
            </test-case>
            <test-case name="revalidate-vallax-ren-001" FilePath="ValLax/" scenario="runtime-error"
               Creator="Saxonica">
               <description>renaming an element is bad news if the new name is not
                  allowed</description>
               <spec-citation spec="XQUPDATE" section-number="3.2.3" section-title="upd:revalidate"
                  section-pointer="id-upd-revalidate"/>
               <state time="0">
                  <query name="vallax-ren-001" date="2009-01-28"/>
                  <input-file role="principal-data" variable="books">books</input-file>
                  <expected-error>XQDY0027</expected-error>
               </state>
            </test-case>
            <test-case name="revalidate-vallax-ren-002" FilePath="ValLax/" scenario="runtime-error"
               Creator="Saxonica">
               <description>renaming an attribute is bad news if the new name is not
                  allowed</description>
               <spec-citation spec="XQUPDATE" section-number="3.2.3" section-title="upd:revalidate"
                  section-pointer="id-upd-revalidate"/>
               <state time="0">
                  <query name="vallax-ren-002" date="2009-01-28"/>
                  <input-file role="principal-data" variable="books">books</input-file>
                  <expected-error>XQDY0027</expected-error>
               </state>
            </test-case>
            <test-case name="revalidate-vallax-ren-003" FilePath="ValLax/" scenario="standard"
               Creator="Saxonica">
               <description>renaming an element is OK if the new name is in the substitution
                  group</description>
               <spec-citation spec="XQUPDATE" section-number="3.2.3" section-title="upd:revalidate"
                  section-pointer="id-upd-revalidate"/>
               <state time="0">
                  <query name="vallax-ren-003" date="2009-01-28"/>
                  <input-file role="principal-data" variable="books">books</input-file>
               </state>
               <state time="1">
                  <query name="revalidate-vallax-ren-003-test" date="2009-01-28"/>
                  <input-file role="principal-data" variable="books">books</input-file>
                  <output-file role="principal" compare="Fragment">vallax-ren-003.out</output-file>
               </state>
            </test-case>
            <test-case name="revalidate-vallax-repnode-001" FilePath="ValLax/"
               scenario="runtime-error" Creator="Saxonica">
               <description>replace element fails if the new node is invalid</description>
               <spec-citation spec="XQUPDATE" section-number="3.2.3" section-title="upd:revalidate"
                  section-pointer="id-upd-revalidate"/>
               <state time="0">
                  <query name="vallax-repnode-001" date="2009-01-28"/>
                  <input-file role="principal-data" variable="books">books</input-file>
                  <expected-error>XQDY0027</expected-error>
               </state>
            </test-case>
            <test-case name="revalidate-vallax-repnode-002" FilePath="ValLax/"
               scenario="runtime-error" Creator="Saxonica">
               <description>replace attribute fails if the new node is invalid</description>
               <spec-citation spec="XQUPDATE" section-number="3.2.3" section-title="upd:revalidate"
                  section-pointer="id-upd-revalidate"/>
               <state time="0">
                  <query name="vallax-repnode-002" date="2009-01-28"/>
                  <input-file role="principal-data" variable="books">books</input-file>
                  <expected-error>XQDY0027</expected-error>
               </state>
            </test-case>
            <test-case name="revalidate-vallax-repnode-003" FilePath="ValLax/" scenario="standard"
               Creator="Saxonica">
               <description>replacing an element is OK if the new node is valid</description>
               <spec-citation spec="XQUPDATE" section-number="3.2.3" section-title="upd:revalidate"
                  section-pointer="id-upd-revalidate"/>
               <state time="0">
                  <query name="vallax-repnode-003" date="2009-01-28"/>
                  <input-file role="principal-data" variable="books">books</input-file>
               </state>
               <state time="1">
                  <query name="revalidate-vallax-repnode-003-test" date="2009-01-28"/>
                  <input-file role="principal-data" variable="books">books</input-file>
                  <output-file role="principal" compare="Fragment"
                     >vallax-repnode-003.out</output-file>
               </state>
            </test-case>
         </test-group>
         <test-group name="Revalidation Declaration Lax Unsupported">
            <GroupInfo>
               <title>Revalidation Declaration = lax unsupported</title>
               <description/>
               <depends-on>
                  <feature supported="false">revalidation:lax</feature>
                  <description>These tests are designed to be run only by a product that does NOT
                     support revalidation mode lax</description>
                  <spec-citation spec="XQUPDATE" section-number="2.2.1"
                     section-title="Revalidation Declaration"
                     section-pointer="id-revalidation-declaration"/>
               </depends-on>
            </GroupInfo>
            <test-case name="revalidation-declaration-03-fail"
               FilePath="Prolog/RevalidationDeclaration/" scenario="standard"
               Creator="Andrew Eisenberg">
               <description>One declare validation specifying lax</description>
               <spec-citation spec="XQUPDATE" section-number="2.2.1"
                  section-title="Revalidation Declaration"
                  section-pointer="id-revalidation-declaration"/>
               <state time="0">
                  <query name="revalidation-declaration-03" date="2008-10-16"/>
                  <input-file role="principal-data" variable="input-context">emptydoc</input-file>
                  <expected-error>XUST0026</expected-error>
               </state>
            </test-case>
         </test-group>
         <test-group name="Revalidation Declaration Skip">
            <GroupInfo>
               <title>Revalidation Declaration = skip</title>
               <description/>
               <depends-on>
                  <feature supported="true">revalidation:skip</feature>
                  <description>These tests are designed to be run by a product that supports
                     revalidation mode skip</description>
                  <spec-citation spec="XQUPDATE" section-number="2.2.1"
                     section-title="Revalidation Declaration"
                     section-pointer="id-revalidation-declaration"/>
               </depends-on>
            </GroupInfo>
            <test-case name="revalidation-declaration-05" FilePath="Prolog/RevalidationDeclaration/"
               scenario="standard" Creator="Andrew Eisenberg">
               <description>One declare validation specifying skip</description>
               <spec-citation spec="XQUPDATE" section-number="2.2.1"
                  section-title="Revalidation Declaration"
                  section-pointer="id-revalidation-declaration"/>
               <state time="0">
                  <query name="revalidation-declaration-05" date="2008-10-16"/>
                  <input-file role="principal-data" variable="input-context">emptydoc</input-file>
                  <output-file role="principal" compare="Text"
                     >revalidation-declaration-05.txt</output-file>
               </state>
            </test-case>
            <test-case name="revalidation-declaration-06" FilePath="Prolog/RevalidationDeclaration/"
               scenario="runtime-error" Creator="Andrew Eisenberg">
               <description>Two declare validation specifying skip</description>
               <spec-citation spec="XQUPDATE" section-number="2.2.1"
                  section-title="Revalidation Declaration"
                  section-pointer="id-revalidation-declaration"/>
               <state time="0">
                  <query name="revalidation-declaration-06" date="2008-10-16"/>
                  <input-file role="principal-data" variable="input-context">emptydoc</input-file>
                  <expected-error>XUST0003</expected-error>
               </state>
            </test-case>
            <test-case name="removeType-valskip-ins-001" FilePath="ValSkip/" scenario="standard"
               Creator="Saxonica">
               <description>insert before removes type from ancestors</description>
               <spec-citation spec="XQUPDATE" section-number="3.1.1"
                  section-title="upd:insertBefore" section-pointer="id-upd-insert-before"/>
               <spec-citation spec="XQUPDATE" section-number="3.2.4" section-title="upd:removeType"
                  section-pointer="id-upd-remove-type"/>
               <state time="0">
                  <query name="valskip-ins-001" date="2008-01-03"/>
                  <input-file role="principal-data" variable="books">books</input-file>
               </state>
               <state time="1">
                  <query name="removeType-valskip-ins-001-test" date="2008-01-03"/>
                  <input-file role="principal-data" variable="books">books</input-file>
                  <output-file role="principal" compare="Fragment">valskip-ins-001.out</output-file>
               </state>
            </test-case>
            <test-case name="removeType-valskip-ins-002" FilePath="ValSkip/" scenario="standard"
               Creator="Saxonica">
               <description>insert after removes type from ancestors</description>
               <spec-citation spec="XQUPDATE" section-number="3.1.2" section-title="upd:insertAfter"
                  section-pointer="id-upd-insert-after"/>
               <spec-citation spec="XQUPDATE" section-number="3.2.4" section-title="upd:removeType"
                  section-pointer="id-upd-remove-type"/>
               <state time="0">
                  <query name="valskip-ins-002" date="2008-01-03"/>
                  <input-file role="principal-data" variable="books">books</input-file>
               </state>
               <state time="1">
                  <query name="removeType-valskip-ins-002-test" date="2008-01-03"/>
                  <input-file role="principal-data" variable="books">books</input-file>
                  <output-file role="principal" compare="Fragment">valskip-ins-002.out</output-file>
               </state>
            </test-case>
            <test-case name="removeType-valskip-ins-003" FilePath="ValSkip/" scenario="standard"
               Creator="Saxonica">
               <description>insert into (of text node) removes type from ancestors</description>
               <spec-citation spec="XQUPDATE" section-number="3.1.3" section-title="upd:insertInto"
                  section-pointer="id-upd-insert-into"/>
               <spec-citation spec="XQUPDATE" section-number="3.2.4" section-title="upd:removeType"
                  section-pointer="id-upd-remove-type"/>
               <state time="0">
                  <query name="valskip-ins-003" date="2008-01-03"/>
                  <input-file role="principal-data" variable="books">books</input-file>
               </state>
               <state time="1">
                  <query name="removeType-valskip-ins-003-test" date="2008-01-03"/>
                  <input-file role="principal-data" variable="books">books</input-file>
                  <output-file role="principal" compare="Fragment">valskip-ins-003.out</output-file>
               </state>
            </test-case>
            <test-case name="removeType-valskip-ins-004" FilePath="ValSkip/" scenario="standard"
               Creator="Saxonica">
               <description>insert as first into (of element node) removes type from
                  ancestors</description>
               <spec-citation spec="XQUPDATE" section-number="3.1.4"
                  section-title="upd:insertIntoAsFirst"
                  section-pointer="id-upd-insert-into-as-first"/>
               <spec-citation spec="XQUPDATE" section-number="3.2.4" section-title="upd:removeType"
                  section-pointer="id-upd-remove-type"/>
               <state time="0">
                  <query name="valskip-ins-004" date="2008-01-03"/>
                  <input-file role="principal-data" variable="books">books</input-file>
               </state>
               <state time="1">
                  <query name="removeType-valskip-ins-004-test" date="2008-01-03"/>
                  <input-file role="principal-data" variable="books">books</input-file>
                  <output-file role="principal" compare="Fragment">valskip-ins-004.out</output-file>
               </state>
            </test-case>
            <test-case name="removeType-valskip-ins-005" FilePath="ValSkip/" scenario="standard"
               Creator="Saxonica">
               <description>insert as last into (of comment node) doesn't remove type from
                  ancestors</description>
               <spec-citation spec="XQUPDATE" section-number="3.1.5"
                  section-title="upd:insertIntoAsLast" section-pointer="id-upd-insert-into-as-last"/>
               <spec-citation spec="XQUPDATE" section-number="3.2.4" section-title="upd:removeType"
                  section-pointer="id-upd-remove-type"/>
               <state time="0">
                  <query name="valskip-ins-005" date="2008-01-03"/>
                  <input-file role="principal-data" variable="books">books</input-file>
               </state>
               <state time="1">
                  <query name="removeType-valskip-ins-005-test" date="2008-01-03"/>
                  <input-file role="principal-data" variable="books">books</input-file>
                  <output-file role="principal" compare="Fragment">valskip-ins-005.out</output-file>
               </state>
            </test-case>
            <test-case name="removeType-valskip-ins-006" FilePath="ValSkip/" scenario="standard"
               Creator="Saxonica">
               <description>insert attributes removes type from ancestors</description>
               <spec-citation spec="XQUPDATE" section-number="3.1.6"
                  section-title="upd:insertAttributes" section-pointer="id-upd-insert-attributes"/>
               <spec-citation spec="XQUPDATE" section-number="3.2.4" section-title="upd:removeType"
                  section-pointer="id-upd-remove-type"/>
               <state time="0">
                  <query name="valskip-ins-006" date="2008-01-03"/>
                  <input-file role="principal-data" variable="books">books</input-file>
               </state>
               <state time="1">
                  <query name="removeType-valskip-ins-006-test" date="2008-01-03"/>
                  <input-file role="principal-data" variable="books">books</input-file>
                  <output-file role="principal" compare="Fragment">valskip-ins-006.out</output-file>
               </state>
            </test-case>
            <test-case name="removeType-valskip-ins-007" FilePath="ValSkip/" scenario="standard"
               Creator="Saxonica">
               <description>Description: with no validation, adding xsi:nil is not an
                  error</description>
               <spec-citation spec="XQUPDATE" section-number="3.1.6"
                  section-title="upd:insertAttributes" section-pointer="id-upd-insert-attributes"/>
               <spec-citation spec="XQUPDATE" section-number="3.2.4" section-title="upd:removeType"
                  section-pointer="id-upd-remove-type"/>
               <state time="0">
                  <query name="valskip-ins-007" date="2008-01-03"/>
                  <input-file role="principal-data" variable="books">books</input-file>
               </state>
               <state time="1">
                  <query name="removeType-valskip-ins-007-test" date="2008-01-03"/>
                  <input-file role="principal-data" variable="books">books</input-file>
                  <output-file role="principal" compare="Fragment">valskip-ins-007.out</output-file>
               </state>
            </test-case>
            <test-case name="removeType-valskip-ins-008" FilePath="ValSkip/" scenario="standard"
               Creator="Saxonica">
               <description>Description: with no validation, adding xml:id has is-ID property but
                  not xs:ID type</description>
               <spec-citation spec="XQUPDATE" section-number="3.1.6"
                  section-title="upd:insertAttributes" section-pointer="id-upd-insert-attributes"/>
               <spec-citation spec="XQUPDATE" section-number="3.2.4" section-title="upd:removeType"
                  section-pointer="id-upd-remove-type"/>
               <state time="0">
                  <query name="valskip-ins-008" date="2008-01-03"/>
                  <input-file role="principal-data" variable="books">books</input-file>
               </state>
               <state time="1">
                  <query name="removeType-valskip-ins-008-test" date="2008-01-03"/>
                  <input-file role="principal-data" variable="books">books</input-file>
                  <output-file role="principal" compare="Fragment">valskip-ins-008.out</output-file>
               </state>
            </test-case>
            <test-case name="removeType-valskip-ins-009" FilePath="ValSkip/" scenario="standard"
               Creator="Saxonica">
               <description>Description: with no validation, but construction mode preserve,
                  inserted elements retain their type</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.1" section-title="Insert"
                  section-pointer="id-insert"/>
               <spec-citation spec="XQUPDATE" section-number="3.2.4" section-title="upd:removeType"
                  section-pointer="id-upd-remove-type"/>
               <state time="0">
                  <query name="valskip-ins-009" date="2008-01-03"/>
                  <input-file role="principal-data" variable="books">books</input-file>
               </state>
               <state time="1">
                  <query name="removeType-valskip-ins-009-test" date="2008-01-03"/>
                  <input-file role="principal-data" variable="books">books</input-file>
                  <output-file role="principal" compare="Fragment">valskip-ins-009.out</output-file>
               </state>
            </test-case>
            <test-case name="removeType-valskip-ins-010" FilePath="ValSkip/" scenario="standard"
               Creator="Saxonica">
               <description>Description: with no validation, but construction mode strip, inserted
                  elements lose their type</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.1" section-title="Insert"
                  section-pointer="id-insert"/>
               <spec-citation spec="XQUPDATE" section-number="3.2.4" section-title="upd:removeType"
                  section-pointer="id-upd-remove-type"/>
               <state time="0">
                  <query name="valskip-ins-010" date="2008-01-03"/>
                  <input-file role="principal-data" variable="books">books</input-file>
               </state>
               <state time="1">
                  <query name="removeType-valskip-ins-010-test" date="2008-01-03"/>
                  <input-file role="principal-data" variable="books">books</input-file>
                  <output-file role="principal" compare="Fragment">valskip-ins-010.out</output-file>
               </state>
            </test-case>
            <test-case name="removeType-valskip-ins-011" FilePath="ValSkip/" scenario="standard"
               Creator="Saxonica">
               <description>Description: with no validation, but construction mode preserve,
                  inserted attributes retain their type</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.1" section-title="Insert"
                  section-pointer="id-insert"/>
               <spec-citation spec="XQUPDATE" section-number="3.2.4" section-title="upd:removeType"
                  section-pointer="id-upd-remove-type"/>
               <state time="0">
                  <query name="valskip-ins-011" date="2008-01-03"/>
                  <input-file role="principal-data" variable="books">books</input-file>
               </state>
               <state time="1">
                  <query name="removeType-valskip-ins-011-test" date="2008-01-03"/>
                  <input-file role="principal-data" variable="books">books</input-file>
                  <output-file role="principal" compare="Fragment">valskip-ins-011.out</output-file>
               </state>
            </test-case>
            <test-case name="removeType-valskip-ins-012" FilePath="ValSkip/" scenario="standard"
               Creator="Saxonica">
               <description>Description: with no validation, but construction mode strip, inserted
                  attributes lose their type</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.1" section-title="Insert"
                  section-pointer="id-insert"/>
               <spec-citation spec="XQUPDATE" section-number="3.2.4" section-title="upd:removeType"
                  section-pointer="id-upd-remove-type"/>
               <state time="0">
                  <query name="valskip-ins-012" date="2008-01-03"/>
                  <input-file role="principal-data" variable="books">books</input-file>
               </state>
               <state time="1">
                  <query name="removeType-valskip-ins-012-test" date="2008-01-03"/>
                  <input-file role="principal-data" variable="books">books</input-file>
                  <output-file role="principal" compare="Fragment">valskip-ins-012.out</output-file>
               </state>
            </test-case>
            <test-case name="removeType-valskip-ins-013" FilePath="ValSkip/" scenario="standard"
               Creator="Saxonica">
               <description>Description: with no validation, but construction mode preserve, adding
                  an IDREF attribute affects result of idref()</description>
               <spec-citation spec="XQUPDATE" section-number="2.4.1" section-title="Insert"
                  section-pointer="id-insert"/>
               <spec-citation spec="XQUPDATE" section-number="3.2.4" section-title="upd:removeType"
                  section-pointer="id-upd-remove-type"/>
               <state time="0">
                  <query name="valskip-ins-013" date="2008-01-03"/>
                  <input-file role="principal-data" variable="books">books</input-file>
               </state>
               <state time="1">
                  <query name="removeType-valskip-ins-013-test" date="2008-01-03"/>
                  <input-file role="principal-data" variable="books">books</input-file>
                  <output-file role="principal" compare="Fragment">valskip-ins-013.out</output-file>
               </state>
            </test-case>
            <test-case name="removeType-valskip-ins-014" FilePath="ValSkip/" scenario="standard"
               Creator="Saxonica">
               <description>Description: with no validation, but construction mode preserve, adding
                  an IDREF attribute affects result of idref()</description>
               <spec-citation spec="XQUPDATE" section-number="3.2.4" section-title="upd:removeType"
                  section-pointer="id-upd-remove-type"/>
               <state time="0">
                  <query name="valskip-ins-014" date="2008-01-03"/>
                  <input-file role="principal-data" variable="users">users</input-file>
               </state>
               <state time="1">
                  <query name="removeType-valskip-ins-014-test" date="2008-01-03"/>
                  <input-file role="principal-data" variable="users">users</input-file>
                  <output-file role="principal" compare="Fragment">valskip-ins-014.out</output-file>
               </state>
            </test-case>
            <test-case name="removeType-valskip-del-001" FilePath="ValSkip/" scenario="standard"
               Creator="Saxonica">
               <description>Description: deleting an element removes type from
                  ancestors</description>
               <spec-citation spec="XQUPDATE" section-number="3.2.4" section-title="upd:removeType"
                  section-pointer="id-upd-remove-type"/>
               <state time="0">
                  <query name="valskip-del-001" date="2008-01-03"/>
                  <input-file role="principal-data" variable="books">books</input-file>
               </state>
               <state time="1">
                  <query name="removeType-valskip-del-001-test" date="2008-01-03"/>
                  <input-file role="principal-data" variable="books">books</input-file>
                  <output-file role="principal" compare="Fragment">valskip-del-001.out</output-file>
               </state>
            </test-case>
            <test-case name="removeType-valskip-del-002" FilePath="ValSkip/" scenario="standard"
               Creator="Saxonica">
               <description>Description: deleting an attribute removes type from
                  ancestors</description>
               <spec-citation spec="XQUPDATE" section-number="3.1.7" section-title="upd:delete"
                  section-pointer="id-upd-delete"/>
               <spec-citation spec="XQUPDATE" section-number="3.2.4" section-title="upd:removeType"
                  section-pointer="id-upd-remove-type"/>
               <state time="0">
                  <query name="valskip-del-002" date="2008-01-03"/>
                  <input-file role="principal-data" variable="books">books</input-file>
               </state>
               <state time="1">
                  <query name="removeType-valskip-del-002-test" date="2008-01-03"/>
                  <input-file role="principal-data" variable="books">books</input-file>
                  <output-file role="principal" compare="Fragment">valskip-del-002.out</output-file>
               </state>
            </test-case>
            <test-case name="removeType-valskip-del-003" FilePath="ValSkip/" scenario="standard"
               Creator="Saxonica">
               <description>Description: deleting an xml:id attribute affects result of
                  id()</description>
               <spec-citation spec="XQUPDATE" section-number="3.1.7" section-title="upd:delete"
                  section-pointer="id-upd-delete"/>
               <spec-citation spec="XQUPDATE" section-number="3.2.4" section-title="upd:removeType"
                  section-pointer="id-upd-remove-type"/>
               <state time="0">
                  <query name="valskip-del-003" date="2008-01-03"/>
                  <input-file role="principal-data" variable="books">books</input-file>
               </state>
               <state time="1">
                  <query name="removeType-valskip-del-003-test" date="2008-01-03"/>
                  <input-file role="principal-data" variable="books">books</input-file>
                  <output-file role="principal" compare="Fragment">valskip-del-003.out</output-file>
               </state>
            </test-case>
            <test-case name="removeType-valskip-del-004" FilePath="ValSkip/" scenario="standard"
               Creator="Saxonica">
               <description>Description: deleting a text node removes type from
                  ancestors</description>
               <spec-citation spec="XQUPDATE" section-number="3.2.4" section-title="upd:removeType"
                  section-pointer="id-upd-remove-type"/>
               <state time="0">
                  <query name="valskip-del-004" date="2008-01-28"/>
                  <input-file role="principal-data" variable="books">books</input-file>
               </state>
               <state time="1">
                  <query name="removeType-valskip-del-004-test" date="2008-01-28"/>
                  <input-file role="principal-data" variable="books">books</input-file>
                  <output-file role="principal" compare="Fragment">valskip-del-004.out</output-file>
               </state>
            </test-case>
            <test-case name="removeType-valskip-del-005" FilePath="ValSkip/" scenario="standard"
               Creator="Saxonica">
               <description>Description: deleting a comment node does not remove type from
                  ancestors</description>
               <spec-citation spec="XQUPDATE" section-number="3.2.4" section-title="upd:removeType"
                  section-pointer="id-upd-remove-type"/>
               <state time="0">
                  <query name="valskip-del-005" date="2008-01-28"/>
                  <input-file role="principal-data" variable="books">books</input-file>
               </state>
               <state time="1">
                  <query name="removeType-valskip-del-005-test" date="2008-01-28"/>
                  <input-file role="principal-data" variable="books">books</input-file>
                  <output-file role="principal" compare="Fragment">valskip-del-005.out</output-file>
               </state>
            </test-case>
            <test-case name="removeType-valskip-ren-001" FilePath="ValSkip/" scenario="standard"
               Creator="Saxonica">
               <description>Description: Renaming an element removes type from self and
                  ancestors</description>
               <spec-citation spec="XQUPDATE" section-number="3.2.4" section-title="upd:removeType"
                  section-pointer="id-upd-remove-type"/>
               <state time="0">
                  <query name="valskip-ren-001" date="2008-01-28"/>
                  <input-file role="principal-data" variable="books">books</input-file>
               </state>
               <state time="1">
                  <query name="removeType-valskip-ren-001-test" date="2008-01-28"/>
                  <input-file role="principal-data" variable="books">books</input-file>
                  <output-file role="principal" compare="Fragment">valskip-ren-001.out</output-file>
               </state>
            </test-case>
            <test-case name="removeType-valskip-ren-002" FilePath="ValSkip/" scenario="standard"
               Creator="Saxonica">
               <description>Description: Renaming an attribute removes type from
                  ancestors</description>
               <spec-citation spec="XQUPDATE" section-number="3.1.7" section-title="upd:delete"
                  section-pointer="id-upd-delete"/>
               <spec-citation spec="XQUPDATE" section-number="3.2.4" section-title="upd:removeType"
                  section-pointer="id-upd-remove-type"/>
               <state time="0">
                  <query name="valskip-ren-002" date="2008-01-28"/>
                  <input-file role="principal-data" variable="books">books</input-file>
               </state>
               <state time="1">
                  <query name="removeType-valskip-ren-002-test" date="2008-01-28"/>
                  <input-file role="principal-data" variable="books">books</input-file>
                  <output-file role="principal" compare="Fragment">valskip-ren-002.out</output-file>
               </state>
            </test-case>
            <test-case name="removeType-valskip-ren-003" FilePath="ValSkip/" scenario="standard"
               Creator="Saxonica">
               <description>Description: Renaming an xml:id attribute affects result of
                  id()</description>
               <spec-citation spec="XQUPDATE" section-number="3.1.7" section-title="upd:delete"
                  section-pointer="id-upd-delete"/>
               <state time="0">
                  <query name="valskip-ren-003" date="2008-01-28"/>
                  <input-file role="principal-data" variable="books">books</input-file>
               </state>
               <state time="1">
                  <query name="removeType-valskip-ren-003-test" date="2008-01-28"/>
                  <input-file role="principal-data" variable="books">books</input-file>
                  <output-file role="principal" compare="Fragment">valskip-ren-003.out</output-file>
               </state>
            </test-case>
            <test-case name="removeType-valskip-ren-004" FilePath="ValSkip/"
               scenario="runtime-error" Creator="Saxonica">
               <description>Description: Renaming a text node is an error</description>
               <spec-citation spec="XQUPDATE" section-number="3.2.4" section-title="upd:removeType"
                  section-pointer="id-upd-remove-type"/>
               <state time="0">
                  <query name="valskip-ren-004" date="2008-01-28"/>
                  <input-file role="principal-data" variable="books">books</input-file>
                  <expected-error>XUTY0012</expected-error>
               </state>
            </test-case>
            <test-case name="removeType-valskip-ren-005" FilePath="ValSkip/" scenario="standard"
               Creator="Saxonica">
               <description>Description: Renaming a PI node does not remove type from
                  ancestors</description>
               <spec-citation spec="XQUPDATE" section-number="3.2.4" section-title="upd:removeType"
                  section-pointer="id-upd-remove-type"/>
               <state time="0">
                  <query name="valskip-ren-005" date="2008-01-28"/>
                  <input-file role="principal-data" variable="books">books</input-file>
               </state>
               <state time="1">
                  <query name="removeType-valskip-ren-005-test" date="2008-01-28"/>
                  <input-file role="principal-data" variable="books">books</input-file>
                  <output-file role="principal" compare="Fragment">valskip-ren-005.out</output-file>
               </state>
            </test-case>
            <test-case name="removeType-valskip-ren-006" FilePath="ValSkip/"
               scenario="runtime-error" Creator="Saxonica">
               <description>Description: two updates create conflicting namespace bindings, not
                  detected until upd:rename() is executed, at which point it causes
                  XUDY0024</description>
               <spec-citation spec="XQUPDATE" section-number="3.1.1" section-title="upd:rename"
                  section-pointer="id-upd-rename"/>
               <spec-citation spec="XQUPDATE" section-number="3.2.4" section-title="upd:removeType"
                  section-pointer="id-upd-remove-type"/>
               <state time="0">
                  <query name="valskip-ren-006" date="2008-04-07"/>
                  <input-file role="principal-data" variable="books">books</input-file>
                  <expected-error>XUDY0024</expected-error>
               </state>
            </test-case>
            <test-case name="removeType-valskip-repnode-001" FilePath="ValSkip/" scenario="standard"
               Creator="Saxonica">
               <description>replace node on an element node removes type from
                  ancestors</description>
               <spec-citation spec="XQUPDATE" section-number="3.2.4" section-title="upd:removeType"
                  section-pointer="id-upd-remove-type"/>
               <state time="0">
                  <query name="valskip-repnode-001" date="2008-01-28"/>
                  <input-file role="principal-data" variable="books">books</input-file>
               </state>
               <state time="1">
                  <query name="removeType-valskip-repnode-001-test" date="2008-01-28"/>
                  <input-file role="principal-data" variable="books">books</input-file>
                  <output-file role="principal" compare="Fragment"
                     >valskip-repnode-001.out</output-file>
               </state>
            </test-case>
            <test-case name="removeType-valskip-repnode-002" FilePath="ValSkip/" scenario="standard"
               Creator="Saxonica">
               <description>replace node on an attribute node removes type from
                  ancestors</description>
               <spec-citation spec="XQUPDATE" section-number="3.2.4" section-title="upd:removeType"
                  section-pointer="id-upd-remove-type"/>
               <state time="0">
                  <query name="valskip-repnode-002" date="2008-01-28"/>
                  <input-file role="principal-data" variable="books">books</input-file>
               </state>
               <state time="1">
                  <query name="removeType-valskip-repnode-002-test" date="2008-01-28"/>
                  <input-file role="principal-data" variable="books">books</input-file>
                  <output-file role="principal" compare="Fragment"
                     >valskip-repnode-002.out</output-file>
               </state>
            </test-case>
            <test-case name="removeType-valskip-repnode-003" FilePath="ValSkip/" scenario="standard"
               Creator="Saxonica">
               <description>replace node on an attribute node retains type of new attribute with
                  construction=preserve</description>
               <spec-citation spec="XQUPDATE" section-number="3.2.4" section-title="upd:removeType"
                  section-pointer="id-upd-remove-type"/>
               <state time="0">
                  <query name="valskip-repnode-003" date="2008-01-28"/>
                  <input-file role="principal-data" variable="books">books</input-file>
               </state>
               <state time="1">
                  <query name="removeType-valskip-repnode-003-test" date="2008-01-28"/>
                  <input-file role="principal-data" variable="books">books</input-file>
                  <output-file role="principal" compare="Fragment"
                     >valskip-repnode-003.out</output-file>
               </state>
            </test-case>
            <test-case name="removeType-valskip-repnode-004" FilePath="ValSkip/" scenario="standard"
               Creator="Saxonica">
               <description>replace node on an ID attribute with construction=strip drops the
                  ID</description>
               <spec-citation spec="XQUPDATE" section-number="3.2.4" section-title="upd:removeType"
                  section-pointer="id-upd-remove-type"/>
               <state time="0">
                  <query name="valskip-repnode-004" date="2008-01-28"/>
                  <input-file role="principal-data" variable="books">books</input-file>
               </state>
               <state time="1">
                  <query name="removeType-valskip-repnode-004-test" date="2008-01-28"/>
                  <input-file role="principal-data" variable="books">books</input-file>
                  <output-file role="principal" compare="Fragment"
                     >valskip-repnode-004.out</output-file>
               </state>
            </test-case>
            <test-case name="removeType-valskip-repnode-005" FilePath="ValSkip/" scenario="standard"
               Creator="Saxonica">
               <description>replace node on an ID attribute with construction=preserve drops the old
                  ID and enables the new</description>
               <spec-citation spec="XQUPDATE" section-number="3.2.4" section-title="upd:removeType"
                  section-pointer="id-upd-remove-type"/>
               <state time="0">
                  <query name="valskip-repnode-005" date="2008-01-28"/>
                  <input-file role="principal-data" variable="books">books</input-file>
               </state>
               <state time="1">
                  <query name="removeType-valskip-repnode-005-test" date="2008-01-28"/>
                  <input-file role="principal-data" variable="books">books</input-file>
                  <output-file role="principal" compare="Fragment"
                     >valskip-repnode-005.out</output-file>
               </state>
            </test-case>
            <test-case name="removeType-valskip-repnode-006" FilePath="ValSkip/" scenario="standard"
               Creator="Saxonica">
               <description>replace node on an IDREF attribute with construction=strip drops the old
                  ID</description>
               <spec-citation spec="XQUPDATE" section-number="3.2.4" section-title="upd:removeType"
                  section-pointer="id-upd-remove-type"/>
               <state time="0">
                  <query name="valskip-repnode-006" date="2008-01-28"/>
                  <input-file role="principal-data" variable="books">books</input-file>
               </state>
               <state time="1">
                  <query name="removeType-valskip-repnode-006-test" date="2008-01-28"/>
                  <input-file role="principal-data" variable="books">books</input-file>
                  <output-file role="principal" compare="Fragment"
                     >valskip-repnode-006.out</output-file>
               </state>
            </test-case>
         </test-group>
         <test-group name="Revalidation Declaration Skip Unsupported">
            <GroupInfo>
               <title>Revalidation Declaration = skip unsupported</title>
               <description/>
               <depends-on>
                  <feature supported="false">revalidation:skip</feature>
                  <description>These tests are designed to be run only by a product that does NOT
                     support revalidation mode skip</description>
                  <spec-citation spec="XQUPDATE" section-number="2.2.1"
                     section-title="Revalidation Declaration"
                     section-pointer="id-revalidation-declaration"/>
               </depends-on>
            </GroupInfo>
            <test-case name="revalidation-declaration-05-fail"
               FilePath="Prolog/RevalidationDeclaration/" scenario="standard"
               Creator="Andrew Eisenberg">
               <description>One declare validation specifying skip</description>
               <spec-citation spec="XQUPDATE" section-number="2.2.1"
                  section-title="Revalidation Declaration"
                  section-pointer="id-revalidation-declaration"/>
               <state time="0">
                  <query name="revalidation-declaration-05" date="2008-10-16"/>
                  <input-file role="principal-data" variable="input-context">emptydoc</input-file>
                  <expected-error>XUST0026</expected-error>
               </state>
            </test-case>
         </test-group>
         <test-group name="Revalidation Declaration Strict and Skip">
            <GroupInfo>
               <title>Revalidation Declaration = strict + skip</title>
               <description/>
               <depends-on>
                  <feature supported="true">revalidation:strict</feature>
                  <feature supported="true">revalidation:skip</feature>
                  <description>These tests are designed to be run by a product that supports both
                     revalidation mode strict and revalidation mode skip</description>
                  <spec-citation spec="XQUPDATE" section-number="2.2.1"
                     section-title="Revalidation Declaration"
                     section-pointer="id-revalidation-declaration"/>
               </depends-on>
            </GroupInfo>
            <test-case name="revalidate-valtrans-ins-003" FilePath="ValTrans/"
               scenario="runtime-error" Creator="Saxonica">
               <description>inserting a disallowed element is bad news; detected by revalidation
                  defined in prolog of library module</description>
               <spec-citation spec="XQUPDATE" section-number="3.2.3" section-title="upd:revalidate"
                  section-pointer="id-upd-revalidate"/>
               <state time="0">
                  <query name="valtrans-ins-003" date="2008-03-27"/>
                  <input-file role="principal-data" variable="books">books</input-file>
                  <expected-error>XQDY0027</expected-error>
               </state>
            </test-case>
         </test-group>
      </test-group>
      <test-group name="StaticTyping" featureOwner="Jonathan Robie">
         <GroupInfo>
            <title>Update Facility Static Typing Feature</title>
            <description/>
            <depends-on>
               <feature supported="true">static-typing</feature>
               <description>These tests are designed to be run only by a product that supports the
                  optional static typing feature</description>
               <spec-citation spec="XQUPDATE" section-number="4"
                  section-title="Static Typing Feature" section-pointer="id-update-static"/>
            </depends-on>
         </GroupInfo>
         <test-case name="stf-insert-01" FilePath="StaticTypingFeature/" scenario="runtime-error"
            Creator="Michael Dyck">
            <description>insert: ST of SourceExpr is too vague.</description>
            <spec-citation spec="XQUPDATE" section-number="4.5.1" section-title="Insert"
               section-pointer="id-update-typing-insert"/>
            <state time="0">
               <query name="stf-insert-01" date="2008-12-05"/>
               <input-file role="principal-data" variable="input-context">works-mod</input-file>
               <expected-error>XUTY0004</expected-error>
            </state>
         </test-case>
         <test-case name="stf-insert-02" FilePath="StaticTypingFeature/" scenario="runtime-error"
            Creator="Michael Dyck">
            <description>insert: ST of SourceExpr has non-attribute before attribute.</description>
            <spec-citation spec="XQUPDATE" section-number="4.5.1" section-title="Insert"
               section-pointer="id-update-typing-insert"/>
            <state time="0">
               <query name="stf-insert-02" date="2008-12-05"/>
               <input-file role="principal-data" variable="input-context">works-mod</input-file>
               <expected-error>XUTY0004</expected-error>
            </state>
         </test-case>
         <test-case name="stf-insert-into-01" FilePath="StaticTypingFeature/"
            scenario="runtime-error" Creator="Michael Dyck">
            <description>insert-into: ST of TargetExpr has cardinality greater than
               one.</description>
            <spec-citation spec="XQUPDATE" section-number="4.5.1" section-title="Insert"
               section-pointer="id-update-typing-insert"/>
            <state time="0">
               <query name="stf-insert-into-01" date="2008-12-05"/>
               <input-file role="principal-data" variable="input-context">works-mod</input-file>
               <expected-error>XUTY0005</expected-error>
            </state>
         </test-case>
         <test-case name="stf-insert-into-02" FilePath="StaticTypingFeature/"
            scenario="runtime-error" Creator="Michael Dyck">
            <description>insert-into: ST of TargetExpr is too vague.</description>
            <spec-citation spec="XQUPDATE" section-number="4.5.1" section-title="Insert"
               section-pointer="id-update-typing-insert"/>
            <state time="0">
               <query name="stf-insert-into-02" date="2008-12-05"/>
               <input-file role="principal-data" variable="input-context">works-mod</input-file>
               <expected-error>XUTY0005</expected-error>
            </state>
         </test-case>
         <test-case name="stf-insert-into-03" FilePath="StaticTypingFeature/"
            scenario="runtime-error" Creator="Michael Dyck">
            <description>insert-into: ST of TargetExpr is attribute().</description>
            <spec-citation spec="XQUPDATE" section-number="4.5.1" section-title="Insert"
               section-pointer="id-update-typing-insert"/>
            <state time="0">
               <query name="stf-insert-into-03" date="2008-12-05"/>
               <input-file role="principal-data" variable="input-context">works-mod</input-file>
               <expected-error>XUTY0005</expected-error>
            </state>
         </test-case>
         <test-case name="stf-insert-into-04" FilePath="StaticTypingFeature/"
            scenario="runtime-error" Creator="Michael Dyck">
            <description>insert-into: ST of TargetExpr is document() but ST of SourceExpr involves
               attribute().</description>
            <spec-citation spec="XQUPDATE" section-number="4.5.1" section-title="Insert"
               section-pointer="id-update-typing-insert"/>
            <state time="0">
               <query name="stf-insert-into-04" date="2008-12-05"/>
               <input-file role="principal-data" variable="input-context">works-mod</input-file>
               <expected-error>XUTY0022</expected-error>
            </state>
         </test-case>
         <test-case name="stf-insert-after-01" FilePath="StaticTypingFeature/"
            scenario="runtime-error" Creator="Michael Dyck">
            <description>insert-after: ST of TargetExpr has cardinality greater than
               one.</description>
            <spec-citation spec="XQUPDATE" section-number="4.5.1" section-title="Insert"
               section-pointer="id-update-typing-insert"/>
            <state time="0">
               <query name="stf-insert-after-01" date="2008-12-05"/>
               <input-file role="principal-data" variable="input-context">works-mod</input-file>
               <expected-error>XUTY0006</expected-error>
            </state>
         </test-case>
         <test-case name="stf-insert-after-02" FilePath="StaticTypingFeature/"
            scenario="runtime-error" Creator="Michael Dyck">
            <description>insert-after: ST of TargetExpr is too vague.</description>
            <spec-citation spec="XQUPDATE" section-number="4.5.1" section-title="Insert"
               section-pointer="id-update-typing-insert"/>
            <state time="0">
               <query name="stf-insert-after-02" date="2008-12-05"/>
               <input-file role="principal-data" variable="input-context">works-mod</input-file>
               <expected-error>XUTY0006</expected-error>
            </state>
         </test-case>
         <test-case name="stf-insert-after-03" FilePath="StaticTypingFeature/"
            scenario="runtime-error" Creator="Michael Dyck">
            <description>insert-after: ST of TargetExpr is attribute().</description>
            <spec-citation spec="XQUPDATE" section-number="4.5.1" section-title="Insert"
               section-pointer="id-update-typing-insert"/>
            <state time="0">
               <query name="stf-insert-after-03" date="2008-12-05"/>
               <input-file role="principal-data" variable="input-context">works-mod</input-file>
               <expected-error>XUTY0006</expected-error>
            </state>
         </test-case>
         <test-case name="stf-delete-01" FilePath="StaticTypingFeature/" scenario="runtime-error"
            Creator="Michael Dyck">
            <description>delete: ST of TargetExpr is too vague.</description>
            <spec-citation spec="XQUPDATE" section-number="4.5.2" section-title="Delete"
               section-pointer="id-update-typing-delete"/>
            <state time="0">
               <query name="stf-delete-01" date="2008-12-05"/>
               <input-file role="principal-data" variable="input-context">works-mod</input-file>
               <expected-error>XUTY0007</expected-error>
            </state>
         </test-case>
         <test-case name="stf-delete-02" FilePath="StaticTypingFeature/" scenario="runtime-error"
            Creator="Michael Dyck">
            <description>delete: ST of TargetExpr is atomic type.</description>
            <spec-citation spec="XQUPDATE" section-number="4.5.2" section-title="Delete"
               section-pointer="id-update-typing-delete"/>
            <state time="0">
               <query name="stf-delete-02" date="2008-12-05"/>
               <input-file role="principal-data" variable="input-context">works-mod</input-file>
               <expected-error>XUTY0007</expected-error>
            </state>
         </test-case>
         <test-case name="stf-replace-node-01" FilePath="StaticTypingFeature/"
            scenario="runtime-error" Creator="Michael Dyck">
            <description>replace-node: ST of TargetExpr has cardinality greater than
               one.</description>
            <spec-citation spec="XQUPDATE" section-number="4.5.3" section-title="Replace"
               section-pointer="id-update-typing-replace"/>
            <state time="0">
               <query name="stf-replace-node-01" date="2008-12-05"/>
               <input-file role="principal-data" variable="input-context">works-mod</input-file>
               <expected-error>XUTY0008</expected-error>
            </state>
         </test-case>
         <test-case name="stf-replace-node-02" FilePath="StaticTypingFeature/"
            scenario="runtime-error" Creator="Michael Dyck">
            <description>replace-node: ST of TargetExpr is too vague.</description>
            <spec-citation spec="XQUPDATE" section-number="4.5.3" section-title="Replace"
               section-pointer="id-update-typing-replace"/>
            <state time="0">
               <query name="stf-replace-node-02" date="2008-12-05"/>
               <input-file role="principal-data" variable="input-context">works-mod</input-file>
               <expected-error>XUTY0008</expected-error>
            </state>
         </test-case>
         <test-case name="stf-replace-node-03" FilePath="StaticTypingFeature/"
            scenario="runtime-error" Creator="Michael Dyck">
            <description>replace-node: ST of TargetExpr is atomic type.</description>
            <spec-citation spec="XQUPDATE" section-number="4.5.3" section-title="Replace"
               section-pointer="id-update-typing-replace"/>
            <state time="0">
               <query name="stf-replace-node-03" date="2008-12-05"/>
               <input-file role="principal-data" variable="input-context">works-mod</input-file>
               <expected-error>XUTY0008</expected-error>
            </state>
         </test-case>
         <test-case name="stf-replace-node-04" FilePath="StaticTypingFeature/"
            scenario="runtime-error" Creator="Michael Dyck">
            <description>replace-node: ST of TargetExpr is element()?, but ST of replacement expr is
               too vague.</description>
            <spec-citation spec="XQUPDATE" section-number="4.5.3" section-title="Replace"
               section-pointer="id-update-typing-replace"/>
            <state time="0">
               <query name="stf-replace-node-04" date="2008-12-05"/>
               <input-file role="principal-data" variable="input-context">works-mod</input-file>
               <expected-error>XUTY0010</expected-error>
            </state>
         </test-case>
         <test-case name="stf-replace-node-05" FilePath="StaticTypingFeature/"
            scenario="runtime-error" Creator="Michael Dyck">
            <description>replace-node: ST of TargetExpr is element(), but ST of replacement expr is
               attribute()</description>
            <spec-citation spec="XQUPDATE" section-number="4.5.3" section-title="Replace"
               section-pointer="id-update-typing-replace"/>
            <state time="0">
               <query name="stf-replace-node-05" date="2008-12-05"/>
               <input-file role="principal-data" variable="input-context">works-mod</input-file>
               <expected-error>XUTY0010</expected-error>
            </state>
         </test-case>
         <test-case name="stf-replace-node-06" FilePath="StaticTypingFeature/"
            scenario="runtime-error" Creator="Michael Dyck">
            <description>replace-node: ST of TargetExpr is attribute()?, but ST of replacement expr
               is too vague.</description>
            <spec-citation spec="XQUPDATE" section-number="4.5.3" section-title="Replace"
               section-pointer="id-update-typing-replace"/>
            <state time="0">
               <query name="stf-replace-node-06" date="2008-12-05"/>
               <input-file role="principal-data" variable="input-context">works-mod</input-file>
               <expected-error>XUTY0011</expected-error>
            </state>
         </test-case>
         <test-case name="stf-replace-node-07" FilePath="StaticTypingFeature/"
            scenario="runtime-error" Creator="Michael Dyck">
            <description>replace-node: ST of TargetExpr is attribute(), but ST of replacement expr
               is element()</description>
            <spec-citation spec="XQUPDATE" section-number="4.5.3" section-title="Replace"
               section-pointer="id-update-typing-replace"/>
            <state time="0">
               <query name="stf-replace-node-07" date="2008-12-05"/>
               <input-file role="principal-data" variable="input-context">works-mod</input-file>
               <expected-error>XUTY0011</expected-error>
            </state>
         </test-case>
         <test-case name="stf-replace-value-of-node-01" FilePath="StaticTypingFeature/"
            scenario="runtime-error" Creator="Michael Dyck">
            <description>replace-value-of-node: ST of TargetExpr has cardinality greater than
               one.</description>
            <spec-citation spec="XQUPDATE" section-number="4.5.3" section-title="Replace"
               section-pointer="id-update-typing-replace"/>
            <state time="0">
               <query name="stf-replace-value-of-node-01" date="2008-12-05"/>
               <input-file role="principal-data" variable="input-context">works-mod</input-file>
               <expected-error>XUTY0008</expected-error>
            </state>
         </test-case>
         <test-case name="stf-replace-value-of-node-02" FilePath="StaticTypingFeature/"
            scenario="runtime-error" Creator="Michael Dyck">
            <description>replace-value-of-node: ST of TargetExpr is too vague.</description>
            <spec-citation spec="XQUPDATE" section-number="4.5.3" section-title="Replace"
               section-pointer="id-update-typing-replace"/>
            <state time="0">
               <query name="stf-replace-value-of-node-02" date="2008-12-05"/>
               <input-file role="principal-data" variable="input-context">works-mod</input-file>
               <expected-error>XUTY0008</expected-error>
            </state>
         </test-case>
         <test-case name="stf-rename-01" FilePath="StaticTypingFeature/" scenario="runtime-error"
            Creator="Michael Dyck">
            <description>rename: ST of TargetExpr has cardinality greater than one.</description>
            <spec-citation spec="XQUPDATE" section-number="4.5.4" section-title="Rename"
               section-pointer="id-update-typing-rename"/>
            <state time="0">
               <query name="stf-rename-01" date="2008-12-05"/>
               <input-file role="principal-data" variable="input-context">works-mod</input-file>
               <expected-error>XUTY0012</expected-error>
            </state>
         </test-case>
         <test-case name="stf-rename-02" FilePath="StaticTypingFeature/" scenario="runtime-error"
            Creator="Michael Dyck">
            <description>rename: ST of TargetExpr is too vague.</description>
            <spec-citation spec="XQUPDATE" section-number="4.5.4" section-title="Rename"
               section-pointer="id-update-typing-rename"/>
            <state time="0">
               <query name="stf-rename-02" date="2008-12-05"/>
               <input-file role="principal-data" variable="input-context">works-mod</input-file>
               <expected-error>XUTY0012</expected-error>
            </state>
         </test-case>
         <test-case name="stf-rename-03" FilePath="StaticTypingFeature/" scenario="runtime-error"
            Creator="Michael Dyck">
            <description>rename: ST of TargetExpr is comment.</description>
            <spec-citation spec="XQUPDATE" section-number="4.5.4" section-title="Rename"
               section-pointer="id-update-typing-rename"/>
            <state time="0">
               <query name="stf-rename-03" date="2008-12-05"/>
               <input-file role="principal-data" variable="input-context">works-mod</input-file>
               <expected-error>XUTY0012</expected-error>
            </state>
         </test-case>
         <test-case name="stf-rename-04" FilePath="StaticTypingFeature/" scenario="runtime-error"
            Creator="Michael Dyck">
            <description>rename: ST of NewNameExpr is duration.</description>
            <spec-citation spec="XQUPDATE" section-number="4.5.4" section-title="Rename"
               section-pointer="id-update-typing-rename"/>
            <state time="0">
               <query name="stf-rename-04" date="2008-12-05"/>
               <input-file role="principal-data" variable="input-context">works-mod</input-file>
               <expected-error>XPTY0004</expected-error>
            </state>
         </test-case>
         <test-case name="stf-transform-01" FilePath="StaticTypingFeature/" scenario="runtime-error"
            Creator="Michael Dyck">
            <description>transform: ST of source expression has cardinality greater than
               one.</description>
            <spec-citation spec="XQUPDATE" section-number="4.5.5" section-title="Transform"
               section-pointer="id-update-typing-transform"/>
            <state time="0">
               <query name="stf-transform-01" date="2008-12-05"/>
               <input-file role="principal-data" variable="input-context">works-mod</input-file>
               <expected-error>XUTY0013</expected-error>
            </state>
         </test-case>
         <test-case name="stf-transform-02" FilePath="StaticTypingFeature/" scenario="runtime-error"
            Creator="Michael Dyck">
            <description>transform: ST of source expression is too vague.</description>
            <spec-citation spec="XQUPDATE" section-number="4.5.5" section-title="Transform"
               section-pointer="id-update-typing-transform"/>
            <state time="0">
               <query name="stf-transform-02" date="2008-12-05"/>
               <input-file role="principal-data" variable="input-context">works-mod</input-file>
               <expected-error>XUTY0013</expected-error>
            </state>
         </test-case>
         <test-case name="stf-transform-03" FilePath="StaticTypingFeature/" scenario="runtime-error"
            Creator="Michael Dyck">
            <description>transform: ST of source expression is an atomic type.</description>
            <spec-citation spec="XQUPDATE" section-number="4.5.5" section-title="Transform"
               section-pointer="id-update-typing-transform"/>
            <state time="0">
               <query name="stf-transform-03" date="2008-12-05"/>
               <input-file role="principal-data" variable="input-context">works-mod</input-file>
               <expected-error>XUTY0013</expected-error>
            </state>
         </test-case>
      </test-group>
      <test-group name="FullAxis" featureOwner="John Snelson">
         <GroupInfo>
            <title>Tests that need the Full Axis Feature</title>
            <description/>
            <depends-on>
               <feature supported="true">full-axis</feature>
               <description>These tests are designed to be run only by a product that supports the
                  full axis feature</description>
               <spec-citation spec="XQuery" section-number="5.2.4" section-title="Full Axis Feature"
                  section-pointer="id-full-axis-feature"/>
            </depends-on>
         </GroupInfo>
         <test-case name="complex-deletes-q1" FilePath="DeleteExpressions/" scenario="standard"
            Creator="John Snelson">
            <description>Delete leading comments of document element.</description>
            <spec-citation spec="XQUPDATE" section-number="2.4.2" section-title="Delete"
               section-pointer="id-delete"/>
            <state time="0">
               <query name="complex-deletes-q1" date="2007-10-23"/>
               <input-file role="principal-data" variable="input-context">TopMany</input-file>
            </state>
            <state time="1">
               <query name="complex-deletes-q1-test" date="2007-10-23"/>
               <input-file role="principal-data" variable="input-context">TopMany</input-file>
               <output-file role="principal" compare="XML">complex-deletes-q1.xml</output-file>
            </state>
            <state time="2">
               <query name="complex-deletes-q1-test2" date="2007-10-23"/>
               <input-file role="principal-data" variable="input-context">TopMany</input-file>
               <output-file role="principal" compare="Fragment"
                  >complex-deletes-q1-2.xml</output-file>
            </state>
         </test-case>
         <test-case name="complex-deletes-q2" FilePath="DeleteExpressions/" scenario="standard"
            Creator="John Snelson">
            <description>Delete trailing comments of document element.</description>
            <spec-citation spec="XQUPDATE" section-number="2.4.2" section-title="Delete"
               section-pointer="id-delete"/>
            <state time="0">
               <query name="complex-deletes-q2" date="2007-10-23"/>
               <input-file role="principal-data" variable="input-context">TopMany</input-file>
            </state>
            <state time="1">
               <query name="complex-deletes-q2-test" date="2007-10-23"/>
               <input-file role="principal-data" variable="input-context">TopMany</input-file>
               <output-file role="principal" compare="XML">complex-deletes-q2.xml</output-file>
            </state>
            <state time="2">
               <query name="complex-deletes-q2-test2" date="2007-10-23"/>
               <input-file role="principal-data" variable="input-context">TopMany</input-file>
               <output-file role="principal" compare="Fragment"
                  >complex-deletes-q2-2.xml</output-file>
            </state>
         </test-case>
         <test-case name="complex-deletes-q6" FilePath="DeleteExpressions/" scenario="standard"
            Creator="John Snelson">
            <description>Delete the text node child of element "east".</description>
            <spec-citation spec="XQUPDATE" section-number="2.4.2" section-title="Delete"
               section-pointer="id-delete"/>
            <state time="0">
               <query name="complex-deletes-q6" date="2007-10-23"/>
               <input-file role="principal-data" variable="input-context">TopMany</input-file>
            </state>
            <state time="1">
               <query name="complex-deletes-q6-test" date="2007-10-23"/>
               <input-file role="principal-data" variable="input-context">TopMany</input-file>
               <output-file role="principal" compare="Fragment">complex-deletes-q6.xml</output-file>
            </state>
            <state time="2">
               <query name="complex-deletes-q6-test2" date="2007-10-23"/>
               <input-file role="principal-data" variable="input-context">TopMany</input-file>
               <output-file role="principal" compare="Fragment"
                  >complex-deletes-q6-2.xml</output-file>
            </state>
         </test-case>
         <test-case name="complex-deletes-q7" FilePath="DeleteExpressions/" scenario="standard"
            Creator="John Snelson">
            <description>Delete all text nodes that come directly after a comment or
               PI.</description>
            <spec-citation spec="XQUPDATE" section-number="2.4.2" section-title="Delete"
               section-pointer="id-delete"/>
            <state time="0">
               <query name="complex-deletes-q7" date="2007-10-23"/>
               <input-file role="principal-data" variable="input-context">TopMany</input-file>
            </state>
            <state time="1">
               <query name="complex-deletes-q7-test" date="2007-10-23"/>
               <input-file role="principal-data" variable="input-context">TopMany</input-file>
               <output-file role="principal" compare="Fragment">complex-deletes-q7.xml</output-file>
            </state>
            <state time="2">
               <query name="complex-deletes-q7-test2" date="2007-10-23"/>
               <input-file role="principal-data" variable="input-context">TopMany</input-file>
               <output-file role="principal" compare="Fragment"
                  >complex-deletes-q7-2.xml</output-file>
            </state>
         </test-case>
         <test-case name="complex-deletes-q8" FilePath="DeleteExpressions/" scenario="standard"
            Creator="John Snelson">
            <description>Delete all elements called "south-east".</description>
            <spec-citation spec="XQUPDATE" section-number="2.4.2" section-title="Delete"
               section-pointer="id-delete"/>
            <state time="0">
               <query name="complex-deletes-q8" date="2007-10-23"/>
               <input-file role="principal-data" variable="input-context">TopMany</input-file>
            </state>
            <state time="1">
               <query name="complex-deletes-q8-test" date="2007-10-23"/>
               <input-file role="principal-data" variable="input-context">TopMany</input-file>
               <output-file role="principal" compare="Fragment">complex-deletes-q8.xml</output-file>
            </state>
            <state time="2">
               <query name="complex-deletes-q8-test2" date="2007-10-23"/>
               <input-file role="principal-data" variable="input-context">TopMany</input-file>
               <output-file role="principal" compare="Fragment"
                  >complex-deletes-q8-2.xml</output-file>
            </state>
         </test-case>
         <test-case name="complex-deletes-q9" FilePath="DeleteExpressions/" scenario="standard"
            Creator="John Snelson">
            <description>Delete the element called "center".</description>
            <spec-citation spec="XQUPDATE" section-number="2.4.2" section-title="Delete"
               section-pointer="id-delete"/>
            <state time="0">
               <query name="complex-deletes-q9" date="2007-10-23"/>
               <input-file role="principal-data" variable="input-context">TopMany</input-file>
            </state>
            <state time="1">
               <query name="complex-deletes-q9-test" date="2007-10-23"/>
               <input-file role="principal-data" variable="input-context">TopMany</input-file>
               <output-file role="principal" compare="Fragment">complex-deletes-q9.xml</output-file>
            </state>
            <state time="2">
               <query name="complex-deletes-q9-test2" date="2007-10-23"/>
               <input-file role="principal-data" variable="input-context">TopMany</input-file>
               <output-file role="principal" compare="Fragment"
                  >complex-deletes-q9-2.xml</output-file>
            </state>
         </test-case>

         <test-case name="complex-replacevalues-q1" FilePath="ReplaceExpressions/"
            scenario="standard" Creator="John Snelson">
            <description>Replace the value of the leading comments of document
               element.</description>
            <spec-citation spec="XQUPDATE" section-number="2.4.3.2"
               section-title="Replacing the Value of a Node"
               section-pointer="id-replacing-node-value"/>
            <spec-citation spec="XQUPDATE" section-number="2.5.1" section-title="FLWOR Expression"
               section-pointer="id-flwor-expr"/>
            <state time="0">
               <query name="complex-replacevalues-q1" date="2007-10-23"/>
               <input-file role="principal-data" variable="input-context">TopMany</input-file>
            </state>
            <state time="1">
               <query name="complex-replacevalues-q1-test" date="2007-10-23"/>
               <input-file role="principal-data" variable="input-context">TopMany</input-file>
               <output-file role="principal" compare="Fragment"
                  >complex-replacevalues-q1.xml</output-file>
            </state>
            <state time="2">
               <query name="complex-replacevalues-q1-test2" date="2007-10-23"/>
               <input-file role="principal-data" variable="input-context">TopMany</input-file>
               <output-file role="principal" compare="Fragment"
                  >complex-replacevalues-q1-2.xml</output-file>
            </state>
         </test-case>
         <test-case name="complex-replacevalues-q2" FilePath="ReplaceExpressions/"
            scenario="standard" Creator="John Snelson">
            <description>Replace values of trailing comments of document element.</description>
            <spec-citation spec="XQUPDATE" section-number="2.4.3.2"
               section-title="Replacing the Value of a Node"
               section-pointer="id-replacing-node-value"/>
            <spec-citation spec="XQUPDATE" section-number="2.5.1" section-title="FLWOR Expression"
               section-pointer="id-flwor-expr"/>
            <state time="0">
               <query name="complex-replacevalues-q2" date="2007-10-23"/>
               <input-file role="principal-data" variable="input-context">TopMany</input-file>
            </state>
            <state time="1">
               <query name="complex-replacevalues-q2-test" date="2007-10-23"/>
               <input-file role="principal-data" variable="input-context">TopMany</input-file>
               <output-file role="principal" compare="Fragment"
                  >complex-replacevalues-q2.xml</output-file>
            </state>
            <state time="2">
               <query name="complex-replacevalues-q2-test2" date="2007-10-23"/>
               <input-file role="principal-data" variable="input-context">TopMany</input-file>
               <output-file role="principal" compare="Fragment"
                  >complex-replacevalues-q2-2.xml</output-file>
            </state>
         </test-case>
         <test-case name="complex-replacevalues-q6" FilePath="ReplaceExpressions/"
            scenario="standard" Creator="John Snelson">
            <description>Replace value of the text node child of element "east".</description>
            <spec-citation spec="XQUPDATE" section-number="2.4.3.2"
               section-title="Replacing the Value of a Node"
               section-pointer="id-replacing-node-value"/>
            <state time="0">
               <query name="complex-replacevalues-q6" date="2007-10-23"/>
               <input-file role="principal-data" variable="input-context">TopMany</input-file>
            </state>
            <state time="1">
               <query name="complex-replacevalues-q6-test" date="2007-10-23"/>
               <input-file role="principal-data" variable="input-context">TopMany</input-file>
               <output-file role="principal" compare="Fragment"
                  >complex-replacevalues-q6.xml</output-file>
            </state>
            <state time="2">
               <query name="complex-replacevalues-q6-test2" date="2007-10-23"/>
               <input-file role="principal-data" variable="input-context">TopMany</input-file>
               <output-file role="principal" compare="Fragment"
                  >complex-replacevalues-q6-2.xml</output-file>
            </state>
         </test-case>
         <test-case name="complex-replacevalues-q7" FilePath="ReplaceExpressions/"
            scenario="standard" Creator="John Snelson">
            <description>Replace the value of all text nodes that come directly after a comment or
               PI.</description>
            <spec-citation spec="XQUPDATE" section-number="2.4.3.2"
               section-title="Replacing the Value of a Node"
               section-pointer="id-replacing-node-value"/>
            <spec-citation spec="XQUPDATE" section-number="2.5.1" section-title="FLWOR Expression"
               section-pointer="id-flwor-expr"/>
            <state time="0">
               <query name="complex-replacevalues-q7" date="2007-10-23"/>
               <input-file role="principal-data" variable="input-context">TopMany</input-file>
            </state>
            <state time="1">
               <query name="complex-replacevalues-q7-test" date="2007-10-23"/>
               <input-file role="principal-data" variable="input-context">TopMany</input-file>
               <output-file role="principal" compare="Fragment"
                  >complex-replacevalues-q7.xml</output-file>
            </state>
            <state time="2">
               <query name="complex-replacevalues-q7-test2" date="2007-10-23"/>
               <input-file role="principal-data" variable="input-context">TopMany</input-file>
               <output-file role="principal" compare="Fragment"
                  >complex-replacevalues-q7-2.xml</output-file>
            </state>
         </test-case>
         <test-case name="complex-replacevalues-q8" FilePath="ReplaceExpressions/"
            scenario="standard" Creator="John Snelson">
            <description>Replace value of all elements called "south-east".</description>
            <spec-citation spec="XQUPDATE" section-number="2.4.3.2"
               section-title="Replacing the Value of a Node"
               section-pointer="id-replacing-node-value"/>
            <spec-citation spec="XQUPDATE" section-number="2.5.1" section-title="FLWOR Expression"
               section-pointer="id-flwor-expr"/>
            <state time="0">
               <query name="complex-replacevalues-q8" date="2007-10-23"/>
               <input-file role="principal-data" variable="input-context">TopMany</input-file>
            </state>
            <state time="1">
               <query name="complex-replacevalues-q8-test" date="2007-10-23"/>
               <input-file role="principal-data" variable="input-context">TopMany</input-file>
               <output-file role="principal" compare="Fragment"
                  >complex-replacevalues-q8.xml</output-file>
            </state>
            <state time="2">
               <query name="complex-replacevalues-q8-test2" date="2007-10-23"/>
               <input-file role="principal-data" variable="input-context">TopMany</input-file>
               <output-file role="principal" compare="Fragment"
                  >complex-replacevalues-q8-2.xml</output-file>
            </state>
         </test-case>
         <test-case name="complex-renames-q2" FilePath="RenameExpressions/" scenario="standard"
            Creator="John Snelson">
            <description>Rename all elements called "south-east".</description>
            <spec-citation spec="XQUPDATE" section-number="2.4.4" section-title="Rename"
               section-pointer="id-rename"/>
            <spec-citation spec="XQUPDATE" section-number="2.5.1" section-title="FLWOR Expression"
               section-pointer="id-flwor-expr"/>
            <state time="0">
               <query name="complex-renames-q2" date="2007-10-23"/>
               <input-file role="principal-data" variable="input-context">TopMany</input-file>
            </state>
            <state time="1">
               <query name="complex-renames-q2-test" date="2007-10-23"/>
               <input-file role="principal-data" variable="input-context">TopMany</input-file>
               <output-file role="principal" compare="Fragment">complex-renames-q2.xml</output-file>
            </state>
            <state time="2">
               <query name="complex-renames-q2-test2" date="2007-10-23"/>
               <input-file role="principal-data" variable="input-context">TopMany</input-file>
               <output-file role="principal" compare="Fragment"
                  >complex-renames-q2-2.xml</output-file>
            </state>
         </test-case>
         <test-case name="complex-renames-q3" FilePath="RenameExpressions/" scenario="standard"
            Creator="John Snelson">
            <description>Rename the element called "center".</description>
            <spec-citation spec="XQUPDATE" section-number="2.4.4" section-title="Rename"
               section-pointer="id-rename"/>
            <state time="0">
               <query name="complex-renames-q3" date="2007-10-23"/>
               <input-file role="principal-data" variable="input-context">TopMany</input-file>
            </state>
            <state time="1">
               <query name="complex-renames-q3-test" date="2007-10-23"/>
               <input-file role="principal-data" variable="input-context">TopMany</input-file>
               <output-file role="principal" compare="Fragment">complex-renames-q3.xml</output-file>
            </state>
            <state time="2">
               <query name="complex-renames-q3-test2" date="2007-10-23"/>
               <input-file role="principal-data" variable="input-context">TopMany</input-file>
               <output-file role="principal" compare="Fragment"
                  >complex-renames-q3-2.xml</output-file>
            </state>
         </test-case>
         <test-case name="complex-renames-q4" FilePath="RenameExpressions/" scenario="standard"
            Creator="John Snelson">
            <description>Rename one of the elements called "south-east".</description>
            <spec-citation spec="XQUPDATE" section-number="2.4.4" section-title="Rename"
               section-pointer="id-rename"/>
            <state time="0">
               <query name="complex-renames-q4" date="2007-10-23"/>
               <input-file role="principal-data" variable="input-context">TopMany</input-file>
            </state>
            <state time="1">
               <query name="complex-renames-q4-test" date="2007-10-23"/>
               <input-file role="principal-data" variable="input-context">TopMany</input-file>
               <output-file role="principal" compare="Fragment">complex-renames-q4.xml</output-file>
            </state>
            <state time="2">
               <query name="complex-renames-q4-test2" date="2007-10-23"/>
               <input-file role="principal-data" variable="input-context">TopMany</input-file>
               <output-file role="principal" compare="Fragment"
                  >complex-renames-q4-2.xml</output-file>
            </state>
         </test-case>
      </test-group>
      <test-group name="fnput-other-nodekinds">
         <GroupInfo>
            <title>fn:put applied to nodes other than document and element nodes</title>
            <description/>
         </GroupInfo>
         <test-group name="put-comment">
            <GroupInfo>
               <title>fn:put() applied to comment nodes</title>
               <description>These tests all call fn:put with the argument being a comment node. The
                  tests should not be run by a product that does not support this
                  feature</description>
               <depends-on>
                  <feature supported="true">put:comment</feature>
                  <description>It is implementation-defined which kinds of node can be used as the
                     argument to fn:put()</description>
                  <spec-citation spec="XQUPDATE" section-number="2.6.1" section-title="fn:put"
                     section-pointer="id-func-put"/>
               </depends-on>
            </GroupInfo>

            <test-case name="fn-put-003" FilePath="Put/" scenario="standard"
               Creator="Andrew Eisenberg">
               <description>Store a comment.</description>
               <spec-citation spec="XQUPDATE" section-number="2.6.1" section-title="fn:put"
                  section-pointer="id-func-put"/>
               <state time="0">
                  <query name="fn-put-003" date="2008-11-05"/>
                  <input-URI role="principal-data" variable="input-URI">putOutput</input-URI>
               </state>
            </test-case>
         </test-group>
         <test-group name="put-comment-fail">
            <GroupInfo>
               <title>fn:put() applied to comment nodes - unsupported</title>
               <description>These tests all call fn:put with the argument being a comment node. The
                  tests should be run by a product that does NOT support this feature</description>
               <depends-on>
                  <feature supported="false">put:comment</feature>
                  <description>It is implementation-defined which kinds of node can be used as the
                     argument to fn:put()</description>
                  <spec-citation spec="XQUPDATE" section-number="2.6.1" section-title="fn:put"
                     section-pointer="id-func-put"/>
               </depends-on>
            </GroupInfo>

            <test-case name="fn-put-003-fail" FilePath="Put/" scenario="runtime-error"
               Creator="Andrew Eisenberg">
               <description>Store a comment.</description>
               <spec-citation spec="XQUPDATE" section-number="2.6.1" section-title="fn:put"
                  section-pointer="id-func-put"/>
               <state time="0">
                  <query name="fn-put-003" date="2008-11-05"/>
                  <input-URI role="principal-data" variable="input-URI">putOutput</input-URI>
                  <expected-error>FOUP0001</expected-error>
               </state>
            </test-case>
         </test-group>
         <test-group name="put-PI">
            <GroupInfo>
               <title>fn:put() applied to processing-instruction nodes</title>
               <description>These tests all call fn:put with the argument being a PI node. The tests
                  should not be run by a product that does not support this feature</description>
               <depends-on>
                  <feature supported="true">put:processing-instruction</feature>
                  <description>It is implementation-defined which kinds of node can be used as the
                     argument to fn:put()</description>
                  <spec-citation spec="XQUPDATE" section-number="2.6.1" section-title="fn:put"
                     section-pointer="id-func-put"/>
               </depends-on>
            </GroupInfo>
            <test-case name="fn-put-004" FilePath="Put/" scenario="standard"
               Creator="Andrew Eisenberg">
               <description>Store a PI.</description>
               <spec-citation spec="XQUPDATE" section-number="2.6.1" section-title="fn:put"
                  section-pointer="id-func-put"/>
               <state time="0">
                  <query name="fn-put-004" date="2008-11-05"/>
                  <input-URI role="principal-data" variable="input-URI">putOutput</input-URI>
               </state>
            </test-case>
         </test-group>
         <test-group name="put-PI-fail">
            <GroupInfo>
               <title>fn:put() applied to processing-instruction nodes - unsupported</title>
               <description>These tests all call fn:put with the argument being a PI node. The tests
                  should be run by a product that does NOT support this feature</description>
               <depends-on>
                  <feature supported="false">put:processing-instruction</feature>
                  <description>It is implementation-defined which kinds of node can be used as the
                     argument to fn:put()</description>
                  <spec-citation spec="XQUPDATE" section-number="2.6.1" section-title="fn:put"
                     section-pointer="id-func-put"/>
               </depends-on>
            </GroupInfo>
            <test-case name="fn-put-004-fail" FilePath="Put/" scenario="standard"
               Creator="Andrew Eisenberg">
               <description>Store a PI.</description>
               <spec-citation spec="XQUPDATE" section-number="2.6.1" section-title="fn:put"
                  section-pointer="id-func-put"/>
               <state time="0">
                  <query name="fn-put-004" date="2008-11-05"/>
                  <input-URI role="principal-data" variable="input-URI">putOutput</input-URI>
                  <expected-error>FOUP0001</expected-error>
               </state>
            </test-case>
         </test-group>
         <test-group name="put-attribute">
            <GroupInfo>
               <title>fn:put() applied to attribute nodes</title>
               <description>These tests all call fn:put with the argument being an attribute node.
                  The tests should not be run by a product that does not support this
                  feature</description>
               <depends-on>
                  <feature supported="true">put:attribute</feature>
                  <description>It is implementation-defined which kinds of node can be used as the
                     argument to fn:put()</description>
                  <spec-citation spec="XQUPDATE" section-number="2.6.1" section-title="fn:put"
                     section-pointer="id-func-put"/>
               </depends-on>
            </GroupInfo>
            <test-case name="fn-put-005" FilePath="Put/" scenario="standard"
               Creator="Andrew Eisenberg">
               <description>Store an attribute.</description>
               <spec-citation spec="XQUPDATE" section-number="2.6.1" section-title="fn:put"
                  section-pointer="id-func-put"/>
               <state time="0">
                  <query name="fn-put-005" date="2008-11-05"/>
                  <input-URI role="principal-data" variable="input-URI">putOutput</input-URI>
               </state>
            </test-case>
         </test-group>
         <test-group name="put-attribute-fail">
            <GroupInfo>
               <title>fn:put() applied to attribute nodes - unsupported</title>
               <description>These tests all call fn:put with the argument being an attribute node.
                  The tests should be run by a product that does NOT support this
                  feature</description>
               <depends-on>
                  <feature supported="false">put:attribute</feature>
                  <description>It is implementation-defined which kinds of node can be used as the
                     argument to fn:put()</description>
                  <spec-citation spec="XQUPDATE" section-number="2.6.1" section-title="fn:put"
                     section-pointer="id-func-put"/>
               </depends-on>
            </GroupInfo>
            <test-case name="fn-put-005-fail" FilePath="Put/" scenario="standard"
               Creator="Andrew Eisenberg">
               <description>Store an attribute.</description>
               <spec-citation spec="XQUPDATE" section-number="2.6.1" section-title="fn:put"
                  section-pointer="id-func-put"/>
               <state time="0">
                  <query name="fn-put-005" date="2008-11-05"/>
                  <input-URI role="principal-data" variable="input-URI">putOutput</input-URI>
                  <expected-error>FOUP0001</expected-error>
               </state>
            </test-case>
         </test-group>
         <test-group name="put-text">
            <GroupInfo>
               <title>fn:put() applied to text nodes</title>
               <description>These tests all call fn:put with the argument being a text node. The
                  tests should not be run by a product that does not support this
                  feature</description>
               <depends-on>
                  <feature supported="true">put:text</feature>
                  <description>It is implementation-defined which kinds of node can be used as the
                     argument to fn:put()</description>
                  <spec-citation spec="XQUPDATE" section-number="2.6.1" section-title="fn:put"
                     section-pointer="id-func-put"/>
               </depends-on>
            </GroupInfo>
            <test-case name="fn-put-006" FilePath="Put/" scenario="standard"
               Creator="Andrew Eisenberg">
               <description>Store a text node.</description>
               <spec-citation spec="XQUPDATE" section-number="2.6.1" section-title="fn:put"
                  section-pointer="id-func-put"/>
               <state time="0">
                  <query name="fn-put-006" date="2008-11-05"/>
                  <input-URI role="principal-data" variable="input-URI">putOutput</input-URI>
               </state>
            </test-case>
         </test-group>
         <test-group name="put-text-fail">
            <GroupInfo>
               <title>fn:put() applied to text nodes - unsupported</title>
               <description>These tests all call fn:put with the argument being a text node. The
                  tests should be run by a product that does NOT support this feature</description>
               <depends-on>
                  <feature supported="false">put:text</feature>
                  <description>It is implementation-defined which kinds of node can be used as the
                     argument to fn:put()</description>
                  <spec-citation spec="XQUPDATE" section-number="2.6.1" section-title="fn:put"
                     section-pointer="id-func-put"/>
               </depends-on>
            </GroupInfo>
            <test-case name="fn-put-006-fail" FilePath="Put/" scenario="standard"
               Creator="Andrew Eisenberg">
               <description>Store a text node.</description>
               <spec-citation spec="XQUPDATE" section-number="2.6.1" section-title="fn:put"
                  section-pointer="id-func-put"/>
               <state time="0">
                  <query name="fn-put-006" date="2008-11-05"/>
                  <input-URI role="principal-data" variable="input-URI">putOutput</input-URI>
                  <expected-error>FOUP0001</expected-error>
               </state>
            </test-case>
         </test-group>
      </test-group>
   </test-group>
   <test-group name="UseCases">
      <GroupInfo>
         <title>Use Cases</title>
         <description/>
      </GroupInfo>
      <test-group name="RelationalDataUpdates">
         <GroupInfo>
            <title>Use Cases "R" - Updating Relational Data</title>
            <description/>
         </GroupInfo>
         <test-case name="relational-data-q1" FilePath="UseCases/RelationalDataUpdates/"
            scenario="standard" Creator="Update Task Force">
            <description>Update Use Case # 1</description>
            <spec-citation spec="XQUPDATE" section-number="1.1.4.1" section-title="Q1"
               section-pointer="rdb-updates-results-u1"/>
            <state time="0">
               <query name="relational-data-q1" date="2005-02-03"/>
               <input-file role="principal-data" variable="users">users</input-file>
            </state>
            <state time="1">
               <query name="relational-data-q1-test" date="2007-02-01"/>
               <input-file role="principal-data" variable="users">users</input-file>
               <output-file role="principal" compare="Fragment"
                  >relational-data-q1-results.xml</output-file>
            </state>
         </test-case>
         <test-case name="relational-data-q2" FilePath="UseCases/RelationalDataUpdates/"
            scenario="standard" Creator="Update Task Force">
            <description>Update Use Case # 2</description>
            <spec-citation spec="XQUPDATE" section-number="1.1.4.2" section-title="Q2"
               section-pointer="rdb-updates-results-u2"/>
            <state time="0">
               <query name="relational-data-q2" date="2006-08-05"/>
               <input-file role="principal-data" variable="users">users2</input-file>
               <input-file role="principal-data" variable="bids">bids</input-file>
            </state>
            <state time="1">
               <query name="relational-data-q2-test" date="2007-02-01"/>
               <input-file role="principal-data" variable="users">users2</input-file>
               <input-file role="principal-data" variable="bids">bids</input-file>
               <output-file role="principal" compare="Fragment"
                  >relational-data-q2-results.xml</output-file>
            </state>
         </test-case>
         <test-case name="relational-data-q3" FilePath="UseCases/RelationalDataUpdates/"
            scenario="standard" Creator="Update Task Force">
            <description>Update Use Case # 3</description>
            <spec-citation spec="XQUPDATE" section-number="1.1.4.3" section-title="Q3"
               section-pointer="rdb-updates-results-u3"/>
            <state time="0">
               <query name="relational-data-q3" date="2006-08-05"/>
               <input-file role="principal-data" variable="users">users2</input-file>
               <input-file role="principal-data" variable="bids">bids</input-file>
            </state>
            <state time="1">
               <query name="relational-data-q3-test" date="2007-02-01"/>
               <input-file role="principal-data" variable="users">users2</input-file>
               <input-file role="principal-data" variable="bids">bids</input-file>
               <output-file role="principal" compare="Fragment"
                  >relational-data-q3-results.xml</output-file>
            </state>
         </test-case>
         <test-case name="relational-data-q4" FilePath="UseCases/RelationalDataUpdates/"
            scenario="standard" Creator="Update Task Force">
            <description>Update Use Case # 4</description>
            <spec-citation spec="XQUPDATE" section-number="1.1.4.4" section-title="Q4"
               section-pointer="rdb-updates-results-u4"/>
            <state time="0">
               <query name="relational-data-q4" date="2006-08-05"/>
               <input-file role="principal-data" variable="users">users2</input-file>
            </state>
            <state time="1">
               <query name="relational-data-q4-test" date="2007-02-01"/>
               <input-file role="principal-data" variable="users">users2</input-file>
               <output-file role="principal" compare="Fragment"
                  >relational-data-q4-results.xml</output-file>
            </state>
         </test-case>
         <test-case name="relational-data-q5-1" FilePath="UseCases/RelationalDataUpdates/"
            scenario="standard" Creator="Update Task Force">
            <description>Update Use Case # 5</description>
            <spec-citation spec="XQUPDATE" section-number="1.1.4.5" section-title="Q5"
               section-pointer="rdb-updates-results-u5"/>
            <state time="0">
               <query name="relational-data-q5-1" date="2006-08-05"/>
               <input-file role="principal-data" variable="users">users2</input-file>
               <input-file role="principal-data" variable="bids">bids</input-file>
            </state>
            <state time="1">
               <query name="relational-data-q5-1-test" date="2007-02-01"/>
               <input-file role="principal-data" variable="users">users2</input-file>
               <input-file role="principal-data" variable="bids">bids</input-file>
               <output-file role="principal" compare="Text"
                  >relational-data-q5-results-1.txt</output-file>
            </state>
         </test-case>
         <test-case name="relational-data-q5-2" FilePath="UseCases/RelationalDataUpdates/"
            scenario="standard" Creator="Update Task Force">
            <description>Update Use Case # 5</description>
            <spec-citation spec="XQUPDATE" section-number="1.1.4.5" section-title="Q5"
               section-pointer="rdb-updates-results-u5"/>
            <state time="0">
               <query name="relational-data-q5-2" date="2006-08-05"/>
               <input-file role="principal-data" variable="users">users2</input-file>
               <input-file role="principal-data" variable="bids">bids</input-file>
            </state>
            <state time="1">
               <query name="relational-data-q5-2-test" date="2007-02-01"/>
               <input-file role="principal-data" variable="users">users2</input-file>
               <input-file role="principal-data" variable="bids">bids</input-file>
               <output-file role="principal" compare="Fragment"
                  >relational-data-q5-results-2.xml</output-file>
            </state>
         </test-case>
         <test-case name="relational-data-q6-1" FilePath="UseCases/RelationalDataUpdates/"
            scenario="standard" Creator="Update Task Force">
            <description>Update Use Case # 6</description>
            <spec-citation spec="XQUPDATE" section-number="1.1.4.6" section-title="Q6"
               section-pointer="rdb-updates-results-u6"/>
            <state time="0">
               <query name="relational-data-q6-1" date="2006-08-05"/>
               <input-file role="principal-data" variable="users">users</input-file>
               <input-file role="principal-data" variable="items">items</input-file>
               <input-file role="principal-data" variable="bids">bids</input-file>
            </state>
            <state time="1">
               <query name="relational-data-q6-test" date="2007-02-01"/>
               <input-file role="principal-data" variable="users">users</input-file>
               <input-file role="principal-data" variable="items">items</input-file>
               <input-file role="principal-data" variable="bids">bids</input-file>
               <output-file role="principal" compare="Fragment"
                  >relational-data-q6-results-1.xml</output-file>
            </state>
         </test-case>
         <test-case name="relational-data-q6-2" FilePath="UseCases/RelationalDataUpdates/"
            scenario="standard" Creator="Update Task Force">
            <description>Update Use Case # 6 - Alternate method</description>
            <spec-citation spec="XQUPDATE" section-number="1.1.4.6" section-title="Q6"
               section-pointer="rdb-updates-results-u6"/>
            <state time="0">
               <query name="relational-data-q6-2" date="2006-08-05"/>
               <input-file role="principal-data" variable="users">users</input-file>
               <input-file role="principal-data" variable="items">items</input-file>
               <input-file role="principal-data" variable="bids">bids</input-file>
            </state>
            <state time="1">
               <query name="relational-data-q6-test" date="2007-02-01"/>
               <input-file role="principal-data" variable="users">users</input-file>
               <input-file role="principal-data" variable="items">items</input-file>
               <input-file role="principal-data" variable="bids">bids</input-file>
               <output-file role="principal" compare="Fragment"
                  >relational-data-q6-results-1.xml</output-file>
            </state>
         </test-case>
         <test-case name="relational-data-q7" FilePath="UseCases/RelationalDataUpdates/"
            scenario="standard" Creator="Update Task Force">
            <description>Update Use Case # 7</description>
            <spec-citation spec="XQUPDATE" section-number="1.1.4.7" section-title="Q7"
               section-pointer="rdb-updates-results-u7"/>
            <state time="0">
               <query name="relational-data-q7" date="2006-08-05"/>
               <input-file role="principal-data" variable="items">items</input-file>
               <output-file role="principal" compare="Fragment"
                  >relational-data-q7-results-1.xml</output-file>
               <expected-error>*</expected-error>
            </state>
            <state time="1">
               <query name="relational-data-q7-test" date="2007-02-01"/>
               <input-file role="principal-data" variable="items">items</input-file>
               <output-file role="principal" compare="Fragment"
                  >relational-data-q7-results-2.xml</output-file>
            </state>
         </test-case>
         <test-case name="relational-data-q8" FilePath="UseCases/RelationalDataUpdates/"
            scenario="standard" Creator="Update Task Force">
            <description>Update Use Case # 8</description>
            <spec-citation spec="XQUPDATE" section-number="1.1.4.8" section-title="Q8"
               section-pointer="rdb-updates-results-q8"/>
            <state time="0">
               <query name="relational-data-q8" date="2006-08-05"/>
               <input-file role="principal-data" variable="users">users2</input-file>
               <input-file role="principal-data" variable="bids">bids</input-file>
               <output-file role="principal" compare="Fragment"
                  >relational-data-q8-results-1.xml</output-file>
               <expected-error>*</expected-error>
            </state>
            <state time="1">
               <query name="relational-data-q8-test" date="2007-02-01"/>
               <input-file role="principal-data" variable="users">users2</input-file>
               <input-file role="principal-data" variable="bids">bids</input-file>
               <output-file role="principal" compare="Fragment"
                  >relational-data-q8-results-2.xml</output-file>
               <output-file role="principal" compare="Fragment"
                  >relational-data-q8-results-3.xml</output-file>
            </state>
         </test-case>
         <test-case name="relational-data-q9" FilePath="UseCases/RelationalDataUpdates/"
            scenario="standard" Creator="Update Task Force">
            <description>Update Use Case # 9</description>
            <spec-citation spec="XQUPDATE" section-number="1.1.4.9" section-title="Q9"
               section-pointer="rdb-updates-results-u9"/>
            <state time="0">
               <query name="relational-data-q9" date="2006-08-05"/>
               <input-file role="principal-data" variable="users">users2</input-file>
               <input-file role="principal-data" variable="bids">bids</input-file>
               <output-file role="principal" compare="Fragment"
                  >relational-data-q9-results-1.xml</output-file>
               <expected-error>*</expected-error>
            </state>
            <state time="1">
               <query name="relational-data-q9-test" date="2007-02-01"/>
               <input-file role="principal-data" variable="users">users2</input-file>
               <input-file role="principal-data" variable="bids">bids</input-file>
               <output-file role="principal" compare="Fragment"
                  >relational-data-q9-results-2.xml</output-file>
               <output-file role="principal" compare="Fragment"
                  >relational-data-q9-results-3.xml</output-file>
            </state>
         </test-case>
      </test-group>
      <test-group name="AddressBookUpdates">
         <GroupInfo>
            <title>Use Cases "address Book" - Synchronizing address book entries</title>
            <description/>
         </GroupInfo>
         <test-case name="address-book-q1" FilePath="UseCases/AddressBookUpdates/"
            scenario="standard" Creator="Update Task Force">
            <description>Address Book Use case # 1</description>
            <spec-citation spec="XQUPDATE" section-number="1.2.2" section-title="Q1"
               section-pointer="addrbook-q1"/>
            <state time="0">
               <query name="address-book-q1" date="2006-08-05"/>
               <input-file role="principal-data" variable="archive">archive</input-file>
               <input-file role="principal-data" variable="copy1">copy1</input-file>
               <input-file role="principal-data" variable="copy2">copy2</input-file>
               <input-file role="principal-data" variable="log">log</input-file>
               <expected-error>XUDY0017</expected-error>
            </state>
            <!--            <state time="1"> -->
            <!--             <query name="address-book-q1-test" date="2007-02-01"/>      -->
            <!--             <output-file role="principal" compare="Fragment">address-book-q1-results.xml</output-file> -->
            <!--            </state> -->
         </test-case>
      </test-group>
      <test-group name="SoapUpdates">
         <GroupInfo>
            <title>Use Cases "Soap" - processing messages</title>
            <description/>
         </GroupInfo>
         <test-case name="soap-q1" FilePath="UseCases/SoapUpdates/" scenario="standard"
            Creator="Update Task Force">
            <description>Soap Use case # 1</description>
            <spec-citation spec="XQUPDATE" section-number="1.3.2" section-title="Q1"
               section-pointer="soap-q1"/>
            <state time="0">
               <query name="soap-q1" date="2006-08-05"/>
               <input-file role="principal-data" variable="airportsDoc">airports</input-file>
               <input-file role="principal-data" variable="msg">soapMsg</input-file>
               <output-file role="principal" compare="Fragment">soap-q1-results.xml</output-file>
            </state>
         </test-case>
      </test-group>
      <test-group name="NamespacesUpdates">
         <GroupInfo>
            <title>Use Cases "Namespaces" - moving elements from one namespace to another</title>
            <description/>
         </GroupInfo>
         <test-case name="namespaces-q1" FilePath="UseCases/NamespacesUpdates/" scenario="standard"
            Creator="Update Task Force">
            <description>namespaces Use case # 1</description>
            <spec-citation spec="XQUPDATE" section-number="1.4.4" section-title="Q1"
               section-pointer="ns-q1"/>
            <state time="0">
               <query name="namespaces-q1" date="2006-08-05"/>
               <input-file role="principal-data" variable="grant">grant</input-file>
            </state>
            <state time="1">
               <query name="namespaces-q1-test" date="2007-02-01"/>
               <input-file role="principal-data" variable="grant">grant</input-file>
               <output-file role="principal" compare="Fragment"
                  >namespaces-q1-results.xml</output-file>
            </state>
         </test-case>
      </test-group>
      <test-group name="PartsUpdates">
         <GroupInfo>
            <title>Use Cases "Parts" - modifying recursive documents</title>
            <description/>
         </GroupInfo>
         <test-case name="parts-q1" FilePath="UseCases/PartsUpdates/" scenario="standard"
            Creator="Update Task Force">
            <description>Parts Use case # 1</description>
            <spec-citation spec="XQUPDATE" section-number="1.5.2" section-title="Q1"
               section-pointer="use-case-parts-q1"/>
            <state time="0">
               <query name="parts-q1" date="2006-08-05"/>
               <input-file role="principal-data" variable="part-tree">part-tree</input-file>
            </state>
            <state time="1">
               <query name="parts-q1-test" date="2007-02-01"/>
               <input-file role="principal-data" variable="part-tree">part-tree</input-file>
               <output-file role="principal" compare="Fragment">parts-q1-results.xml</output-file>
            </state>
         </test-case>
         <test-case name="parts-q2" FilePath="UseCases/PartsUpdates/" scenario="standard"
            Creator="Update Task Force">
            <description>Parts Use case # 2</description>
            <spec-citation spec="XQUPDATE" section-number="1.5.3" section-title="Q2"
               section-pointer="use-case-parts-q2"/>
            <state time="0">
               <query name="parts-q2" date="2006-08-05"/>
               <input-file role="principal-data" variable="part-tree">part-tree</input-file>
            </state>
            <state time="1">
               <query name="parts-q2-test" date="2007-02-01"/>
               <input-file role="principal-data" variable="part-tree">part-tree</input-file>
               <output-file role="principal" compare="Fragment">parts-q2-results.xml</output-file>
            </state>
         </test-case>
         <test-case name="parts-q3-1" FilePath="UseCases/PartsUpdates/" scenario="standard"
            Creator="Update Task Force">
            <description>Parts Use case # 3</description>
            <spec-citation spec="XQUPDATE" section-number="1.5.4" section-title="Q3"
               section-pointer="use-case-parts-q3"/>
            <state time="0">
               <query name="parts-q3-1" date="2006-08-05"/>
               <input-file role="principal-data" variable="part-tree">part-tree</input-file>
               <input-file role="principal-data" variable="part-list">part-list</input-file>
            </state>
            <state time="1">
               <query name="parts-q3-test" date="2007-02-01"/>
               <input-file role="principal-data" variable="part-list">part-list</input-file>
               <output-file role="principal" compare="Fragment">parts-q3-results.xml</output-file>
            </state>
         </test-case>
         <test-case name="parts-q3-2" FilePath="UseCases/PartsUpdates/" scenario="standard"
            Creator="Update Task Force">
            <description>Parts Use case # 3 (alternate solution)</description>
            <spec-citation spec="XQUPDATE" section-number="1.5.4" section-title="Q3"
               section-pointer="use-case-parts-q3"/>
            <state time="0">
               <query name="parts-q3-2" date="2006-08-05"/>
               <input-file role="principal-data" variable="part-list">part-list</input-file>
               <input-file role="principal-data" variable="part-tree">part-tree</input-file>
               <output-file role="principal" compare="Text">empty-sequence.txt</output-file>
               <expected-error>XPTY0004</expected-error>
            </state>
            <state time="1">
               <query name="parts-q3-test" date="2007-02-01"/>
               <input-file role="principal-data" variable="part-list">part-list</input-file>
               <output-file role="principal" compare="Fragment">parts-q3-results.xml</output-file>
               <output-file role="principal" compare="Fragment"
                  >parts-q3-results-no-update.xml</output-file>
            </state>
         </test-case>
         <test-case name="parts-q4-1" FilePath="UseCases/PartsUpdates/" scenario="standard"
            Creator="Update Task Force">
            <description>Parts Use case # 4</description>
            <spec-citation spec="XQUPDATE" section-number="1.5.5" section-title="Q4"
               section-pointer="use-case-parts-q4"/>
            <state time="0">
               <query name="parts-q4-1" date="2006-08-05"/>
               <input-file role="principal-data" variable="part-tree">part-tree</input-file>
            </state>
            <state time="1">
               <query name="parts-q4-test" date="2007-02-01"/>
               <input-file role="principal-data" variable="part-tree">part-tree</input-file>
               <output-file role="principal" compare="Fragment">parts-q4-results.xml</output-file>
            </state>
         </test-case>
         <test-case name="parts-q4-2" FilePath="UseCases/PartsUpdates/" scenario="standard"
            Creator="Update Task Force">
            <description>Parts Use case # 4. Alternate solution.</description>
            <spec-citation spec="XQUPDATE" section-number="1.5.5" section-title="Q4"
               section-pointer="use-case-parts-q4"/>
            <state time="0">
               <query name="parts-q4-2" date="2006-08-05"/>
               <input-file role="principal-data" variable="part-tree">part-tree</input-file>
            </state>
            <state time="1">
               <query name="parts-q4-test" date="2007-02-01"/>
               <input-file role="principal-data" variable="part-tree">part-tree</input-file>
               <output-file role="principal" compare="Fragment">parts-q4-results.xml</output-file>
            </state>
         </test-case>
         <test-case name="parts-q6" FilePath="UseCases/PartsUpdates/" scenario="standard"
            Creator="Update Task Force">
            <description>Parts Use case # 6</description>
            <spec-citation spec="XQUPDATE" section-number="1.5.6" section-title="Q6"
               section-pointer="use-case-parts-q6"/>
            <state time="0">
               <query name="parts-q6" date="2006-08-05"/>
               <input-file role="principal-data" variable="part-tree">part-tree</input-file>
            </state>
            <state time="1">
               <query name="parts-q6-test" date="2007-02-01"/>
               <input-file role="principal-data" variable="part-tree">part-tree</input-file>
               <output-file role="principal" compare="Fragment">parts-q6-results.xml</output-file>
            </state>
         </test-case>
      </test-group>
      <test-group name="NilUpdates">
         <GroupInfo>
            <title>Use Cases "Nil"</title>
            <description/>
         </GroupInfo>
         <test-case name="nil-q1" FilePath="UseCases/NilUpdates/" scenario="standard"
            Creator="Update Task Force">
            <description>Nil Use case # 1</description>
            <spec-citation spec="XQUPDATE" section-number="1.6.3" section-title="Q1"
               section-pointer="use-case-nil-q1"/>
            <state time="0">
               <query name="nil-q1" date="2006-08-05"/>
               <input-file role="principal-data" variable="employees">employees</input-file>
               <output-file role="principal" compare="Fragment">nil-q1-results.xml</output-file>
            </state>
         </test-case>
      </test-group>
   </test-group>
</test-suite>

