← Back to team overview

zorba-coders team mailing list archive

[Merge] lp:~zorba-coders/zorba/concat_operator into lp:zorba

 

William Candillon has proposed merging lp:~zorba-coders/zorba/concat_operator into lp:zorba.

Requested reviews:
  William Candillon (wcandillon)
  Matthias Brantner (matthias-brantner)
  Markos Zaharioudakis (markos-za)
Related bugs:
  Bug #937120 in Zorba: "Improve error message for || "
  https://bugs.launchpad.net/zorba/+bug/937120

For more details, see:
https://code.launchpad.net/~zorba-coders/zorba/concat_operator/+merge/94036

Add the XQuery 3.0 concat operator
-- 
The attached diff has been truncated due to its size.
https://code.launchpad.net/~zorba-coders/zorba/concat_operator/+merge/94036
Your team Zorba Coders is subscribed to branch lp:zorba.
=== modified file 'ChangeLog'
--- ChangeLog	2012-02-18 00:36:22 +0000
+++ ChangeLog	2012-02-21 18:40:26 +0000
@@ -2,6 +2,7 @@
 
 version 2.2
 
+  * Add XQuery 3.0 concat operator (http://www.w3.org/TR/xquery-30/#id-string-concat-expr) 
   * Fixed bug 923015 (clone() not implemented for full-text expressions)
   * No-copy optimization: avoids copying nodes during node-constructor expressions.
   * Added external function annotations %ann:propagates-input-nodes and 

=== modified file 'src/compiler/parser/xquery_parser.cpp'
--- src/compiler/parser/xquery_parser.cpp	2011-08-19 22:45:54 +0000
+++ src/compiler/parser/xquery_parser.cpp	2012-02-21 18:40:26 +0000
@@ -1,10 +1,8 @@
-
-/* A Bison parser, made by GNU Bison 2.4.1.  */
+/* A Bison parser, made by GNU Bison 2.5.  */
 
 /* Skeleton implementation for Bison LALR(1) parsers in C++
    
-      Copyright (C) 2002, 2003, 2004, 2005, 2006, 2007, 2008 Free Software
-   Foundation, Inc.
+      Copyright (C) 2002-2011 Free Software Foundation, Inc.
    
    This program is free software: you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
@@ -37,8 +35,8 @@
 
 /* First part of user declarations.  */
 
-/* Line 311 of lalr1.cc  */
-#line 87 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 293 of lalr1.cc  */
+#line 87 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
 
 
 #include "common/common.h"
@@ -74,16 +72,16 @@
 
 
 
-/* Line 311 of lalr1.cc  */
-#line 79 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
+/* Line 293 of lalr1.cc  */
+#line 77 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
 
 
 #include "xquery_parser.hpp"
 
 /* User implementation prologue.  */
 
-/* Line 317 of lalr1.cc  */
-#line 876 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 299 of lalr1.cc  */
+#line 878 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
 
 // HACK to trigger rchandle release: rchandles are freed when refcount == 0
 // (not <= 0); but Bison never increments the refcount, so we do it manually...
@@ -94,8 +92,8 @@
     }
 }
 
-/* Line 317 of lalr1.cc  */
-#line 976 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 299 of lalr1.cc  */
+#line 978 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
 
 #include "compiler/parser/xquery_scanner.h"
 
@@ -104,11 +102,11 @@
 
 
 
-/* Line 317 of lalr1.cc  */
-#line 109 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
+/* Line 299 of lalr1.cc  */
+#line 107 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
 
 #ifndef YY_
-# if YYENABLE_NLS
+# if defined YYENABLE_NLS && YYENABLE_NLS
 #  if ENABLE_NLS
 #   include <libintl.h> /* FIXME: INFRINGES ON USER NAME SPACE */
 #   define YY_(msgid) dgettext ("bison-runtime", msgid)
@@ -119,6 +117,26 @@
 # endif
 #endif
 
+/* YYLLOC_DEFAULT -- Set CURRENT to span from RHS[1] to RHS[N].
+   If N is 0, then set CURRENT to the empty location which ends
+   the previous symbol: RHS[0] (always defined).  */
+
+#define YYRHSLOC(Rhs, K) ((Rhs)[K])
+#ifndef YYLLOC_DEFAULT
+# define YYLLOC_DEFAULT(Current, Rhs, N)                               \
+ do                                                                    \
+   if (N)                                                              \
+     {                                                                 \
+       (Current).begin = YYRHSLOC (Rhs, 1).begin;                      \
+       (Current).end   = YYRHSLOC (Rhs, N).end;                        \
+     }                                                                 \
+   else                                                                \
+     {                                                                 \
+       (Current).begin = (Current).end = YYRHSLOC (Rhs, 0).end;        \
+     }                                                                 \
+ while (false)
+#endif
+
 /* Suppress unused-variable warnings by "using" E.  */
 #define YYUSE(e) ((void) (e))
 
@@ -168,14 +186,10 @@
 #define YYRECOVERING()  (!!yyerrstatus_)
 
 
-/* Line 380 of lalr1.cc  */
-#line 1 "[Bison:b4_percent_define_default]"
-
 namespace zorba {
 
-/* Line 380 of lalr1.cc  */
-#line 178 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-#if YYERROR_VERBOSE
+/* Line 382 of lalr1.cc  */
+#line 193 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
 
   /* Return YYSTR after stripping away unnecessary quotes and
      backslashes, so that it's suitable for yyerror.  The heuristic is
@@ -214,7 +228,6 @@
     return yystr;
   }
 
-#endif
 
   /// Build a parser object.
   xquery_parser::xquery_parser (xquery_driver& driver_yyarg)
@@ -274,2417 +287,2426 @@
 
     switch (yytype)
       {
-        case 109: /* "\"'DECIMAL'\"" */
+        case 110: /* "\"'DECIMAL'\"" */
 
 /* Line 480 of lalr1.cc  */
-#line 874 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+#line 876 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
 	{ delete (yyvaluep->decval); };
 
 /* Line 480 of lalr1.cc  */
-#line 285 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
+#line 298 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
 	break;
-      case 123: /* "\"'DOUBLE'\"" */
+      case 124: /* "\"'DOUBLE'\"" */
 
 /* Line 480 of lalr1.cc  */
-#line 873 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+#line 875 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
 	{ delete (yyvaluep->dval); };
 
 /* Line 480 of lalr1.cc  */
-#line 294 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
+#line 307 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
 	break;
-      case 148: /* "\"'INTEGER'\"" */
+      case 149: /* "\"'INTEGER'\"" */
 
 /* Line 480 of lalr1.cc  */
-#line 872 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+#line 874 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
 	{ delete (yyvaluep->ival); };
 
 /* Line 480 of lalr1.cc  */
-#line 303 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 326: /* "VersionDecl" */
-
-/* Line 480 of lalr1.cc  */
-#line 888 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 312 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 327: /* "MainModule" */
-
-/* Line 480 of lalr1.cc  */
-#line 888 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 321 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 328: /* "LibraryModule" */
-
-/* Line 480 of lalr1.cc  */
-#line 888 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 330 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 329: /* "ModuleDecl" */
-
-/* Line 480 of lalr1.cc  */
-#line 888 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 339 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 330: /* "SIND_DeclList" */
-
-/* Line 480 of lalr1.cc  */
-#line 888 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 348 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 331: /* "SIND_Decl" */
-
-/* Line 480 of lalr1.cc  */
-#line 888 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 357 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 332: /* "Setter" */
-
-/* Line 480 of lalr1.cc  */
-#line 888 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 366 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 333: /* "BoundarySpaceDecl" */
-
-/* Line 480 of lalr1.cc  */
-#line 888 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 375 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 334: /* "DefaultCollationDecl" */
-
-/* Line 480 of lalr1.cc  */
-#line 888 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 384 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 335: /* "BaseURIDecl" */
-
-/* Line 480 of lalr1.cc  */
-#line 888 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 393 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 336: /* "ConstructionDecl" */
-
-/* Line 480 of lalr1.cc  */
-#line 888 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 402 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 337: /* "OrderingModeDecl" */
-
-/* Line 480 of lalr1.cc  */
-#line 888 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 411 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 338: /* "EmptyOrderDecl" */
-
-/* Line 480 of lalr1.cc  */
-#line 888 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 420 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 339: /* "CopyNamespacesDecl" */
-
-/* Line 480 of lalr1.cc  */
-#line 888 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 429 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 340: /* "Import" */
-
-/* Line 480 of lalr1.cc  */
-#line 888 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 438 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 341: /* "SchemaImport" */
-
-/* Line 480 of lalr1.cc  */
-#line 888 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 447 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 342: /* "URILiteralList" */
-
-/* Line 480 of lalr1.cc  */
-#line 888 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 456 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 343: /* "SchemaPrefix" */
-
-/* Line 480 of lalr1.cc  */
-#line 888 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 465 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 344: /* "ModuleImport" */
-
-/* Line 480 of lalr1.cc  */
-#line 888 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 474 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 345: /* "NamespaceDecl" */
-
-/* Line 480 of lalr1.cc  */
-#line 888 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 483 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 346: /* "DefaultNamespaceDecl" */
-
-/* Line 480 of lalr1.cc  */
-#line 888 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 492 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 347: /* "VFO_DeclList" */
-
-/* Line 480 of lalr1.cc  */
-#line 888 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 501 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 348: /* "VFO_Decl" */
-
-/* Line 480 of lalr1.cc  */
-#line 888 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 510 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 349: /* "DecimalFormatDecl" */
-
-/* Line 480 of lalr1.cc  */
-#line 888 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 519 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 350: /* "DecimalFormatParamList" */
-
-/* Line 480 of lalr1.cc  */
-#line 897 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+#line 316 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 327: /* "VersionDecl" */
+
+/* Line 480 of lalr1.cc  */
+#line 890 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 325 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 328: /* "MainModule" */
+
+/* Line 480 of lalr1.cc  */
+#line 890 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 334 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 329: /* "LibraryModule" */
+
+/* Line 480 of lalr1.cc  */
+#line 890 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 343 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 330: /* "ModuleDecl" */
+
+/* Line 480 of lalr1.cc  */
+#line 890 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 352 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 331: /* "SIND_DeclList" */
+
+/* Line 480 of lalr1.cc  */
+#line 890 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 361 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 332: /* "SIND_Decl" */
+
+/* Line 480 of lalr1.cc  */
+#line 890 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 370 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 333: /* "Setter" */
+
+/* Line 480 of lalr1.cc  */
+#line 890 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 379 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 334: /* "BoundarySpaceDecl" */
+
+/* Line 480 of lalr1.cc  */
+#line 890 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 388 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 335: /* "DefaultCollationDecl" */
+
+/* Line 480 of lalr1.cc  */
+#line 890 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 397 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 336: /* "BaseURIDecl" */
+
+/* Line 480 of lalr1.cc  */
+#line 890 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 406 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 337: /* "ConstructionDecl" */
+
+/* Line 480 of lalr1.cc  */
+#line 890 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 415 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 338: /* "OrderingModeDecl" */
+
+/* Line 480 of lalr1.cc  */
+#line 890 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 424 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 339: /* "EmptyOrderDecl" */
+
+/* Line 480 of lalr1.cc  */
+#line 890 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 433 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 340: /* "CopyNamespacesDecl" */
+
+/* Line 480 of lalr1.cc  */
+#line 890 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 442 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 341: /* "Import" */
+
+/* Line 480 of lalr1.cc  */
+#line 890 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 451 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 342: /* "SchemaImport" */
+
+/* Line 480 of lalr1.cc  */
+#line 890 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 460 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 343: /* "URILiteralList" */
+
+/* Line 480 of lalr1.cc  */
+#line 890 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 469 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 344: /* "SchemaPrefix" */
+
+/* Line 480 of lalr1.cc  */
+#line 890 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 478 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 345: /* "ModuleImport" */
+
+/* Line 480 of lalr1.cc  */
+#line 890 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 487 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 346: /* "NamespaceDecl" */
+
+/* Line 480 of lalr1.cc  */
+#line 890 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 496 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 347: /* "DefaultNamespaceDecl" */
+
+/* Line 480 of lalr1.cc  */
+#line 890 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 505 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 348: /* "VFO_DeclList" */
+
+/* Line 480 of lalr1.cc  */
+#line 890 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 514 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 349: /* "VFO_Decl" */
+
+/* Line 480 of lalr1.cc  */
+#line 890 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 523 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 350: /* "DecimalFormatDecl" */
+
+/* Line 480 of lalr1.cc  */
+#line 890 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 532 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 351: /* "DecimalFormatParamList" */
+
+/* Line 480 of lalr1.cc  */
+#line 899 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
 	{ delete (yyvaluep->vstrpair); };
 
 /* Line 480 of lalr1.cc  */
-#line 528 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
+#line 541 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
 	break;
-      case 351: /* "DecimalFormatParam" */
+      case 352: /* "DecimalFormatParam" */
 
 /* Line 480 of lalr1.cc  */
-#line 897 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+#line 899 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
 	{ delete (yyvaluep->strpair); };
 
 /* Line 480 of lalr1.cc  */
-#line 537 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 353: /* "OptionDecl" */
-
-/* Line 480 of lalr1.cc  */
-#line 888 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 546 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 354: /* "FTOptionDecl" */
-
-/* Line 480 of lalr1.cc  */
-#line 891 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 555 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 355: /* "CtxItemDecl" */
-
-/* Line 480 of lalr1.cc  */
-#line 888 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 564 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 356: /* "CtxItemDecl2" */
-
-/* Line 480 of lalr1.cc  */
-#line 888 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 573 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 357: /* "CtxItemDecl3" */
-
-/* Line 480 of lalr1.cc  */
-#line 888 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 582 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 358: /* "CtxItemDecl4" */
-
-/* Line 480 of lalr1.cc  */
-#line 888 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 591 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 359: /* "VarDecl" */
-
-/* Line 480 of lalr1.cc  */
-#line 888 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 600 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 360: /* "VarNameAndType" */
-
-/* Line 480 of lalr1.cc  */
-#line 897 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+#line 550 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 354: /* "OptionDecl" */
+
+/* Line 480 of lalr1.cc  */
+#line 890 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 559 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 355: /* "FTOptionDecl" */
+
+/* Line 480 of lalr1.cc  */
+#line 893 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 568 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 356: /* "CtxItemDecl" */
+
+/* Line 480 of lalr1.cc  */
+#line 890 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 577 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 357: /* "CtxItemDecl2" */
+
+/* Line 480 of lalr1.cc  */
+#line 890 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 586 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 358: /* "CtxItemDecl3" */
+
+/* Line 480 of lalr1.cc  */
+#line 890 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 595 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 359: /* "CtxItemDecl4" */
+
+/* Line 480 of lalr1.cc  */
+#line 890 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 604 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 360: /* "VarDecl" */
+
+/* Line 480 of lalr1.cc  */
+#line 890 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 613 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 361: /* "VarNameAndType" */
+
+/* Line 480 of lalr1.cc  */
+#line 899 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
 	{ delete (yyvaluep->varnametype); };
 
 /* Line 480 of lalr1.cc  */
-#line 609 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 361: /* "AnnotationList" */
-
-/* Line 480 of lalr1.cc  */
-#line 888 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 618 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 362: /* "Annotation" */
-
-/* Line 480 of lalr1.cc  */
-#line 888 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 627 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 363: /* "AnnotationLiteralList" */
-
-/* Line 480 of lalr1.cc  */
-#line 888 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 636 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 364: /* "FunctionDecl" */
-
-/* Line 480 of lalr1.cc  */
-#line 888 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 645 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 365: /* "FunctionDecl2" */
-
-/* Line 480 of lalr1.cc  */
-#line 888 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 654 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 366: /* "FunctionDeclSimple" */
-
-/* Line 480 of lalr1.cc  */
-#line 888 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 663 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 367: /* "FunctionDeclUpdating" */
-
-/* Line 480 of lalr1.cc  */
-#line 888 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 672 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 368: /* "FunctionSig" */
-
-/* Line 480 of lalr1.cc  */
-#line 897 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+#line 622 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 362: /* "AnnotationList" */
+
+/* Line 480 of lalr1.cc  */
+#line 890 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 631 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 363: /* "Annotation" */
+
+/* Line 480 of lalr1.cc  */
+#line 890 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 640 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 364: /* "AnnotationLiteralList" */
+
+/* Line 480 of lalr1.cc  */
+#line 890 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 649 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 365: /* "FunctionDecl" */
+
+/* Line 480 of lalr1.cc  */
+#line 890 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 658 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 366: /* "FunctionDecl2" */
+
+/* Line 480 of lalr1.cc  */
+#line 890 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 667 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 367: /* "FunctionDeclSimple" */
+
+/* Line 480 of lalr1.cc  */
+#line 890 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 676 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 368: /* "FunctionDeclUpdating" */
+
+/* Line 480 of lalr1.cc  */
+#line 890 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 685 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 369: /* "FunctionSig" */
+
+/* Line 480 of lalr1.cc  */
+#line 899 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
 	{ delete (yyvaluep->fnsig); };
 
 /* Line 480 of lalr1.cc  */
-#line 681 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 369: /* "ParamList" */
-
-/* Line 480 of lalr1.cc  */
-#line 888 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 690 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 370: /* "Param" */
-
-/* Line 480 of lalr1.cc  */
-#line 888 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 699 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 371: /* "CollectionDecl" */
-
-/* Line 480 of lalr1.cc  */
-#line 888 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 708 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 373: /* "IndexDecl" */
-
-/* Line 480 of lalr1.cc  */
-#line 888 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 717 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 374: /* "IndexKeyList" */
-
-/* Line 480 of lalr1.cc  */
-#line 888 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 726 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 375: /* "IndexKeySpec" */
-
-/* Line 480 of lalr1.cc  */
-#line 888 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 735 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 376: /* "IntegrityConstraintDecl" */
-
-/* Line 480 of lalr1.cc  */
-#line 888 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 744 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 377: /* "QueryBody" */
-
-/* Line 480 of lalr1.cc  */
-#line 894 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 753 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 378: /* "StatementsAndOptionalExprTop" */
-
-/* Line 480 of lalr1.cc  */
-#line 894 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 762 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 379: /* "StatementsAndOptionalExpr" */
-
-/* Line 480 of lalr1.cc  */
-#line 894 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 771 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 380: /* "StatementsAndExpr" */
-
-/* Line 480 of lalr1.cc  */
-#line 894 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 780 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 381: /* "Statements" */
-
-/* Line 480 of lalr1.cc  */
-#line 894 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 789 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 382: /* "Statement" */
-
-/* Line 480 of lalr1.cc  */
-#line 894 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 798 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 383: /* "BlockStatement" */
-
-/* Line 480 of lalr1.cc  */
-#line 894 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 807 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 384: /* "BlockExpr" */
-
-/* Line 480 of lalr1.cc  */
-#line 894 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 816 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 385: /* "EnclosedStatementsAndOptionalExpr" */
-
-/* Line 480 of lalr1.cc  */
-#line 894 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 825 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 386: /* "VarDeclStatement" */
-
-/* Line 480 of lalr1.cc  */
-#line 894 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 834 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 389: /* "AssignStatement" */
-
-/* Line 480 of lalr1.cc  */
-#line 894 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 843 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 390: /* "ApplyStatement" */
-
-/* Line 480 of lalr1.cc  */
-#line 894 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 852 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 391: /* "ExitStatement" */
-
-/* Line 480 of lalr1.cc  */
-#line 894 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 861 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 392: /* "WhileStatement" */
-
-/* Line 480 of lalr1.cc  */
-#line 894 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 870 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 393: /* "FlowCtlStatement" */
-
-/* Line 480 of lalr1.cc  */
-#line 894 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 879 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 394: /* "FLWORStatement" */
-
-/* Line 480 of lalr1.cc  */
-#line 894 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 888 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 395: /* "ReturnStatement" */
-
-/* Line 480 of lalr1.cc  */
-#line 894 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 897 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 396: /* "IfStatement" */
-
-/* Line 480 of lalr1.cc  */
-#line 894 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 906 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 397: /* "TryStatement" */
-
-/* Line 480 of lalr1.cc  */
-#line 894 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 915 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 398: /* "CatchListStatement" */
-
-/* Line 480 of lalr1.cc  */
-#line 894 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 924 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 399: /* "CatchStatement" */
-
-/* Line 480 of lalr1.cc  */
-#line 894 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 933 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 400: /* "Expr" */
-
-/* Line 480 of lalr1.cc  */
-#line 894 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 942 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 401: /* "ExprSingle" */
-
-/* Line 480 of lalr1.cc  */
-#line 894 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 951 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 402: /* "ExprSimple" */
-
-/* Line 480 of lalr1.cc  */
-#line 894 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 960 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 403: /* "FLWORExpr" */
-
-/* Line 480 of lalr1.cc  */
-#line 894 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 969 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 404: /* "ReturnExpr" */
-
-/* Line 480 of lalr1.cc  */
-#line 894 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 978 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 407: /* "FLWORWinCond" */
-
-/* Line 480 of lalr1.cc  */
-#line 888 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 987 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 408: /* "WindowClause" */
-
-/* Line 480 of lalr1.cc  */
-#line 888 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 996 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 409: /* "CountClause" */
-
-/* Line 480 of lalr1.cc  */
-#line 888 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1005 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 410: /* "ForLetWinClause" */
-
-/* Line 480 of lalr1.cc  */
-#line 888 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1014 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 412: /* "FLWORClauseList" */
-
-/* Line 480 of lalr1.cc  */
-#line 888 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1023 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 413: /* "ForClause" */
-
-/* Line 480 of lalr1.cc  */
-#line 888 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1032 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 414: /* "VarInDeclList" */
-
-/* Line 480 of lalr1.cc  */
-#line 888 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1041 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 415: /* "VarInDecl" */
-
-/* Line 480 of lalr1.cc  */
-#line 888 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1050 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 416: /* "PositionalVar" */
-
-/* Line 480 of lalr1.cc  */
-#line 888 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1059 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 417: /* "FTScoreVar" */
-
-/* Line 480 of lalr1.cc  */
-#line 891 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1068 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 418: /* "LetClause" */
-
-/* Line 480 of lalr1.cc  */
-#line 888 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1077 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 419: /* "VarGetsDeclList" */
-
-/* Line 480 of lalr1.cc  */
-#line 888 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1086 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 420: /* "VarGetsDecl" */
-
-/* Line 480 of lalr1.cc  */
-#line 888 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1095 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 421: /* "WindowVarDecl" */
-
-/* Line 480 of lalr1.cc  */
-#line 888 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1104 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 422: /* "WindowVars" */
-
-/* Line 480 of lalr1.cc  */
-#line 888 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1113 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 423: /* "WindowVars3" */
-
-/* Line 480 of lalr1.cc  */
-#line 888 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1122 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 424: /* "WindowVars2" */
-
-/* Line 480 of lalr1.cc  */
-#line 888 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1131 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 425: /* "WhereClause" */
-
-/* Line 480 of lalr1.cc  */
-#line 888 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1140 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 426: /* "GroupByClause" */
-
-/* Line 480 of lalr1.cc  */
-#line 888 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1149 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 427: /* "GroupSpecList" */
-
-/* Line 480 of lalr1.cc  */
-#line 888 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1158 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 428: /* "GroupSpec" */
-
-/* Line 480 of lalr1.cc  */
-#line 888 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1167 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 429: /* "GroupCollationSpec" */
-
-/* Line 480 of lalr1.cc  */
-#line 888 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1176 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 430: /* "OrderByClause" */
-
-/* Line 480 of lalr1.cc  */
-#line 888 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1185 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 431: /* "OrderSpecList" */
-
-/* Line 480 of lalr1.cc  */
-#line 888 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1194 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 432: /* "OrderSpec" */
-
-/* Line 480 of lalr1.cc  */
-#line 888 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1203 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 433: /* "OrderModifier" */
-
-/* Line 480 of lalr1.cc  */
-#line 888 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1212 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 434: /* "OrderDirSpec" */
-
-/* Line 480 of lalr1.cc  */
-#line 888 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1221 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 435: /* "OrderEmptySpec" */
-
-/* Line 480 of lalr1.cc  */
-#line 888 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1230 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 436: /* "OrderCollationSpec" */
-
-/* Line 480 of lalr1.cc  */
-#line 888 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1239 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 437: /* "QuantifiedExpr" */
-
-/* Line 480 of lalr1.cc  */
-#line 894 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1248 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 438: /* "QVarInDeclList" */
-
-/* Line 480 of lalr1.cc  */
-#line 888 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1257 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 439: /* "QVarInDecl" */
-
-/* Line 480 of lalr1.cc  */
-#line 888 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1266 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 440: /* "SwitchExpr" */
-
-/* Line 480 of lalr1.cc  */
-#line 894 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1275 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 441: /* "SwitchCaseClauseList" */
-
-/* Line 480 of lalr1.cc  */
-#line 888 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1284 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 442: /* "SwitchCaseClause" */
-
-/* Line 480 of lalr1.cc  */
-#line 888 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1293 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 443: /* "SwitchCaseOperandList" */
-
-/* Line 480 of lalr1.cc  */
-#line 888 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1302 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 444: /* "SwitchStatement" */
-
-/* Line 480 of lalr1.cc  */
-#line 894 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1311 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 447: /* "TypeswitchExpr" */
-
-/* Line 480 of lalr1.cc  */
-#line 894 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1320 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 448: /* "TypeswitchStatement" */
-
-/* Line 480 of lalr1.cc  */
-#line 894 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1329 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 449: /* "CaseClauseList" */
-
-/* Line 480 of lalr1.cc  */
-#line 888 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1338 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 450: /* "CaseClause" */
-
-/* Line 480 of lalr1.cc  */
-#line 888 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1347 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 453: /* "IfExpr" */
-
-/* Line 480 of lalr1.cc  */
-#line 894 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1356 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 454: /* "OrExpr" */
-
-/* Line 480 of lalr1.cc  */
-#line 894 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1365 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 455: /* "AndExpr" */
-
-/* Line 480 of lalr1.cc  */
-#line 894 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1374 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 456: /* "ComparisonExpr" */
-
-/* Line 480 of lalr1.cc  */
-#line 894 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1383 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 458: /* "FTContainsExpr" */
-
-/* Line 480 of lalr1.cc  */
-#line 894 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1392 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 459: /* "opt_FTIgnoreOption" */
-
-/* Line 480 of lalr1.cc  */
-#line 891 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1401 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 460: /* "RangeExpr" */
-
-/* Line 480 of lalr1.cc  */
-#line 894 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1410 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 461: /* "AdditiveExpr" */
-
-/* Line 480 of lalr1.cc  */
-#line 894 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1419 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 462: /* "MultiplicativeExpr" */
-
-/* Line 480 of lalr1.cc  */
-#line 894 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1428 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 463: /* "UnionExpr" */
-
-/* Line 480 of lalr1.cc  */
-#line 894 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1437 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 464: /* "IntersectExceptExpr" */
-
-/* Line 480 of lalr1.cc  */
-#line 894 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1446 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 465: /* "InstanceofExpr" */
-
-/* Line 480 of lalr1.cc  */
-#line 894 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1455 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 466: /* "TreatExpr" */
-
-/* Line 480 of lalr1.cc  */
-#line 894 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1464 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 467: /* "CastableExpr" */
-
-/* Line 480 of lalr1.cc  */
-#line 894 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1473 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 468: /* "CastExpr" */
-
-/* Line 480 of lalr1.cc  */
-#line 894 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1482 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 469: /* "UnaryExpr" */
-
-/* Line 480 of lalr1.cc  */
-#line 894 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1491 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 470: /* "SignList" */
-
-/* Line 480 of lalr1.cc  */
-#line 888 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1500 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 471: /* "ValueExpr" */
-
-/* Line 480 of lalr1.cc  */
-#line 894 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1509 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 472: /* "ValueComp" */
-
-/* Line 480 of lalr1.cc  */
-#line 888 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1518 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 473: /* "NodeComp" */
-
-/* Line 480 of lalr1.cc  */
-#line 888 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1527 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 474: /* "ValidateExpr" */
-
-/* Line 480 of lalr1.cc  */
-#line 894 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1536 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 475: /* "ExtensionExpr" */
-
-/* Line 480 of lalr1.cc  */
-#line 894 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1545 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 476: /* "Pragma_list" */
-
-/* Line 480 of lalr1.cc  */
-#line 888 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1554 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 477: /* "Pragma" */
-
-/* Line 480 of lalr1.cc  */
-#line 888 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1563 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 478: /* "PathExpr" */
-
-/* Line 480 of lalr1.cc  */
-#line 894 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1572 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 480: /* "RelativePathExpr" */
-
-/* Line 480 of lalr1.cc  */
-#line 894 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1581 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 481: /* "StepExpr" */
-
-/* Line 480 of lalr1.cc  */
-#line 894 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1590 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 482: /* "AxisStep" */
-
-/* Line 480 of lalr1.cc  */
-#line 894 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1599 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 483: /* "ForwardStep" */
-
-/* Line 480 of lalr1.cc  */
-#line 888 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1608 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 484: /* "ForwardAxis" */
-
-/* Line 480 of lalr1.cc  */
-#line 888 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1617 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 485: /* "AbbrevForwardStep" */
-
-/* Line 480 of lalr1.cc  */
-#line 888 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1626 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 486: /* "ReverseStep" */
-
-/* Line 480 of lalr1.cc  */
-#line 888 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1635 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 487: /* "ReverseAxis" */
-
-/* Line 480 of lalr1.cc  */
-#line 888 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1644 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 488: /* "NodeTest" */
-
-/* Line 480 of lalr1.cc  */
-#line 888 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1653 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 489: /* "NameTest" */
-
-/* Line 480 of lalr1.cc  */
-#line 888 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1662 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 490: /* "Wildcard" */
-
-/* Line 480 of lalr1.cc  */
-#line 888 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1671 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 491: /* "FilterExpr" */
-
-/* Line 480 of lalr1.cc  */
-#line 894 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1680 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 492: /* "PredicateList" */
-
-/* Line 480 of lalr1.cc  */
-#line 888 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1689 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 493: /* "Predicate" */
-
-/* Line 480 of lalr1.cc  */
-#line 894 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1698 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 494: /* "PrimaryExpr" */
-
-/* Line 480 of lalr1.cc  */
-#line 894 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1707 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 495: /* "Literal" */
-
-/* Line 480 of lalr1.cc  */
-#line 894 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1716 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 496: /* "NumericLiteral" */
-
-/* Line 480 of lalr1.cc  */
-#line 894 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1725 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 497: /* "VarRef" */
-
-/* Line 480 of lalr1.cc  */
-#line 894 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1734 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 498: /* "ParenthesizedExpr" */
-
-/* Line 480 of lalr1.cc  */
-#line 894 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1743 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 499: /* "ContextItemExpr" */
-
-/* Line 480 of lalr1.cc  */
-#line 894 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1752 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 500: /* "OrderedExpr" */
-
-/* Line 480 of lalr1.cc  */
-#line 894 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1761 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 501: /* "UnorderedExpr" */
-
-/* Line 480 of lalr1.cc  */
-#line 894 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1770 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 502: /* "FunctionCall" */
-
-/* Line 480 of lalr1.cc  */
-#line 894 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1779 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 503: /* "ArgList" */
-
-/* Line 480 of lalr1.cc  */
-#line 888 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1788 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 504: /* "Constructor" */
-
-/* Line 480 of lalr1.cc  */
-#line 894 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1797 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 505: /* "DirectConstructor" */
-
-/* Line 480 of lalr1.cc  */
-#line 894 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1806 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 506: /* "DirElemConstructor" */
-
-/* Line 480 of lalr1.cc  */
-#line 894 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1815 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 507: /* "DirElemContentList" */
-
-/* Line 480 of lalr1.cc  */
-#line 888 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1824 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 508: /* "DirAttributeList" */
-
-/* Line 480 of lalr1.cc  */
-#line 888 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1833 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 509: /* "DirAttr" */
-
-/* Line 480 of lalr1.cc  */
-#line 888 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1842 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 511: /* "DirAttributeValue" */
-
-/* Line 480 of lalr1.cc  */
-#line 888 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1851 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 512: /* "opt_QuoteAttrContentList" */
-
-/* Line 480 of lalr1.cc  */
-#line 888 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1860 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 513: /* "QuoteAttrContentList" */
-
-/* Line 480 of lalr1.cc  */
-#line 888 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1869 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 514: /* "opt_AposAttrContentList" */
-
-/* Line 480 of lalr1.cc  */
-#line 888 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1878 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 515: /* "AposAttrContentList" */
-
-/* Line 480 of lalr1.cc  */
-#line 888 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1887 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 516: /* "QuoteAttrValueContent" */
-
-/* Line 480 of lalr1.cc  */
-#line 888 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1896 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 517: /* "AposAttrValueContent" */
-
-/* Line 480 of lalr1.cc  */
-#line 888 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1905 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 518: /* "DirElemContent" */
-
-/* Line 480 of lalr1.cc  */
-#line 894 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1914 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 519: /* "CommonContent" */
-
-/* Line 480 of lalr1.cc  */
-#line 894 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1923 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 520: /* "DirCommentConstructor" */
-
-/* Line 480 of lalr1.cc  */
-#line 894 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1932 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 521: /* "DirPIConstructor" */
-
-/* Line 480 of lalr1.cc  */
-#line 894 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1941 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 522: /* "CDataSection" */
-
-/* Line 480 of lalr1.cc  */
-#line 894 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1950 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 523: /* "ComputedConstructor" */
-
-/* Line 480 of lalr1.cc  */
-#line 894 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1959 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 524: /* "CompDocConstructor" */
-
-/* Line 480 of lalr1.cc  */
-#line 894 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1968 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 525: /* "CompElemConstructor" */
-
-/* Line 480 of lalr1.cc  */
-#line 894 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1977 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 526: /* "CompAttrConstructor" */
-
-/* Line 480 of lalr1.cc  */
-#line 894 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1986 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 527: /* "CompTextConstructor" */
-
-/* Line 480 of lalr1.cc  */
-#line 894 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1995 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 528: /* "CompCommentConstructor" */
-
-/* Line 480 of lalr1.cc  */
-#line 894 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2004 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 529: /* "CompPIConstructor" */
-
-/* Line 480 of lalr1.cc  */
-#line 894 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2013 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 530: /* "SingleType" */
-
-/* Line 480 of lalr1.cc  */
-#line 888 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2022 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 531: /* "TypeDeclaration" */
-
-/* Line 480 of lalr1.cc  */
-#line 888 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2031 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 532: /* "SequenceType" */
-
-/* Line 480 of lalr1.cc  */
-#line 888 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2040 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 533: /* "OccurrenceIndicator" */
-
-/* Line 480 of lalr1.cc  */
-#line 888 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2049 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 534: /* "ItemType" */
-
-/* Line 480 of lalr1.cc  */
-#line 888 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2058 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 535: /* "TypeList" */
-
-/* Line 480 of lalr1.cc  */
-#line 888 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2067 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 536: /* "AtomicType" */
-
-/* Line 480 of lalr1.cc  */
-#line 888 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2076 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 537: /* "KindTest" */
-
-/* Line 480 of lalr1.cc  */
-#line 888 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2085 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 538: /* "AnyKindTest" */
-
-/* Line 480 of lalr1.cc  */
-#line 888 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2094 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 539: /* "DocumentTest" */
-
-/* Line 480 of lalr1.cc  */
-#line 888 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2103 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 540: /* "TextTest" */
-
-/* Line 480 of lalr1.cc  */
-#line 888 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2112 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 541: /* "CommentTest" */
-
-/* Line 480 of lalr1.cc  */
-#line 888 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2121 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 542: /* "PITest" */
-
-/* Line 480 of lalr1.cc  */
-#line 888 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2130 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 543: /* "AttributeTest" */
-
-/* Line 480 of lalr1.cc  */
-#line 888 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2139 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 544: /* "SchemaAttributeTest" */
-
-/* Line 480 of lalr1.cc  */
-#line 888 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2148 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 545: /* "ElementTest" */
-
-/* Line 480 of lalr1.cc  */
-#line 888 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2157 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 546: /* "SchemaElementTest" */
-
-/* Line 480 of lalr1.cc  */
-#line 888 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2166 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 547: /* "TypeName" */
-
-/* Line 480 of lalr1.cc  */
-#line 888 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2175 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 548: /* "TypeName_WITH_HOOK" */
-
-/* Line 480 of lalr1.cc  */
-#line 888 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2184 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 549: /* "StringLiteral" */
-
-/* Line 480 of lalr1.cc  */
-#line 894 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2193 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 554: /* "AnyFunctionTest" */
-
-/* Line 480 of lalr1.cc  */
-#line 888 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2202 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 555: /* "TypedFunctionTest" */
-
-/* Line 480 of lalr1.cc  */
-#line 888 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2211 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 558: /* "InsertExpr" */
-
-/* Line 480 of lalr1.cc  */
-#line 894 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2220 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 559: /* "DeleteExpr" */
-
-/* Line 480 of lalr1.cc  */
-#line 894 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2229 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 560: /* "ReplaceExpr" */
-
-/* Line 480 of lalr1.cc  */
-#line 894 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2238 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 561: /* "RenameExpr" */
-
-/* Line 480 of lalr1.cc  */
-#line 894 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2247 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 562: /* "TransformExpr" */
-
-/* Line 480 of lalr1.cc  */
-#line 894 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2256 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 563: /* "VarNameList" */
-
-/* Line 480 of lalr1.cc  */
-#line 894 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2265 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 564: /* "VarNameDecl" */
-
-/* Line 480 of lalr1.cc  */
-#line 894 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2274 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 565: /* "TryExpr" */
-
-/* Line 480 of lalr1.cc  */
-#line 894 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2283 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 566: /* "CatchListExpr" */
-
-/* Line 480 of lalr1.cc  */
-#line 894 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2292 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 567: /* "CatchExpr" */
-
-/* Line 480 of lalr1.cc  */
-#line 894 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2301 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 568: /* "BracedExpr" */
-
-/* Line 480 of lalr1.cc  */
-#line 894 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2310 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 569: /* "NameTestList" */
-
-/* Line 480 of lalr1.cc  */
-#line 897 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+#line 694 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 370: /* "ParamList" */
+
+/* Line 480 of lalr1.cc  */
+#line 890 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 703 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 371: /* "Param" */
+
+/* Line 480 of lalr1.cc  */
+#line 890 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 712 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 372: /* "CollectionDecl" */
+
+/* Line 480 of lalr1.cc  */
+#line 890 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 721 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 374: /* "IndexDecl" */
+
+/* Line 480 of lalr1.cc  */
+#line 890 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 730 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 375: /* "IndexKeyList" */
+
+/* Line 480 of lalr1.cc  */
+#line 890 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 739 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 376: /* "IndexKeySpec" */
+
+/* Line 480 of lalr1.cc  */
+#line 890 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 748 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 377: /* "IntegrityConstraintDecl" */
+
+/* Line 480 of lalr1.cc  */
+#line 890 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 757 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 378: /* "QueryBody" */
+
+/* Line 480 of lalr1.cc  */
+#line 896 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 766 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 379: /* "StatementsAndOptionalExprTop" */
+
+/* Line 480 of lalr1.cc  */
+#line 896 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 775 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 380: /* "StatementsAndOptionalExpr" */
+
+/* Line 480 of lalr1.cc  */
+#line 896 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 784 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 381: /* "StatementsAndExpr" */
+
+/* Line 480 of lalr1.cc  */
+#line 896 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 793 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 382: /* "Statements" */
+
+/* Line 480 of lalr1.cc  */
+#line 896 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 802 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 383: /* "Statement" */
+
+/* Line 480 of lalr1.cc  */
+#line 896 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 811 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 384: /* "BlockStatement" */
+
+/* Line 480 of lalr1.cc  */
+#line 896 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 820 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 385: /* "BlockExpr" */
+
+/* Line 480 of lalr1.cc  */
+#line 896 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 829 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 386: /* "EnclosedStatementsAndOptionalExpr" */
+
+/* Line 480 of lalr1.cc  */
+#line 896 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 838 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 387: /* "VarDeclStatement" */
+
+/* Line 480 of lalr1.cc  */
+#line 896 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 847 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 390: /* "AssignStatement" */
+
+/* Line 480 of lalr1.cc  */
+#line 896 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 856 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 391: /* "ApplyStatement" */
+
+/* Line 480 of lalr1.cc  */
+#line 896 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 865 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 392: /* "ExitStatement" */
+
+/* Line 480 of lalr1.cc  */
+#line 896 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 874 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 393: /* "WhileStatement" */
+
+/* Line 480 of lalr1.cc  */
+#line 896 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 883 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 394: /* "FlowCtlStatement" */
+
+/* Line 480 of lalr1.cc  */
+#line 896 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 892 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 395: /* "FLWORStatement" */
+
+/* Line 480 of lalr1.cc  */
+#line 896 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 901 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 396: /* "ReturnStatement" */
+
+/* Line 480 of lalr1.cc  */
+#line 896 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 910 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 397: /* "IfStatement" */
+
+/* Line 480 of lalr1.cc  */
+#line 896 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 919 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 398: /* "TryStatement" */
+
+/* Line 480 of lalr1.cc  */
+#line 896 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 928 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 399: /* "CatchListStatement" */
+
+/* Line 480 of lalr1.cc  */
+#line 896 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 937 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 400: /* "CatchStatement" */
+
+/* Line 480 of lalr1.cc  */
+#line 896 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 946 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 401: /* "Expr" */
+
+/* Line 480 of lalr1.cc  */
+#line 896 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 955 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 402: /* "ExprSingle" */
+
+/* Line 480 of lalr1.cc  */
+#line 896 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 964 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 403: /* "ExprSimple" */
+
+/* Line 480 of lalr1.cc  */
+#line 896 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 973 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 404: /* "FLWORExpr" */
+
+/* Line 480 of lalr1.cc  */
+#line 896 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 982 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 405: /* "ReturnExpr" */
+
+/* Line 480 of lalr1.cc  */
+#line 896 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 991 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 408: /* "FLWORWinCond" */
+
+/* Line 480 of lalr1.cc  */
+#line 890 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1000 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 409: /* "WindowClause" */
+
+/* Line 480 of lalr1.cc  */
+#line 890 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1009 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 410: /* "CountClause" */
+
+/* Line 480 of lalr1.cc  */
+#line 890 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1018 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 411: /* "ForLetWinClause" */
+
+/* Line 480 of lalr1.cc  */
+#line 890 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1027 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 413: /* "FLWORClauseList" */
+
+/* Line 480 of lalr1.cc  */
+#line 890 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1036 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 414: /* "ForClause" */
+
+/* Line 480 of lalr1.cc  */
+#line 890 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1045 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 415: /* "VarInDeclList" */
+
+/* Line 480 of lalr1.cc  */
+#line 890 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1054 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 416: /* "VarInDecl" */
+
+/* Line 480 of lalr1.cc  */
+#line 890 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1063 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 417: /* "PositionalVar" */
+
+/* Line 480 of lalr1.cc  */
+#line 890 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1072 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 418: /* "FTScoreVar" */
+
+/* Line 480 of lalr1.cc  */
+#line 893 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1081 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 419: /* "LetClause" */
+
+/* Line 480 of lalr1.cc  */
+#line 890 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1090 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 420: /* "VarGetsDeclList" */
+
+/* Line 480 of lalr1.cc  */
+#line 890 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1099 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 421: /* "VarGetsDecl" */
+
+/* Line 480 of lalr1.cc  */
+#line 890 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1108 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 422: /* "WindowVarDecl" */
+
+/* Line 480 of lalr1.cc  */
+#line 890 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1117 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 423: /* "WindowVars" */
+
+/* Line 480 of lalr1.cc  */
+#line 890 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1126 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 424: /* "WindowVars3" */
+
+/* Line 480 of lalr1.cc  */
+#line 890 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1135 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 425: /* "WindowVars2" */
+
+/* Line 480 of lalr1.cc  */
+#line 890 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1144 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 426: /* "WhereClause" */
+
+/* Line 480 of lalr1.cc  */
+#line 890 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1153 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 427: /* "GroupByClause" */
+
+/* Line 480 of lalr1.cc  */
+#line 890 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1162 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 428: /* "GroupSpecList" */
+
+/* Line 480 of lalr1.cc  */
+#line 890 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1171 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 429: /* "GroupSpec" */
+
+/* Line 480 of lalr1.cc  */
+#line 890 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1180 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 430: /* "GroupCollationSpec" */
+
+/* Line 480 of lalr1.cc  */
+#line 890 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1189 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 431: /* "OrderByClause" */
+
+/* Line 480 of lalr1.cc  */
+#line 890 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1198 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 432: /* "OrderSpecList" */
+
+/* Line 480 of lalr1.cc  */
+#line 890 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1207 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 433: /* "OrderSpec" */
+
+/* Line 480 of lalr1.cc  */
+#line 890 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1216 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 434: /* "OrderModifier" */
+
+/* Line 480 of lalr1.cc  */
+#line 890 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1225 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 435: /* "OrderDirSpec" */
+
+/* Line 480 of lalr1.cc  */
+#line 890 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1234 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 436: /* "OrderEmptySpec" */
+
+/* Line 480 of lalr1.cc  */
+#line 890 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1243 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 437: /* "OrderCollationSpec" */
+
+/* Line 480 of lalr1.cc  */
+#line 890 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1252 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 438: /* "QuantifiedExpr" */
+
+/* Line 480 of lalr1.cc  */
+#line 896 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1261 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 439: /* "QVarInDeclList" */
+
+/* Line 480 of lalr1.cc  */
+#line 890 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1270 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 440: /* "QVarInDecl" */
+
+/* Line 480 of lalr1.cc  */
+#line 890 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1279 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 441: /* "SwitchExpr" */
+
+/* Line 480 of lalr1.cc  */
+#line 896 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1288 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 442: /* "SwitchCaseClauseList" */
+
+/* Line 480 of lalr1.cc  */
+#line 890 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1297 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 443: /* "SwitchCaseClause" */
+
+/* Line 480 of lalr1.cc  */
+#line 890 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1306 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 444: /* "SwitchCaseOperandList" */
+
+/* Line 480 of lalr1.cc  */
+#line 890 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1315 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 445: /* "SwitchStatement" */
+
+/* Line 480 of lalr1.cc  */
+#line 896 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1324 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 448: /* "TypeswitchExpr" */
+
+/* Line 480 of lalr1.cc  */
+#line 896 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1333 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 449: /* "TypeswitchStatement" */
+
+/* Line 480 of lalr1.cc  */
+#line 896 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1342 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 450: /* "CaseClauseList" */
+
+/* Line 480 of lalr1.cc  */
+#line 890 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1351 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 451: /* "CaseClause" */
+
+/* Line 480 of lalr1.cc  */
+#line 890 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1360 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 454: /* "IfExpr" */
+
+/* Line 480 of lalr1.cc  */
+#line 896 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1369 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 455: /* "OrExpr" */
+
+/* Line 480 of lalr1.cc  */
+#line 896 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1378 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 456: /* "AndExpr" */
+
+/* Line 480 of lalr1.cc  */
+#line 896 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1387 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 457: /* "ComparisonExpr" */
+
+/* Line 480 of lalr1.cc  */
+#line 896 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1396 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 459: /* "FTContainsExpr" */
+
+/* Line 480 of lalr1.cc  */
+#line 896 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1405 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 460: /* "StringConcatExpr" */
+
+/* Line 480 of lalr1.cc  */
+#line 896 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1414 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 461: /* "opt_FTIgnoreOption" */
+
+/* Line 480 of lalr1.cc  */
+#line 893 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1423 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 462: /* "RangeExpr" */
+
+/* Line 480 of lalr1.cc  */
+#line 896 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1432 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 463: /* "AdditiveExpr" */
+
+/* Line 480 of lalr1.cc  */
+#line 896 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1441 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 464: /* "MultiplicativeExpr" */
+
+/* Line 480 of lalr1.cc  */
+#line 896 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1450 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 465: /* "UnionExpr" */
+
+/* Line 480 of lalr1.cc  */
+#line 896 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1459 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 466: /* "IntersectExceptExpr" */
+
+/* Line 480 of lalr1.cc  */
+#line 896 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1468 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 467: /* "InstanceofExpr" */
+
+/* Line 480 of lalr1.cc  */
+#line 896 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1477 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 468: /* "TreatExpr" */
+
+/* Line 480 of lalr1.cc  */
+#line 896 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1486 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 469: /* "CastableExpr" */
+
+/* Line 480 of lalr1.cc  */
+#line 896 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1495 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 470: /* "CastExpr" */
+
+/* Line 480 of lalr1.cc  */
+#line 896 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1504 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 471: /* "UnaryExpr" */
+
+/* Line 480 of lalr1.cc  */
+#line 896 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1513 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 472: /* "SignList" */
+
+/* Line 480 of lalr1.cc  */
+#line 890 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1522 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 473: /* "ValueExpr" */
+
+/* Line 480 of lalr1.cc  */
+#line 896 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1531 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 474: /* "ValueComp" */
+
+/* Line 480 of lalr1.cc  */
+#line 890 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1540 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 475: /* "NodeComp" */
+
+/* Line 480 of lalr1.cc  */
+#line 890 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1549 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 476: /* "ValidateExpr" */
+
+/* Line 480 of lalr1.cc  */
+#line 896 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1558 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 477: /* "ExtensionExpr" */
+
+/* Line 480 of lalr1.cc  */
+#line 896 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1567 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 478: /* "Pragma_list" */
+
+/* Line 480 of lalr1.cc  */
+#line 890 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1576 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 479: /* "Pragma" */
+
+/* Line 480 of lalr1.cc  */
+#line 890 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1585 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 480: /* "PathExpr" */
+
+/* Line 480 of lalr1.cc  */
+#line 896 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1594 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 482: /* "RelativePathExpr" */
+
+/* Line 480 of lalr1.cc  */
+#line 896 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1603 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 483: /* "StepExpr" */
+
+/* Line 480 of lalr1.cc  */
+#line 896 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1612 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 484: /* "AxisStep" */
+
+/* Line 480 of lalr1.cc  */
+#line 896 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1621 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 485: /* "ForwardStep" */
+
+/* Line 480 of lalr1.cc  */
+#line 890 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1630 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 486: /* "ForwardAxis" */
+
+/* Line 480 of lalr1.cc  */
+#line 890 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1639 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 487: /* "AbbrevForwardStep" */
+
+/* Line 480 of lalr1.cc  */
+#line 890 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1648 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 488: /* "ReverseStep" */
+
+/* Line 480 of lalr1.cc  */
+#line 890 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1657 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 489: /* "ReverseAxis" */
+
+/* Line 480 of lalr1.cc  */
+#line 890 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1666 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 490: /* "NodeTest" */
+
+/* Line 480 of lalr1.cc  */
+#line 890 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1675 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 491: /* "NameTest" */
+
+/* Line 480 of lalr1.cc  */
+#line 890 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1684 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 492: /* "Wildcard" */
+
+/* Line 480 of lalr1.cc  */
+#line 890 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1693 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 493: /* "FilterExpr" */
+
+/* Line 480 of lalr1.cc  */
+#line 896 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1702 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 494: /* "PredicateList" */
+
+/* Line 480 of lalr1.cc  */
+#line 890 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1711 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 495: /* "Predicate" */
+
+/* Line 480 of lalr1.cc  */
+#line 896 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1720 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 496: /* "PrimaryExpr" */
+
+/* Line 480 of lalr1.cc  */
+#line 896 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1729 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 497: /* "Literal" */
+
+/* Line 480 of lalr1.cc  */
+#line 896 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1738 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 498: /* "NumericLiteral" */
+
+/* Line 480 of lalr1.cc  */
+#line 896 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1747 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 499: /* "VarRef" */
+
+/* Line 480 of lalr1.cc  */
+#line 896 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1756 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 500: /* "ParenthesizedExpr" */
+
+/* Line 480 of lalr1.cc  */
+#line 896 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1765 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 501: /* "ContextItemExpr" */
+
+/* Line 480 of lalr1.cc  */
+#line 896 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1774 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 502: /* "OrderedExpr" */
+
+/* Line 480 of lalr1.cc  */
+#line 896 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1783 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 503: /* "UnorderedExpr" */
+
+/* Line 480 of lalr1.cc  */
+#line 896 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1792 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 504: /* "FunctionCall" */
+
+/* Line 480 of lalr1.cc  */
+#line 896 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1801 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 505: /* "ArgList" */
+
+/* Line 480 of lalr1.cc  */
+#line 890 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1810 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 506: /* "Constructor" */
+
+/* Line 480 of lalr1.cc  */
+#line 896 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1819 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 507: /* "DirectConstructor" */
+
+/* Line 480 of lalr1.cc  */
+#line 896 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1828 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 508: /* "DirElemConstructor" */
+
+/* Line 480 of lalr1.cc  */
+#line 896 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1837 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 509: /* "DirElemContentList" */
+
+/* Line 480 of lalr1.cc  */
+#line 890 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1846 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 510: /* "DirAttributeList" */
+
+/* Line 480 of lalr1.cc  */
+#line 890 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1855 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 511: /* "DirAttr" */
+
+/* Line 480 of lalr1.cc  */
+#line 890 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1864 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 513: /* "DirAttributeValue" */
+
+/* Line 480 of lalr1.cc  */
+#line 890 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1873 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 514: /* "opt_QuoteAttrContentList" */
+
+/* Line 480 of lalr1.cc  */
+#line 890 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1882 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 515: /* "QuoteAttrContentList" */
+
+/* Line 480 of lalr1.cc  */
+#line 890 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1891 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 516: /* "opt_AposAttrContentList" */
+
+/* Line 480 of lalr1.cc  */
+#line 890 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1900 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 517: /* "AposAttrContentList" */
+
+/* Line 480 of lalr1.cc  */
+#line 890 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1909 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 518: /* "QuoteAttrValueContent" */
+
+/* Line 480 of lalr1.cc  */
+#line 890 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1918 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 519: /* "AposAttrValueContent" */
+
+/* Line 480 of lalr1.cc  */
+#line 890 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1927 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 520: /* "DirElemContent" */
+
+/* Line 480 of lalr1.cc  */
+#line 896 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1936 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 521: /* "CommonContent" */
+
+/* Line 480 of lalr1.cc  */
+#line 896 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1945 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 522: /* "DirCommentConstructor" */
+
+/* Line 480 of lalr1.cc  */
+#line 896 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1954 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 523: /* "DirPIConstructor" */
+
+/* Line 480 of lalr1.cc  */
+#line 896 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1963 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 524: /* "CDataSection" */
+
+/* Line 480 of lalr1.cc  */
+#line 896 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1972 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 525: /* "ComputedConstructor" */
+
+/* Line 480 of lalr1.cc  */
+#line 896 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1981 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 526: /* "CompDocConstructor" */
+
+/* Line 480 of lalr1.cc  */
+#line 896 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1990 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 527: /* "CompElemConstructor" */
+
+/* Line 480 of lalr1.cc  */
+#line 896 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1999 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 528: /* "CompAttrConstructor" */
+
+/* Line 480 of lalr1.cc  */
+#line 896 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2008 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 529: /* "CompTextConstructor" */
+
+/* Line 480 of lalr1.cc  */
+#line 896 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2017 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 530: /* "CompCommentConstructor" */
+
+/* Line 480 of lalr1.cc  */
+#line 896 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2026 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 531: /* "CompPIConstructor" */
+
+/* Line 480 of lalr1.cc  */
+#line 896 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2035 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 532: /* "SingleType" */
+
+/* Line 480 of lalr1.cc  */
+#line 890 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2044 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 533: /* "TypeDeclaration" */
+
+/* Line 480 of lalr1.cc  */
+#line 890 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2053 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 534: /* "SequenceType" */
+
+/* Line 480 of lalr1.cc  */
+#line 890 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2062 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 535: /* "OccurrenceIndicator" */
+
+/* Line 480 of lalr1.cc  */
+#line 890 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2071 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 536: /* "ItemType" */
+
+/* Line 480 of lalr1.cc  */
+#line 890 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2080 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 537: /* "TypeList" */
+
+/* Line 480 of lalr1.cc  */
+#line 890 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2089 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 538: /* "AtomicType" */
+
+/* Line 480 of lalr1.cc  */
+#line 890 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2098 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 539: /* "KindTest" */
+
+/* Line 480 of lalr1.cc  */
+#line 890 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2107 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 540: /* "AnyKindTest" */
+
+/* Line 480 of lalr1.cc  */
+#line 890 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2116 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 541: /* "DocumentTest" */
+
+/* Line 480 of lalr1.cc  */
+#line 890 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2125 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 542: /* "TextTest" */
+
+/* Line 480 of lalr1.cc  */
+#line 890 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2134 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 543: /* "CommentTest" */
+
+/* Line 480 of lalr1.cc  */
+#line 890 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2143 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 544: /* "PITest" */
+
+/* Line 480 of lalr1.cc  */
+#line 890 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2152 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 545: /* "AttributeTest" */
+
+/* Line 480 of lalr1.cc  */
+#line 890 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2161 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 546: /* "SchemaAttributeTest" */
+
+/* Line 480 of lalr1.cc  */
+#line 890 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2170 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 547: /* "ElementTest" */
+
+/* Line 480 of lalr1.cc  */
+#line 890 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2179 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 548: /* "SchemaElementTest" */
+
+/* Line 480 of lalr1.cc  */
+#line 890 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2188 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 549: /* "TypeName" */
+
+/* Line 480 of lalr1.cc  */
+#line 890 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2197 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 550: /* "TypeName_WITH_HOOK" */
+
+/* Line 480 of lalr1.cc  */
+#line 890 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2206 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 551: /* "StringLiteral" */
+
+/* Line 480 of lalr1.cc  */
+#line 896 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2215 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 556: /* "AnyFunctionTest" */
+
+/* Line 480 of lalr1.cc  */
+#line 890 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2224 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 557: /* "TypedFunctionTest" */
+
+/* Line 480 of lalr1.cc  */
+#line 890 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2233 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 560: /* "InsertExpr" */
+
+/* Line 480 of lalr1.cc  */
+#line 896 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2242 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 561: /* "DeleteExpr" */
+
+/* Line 480 of lalr1.cc  */
+#line 896 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2251 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 562: /* "ReplaceExpr" */
+
+/* Line 480 of lalr1.cc  */
+#line 896 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2260 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 563: /* "RenameExpr" */
+
+/* Line 480 of lalr1.cc  */
+#line 896 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2269 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 564: /* "TransformExpr" */
+
+/* Line 480 of lalr1.cc  */
+#line 896 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2278 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 565: /* "VarNameList" */
+
+/* Line 480 of lalr1.cc  */
+#line 896 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2287 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 566: /* "VarNameDecl" */
+
+/* Line 480 of lalr1.cc  */
+#line 896 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2296 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 567: /* "TryExpr" */
+
+/* Line 480 of lalr1.cc  */
+#line 896 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2305 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 568: /* "CatchListExpr" */
+
+/* Line 480 of lalr1.cc  */
+#line 896 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2314 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 569: /* "CatchExpr" */
+
+/* Line 480 of lalr1.cc  */
+#line 896 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2323 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 570: /* "BracedExpr" */
+
+/* Line 480 of lalr1.cc  */
+#line 896 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2332 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 571: /* "NameTestList" */
+
+/* Line 480 of lalr1.cc  */
+#line 899 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
 	{ delete (yyvaluep->name_test_list); };
 
 /* Line 480 of lalr1.cc  */
-#line 2319 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 570: /* "FTSelection" */
-
-/* Line 480 of lalr1.cc  */
-#line 891 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2328 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 573: /* "FTOr" */
-
-/* Line 480 of lalr1.cc  */
-#line 891 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2337 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 574: /* "FTAnd" */
-
-/* Line 480 of lalr1.cc  */
-#line 891 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2346 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 575: /* "FTMildNot" */
-
-/* Line 480 of lalr1.cc  */
-#line 891 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2355 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 576: /* "FTUnaryNot" */
-
-/* Line 480 of lalr1.cc  */
-#line 891 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2364 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 577: /* "FTPrimaryWithOptions" */
-
-/* Line 480 of lalr1.cc  */
-#line 891 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2373 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 578: /* "opt_FTMatchOptions" */
-
-/* Line 480 of lalr1.cc  */
-#line 891 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2382 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 580: /* "FTWeight" */
-
-/* Line 480 of lalr1.cc  */
-#line 891 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2391 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 581: /* "FTPrimary" */
-
-/* Line 480 of lalr1.cc  */
-#line 891 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2400 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 582: /* "opt_FTTimes" */
-
-/* Line 480 of lalr1.cc  */
-#line 891 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2409 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 583: /* "FTExtensionSelection" */
-
-/* Line 480 of lalr1.cc  */
-#line 891 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2418 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 585: /* "FTWords" */
-
-/* Line 480 of lalr1.cc  */
-#line 891 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2427 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 586: /* "FTWordsValue" */
-
-/* Line 480 of lalr1.cc  */
-#line 891 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2436 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 588: /* "FTAnyallOption" */
-
-/* Line 480 of lalr1.cc  */
-#line 891 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2445 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 591: /* "FTPosFilter" */
-
-/* Line 480 of lalr1.cc  */
-#line 891 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2454 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 592: /* "FTOrder" */
-
-/* Line 480 of lalr1.cc  */
-#line 891 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2463 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 593: /* "FTWindow" */
-
-/* Line 480 of lalr1.cc  */
-#line 891 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2472 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 594: /* "FTDistance" */
-
-/* Line 480 of lalr1.cc  */
-#line 891 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2481 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 595: /* "FTUnit" */
-
-/* Line 480 of lalr1.cc  */
-#line 891 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2490 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 596: /* "FTMatchOptions" */
-
-/* Line 480 of lalr1.cc  */
-#line 891 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2499 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 597: /* "FTMatchOption" */
-
-/* Line 480 of lalr1.cc  */
-#line 891 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2508 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 598: /* "FTCaseOption" */
-
-/* Line 480 of lalr1.cc  */
-#line 891 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2517 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 599: /* "FTDiacriticsOption" */
-
-/* Line 480 of lalr1.cc  */
-#line 891 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2526 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 600: /* "FTExtensionOption" */
-
-/* Line 480 of lalr1.cc  */
-#line 891 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2535 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 601: /* "FTStemOption" */
-
-/* Line 480 of lalr1.cc  */
-#line 891 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2544 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 602: /* "FTThesaurusOption" */
-
-/* Line 480 of lalr1.cc  */
-#line 891 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2553 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 606: /* "FTThesaurusID" */
-
-/* Line 480 of lalr1.cc  */
-#line 891 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2562 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 609: /* "FTStopWordOption" */
-
-/* Line 480 of lalr1.cc  */
-#line 891 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2571 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 610: /* "FTStopWords" */
-
-/* Line 480 of lalr1.cc  */
-#line 891 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2580 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 614: /* "FTStopWordsInclExcl" */
-
-/* Line 480 of lalr1.cc  */
-#line 891 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2589 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 615: /* "FTLanguageOption" */
-
-/* Line 480 of lalr1.cc  */
-#line 891 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2598 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 616: /* "FTWildCardOption" */
-
-/* Line 480 of lalr1.cc  */
-#line 891 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2607 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 617: /* "FTContent" */
-
-/* Line 480 of lalr1.cc  */
-#line 891 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2616 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 618: /* "FTTimes" */
-
-/* Line 480 of lalr1.cc  */
-#line 891 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2625 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 619: /* "FTRange" */
-
-/* Line 480 of lalr1.cc  */
-#line 891 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2634 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 620: /* "FTScope" */
-
-/* Line 480 of lalr1.cc  */
-#line 891 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2643 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 621: /* "FTBigUnit" */
-
-/* Line 480 of lalr1.cc  */
-#line 891 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2652 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 622: /* "FTIgnoreOption" */
-
-/* Line 480 of lalr1.cc  */
-#line 891 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2661 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 625: /* "QNAME" */
-
-/* Line 480 of lalr1.cc  */
-#line 894 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2670 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 626: /* "FUNCTION_NAME" */
-
-/* Line 480 of lalr1.cc  */
-#line 894 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2679 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 627: /* "EQNAME" */
-
-/* Line 480 of lalr1.cc  */
-#line 894 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2688 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
+#line 2341 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 572: /* "FTSelection" */
+
+/* Line 480 of lalr1.cc  */
+#line 893 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2350 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 575: /* "FTOr" */
+
+/* Line 480 of lalr1.cc  */
+#line 893 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2359 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 576: /* "FTAnd" */
+
+/* Line 480 of lalr1.cc  */
+#line 893 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2368 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 577: /* "FTMildNot" */
+
+/* Line 480 of lalr1.cc  */
+#line 893 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2377 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 578: /* "FTUnaryNot" */
+
+/* Line 480 of lalr1.cc  */
+#line 893 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2386 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 579: /* "FTPrimaryWithOptions" */
+
+/* Line 480 of lalr1.cc  */
+#line 893 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2395 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 580: /* "opt_FTMatchOptions" */
+
+/* Line 480 of lalr1.cc  */
+#line 893 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2404 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 582: /* "FTWeight" */
+
+/* Line 480 of lalr1.cc  */
+#line 893 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2413 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 583: /* "FTPrimary" */
+
+/* Line 480 of lalr1.cc  */
+#line 893 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2422 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 584: /* "opt_FTTimes" */
+
+/* Line 480 of lalr1.cc  */
+#line 893 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2431 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 585: /* "FTExtensionSelection" */
+
+/* Line 480 of lalr1.cc  */
+#line 893 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2440 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 587: /* "FTWords" */
+
+/* Line 480 of lalr1.cc  */
+#line 893 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2449 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 588: /* "FTWordsValue" */
+
+/* Line 480 of lalr1.cc  */
+#line 893 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2458 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 590: /* "FTAnyallOption" */
+
+/* Line 480 of lalr1.cc  */
+#line 893 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2467 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 593: /* "FTPosFilter" */
+
+/* Line 480 of lalr1.cc  */
+#line 893 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2476 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 594: /* "FTOrder" */
+
+/* Line 480 of lalr1.cc  */
+#line 893 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2485 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 595: /* "FTWindow" */
+
+/* Line 480 of lalr1.cc  */
+#line 893 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2494 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 596: /* "FTDistance" */
+
+/* Line 480 of lalr1.cc  */
+#line 893 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2503 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 597: /* "FTUnit" */
+
+/* Line 480 of lalr1.cc  */
+#line 893 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2512 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 598: /* "FTMatchOptions" */
+
+/* Line 480 of lalr1.cc  */
+#line 893 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2521 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 599: /* "FTMatchOption" */
+
+/* Line 480 of lalr1.cc  */
+#line 893 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2530 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 600: /* "FTCaseOption" */
+
+/* Line 480 of lalr1.cc  */
+#line 893 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2539 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 601: /* "FTDiacriticsOption" */
+
+/* Line 480 of lalr1.cc  */
+#line 893 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2548 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 602: /* "FTExtensionOption" */
+
+/* Line 480 of lalr1.cc  */
+#line 893 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2557 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 603: /* "FTStemOption" */
+
+/* Line 480 of lalr1.cc  */
+#line 893 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2566 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 604: /* "FTThesaurusOption" */
+
+/* Line 480 of lalr1.cc  */
+#line 893 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2575 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 608: /* "FTThesaurusID" */
+
+/* Line 480 of lalr1.cc  */
+#line 893 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2584 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 611: /* "FTStopWordOption" */
+
+/* Line 480 of lalr1.cc  */
+#line 893 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2593 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 612: /* "FTStopWords" */
+
+/* Line 480 of lalr1.cc  */
+#line 893 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2602 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 616: /* "FTStopWordsInclExcl" */
+
+/* Line 480 of lalr1.cc  */
+#line 893 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2611 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 617: /* "FTLanguageOption" */
+
+/* Line 480 of lalr1.cc  */
+#line 893 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2620 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 618: /* "FTWildCardOption" */
+
+/* Line 480 of lalr1.cc  */
+#line 893 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2629 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 619: /* "FTContent" */
+
+/* Line 480 of lalr1.cc  */
+#line 893 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2638 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 620: /* "FTTimes" */
+
+/* Line 480 of lalr1.cc  */
+#line 893 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2647 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 621: /* "FTRange" */
+
+/* Line 480 of lalr1.cc  */
+#line 893 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2656 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 622: /* "FTScope" */
+
+/* Line 480 of lalr1.cc  */
+#line 893 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2665 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 623: /* "FTBigUnit" */
+
+/* Line 480 of lalr1.cc  */
+#line 893 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2674 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 624: /* "FTIgnoreOption" */
+
+/* Line 480 of lalr1.cc  */
+#line 893 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2683 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 627: /* "QNAME" */
+
+/* Line 480 of lalr1.cc  */
+#line 896 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2692 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 628: /* "FUNCTION_NAME" */
+
+/* Line 480 of lalr1.cc  */
+#line 896 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2701 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 629: /* "EQNAME" */
+
+/* Line 480 of lalr1.cc  */
+#line 896 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2710 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
 	break;
 
 	default:
@@ -2727,6 +2749,18 @@
   }
 #endif
 
+  inline bool
+  xquery_parser::yy_pact_value_is_default_ (int yyvalue)
+  {
+    return yyvalue == yypact_ninf_;
+  }
+
+  inline bool
+  xquery_parser::yy_table_value_is_error_ (int yyvalue)
+  {
+    return yyvalue == yytable_ninf_;
+  }
+
   int
   xquery_parser::parse ()
   {
@@ -2748,7 +2782,7 @@
     /// Location of the lookahead.
     location_type yylloc;
     /// The locations where the error started and ended.
-    location_type yyerror_range[2];
+    location_type yyerror_range[3];
 
     /// $$.
     semantic_type yyval;
@@ -2762,14 +2796,14 @@
 
     /* User initialization code.  */
     
-/* Line 553 of lalr1.cc  */
-#line 140 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 565 of lalr1.cc  */
+#line 140 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
 {
     yylloc.begin.filename = yylloc.end.filename = &(driver.theFilename2);
 }
 
-/* Line 553 of lalr1.cc  */
-#line 2773 "/home/mbrantner/zorba/trunk/build/src/compiler/parser/xquery_parser.cpp"
+/* Line 565 of lalr1.cc  */
+#line 2807 "/Users/wcandillon/28msec/zorba/build/src/compiler/parser/xquery_parser.cpp"
 
     /* Initialize the stacks.  The initial state will be pushed in
        yynewstate, since the latter expects the semantical and the
@@ -2797,7 +2831,7 @@
 
     /* Try to take a decision without lookahead.  */
     yyn = yypact_[yystate];
-    if (yyn == yypact_ninf_)
+    if (yy_pact_value_is_default_ (yyn))
       goto yydefault;
 
     /* Read a lookahead token.  */
@@ -2830,8 +2864,8 @@
     yyn = yytable_[yyn];
     if (yyn <= 0)
       {
-	if (yyn == 0 || yyn == yytable_ninf_)
-	goto yyerrlab;
+	if (yy_table_value_is_error_ (yyn))
+	  goto yyerrlab;
 	yyn = -yyn;
 	goto yyreduce;
       }
@@ -2887,8 +2921,8 @@
       {
 	  case 3:
 
-/* Line 678 of lalr1.cc  */
-#line 994 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 996 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
         (yyval.node) = (yysemantic_stack_[(2) - (2)].node);
       }
@@ -2896,8 +2930,8 @@
 
   case 4:
 
-/* Line 678 of lalr1.cc  */
-#line 1003 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1005 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
         (yyval.node) = NULL; YYABORT;
       }
@@ -2905,8 +2939,8 @@
 
   case 5:
 
-/* Line 678 of lalr1.cc  */
-#line 1012 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1014 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
       driver.set_expr( (yyval.node) );
@@ -2915,8 +2949,8 @@
 
   case 6:
 
-/* Line 678 of lalr1.cc  */
-#line 1018 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1020 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       MainModule* mm = dynamic_cast<MainModule*>((yysemantic_stack_[(2) - (2)].node));
       mm->set_version_decl( static_cast<VersionDecl*>((yysemantic_stack_[(2) - (1)].node)) );
@@ -2927,8 +2961,8 @@
 
   case 7:
 
-/* Line 678 of lalr1.cc  */
-#line 1026 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1028 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
       driver.set_expr( (yyval.node) );
@@ -2937,8 +2971,8 @@
 
   case 8:
 
-/* Line 678 of lalr1.cc  */
-#line 1032 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1034 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       LibraryModule* lm = dynamic_cast<LibraryModule*>((yysemantic_stack_[(2) - (2)].node));
       lm->set_version_decl( static_cast<VersionDecl*>((yysemantic_stack_[(2) - (1)].node)) );
@@ -2949,8 +2983,8 @@
 
   case 9:
 
-/* Line 678 of lalr1.cc  */
-#line 1043 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1045 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new VersionDecl( LOC((yyloc)), SYMTAB((yysemantic_stack_[(4) - (3)].sval)), "utf-8" );
     }
@@ -2958,8 +2992,8 @@
 
   case 10:
 
-/* Line 678 of lalr1.cc  */
-#line 1048 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1050 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new VersionDecl( LOC((yyloc)), SYMTAB((yysemantic_stack_[(6) - (3)].sval)), SYMTAB((yysemantic_stack_[(6) - (5)].sval)) );
     }
@@ -2967,8 +3001,8 @@
 
   case 11:
 
-/* Line 678 of lalr1.cc  */
-#line 1056 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1058 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       Prolog* prolog = new Prolog(LOC((yyloc)), static_cast<SIND_DeclList*>((yysemantic_stack_[(3) - (1)].node)), NULL);
 
@@ -2978,8 +3012,8 @@
 
   case 12:
 
-/* Line 678 of lalr1.cc  */
-#line 1063 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1065 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       Prolog* prolog = new Prolog(LOC((yyloc)), NULL, static_cast<VFO_DeclList*>((yysemantic_stack_[(3) - (1)].node)));
 
@@ -2989,8 +3023,8 @@
 
   case 13:
 
-/* Line 678 of lalr1.cc  */
-#line 1070 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1072 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       Prolog* prolog = new Prolog(LOC((yyloc)),
                                   static_cast<SIND_DeclList*>((yysemantic_stack_[(5) - (1)].node)),
@@ -3002,8 +3036,8 @@
 
   case 14:
 
-/* Line 678 of lalr1.cc  */
-#line 1079 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1081 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new MainModule( LOC((yyloc)), static_cast<QueryBody*>((yysemantic_stack_[(1) - (1)].expr)), NULL );
     }
@@ -3011,8 +3045,8 @@
 
   case 15:
 
-/* Line 678 of lalr1.cc  */
-#line 1086 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1088 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = (yysemantic_stack_[(3) - (1)].node); (yyval.node) = (yysemantic_stack_[(3) - (3)].expr); // to prevent the Bison warning
       (yylocation_stack_[(3) - (1)]).step();
@@ -3023,8 +3057,8 @@
 
   case 16:
 
-/* Line 678 of lalr1.cc  */
-#line 1094 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1096 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = (yysemantic_stack_[(3) - (1)].node); (yyval.node) = (yysemantic_stack_[(3) - (3)].expr); // to prevent the Bison warning
       (yylocation_stack_[(3) - (1)]).step();
@@ -3035,8 +3069,8 @@
 
   case 17:
 
-/* Line 678 of lalr1.cc  */
-#line 1102 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1104 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = (yysemantic_stack_[(5) - (1)].node); (yyval.node) = (yysemantic_stack_[(5) - (3)].node); (yyval.node) = (yysemantic_stack_[(5) - (5)].expr); // to prevent the Bison warning
       (yylocation_stack_[(5) - (3)]).step();
@@ -3047,8 +3081,8 @@
 
   case 18:
 
-/* Line 678 of lalr1.cc  */
-#line 1110 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1112 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = (yysemantic_stack_[(5) - (1)].node); (yyval.node) = (yysemantic_stack_[(5) - (3)].node); (yyval.node) = (yysemantic_stack_[(5) - (5)].expr); // to prevent the Bison warning
       (yylocation_stack_[(5) - (1)]).step();
@@ -3059,8 +3093,8 @@
 
   case 19:
 
-/* Line 678 of lalr1.cc  */
-#line 1121 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1123 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new LibraryModule(LOC((yyloc)), static_cast<ModuleDecl*>((yysemantic_stack_[(1) - (1)].node)), NULL);
     }
@@ -3068,8 +3102,8 @@
 
   case 20:
 
-/* Line 678 of lalr1.cc  */
-#line 1126 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1128 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       Prolog* prolog = new Prolog(LOC((yyloc)), static_cast<SIND_DeclList*>((yysemantic_stack_[(3) - (2)].node)), NULL);
 
@@ -3079,8 +3113,8 @@
 
   case 21:
 
-/* Line 678 of lalr1.cc  */
-#line 1133 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1135 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       Prolog* prolog = new Prolog(LOC((yyloc)), NULL, static_cast<VFO_DeclList*>((yysemantic_stack_[(3) - (2)].node)));
 
@@ -3090,8 +3124,8 @@
 
   case 22:
 
-/* Line 678 of lalr1.cc  */
-#line 1140 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1142 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       Prolog* prolog = new Prolog(LOC((yyloc)),
                                   static_cast<SIND_DeclList*>((yysemantic_stack_[(5) - (2)].node)),
@@ -3103,8 +3137,8 @@
 
   case 23:
 
-/* Line 678 of lalr1.cc  */
-#line 1152 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1154 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new ModuleDecl( LOC((yyloc)), SYMTAB((yysemantic_stack_[(6) - (3)].sval)), SYMTAB((yysemantic_stack_[(6) - (5)].sval)) );
 
@@ -3114,8 +3148,8 @@
 
   case 24:
 
-/* Line 678 of lalr1.cc  */
-#line 1162 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1164 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       SIND_DeclList *sdl = new SIND_DeclList( LOC((yyloc)) );
       sdl->push_back( (yysemantic_stack_[(1) - (1)].node) );
@@ -3125,8 +3159,8 @@
 
   case 25:
 
-/* Line 678 of lalr1.cc  */
-#line 1169 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1171 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       ((SIND_DeclList*)(yysemantic_stack_[(3) - (1)].node))->push_back( (yysemantic_stack_[(3) - (3)].node) );
       (yyval.node) = (yysemantic_stack_[(3) - (1)].node);
@@ -3135,8 +3169,8 @@
 
   case 26:
 
-/* Line 678 of lalr1.cc  */
-#line 1176 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1178 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       // error
       (yyval.node) = (yysemantic_stack_[(3) - (1)].node); (yyval.node) = (yysemantic_stack_[(3) - (3)].node); // to prevent the Bison warning
@@ -3148,8 +3182,8 @@
 
   case 40:
 
-/* Line 678 of lalr1.cc  */
-#line 1211 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1213 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new BoundarySpaceDecl(LOC((yyloc)), StaticContextConsts::preserve_space);
     }
@@ -3157,8 +3191,8 @@
 
   case 41:
 
-/* Line 678 of lalr1.cc  */
-#line 1216 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1218 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new BoundarySpaceDecl(LOC((yyloc)), StaticContextConsts::strip_space);
     }
@@ -3166,8 +3200,8 @@
 
   case 42:
 
-/* Line 678 of lalr1.cc  */
-#line 1224 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1226 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new DefaultCollationDecl( LOC((yyloc)), SYMTAB((yysemantic_stack_[(4) - (4)].sval)) );
     }
@@ -3175,8 +3209,8 @@
 
   case 43:
 
-/* Line 678 of lalr1.cc  */
-#line 1232 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1234 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new BaseURIDecl( LOC((yyloc)), SYMTAB((yysemantic_stack_[(3) - (3)].sval)) );
     }
@@ -3184,8 +3218,8 @@
 
   case 44:
 
-/* Line 678 of lalr1.cc  */
-#line 1240 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1242 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new ConstructionDecl(LOC((yyloc)), StaticContextConsts::cons_preserve);
     }
@@ -3193,8 +3227,8 @@
 
   case 45:
 
-/* Line 678 of lalr1.cc  */
-#line 1245 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1247 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new ConstructionDecl(LOC((yyloc)), StaticContextConsts::cons_strip);
     }
@@ -3202,8 +3236,8 @@
 
   case 46:
 
-/* Line 678 of lalr1.cc  */
-#line 1253 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1255 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new OrderingModeDecl(LOC((yyloc)), StaticContextConsts::ordered);
     }
@@ -3211,8 +3245,8 @@
 
   case 47:
 
-/* Line 678 of lalr1.cc  */
-#line 1258 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1260 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new OrderingModeDecl(LOC((yyloc)), StaticContextConsts::unordered);
     }
@@ -3220,8 +3254,8 @@
 
   case 48:
 
-/* Line 678 of lalr1.cc  */
-#line 1266 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1268 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new EmptyOrderDecl(LOC((yyloc)), StaticContextConsts::empty_greatest);
     }
@@ -3229,8 +3263,8 @@
 
   case 49:
 
-/* Line 678 of lalr1.cc  */
-#line 1271 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1273 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new EmptyOrderDecl(LOC((yyloc)), StaticContextConsts::empty_least);
     }
@@ -3238,8 +3272,8 @@
 
   case 50:
 
-/* Line 678 of lalr1.cc  */
-#line 1279 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1281 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new CopyNamespacesDecl(LOC((yyloc)),
                                   StaticContextConsts::preserve_ns,
@@ -3249,8 +3283,8 @@
 
   case 51:
 
-/* Line 678 of lalr1.cc  */
-#line 1286 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1288 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new CopyNamespacesDecl(LOC((yyloc)),
                                   StaticContextConsts::preserve_ns,
@@ -3260,8 +3294,8 @@
 
   case 52:
 
-/* Line 678 of lalr1.cc  */
-#line 1293 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1295 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new CopyNamespacesDecl(LOC((yyloc)),
                                   StaticContextConsts::no_preserve_ns,
@@ -3271,8 +3305,8 @@
 
   case 53:
 
-/* Line 678 of lalr1.cc  */
-#line 1300 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1302 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new CopyNamespacesDecl(LOC((yyloc)),
                                   StaticContextConsts::no_preserve_ns,
@@ -3282,8 +3316,8 @@
 
   case 56:
 
-/* Line 678 of lalr1.cc  */
-#line 1315 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1317 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = (yyval.node); // to prevent the Bison warning
       error((yylocation_stack_[(3) - (2)]), "syntax error, \"import\" should be followed by either \"schema\" or \"module\".");
@@ -3293,8 +3327,8 @@
 
   case 57:
 
-/* Line 678 of lalr1.cc  */
-#line 1325 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1327 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new SchemaImport( LOC((yyloc)), NULL, SYMTAB((yysemantic_stack_[(3) - (3)].sval)), NULL );
     }
@@ -3302,8 +3336,8 @@
 
   case 58:
 
-/* Line 678 of lalr1.cc  */
-#line 1330 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1332 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new SchemaImport(LOC((yyloc)),
                             dynamic_cast<SchemaPrefix*>((yysemantic_stack_[(4) - (3)].node)),
@@ -3314,8 +3348,8 @@
 
   case 59:
 
-/* Line 678 of lalr1.cc  */
-#line 1338 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1340 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new SchemaImport(LOC((yyloc)),
                             NULL,
@@ -3326,8 +3360,8 @@
 
   case 60:
 
-/* Line 678 of lalr1.cc  */
-#line 1346 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1348 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new SchemaImport(LOC((yyloc)),
                             dynamic_cast<SchemaPrefix*>((yysemantic_stack_[(6) - (3)].node)),
@@ -3338,8 +3372,8 @@
 
   case 61:
 
-/* Line 678 of lalr1.cc  */
-#line 1357 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1359 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       URILiteralList *ull = new URILiteralList( LOC((yyloc)));
       ull->push_back( SYMTAB((yysemantic_stack_[(1) - (1)].sval)) );
@@ -3349,8 +3383,8 @@
 
   case 62:
 
-/* Line 678 of lalr1.cc  */
-#line 1364 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1366 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       if ( URILiteralList *ull = dynamic_cast<URILiteralList*>((yysemantic_stack_[(3) - (1)].node)) )
         ull->push_back( SYMTAB((yysemantic_stack_[(3) - (3)].sval)) );
@@ -3361,8 +3395,8 @@
 
   case 63:
 
-/* Line 678 of lalr1.cc  */
-#line 1375 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1377 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new SchemaPrefix( LOC((yyloc)), SYMTAB((yysemantic_stack_[(3) - (2)].sval)) );
     }
@@ -3370,8 +3404,8 @@
 
   case 64:
 
-/* Line 678 of lalr1.cc  */
-#line 1380 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1382 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new SchemaPrefix( LOC((yyloc)), true );
     }
@@ -3379,8 +3413,8 @@
 
   case 65:
 
-/* Line 678 of lalr1.cc  */
-#line 1388 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1390 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new ModuleImport(LOC((yyloc)), SYMTAB((yysemantic_stack_[(3) - (3)].sval)), NULL);
 
@@ -3390,8 +3424,8 @@
 
   case 66:
 
-/* Line 678 of lalr1.cc  */
-#line 1395 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1397 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new ModuleImport(LOC((yyloc)), SYMTAB((yysemantic_stack_[(6) - (4)].sval)), SYMTAB((yysemantic_stack_[(6) - (6)].sval)), NULL);
 
@@ -3401,8 +3435,8 @@
 
   case 67:
 
-/* Line 678 of lalr1.cc  */
-#line 1402 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1404 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new ModuleImport(LOC((yyloc)),
                             SYMTAB((yysemantic_stack_[(5) - (3)].sval)),
@@ -3414,8 +3448,8 @@
 
   case 68:
 
-/* Line 678 of lalr1.cc  */
-#line 1411 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1413 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new ModuleImport(LOC((yyloc)),
                             SYMTAB((yysemantic_stack_[(8) - (4)].sval)),
@@ -3428,8 +3462,8 @@
 
   case 69:
 
-/* Line 678 of lalr1.cc  */
-#line 1424 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1426 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new NamespaceDecl( LOC((yyloc)), SYMTAB((yysemantic_stack_[(5) - (3)].sval)), SYMTAB((yysemantic_stack_[(5) - (5)].sval)) );
     }
@@ -3437,8 +3471,8 @@
 
   case 70:
 
-/* Line 678 of lalr1.cc  */
-#line 1432 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1434 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new DefaultNamespaceDecl(LOC((yyloc)),
                                     ParseConstants::ns_element_default,
@@ -3448,8 +3482,8 @@
 
   case 71:
 
-/* Line 678 of lalr1.cc  */
-#line 1439 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1441 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new DefaultNamespaceDecl(LOC((yyloc)),
                                     ParseConstants::ns_function_default,
@@ -3459,8 +3493,8 @@
 
   case 72:
 
-/* Line 678 of lalr1.cc  */
-#line 1449 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1451 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       VFO_DeclList *vdl = new VFO_DeclList( LOC((yyloc)));
       vdl->push_back( (yysemantic_stack_[(1) - (1)].node) );
@@ -3470,8 +3504,8 @@
 
   case 73:
 
-/* Line 678 of lalr1.cc  */
-#line 1456 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1458 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       ((VFO_DeclList*)(yysemantic_stack_[(3) - (1)].node))->push_back( (yysemantic_stack_[(3) - (3)].node) );
       (yyval.node) = (yysemantic_stack_[(3) - (1)].node);
@@ -3480,8 +3514,8 @@
 
   case 74:
 
-/* Line 678 of lalr1.cc  */
-#line 1463 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1465 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = (yysemantic_stack_[(3) - (1)].node); (yyval.node) = (yysemantic_stack_[(3) - (3)].node); // to prevent the Bison warning
       (yylocation_stack_[(3) - (1)]).step();
@@ -3492,8 +3526,8 @@
 
   case 83:
 
-/* Line 678 of lalr1.cc  */
-#line 1486 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1488 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new DecimalFormatNode(LOC((yyloc)), (yysemantic_stack_[(4) - (4)].vstrpair));
       delete (yysemantic_stack_[(4) - (4)].vstrpair);
@@ -3502,8 +3536,8 @@
 
   case 84:
 
-/* Line 678 of lalr1.cc  */
-#line 1492 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1494 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new DecimalFormatNode(LOC((yyloc)), static_cast<QName*>((yysemantic_stack_[(4) - (3)].expr)), (yysemantic_stack_[(4) - (4)].vstrpair));
       delete (yysemantic_stack_[(4) - (4)].vstrpair);
@@ -3512,8 +3546,8 @@
 
   case 85:
 
-/* Line 678 of lalr1.cc  */
-#line 1501 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1503 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.vstrpair) = new vector<string_pair_t>();
       (yyval.vstrpair)->push_back( *(yysemantic_stack_[(1) - (1)].strpair) );
@@ -3523,8 +3557,8 @@
 
   case 86:
 
-/* Line 678 of lalr1.cc  */
-#line 1508 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1510 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yysemantic_stack_[(2) - (1)].vstrpair)->push_back( *(yysemantic_stack_[(2) - (2)].strpair) );
       delete (yysemantic_stack_[(2) - (2)].strpair);
@@ -3534,8 +3568,8 @@
 
   case 87:
 
-/* Line 678 of lalr1.cc  */
-#line 1518 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1520 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       StringLiteral *sl = static_cast<StringLiteral*>((yysemantic_stack_[(3) - (3)].expr));
       (yyval.strpair) = new string_pair_t( (yysemantic_stack_[(3) - (1)].strval), sl->get_strval().str() );
@@ -3545,78 +3579,78 @@
 
   case 88:
 
-/* Line 678 of lalr1.cc  */
-#line 1527 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1529 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.strval) = "decimal-separator"; }
     break;
 
   case 89:
 
-/* Line 678 of lalr1.cc  */
-#line 1528 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1530 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.strval) = "digit"; }
     break;
 
   case 90:
 
-/* Line 678 of lalr1.cc  */
-#line 1529 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1531 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.strval) = "grouping-separator"; }
     break;
 
   case 91:
 
-/* Line 678 of lalr1.cc  */
-#line 1530 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1532 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.strval) = "infinty"; }
     break;
 
   case 92:
 
-/* Line 678 of lalr1.cc  */
-#line 1531 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1533 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.strval) = "minus-sign"; }
     break;
 
   case 93:
 
-/* Line 678 of lalr1.cc  */
-#line 1532 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1534 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.strval) = "NaN"; }
     break;
 
   case 94:
 
-/* Line 678 of lalr1.cc  */
-#line 1533 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1535 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.strval) = "pattern-separator"; }
     break;
 
   case 95:
 
-/* Line 678 of lalr1.cc  */
-#line 1534 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1536 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.strval) = "percent"; }
     break;
 
   case 96:
 
-/* Line 678 of lalr1.cc  */
-#line 1535 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1537 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.strval) = "per-mille"; }
     break;
 
   case 97:
 
-/* Line 678 of lalr1.cc  */
-#line 1536 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1538 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.strval) = "zero-digit"; }
     break;
 
   case 98:
 
-/* Line 678 of lalr1.cc  */
-#line 1542 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1544 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new OptionDecl(LOC((yyloc)), static_cast<QName*>((yysemantic_stack_[(4) - (3)].expr)), SYMTAB((yysemantic_stack_[(4) - (4)].sval)));
     }
@@ -3624,8 +3658,8 @@
 
   case 99:
 
-/* Line 678 of lalr1.cc  */
-#line 1550 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1552 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new FTOptionDecl( LOC((yyloc)), dynamic_cast<FTMatchOptions*>((yysemantic_stack_[(3) - (3)].node)) );
     }
@@ -3633,8 +3667,8 @@
 
   case 100:
 
-/* Line 678 of lalr1.cc  */
-#line 1558 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1560 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = (yysemantic_stack_[(4) - (4)].node);
     }
@@ -3642,8 +3676,8 @@
 
   case 101:
 
-/* Line 678 of lalr1.cc  */
-#line 1566 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1568 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       CtxItemDecl* d = dynamic_cast<CtxItemDecl*>((yysemantic_stack_[(3) - (3)].node));
       d->theType = (yysemantic_stack_[(3) - (2)].node);
@@ -3653,8 +3687,8 @@
 
   case 102:
 
-/* Line 678 of lalr1.cc  */
-#line 1573 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1575 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
     }
@@ -3662,8 +3696,8 @@
 
   case 103:
 
-/* Line 678 of lalr1.cc  */
-#line 1581 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1583 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       CtxItemDecl* d = dynamic_cast<CtxItemDecl*>((yysemantic_stack_[(1) - (1)].node));
       d->theIsExternal = false;
@@ -3673,8 +3707,8 @@
 
   case 104:
 
-/* Line 678 of lalr1.cc  */
-#line 1588 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1590 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new CtxItemDecl(LOC((yyloc)), NULL);
     }
@@ -3682,8 +3716,8 @@
 
   case 105:
 
-/* Line 678 of lalr1.cc  */
-#line 1593 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1595 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = (yysemantic_stack_[(2) - (2)].node);
     }
@@ -3691,8 +3725,8 @@
 
   case 106:
 
-/* Line 678 of lalr1.cc  */
-#line 1601 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1603 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new CtxItemDecl(LOC((yyloc)), (yysemantic_stack_[(2) - (2)].expr));
     }
@@ -3700,8 +3734,8 @@
 
   case 107:
 
-/* Line 678 of lalr1.cc  */
-#line 1609 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1611 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       std::auto_ptr<VarNameAndType> nt(dynamic_cast<VarNameAndType *>((yysemantic_stack_[(4) - (2)].varnametype)));
 
@@ -3719,8 +3753,8 @@
 
   case 108:
 
-/* Line 678 of lalr1.cc  */
-#line 1624 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1626 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       std::auto_ptr<VarNameAndType> nt(dynamic_cast<VarNameAndType *>((yysemantic_stack_[(3) - (2)].varnametype)));
 
@@ -3738,8 +3772,8 @@
 
   case 109:
 
-/* Line 678 of lalr1.cc  */
-#line 1639 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1641 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       std::auto_ptr<VarNameAndType> nt(dynamic_cast<VarNameAndType *>((yysemantic_stack_[(5) - (2)].varnametype)));
 
@@ -3757,8 +3791,8 @@
 
   case 110:
 
-/* Line 678 of lalr1.cc  */
-#line 1657 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1659 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.varnametype) = new VarNameAndType(LOC((yyloc)), static_cast<QName*>((yysemantic_stack_[(3) - (3)].expr)), NULL, NULL);
     }
@@ -3766,8 +3800,8 @@
 
   case 111:
 
-/* Line 678 of lalr1.cc  */
-#line 1662 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1664 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.varnametype) = new VarNameAndType(LOC((yyloc)),
                               static_cast<QName*>((yysemantic_stack_[(4) - (3)].expr)),
@@ -3778,8 +3812,8 @@
 
   case 112:
 
-/* Line 678 of lalr1.cc  */
-#line 1670 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1672 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.varnametype) = new VarNameAndType(LOC((yyloc)),
                               static_cast<QName*>((yysemantic_stack_[(4) - (4)].expr)),
@@ -3790,8 +3824,8 @@
 
   case 113:
 
-/* Line 678 of lalr1.cc  */
-#line 1678 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1680 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.varnametype) = new VarNameAndType(LOC((yyloc)),
                               static_cast<QName*>((yysemantic_stack_[(5) - (4)].expr)),
@@ -3802,8 +3836,8 @@
 
   case 114:
 
-/* Line 678 of lalr1.cc  */
-#line 1689 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1691 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new AnnotationListParsenode(LOC((yyloc)), static_cast<AnnotationParsenode*>((yysemantic_stack_[(1) - (1)].node)));
     }
@@ -3811,8 +3845,8 @@
 
   case 115:
 
-/* Line 678 of lalr1.cc  */
-#line 1694 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1696 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       static_cast<AnnotationListParsenode*>((yysemantic_stack_[(2) - (1)].node))->push_back(static_cast<AnnotationParsenode*>((yysemantic_stack_[(2) - (2)].node)));
       (yyval.node) = (yysemantic_stack_[(2) - (1)].node);
@@ -3821,8 +3855,8 @@
 
   case 116:
 
-/* Line 678 of lalr1.cc  */
-#line 1703 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1705 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new AnnotationParsenode(LOC((yyloc)), new QName(LOC((yyloc)), SYMTAB((yysemantic_stack_[(1) - (1)].sval))), NULL);
     }
@@ -3830,8 +3864,8 @@
 
   case 117:
 
-/* Line 678 of lalr1.cc  */
-#line 1708 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1710 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new AnnotationParsenode(LOC((yyloc)),
                                    new QName(LOC((yyloc)), SYMTAB((yysemantic_stack_[(4) - (1)].sval))),
@@ -3841,8 +3875,8 @@
 
   case 118:
 
-/* Line 678 of lalr1.cc  */
-#line 1715 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1717 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new AnnotationParsenode(LOC((yyloc)), new QName(LOC((yyloc)), SYMTAB((yysemantic_stack_[(1) - (1)].sval)), true), NULL);
     }
@@ -3850,8 +3884,8 @@
 
   case 119:
 
-/* Line 678 of lalr1.cc  */
-#line 1720 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1722 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new AnnotationParsenode(LOC((yyloc)),
                                    new QName(LOC((yyloc)), SYMTAB((yysemantic_stack_[(4) - (1)].sval)), true),
@@ -3861,8 +3895,8 @@
 
   case 120:
 
-/* Line 678 of lalr1.cc  */
-#line 1730 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1732 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new AnnotationLiteralListParsenode(LOC((yyloc)), (yysemantic_stack_[(1) - (1)].expr));
     }
@@ -3870,8 +3904,8 @@
 
   case 121:
 
-/* Line 678 of lalr1.cc  */
-#line 1735 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1737 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       static_cast<AnnotationLiteralListParsenode*>((yysemantic_stack_[(3) - (1)].node))->push_back((yysemantic_stack_[(3) - (3)].expr));
       (yyval.node) = (yysemantic_stack_[(3) - (1)].node);
@@ -3880,8 +3914,8 @@
 
   case 122:
 
-/* Line 678 of lalr1.cc  */
-#line 1744 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1746 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       static_cast<FunctionDecl*>((yysemantic_stack_[(2) - (2)].node))->setComment( SYMTAB((yysemantic_stack_[(2) - (1)].sval)) );
       (yyval.node) = (yysemantic_stack_[(2) - (2)].node);
@@ -3890,8 +3924,8 @@
 
   case 123:
 
-/* Line 678 of lalr1.cc  */
-#line 1750 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1752 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       FunctionDecl* fdecl = static_cast<FunctionDecl*>((yysemantic_stack_[(3) - (3)].node));
 
@@ -3904,8 +3938,8 @@
 
   case 124:
 
-/* Line 678 of lalr1.cc  */
-#line 1763 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1765 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
     }
@@ -3913,8 +3947,8 @@
 
   case 125:
 
-/* Line 678 of lalr1.cc  */
-#line 1768 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1770 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
     }
@@ -3922,8 +3956,8 @@
 
   case 126:
 
-/* Line 678 of lalr1.cc  */
-#line 1776 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1778 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new FunctionDecl(LOC((yyloc)),
                             static_cast<QName*>((yysemantic_stack_[(4) - (2)].expr)),
@@ -3938,8 +3972,8 @@
 
   case 127:
 
-/* Line 678 of lalr1.cc  */
-#line 1787 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1789 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new FunctionDecl(LOC ((yyloc)),
                             static_cast<QName*>((yysemantic_stack_[(4) - (2)].expr)),
@@ -3954,8 +3988,8 @@
 
   case 128:
 
-/* Line 678 of lalr1.cc  */
-#line 1802 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1804 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new FunctionDecl(LOC ((yyloc)),
                             static_cast<QName*>((yysemantic_stack_[(5) - (3)].expr)),
@@ -3970,8 +4004,8 @@
 
   case 129:
 
-/* Line 678 of lalr1.cc  */
-#line 1814 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1816 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new FunctionDecl(LOC((yyloc)),
                             static_cast<QName*>((yysemantic_stack_[(5) - (3)].expr)),
@@ -3986,8 +4020,8 @@
 
   case 130:
 
-/* Line 678 of lalr1.cc  */
-#line 1829 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1831 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.fnsig) = new FunctionSig(NULL);
     }
@@ -3995,8 +4029,8 @@
 
   case 131:
 
-/* Line 678 of lalr1.cc  */
-#line 1834 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1836 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.fnsig) = new FunctionSig(dynamic_cast<ParamList*>((yysemantic_stack_[(3) - (2)].node)));
     }
@@ -4004,8 +4038,8 @@
 
   case 132:
 
-/* Line 678 of lalr1.cc  */
-#line 1839 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1841 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.fnsig) = new FunctionSig(NULL, dynamic_cast<SequenceType*>((yysemantic_stack_[(4) - (4)].node)));
     }
@@ -4013,8 +4047,8 @@
 
   case 133:
 
-/* Line 678 of lalr1.cc  */
-#line 1844 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1846 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.fnsig) = new FunctionSig(dynamic_cast<ParamList*>((yysemantic_stack_[(5) - (2)].node)), dynamic_cast<SequenceType*>((yysemantic_stack_[(5) - (5)].node)));
     }
@@ -4022,8 +4056,8 @@
 
   case 134:
 
-/* Line 678 of lalr1.cc  */
-#line 1852 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1854 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       ParamList *pl = new ParamList( LOC((yyloc)) );
       pl->push_back( dynamic_cast<Param*>((yysemantic_stack_[(1) - (1)].node)) );
@@ -4033,8 +4067,8 @@
 
   case 135:
 
-/* Line 678 of lalr1.cc  */
-#line 1859 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1861 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       if ( ParamList *pl = dynamic_cast<ParamList*>((yysemantic_stack_[(3) - (1)].node)) )
         pl->push_back( dynamic_cast<Param*>((yysemantic_stack_[(3) - (3)].node)) );
@@ -4045,8 +4079,8 @@
 
   case 136:
 
-/* Line 678 of lalr1.cc  */
-#line 1870 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1872 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new Param(LOC((yyloc)), static_cast<QName*>((yysemantic_stack_[(2) - (2)].expr)), NULL);
     }
@@ -4054,8 +4088,8 @@
 
   case 137:
 
-/* Line 678 of lalr1.cc  */
-#line 1875 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1877 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new Param(LOC((yyloc)),
                      static_cast<QName*>((yysemantic_stack_[(3) - (2)].expr)),
@@ -4065,8 +4099,8 @@
 
   case 138:
 
-/* Line 678 of lalr1.cc  */
-#line 1885 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1887 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new CollectionDecl( LOC((yyloc)),
                               static_cast<QName*>((yysemantic_stack_[(3) - (3)].expr)),
@@ -4077,8 +4111,8 @@
 
   case 139:
 
-/* Line 678 of lalr1.cc  */
-#line 1892 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1894 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new CollectionDecl( LOC((yyloc)),
                               static_cast<QName*>((yysemantic_stack_[(5) - (3)].expr)),
@@ -4089,8 +4123,8 @@
 
   case 140:
 
-/* Line 678 of lalr1.cc  */
-#line 1899 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1901 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new CollectionDecl( LOC((yyloc)),
                                static_cast<QName*>((yysemantic_stack_[(4) - (4)].expr)),
@@ -4101,8 +4135,8 @@
 
   case 141:
 
-/* Line 678 of lalr1.cc  */
-#line 1906 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1908 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new CollectionDecl( LOC((yyloc)),
                                static_cast<QName*>((yysemantic_stack_[(6) - (4)].expr)),
@@ -4113,8 +4147,8 @@
 
   case 142:
 
-/* Line 678 of lalr1.cc  */
-#line 1916 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1918 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = static_cast<parsenode*>(new SequenceType(LOC((yyloc)), (yysemantic_stack_[(1) - (1)].node), NULL));
     }
@@ -4122,8 +4156,8 @@
 
   case 143:
 
-/* Line 678 of lalr1.cc  */
-#line 1920 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1922 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = static_cast<parsenode*>(new SequenceType(LOC((yyloc)),
                                                     (yysemantic_stack_[(2) - (1)].node),
@@ -4133,8 +4167,8 @@
 
   case 144:
 
-/* Line 678 of lalr1.cc  */
-#line 1930 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1932 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new AST_IndexDecl(LOC((yyloc)),
                              static_cast<QName*>((yysemantic_stack_[(8) - (3)].expr)),
@@ -4146,8 +4180,8 @@
 
   case 145:
 
-/* Line 678 of lalr1.cc  */
-#line 1938 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1940 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new AST_IndexDecl(LOC((yyloc)),
                              static_cast<QName*>((yysemantic_stack_[(9) - (4)].expr)),
@@ -4159,8 +4193,8 @@
 
   case 146:
 
-/* Line 678 of lalr1.cc  */
-#line 1949 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1951 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       IndexKeyList* keyList = new IndexKeyList(LOC((yyloc)));
       keyList->addKeySpec(dynamic_cast<IndexKeySpec*>((yysemantic_stack_[(1) - (1)].node)));
@@ -4170,8 +4204,8 @@
 
   case 147:
 
-/* Line 678 of lalr1.cc  */
-#line 1955 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1957 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       dynamic_cast<IndexKeyList*>((yysemantic_stack_[(3) - (1)].node))->addKeySpec(dynamic_cast<IndexKeySpec*>((yysemantic_stack_[(3) - (3)].node)));
       (yyval.node) = (yysemantic_stack_[(3) - (1)].node);
@@ -4180,8 +4214,8 @@
 
   case 148:
 
-/* Line 678 of lalr1.cc  */
-#line 1964 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1966 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new IndexKeySpec(LOC((yyloc)), (yysemantic_stack_[(1) - (1)].expr), NULL, NULL);
     }
@@ -4189,8 +4223,8 @@
 
   case 149:
 
-/* Line 678 of lalr1.cc  */
-#line 1969 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1971 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new IndexKeySpec(LOC((yyloc)),
                             (yysemantic_stack_[(2) - (1)].expr),
@@ -4201,8 +4235,8 @@
 
   case 150:
 
-/* Line 678 of lalr1.cc  */
-#line 1976 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1978 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new IndexKeySpec(LOC((yyloc)),
                             (yysemantic_stack_[(2) - (1)].expr),
@@ -4213,8 +4247,8 @@
 
   case 151:
 
-/* Line 678 of lalr1.cc  */
-#line 1983 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1985 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new IndexKeySpec(LOC((yyloc)),
                             (yysemantic_stack_[(3) - (1)].expr),
@@ -4225,8 +4259,8 @@
 
   case 152:
 
-/* Line 678 of lalr1.cc  */
-#line 1995 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1997 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new ICCollSimpleCheck(LOC((yyloc)),
                                  static_cast<QName*>((yysemantic_stack_[(11) - (4)].expr)),
@@ -4238,8 +4272,8 @@
 
   case 153:
 
-/* Line 678 of lalr1.cc  */
-#line 2005 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2007 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new ICCollUniqueKeyCheck(LOC((yyloc)),
                                     static_cast<QName*>((yysemantic_stack_[(14) - (4)].expr)),
@@ -4251,8 +4285,8 @@
 
   case 154:
 
-/* Line 678 of lalr1.cc  */
-#line 2015 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2017 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new ICCollForeachNode(LOC((yyloc)),
                                  static_cast<QName*>((yysemantic_stack_[(13) - (4)].expr)),
@@ -4264,8 +4298,8 @@
 
   case 155:
 
-/* Line 678 of lalr1.cc  */
-#line 2026 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2028 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new ICForeignKey( LOC((yyloc)),
                             static_cast<QName*>((yysemantic_stack_[(22) - (4)].expr)),
@@ -4280,8 +4314,8 @@
 
   case 156:
 
-/* Line 678 of lalr1.cc  */
-#line 2042 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2044 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       if ((yysemantic_stack_[(1) - (1)].expr) == NULL)
       {
@@ -4301,8 +4335,8 @@
 
   case 157:
 
-/* Line 678 of lalr1.cc  */
-#line 2062 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2064 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
     }
@@ -4310,8 +4344,8 @@
 
   case 158:
 
-/* Line 678 of lalr1.cc  */
-#line 2067 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2069 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
     }
@@ -4319,8 +4353,8 @@
 
   case 159:
 
-/* Line 678 of lalr1.cc  */
-#line 2071 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2073 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.expr) =  NULL;
     }
@@ -4328,8 +4362,8 @@
 
   case 160:
 
-/* Line 678 of lalr1.cc  */
-#line 2079 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2081 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
     }
@@ -4337,8 +4371,8 @@
 
   case 161:
 
-/* Line 678 of lalr1.cc  */
-#line 2084 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2086 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
     }
@@ -4346,8 +4380,8 @@
 
   case 162:
 
-/* Line 678 of lalr1.cc  */
-#line 2088 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2090 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.expr) =  new BlockBody(LOC((yyloc)));
     }
@@ -4355,8 +4389,8 @@
 
   case 163:
 
-/* Line 678 of lalr1.cc  */
-#line 2096 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2098 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
     }
@@ -4364,8 +4398,8 @@
 
   case 164:
 
-/* Line 678 of lalr1.cc  */
-#line 2101 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2103 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       BlockBody* blk = static_cast<BlockBody*>((yysemantic_stack_[(2) - (1)].expr));
 
@@ -4377,8 +4411,8 @@
 
   case 165:
 
-/* Line 678 of lalr1.cc  */
-#line 2113 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2115 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       BlockBody* blk = new BlockBody(LOC((yyloc)));
       blk->add((yysemantic_stack_[(1) - (1)].expr));
@@ -4388,8 +4422,8 @@
 
   case 166:
 
-/* Line 678 of lalr1.cc  */
-#line 2120 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2122 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       BlockBody* blk = static_cast<BlockBody*>((yysemantic_stack_[(2) - (1)].expr));
 
@@ -4401,8 +4435,8 @@
 
   case 179:
 
-/* Line 678 of lalr1.cc  */
-#line 2149 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2151 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.expr) = (yysemantic_stack_[(3) - (2)].expr);
     }
@@ -4410,8 +4444,8 @@
 
   case 180:
 
-/* Line 678 of lalr1.cc  */
-#line 2154 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2156 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.expr) = new BlockBody(LOC((yyloc)));
     }
@@ -4419,8 +4453,8 @@
 
   case 181:
 
-/* Line 678 of lalr1.cc  */
-#line 2162 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2164 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       if (dynamic_cast<BlockBody*>((yysemantic_stack_[(3) - (2)].expr)) == NULL)
       {
@@ -4437,8 +4471,8 @@
 
   case 182:
 
-/* Line 678 of lalr1.cc  */
-#line 2179 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2181 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.expr) = (yysemantic_stack_[(3) - (2)].expr);
     }
@@ -4446,8 +4480,8 @@
 
   case 183:
 
-/* Line 678 of lalr1.cc  */
-#line 2187 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2189 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.expr) = (yysemantic_stack_[(2) - (1)].expr);
     }
@@ -4455,8 +4489,8 @@
 
   case 184:
 
-/* Line 678 of lalr1.cc  */
-#line 2195 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2197 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       VarDeclStmt* vdecl = static_cast<VarDeclStmt*>((yysemantic_stack_[(3) - (1)].expr));
       vdecl->add((yysemantic_stack_[(3) - (3)].node));
@@ -4466,8 +4500,8 @@
 
   case 185:
 
-/* Line 678 of lalr1.cc  */
-#line 2202 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2204 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       VarDeclStmt* vdecl = new VarDeclStmt(LOC((yyloc)), NULL);
       vdecl->add((yysemantic_stack_[(2) - (2)].node));
@@ -4477,8 +4511,8 @@
 
   case 186:
 
-/* Line 678 of lalr1.cc  */
-#line 2209 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2211 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       VarDeclStmt* vdecl = new VarDeclStmt(LOC((yyloc)), static_cast<AnnotationListParsenode*>((yysemantic_stack_[(3) - (1)].node)));
       vdecl->add((yysemantic_stack_[(3) - (3)].node));
@@ -4488,8 +4522,8 @@
 
   case 187:
 
-/* Line 678 of lalr1.cc  */
-#line 2219 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2221 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       VarDecl* vd = new VarDecl(LOC((yyloc)),
                                 static_cast<QName*>((yysemantic_stack_[(2) - (2)].expr)),
@@ -4505,8 +4539,8 @@
 
   case 188:
 
-/* Line 678 of lalr1.cc  */
-#line 2231 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2233 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       VarDecl* vd = new VarDecl(LOC((yyloc)),
                                 static_cast<QName*>((yysemantic_stack_[(3) - (2)].expr)),
@@ -4523,8 +4557,8 @@
 
   case 189:
 
-/* Line 678 of lalr1.cc  */
-#line 2244 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2246 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       VarDecl* vd = new VarDecl(LOC((yyloc)),
                                 static_cast<QName*>((yysemantic_stack_[(4) - (2)].expr)),
@@ -4540,8 +4574,8 @@
 
   case 190:
 
-/* Line 678 of lalr1.cc  */
-#line 2256 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2258 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       VarDecl* vd = new VarDecl(LOC((yyloc)),
                                 static_cast<QName*>((yysemantic_stack_[(5) - (2)].expr)),
@@ -4557,8 +4591,8 @@
 
   case 191:
 
-/* Line 678 of lalr1.cc  */
-#line 2272 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2274 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.expr) = new AssignExpr(LOC((yyloc)), static_cast<QName*>((yysemantic_stack_[(5) - (2)].expr)), (yysemantic_stack_[(5) - (4)].expr));
     }
@@ -4566,8 +4600,8 @@
 
   case 192:
 
-/* Line 678 of lalr1.cc  */
-#line 2280 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2282 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.expr) = new ApplyExpr(LOC((yyloc)), (yysemantic_stack_[(2) - (1)].expr));
     }
@@ -4575,8 +4609,8 @@
 
   case 193:
 
-/* Line 678 of lalr1.cc  */
-#line 2288 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2290 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.expr) = new ExitExpr(LOC((yyloc)), (yysemantic_stack_[(4) - (3)].expr));
     }
@@ -4584,8 +4618,8 @@
 
   case 194:
 
-/* Line 678 of lalr1.cc  */
-#line 2296 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2298 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       BlockBody* bb = dynamic_cast<BlockBody *>((yysemantic_stack_[(5) - (5)].expr));
       if (bb == NULL)
@@ -4600,8 +4634,8 @@
 
   case 195:
 
-/* Line 678 of lalr1.cc  */
-#line 2311 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2313 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.expr) = new FlowCtlStatement(LOC((yyloc)), FlowCtlStatement::BREAK);
     }
@@ -4609,8 +4643,8 @@
 
   case 196:
 
-/* Line 678 of lalr1.cc  */
-#line 2316 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2318 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.expr) = new FlowCtlStatement( LOC((yyloc)), FlowCtlStatement::CONTINUE );
     }
@@ -4618,8 +4652,8 @@
 
   case 197:
 
-/* Line 678 of lalr1.cc  */
-#line 2324 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2326 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       ReturnExpr* re = dynamic_cast<ReturnExpr*>((yysemantic_stack_[(2) - (2)].expr));
       (yyval.expr) = new FLWORExpr(LOC((yyloc)),
@@ -4633,8 +4667,8 @@
 
   case 198:
 
-/* Line 678 of lalr1.cc  */
-#line 2338 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2340 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       exprnode* retExpr = (yysemantic_stack_[(2) - (2)].expr);
 
@@ -4651,8 +4685,8 @@
 
   case 199:
 
-/* Line 678 of lalr1.cc  */
-#line 2355 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2357 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       exprnode* thenExpr = (yysemantic_stack_[(8) - (6)].expr);
       exprnode* elseExpr = (yysemantic_stack_[(8) - (8)].expr);
@@ -4677,8 +4711,8 @@
 
   case 200:
 
-/* Line 678 of lalr1.cc  */
-#line 2380 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2382 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.expr) = new TryExpr(LOC((yyloc)), (yysemantic_stack_[(3) - (2)].expr), (yysemantic_stack_[(3) - (3)].expr));
     }
@@ -4686,8 +4720,8 @@
 
   case 201:
 
-/* Line 678 of lalr1.cc  */
-#line 2388 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2390 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       CatchListExpr* cle = new CatchListExpr( LOC((yyloc)) );
       cle->push_back( static_cast<CatchExpr*>((yysemantic_stack_[(1) - (1)].expr)) );
@@ -4697,8 +4731,8 @@
 
   case 202:
 
-/* Line 678 of lalr1.cc  */
-#line 2395 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2397 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       CatchListExpr *cle = dynamic_cast<CatchListExpr*>((yysemantic_stack_[(2) - (1)].expr));
       if ( cle )
@@ -4709,8 +4743,8 @@
 
   case 203:
 
-/* Line 678 of lalr1.cc  */
-#line 2406 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2408 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
        (yyval.expr) = new CatchExpr(LOC((yyloc)), *(yysemantic_stack_[(3) - (2)].name_test_list), (yysemantic_stack_[(3) - (3)].expr));
        delete (yysemantic_stack_[(3) - (2)].name_test_list);
@@ -4719,8 +4753,8 @@
 
   case 204:
 
-/* Line 678 of lalr1.cc  */
-#line 2416 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2418 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
     }
@@ -4728,8 +4762,8 @@
 
   case 205:
 
-/* Line 678 of lalr1.cc  */
-#line 2421 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2423 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       Expr* expr = dynamic_cast<Expr*>((yysemantic_stack_[(3) - (1)].expr));
       if ( !expr )
@@ -4744,8 +4778,8 @@
 
   case 219:
 
-/* Line 678 of lalr1.cc  */
-#line 2459 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2461 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       ReturnExpr *re = dynamic_cast<ReturnExpr*>((yysemantic_stack_[(2) - (2)].expr));
       (yyval.expr) = new FLWORExpr(LOC((yyloc)),
@@ -4759,8 +4793,8 @@
 
   case 220:
 
-/* Line 678 of lalr1.cc  */
-#line 2473 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2475 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.expr) = new ReturnExpr( LOC((yyloc)), (yysemantic_stack_[(2) - (2)].expr) );
     }
@@ -4768,8 +4802,8 @@
 
   case 221:
 
-/* Line 678 of lalr1.cc  */
-#line 2481 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2483 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.strval) = parser::the_sliding;
     }
@@ -4777,8 +4811,8 @@
 
   case 222:
 
-/* Line 678 of lalr1.cc  */
-#line 2486 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2488 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.strval) = parser::the_tumbling;
     }
@@ -4786,8 +4820,8 @@
 
   case 223:
 
-/* Line 678 of lalr1.cc  */
-#line 2494 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2496 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.strval) = parser::the_start;
     }
@@ -4795,8 +4829,8 @@
 
   case 224:
 
-/* Line 678 of lalr1.cc  */
-#line 2499 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2501 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.strval) = parser::the_end;
     }
@@ -4804,8 +4838,8 @@
 
   case 225:
 
-/* Line 678 of lalr1.cc  */
-#line 2504 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2506 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
     (yyval.strval) = parser::the_only_end;
   }
@@ -4813,8 +4847,8 @@
 
   case 226:
 
-/* Line 678 of lalr1.cc  */
-#line 2512 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2514 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new FLWORWinCond(LOC((yyloc)),
                             dynamic_cast<WindowVars*>((yysemantic_stack_[(4) - (2)].node)),
@@ -4826,8 +4860,8 @@
 
   case 227:
 
-/* Line 678 of lalr1.cc  */
-#line 2521 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2523 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new FLWORWinCond(LOC((yyloc)),
                             NULL,
@@ -4839,8 +4873,8 @@
 
   case 228:
 
-/* Line 678 of lalr1.cc  */
-#line 2533 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2535 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new WindowClause (LOC ((yyloc)),
                              ((yysemantic_stack_[(5) - (2)].strval) == parser::the_tumbling ?
@@ -4854,8 +4888,8 @@
 
   case 229:
 
-/* Line 678 of lalr1.cc  */
-#line 2543 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2545 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new WindowClause (LOC ((yyloc)),
                              ((yysemantic_stack_[(4) - (2)].strval) == parser::the_tumbling ?
@@ -4868,8 +4902,8 @@
 
   case 230:
 
-/* Line 678 of lalr1.cc  */
-#line 2556 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2558 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new CountClause(LOC((yyloc)), static_cast<QName*>((yysemantic_stack_[(3) - (3)].expr)));
     }
@@ -4877,8 +4911,8 @@
 
   case 239:
 
-/* Line 678 of lalr1.cc  */
-#line 2580 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2582 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       FLWORClauseList *fcl = new FLWORClauseList( LOC((yyloc)) );
       fcl->push_back( dynamic_cast<FLWORClause*>((yysemantic_stack_[(1) - (1)].node)) );
@@ -4888,8 +4922,8 @@
 
   case 240:
 
-/* Line 678 of lalr1.cc  */
-#line 2587 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2589 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       FLWORClauseList *fcl = dynamic_cast<FLWORClauseList*>((yysemantic_stack_[(2) - (1)].node));
       fcl->push_back( dynamic_cast<FLWORClause*>((yysemantic_stack_[(2) - (2)].node)) );
@@ -4899,8 +4933,8 @@
 
   case 241:
 
-/* Line 678 of lalr1.cc  */
-#line 2597 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2599 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new ForClause(LOC((yyloc)), dynamic_cast<VarInDeclList*>((yysemantic_stack_[(3) - (3)].node)));
     }
@@ -4908,8 +4942,8 @@
 
   case 242:
 
-/* Line 678 of lalr1.cc  */
-#line 2605 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2607 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       VarInDeclList *vdl = new VarInDeclList( LOC((yyloc)) );
       vdl->push_back( dynamic_cast<VarInDecl*>((yysemantic_stack_[(1) - (1)].node)) );
@@ -4919,8 +4953,8 @@
 
   case 243:
 
-/* Line 678 of lalr1.cc  */
-#line 2612 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2614 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       if ( VarInDeclList *vdl = dynamic_cast<VarInDeclList*>((yysemantic_stack_[(4) - (1)].node)) )
         vdl->push_back( dynamic_cast<VarInDecl*>((yysemantic_stack_[(4) - (4)].node)) );
@@ -4930,8 +4964,8 @@
 
   case 244:
 
-/* Line 678 of lalr1.cc  */
-#line 2622 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2624 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new VarInDecl(LOC((yyloc)),
                          static_cast<QName*>((yysemantic_stack_[(3) - (1)].expr)),
@@ -4945,8 +4979,8 @@
 
   case 245:
 
-/* Line 678 of lalr1.cc  */
-#line 2632 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2634 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new VarInDecl(LOC((yyloc)),
                          static_cast<QName*>((yysemantic_stack_[(5) - (1)].expr)),
@@ -4960,8 +4994,8 @@
 
   case 246:
 
-/* Line 678 of lalr1.cc  */
-#line 2642 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2644 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new VarInDecl(LOC((yyloc)),
                          static_cast<QName*>((yysemantic_stack_[(4) - (1)].expr)),
@@ -4975,8 +5009,8 @@
 
   case 247:
 
-/* Line 678 of lalr1.cc  */
-#line 2652 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2654 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new VarInDecl(LOC((yyloc)),
                          static_cast<QName*>((yysemantic_stack_[(6) - (1)].expr)),
@@ -4990,8 +5024,8 @@
 
   case 248:
 
-/* Line 678 of lalr1.cc  */
-#line 2662 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2664 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new VarInDecl(LOC((yyloc)),
                          static_cast<QName*>((yysemantic_stack_[(4) - (1)].expr)),
@@ -5005,8 +5039,8 @@
 
   case 249:
 
-/* Line 678 of lalr1.cc  */
-#line 2672 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2674 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new VarInDecl(LOC((yyloc)),
                          static_cast<QName*>((yysemantic_stack_[(6) - (1)].expr)),
@@ -5020,8 +5054,8 @@
 
   case 250:
 
-/* Line 678 of lalr1.cc  */
-#line 2682 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2684 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new VarInDecl(LOC((yyloc)),
                          static_cast<QName*>((yysemantic_stack_[(5) - (1)].expr)),
@@ -5035,8 +5069,8 @@
 
   case 251:
 
-/* Line 678 of lalr1.cc  */
-#line 2692 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2694 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new VarInDecl(LOC((yyloc)),
                          static_cast<QName*>((yysemantic_stack_[(7) - (1)].expr)),
@@ -5050,8 +5084,8 @@
 
   case 252:
 
-/* Line 678 of lalr1.cc  */
-#line 2703 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2705 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new VarInDecl(LOC((yyloc)),
                          static_cast<QName*>((yysemantic_stack_[(4) - (1)].expr)),
@@ -5064,8 +5098,8 @@
 
   case 253:
 
-/* Line 678 of lalr1.cc  */
-#line 2712 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2714 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new VarInDecl(LOC((yyloc)),
                          static_cast<QName*>((yysemantic_stack_[(5) - (1)].expr)),
@@ -5079,8 +5113,8 @@
 
   case 254:
 
-/* Line 678 of lalr1.cc  */
-#line 2722 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2724 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new VarInDecl(LOC ((yyloc)),
                          static_cast<QName*>((yysemantic_stack_[(5) - (1)].expr)),
@@ -5094,8 +5128,8 @@
 
   case 255:
 
-/* Line 678 of lalr1.cc  */
-#line 2732 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2734 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new VarInDecl(LOC ((yyloc)),
                          static_cast<QName*>((yysemantic_stack_[(6) - (1)].expr)),
@@ -5109,8 +5143,8 @@
 
   case 256:
 
-/* Line 678 of lalr1.cc  */
-#line 2748 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2750 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new PositionalVar(LOC((yyloc)), static_cast<QName*>((yysemantic_stack_[(3) - (3)].expr)));
     }
@@ -5118,8 +5152,8 @@
 
   case 257:
 
-/* Line 678 of lalr1.cc  */
-#line 2757 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2759 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new FTScoreVar(LOC((yyloc)), static_cast<QName*>((yysemantic_stack_[(3) - (3)].expr)));
     }
@@ -5127,8 +5161,8 @@
 
   case 258:
 
-/* Line 678 of lalr1.cc  */
-#line 2766 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2768 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new LetClause( LOC((yyloc)), dynamic_cast<VarGetsDeclList*>((yysemantic_stack_[(2) - (2)].node)) );
         }
@@ -5136,8 +5170,8 @@
 
   case 259:
 
-/* Line 678 of lalr1.cc  */
-#line 2774 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2776 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             VarGetsDeclList *vgdl = new VarGetsDeclList( LOC((yyloc)) );
             vgdl->push_back( dynamic_cast<VarGetsDecl*>((yysemantic_stack_[(1) - (1)].node)) );
@@ -5147,8 +5181,8 @@
 
   case 260:
 
-/* Line 678 of lalr1.cc  */
-#line 2780 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2782 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             if( VarGetsDeclList *vgdl = dynamic_cast<VarGetsDeclList*>((yysemantic_stack_[(3) - (1)].node)) )
                 vgdl->push_back( dynamic_cast<VarGetsDecl*>((yysemantic_stack_[(3) - (3)].node)) );
@@ -5158,8 +5192,8 @@
 
   case 261:
 
-/* Line 678 of lalr1.cc  */
-#line 2792 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2794 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new VarGetsDecl(LOC ((yyloc)),
                            static_cast<QName*>((yysemantic_stack_[(4) - (2)].expr)),
@@ -5171,8 +5205,8 @@
 
   case 262:
 
-/* Line 678 of lalr1.cc  */
-#line 2800 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2802 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new VarGetsDecl(LOC ((yyloc)),
                            static_cast<QName*>((yysemantic_stack_[(5) - (2)].expr)),
@@ -5184,8 +5218,8 @@
 
   case 263:
 
-/* Line 678 of lalr1.cc  */
-#line 2810 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2812 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new VarGetsDecl(LOC ((yyloc)),
                            dynamic_cast<FTScoreVar*>((yysemantic_stack_[(3) - (1)].node))->get_var_name(),
@@ -5197,8 +5231,8 @@
 
   case 264:
 
-/* Line 678 of lalr1.cc  */
-#line 2818 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2820 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new VarGetsDecl(LOC ((yyloc)),
                            static_cast<QName*>((yysemantic_stack_[(6) - (2)].expr)),
@@ -5210,8 +5244,8 @@
 
   case 265:
 
-/* Line 678 of lalr1.cc  */
-#line 2830 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2832 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new WindowVarDecl(LOC ((yyloc)),
                              static_cast<QName*>((yysemantic_stack_[(4) - (2)].expr)),
@@ -5221,8 +5255,8 @@
 
   case 266:
 
-/* Line 678 of lalr1.cc  */
-#line 2836 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2838 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new WindowVarDecl(LOC ((yyloc)),
                              static_cast<QName*>((yysemantic_stack_[(5) - (2)].expr)),
@@ -5233,8 +5267,8 @@
 
   case 268:
 
-/* Line 678 of lalr1.cc  */
-#line 2849 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2851 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new WindowVars(LOC((yyloc)), NULL, static_cast<QName*>((yysemantic_stack_[(2) - (2)].expr)), NULL, NULL);
     }
@@ -5242,8 +5276,8 @@
 
   case 269:
 
-/* Line 678 of lalr1.cc  */
-#line 2853 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2855 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = (yysemantic_stack_[(3) - (3)].node);
       dynamic_cast<WindowVars *>((yyval.node))->set_curr(static_cast<QName*>((yysemantic_stack_[(3) - (2)].expr)));
@@ -5252,8 +5286,8 @@
 
   case 270:
 
-/* Line 678 of lalr1.cc  */
-#line 2861 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2863 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new WindowVars(LOC((yyloc)), dynamic_cast<PositionalVar*>((yysemantic_stack_[(1) - (1)].node)), NULL, NULL, NULL);
     }
@@ -5261,8 +5295,8 @@
 
   case 271:
 
-/* Line 678 of lalr1.cc  */
-#line 2865 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2867 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = (yysemantic_stack_[(2) - (2)].node);
       dynamic_cast<WindowVars *>((yyval.node))->set_posvar(dynamic_cast<PositionalVar*>((yysemantic_stack_[(2) - (1)].node)));
@@ -5271,8 +5305,8 @@
 
   case 273:
 
-/* Line 678 of lalr1.cc  */
-#line 2874 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2876 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new WindowVars(LOC((yyloc)), NULL, NULL, static_cast<QName*>((yysemantic_stack_[(6) - (3)].expr)), static_cast<QName*>((yysemantic_stack_[(6) - (6)].expr)));
     }
@@ -5280,8 +5314,8 @@
 
   case 274:
 
-/* Line 678 of lalr1.cc  */
-#line 2878 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2880 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new WindowVars(LOC((yyloc)), NULL, NULL, NULL, static_cast<QName*>((yysemantic_stack_[(3) - (3)].expr)));
     }
@@ -5289,8 +5323,8 @@
 
   case 275:
 
-/* Line 678 of lalr1.cc  */
-#line 2882 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2884 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new WindowVars(LOC((yyloc)), NULL, NULL, static_cast<QName*>((yysemantic_stack_[(3) - (3)].expr)), NULL);
     }
@@ -5298,8 +5332,8 @@
 
   case 276:
 
-/* Line 678 of lalr1.cc  */
-#line 2892 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2894 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new WhereClause(LOC ((yyloc)), (yysemantic_stack_[(2) - (2)].expr));
     }
@@ -5307,8 +5341,8 @@
 
   case 277:
 
-/* Line 678 of lalr1.cc  */
-#line 2900 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2902 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new GroupByClause(LOC((yyloc)), dynamic_cast<GroupSpecList*>((yysemantic_stack_[(3) - (3)].node)));
     }
@@ -5316,8 +5350,8 @@
 
   case 278:
 
-/* Line 678 of lalr1.cc  */
-#line 2907 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2909 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             GroupSpecList *gsl = new GroupSpecList( LOC((yyloc)) );
             gsl->push_back( dynamic_cast<GroupSpec*>((yysemantic_stack_[(1) - (1)].node)) );
@@ -5327,8 +5361,8 @@
 
   case 279:
 
-/* Line 678 of lalr1.cc  */
-#line 2913 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2915 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             GroupSpecList *gsl = dynamic_cast<GroupSpecList*>((yysemantic_stack_[(3) - (1)].node));
             if ( gsl )
@@ -5339,8 +5373,8 @@
 
   case 280:
 
-/* Line 678 of lalr1.cc  */
-#line 2924 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2926 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new GroupSpec(LOC((yyloc)), static_cast<QName*>((yysemantic_stack_[(2) - (2)].expr)), NULL);
     }
@@ -5348,8 +5382,8 @@
 
   case 281:
 
-/* Line 678 of lalr1.cc  */
-#line 2928 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2930 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new GroupSpec(LOC((yyloc)),
                          static_cast<QName*>((yysemantic_stack_[(3) - (2)].expr)),
@@ -5359,8 +5393,8 @@
 
   case 282:
 
-/* Line 678 of lalr1.cc  */
-#line 2937 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2939 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new GroupCollationSpec( LOC((yyloc)), SYMTAB((yysemantic_stack_[(2) - (2)].sval)) );
         }
@@ -5368,8 +5402,8 @@
 
   case 283:
 
-/* Line 678 of lalr1.cc  */
-#line 2945 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2947 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new OrderByClause(
                 LOC((yyloc)), dynamic_cast<OrderSpecList*>((yysemantic_stack_[(3) - (3)].node))
@@ -5379,8 +5413,8 @@
 
   case 284:
 
-/* Line 678 of lalr1.cc  */
-#line 2951 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2953 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new OrderByClause(
                 LOC((yyloc)), dynamic_cast<OrderSpecList*>((yysemantic_stack_[(4) - (4)].node)), true
@@ -5390,8 +5424,8 @@
 
   case 285:
 
-/* Line 678 of lalr1.cc  */
-#line 2961 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2963 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             OrderSpecList *osl = new OrderSpecList( LOC((yyloc)) );
             osl->push_back( dynamic_cast<OrderSpec*>((yysemantic_stack_[(1) - (1)].node)) );
@@ -5401,8 +5435,8 @@
 
   case 286:
 
-/* Line 678 of lalr1.cc  */
-#line 2967 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2969 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             if ( OrderSpecList* osl = dynamic_cast<OrderSpecList*>((yysemantic_stack_[(3) - (1)].node)) )
                 osl->push_back( dynamic_cast<OrderSpec*>((yysemantic_stack_[(3) - (3)].node)) );
@@ -5412,8 +5446,8 @@
 
   case 287:
 
-/* Line 678 of lalr1.cc  */
-#line 2977 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2979 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new OrderSpec( LOC((yyloc)), (yysemantic_stack_[(1) - (1)].expr), NULL );
         }
@@ -5421,8 +5455,8 @@
 
   case 288:
 
-/* Line 678 of lalr1.cc  */
-#line 2981 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2983 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new OrderSpec(
                 LOC((yyloc)), (yysemantic_stack_[(2) - (1)].expr), dynamic_cast<OrderModifierPN*>((yysemantic_stack_[(2) - (2)].node))
@@ -5432,8 +5466,8 @@
 
   case 289:
 
-/* Line 678 of lalr1.cc  */
-#line 2991 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2993 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new OrderModifierPN(
                 LOC((yyloc)), dynamic_cast<OrderDirSpec*>((yysemantic_stack_[(1) - (1)].node)), NULL, NULL
@@ -5443,8 +5477,8 @@
 
   case 290:
 
-/* Line 678 of lalr1.cc  */
-#line 2997 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2999 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new OrderModifierPN(
                 LOC((yyloc)), NULL, dynamic_cast<OrderEmptySpec*>((yysemantic_stack_[(1) - (1)].node)), NULL
@@ -5454,8 +5488,8 @@
 
   case 291:
 
-/* Line 678 of lalr1.cc  */
-#line 3003 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3005 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new OrderModifierPN(
                 LOC((yyloc)), NULL, NULL, dynamic_cast<OrderCollationSpec*>((yysemantic_stack_[(1) - (1)].node))
@@ -5465,8 +5499,8 @@
 
   case 292:
 
-/* Line 678 of lalr1.cc  */
-#line 3009 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3011 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new OrderModifierPN(
                 LOC((yyloc)),
@@ -5479,8 +5513,8 @@
 
   case 293:
 
-/* Line 678 of lalr1.cc  */
-#line 3018 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3020 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new OrderModifierPN(
                 LOC((yyloc)),
@@ -5493,8 +5527,8 @@
 
   case 294:
 
-/* Line 678 of lalr1.cc  */
-#line 3027 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3029 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new OrderModifierPN(
                 LOC((yyloc)),
@@ -5507,8 +5541,8 @@
 
   case 295:
 
-/* Line 678 of lalr1.cc  */
-#line 3036 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3038 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new OrderModifierPN(
                 LOC((yyloc)),
@@ -5521,8 +5555,8 @@
 
   case 296:
 
-/* Line 678 of lalr1.cc  */
-#line 3049 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3051 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new OrderDirSpec( LOC((yyloc)), ParseConstants::dir_ascending );
         }
@@ -5530,8 +5564,8 @@
 
   case 297:
 
-/* Line 678 of lalr1.cc  */
-#line 3053 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3055 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new OrderDirSpec( LOC((yyloc)), ParseConstants::dir_descending );
         }
@@ -5539,8 +5573,8 @@
 
   case 298:
 
-/* Line 678 of lalr1.cc  */
-#line 3061 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3063 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new OrderEmptySpec(
                 LOC((yyloc)), StaticContextConsts::empty_greatest
@@ -5550,8 +5584,8 @@
 
   case 299:
 
-/* Line 678 of lalr1.cc  */
-#line 3067 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3069 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new OrderEmptySpec(
                 LOC((yyloc)), StaticContextConsts::empty_least
@@ -5561,8 +5595,8 @@
 
   case 300:
 
-/* Line 678 of lalr1.cc  */
-#line 3077 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3079 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new OrderCollationSpec( LOC((yyloc)), SYMTAB((yysemantic_stack_[(2) - (2)].sval)) );
         }
@@ -5570,8 +5604,8 @@
 
   case 301:
 
-/* Line 678 of lalr1.cc  */
-#line 3085 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3087 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.expr) = new QuantifiedExpr(
                 LOC((yyloc)),
@@ -5584,8 +5618,8 @@
 
   case 302:
 
-/* Line 678 of lalr1.cc  */
-#line 3094 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3096 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.expr) = new QuantifiedExpr(
                 LOC((yyloc)),
@@ -5598,8 +5632,8 @@
 
   case 303:
 
-/* Line 678 of lalr1.cc  */
-#line 3107 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3109 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       QVarInDeclList *qvidl = new QVarInDeclList( LOC((yyloc)) );
       qvidl->push_back( dynamic_cast<QVarInDecl*>((yysemantic_stack_[(1) - (1)].node)) );
@@ -5610,8 +5644,8 @@
 
   case 304:
 
-/* Line 678 of lalr1.cc  */
-#line 3114 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3116 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       QVarInDeclList *qvidl = dynamic_cast<QVarInDeclList*>((yysemantic_stack_[(4) - (1)].node));
       qvidl->push_back( dynamic_cast<QVarInDecl*>((yysemantic_stack_[(4) - (4)].node)) );
@@ -5621,8 +5655,8 @@
 
   case 305:
 
-/* Line 678 of lalr1.cc  */
-#line 3126 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3128 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new QVarInDecl(LOC((yyloc)), static_cast<QName*>((yysemantic_stack_[(3) - (1)].expr)), (yysemantic_stack_[(3) - (3)].expr));
     }
@@ -5630,8 +5664,8 @@
 
   case 306:
 
-/* Line 678 of lalr1.cc  */
-#line 3130 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3132 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new QVarInDecl(LOC((yyloc)),
                           static_cast<QName*>((yysemantic_stack_[(4) - (1)].expr)),
@@ -5642,8 +5676,8 @@
 
   case 307:
 
-/* Line 678 of lalr1.cc  */
-#line 3142 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3144 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.expr) = new SwitchExpr(LOC((yyloc)), (yysemantic_stack_[(8) - (3)].expr), static_cast<SwitchCaseClauseList*>((yysemantic_stack_[(8) - (5)].node)), (yysemantic_stack_[(8) - (8)].expr));
     }
@@ -5651,8 +5685,8 @@
 
   case 308:
 
-/* Line 678 of lalr1.cc  */
-#line 3149 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3151 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       SwitchCaseClauseList* scc_list_p = new SwitchCaseClauseList(LOC((yyloc)));
       scc_list_p->push_back(static_cast<SwitchCaseClause*>((yysemantic_stack_[(1) - (1)].node)));
@@ -5662,8 +5696,8 @@
 
   case 309:
 
-/* Line 678 of lalr1.cc  */
-#line 3155 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3157 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       SwitchCaseClauseList* scc_list_p = static_cast<SwitchCaseClauseList*>((yysemantic_stack_[(2) - (1)].node));
       scc_list_p->push_back(static_cast<SwitchCaseClause*>((yysemantic_stack_[(2) - (2)].node)));
@@ -5673,8 +5707,8 @@
 
   case 310:
 
-/* Line 678 of lalr1.cc  */
-#line 3164 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3166 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new SwitchCaseClause(LOC((yyloc)), dynamic_cast<SwitchCaseOperandList*>((yysemantic_stack_[(3) - (1)].node)), (yysemantic_stack_[(3) - (3)].expr));
     }
@@ -5682,8 +5716,8 @@
 
   case 311:
 
-/* Line 678 of lalr1.cc  */
-#line 3171 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3173 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       SwitchCaseOperandList* sco_list_p = new SwitchCaseOperandList(LOC((yyloc)));
       sco_list_p->push_back((yysemantic_stack_[(2) - (2)].expr));
@@ -5693,8 +5727,8 @@
 
   case 312:
 
-/* Line 678 of lalr1.cc  */
-#line 3177 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3179 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       SwitchCaseOperandList* sco_list_p = static_cast<SwitchCaseOperandList*>((yysemantic_stack_[(3) - (1)].node));
       sco_list_p->push_back((yysemantic_stack_[(3) - (3)].expr));
@@ -5704,8 +5738,8 @@
 
   case 313:
 
-/* Line 678 of lalr1.cc  */
-#line 3188 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3190 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.expr) = new SwitchExpr(LOC((yyloc)), (yysemantic_stack_[(8) - (3)].expr), static_cast<SwitchCaseClauseList*>((yysemantic_stack_[(8) - (5)].node)), (yysemantic_stack_[(8) - (8)].expr));
     }
@@ -5713,8 +5747,8 @@
 
   case 314:
 
-/* Line 678 of lalr1.cc  */
-#line 3195 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3197 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       SwitchCaseClauseList* scc_list_p = new SwitchCaseClauseList(LOC((yyloc)));
       scc_list_p->push_back(static_cast<SwitchCaseClause*>((yysemantic_stack_[(1) - (1)].node)));
@@ -5724,8 +5758,8 @@
 
   case 315:
 
-/* Line 678 of lalr1.cc  */
-#line 3201 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3203 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       SwitchCaseClauseList* scc_list_p = static_cast<SwitchCaseClauseList*>((yysemantic_stack_[(2) - (1)].node));
       scc_list_p->push_back(static_cast<SwitchCaseClause*>((yysemantic_stack_[(2) - (2)].node)));
@@ -5735,8 +5769,8 @@
 
   case 316:
 
-/* Line 678 of lalr1.cc  */
-#line 3210 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3212 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new SwitchCaseClause(LOC((yyloc)), dynamic_cast<SwitchCaseOperandList*>((yysemantic_stack_[(3) - (1)].node)), (yysemantic_stack_[(3) - (3)].expr));
     }
@@ -5744,8 +5778,8 @@
 
   case 317:
 
-/* Line 678 of lalr1.cc  */
-#line 3219 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3221 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.expr) = new TypeswitchExpr(LOC((yyloc)),
                               (yysemantic_stack_[(8) - (3)].expr),
@@ -5756,8 +5790,8 @@
 
   case 318:
 
-/* Line 678 of lalr1.cc  */
-#line 3226 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3228 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.expr) = new TypeswitchExpr(LOC ((yyloc)),
                               (yysemantic_stack_[(10) - (3)].expr),
@@ -5769,8 +5803,8 @@
 
   case 319:
 
-/* Line 678 of lalr1.cc  */
-#line 3237 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3239 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.expr) = new TypeswitchExpr(LOC((yyloc)),
                               (yysemantic_stack_[(8) - (3)].expr),
@@ -5781,8 +5815,8 @@
 
   case 320:
 
-/* Line 678 of lalr1.cc  */
-#line 3244 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3246 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.expr) = new TypeswitchExpr(LOC ((yyloc)),
                               (yysemantic_stack_[(10) - (3)].expr),
@@ -5794,8 +5828,8 @@
 
   case 321:
 
-/* Line 678 of lalr1.cc  */
-#line 3256 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3258 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       CaseClauseList* cc_list_p = new CaseClauseList(LOC ((yyloc)));
       cc_list_p->push_back(dynamic_cast<CaseClause*>((yysemantic_stack_[(1) - (1)].node)));
@@ -5805,8 +5839,8 @@
 
   case 322:
 
-/* Line 678 of lalr1.cc  */
-#line 3262 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3264 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       CaseClauseList* cc_list_p = dynamic_cast<CaseClauseList*>((yysemantic_stack_[(2) - (1)].node));
       cc_list_p->push_back(dynamic_cast<CaseClause*>((yysemantic_stack_[(2) - (2)].node)));
@@ -5816,8 +5850,8 @@
 
   case 323:
 
-/* Line 678 of lalr1.cc  */
-#line 3274 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3276 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new CaseClause(LOC ((yyloc)),
                           dynamic_cast<SequenceType*>((yysemantic_stack_[(4) - (2)].node)),
@@ -5827,8 +5861,8 @@
 
   case 324:
 
-/* Line 678 of lalr1.cc  */
-#line 3280 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3282 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new CaseClause(LOC ((yyloc)),
                           static_cast<QName*>((yysemantic_stack_[(7) - (3)].expr)),
@@ -5839,8 +5873,8 @@
 
   case 325:
 
-/* Line 678 of lalr1.cc  */
-#line 3291 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3293 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       CaseClauseList* cc_list_p = new CaseClauseList(LOC ((yyloc)));
       cc_list_p->push_back(dynamic_cast<CaseClause*>((yysemantic_stack_[(1) - (1)].node)));
@@ -5850,8 +5884,8 @@
 
   case 326:
 
-/* Line 678 of lalr1.cc  */
-#line 3297 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3299 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       CaseClauseList* cc_list_p = dynamic_cast<CaseClauseList*>((yysemantic_stack_[(2) - (1)].node));
       cc_list_p->push_back(dynamic_cast<CaseClause*>((yysemantic_stack_[(2) - (2)].node)));
@@ -5861,8 +5895,8 @@
 
   case 327:
 
-/* Line 678 of lalr1.cc  */
-#line 3308 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3310 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new CaseClause(LOC ((yyloc)),
                           dynamic_cast<SequenceType*>((yysemantic_stack_[(4) - (2)].node)),
@@ -5872,8 +5906,8 @@
 
   case 328:
 
-/* Line 678 of lalr1.cc  */
-#line 3314 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3316 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new CaseClause(LOC ((yyloc)),
                           static_cast<QName*>((yysemantic_stack_[(7) - (3)].expr)),
@@ -5884,8 +5918,8 @@
 
   case 329:
 
-/* Line 678 of lalr1.cc  */
-#line 3325 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3327 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.expr) = new IfExpr(LOC ((yyloc)), (yysemantic_stack_[(8) - (3)].expr), (yysemantic_stack_[(8) - (6)].expr), (yysemantic_stack_[(8) - (8)].expr));
     }
@@ -5893,8 +5927,8 @@
 
   case 330:
 
-/* Line 678 of lalr1.cc  */
-#line 3334 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3336 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
     }
@@ -5902,8 +5936,8 @@
 
   case 331:
 
-/* Line 678 of lalr1.cc  */
-#line 3338 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3340 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.expr) = new OrExpr( LOC((yyloc)), (yysemantic_stack_[(3) - (1)].expr), (yysemantic_stack_[(3) - (3)].expr) );
     }
@@ -5911,8 +5945,8 @@
 
   case 332:
 
-/* Line 678 of lalr1.cc  */
-#line 3347 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3349 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
         }
@@ -5920,8 +5954,8 @@
 
   case 333:
 
-/* Line 678 of lalr1.cc  */
-#line 3351 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3353 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.expr) = new AndExpr( LOC((yyloc)), (yysemantic_stack_[(3) - (1)].expr), (yysemantic_stack_[(3) - (3)].expr) );
         }
@@ -5929,8 +5963,8 @@
 
   case 334:
 
-/* Line 678 of lalr1.cc  */
-#line 3359 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3361 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
         }
@@ -5938,8 +5972,8 @@
 
   case 335:
 
-/* Line 678 of lalr1.cc  */
-#line 3363 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3365 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             /*  ::=  "eq" | "ne" | "lt" | "le" | "gt" | "ge" */
             (yyval.expr) = new ComparisonExpr(
@@ -5953,8 +5987,8 @@
 
   case 336:
 
-/* Line 678 of lalr1.cc  */
-#line 3373 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3375 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             /*  ::=  "is" | "<<" | ">>" */
             (yyval.expr) = new ComparisonExpr(
@@ -5965,8 +5999,8 @@
 
   case 337:
 
-/* Line 678 of lalr1.cc  */
-#line 3380 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3382 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.expr) = new ComparisonExpr(
                 LOC((yyloc)),
@@ -5979,8 +6013,8 @@
 
   case 338:
 
-/* Line 678 of lalr1.cc  */
-#line 3389 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3391 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.expr) = new ComparisonExpr(
                 LOC((yyloc)),
@@ -5993,8 +6027,8 @@
 
   case 339:
 
-/* Line 678 of lalr1.cc  */
-#line 3398 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3400 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             /* this call is needed */
             driver.lexer->interpretAsLessThan();
@@ -6003,8 +6037,8 @@
 
   case 340:
 
-/* Line 678 of lalr1.cc  */
-#line 3403 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3405 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.expr) = new ComparisonExpr(
                 LOC((yyloc)),
@@ -6017,8 +6051,8 @@
 
   case 341:
 
-/* Line 678 of lalr1.cc  */
-#line 3412 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3414 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.expr) = new ComparisonExpr(
                 LOC((yyloc)),
@@ -6031,8 +6065,8 @@
 
   case 342:
 
-/* Line 678 of lalr1.cc  */
-#line 3421 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3423 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.expr) = new ComparisonExpr(
                 LOC((yyloc)),
@@ -6045,8 +6079,8 @@
 
   case 343:
 
-/* Line 678 of lalr1.cc  */
-#line 3430 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3432 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.expr) = new ComparisonExpr(
                 LOC((yyloc)),
@@ -6059,8 +6093,8 @@
 
   case 344:
 
-/* Line 678 of lalr1.cc  */
-#line 3443 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3445 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
         }
@@ -6068,8 +6102,8 @@
 
   case 345:
 
-/* Line 678 of lalr1.cc  */
-#line 3447 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3449 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.expr) = new FTContainsExpr(
                 LOC((yyloc)),
@@ -6082,44 +6116,44 @@
 
   case 346:
 
-/* Line 678 of lalr1.cc  */
-#line 3459 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3461 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
-            (yyval.node) = NULL;
+          (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
         }
     break;
 
   case 347:
 
-/* Line 678 of lalr1.cc  */
-#line 3463 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3465 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
-            (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
+          (yyval.expr) = new StringConcatExpr(LOC((yyloc)), (yysemantic_stack_[(3) - (1)].expr), (yysemantic_stack_[(3) - (3)].expr));
         }
     break;
 
   case 348:
 
-/* Line 678 of lalr1.cc  */
-#line 3470 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3472 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
-            (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
+            (yyval.node) = NULL;
         }
     break;
 
   case 349:
 
-/* Line 678 of lalr1.cc  */
-#line 3474 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3476 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
-            (yyval.expr) = new RangeExpr( LOC((yyloc)), (yysemantic_stack_[(3) - (1)].expr), (yysemantic_stack_[(3) - (3)].expr) );
+            (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
         }
     break;
 
   case 350:
 
-/* Line 678 of lalr1.cc  */
-#line 3483 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3483 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
         }
@@ -6127,157 +6161,155 @@
 
   case 351:
 
-/* Line 678 of lalr1.cc  */
-#line 3487 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3487 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
-            (yyval.expr) = new AdditiveExpr( LOC((yyloc)), ParseConstants::op_plus, (yysemantic_stack_[(3) - (1)].expr), (yysemantic_stack_[(3) - (3)].expr) );
+            (yyval.expr) = new RangeExpr( LOC((yyloc)), (yysemantic_stack_[(3) - (1)].expr), (yysemantic_stack_[(3) - (3)].expr) );
         }
     break;
 
   case 352:
 
-/* Line 678 of lalr1.cc  */
-#line 3491 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3496 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
-            (yyval.expr) = new AdditiveExpr( LOC((yyloc)), ParseConstants::op_minus, (yysemantic_stack_[(3) - (1)].expr), (yysemantic_stack_[(3) - (3)].expr) );
+            (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
         }
     break;
 
   case 353:
 
-/* Line 678 of lalr1.cc  */
-#line 3500 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3500 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
-            (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
+            (yyval.expr) = new AdditiveExpr( LOC((yyloc)), ParseConstants::op_plus, (yysemantic_stack_[(3) - (1)].expr), (yysemantic_stack_[(3) - (3)].expr) );
         }
     break;
 
   case 354:
 
-/* Line 678 of lalr1.cc  */
-#line 3504 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3504 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
-            (yyval.expr) = new MultiplicativeExpr(
-                LOC((yyloc)), ParseConstants::op_mul, (yysemantic_stack_[(3) - (1)].expr), (yysemantic_stack_[(3) - (3)].expr)
-            );
+            (yyval.expr) = new AdditiveExpr( LOC((yyloc)), ParseConstants::op_minus, (yysemantic_stack_[(3) - (1)].expr), (yysemantic_stack_[(3) - (3)].expr) );
         }
     break;
 
   case 355:
 
-/* Line 678 of lalr1.cc  */
-#line 3510 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3513 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
-            (yyval.expr) = new MultiplicativeExpr(
-                LOC((yyloc)), ParseConstants::op_div, (yysemantic_stack_[(3) - (1)].expr), (yysemantic_stack_[(3) - (3)].expr)
-            );
+            (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
         }
     break;
 
   case 356:
 
-/* Line 678 of lalr1.cc  */
-#line 3516 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3517 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.expr) = new MultiplicativeExpr(
-                LOC((yyloc)), ParseConstants::op_idiv, (yysemantic_stack_[(3) - (1)].expr), (yysemantic_stack_[(3) - (3)].expr)
+                LOC((yyloc)), ParseConstants::op_mul, (yysemantic_stack_[(3) - (1)].expr), (yysemantic_stack_[(3) - (3)].expr)
             );
         }
     break;
 
   case 357:
 
-/* Line 678 of lalr1.cc  */
-#line 3522 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3523 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.expr) = new MultiplicativeExpr(
-                LOC((yyloc)), ParseConstants::op_mod, (yysemantic_stack_[(3) - (1)].expr), (yysemantic_stack_[(3) - (3)].expr)
+                LOC((yyloc)), ParseConstants::op_div, (yysemantic_stack_[(3) - (1)].expr), (yysemantic_stack_[(3) - (3)].expr)
             );
         }
     break;
 
   case 358:
 
-/* Line 678 of lalr1.cc  */
-#line 3533 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3529 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
-            (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
+            (yyval.expr) = new MultiplicativeExpr(
+                LOC((yyloc)), ParseConstants::op_idiv, (yysemantic_stack_[(3) - (1)].expr), (yysemantic_stack_[(3) - (3)].expr)
+            );
         }
     break;
 
   case 359:
 
-/* Line 678 of lalr1.cc  */
-#line 3537 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3535 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
-            (yyval.expr) = new UnionExpr( LOC((yyloc)), (yysemantic_stack_[(3) - (1)].expr), (yysemantic_stack_[(3) - (3)].expr) );
+            (yyval.expr) = new MultiplicativeExpr(
+                LOC((yyloc)), ParseConstants::op_mod, (yysemantic_stack_[(3) - (1)].expr), (yysemantic_stack_[(3) - (3)].expr)
+            );
         }
     break;
 
   case 360:
 
-/* Line 678 of lalr1.cc  */
-#line 3541 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3546 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
-            (yyval.expr) = new UnionExpr( LOC((yyloc)), (yysemantic_stack_[(3) - (1)].expr), (yysemantic_stack_[(3) - (3)].expr) );
+            (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
         }
     break;
 
   case 361:
 
-/* Line 678 of lalr1.cc  */
-#line 3549 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3550 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
-            (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
+            (yyval.expr) = new UnionExpr( LOC((yyloc)), (yysemantic_stack_[(3) - (1)].expr), (yysemantic_stack_[(3) - (3)].expr) );
         }
     break;
 
   case 362:
 
-/* Line 678 of lalr1.cc  */
-#line 3553 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3554 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
-            (yyval.expr) = new IntersectExceptExpr(
-                LOC((yyloc)), ParseConstants::op_intersect, (yysemantic_stack_[(3) - (1)].expr), (yysemantic_stack_[(3) - (3)].expr)
-            );
+            (yyval.expr) = new UnionExpr( LOC((yyloc)), (yysemantic_stack_[(3) - (1)].expr), (yysemantic_stack_[(3) - (3)].expr) );
         }
     break;
 
   case 363:
 
-/* Line 678 of lalr1.cc  */
-#line 3559 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3562 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
-            (yyval.expr) = new IntersectExceptExpr(
-                LOC((yyloc)), ParseConstants::op_except, (yysemantic_stack_[(3) - (1)].expr), (yysemantic_stack_[(3) - (3)].expr)
-            );
+            (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
         }
     break;
 
   case 364:
 
-/* Line 678 of lalr1.cc  */
-#line 3569 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3566 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
-            (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
+            (yyval.expr) = new IntersectExceptExpr(
+                LOC((yyloc)), ParseConstants::op_intersect, (yysemantic_stack_[(3) - (1)].expr), (yysemantic_stack_[(3) - (3)].expr)
+            );
         }
     break;
 
   case 365:
 
-/* Line 678 of lalr1.cc  */
-#line 3573 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3572 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
-            (yyval.expr) = new InstanceofExpr(
-                LOC((yyloc)), (yysemantic_stack_[(4) - (1)].expr), dynamic_cast<SequenceType*>((yysemantic_stack_[(4) - (4)].node))
+            (yyval.expr) = new IntersectExceptExpr(
+                LOC((yyloc)), ParseConstants::op_except, (yysemantic_stack_[(3) - (1)].expr), (yysemantic_stack_[(3) - (3)].expr)
             );
         }
     break;
 
   case 366:
 
-/* Line 678 of lalr1.cc  */
-#line 3583 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3582 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
         }
@@ -6285,10 +6317,10 @@
 
   case 367:
 
-/* Line 678 of lalr1.cc  */
-#line 3587 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3586 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
-            (yyval.expr) = new TreatExpr(
+            (yyval.expr) = new InstanceofExpr(
                 LOC((yyloc)), (yysemantic_stack_[(4) - (1)].expr), dynamic_cast<SequenceType*>((yysemantic_stack_[(4) - (4)].node))
             );
         }
@@ -6296,8 +6328,8 @@
 
   case 368:
 
-/* Line 678 of lalr1.cc  */
-#line 3597 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3596 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
         }
@@ -6305,19 +6337,19 @@
 
   case 369:
 
-/* Line 678 of lalr1.cc  */
-#line 3601 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3600 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
-            (yyval.expr) = new CastableExpr(
-                LOC((yyloc)), (yysemantic_stack_[(4) - (1)].expr), dynamic_cast<SingleType*>((yysemantic_stack_[(4) - (4)].node))
+            (yyval.expr) = new TreatExpr(
+                LOC((yyloc)), (yysemantic_stack_[(4) - (1)].expr), dynamic_cast<SequenceType*>((yysemantic_stack_[(4) - (4)].node))
             );
         }
     break;
 
   case 370:
 
-/* Line 678 of lalr1.cc  */
-#line 3611 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3610 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
         }
@@ -6325,10 +6357,10 @@
 
   case 371:
 
-/* Line 678 of lalr1.cc  */
-#line 3615 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3614 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
-            (yyval.expr) = new CastExpr(
+            (yyval.expr) = new CastableExpr(
                 LOC((yyloc)), (yysemantic_stack_[(4) - (1)].expr), dynamic_cast<SingleType*>((yysemantic_stack_[(4) - (4)].node))
             );
         }
@@ -6336,8 +6368,8 @@
 
   case 372:
 
-/* Line 678 of lalr1.cc  */
-#line 3625 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3624 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
         }
@@ -6345,44 +6377,64 @@
 
   case 373:
 
-/* Line 678 of lalr1.cc  */
-#line 3629 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3628 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
-            (yyval.expr) = new UnaryExpr( LOC((yyloc)), dynamic_cast<SignList*>((yysemantic_stack_[(2) - (1)].node)), (yysemantic_stack_[(2) - (2)].expr) );
+            (yyval.expr) = new CastExpr(
+                LOC((yyloc)), (yysemantic_stack_[(4) - (1)].expr), dynamic_cast<SingleType*>((yysemantic_stack_[(4) - (4)].node))
+            );
         }
     break;
 
   case 374:
 
-/* Line 678 of lalr1.cc  */
-#line 3637 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3638 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
-            (yyval.node) = new SignList( LOC((yyloc)), true );
+            (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
         }
     break;
 
   case 375:
 
-/* Line 678 of lalr1.cc  */
-#line 3641 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3642 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
-            (yyval.node) = new SignList( LOC((yyloc)), false );
+            (yyval.expr) = new UnaryExpr( LOC((yyloc)), dynamic_cast<SignList*>((yysemantic_stack_[(2) - (1)].node)), (yysemantic_stack_[(2) - (2)].expr) );
         }
     break;
 
   case 376:
 
-/* Line 678 of lalr1.cc  */
-#line 3645 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3650 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
-            (yyval.node) = (yysemantic_stack_[(2) - (1)].node);
+            (yyval.node) = new SignList( LOC((yyloc)), true );
         }
     break;
 
   case 377:
 
-/* Line 678 of lalr1.cc  */
-#line 3649 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3654 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+    {
+            (yyval.node) = new SignList( LOC((yyloc)), false );
+        }
+    break;
+
+  case 378:
+
+/* Line 690 of lalr1.cc  */
+#line 3658 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+    {
+            (yyval.node) = (yysemantic_stack_[(2) - (1)].node);
+        }
+    break;
+
+  case 379:
+
+/* Line 690 of lalr1.cc  */
+#line 3662 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             if ( SignList *sl = dynamic_cast<SignList*>((yysemantic_stack_[(2) - (1)].node)) )
                 sl->negate();
@@ -6390,28 +6442,10 @@
         }
     break;
 
-  case 378:
-
-/* Line 678 of lalr1.cc  */
-#line 3659 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-    {
-            (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
-        }
-    break;
-
-  case 379:
-
-/* Line 678 of lalr1.cc  */
-#line 3663 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-    {
-            (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
-        }
-    break;
-
   case 380:
 
-/* Line 678 of lalr1.cc  */
-#line 3667 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3672 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
         }
@@ -6419,116 +6453,134 @@
 
   case 381:
 
-/* Line 678 of lalr1.cc  */
-#line 3675 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3676 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+    {
+            (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
+        }
+    break;
+
+  case 382:
+
+/* Line 690 of lalr1.cc  */
+#line 3680 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+    {
+            (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
+        }
+    break;
+
+  case 383:
+
+/* Line 690 of lalr1.cc  */
+#line 3688 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new ValueComp( LOC((yyloc)), ParseConstants::op_val_eq );
         }
     break;
 
-  case 382:
+  case 384:
 
-/* Line 678 of lalr1.cc  */
-#line 3679 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3692 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new ValueComp( LOC((yyloc)), ParseConstants::op_val_ne );
         }
     break;
 
-  case 383:
+  case 385:
 
-/* Line 678 of lalr1.cc  */
-#line 3683 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3696 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new ValueComp( LOC((yyloc)), ParseConstants::op_val_lt );
         }
     break;
 
-  case 384:
+  case 386:
 
-/* Line 678 of lalr1.cc  */
-#line 3687 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3700 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new ValueComp( LOC((yyloc)), ParseConstants::op_val_le );
         }
     break;
 
-  case 385:
+  case 387:
 
-/* Line 678 of lalr1.cc  */
-#line 3691 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3704 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new ValueComp( LOC((yyloc)), ParseConstants::op_val_gt );
         }
     break;
 
-  case 386:
+  case 388:
 
-/* Line 678 of lalr1.cc  */
-#line 3695 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3708 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new ValueComp( LOC((yyloc)), ParseConstants::op_val_ge );
         }
     break;
 
-  case 387:
+  case 389:
 
-/* Line 678 of lalr1.cc  */
-#line 3703 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3716 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new NodeComp( LOC((yyloc)), ParseConstants::op_is );
         }
     break;
 
-  case 388:
+  case 390:
 
-/* Line 678 of lalr1.cc  */
-#line 3707 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3720 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new NodeComp( LOC((yyloc)), ParseConstants::op_precedes );
         }
     break;
 
-  case 389:
+  case 391:
 
-/* Line 678 of lalr1.cc  */
-#line 3711 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3724 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new NodeComp( LOC((yyloc)), ParseConstants::op_follows );
         }
     break;
 
-  case 390:
+  case 392:
 
-/* Line 678 of lalr1.cc  */
-#line 3719 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3732 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.expr) = new ValidateExpr( LOC((yyloc)), "strict", (yysemantic_stack_[(4) - (3)].expr) );
         }
     break;
 
-  case 391:
+  case 393:
 
-/* Line 678 of lalr1.cc  */
-#line 3723 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3736 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.expr) = new ValidateExpr( LOC((yyloc)), "lax", (yysemantic_stack_[(5) - (4)].expr) );
         }
     break;
 
-  case 392:
+  case 394:
 
-/* Line 678 of lalr1.cc  */
-#line 3727 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3740 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.expr) = new ValidateExpr( LOC((yyloc)), "strict", (yysemantic_stack_[(5) - (4)].expr) );
         }
     break;
 
-  case 393:
+  case 395:
 
-/* Line 678 of lalr1.cc  */
-#line 3731 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3744 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.expr) = new ValidateExpr(
                 LOC((yyloc)), dynamic_cast<TypeName*>((yysemantic_stack_[(6) - (3)].node))->get_name(), (yysemantic_stack_[(6) - (5)].expr)
@@ -6537,10 +6589,10 @@
         }
     break;
 
-  case 394:
+  case 396:
 
-/* Line 678 of lalr1.cc  */
-#line 3742 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3755 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.expr) = new ExtensionExpr(
                 LOC((yyloc)), dynamic_cast<PragmaList*>((yysemantic_stack_[(3) - (1)].node)), NULL
@@ -6548,10 +6600,10 @@
         }
     break;
 
-  case 395:
+  case 397:
 
-/* Line 678 of lalr1.cc  */
-#line 3748 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3761 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.expr) = new ExtensionExpr(
                 LOC((yyloc)), dynamic_cast<PragmaList*>((yysemantic_stack_[(4) - (1)].node)), (yysemantic_stack_[(4) - (3)].expr)
@@ -6559,10 +6611,10 @@
         }
     break;
 
-  case 396:
+  case 398:
 
-/* Line 678 of lalr1.cc  */
-#line 3758 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3771 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             PragmaList *pl = new PragmaList( LOC((yyloc)) );
             pl->push_back( dynamic_cast<Pragma*>((yysemantic_stack_[(1) - (1)].node)) );
@@ -6570,10 +6622,10 @@
         }
     break;
 
-  case 397:
+  case 399:
 
-/* Line 678 of lalr1.cc  */
-#line 3764 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3777 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             if ( PragmaList *pl = dynamic_cast<PragmaList*>((yysemantic_stack_[(2) - (1)].node)) )
                 pl->push_back( dynamic_cast<Pragma*>((yysemantic_stack_[(2) - (2)].node)) );
@@ -6581,46 +6633,46 @@
         }
     break;
 
-  case 398:
+  case 400:
 
-/* Line 678 of lalr1.cc  */
-#line 3774 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3787 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new Pragma( LOC((yyloc)), static_cast<QName*>((yysemantic_stack_[(3) - (2)].expr)), SYMTAB((yysemantic_stack_[(3) - (3)].sval)) );
         }
     break;
 
-  case 399:
+  case 401:
 
-/* Line 678 of lalr1.cc  */
-#line 3778 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3791 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new Pragma( LOC((yyloc)), new QName( LOC((yyloc)), SYMTAB((yysemantic_stack_[(2) - (2)].sval)) ), "" );
         }
     break;
 
-  case 400:
+  case 402:
 
-/* Line 678 of lalr1.cc  */
-#line 3782 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3795 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new Pragma( LOC((yyloc)), new QName( LOC((yyloc)), SYMTAB((yysemantic_stack_[(2) - (2)].sval)), true ), "" );
         }
     break;
 
-  case 401:
+  case 403:
 
-/* Line 678 of lalr1.cc  */
-#line 3820 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3833 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.expr) = new PathExpr(LOC((yyloc)), ParseConstants::path_leading_lone_slash, NULL);
     }
     break;
 
-  case 402:
+  case 404:
 
-/* Line 678 of lalr1.cc  */
-#line 3824 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3837 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       RelativePathExpr* rpe;
 
@@ -6632,10 +6684,10 @@
     }
     break;
 
-  case 403:
+  case 405:
 
-/* Line 678 of lalr1.cc  */
-#line 3834 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3847 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       RelativePathExpr* rpe;
 
@@ -6647,10 +6699,10 @@
     }
     break;
 
-  case 404:
+  case 406:
 
-/* Line 678 of lalr1.cc  */
-#line 3844 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3857 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       RelativePathExpr* rpe = dynamic_cast<RelativePathExpr*>((yysemantic_stack_[(1) - (1)].expr));
       (yyval.expr) = (!rpe ?
@@ -6659,19 +6711,19 @@
     }
     break;
 
-  case 405:
+  case 407:
 
-/* Line 678 of lalr1.cc  */
-#line 3857 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3870 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.expr) = NULL;
     }
     break;
 
-  case 406:
+  case 408:
 
-/* Line 678 of lalr1.cc  */
-#line 3866 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3879 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       AxisStep* as = dynamic_cast<AxisStep*>((yysemantic_stack_[(1) - (1)].expr));
       (yyval.expr) = (as ?
@@ -6683,46 +6735,46 @@
     }
     break;
 
-  case 407:
+  case 409:
 
-/* Line 678 of lalr1.cc  */
-#line 3876 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3889 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.expr) = new RelativePathExpr(LOC((yyloc)), ParseConstants::st_slash, (yysemantic_stack_[(3) - (1)].expr), (yysemantic_stack_[(3) - (3)].expr));
     }
     break;
 
-  case 408:
+  case 410:
 
-/* Line 678 of lalr1.cc  */
-#line 3880 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3893 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.expr) = new RelativePathExpr(LOC((yyloc)), ParseConstants::st_slashslash, (yysemantic_stack_[(3) - (1)].expr), (yysemantic_stack_[(3) - (3)].expr));
     }
     break;
 
-  case 409:
-
-/* Line 678 of lalr1.cc  */
-#line 3889 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-    {
-      (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
-    }
-    break;
-
-  case 410:
-
-/* Line 678 of lalr1.cc  */
-#line 3893 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-    {
-      (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
-    }
-    break;
-
   case 411:
 
-/* Line 678 of lalr1.cc  */
-#line 3902 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3902 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+    {
+      (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
+    }
+    break;
+
+  case 412:
+
+/* Line 690 of lalr1.cc  */
+#line 3906 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+    {
+      (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
+    }
+    break;
+
+  case 413:
+
+/* Line 690 of lalr1.cc  */
+#line 3915 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.expr) = new AxisStep(
                 LOC((yyloc)), dynamic_cast<ForwardStep*>((yysemantic_stack_[(1) - (1)].node)), NULL
@@ -6730,10 +6782,10 @@
         }
     break;
 
-  case 412:
+  case 414:
 
-/* Line 678 of lalr1.cc  */
-#line 3908 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3921 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.expr) = new AxisStep(
                 LOC((yyloc)),
@@ -6743,10 +6795,10 @@
         }
     break;
 
-  case 413:
+  case 415:
 
-/* Line 678 of lalr1.cc  */
-#line 3916 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3929 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.expr) = new AxisStep(
                 LOC((yyloc)), dynamic_cast<ReverseStep*>((yysemantic_stack_[(1) - (1)].node)), NULL
@@ -6754,10 +6806,10 @@
         }
     break;
 
-  case 414:
+  case 416:
 
-/* Line 678 of lalr1.cc  */
-#line 3922 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3935 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.expr) = new AxisStep(
                 LOC((yyloc)),
@@ -6767,10 +6819,10 @@
         }
     break;
 
-  case 415:
+  case 417:
 
-/* Line 678 of lalr1.cc  */
-#line 3934 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3947 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new ForwardStep(
                 LOC((yyloc)), dynamic_cast<ForwardAxis*>((yysemantic_stack_[(2) - (1)].node)), (yysemantic_stack_[(2) - (2)].node)
@@ -6778,10 +6830,10 @@
         }
     break;
 
-  case 416:
+  case 418:
 
-/* Line 678 of lalr1.cc  */
-#line 3940 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3953 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new ForwardStep(
                 LOC((yyloc)), dynamic_cast<AbbrevForwardStep*>((yysemantic_stack_[(1) - (1)].node))
@@ -6789,46 +6841,46 @@
         }
     break;
 
-  case 417:
+  case 419:
 
-/* Line 678 of lalr1.cc  */
-#line 3950 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3963 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new ForwardAxis( LOC((yyloc)), ParseConstants::axis_child );
         }
     break;
 
-  case 418:
+  case 420:
 
-/* Line 678 of lalr1.cc  */
-#line 3954 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3967 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new ForwardAxis( LOC((yyloc)), ParseConstants::axis_descendant);
         }
     break;
 
-  case 419:
+  case 421:
 
-/* Line 678 of lalr1.cc  */
-#line 3958 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3971 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new ForwardAxis( LOC((yyloc)), ParseConstants::axis_attribute );
         }
     break;
 
-  case 420:
+  case 422:
 
-/* Line 678 of lalr1.cc  */
-#line 3962 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3975 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new ForwardAxis( LOC((yyloc)), ParseConstants::axis_self );
         }
     break;
 
-  case 421:
+  case 423:
 
-/* Line 678 of lalr1.cc  */
-#line 3966 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3979 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new ForwardAxis(
                 LOC((yyloc)), ParseConstants::axis_descendant_or_self
@@ -6836,10 +6888,10 @@
         }
     break;
 
-  case 422:
+  case 424:
 
-/* Line 678 of lalr1.cc  */
-#line 3972 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3985 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new ForwardAxis(
                 LOC((yyloc)), ParseConstants::axis_following_sibling
@@ -6847,46 +6899,46 @@
         }
     break;
 
-  case 423:
+  case 425:
 
-/* Line 678 of lalr1.cc  */
-#line 3978 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3991 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new ForwardAxis( LOC((yyloc)), ParseConstants::axis_following );
         }
     break;
 
-  case 424:
+  case 426:
 
-/* Line 678 of lalr1.cc  */
-#line 3986 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3999 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new AbbrevForwardStep( LOC((yyloc)), (yysemantic_stack_[(1) - (1)].node), false );
         }
     break;
 
-  case 425:
+  case 427:
 
-/* Line 678 of lalr1.cc  */
-#line 3990 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4003 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new AbbrevForwardStep( LOC((yyloc)), (yysemantic_stack_[(2) - (2)].node), true );
         }
     break;
 
-  case 426:
+  case 428:
 
-/* Line 678 of lalr1.cc  */
-#line 3998 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4011 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new ReverseStep( LOC((yyloc)), dynamic_cast<ReverseAxis*>((yysemantic_stack_[(2) - (1)].node)), (yysemantic_stack_[(2) - (2)].node) );
         }
     break;
 
-  case 427:
+  case 429:
 
-/* Line 678 of lalr1.cc  */
-#line 4002 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4015 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             ReverseAxis *ra = new ReverseAxis(
                 LOC((yyloc)), ParseConstants::axis_parent
@@ -6895,28 +6947,28 @@
         }
     break;
 
-  case 428:
+  case 430:
 
-/* Line 678 of lalr1.cc  */
-#line 4013 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4026 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new ReverseAxis( LOC((yyloc)), ParseConstants::axis_parent );
         }
     break;
 
-  case 429:
+  case 431:
 
-/* Line 678 of lalr1.cc  */
-#line 4017 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4030 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new ReverseAxis( LOC((yyloc)), ParseConstants::axis_ancestor );
         }
     break;
 
-  case 430:
+  case 432:
 
-/* Line 678 of lalr1.cc  */
-#line 4021 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4034 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new ReverseAxis(
                 LOC((yyloc)), ParseConstants::axis_preceding_sibling
@@ -6924,19 +6976,19 @@
         }
     break;
 
-  case 431:
+  case 433:
 
-/* Line 678 of lalr1.cc  */
-#line 4027 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4040 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new ReverseAxis( LOC((yyloc)), ParseConstants::axis_preceding );
         }
     break;
 
-  case 432:
+  case 434:
 
-/* Line 678 of lalr1.cc  */
-#line 4031 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4044 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new ReverseAxis(
                 LOC((yyloc)), ParseConstants::axis_ancestor_or_self
@@ -6944,118 +6996,118 @@
         }
     break;
 
-  case 433:
-
-/* Line 678 of lalr1.cc  */
-#line 4045 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-    {
-            (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
-        }
-    break;
-
-  case 434:
-
-/* Line 678 of lalr1.cc  */
-#line 4049 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-    {
-            (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
-        }
-    break;
-
   case 435:
 
-/* Line 678 of lalr1.cc  */
-#line 4057 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4058 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+    {
+            (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
+        }
+    break;
+
+  case 436:
+
+/* Line 690 of lalr1.cc  */
+#line 4062 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+    {
+            (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
+        }
+    break;
+
+  case 437:
+
+/* Line 690 of lalr1.cc  */
+#line 4070 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new NameTest( LOC((yyloc)), static_cast<QName*>((yysemantic_stack_[(1) - (1)].expr)) );
         }
     break;
 
-  case 436:
+  case 438:
 
-/* Line 678 of lalr1.cc  */
-#line 4061 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4074 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new NameTest( LOC((yyloc)), dynamic_cast<Wildcard*>((yysemantic_stack_[(1) - (1)].node)) );
         }
     break;
 
-  case 437:
+  case 439:
 
-/* Line 678 of lalr1.cc  */
-#line 4071 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4084 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new Wildcard(LOC((yyloc)), "", "", ParseConstants::wild_all, false);
     }
     break;
 
-  case 438:
+  case 440:
 
-/* Line 678 of lalr1.cc  */
-#line 4075 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4088 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new Wildcard(LOC((yyloc)), SYMTAB((yysemantic_stack_[(1) - (1)].sval)), "", ParseConstants::wild_elem, false);
     }
     break;
 
-  case 439:
+  case 441:
 
-/* Line 678 of lalr1.cc  */
-#line 4079 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4092 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new Wildcard(LOC((yyloc)), SYMTAB((yysemantic_stack_[(1) - (1)].sval)), "", ParseConstants::wild_elem, true);
     }
     break;
 
-  case 440:
+  case 442:
 
-/* Line 678 of lalr1.cc  */
-#line 4083 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4096 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new Wildcard(LOC((yyloc)), "", SYMTAB((yysemantic_stack_[(1) - (1)].sval)), ParseConstants::wild_prefix, false);
     }
     break;
 
-  case 441:
+  case 443:
 
-/* Line 678 of lalr1.cc  */
-#line 4092 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4105 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
        (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
      }
     break;
 
-  case 442:
+  case 444:
 
-/* Line 678 of lalr1.cc  */
-#line 4096 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4109 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
        (yyval.expr) = new FilterExpr(LOC((yyloc)), (yysemantic_stack_[(2) - (1)].expr), dynamic_cast<PredicateList*>((yysemantic_stack_[(2) - (2)].node)));
      }
     break;
 
-  case 443:
+  case 445:
 
-/* Line 678 of lalr1.cc  */
-#line 4100 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4113 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
        (yyval.expr) = new DynamicFunctionInvocation(LOC ((yyloc)), (yysemantic_stack_[(3) - (1)].expr));
      }
     break;
 
-  case 444:
+  case 446:
 
-/* Line 678 of lalr1.cc  */
-#line 4104 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4117 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
        (yyval.expr) = new DynamicFunctionInvocation(LOC ((yyloc)), (yysemantic_stack_[(4) - (1)].expr), dynamic_cast<ArgList*>((yysemantic_stack_[(4) - (3)].node)));
      }
     break;
 
-  case 445:
+  case 447:
 
-/* Line 678 of lalr1.cc  */
-#line 4112 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4125 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             PredicateList *pl = new PredicateList( LOC((yyloc)) );
             pl->push_back( dynamic_cast<exprnode*>((yysemantic_stack_[(1) - (1)].expr)) );
@@ -7063,10 +7115,10 @@
         }
     break;
 
-  case 446:
+  case 448:
 
-/* Line 678 of lalr1.cc  */
-#line 4118 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4131 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             if ( PredicateList *pl = dynamic_cast<PredicateList*>((yysemantic_stack_[(2) - (1)].node)) )
                 pl->push_back( dynamic_cast<exprnode*>((yysemantic_stack_[(2) - (2)].expr)) );
@@ -7074,37 +7126,19 @@
         }
     break;
 
-  case 447:
+  case 449:
 
-/* Line 678 of lalr1.cc  */
-#line 4128 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4141 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.expr) = (yysemantic_stack_[(3) - (2)].expr);
         }
     break;
 
-  case 448:
-
-/* Line 678 of lalr1.cc  */
-#line 4136 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-    {
-          (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
-        }
-    break;
-
-  case 449:
-
-/* Line 678 of lalr1.cc  */
-#line 4140 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-    {
-          (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
-        }
-    break;
-
   case 450:
 
-/* Line 678 of lalr1.cc  */
-#line 4144 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4149 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
           (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
         }
@@ -7112,8 +7146,8 @@
 
   case 451:
 
-/* Line 678 of lalr1.cc  */
-#line 4148 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4153 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
           (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
         }
@@ -7121,8 +7155,8 @@
 
   case 452:
 
-/* Line 678 of lalr1.cc  */
-#line 4152 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4157 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
           (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
         }
@@ -7130,8 +7164,8 @@
 
   case 453:
 
-/* Line 678 of lalr1.cc  */
-#line 4156 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4161 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
           (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
         }
@@ -7139,8 +7173,8 @@
 
   case 454:
 
-/* Line 678 of lalr1.cc  */
-#line 4160 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4165 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
           (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
         }
@@ -7148,8 +7182,8 @@
 
   case 455:
 
-/* Line 678 of lalr1.cc  */
-#line 4164 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4169 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
           (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
         }
@@ -7157,8 +7191,8 @@
 
   case 456:
 
-/* Line 678 of lalr1.cc  */
-#line 4168 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4173 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
           (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
         }
@@ -7166,8 +7200,8 @@
 
   case 457:
 
-/* Line 678 of lalr1.cc  */
-#line 4178 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4177 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
           (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
         }
@@ -7175,26 +7209,44 @@
 
   case 458:
 
-/* Line 678 of lalr1.cc  */
-#line 4186 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4181 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
-            (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
+          (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
         }
     break;
 
   case 459:
 
-/* Line 678 of lalr1.cc  */
-#line 4190 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4191 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
-            (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
+          (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
         }
     break;
 
   case 460:
 
-/* Line 678 of lalr1.cc  */
-#line 4198 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4199 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+    {
+            (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
+        }
+    break;
+
+  case 461:
+
+/* Line 690 of lalr1.cc  */
+#line 4203 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+    {
+            (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
+        }
+    break;
+
+  case 462:
+
+/* Line 690 of lalr1.cc  */
+#line 4211 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.expr) = NumericLiteral::new_literal(
                 LOC((yyloc)), ParseConstants::num_decimal, *(yysemantic_stack_[(1) - (1)].decval)
@@ -7203,10 +7255,10 @@
         }
     break;
 
-  case 461:
+  case 463:
 
-/* Line 678 of lalr1.cc  */
-#line 4205 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4218 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.expr) = NumericLiteral::new_literal(
                 LOC((yyloc)), ParseConstants::num_integer, *(yysemantic_stack_[(1) - (1)].ival)
@@ -7215,10 +7267,10 @@
         }
     break;
 
-  case 462:
+  case 464:
 
-/* Line 678 of lalr1.cc  */
-#line 4212 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4225 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.expr) = NumericLiteral::new_literal(
                 LOC((yyloc)), ParseConstants::num_double, *(yysemantic_stack_[(1) - (1)].dval)
@@ -7227,73 +7279,73 @@
         }
     break;
 
-  case 463:
+  case 465:
 
-/* Line 678 of lalr1.cc  */
-#line 4223 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4236 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.expr) = new VarRef(LOC((yyloc)), static_cast<QName*>((yysemantic_stack_[(2) - (2)].expr)));
         }
     break;
 
-  case 464:
+  case 466:
 
-/* Line 678 of lalr1.cc  */
-#line 4231 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4244 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.expr) = new ParenthesizedExpr( LOC((yyloc)), NULL);
         }
     break;
 
-  case 465:
+  case 467:
 
-/* Line 678 of lalr1.cc  */
-#line 4235 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4248 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.expr) = new ParenthesizedExpr( LOC((yyloc)), (yysemantic_stack_[(3) - (2)].expr) );
         }
     break;
 
-  case 466:
+  case 468:
 
-/* Line 678 of lalr1.cc  */
-#line 4243 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4256 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.expr) = new ContextItemExpr( LOC((yyloc)) );
         }
     break;
 
-  case 467:
+  case 469:
 
-/* Line 678 of lalr1.cc  */
-#line 4251 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4264 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.expr) = new OrderedExpr( LOC((yyloc)), (yysemantic_stack_[(4) - (3)].expr) );
         }
     break;
 
-  case 468:
+  case 470:
 
-/* Line 678 of lalr1.cc  */
-#line 4259 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4272 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.expr) = new UnorderedExpr( LOC((yyloc)), (yysemantic_stack_[(4) - (3)].expr) );
         }
     break;
 
-  case 469:
+  case 471:
 
-/* Line 678 of lalr1.cc  */
-#line 4313 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4326 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.expr) = new FunctionCall( LOC((yyloc)), static_cast<QName*>((yysemantic_stack_[(3) - (1)].expr)), NULL );
         }
     break;
 
-  case 470:
+  case 472:
 
-/* Line 678 of lalr1.cc  */
-#line 4317 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4330 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.expr) = new FunctionCall(
                 LOC((yyloc)),
@@ -7303,10 +7355,10 @@
         }
     break;
 
-  case 471:
+  case 473:
 
-/* Line 678 of lalr1.cc  */
-#line 4330 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4343 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             ArgList *al = new ArgList( LOC((yyloc)) );
             al->push_back( (yysemantic_stack_[(1) - (1)].expr) );
@@ -7314,10 +7366,10 @@
         }
     break;
 
-  case 472:
+  case 474:
 
-/* Line 678 of lalr1.cc  */
-#line 4336 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4349 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             if ( ArgList *al = dynamic_cast<ArgList*>((yysemantic_stack_[(3) - (1)].node)) )
                 al->push_back( (yysemantic_stack_[(3) - (3)].expr) );
@@ -7325,28 +7377,10 @@
         }
     break;
 
-  case 473:
-
-/* Line 678 of lalr1.cc  */
-#line 4346 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-    {
-            (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
-        }
-    break;
-
-  case 474:
-
-/* Line 678 of lalr1.cc  */
-#line 4350 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-    {
-            (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
-        }
-    break;
-
   case 475:
 
-/* Line 678 of lalr1.cc  */
-#line 4358 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4359 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
         }
@@ -7354,8 +7388,8 @@
 
   case 476:
 
-/* Line 678 of lalr1.cc  */
-#line 4362 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4363 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
         }
@@ -7363,8 +7397,8 @@
 
   case 477:
 
-/* Line 678 of lalr1.cc  */
-#line 4366 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4371 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
         }
@@ -7372,8 +7406,26 @@
 
   case 478:
 
-/* Line 678 of lalr1.cc  */
-#line 4374 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4375 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+    {
+            (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
+        }
+    break;
+
+  case 479:
+
+/* Line 690 of lalr1.cc  */
+#line 4379 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+    {
+            (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
+        }
+    break;
+
+  case 480:
+
+/* Line 690 of lalr1.cc  */
+#line 4387 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.expr) = new DirElemConstructor(
                 LOC((yyloc)),
@@ -7385,10 +7437,10 @@
         }
     break;
 
-  case 479:
+  case 481:
 
-/* Line 678 of lalr1.cc  */
-#line 4384 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4397 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.expr) = new DirElemConstructor(
                 LOC((yyloc)),
@@ -7400,10 +7452,10 @@
         }
     break;
 
-  case 480:
+  case 482:
 
-/* Line 678 of lalr1.cc  */
-#line 4394 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4407 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.expr) = new DirElemConstructor(
                 LOC((yyloc)),
@@ -7415,10 +7467,10 @@
         }
     break;
 
-  case 481:
+  case 483:
 
-/* Line 678 of lalr1.cc  */
-#line 4404 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4417 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.expr) = new DirElemConstructor(
                 LOC((yyloc)),
@@ -7430,10 +7482,10 @@
         }
     break;
 
-  case 482:
+  case 484:
 
-/* Line 678 of lalr1.cc  */
-#line 4414 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4427 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.expr) = new DirElemConstructor(
                 LOC((yyloc)),
@@ -7445,10 +7497,10 @@
         }
     break;
 
-  case 483:
+  case 485:
 
-/* Line 678 of lalr1.cc  */
-#line 4424 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4437 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.expr) = new DirElemConstructor(
                 LOC((yyloc)),
@@ -7460,10 +7512,10 @@
         }
     break;
 
-  case 484:
+  case 486:
 
-/* Line 678 of lalr1.cc  */
-#line 4439 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4452 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             DirElemContentList *decl = new DirElemContentList( LOC((yyloc)) );
             decl->push_back( dynamic_cast<DirElemContent*>((yysemantic_stack_[(1) - (1)].expr)) );
@@ -7471,10 +7523,10 @@
         }
     break;
 
-  case 485:
+  case 487:
 
-/* Line 678 of lalr1.cc  */
-#line 4445 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4458 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             DirElemContentList *decl = dynamic_cast<DirElemContentList*>((yysemantic_stack_[(2) - (1)].node));
             if ( decl )
@@ -7483,10 +7535,10 @@
         }
     break;
 
-  case 486:
+  case 488:
 
-/* Line 678 of lalr1.cc  */
-#line 4456 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4469 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             DirAttributeList *dal = new DirAttributeList( LOC((yyloc)) );
             dal->push_back( dynamic_cast<DirAttr*>((yysemantic_stack_[(1) - (1)].node)) );
@@ -7494,10 +7546,10 @@
         }
     break;
 
-  case 487:
+  case 489:
 
-/* Line 678 of lalr1.cc  */
-#line 4462 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4475 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             DirAttributeList *dal = dynamic_cast<DirAttributeList*>((yysemantic_stack_[(2) - (1)].node));
             if ( dal )
@@ -7506,10 +7558,10 @@
         }
     break;
 
-  case 488:
+  case 490:
 
-/* Line 678 of lalr1.cc  */
-#line 4473 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4486 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new DirAttr(
                 LOC((yyloc)),
@@ -7519,114 +7571,114 @@
         }
     break;
 
-  case 491:
+  case 493:
 
-/* Line 678 of lalr1.cc  */
-#line 4490 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4503 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new DirAttributeValue( LOC((yyloc)),
                                 dynamic_cast<QuoteAttrContentList*>((yysemantic_stack_[(3) - (2)].node)));
         }
     break;
 
-  case 492:
+  case 494:
 
-/* Line 678 of lalr1.cc  */
-#line 4495 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4508 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new DirAttributeValue( LOC((yyloc)),
                                 dynamic_cast<AposAttrContentList*>((yysemantic_stack_[(3) - (2)].node)));
         }
     break;
 
-  case 493:
+  case 495:
 
-/* Line 678 of lalr1.cc  */
-#line 4504 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4517 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new QuoteAttrContentList( LOC((yyloc)) );
         }
     break;
 
-  case 494:
-
-/* Line 678 of lalr1.cc  */
-#line 4508 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-    {
-            (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
-        }
-    break;
-
-  case 495:
-
-/* Line 678 of lalr1.cc  */
-#line 4515 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-    {
-            QuoteAttrContentList *qacl = new QuoteAttrContentList( LOC((yyloc)) );
-            qacl->push_back( new QuoteAttrValueContent( LOC((yyloc)), "\"" ) );
-            (yyval.node) = qacl;
-        }
-    break;
-
   case 496:
 
-/* Line 678 of lalr1.cc  */
-#line 4521 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4521 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
-            QuoteAttrContentList *qacl = new QuoteAttrContentList( LOC((yyloc)) );
-            qacl->push_back( dynamic_cast<QuoteAttrValueContent*>((yysemantic_stack_[(1) - (1)].node)) );
-            (yyval.node) = qacl;
+            (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
         }
     break;
 
   case 497:
 
-/* Line 678 of lalr1.cc  */
-#line 4527 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4528 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
-            QuoteAttrContentList *qacl =
-                dynamic_cast<QuoteAttrContentList*>((yysemantic_stack_[(2) - (1)].node));
-            if ( qacl )
-                qacl->push_back( new QuoteAttrValueContent( LOC((yyloc)), "\"" ) );
-            (yyval.node) = (yysemantic_stack_[(2) - (1)].node);
+            QuoteAttrContentList *qacl = new QuoteAttrContentList( LOC((yyloc)) );
+            qacl->push_back( new QuoteAttrValueContent( LOC((yyloc)), "\"" ) );
+            (yyval.node) = qacl;
         }
     break;
 
   case 498:
 
-/* Line 678 of lalr1.cc  */
-#line 4535 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4534 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
-            QuoteAttrContentList *qacl =
-                dynamic_cast<QuoteAttrContentList*>((yysemantic_stack_[(2) - (1)].node));
-            if ( qacl )
-                qacl->push_back( dynamic_cast<QuoteAttrValueContent*>((yysemantic_stack_[(2) - (2)].node)) );
-            (yyval.node) = (yysemantic_stack_[(2) - (1)].node);
+            QuoteAttrContentList *qacl = new QuoteAttrContentList( LOC((yyloc)) );
+            qacl->push_back( dynamic_cast<QuoteAttrValueContent*>((yysemantic_stack_[(1) - (1)].node)) );
+            (yyval.node) = qacl;
         }
     break;
 
   case 499:
 
-/* Line 678 of lalr1.cc  */
-#line 4547 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4540 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
-            (yyval.node) = new AposAttrContentList( LOC((yyloc)) );
+            QuoteAttrContentList *qacl =
+                dynamic_cast<QuoteAttrContentList*>((yysemantic_stack_[(2) - (1)].node));
+            if ( qacl )
+                qacl->push_back( new QuoteAttrValueContent( LOC((yyloc)), "\"" ) );
+            (yyval.node) = (yysemantic_stack_[(2) - (1)].node);
         }
     break;
 
   case 500:
 
-/* Line 678 of lalr1.cc  */
-#line 4551 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4548 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
-            (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
+            QuoteAttrContentList *qacl =
+                dynamic_cast<QuoteAttrContentList*>((yysemantic_stack_[(2) - (1)].node));
+            if ( qacl )
+                qacl->push_back( dynamic_cast<QuoteAttrValueContent*>((yysemantic_stack_[(2) - (2)].node)) );
+            (yyval.node) = (yysemantic_stack_[(2) - (1)].node);
         }
     break;
 
   case 501:
 
-/* Line 678 of lalr1.cc  */
-#line 4558 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4560 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+    {
+            (yyval.node) = new AposAttrContentList( LOC((yyloc)) );
+        }
+    break;
+
+  case 502:
+
+/* Line 690 of lalr1.cc  */
+#line 4564 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+    {
+            (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
+        }
+    break;
+
+  case 503:
+
+/* Line 690 of lalr1.cc  */
+#line 4571 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             AposAttrContentList *aacl = new AposAttrContentList( LOC((yyloc)) );
             aacl->push_back( new AposAttrValueContent( LOC((yyloc)),"'") );
@@ -7634,10 +7686,10 @@
         }
     break;
 
-  case 502:
+  case 504:
 
-/* Line 678 of lalr1.cc  */
-#line 4564 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4577 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             AposAttrContentList *aacl = new AposAttrContentList( LOC((yyloc)) );
             aacl->push_back( dynamic_cast<AposAttrValueContent*>((yysemantic_stack_[(1) - (1)].node)) );
@@ -7645,10 +7697,10 @@
         }
     break;
 
-  case 503:
+  case 505:
 
-/* Line 678 of lalr1.cc  */
-#line 4570 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4583 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             AposAttrContentList *aacl = dynamic_cast<AposAttrContentList*>((yysemantic_stack_[(2) - (1)].node));
             if (aacl)
@@ -7657,10 +7709,10 @@
         }
     break;
 
-  case 504:
+  case 506:
 
-/* Line 678 of lalr1.cc  */
-#line 4577 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4590 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             AposAttrContentList *aacl = dynamic_cast<AposAttrContentList*>((yysemantic_stack_[(2) - (1)].node));
             if ( aacl )
@@ -7669,19 +7721,19 @@
         }
     break;
 
-  case 505:
+  case 507:
 
-/* Line 678 of lalr1.cc  */
-#line 4588 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4601 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new QuoteAttrValueContent( LOC((yyloc)), SYMTAB((yysemantic_stack_[(1) - (1)].sval)) );
         }
     break;
 
-  case 506:
+  case 508:
 
-/* Line 678 of lalr1.cc  */
-#line 4592 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4605 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new QuoteAttrValueContent(
                 LOC((yyloc)), dynamic_cast<CommonContent*>((yysemantic_stack_[(1) - (1)].expr))
@@ -7689,19 +7741,19 @@
         }
     break;
 
-  case 507:
+  case 509:
 
-/* Line 678 of lalr1.cc  */
-#line 4602 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4615 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new AposAttrValueContent( LOC((yyloc)), SYMTAB((yysemantic_stack_[(1) - (1)].sval)) );
         }
     break;
 
-  case 508:
+  case 510:
 
-/* Line 678 of lalr1.cc  */
-#line 4606 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4619 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new AposAttrValueContent(
                 LOC((yyloc)), dynamic_cast<CommonContent*>((yysemantic_stack_[(1) - (1)].expr))
@@ -7709,48 +7761,48 @@
         }
     break;
 
-  case 509:
+  case 511:
 
-/* Line 678 of lalr1.cc  */
-#line 4616 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4629 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.expr) = new DirElemContent( LOC((yyloc)), (yysemantic_stack_[(1) - (1)].expr) );
         }
     break;
 
-  case 510:
+  case 512:
 
-/* Line 678 of lalr1.cc  */
-#line 4620 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4633 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.expr) = new DirElemContent( LOC((yyloc)), SYMTAB((yysemantic_stack_[(1) - (1)].sval)) );
         }
     break;
 
-  case 511:
+  case 513:
 
-/* Line 678 of lalr1.cc  */
-#line 4624 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4637 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             rchandle<CDataSection> cdata_h = dynamic_cast<CDataSection*>((yysemantic_stack_[(1) - (1)].expr));
             (yyval.expr) = new DirElemContent( LOC((yyloc)), cdata_h );
         }
     break;
 
-  case 512:
+  case 514:
 
-/* Line 678 of lalr1.cc  */
-#line 4629 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4642 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             rchandle<CommonContent> cont_h = dynamic_cast<CommonContent*>((yysemantic_stack_[(1) - (1)].expr));
             (yyval.expr) = new DirElemContent( LOC((yyloc)), cont_h );
         }
     break;
 
-  case 513:
+  case 515:
 
-/* Line 678 of lalr1.cc  */
-#line 4638 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4651 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.expr) = new CommonContent(
                 LOC((yyloc)), ParseConstants::cont_charref, SYMTAB((yysemantic_stack_[(1) - (1)].sval))
@@ -7758,10 +7810,10 @@
         }
     break;
 
-  case 514:
+  case 516:
 
-/* Line 678 of lalr1.cc  */
-#line 4644 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4657 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.expr) = new CommonContent(
                 LOC((yyloc)), ParseConstants::cont_escape_lbrace
@@ -7769,10 +7821,10 @@
         }
     break;
 
-  case 515:
+  case 517:
 
-/* Line 678 of lalr1.cc  */
-#line 4650 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4663 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.expr) = new CommonContent(
                 LOC((yyloc)), ParseConstants::cont_escape_rbrace
@@ -7780,82 +7832,64 @@
         }
     break;
 
-  case 516:
+  case 518:
 
-/* Line 678 of lalr1.cc  */
-#line 4656 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4669 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.expr) = new CommonContent(LOC((yyloc)), new EnclosedExpr(LOC((yyloc)), (yysemantic_stack_[(3) - (2)].expr)));
         }
     break;
 
-  case 517:
+  case 519:
 
-/* Line 678 of lalr1.cc  */
-#line 4664 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4677 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.expr) = new DirCommentConstructor( LOC((yyloc)), SYMTAB((yysemantic_stack_[(3) - (2)].sval)) );
     }
     break;
 
-  case 518:
+  case 520:
 
-/* Line 678 of lalr1.cc  */
-#line 4669 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4682 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.expr) = new DirCommentConstructor( LOC((yyloc)), "" );
     }
     break;
 
-  case 519:
+  case 521:
 
-/* Line 678 of lalr1.cc  */
-#line 4677 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4690 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.expr) = new DirPIConstructor( LOC((yyloc)), SYMTAB((yysemantic_stack_[(3) - (2)].sval)) );
     }
     break;
 
-  case 520:
+  case 522:
 
-/* Line 678 of lalr1.cc  */
-#line 4682 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4695 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.expr) = new DirPIConstructor( LOC((yyloc)), SYMTAB((yysemantic_stack_[(3) - (2)].sval)), SYMTAB((yysemantic_stack_[(3) - (3)].sval)) );
     }
     break;
 
-  case 521:
+  case 523:
 
-/* Line 678 of lalr1.cc  */
-#line 4690 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4703 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.expr) = new CDataSection( LOC((yyloc)),SYMTAB((yysemantic_stack_[(2) - (2)].sval)) );
     }
     break;
 
-  case 522:
-
-/* Line 678 of lalr1.cc  */
-#line 4698 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-    {
-      (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
-    }
-    break;
-
-  case 523:
-
-/* Line 678 of lalr1.cc  */
-#line 4703 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-    {
-      (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
-    }
-    break;
-
   case 524:
 
-/* Line 678 of lalr1.cc  */
-#line 4708 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4711 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
     }
@@ -7863,8 +7897,8 @@
 
   case 525:
 
-/* Line 678 of lalr1.cc  */
-#line 4713 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4716 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
     }
@@ -7872,8 +7906,8 @@
 
   case 526:
 
-/* Line 678 of lalr1.cc  */
-#line 4718 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4721 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
     }
@@ -7881,8 +7915,8 @@
 
   case 527:
 
-/* Line 678 of lalr1.cc  */
-#line 4723 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4726 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
     }
@@ -7890,207 +7924,207 @@
 
   case 528:
 
-/* Line 678 of lalr1.cc  */
-#line 4732 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4731 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
-            (yyval.expr) = new CompDocConstructor( LOC((yyloc)), (yysemantic_stack_[(4) - (3)].expr) );
-        }
+      (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
+    }
     break;
 
   case 529:
 
-/* Line 678 of lalr1.cc  */
-#line 4740 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4736 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
-            (yyval.expr) = new CompElemConstructor(LOC((yyloc)), new QName(LOC((yyloc)), SYMTAB((yysemantic_stack_[(3) - (1)].sval))), (yysemantic_stack_[(3) - (2)].expr));
-        }
+      (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
+    }
     break;
 
   case 530:
 
-/* Line 678 of lalr1.cc  */
-#line 4744 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4745 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
-            (yyval.expr) = new CompElemConstructor( LOC((yyloc)), (yysemantic_stack_[(7) - (3)].expr), (yysemantic_stack_[(7) - (6)].expr) );
+            (yyval.expr) = new CompDocConstructor( LOC((yyloc)), (yysemantic_stack_[(4) - (3)].expr) );
         }
     break;
 
   case 531:
 
-/* Line 678 of lalr1.cc  */
-#line 4761 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4753 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
-          (yyval.expr) = new CompAttrConstructor( LOC((yyloc)), new QName(LOC((yyloc)), SYMTAB((yysemantic_stack_[(3) - (1)].sval))), (yysemantic_stack_[(3) - (2)].expr) );
+            (yyval.expr) = new CompElemConstructor(LOC((yyloc)), new QName(LOC((yyloc)), SYMTAB((yysemantic_stack_[(3) - (1)].sval))), (yysemantic_stack_[(3) - (2)].expr));
         }
     break;
 
   case 532:
 
-/* Line 678 of lalr1.cc  */
-#line 4765 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4757 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
-            (yyval.expr) = new CompAttrConstructor( LOC((yyloc)), (yysemantic_stack_[(7) - (3)].expr), (yysemantic_stack_[(7) - (6)].expr) );
+            (yyval.expr) = new CompElemConstructor( LOC((yyloc)), (yysemantic_stack_[(7) - (3)].expr), (yysemantic_stack_[(7) - (6)].expr) );
         }
     break;
 
   case 533:
 
-/* Line 678 of lalr1.cc  */
-#line 4773 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4774 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
-            (yyval.expr) = new CompTextConstructor( LOC((yyloc)), (yysemantic_stack_[(4) - (3)].expr) );
+          (yyval.expr) = new CompAttrConstructor( LOC((yyloc)), new QName(LOC((yyloc)), SYMTAB((yysemantic_stack_[(3) - (1)].sval))), (yysemantic_stack_[(3) - (2)].expr) );
         }
     break;
 
   case 534:
 
-/* Line 678 of lalr1.cc  */
-#line 4781 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4778 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
-            (yyval.expr) = new CompCommentConstructor( LOC((yyloc)), (yysemantic_stack_[(4) - (3)].expr) );
+            (yyval.expr) = new CompAttrConstructor( LOC((yyloc)), (yysemantic_stack_[(7) - (3)].expr), (yysemantic_stack_[(7) - (6)].expr) );
         }
     break;
 
   case 535:
 
-/* Line 678 of lalr1.cc  */
-#line 4789 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4786 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
-            (yyval.expr) = new CompPIConstructor( LOC((yyloc)), SYMTAB((yysemantic_stack_[(3) - (1)].sval)), (yysemantic_stack_[(3) - (2)].expr) );
+            (yyval.expr) = new CompTextConstructor( LOC((yyloc)), (yysemantic_stack_[(4) - (3)].expr) );
         }
     break;
 
   case 536:
 
-/* Line 678 of lalr1.cc  */
-#line 4793 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4794 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
-            (yyval.expr) = new CompPIConstructor( LOC((yyloc)), (yysemantic_stack_[(7) - (3)].expr), (yysemantic_stack_[(7) - (6)].expr) );
+            (yyval.expr) = new CompCommentConstructor( LOC((yyloc)), (yysemantic_stack_[(4) - (3)].expr) );
         }
     break;
 
   case 537:
 
-/* Line 678 of lalr1.cc  */
-#line 4801 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4802 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
-            (yyval.node) = new SingleType(
-                LOC((yyloc)), dynamic_cast<AtomicType*>((yysemantic_stack_[(1) - (1)].node)), false
-            );
+            (yyval.expr) = new CompPIConstructor( LOC((yyloc)), SYMTAB((yysemantic_stack_[(3) - (1)].sval)), (yysemantic_stack_[(3) - (2)].expr) );
         }
     break;
 
   case 538:
 
-/* Line 678 of lalr1.cc  */
-#line 4807 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4806 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
-            (yyval.node) = new SingleType(
-                LOC((yyloc)), dynamic_cast<AtomicType*>((yysemantic_stack_[(2) - (1)].node)), true
-            );
+            (yyval.expr) = new CompPIConstructor( LOC((yyloc)), (yysemantic_stack_[(7) - (3)].expr), (yysemantic_stack_[(7) - (6)].expr) );
         }
     break;
 
   case 539:
 
-/* Line 678 of lalr1.cc  */
-#line 4817 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4814 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
-            (yyval.node) = (yysemantic_stack_[(2) - (2)].node);
+            (yyval.node) = new SingleType(
+                LOC((yyloc)), dynamic_cast<AtomicType*>((yysemantic_stack_[(1) - (1)].node)), false
+            );
         }
     break;
 
   case 540:
 
-/* Line 678 of lalr1.cc  */
-#line 4825 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4820 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
-            (yyval.node) = new SequenceType( LOC((yyloc)), (yysemantic_stack_[(1) - (1)].node), NULL );
+            (yyval.node) = new SingleType(
+                LOC((yyloc)), dynamic_cast<AtomicType*>((yysemantic_stack_[(2) - (1)].node)), true
+            );
         }
     break;
 
   case 541:
 
-/* Line 678 of lalr1.cc  */
-#line 4829 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4830 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
-            (yyval.node) = new SequenceType(LOC((yyloc)), (yysemantic_stack_[(2) - (1)].node), dynamic_cast<OccurrenceIndicator*>((yysemantic_stack_[(2) - (2)].node)));
+            (yyval.node) = (yysemantic_stack_[(2) - (2)].node);
         }
     break;
 
   case 542:
 
-/* Line 678 of lalr1.cc  */
-#line 4833 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4838 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
-            (yyval.node) = new SequenceType( LOC((yyloc)), NULL, NULL );
+            (yyval.node) = new SequenceType( LOC((yyloc)), (yysemantic_stack_[(1) - (1)].node), NULL );
         }
     break;
 
   case 543:
 
-/* Line 678 of lalr1.cc  */
-#line 4868 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4842 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
-            (yyval.node) = new OccurrenceIndicator(
-                LOC((yyloc)), ParseConstants::occurs_optionally
-            );
+            (yyval.node) = new SequenceType(LOC((yyloc)), (yysemantic_stack_[(2) - (1)].node), dynamic_cast<OccurrenceIndicator*>((yysemantic_stack_[(2) - (2)].node)));
         }
     break;
 
   case 544:
 
-/* Line 678 of lalr1.cc  */
-#line 4874 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4846 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
-            (yyval.node) = new OccurrenceIndicator(
-                LOC((yyloc)), ParseConstants::occurs_zero_or_more
-            );
+            (yyval.node) = new SequenceType( LOC((yyloc)), NULL, NULL );
         }
     break;
 
   case 545:
 
-/* Line 678 of lalr1.cc  */
-#line 4880 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4881 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new OccurrenceIndicator(
-                LOC((yyloc)), ParseConstants::occurs_one_or_more
+                LOC((yyloc)), ParseConstants::occurs_optionally
             );
         }
     break;
 
   case 546:
 
-/* Line 678 of lalr1.cc  */
-#line 4890 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4887 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
-            (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
+            (yyval.node) = new OccurrenceIndicator(
+                LOC((yyloc)), ParseConstants::occurs_zero_or_more
+            );
         }
     break;
 
   case 547:
 
-/* Line 678 of lalr1.cc  */
-#line 4894 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4893 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
-            (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
+            (yyval.node) = new OccurrenceIndicator(
+                LOC((yyloc)), ParseConstants::occurs_one_or_more
+            );
         }
     break;
 
   case 548:
 
-/* Line 678 of lalr1.cc  */
-#line 4898 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4903 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
-            (yyval.node) = new ItemType( LOC((yyloc)),true );
+            (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
         }
     break;
 
   case 549:
 
-/* Line 678 of lalr1.cc  */
-#line 4902 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4907 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
         }
@@ -8098,17 +8132,35 @@
 
   case 550:
 
-/* Line 678 of lalr1.cc  */
-#line 4906 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4911 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
-            (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
+            (yyval.node) = new ItemType( LOC((yyloc)),true );
         }
     break;
 
   case 551:
 
-/* Line 678 of lalr1.cc  */
-#line 4913 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4915 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+    {
+            (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
+        }
+    break;
+
+  case 552:
+
+/* Line 690 of lalr1.cc  */
+#line 4919 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+    {
+            (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
+        }
+    break;
+
+  case 553:
+
+/* Line 690 of lalr1.cc  */
+#line 4926 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
           TypeList* aTypeList = new TypeList(LOC ((yyloc)));
           aTypeList->push_back(dynamic_cast<SequenceType *>((yysemantic_stack_[(1) - (1)].node)));
@@ -8116,10 +8168,10 @@
         }
     break;
 
-  case 552:
+  case 554:
 
-/* Line 678 of lalr1.cc  */
-#line 4919 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4932 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
           TypeList* aTypeList = dynamic_cast<TypeList *>((yysemantic_stack_[(3) - (1)].node));
           aTypeList->push_back(dynamic_cast<SequenceType *>((yysemantic_stack_[(3) - (3)].node)));
@@ -8127,37 +8179,19 @@
         }
     break;
 
-  case 553:
+  case 555:
 
-/* Line 678 of lalr1.cc  */
-#line 4929 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4942 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new AtomicType( LOC((yyloc)), static_cast<QName*>((yysemantic_stack_[(1) - (1)].expr)) );
         }
     break;
 
-  case 554:
-
-/* Line 678 of lalr1.cc  */
-#line 4937 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-    {
-            (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
-        }
-    break;
-
-  case 555:
-
-/* Line 678 of lalr1.cc  */
-#line 4941 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-    {
-            (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
-        }
-    break;
-
   case 556:
 
-/* Line 678 of lalr1.cc  */
-#line 4945 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4950 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
         }
@@ -8165,8 +8199,8 @@
 
   case 557:
 
-/* Line 678 of lalr1.cc  */
-#line 4949 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4954 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
         }
@@ -8174,8 +8208,8 @@
 
   case 558:
 
-/* Line 678 of lalr1.cc  */
-#line 4953 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4958 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
         }
@@ -8183,8 +8217,8 @@
 
   case 559:
 
-/* Line 678 of lalr1.cc  */
-#line 4957 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4962 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
         }
@@ -8192,8 +8226,8 @@
 
   case 560:
 
-/* Line 678 of lalr1.cc  */
-#line 4961 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4966 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
         }
@@ -8201,8 +8235,8 @@
 
   case 561:
 
-/* Line 678 of lalr1.cc  */
-#line 4965 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4970 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
         }
@@ -8210,8 +8244,8 @@
 
   case 562:
 
-/* Line 678 of lalr1.cc  */
-#line 4969 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4974 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
         }
@@ -8219,35 +8253,53 @@
 
   case 563:
 
-/* Line 678 of lalr1.cc  */
-#line 4977 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4978 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+    {
+            (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
+        }
+    break;
+
+  case 564:
+
+/* Line 690 of lalr1.cc  */
+#line 4982 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+    {
+            (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
+        }
+    break;
+
+  case 565:
+
+/* Line 690 of lalr1.cc  */
+#line 4990 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new AnyKindTest( LOC((yyloc)) );
         }
     break;
 
-  case 564:
+  case 566:
 
-/* Line 678 of lalr1.cc  */
-#line 4985 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4998 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new DocumentTest( LOC((yyloc)) );
         }
     break;
 
-  case 565:
+  case 567:
 
-/* Line 678 of lalr1.cc  */
-#line 4989 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5002 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new DocumentTest( LOC((yyloc)), dynamic_cast<ElementTest*>((yysemantic_stack_[(4) - (3)].node)) );
         }
     break;
 
-  case 566:
+  case 568:
 
-/* Line 678 of lalr1.cc  */
-#line 4993 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5006 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new DocumentTest(
                 LOC((yyloc)), dynamic_cast<SchemaElementTest*>((yysemantic_stack_[(4) - (3)].node))
@@ -8255,259 +8307,259 @@
         }
     break;
 
-  case 567:
+  case 569:
 
-/* Line 678 of lalr1.cc  */
-#line 5003 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5016 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new TextTest( LOC((yyloc)) );
         }
     break;
 
-  case 568:
+  case 570:
 
-/* Line 678 of lalr1.cc  */
-#line 5011 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5024 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new CommentTest( LOC((yyloc)));
         }
     break;
 
-  case 569:
+  case 571:
 
-/* Line 678 of lalr1.cc  */
-#line 5019 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5032 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new PITest( LOC((yyloc)), "" );
         }
     break;
 
-  case 570:
-
-/* Line 678 of lalr1.cc  */
-#line 5023 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-    {
-            (yyval.node) = new PITest( LOC((yyloc)), SYMTAB((yysemantic_stack_[(4) - (3)].sval)) );
-        }
-    break;
-
-  case 571:
-
-/* Line 678 of lalr1.cc  */
-#line 5027 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-    {
-            (yyval.node) = new PITest( LOC((yyloc)), SYMTAB((yysemantic_stack_[(4) - (3)].sval)) );
-        }
-    break;
-
   case 572:
 
-/* Line 678 of lalr1.cc  */
-#line 5035 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5036 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
-            (yyval.node) = new AttributeTest( LOC((yyloc)), NULL, NULL );
+            (yyval.node) = new PITest( LOC((yyloc)), SYMTAB((yysemantic_stack_[(4) - (3)].sval)) );
         }
     break;
 
   case 573:
 
-/* Line 678 of lalr1.cc  */
-#line 5039 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5040 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
-            (yyval.node) = new AttributeTest(
-                LOC((yyloc)), static_cast<QName*>((yysemantic_stack_[(4) - (3)].expr)), NULL
-            );
+            (yyval.node) = new PITest( LOC((yyloc)), SYMTAB((yysemantic_stack_[(4) - (3)].sval)) );
         }
     break;
 
   case 574:
 
-/* Line 678 of lalr1.cc  */
-#line 5045 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5048 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
-            (yyval.node) = new AttributeTest(
-                LOC((yyloc)), static_cast<QName*>((yysemantic_stack_[(6) - (3)].expr)), dynamic_cast<TypeName*>((yysemantic_stack_[(6) - (5)].node))
-            );
+            (yyval.node) = new AttributeTest( LOC((yyloc)), NULL, NULL );
         }
     break;
 
   case 575:
 
-/* Line 678 of lalr1.cc  */
-#line 5051 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5052 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
-            (yyval.node) = new AttributeTest( LOC((yyloc)), NULL, NULL );
+            (yyval.node) = new AttributeTest(
+                LOC((yyloc)), static_cast<QName*>((yysemantic_stack_[(4) - (3)].expr)), NULL
+            );
         }
     break;
 
   case 576:
 
-/* Line 678 of lalr1.cc  */
-#line 5055 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5058 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new AttributeTest(
-                LOC((yyloc)), NULL, dynamic_cast<TypeName*>((yysemantic_stack_[(6) - (5)].node))
+                LOC((yyloc)), static_cast<QName*>((yysemantic_stack_[(6) - (3)].expr)), dynamic_cast<TypeName*>((yysemantic_stack_[(6) - (5)].node))
             );
         }
     break;
 
   case 577:
 
-/* Line 678 of lalr1.cc  */
-#line 5065 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5064 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
-            (yyval.node) = new SchemaAttributeTest( LOC((yyloc)), static_cast<QName*>((yysemantic_stack_[(4) - (3)].expr)) );
+            (yyval.node) = new AttributeTest( LOC((yyloc)), NULL, NULL );
         }
     break;
 
   case 578:
 
-/* Line 678 of lalr1.cc  */
-#line 5073 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5068 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
-            (yyval.node) = new ElementTest( LOC((yyloc)), NULL, NULL, true );
+            (yyval.node) = new AttributeTest(
+                LOC((yyloc)), NULL, dynamic_cast<TypeName*>((yysemantic_stack_[(6) - (5)].node))
+            );
         }
     break;
 
   case 579:
 
-/* Line 678 of lalr1.cc  */
-#line 5077 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5078 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
-            (yyval.node) = new ElementTest(
-                LOC((yyloc)), static_cast<QName*>((yysemantic_stack_[(4) - (3)].expr)), NULL, true
-            );
+            (yyval.node) = new SchemaAttributeTest( LOC((yyloc)), static_cast<QName*>((yysemantic_stack_[(4) - (3)].expr)) );
         }
     break;
 
   case 580:
 
-/* Line 678 of lalr1.cc  */
-#line 5083 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5086 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
-            (yyval.node) = new ElementTest(
-                LOC((yyloc)),
-                static_cast<QName*>((yysemantic_stack_[(6) - (3)].expr)),
-                dynamic_cast<TypeName*>((yysemantic_stack_[(6) - (5)].node)),
-                false
-            );
+            (yyval.node) = new ElementTest( LOC((yyloc)), NULL, NULL, true );
         }
     break;
 
   case 581:
 
-/* Line 678 of lalr1.cc  */
-#line 5092 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5090 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new ElementTest(
-                LOC((yyloc)),
-                static_cast<QName*>((yysemantic_stack_[(6) - (3)].expr)),
-                dynamic_cast<TypeName*>((yysemantic_stack_[(6) - (5)].node)),
-                true
+                LOC((yyloc)), static_cast<QName*>((yysemantic_stack_[(4) - (3)].expr)), NULL, true
             );
         }
     break;
 
   case 582:
 
-/* Line 678 of lalr1.cc  */
-#line 5101 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5096 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new ElementTest(
-                LOC((yyloc)), NULL, NULL, true
+                LOC((yyloc)),
+                static_cast<QName*>((yysemantic_stack_[(6) - (3)].expr)),
+                dynamic_cast<TypeName*>((yysemantic_stack_[(6) - (5)].node)),
+                false
             );
         }
     break;
 
   case 583:
 
-/* Line 678 of lalr1.cc  */
-#line 5107 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5105 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new ElementTest(
-                LOC((yyloc)), NULL, dynamic_cast<TypeName*>((yysemantic_stack_[(6) - (5)].node)), false
+                LOC((yyloc)),
+                static_cast<QName*>((yysemantic_stack_[(6) - (3)].expr)),
+                dynamic_cast<TypeName*>((yysemantic_stack_[(6) - (5)].node)),
+                true
             );
         }
     break;
 
   case 584:
 
-/* Line 678 of lalr1.cc  */
-#line 5113 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5114 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new ElementTest(
-                LOC((yyloc)), NULL, dynamic_cast<TypeName*>((yysemantic_stack_[(6) - (5)].node)), true
+                LOC((yyloc)), NULL, NULL, true
             );
         }
     break;
 
   case 585:
 
-/* Line 678 of lalr1.cc  */
-#line 5123 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5120 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
-            (yyval.node) = new SchemaElementTest( LOC((yyloc)), static_cast<QName*>((yysemantic_stack_[(4) - (3)].expr)) );
+            (yyval.node) = new ElementTest(
+                LOC((yyloc)), NULL, dynamic_cast<TypeName*>((yysemantic_stack_[(6) - (5)].node)), false
+            );
         }
     break;
 
   case 586:
 
-/* Line 678 of lalr1.cc  */
-#line 5140 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5126 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
-            (yyval.node) = new TypeName( LOC((yyloc)), static_cast<QName*>((yysemantic_stack_[(1) - (1)].expr)) );
+            (yyval.node) = new ElementTest(
+                LOC((yyloc)), NULL, dynamic_cast<TypeName*>((yysemantic_stack_[(6) - (5)].node)), true
+            );
         }
     break;
 
   case 587:
 
-/* Line 678 of lalr1.cc  */
-#line 5147 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5136 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
-            (yyval.node) = new TypeName( LOC((yyloc)), static_cast<QName*>((yysemantic_stack_[(2) - (1)].expr)), true );
+            (yyval.node) = new SchemaElementTest( LOC((yyloc)), static_cast<QName*>((yysemantic_stack_[(4) - (3)].expr)) );
         }
     break;
 
   case 588:
 
-/* Line 678 of lalr1.cc  */
-#line 5162 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5153 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
-            (yyval.expr) = new StringLiteral( LOC((yyloc)), SYMTAB((yysemantic_stack_[(1) - (1)].sval)) );
+            (yyval.node) = new TypeName( LOC((yyloc)), static_cast<QName*>((yysemantic_stack_[(1) - (1)].expr)) );
         }
     break;
 
   case 589:
 
-/* Line 678 of lalr1.cc  */
-#line 5198 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5160 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
-      (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
-    }
+            (yyval.node) = new TypeName( LOC((yyloc)), static_cast<QName*>((yysemantic_stack_[(2) - (1)].expr)), true );
+        }
     break;
 
   case 590:
 
-/* Line 678 of lalr1.cc  */
-#line 5202 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5175 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
-      (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
-    }
+            (yyval.expr) = new StringLiteral( LOC((yyloc)), SYMTAB((yysemantic_stack_[(1) - (1)].sval)) );
+        }
     break;
 
   case 591:
 
-/* Line 678 of lalr1.cc  */
-#line 5210 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5211 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+    {
+      (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
+    }
+    break;
+
+  case 592:
+
+/* Line 690 of lalr1.cc  */
+#line 5215 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+    {
+      (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
+    }
+    break;
+
+  case 593:
+
+/* Line 690 of lalr1.cc  */
+#line 5223 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.expr) = new LiteralFunctionItem(LOC ((yyloc)), dynamic_cast<QName*>((yysemantic_stack_[(3) - (1)].expr)), (yysemantic_stack_[(3) - (3)].ival));
     }
     break;
 
-  case 592:
+  case 594:
 
-/* Line 678 of lalr1.cc  */
-#line 5218 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5231 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.expr) = new InlineFunction(LOC((yyloc)),
                               &*(yysemantic_stack_[(3) - (2)].fnsig)->theParams,
@@ -8517,46 +8569,46 @@
     }
     break;
 
-  case 593:
-
-/* Line 678 of lalr1.cc  */
-#line 5230 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-    {
-      (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
-    }
-    break;
-
-  case 594:
-
-/* Line 678 of lalr1.cc  */
-#line 5234 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-    {
-      (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
-    }
-    break;
-
   case 595:
 
-/* Line 678 of lalr1.cc  */
-#line 5242 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5243 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+    {
+      (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
+    }
+    break;
+
+  case 596:
+
+/* Line 690 of lalr1.cc  */
+#line 5247 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+    {
+      (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
+    }
+    break;
+
+  case 597:
+
+/* Line 690 of lalr1.cc  */
+#line 5255 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new AnyFunctionTest(LOC((yyloc)));
     }
     break;
 
-  case 596:
+  case 598:
 
-/* Line 678 of lalr1.cc  */
-#line 5250 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5263 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
           (yyval.node) = new TypedFunctionTest(LOC ((yyloc)), dynamic_cast<SequenceType *>((yysemantic_stack_[(5) - (5)].node)));
         }
     break;
 
-  case 597:
+  case 599:
 
-/* Line 678 of lalr1.cc  */
-#line 5254 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5267 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
           (yyval.node) = new TypedFunctionTest(LOC ((yyloc)),
               dynamic_cast<TypeList *>((yysemantic_stack_[(6) - (3)].node)),
@@ -8564,19 +8616,19 @@
         }
     break;
 
-  case 598:
+  case 600:
 
-/* Line 678 of lalr1.cc  */
-#line 5265 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5278 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
            (yyval.node) = (yysemantic_stack_[(3) - (2)].node);
         }
     break;
 
-  case 599:
+  case 601:
 
-/* Line 678 of lalr1.cc  */
-#line 5282 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5295 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new RevalidationDecl(
                 LOC((yyloc)), StaticContextConsts::strict_validation
@@ -8584,10 +8636,10 @@
         }
     break;
 
-  case 600:
+  case 602:
 
-/* Line 678 of lalr1.cc  */
-#line 5288 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5301 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new RevalidationDecl(
                 LOC((yyloc)), StaticContextConsts::lax_validation
@@ -8595,10 +8647,10 @@
         }
     break;
 
-  case 601:
+  case 603:
 
-/* Line 678 of lalr1.cc  */
-#line 5294 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5307 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new RevalidationDecl(
                 LOC((yyloc)), StaticContextConsts::skip_validation
@@ -8606,81 +8658,81 @@
         }
     break;
 
-  case 602:
-
-/* Line 678 of lalr1.cc  */
-#line 5304 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-    {
-            (yyval.expr) = new InsertExpr( LOC((yyloc)), store::UpdateConsts::INTO, (yysemantic_stack_[(5) - (3)].expr), (yysemantic_stack_[(5) - (5)].expr) );
-        }
-    break;
-
-  case 603:
-
-/* Line 678 of lalr1.cc  */
-#line 5308 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-    {
-            (yyval.expr) = new InsertExpr(
-                LOC((yyloc)), store::UpdateConsts::AS_FIRST_INTO, (yysemantic_stack_[(7) - (3)].expr), (yysemantic_stack_[(7) - (7)].expr)
-            );
-        }
-    break;
-
   case 604:
 
-/* Line 678 of lalr1.cc  */
-#line 5314 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5317 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
-            (yyval.expr) = new InsertExpr(
-                LOC((yyloc)), store::UpdateConsts::AS_LAST_INTO, (yysemantic_stack_[(7) - (3)].expr), (yysemantic_stack_[(7) - (7)].expr)
-            );
+            (yyval.expr) = new InsertExpr( LOC((yyloc)), store::UpdateConsts::INTO, (yysemantic_stack_[(5) - (3)].expr), (yysemantic_stack_[(5) - (5)].expr) );
         }
     break;
 
   case 605:
 
-/* Line 678 of lalr1.cc  */
-#line 5320 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5321 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
-            (yyval.expr) = new InsertExpr( LOC((yyloc)), store::UpdateConsts::AFTER, (yysemantic_stack_[(5) - (3)].expr), (yysemantic_stack_[(5) - (5)].expr) );
+            (yyval.expr) = new InsertExpr(
+                LOC((yyloc)), store::UpdateConsts::AS_FIRST_INTO, (yysemantic_stack_[(7) - (3)].expr), (yysemantic_stack_[(7) - (7)].expr)
+            );
         }
     break;
 
   case 606:
 
-/* Line 678 of lalr1.cc  */
-#line 5324 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5327 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.expr) = new InsertExpr(
-                LOC ((yyloc)), store::UpdateConsts::BEFORE, (yysemantic_stack_[(5) - (3)].expr), (yysemantic_stack_[(5) - (5)].expr)
+                LOC((yyloc)), store::UpdateConsts::AS_LAST_INTO, (yysemantic_stack_[(7) - (3)].expr), (yysemantic_stack_[(7) - (7)].expr)
             );
         }
     break;
 
   case 607:
 
-/* Line 678 of lalr1.cc  */
-#line 5330 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5333 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
-            (yyval.expr) = new InsertExpr( LOC((yyloc)), store::UpdateConsts::INTO, (yysemantic_stack_[(5) - (3)].expr), (yysemantic_stack_[(5) - (5)].expr) );
+            (yyval.expr) = new InsertExpr( LOC((yyloc)), store::UpdateConsts::AFTER, (yysemantic_stack_[(5) - (3)].expr), (yysemantic_stack_[(5) - (5)].expr) );
         }
     break;
 
   case 608:
 
-/* Line 678 of lalr1.cc  */
-#line 5334 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5337 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.expr) = new InsertExpr(
-                LOC((yyloc)), store::UpdateConsts::AS_FIRST_INTO, (yysemantic_stack_[(7) - (3)].expr), (yysemantic_stack_[(7) - (7)].expr)
+                LOC ((yyloc)), store::UpdateConsts::BEFORE, (yysemantic_stack_[(5) - (3)].expr), (yysemantic_stack_[(5) - (5)].expr)
             );
         }
     break;
 
   case 609:
 
-/* Line 678 of lalr1.cc  */
-#line 5340 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5343 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+    {
+            (yyval.expr) = new InsertExpr( LOC((yyloc)), store::UpdateConsts::INTO, (yysemantic_stack_[(5) - (3)].expr), (yysemantic_stack_[(5) - (5)].expr) );
+        }
+    break;
+
+  case 610:
+
+/* Line 690 of lalr1.cc  */
+#line 5347 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+    {
+            (yyval.expr) = new InsertExpr(
+                LOC((yyloc)), store::UpdateConsts::AS_FIRST_INTO, (yysemantic_stack_[(7) - (3)].expr), (yysemantic_stack_[(7) - (7)].expr)
+            );
+        }
+    break;
+
+  case 611:
+
+/* Line 690 of lalr1.cc  */
+#line 5353 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.expr) = new InsertExpr(
                   LOC((yyloc)), store::UpdateConsts::AS_LAST_INTO, (yysemantic_stack_[(7) - (3)].expr), (yysemantic_stack_[(7) - (7)].expr)
@@ -8688,10 +8740,10 @@
         }
     break;
 
-  case 610:
+  case 612:
 
-/* Line 678 of lalr1.cc  */
-#line 5346 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5359 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.expr) = new InsertExpr(
                 LOC ((yyloc)),
@@ -8700,39 +8752,39 @@
         }
     break;
 
-  case 611:
-
-/* Line 678 of lalr1.cc  */
-#line 5353 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-    {
-            (yyval.expr) = new InsertExpr(
-                LOC ((yyloc)), store::UpdateConsts::BEFORE, (yysemantic_stack_[(5) - (3)].expr), (yysemantic_stack_[(5) - (5)].expr)
-            );
-        }
-    break;
-
-  case 612:
-
-/* Line 678 of lalr1.cc  */
-#line 5363 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-    {
-            (yyval.expr) = new DeleteExpr( LOC ((yyloc)), (yysemantic_stack_[(3) - (3)].expr) );
-        }
-    break;
-
   case 613:
 
-/* Line 678 of lalr1.cc  */
-#line 5368 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5366 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
-            (yyval.expr) = new DeleteExpr( LOC ((yyloc)), (yysemantic_stack_[(3) - (3)].expr) );
+            (yyval.expr) = new InsertExpr(
+                LOC ((yyloc)), store::UpdateConsts::BEFORE, (yysemantic_stack_[(5) - (3)].expr), (yysemantic_stack_[(5) - (5)].expr)
+            );
         }
     break;
 
   case 614:
 
-/* Line 678 of lalr1.cc  */
-#line 5376 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5376 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+    {
+            (yyval.expr) = new DeleteExpr( LOC ((yyloc)), (yysemantic_stack_[(3) - (3)].expr) );
+        }
+    break;
+
+  case 615:
+
+/* Line 690 of lalr1.cc  */
+#line 5381 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+    {
+            (yyval.expr) = new DeleteExpr( LOC ((yyloc)), (yysemantic_stack_[(3) - (3)].expr) );
+        }
+    break;
+
+  case 616:
+
+/* Line 690 of lalr1.cc  */
+#line 5389 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.expr) = new ReplaceExpr(
                 LOC((yyloc)), store::UpdateConsts::NODE, (yysemantic_stack_[(5) - (3)].expr), (yysemantic_stack_[(5) - (5)].expr)
@@ -8740,10 +8792,10 @@
         }
     break;
 
-  case 615:
+  case 617:
 
-/* Line 678 of lalr1.cc  */
-#line 5382 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5395 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.expr) = new ReplaceExpr(
                 LOC((yyloc)), store::UpdateConsts::VALUE_OF_NODE, (yysemantic_stack_[(7) - (5)].expr), (yysemantic_stack_[(7) - (7)].expr)
@@ -8751,29 +8803,29 @@
         }
     break;
 
-  case 616:
+  case 618:
 
-/* Line 678 of lalr1.cc  */
-#line 5392 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5405 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.expr) = new RenameExpr( LOC ((yyloc)), (yysemantic_stack_[(5) - (3)].expr), (yysemantic_stack_[(5) - (5)].expr) );
         }
     break;
 
-  case 617:
+  case 619:
 
-/* Line 678 of lalr1.cc  */
-#line 5414 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5427 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       CopyVarList *cvl = dynamic_cast<CopyVarList*>((yysemantic_stack_[(7) - (3)].expr));
       (yyval.expr) = new TransformExpr( LOC((yyloc)), cvl, (yysemantic_stack_[(7) - (5)].expr), (yysemantic_stack_[(7) - (7)].expr) );
     }
     break;
 
-  case 618:
+  case 620:
 
-/* Line 678 of lalr1.cc  */
-#line 5423 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5436 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       CopyVarList* lList = new CopyVarList(LOC((yyloc)));
       lList->push_back (dynamic_cast<VarBinding*> ((yysemantic_stack_[(1) - (1)].expr)));
@@ -8781,10 +8833,10 @@
     }
     break;
 
-  case 619:
+  case 621:
 
-/* Line 678 of lalr1.cc  */
-#line 5429 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5442 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       CopyVarList* lList = dynamic_cast<CopyVarList*>((yysemantic_stack_[(4) - (1)].expr));
       VarBinding* lBinding = dynamic_cast<VarBinding*>((yysemantic_stack_[(4) - (4)].expr));
@@ -8793,28 +8845,28 @@
     }
     break;
 
-  case 620:
+  case 622:
 
-/* Line 678 of lalr1.cc  */
-#line 5442 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5455 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
        (yyval.expr) = new VarBinding(LOC((yyloc)), static_cast<QName*>((yysemantic_stack_[(3) - (1)].expr)), (yysemantic_stack_[(3) - (3)].expr));
     }
     break;
 
-  case 621:
+  case 623:
 
-/* Line 678 of lalr1.cc  */
-#line 5456 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5469 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.expr) = new TryExpr( LOC((yyloc)), (yysemantic_stack_[(5) - (3)].expr), (yysemantic_stack_[(5) - (5)].expr) );
         }
     break;
 
-  case 622:
+  case 624:
 
-/* Line 678 of lalr1.cc  */
-#line 5463 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5476 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             CatchListExpr *cle = new CatchListExpr( LOC((yyloc)) );
             cle->push_back( static_cast<CatchExpr*>((yysemantic_stack_[(1) - (1)].expr)) );
@@ -8822,10 +8874,10 @@
         }
     break;
 
-  case 623:
+  case 625:
 
-/* Line 678 of lalr1.cc  */
-#line 5469 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5482 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             CatchListExpr *cle = dynamic_cast<CatchListExpr*>((yysemantic_stack_[(2) - (1)].expr));
             if ( cle )
@@ -8834,29 +8886,29 @@
         }
     break;
 
-  case 624:
-
-/* Line 678 of lalr1.cc  */
-#line 5479 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-    {
-       (yyval.expr) = new CatchExpr(LOC((yyloc)), *(yysemantic_stack_[(3) - (2)].name_test_list), (yysemantic_stack_[(3) - (3)].expr));
-       delete (yysemantic_stack_[(3) - (2)].name_test_list);
-    }
-    break;
-
-  case 625:
-
-/* Line 678 of lalr1.cc  */
-#line 5488 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-    {
-      (yyval.expr) = (yysemantic_stack_[(3) - (2)].expr);
-    }
-    break;
-
   case 626:
 
-/* Line 678 of lalr1.cc  */
-#line 5496 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5492 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+    {
+       (yyval.expr) = new CatchExpr(LOC((yyloc)), *(yysemantic_stack_[(3) - (2)].name_test_list), (yysemantic_stack_[(3) - (3)].expr));
+       delete (yysemantic_stack_[(3) - (2)].name_test_list);
+    }
+    break;
+
+  case 627:
+
+/* Line 690 of lalr1.cc  */
+#line 5501 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+    {
+      (yyval.expr) = (yysemantic_stack_[(3) - (2)].expr);
+    }
+    break;
+
+  case 628:
+
+/* Line 690 of lalr1.cc  */
+#line 5509 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             CatchExpr::NameTestList *ntl = new CatchExpr::NameTestList;
             ntl->push_back( static_cast<NameTest*>((yysemantic_stack_[(1) - (1)].node)) );
@@ -8864,10 +8916,10 @@
         }
     break;
 
-  case 627:
+  case 629:
 
-/* Line 678 of lalr1.cc  */
-#line 5502 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5515 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             CatchExpr::NameTestList *ntl =
                 static_cast<CatchExpr::NameTestList*>((yysemantic_stack_[(3) - (1)].name_test_list));
@@ -8876,76 +8928,58 @@
         }
     break;
 
-  case 628:
+  case 630:
 
-/* Line 678 of lalr1.cc  */
-#line 5520 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5533 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new FTSelection( LOC((yyloc)), (yysemantic_stack_[(2) - (1)].node), (yysemantic_stack_[(2) - (2)].pos_filter_list) );
             delete (yysemantic_stack_[(2) - (2)].pos_filter_list);
         }
     break;
 
-  case 629:
+  case 631:
 
-/* Line 678 of lalr1.cc  */
-#line 5528 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5541 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.pos_filter_list) = NULL;
         }
     break;
 
-  case 630:
+  case 632:
 
-/* Line 678 of lalr1.cc  */
-#line 5532 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5545 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.pos_filter_list) = (yysemantic_stack_[(1) - (1)].pos_filter_list);
         }
     break;
 
-  case 631:
+  case 633:
 
-/* Line 678 of lalr1.cc  */
-#line 5539 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5552 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.pos_filter_list) = new FTSelection::pos_filter_list_t;
             (yyval.pos_filter_list)->push_back( dynamic_cast<FTPosFilter*>((yysemantic_stack_[(1) - (1)].node)) );
         }
     break;
 
-  case 632:
+  case 634:
 
-/* Line 678 of lalr1.cc  */
-#line 5544 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5557 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yysemantic_stack_[(2) - (1)].pos_filter_list)->push_back( dynamic_cast<FTPosFilter*>((yysemantic_stack_[(2) - (2)].node)) );
             (yyval.pos_filter_list) = (yysemantic_stack_[(2) - (1)].pos_filter_list);
         }
     break;
 
-  case 633:
-
-/* Line 678 of lalr1.cc  */
-#line 5552 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-    {
-            (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
-        }
-    break;
-
-  case 634:
-
-/* Line 678 of lalr1.cc  */
-#line 5556 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-    {
-            (yyval.node) = new FTOr( LOC((yyloc)), (yysemantic_stack_[(3) - (1)].node), (yysemantic_stack_[(3) - (3)].node) );
-        }
-    break;
-
   case 635:
 
-/* Line 678 of lalr1.cc  */
-#line 5563 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5565 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
         }
@@ -8953,17 +8987,17 @@
 
   case 636:
 
-/* Line 678 of lalr1.cc  */
-#line 5567 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5569 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
-            (yyval.node) = new FTAnd( LOC((yyloc)), (yysemantic_stack_[(3) - (1)].node), (yysemantic_stack_[(3) - (3)].node) );
+            (yyval.node) = new FTOr( LOC((yyloc)), (yysemantic_stack_[(3) - (1)].node), (yysemantic_stack_[(3) - (3)].node) );
         }
     break;
 
   case 637:
 
-/* Line 678 of lalr1.cc  */
-#line 5574 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5576 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
         }
@@ -8971,17 +9005,17 @@
 
   case 638:
 
-/* Line 678 of lalr1.cc  */
-#line 5578 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5580 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
-            (yyval.node) = new FTMildNot( LOC((yyloc)), (yysemantic_stack_[(4) - (1)].node), (yysemantic_stack_[(4) - (4)].node) );
+            (yyval.node) = new FTAnd( LOC((yyloc)), (yysemantic_stack_[(3) - (1)].node), (yysemantic_stack_[(3) - (3)].node) );
         }
     break;
 
   case 639:
 
-/* Line 678 of lalr1.cc  */
-#line 5585 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5587 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
         }
@@ -8989,8 +9023,26 @@
 
   case 640:
 
-/* Line 678 of lalr1.cc  */
-#line 5589 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5591 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+    {
+            (yyval.node) = new FTMildNot( LOC((yyloc)), (yysemantic_stack_[(4) - (1)].node), (yysemantic_stack_[(4) - (4)].node) );
+        }
+    break;
+
+  case 641:
+
+/* Line 690 of lalr1.cc  */
+#line 5598 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+    {
+            (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
+        }
+    break;
+
+  case 642:
+
+/* Line 690 of lalr1.cc  */
+#line 5602 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new FTUnaryNot(
                 LOC((yyloc)), dynamic_cast<FTPrimaryWithOptions*>((yysemantic_stack_[(2) - (2)].node))
@@ -8998,10 +9050,10 @@
         }
     break;
 
-  case 641:
+  case 643:
 
-/* Line 678 of lalr1.cc  */
-#line 5598 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5611 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new FTPrimaryWithOptions(
                 LOC((yyloc)),
@@ -9012,28 +9064,10 @@
         }
     break;
 
-  case 642:
-
-/* Line 678 of lalr1.cc  */
-#line 5610 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-    {
-            (yyval.node) = NULL;
-        }
-    break;
-
-  case 643:
-
-/* Line 678 of lalr1.cc  */
-#line 5614 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-    {
-            (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
-        }
-    break;
-
   case 644:
 
-/* Line 678 of lalr1.cc  */
-#line 5621 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5623 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = NULL;
         }
@@ -9041,8 +9075,8 @@
 
   case 645:
 
-/* Line 678 of lalr1.cc  */
-#line 5625 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5627 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
         }
@@ -9050,17 +9084,35 @@
 
   case 646:
 
-/* Line 678 of lalr1.cc  */
-#line 5633 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5634 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+    {
+            (yyval.node) = NULL;
+        }
+    break;
+
+  case 647:
+
+/* Line 690 of lalr1.cc  */
+#line 5638 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+    {
+            (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
+        }
+    break;
+
+  case 648:
+
+/* Line 690 of lalr1.cc  */
+#line 5646 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new FTWeight( LOC((yyloc)), dynamic_cast<exprnode*>((yysemantic_stack_[(4) - (3)].expr)) );
         }
     break;
 
-  case 647:
+  case 649:
 
-/* Line 678 of lalr1.cc  */
-#line 5641 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5654 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new FTWordsTimes(
                 LOC((yyloc)),
@@ -9070,37 +9122,19 @@
         }
     break;
 
-  case 648:
+  case 650:
 
-/* Line 678 of lalr1.cc  */
-#line 5649 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5662 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = (yysemantic_stack_[(3) - (2)].node);
         }
     break;
 
-  case 649:
-
-/* Line 678 of lalr1.cc  */
-#line 5653 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-    {
-            (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
-        }
-    break;
-
-  case 650:
-
-/* Line 678 of lalr1.cc  */
-#line 5660 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-    {
-            (yyval.node) = NULL;
-        }
-    break;
-
   case 651:
 
-/* Line 678 of lalr1.cc  */
-#line 5664 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5666 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
         }
@@ -9108,8 +9142,26 @@
 
   case 652:
 
-/* Line 678 of lalr1.cc  */
-#line 5672 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5673 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+    {
+            (yyval.node) = NULL;
+        }
+    break;
+
+  case 653:
+
+/* Line 690 of lalr1.cc  */
+#line 5677 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+    {
+            (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
+        }
+    break;
+
+  case 654:
+
+/* Line 690 of lalr1.cc  */
+#line 5685 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new FTExtensionSelection(
                 LOC((yyloc)),
@@ -9119,28 +9171,28 @@
         }
     break;
 
-  case 653:
-
-/* Line 678 of lalr1.cc  */
-#line 5683 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-    {
-            (yyval.node) = NULL;
-        }
-    break;
-
-  case 654:
-
-/* Line 678 of lalr1.cc  */
-#line 5687 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-    {
-            (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
-        }
-    break;
-
   case 655:
 
-/* Line 678 of lalr1.cc  */
-#line 5695 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5696 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+    {
+            (yyval.node) = NULL;
+        }
+    break;
+
+  case 656:
+
+/* Line 690 of lalr1.cc  */
+#line 5700 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+    {
+            (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
+        }
+    break;
+
+  case 657:
+
+/* Line 690 of lalr1.cc  */
+#line 5708 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new FTWords(
                 LOC((yyloc)),
@@ -9150,10 +9202,10 @@
         }
     break;
 
-  case 656:
+  case 658:
 
-/* Line 678 of lalr1.cc  */
-#line 5707 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5720 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new FTWordsValue(
                 LOC((yyloc)), static_cast<StringLiteral*>((yysemantic_stack_[(1) - (1)].expr)), NULL
@@ -9161,10 +9213,10 @@
         }
     break;
 
-  case 657:
+  case 659:
 
-/* Line 678 of lalr1.cc  */
-#line 5713 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5726 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new FTWordsValue(
                 LOC((yyloc)), NULL, dynamic_cast<exprnode*>((yysemantic_stack_[(3) - (2)].expr))
@@ -9172,109 +9224,91 @@
         }
     break;
 
-  case 658:
+  case 660:
 
-/* Line 678 of lalr1.cc  */
-#line 5722 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5735 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new FTAnyallOption( LOC((yyloc)), ft_anyall_mode::any );
         }
     break;
 
-  case 659:
-
-/* Line 678 of lalr1.cc  */
-#line 5726 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-    {
-            (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
-        }
-    break;
-
-  case 660:
-
-/* Line 678 of lalr1.cc  */
-#line 5734 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-    {
-            (yyval.node) = new FTAnyallOption( LOC((yyloc)), (yysemantic_stack_[(2) - (2)].ft_anyall_value) );
-        }
-    break;
-
   case 661:
 
-/* Line 678 of lalr1.cc  */
-#line 5738 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5739 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
-            (yyval.node) = new FTAnyallOption( LOC((yyloc)), (yysemantic_stack_[(2) - (2)].ft_anyall_value) );
+            (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
         }
     break;
 
   case 662:
 
-/* Line 678 of lalr1.cc  */
-#line 5742 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5747 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
-            (yyval.node) = new FTAnyallOption( LOC((yyloc)), ft_anyall_mode::phrase );
+            (yyval.node) = new FTAnyallOption( LOC((yyloc)), (yysemantic_stack_[(2) - (2)].ft_anyall_value) );
         }
     break;
 
   case 663:
 
-/* Line 678 of lalr1.cc  */
-#line 5749 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5751 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
-            (yyval.ft_anyall_value) = ft_anyall_mode::any;
+            (yyval.node) = new FTAnyallOption( LOC((yyloc)), (yysemantic_stack_[(2) - (2)].ft_anyall_value) );
         }
     break;
 
   case 664:
 
-/* Line 678 of lalr1.cc  */
-#line 5753 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5755 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
-            (yyval.ft_anyall_value) = ft_anyall_mode::any_word;
+            (yyval.node) = new FTAnyallOption( LOC((yyloc)), ft_anyall_mode::phrase );
         }
     break;
 
   case 665:
 
-/* Line 678 of lalr1.cc  */
-#line 5760 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5762 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
-            (yyval.ft_anyall_value) = ft_anyall_mode::all;
+            (yyval.ft_anyall_value) = ft_anyall_mode::any;
         }
     break;
 
   case 666:
 
-/* Line 678 of lalr1.cc  */
-#line 5764 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5766 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
-            (yyval.ft_anyall_value) = ft_anyall_mode::all_words;
+            (yyval.ft_anyall_value) = ft_anyall_mode::any_word;
         }
     break;
 
   case 667:
 
-/* Line 678 of lalr1.cc  */
-#line 5772 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5773 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
-            (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
+            (yyval.ft_anyall_value) = ft_anyall_mode::all;
         }
     break;
 
   case 668:
 
-/* Line 678 of lalr1.cc  */
-#line 5776 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5777 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
-            (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
+            (yyval.ft_anyall_value) = ft_anyall_mode::all_words;
         }
     break;
 
   case 669:
 
-/* Line 678 of lalr1.cc  */
-#line 5780 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5785 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
         }
@@ -9282,8 +9316,8 @@
 
   case 670:
 
-/* Line 678 of lalr1.cc  */
-#line 5784 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5789 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
         }
@@ -9291,8 +9325,8 @@
 
   case 671:
 
-/* Line 678 of lalr1.cc  */
-#line 5788 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5793 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
         }
@@ -9300,17 +9334,35 @@
 
   case 672:
 
-/* Line 678 of lalr1.cc  */
-#line 5796 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5797 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+    {
+            (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
+        }
+    break;
+
+  case 673:
+
+/* Line 690 of lalr1.cc  */
+#line 5801 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+    {
+            (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
+        }
+    break;
+
+  case 674:
+
+/* Line 690 of lalr1.cc  */
+#line 5809 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new FTOrder( LOC((yyloc)) );
         }
     break;
 
-  case 673:
+  case 675:
 
-/* Line 678 of lalr1.cc  */
-#line 5804 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5817 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new FTWindow(
                 LOC((yyloc)),
@@ -9320,10 +9372,10 @@
         }
     break;
 
-  case 674:
+  case 676:
 
-/* Line 678 of lalr1.cc  */
-#line 5816 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5829 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new FTDistance(
                 LOC((yyloc)),
@@ -9333,37 +9385,37 @@
         }
     break;
 
-  case 675:
+  case 677:
 
-/* Line 678 of lalr1.cc  */
-#line 5828 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5841 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new FTUnit( LOC((yyloc)), ft_unit::words );
         }
     break;
 
-  case 676:
+  case 678:
 
-/* Line 678 of lalr1.cc  */
-#line 5832 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5845 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new FTUnit( LOC((yyloc)), ft_unit::sentences );
         }
     break;
 
-  case 677:
+  case 679:
 
-/* Line 678 of lalr1.cc  */
-#line 5836 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5849 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new FTUnit( LOC((yyloc)), ft_unit::paragraphs );
         }
     break;
 
-  case 678:
+  case 680:
 
-/* Line 678 of lalr1.cc  */
-#line 5844 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5857 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             FTMatchOptions *mo = new FTMatchOptions( LOC((yyloc)) );
             mo->push_back( dynamic_cast<FTMatchOption*>((yysemantic_stack_[(2) - (2)].node)) );
@@ -9371,10 +9423,10 @@
         }
     break;
 
-  case 679:
+  case 681:
 
-/* Line 678 of lalr1.cc  */
-#line 5850 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5863 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             FTMatchOptions *mo = dynamic_cast<FTMatchOptions*>((yysemantic_stack_[(3) - (1)].node));
             mo->push_back( dynamic_cast<FTMatchOption*>((yysemantic_stack_[(3) - (3)].node)) );
@@ -9382,28 +9434,10 @@
         }
     break;
 
-  case 680:
-
-/* Line 678 of lalr1.cc  */
-#line 5860 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-    {
-            (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
-        }
-    break;
-
-  case 681:
-
-/* Line 678 of lalr1.cc  */
-#line 5864 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-    {
-            (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
-        }
-    break;
-
   case 682:
 
-/* Line 678 of lalr1.cc  */
-#line 5868 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5873 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
         }
@@ -9411,8 +9445,8 @@
 
   case 683:
 
-/* Line 678 of lalr1.cc  */
-#line 5872 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5877 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
         }
@@ -9420,8 +9454,8 @@
 
   case 684:
 
-/* Line 678 of lalr1.cc  */
-#line 5876 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5881 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
         }
@@ -9429,8 +9463,8 @@
 
   case 685:
 
-/* Line 678 of lalr1.cc  */
-#line 5880 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5885 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
         }
@@ -9438,8 +9472,8 @@
 
   case 686:
 
-/* Line 678 of lalr1.cc  */
-#line 5884 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5889 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
         }
@@ -9447,8 +9481,8 @@
 
   case 687:
 
-/* Line 678 of lalr1.cc  */
-#line 5888 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5893 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
         }
@@ -9456,44 +9490,62 @@
 
   case 688:
 
-/* Line 678 of lalr1.cc  */
-#line 5896 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5897 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+    {
+            (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
+        }
+    break;
+
+  case 689:
+
+/* Line 690 of lalr1.cc  */
+#line 5901 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+    {
+            (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
+        }
+    break;
+
+  case 690:
+
+/* Line 690 of lalr1.cc  */
+#line 5909 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new FTCaseOption( LOC((yyloc)), ft_case_mode::sensitive );
         }
     break;
 
-  case 689:
+  case 691:
 
-/* Line 678 of lalr1.cc  */
-#line 5900 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5913 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new FTCaseOption( LOC((yyloc)), ft_case_mode::insensitive );
         }
     break;
 
-  case 690:
+  case 692:
 
-/* Line 678 of lalr1.cc  */
-#line 5904 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5917 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new FTCaseOption( LOC((yyloc)), ft_case_mode::lower );
         }
     break;
 
-  case 691:
+  case 693:
 
-/* Line 678 of lalr1.cc  */
-#line 5908 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5921 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new FTCaseOption( LOC((yyloc)), ft_case_mode::upper );
         }
     break;
 
-  case 692:
+  case 694:
 
-/* Line 678 of lalr1.cc  */
-#line 5916 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5929 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new FTDiacriticsOption(
                 LOC((yyloc)), ft_diacritics_mode::sensitive
@@ -9501,10 +9553,10 @@
         }
     break;
 
-  case 693:
+  case 695:
 
-/* Line 678 of lalr1.cc  */
-#line 5922 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5935 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new FTDiacriticsOption(
                 LOC((yyloc)), ft_diacritics_mode::insensitive
@@ -9512,10 +9564,10 @@
         }
     break;
 
-  case 694:
+  case 696:
 
-/* Line 678 of lalr1.cc  */
-#line 5932 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5945 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new FTExtensionOption(
                 LOC((yyloc)), static_cast<QName*>((yysemantic_stack_[(3) - (2)].expr)), SYMTAB((yysemantic_stack_[(3) - (3)].sval))
@@ -9523,28 +9575,28 @@
         }
     break;
 
-  case 695:
+  case 697:
 
-/* Line 678 of lalr1.cc  */
-#line 5942 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5955 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new FTStemOption( LOC((yyloc)), ft_stem_mode::with );
         }
     break;
 
-  case 696:
+  case 698:
 
-/* Line 678 of lalr1.cc  */
-#line 5946 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5959 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new FTStemOption( LOC((yyloc)), ft_stem_mode::without );
         }
     break;
 
-  case 697:
+  case 699:
 
-/* Line 678 of lalr1.cc  */
-#line 5954 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5967 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             FTThesaurusOption::thesaurus_id_list_t *til = NULL;
             if ( (yysemantic_stack_[(2) - (2)].node) ) {
@@ -9556,10 +9608,10 @@
         }
     break;
 
-  case 698:
+  case 700:
 
-/* Line 678 of lalr1.cc  */
-#line 5964 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5977 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             FTThesaurusOption::thesaurus_id_list_t *til = (yysemantic_stack_[(5) - (4)].thesaurus_id_list);
             if ( (yysemantic_stack_[(5) - (3)].node) ) {
@@ -9572,75 +9624,75 @@
         }
     break;
 
-  case 699:
+  case 701:
 
-/* Line 678 of lalr1.cc  */
-#line 5975 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5988 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new FTThesaurusOption( LOC((yyloc)), NULL, false, true );
         }
     break;
 
-  case 700:
-
-/* Line 678 of lalr1.cc  */
-#line 5982 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-    {
-            (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
-        }
-    break;
-
-  case 701:
-
-/* Line 678 of lalr1.cc  */
-#line 5986 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-    {
-            (yyval.node) = NULL;
-        }
-    break;
-
   case 702:
 
-/* Line 678 of lalr1.cc  */
-#line 5993 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5995 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+    {
+            (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
+        }
+    break;
+
+  case 703:
+
+/* Line 690 of lalr1.cc  */
+#line 5999 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+    {
+            (yyval.node) = NULL;
+        }
+    break;
+
+  case 704:
+
+/* Line 690 of lalr1.cc  */
+#line 6006 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.thesaurus_id_list) = NULL;
         }
     break;
 
-  case 703:
+  case 705:
 
-/* Line 678 of lalr1.cc  */
-#line 5997 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6010 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.thesaurus_id_list) = (yysemantic_stack_[(2) - (2)].thesaurus_id_list);
         }
     break;
 
-  case 704:
+  case 706:
 
-/* Line 678 of lalr1.cc  */
-#line 6004 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6017 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.thesaurus_id_list) = new FTThesaurusOption::thesaurus_id_list_t;
             (yyval.thesaurus_id_list)->push_back( dynamic_cast<FTThesaurusID*>((yysemantic_stack_[(1) - (1)].node)) );
         }
     break;
 
-  case 705:
+  case 707:
 
-/* Line 678 of lalr1.cc  */
-#line 6009 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6022 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yysemantic_stack_[(3) - (1)].thesaurus_id_list)->push_back( dynamic_cast<FTThesaurusID*>((yysemantic_stack_[(3) - (3)].node)) );
             (yyval.thesaurus_id_list) = (yysemantic_stack_[(3) - (1)].thesaurus_id_list);
         }
     break;
 
-  case 706:
+  case 708:
 
-/* Line 678 of lalr1.cc  */
-#line 6018 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6031 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new FTThesaurusID(
                 LOC((yyloc)), SYMTAB((yysemantic_stack_[(4) - (2)].sval)), SYMTAB((yysemantic_stack_[(4) - (3)].sval)), dynamic_cast<FTRange*>((yysemantic_stack_[(4) - (4)].node))
@@ -9648,46 +9700,46 @@
         }
     break;
 
-  case 707:
+  case 709:
 
-/* Line 678 of lalr1.cc  */
-#line 6027 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6040 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.sval) = NULL;
         }
     break;
 
-  case 708:
+  case 710:
 
-/* Line 678 of lalr1.cc  */
-#line 6031 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6044 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.sval) = (yysemantic_stack_[(2) - (2)].sval);
         }
     break;
 
-  case 709:
-
-/* Line 678 of lalr1.cc  */
-#line 6038 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-    {
-            (yyval.node) = NULL;
-        }
-    break;
-
-  case 710:
-
-/* Line 678 of lalr1.cc  */
-#line 6042 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
-    {
-            (yyval.node) = (yysemantic_stack_[(2) - (1)].node);
-        }
-    break;
-
   case 711:
 
-/* Line 678 of lalr1.cc  */
-#line 6050 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6051 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+    {
+            (yyval.node) = NULL;
+        }
+    break;
+
+  case 712:
+
+/* Line 690 of lalr1.cc  */
+#line 6055 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+    {
+            (yyval.node) = (yysemantic_stack_[(2) - (1)].node);
+        }
+    break;
+
+  case 713:
+
+/* Line 690 of lalr1.cc  */
+#line 6063 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new FTStopWordOption(
                 LOC((yyloc)),
@@ -9698,10 +9750,10 @@
         }
     break;
 
-  case 712:
+  case 714:
 
-/* Line 678 of lalr1.cc  */
-#line 6059 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6072 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new FTStopWordOption(
                 LOC((yyloc)), NULL, (yysemantic_stack_[(4) - (4)].incl_excl_list), ft_stop_words_mode::with_default
@@ -9710,10 +9762,10 @@
         }
     break;
 
-  case 713:
+  case 715:
 
-/* Line 678 of lalr1.cc  */
-#line 6066 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6079 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new FTStopWordOption(
                 LOC((yyloc)), NULL, NULL, ft_stop_words_mode::without
@@ -9721,28 +9773,28 @@
         }
     break;
 
-  case 714:
+  case 716:
 
-/* Line 678 of lalr1.cc  */
-#line 6076 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6089 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new FTStopWords( LOC((yyloc)), SYMTAB((yysemantic_stack_[(2) - (2)].sval)), NULL );
         }
     break;
 
-  case 715:
+  case 717:
 
-/* Line 678 of lalr1.cc  */
-#line 6080 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6093 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new FTStopWords( LOC((yyloc)), "", (yysemantic_stack_[(3) - (2)].strlist) );
         }
     break;
 
-  case 716:
+  case 718:
 
-/* Line 678 of lalr1.cc  */
-#line 6087 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6100 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             string_list_t *sl = new string_list_t;
             sl->push_back( SYMTAB((yysemantic_stack_[(1) - (1)].sval)) );
@@ -9750,10 +9802,10 @@
         }
     break;
 
-  case 717:
+  case 719:
 
-/* Line 678 of lalr1.cc  */
-#line 6093 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6106 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             if ( (yysemantic_stack_[(3) - (1)].strlist) )
                 (yysemantic_stack_[(3) - (1)].strlist)->push_back( SYMTAB((yysemantic_stack_[(3) - (3)].sval)) );
@@ -9761,38 +9813,38 @@
         }
     break;
 
-  case 718:
+  case 720:
 
-/* Line 678 of lalr1.cc  */
-#line 6102 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6115 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.incl_excl_list) = NULL;
         }
     break;
 
-  case 719:
+  case 721:
 
-/* Line 678 of lalr1.cc  */
-#line 6106 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6119 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.incl_excl_list) = (yysemantic_stack_[(1) - (1)].incl_excl_list);
         }
     break;
 
-  case 720:
+  case 722:
 
-/* Line 678 of lalr1.cc  */
-#line 6113 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6126 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.incl_excl_list) = new FTStopWordOption::incl_excl_list_t;
             (yyval.incl_excl_list)->push_back( dynamic_cast<FTStopWordsInclExcl*>((yysemantic_stack_[(1) - (1)].node)) );
         }
     break;
 
-  case 721:
+  case 723:
 
-/* Line 678 of lalr1.cc  */
-#line 6118 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6131 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             FTStopWordOption::incl_excl_list_t *iel = (yysemantic_stack_[(2) - (1)].incl_excl_list);
             if ( !iel )
@@ -9802,10 +9854,10 @@
         }
     break;
 
-  case 722:
+  case 724:
 
-/* Line 678 of lalr1.cc  */
-#line 6130 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6143 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new FTStopWordsInclExcl(
                 LOC((yyloc)),
@@ -9815,10 +9867,10 @@
         }
     break;
 
-  case 723:
+  case 725:
 
-/* Line 678 of lalr1.cc  */
-#line 6138 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6151 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new FTStopWordsInclExcl(
                 LOC((yyloc)),
@@ -9828,109 +9880,109 @@
         }
     break;
 
-  case 724:
+  case 726:
 
-/* Line 678 of lalr1.cc  */
-#line 6150 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6163 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new FTLanguageOption( LOC((yyloc)), SYMTAB((yysemantic_stack_[(2) - (2)].sval)) );
         }
     break;
 
-  case 725:
+  case 727:
 
-/* Line 678 of lalr1.cc  */
-#line 6158 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6171 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new FTWildCardOption( LOC((yyloc)), ft_wild_card_mode::with );
         }
     break;
 
-  case 726:
+  case 728:
 
-/* Line 678 of lalr1.cc  */
-#line 6162 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6175 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new FTWildCardOption( LOC((yyloc)), ft_wild_card_mode::without );
         }
     break;
 
-  case 727:
+  case 729:
 
-/* Line 678 of lalr1.cc  */
-#line 6170 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6183 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new FTContent( LOC((yyloc)), ft_content_mode::at_start );
         }
     break;
 
-  case 728:
+  case 730:
 
-/* Line 678 of lalr1.cc  */
-#line 6174 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6187 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new FTContent( LOC((yyloc)), ft_content_mode::at_end );
         }
     break;
 
-  case 729:
+  case 731:
 
-/* Line 678 of lalr1.cc  */
-#line 6178 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6191 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new FTContent( LOC((yyloc)), ft_content_mode::entire );
         }
     break;
 
-  case 730:
+  case 732:
 
-/* Line 678 of lalr1.cc  */
-#line 6186 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6199 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new FTTimes( LOC((yyloc)), dynamic_cast<FTRange*>((yysemantic_stack_[(3) - (2)].node)) );
         }
     break;
 
-  case 731:
+  case 733:
 
-/* Line 678 of lalr1.cc  */
-#line 6194 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6207 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new FTRange( LOC((yyloc)), ft_range_mode::exactly, (yysemantic_stack_[(2) - (2)].expr) );
         }
     break;
 
-  case 732:
+  case 734:
 
-/* Line 678 of lalr1.cc  */
-#line 6198 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6211 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new FTRange( LOC((yyloc)), ft_range_mode::at_least, (yysemantic_stack_[(3) - (3)].expr) );
         }
     break;
 
-  case 733:
+  case 735:
 
-/* Line 678 of lalr1.cc  */
-#line 6202 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6215 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new FTRange( LOC((yyloc)), ft_range_mode::at_most, (yysemantic_stack_[(3) - (3)].expr) );
         }
     break;
 
-  case 734:
+  case 736:
 
-/* Line 678 of lalr1.cc  */
-#line 6206 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6219 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new FTRange( LOC((yyloc)), ft_range_mode::from_to, (yysemantic_stack_[(4) - (2)].expr), (yysemantic_stack_[(4) - (4)].expr) );
         }
     break;
 
-  case 735:
+  case 737:
 
-/* Line 678 of lalr1.cc  */
-#line 6214 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6227 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new FTScope(
                 LOC((yyloc)),
@@ -9940,10 +9992,10 @@
         }
     break;
 
-  case 736:
+  case 738:
 
-/* Line 678 of lalr1.cc  */
-#line 6222 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6235 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new FTScope(
                 LOC((yyloc)),
@@ -9953,37 +10005,37 @@
         }
     break;
 
-  case 737:
+  case 739:
 
-/* Line 678 of lalr1.cc  */
-#line 6234 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6247 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new FTBigUnit( LOC((yyloc)), ft_big_unit::sentence );
         }
     break;
 
-  case 738:
+  case 740:
 
-/* Line 678 of lalr1.cc  */
-#line 6238 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6251 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new FTBigUnit( LOC((yyloc)), ft_big_unit::paragraph );
         }
     break;
 
-  case 739:
+  case 741:
 
-/* Line 678 of lalr1.cc  */
-#line 6246 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6259 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new FTIgnoreOption( LOC((yyloc)), static_cast<UnionExpr*>((yysemantic_stack_[(3) - (3)].expr)) );
         }
     break;
 
-  case 742:
+  case 744:
 
-/* Line 678 of lalr1.cc  */
-#line 6264 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6277 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
           auto_ptr<QName> lQName( static_cast<QName*>((yysemantic_stack_[(1) - (1)].expr)) );
           zstring const &tmp = lQName->get_qname();
@@ -9995,1501 +10047,1501 @@
         }
     break;
 
-  case 744:
+  case 746:
 
-/* Line 678 of lalr1.cc  */
-#line 6277 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6290 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("attribute"))); }
     break;
 
-  case 745:
+  case 747:
 
-/* Line 678 of lalr1.cc  */
-#line 6278 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6291 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("comment"))); }
     break;
 
-  case 746:
+  case 748:
 
-/* Line 678 of lalr1.cc  */
-#line 6279 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6292 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("document-node"))); }
     break;
 
-  case 747:
+  case 749:
 
-/* Line 678 of lalr1.cc  */
-#line 6280 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6293 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("element"))); }
     break;
 
-  case 748:
+  case 750:
 
-/* Line 678 of lalr1.cc  */
-#line 6281 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6294 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("item"))); }
     break;
 
-  case 749:
+  case 751:
 
-/* Line 678 of lalr1.cc  */
-#line 6282 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6295 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("if"))); }
     break;
 
-  case 750:
+  case 752:
 
-/* Line 678 of lalr1.cc  */
-#line 6283 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6296 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("node"))); }
     break;
 
-  case 751:
+  case 753:
 
-/* Line 678 of lalr1.cc  */
-#line 6284 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6297 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("processing-instruction"))); }
     break;
 
-  case 752:
+  case 754:
 
-/* Line 678 of lalr1.cc  */
-#line 6285 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6298 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("schema-attribute"))); }
     break;
 
-  case 753:
+  case 755:
 
-/* Line 678 of lalr1.cc  */
-#line 6286 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6299 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("schema-element"))); }
     break;
 
-  case 754:
+  case 756:
 
-/* Line 678 of lalr1.cc  */
-#line 6287 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6300 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("text"))); }
     break;
 
-  case 755:
+  case 757:
 
-/* Line 678 of lalr1.cc  */
-#line 6288 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6301 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("typeswitch"))); }
     break;
 
-  case 756:
+  case 758:
 
-/* Line 678 of lalr1.cc  */
-#line 6289 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6302 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("switch"))); }
     break;
 
-  case 757:
+  case 759:
 
-/* Line 678 of lalr1.cc  */
-#line 6290 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6303 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("empty-sequence"))); }
     break;
 
-  case 758:
+  case 760:
 
-/* Line 678 of lalr1.cc  */
-#line 6291 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6304 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("while"))); }
     break;
 
-  case 760:
+  case 762:
 
-/* Line 678 of lalr1.cc  */
-#line 6296 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6309 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB((yysemantic_stack_[(1) - (1)].sval))); }
     break;
 
-  case 761:
+  case 763:
 
-/* Line 678 of lalr1.cc  */
-#line 6297 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6310 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("xquery"))); }
     break;
 
-  case 762:
+  case 764:
 
-/* Line 678 of lalr1.cc  */
-#line 6298 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6311 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("empty"))); }
     break;
 
-  case 763:
+  case 765:
 
-/* Line 678 of lalr1.cc  */
-#line 6299 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6312 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("boundary-space"))); }
     break;
 
-  case 764:
+  case 766:
 
-/* Line 678 of lalr1.cc  */
-#line 6300 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6313 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("ft-option"))); }
     break;
 
-  case 765:
+  case 767:
 
-/* Line 678 of lalr1.cc  */
-#line 6301 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6314 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("base-uri"))); }
     break;
 
-  case 766:
+  case 768:
 
-/* Line 678 of lalr1.cc  */
-#line 6302 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6315 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("lax"))); }
     break;
 
-  case 767:
+  case 769:
 
-/* Line 678 of lalr1.cc  */
-#line 6303 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6316 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("strict"))); }
     break;
 
-  case 768:
+  case 770:
 
-/* Line 678 of lalr1.cc  */
-#line 6304 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6317 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("idiv"))); }
     break;
 
-  case 769:
+  case 771:
 
-/* Line 678 of lalr1.cc  */
-#line 6305 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6318 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("document"))); }
     break;
 
-  case 770:
+  case 772:
 
-/* Line 678 of lalr1.cc  */
-#line 6306 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6319 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("ftnot"))); }
     break;
 
-  case 771:
+  case 773:
 
-/* Line 678 of lalr1.cc  */
-#line 6307 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6320 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("not"))); }
     break;
 
-  case 772:
+  case 774:
 
-/* Line 678 of lalr1.cc  */
-#line 6308 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6321 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("sensitive"))); }
     break;
 
-  case 773:
+  case 775:
 
-/* Line 678 of lalr1.cc  */
-#line 6309 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6322 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("insensitive"))); }
     break;
 
-  case 774:
+  case 776:
 
-/* Line 678 of lalr1.cc  */
-#line 6310 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6323 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("diacritics"))); }
     break;
 
-  case 775:
+  case 777:
 
-/* Line 678 of lalr1.cc  */
-#line 6311 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6324 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("without"))); }
     break;
 
-  case 776:
+  case 778:
 
-/* Line 678 of lalr1.cc  */
-#line 6312 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6325 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("stemming"))); }
     break;
 
-  case 777:
+  case 779:
 
-/* Line 678 of lalr1.cc  */
-#line 6313 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6326 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("thesaurus"))); }
     break;
 
-  case 778:
+  case 780:
 
-/* Line 678 of lalr1.cc  */
-#line 6314 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6327 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("stop"))); }
     break;
 
-  case 779:
+  case 781:
 
-/* Line 678 of lalr1.cc  */
-#line 6315 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6328 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("wildcards"))); }
     break;
 
-  case 780:
+  case 782:
 
-/* Line 678 of lalr1.cc  */
-#line 6316 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6329 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("entire"))); }
     break;
 
-  case 781:
+  case 783:
 
-/* Line 678 of lalr1.cc  */
-#line 6317 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6330 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("content"))); }
     break;
 
-  case 782:
+  case 784:
 
-/* Line 678 of lalr1.cc  */
-#line 6318 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6331 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("word"))); }
     break;
 
-  case 783:
+  case 785:
 
-/* Line 678 of lalr1.cc  */
-#line 6319 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6332 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("start"))); }
     break;
 
-  case 784:
+  case 786:
 
-/* Line 678 of lalr1.cc  */
-#line 6320 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6333 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("end"))); }
     break;
 
-  case 785:
+  case 787:
 
-/* Line 678 of lalr1.cc  */
-#line 6321 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6334 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("most"))); }
     break;
 
-  case 786:
+  case 788:
 
-/* Line 678 of lalr1.cc  */
-#line 6322 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6335 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("skip"))); }
     break;
 
-  case 787:
+  case 789:
 
-/* Line 678 of lalr1.cc  */
-#line 6323 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6336 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("copy"))); }
     break;
 
-  case 788:
+  case 790:
 
-/* Line 678 of lalr1.cc  */
-#line 6324 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6337 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("general"))); }
     break;
 
-  case 789:
+  case 791:
 
-/* Line 678 of lalr1.cc  */
-#line 6325 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6338 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("value"))); }
     break;
 
-  case 790:
+  case 792:
 
-/* Line 678 of lalr1.cc  */
-#line 6326 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6339 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("eq"))); }
     break;
 
-  case 791:
+  case 793:
 
-/* Line 678 of lalr1.cc  */
-#line 6327 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6340 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("ne"))); }
     break;
 
-  case 792:
+  case 794:
 
-/* Line 678 of lalr1.cc  */
-#line 6328 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6341 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("lt"))); }
     break;
 
-  case 793:
+  case 795:
 
-/* Line 678 of lalr1.cc  */
-#line 6329 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6342 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("le"))); }
     break;
 
-  case 794:
+  case 796:
 
-/* Line 678 of lalr1.cc  */
-#line 6330 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6343 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("gt"))); }
     break;
 
-  case 795:
+  case 797:
 
-/* Line 678 of lalr1.cc  */
-#line 6331 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6344 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("ge"))); }
     break;
 
-  case 796:
+  case 798:
 
-/* Line 678 of lalr1.cc  */
-#line 6332 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6345 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("at"))); }
     break;
 
-  case 797:
+  case 799:
 
-/* Line 678 of lalr1.cc  */
-#line 6333 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6346 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("context"))); }
     break;
 
-  case 798:
+  case 800:
 
-/* Line 678 of lalr1.cc  */
-#line 6334 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6347 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("variable"))); }
     break;
 
-  case 799:
+  case 801:
 
-/* Line 678 of lalr1.cc  */
-#line 6335 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6348 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("return"))); }
     break;
 
-  case 800:
+  case 802:
 
-/* Line 678 of lalr1.cc  */
-#line 6336 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6349 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("for"))); }
     break;
 
-  case 801:
+  case 803:
 
-/* Line 678 of lalr1.cc  */
-#line 6337 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6350 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("allowing"))); }
     break;
 
-  case 802:
+  case 804:
 
-/* Line 678 of lalr1.cc  */
-#line 6338 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6351 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("sliding"))); }
     break;
 
-  case 803:
+  case 805:
 
-/* Line 678 of lalr1.cc  */
-#line 6339 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6352 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("tumbling"))); }
     break;
 
-  case 804:
+  case 806:
 
-/* Line 678 of lalr1.cc  */
-#line 6340 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6353 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("previous"))); }
     break;
 
-  case 805:
+  case 807:
 
-/* Line 678 of lalr1.cc  */
-#line 6341 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6354 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("next"))); }
     break;
 
-  case 806:
+  case 808:
 
-/* Line 678 of lalr1.cc  */
-#line 6342 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6355 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("only"))); }
     break;
 
-  case 807:
+  case 809:
 
-/* Line 678 of lalr1.cc  */
-#line 6343 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6356 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("when"))); }
     break;
 
-  case 808:
+  case 810:
 
-/* Line 678 of lalr1.cc  */
-#line 6344 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6357 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("count"))); }
     break;
 
-  case 809:
+  case 811:
 
-/* Line 678 of lalr1.cc  */
-#line 6345 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6358 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("in"))); }
     break;
 
-  case 810:
+  case 812:
 
-/* Line 678 of lalr1.cc  */
-#line 6346 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6359 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("let"))); }
     break;
 
-  case 811:
+  case 813:
 
-/* Line 678 of lalr1.cc  */
-#line 6347 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6360 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("where"))); }
     break;
 
-  case 812:
+  case 814:
 
-/* Line 678 of lalr1.cc  */
-#line 6348 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6361 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("by"))); }
     break;
 
-  case 813:
+  case 815:
 
-/* Line 678 of lalr1.cc  */
-#line 6349 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6362 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("group"))); }
     break;
 
-  case 814:
+  case 816:
 
-/* Line 678 of lalr1.cc  */
-#line 6350 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6363 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("order"))); }
     break;
 
-  case 815:
+  case 817:
 
-/* Line 678 of lalr1.cc  */
-#line 6351 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6364 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("stable"))); }
     break;
 
-  case 816:
+  case 818:
 
-/* Line 678 of lalr1.cc  */
-#line 6352 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6365 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("ascending"))); }
     break;
 
-  case 817:
+  case 819:
 
-/* Line 678 of lalr1.cc  */
-#line 6353 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6366 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("descending"))); }
     break;
 
-  case 818:
+  case 820:
 
-/* Line 678 of lalr1.cc  */
-#line 6354 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6367 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("greatest"))); }
     break;
 
-  case 819:
+  case 821:
 
-/* Line 678 of lalr1.cc  */
-#line 6355 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6368 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("least"))); }
     break;
 
-  case 820:
+  case 822:
 
-/* Line 678 of lalr1.cc  */
-#line 6356 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6369 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("collation"))); }
     break;
 
-  case 821:
+  case 823:
 
-/* Line 678 of lalr1.cc  */
-#line 6357 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6370 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("some"))); }
     break;
 
-  case 822:
+  case 824:
 
-/* Line 678 of lalr1.cc  */
-#line 6358 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6371 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("every"))); }
     break;
 
-  case 823:
+  case 825:
 
-/* Line 678 of lalr1.cc  */
-#line 6359 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6372 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("satisfies"))); }
     break;
 
-  case 824:
+  case 826:
 
-/* Line 678 of lalr1.cc  */
-#line 6360 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6373 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("case"))); }
     break;
 
-  case 825:
+  case 827:
 
-/* Line 678 of lalr1.cc  */
-#line 6361 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6374 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("as"))); }
     break;
 
-  case 826:
+  case 828:
 
-/* Line 678 of lalr1.cc  */
-#line 6362 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6375 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("then"))); }
     break;
 
-  case 827:
+  case 829:
 
-/* Line 678 of lalr1.cc  */
-#line 6363 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6376 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("else"))); }
     break;
 
-  case 828:
+  case 830:
 
-/* Line 678 of lalr1.cc  */
-#line 6364 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6377 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("or"))); }
     break;
 
-  case 829:
+  case 831:
 
-/* Line 678 of lalr1.cc  */
-#line 6365 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6378 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("and"))); }
     break;
 
-  case 830:
+  case 832:
 
-/* Line 678 of lalr1.cc  */
-#line 6366 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6379 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("instance"))); }
     break;
 
-  case 831:
+  case 833:
 
-/* Line 678 of lalr1.cc  */
-#line 6367 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6380 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("of"))); }
     break;
 
-  case 832:
+  case 834:
 
-/* Line 678 of lalr1.cc  */
-#line 6368 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6381 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("castable"))); }
     break;
 
-  case 833:
+  case 835:
 
-/* Line 678 of lalr1.cc  */
-#line 6369 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6382 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("to"))); }
     break;
 
-  case 834:
+  case 836:
 
-/* Line 678 of lalr1.cc  */
-#line 6370 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6383 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("div"))); }
     break;
 
-  case 835:
+  case 837:
 
-/* Line 678 of lalr1.cc  */
-#line 6371 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6384 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("mod"))); }
     break;
 
-  case 836:
+  case 838:
 
-/* Line 678 of lalr1.cc  */
-#line 6372 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6385 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("union"))); }
     break;
 
-  case 837:
+  case 839:
 
-/* Line 678 of lalr1.cc  */
-#line 6373 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6386 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("intersect"))); }
     break;
 
-  case 838:
+  case 840:
 
-/* Line 678 of lalr1.cc  */
-#line 6374 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6387 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("except"))); }
     break;
 
-  case 839:
+  case 841:
 
-/* Line 678 of lalr1.cc  */
-#line 6375 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6388 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("validate"))); }
     break;
 
-  case 840:
+  case 842:
 
-/* Line 678 of lalr1.cc  */
-#line 6376 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6389 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("type"))); }
     break;
 
-  case 841:
+  case 843:
 
-/* Line 678 of lalr1.cc  */
-#line 6377 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6390 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("cast"))); }
     break;
 
-  case 842:
+  case 844:
 
-/* Line 678 of lalr1.cc  */
-#line 6378 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6391 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("treat"))); }
     break;
 
-  case 843:
+  case 845:
 
-/* Line 678 of lalr1.cc  */
-#line 6379 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6392 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("is"))); }
     break;
 
-  case 844:
+  case 846:
 
-/* Line 678 of lalr1.cc  */
-#line 6380 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6393 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("preserve"))); }
     break;
 
-  case 845:
+  case 847:
 
-/* Line 678 of lalr1.cc  */
-#line 6381 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6394 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("strip"))); }
     break;
 
-  case 846:
+  case 848:
 
-/* Line 678 of lalr1.cc  */
-#line 6382 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6395 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("namespace"))); }
     break;
 
-  case 847:
+  case 849:
 
-/* Line 678 of lalr1.cc  */
-#line 6383 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6396 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("external"))); }
     break;
 
-  case 848:
+  case 850:
 
-/* Line 678 of lalr1.cc  */
-#line 6384 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6397 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("encoding"))); }
     break;
 
-  case 849:
+  case 851:
 
-/* Line 678 of lalr1.cc  */
-#line 6385 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6398 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("no-preserve"))); }
     break;
 
-  case 850:
+  case 852:
 
-/* Line 678 of lalr1.cc  */
-#line 6386 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6399 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("inherit"))); }
     break;
 
-  case 851:
+  case 853:
 
-/* Line 678 of lalr1.cc  */
-#line 6387 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6400 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("no-inherit"))); }
     break;
 
-  case 852:
+  case 854:
 
-/* Line 678 of lalr1.cc  */
-#line 6388 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6401 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("declare"))); }
     break;
 
-  case 853:
+  case 855:
 
-/* Line 678 of lalr1.cc  */
-#line 6389 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6402 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("construction"))); }
     break;
 
-  case 854:
+  case 856:
 
-/* Line 678 of lalr1.cc  */
-#line 6390 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6403 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("ordering"))); }
     break;
 
-  case 855:
+  case 857:
 
-/* Line 678 of lalr1.cc  */
-#line 6391 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6404 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("default"))); }
     break;
 
-  case 856:
+  case 858:
 
-/* Line 678 of lalr1.cc  */
-#line 6392 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6405 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("copy-namespaces"))); }
     break;
 
-  case 857:
+  case 859:
 
-/* Line 678 of lalr1.cc  */
-#line 6393 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6406 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("option"))); }
     break;
 
-  case 858:
+  case 860:
 
-/* Line 678 of lalr1.cc  */
-#line 6394 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6407 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("version"))); }
     break;
 
-  case 859:
+  case 861:
 
-/* Line 678 of lalr1.cc  */
-#line 6395 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6408 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("import"))); }
     break;
 
-  case 860:
+  case 862:
 
-/* Line 678 of lalr1.cc  */
-#line 6396 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6409 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("schema"))); }
     break;
 
-  case 861:
+  case 863:
 
-/* Line 678 of lalr1.cc  */
-#line 6397 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6410 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("module"))); }
     break;
 
-  case 862:
+  case 864:
 
-/* Line 678 of lalr1.cc  */
-#line 6398 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6411 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("function"))); }
     break;
 
-  case 863:
+  case 865:
 
-/* Line 678 of lalr1.cc  */
-#line 6399 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6412 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("score"))); }
     break;
 
-  case 864:
+  case 866:
 
-/* Line 678 of lalr1.cc  */
-#line 6400 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6413 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("contains"))); }
     break;
 
-  case 865:
+  case 867:
 
-/* Line 678 of lalr1.cc  */
-#line 6401 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6414 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("weight"))); }
     break;
 
-  case 866:
+  case 868:
 
-/* Line 678 of lalr1.cc  */
-#line 6402 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6415 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("window"))); }
     break;
 
-  case 867:
+  case 869:
 
-/* Line 678 of lalr1.cc  */
-#line 6403 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6416 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("distance"))); }
     break;
 
-  case 868:
+  case 870:
 
-/* Line 678 of lalr1.cc  */
-#line 6404 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6417 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("occurs"))); }
     break;
 
-  case 869:
+  case 871:
 
-/* Line 678 of lalr1.cc  */
-#line 6405 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6418 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("times"))); }
     break;
 
-  case 870:
+  case 872:
 
-/* Line 678 of lalr1.cc  */
-#line 6406 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6419 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("same"))); }
     break;
 
-  case 871:
+  case 873:
 
-/* Line 678 of lalr1.cc  */
-#line 6407 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6420 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("different"))); }
     break;
 
-  case 872:
+  case 874:
 
-/* Line 678 of lalr1.cc  */
-#line 6408 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6421 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("lowercase"))); }
     break;
 
-  case 873:
+  case 875:
 
-/* Line 678 of lalr1.cc  */
-#line 6409 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6422 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("uppercase"))); }
     break;
 
-  case 874:
+  case 876:
 
-/* Line 678 of lalr1.cc  */
-#line 6410 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6423 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("relationship"))); }
     break;
 
-  case 875:
+  case 877:
 
-/* Line 678 of lalr1.cc  */
-#line 6411 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6424 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("levels"))); }
     break;
 
-  case 876:
+  case 878:
 
-/* Line 678 of lalr1.cc  */
-#line 6412 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6425 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("language"))); }
     break;
 
-  case 877:
+  case 879:
 
-/* Line 678 of lalr1.cc  */
-#line 6413 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6426 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("any"))); }
     break;
 
-  case 878:
+  case 880:
 
-/* Line 678 of lalr1.cc  */
-#line 6414 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6427 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("all"))); }
     break;
 
-  case 879:
+  case 881:
 
-/* Line 678 of lalr1.cc  */
-#line 6415 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6428 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("exactly"))); }
     break;
 
-  case 880:
+  case 882:
 
-/* Line 678 of lalr1.cc  */
-#line 6416 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6429 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("from"))); }
     break;
 
-  case 881:
+  case 883:
 
-/* Line 678 of lalr1.cc  */
-#line 6417 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6430 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("words"))); }
     break;
 
-  case 882:
+  case 884:
 
-/* Line 678 of lalr1.cc  */
-#line 6418 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6431 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("sentences"))); }
     break;
 
-  case 883:
+  case 885:
 
-/* Line 678 of lalr1.cc  */
-#line 6419 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6432 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("sentence"))); }
     break;
 
-  case 884:
+  case 886:
 
-/* Line 678 of lalr1.cc  */
-#line 6420 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6433 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("phrase"))); }
     break;
 
-  case 885:
+  case 887:
 
-/* Line 678 of lalr1.cc  */
-#line 6421 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6434 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("paragraph"))); }
     break;
 
-  case 886:
+  case 888:
 
-/* Line 678 of lalr1.cc  */
-#line 6422 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6435 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("paragraphs"))); }
     break;
 
-  case 887:
+  case 889:
 
-/* Line 678 of lalr1.cc  */
-#line 6423 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6436 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("replace"))); }
     break;
 
-  case 888:
+  case 890:
 
-/* Line 678 of lalr1.cc  */
-#line 6424 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6437 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("modify"))); }
     break;
 
-  case 889:
+  case 891:
 
-/* Line 678 of lalr1.cc  */
-#line 6425 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6438 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("first"))); }
     break;
 
-  case 890:
+  case 892:
 
-/* Line 678 of lalr1.cc  */
-#line 6426 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6439 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("insert"))); }
     break;
 
-  case 891:
+  case 893:
 
-/* Line 678 of lalr1.cc  */
-#line 6427 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6440 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("before"))); }
     break;
 
-  case 892:
+  case 894:
 
-/* Line 678 of lalr1.cc  */
-#line 6428 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6441 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("after"))); }
     break;
 
-  case 893:
+  case 895:
 
-/* Line 678 of lalr1.cc  */
-#line 6429 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6442 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("revalidation"))); }
     break;
 
-  case 894:
+  case 896:
 
-/* Line 678 of lalr1.cc  */
-#line 6430 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6443 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("with"))); }
     break;
 
-  case 895:
+  case 897:
 
-/* Line 678 of lalr1.cc  */
-#line 6431 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6444 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("nodes"))); }
     break;
 
-  case 896:
+  case 898:
 
-/* Line 678 of lalr1.cc  */
-#line 6432 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6445 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("rename"))); }
     break;
 
-  case 897:
+  case 899:
 
-/* Line 678 of lalr1.cc  */
-#line 6433 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6446 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("last"))); }
     break;
 
-  case 898:
+  case 900:
 
-/* Line 678 of lalr1.cc  */
-#line 6434 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6447 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("delete"))); }
     break;
 
-  case 899:
+  case 901:
 
-/* Line 678 of lalr1.cc  */
-#line 6435 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6448 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("into"))); }
     break;
 
-  case 900:
+  case 902:
 
-/* Line 678 of lalr1.cc  */
-#line 6436 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6449 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("simple"))); }
     break;
 
-  case 901:
+  case 903:
 
-/* Line 678 of lalr1.cc  */
-#line 6437 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6450 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("sequential"))); }
     break;
 
-  case 902:
+  case 904:
 
-/* Line 678 of lalr1.cc  */
-#line 6438 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6451 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("updating"))); }
     break;
 
-  case 903:
+  case 905:
 
-/* Line 678 of lalr1.cc  */
-#line 6439 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6452 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("ordered"))); }
     break;
 
-  case 904:
+  case 906:
 
-/* Line 678 of lalr1.cc  */
-#line 6440 "/home/mbrantner/zorba/trunk/core/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6453 "/Users/wcandillon/28msec/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("unordered"))); }
     break;
 
-  case 905:
+  case 907:
 
-/* L

Follow ups