← Back to team overview

zorba-coders team mailing list archive

[Merge] lp:~gislenius/zorba/jsoniq-pregenerated-compiler into lp:zorba/3.0

 

Ghislain Fourny has proposed merging lp:~gislenius/zorba/jsoniq-pregenerated-compiler into lp:zorba/3.0.

Requested reviews:
  Matthias Brantner (matthias-brantner)

For more details, see:
https://code.launchpad.net/~gislenius/zorba/jsoniq-pregenerated-compiler/+merge/92030

Uploaded new pre-generated compiler files (syncing with xquery_parser.y).
-- 
The attached diff has been truncated due to its size.
https://code.launchpad.net/~gislenius/zorba/jsoniq-pregenerated-compiler/+merge/92030
Your team Zorba Coders is subscribed to branch lp:zorba/3.0.
=== modified file 'src/compiler/parser/location.hh'
--- src/compiler/parser/location.hh	2009-09-23 08:37:57 +0000
+++ src/compiler/parser/location.hh	2012-02-08 13:51:39 +0000
@@ -1,9 +1,8 @@
-
-/* A Bison parser, made by GNU Bison 2.4.1.  */
+/* A Bison parser, made by GNU Bison 2.5.  */
 
 /* Locations for Bison parsers in C++
    
-      Copyright (C) 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc.
+      Copyright (C) 2002-2007, 2009-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
@@ -44,13 +43,10 @@
 # include "position.hh"
 
 
-/* Line 162 of location.cc  */
-#line 1 "[Bison:b4_percent_define_default]"
-
 namespace zorba {
 
 /* Line 162 of location.cc  */
-#line 54 "/Users/dagraf/work/28msec/software/zorba/build/src/compiler/parser/location.hh"
+#line 50 "/home/jsoniq/zorba/debug/src/compiler/parser/location.hh"
 
   /// Abstract a location.
   class location
@@ -160,12 +156,9 @@
   }
 
 
-/* Line 271 of location.cc  */
-#line 1 "[Bison:b4_percent_define_default]"
-
 } // zorba
 
 /* Line 271 of location.cc  */
-#line 170 "/Users/dagraf/work/28msec/software/zorba/build/src/compiler/parser/location.hh"
+#line 163 "/home/jsoniq/zorba/debug/src/compiler/parser/location.hh"
 
 #endif // not BISON_LOCATION_HH

=== modified file 'src/compiler/parser/position.hh'
--- src/compiler/parser/position.hh	2009-11-15 17:47:20 +0000
+++ src/compiler/parser/position.hh	2012-02-08 13:51:39 +0000
@@ -1,9 +1,8 @@
-
-/* A Bison parser, made by GNU Bison 2.4.1.  */
+/* A Bison parser, made by GNU Bison 2.5.  */
 
 /* Positions for Bison parsers in C++
    
-      Copyright (C) 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc.
+      Copyright (C) 2002-2007, 2009-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
@@ -44,13 +43,10 @@
 # include <algorithm>
 
 
-/* Line 38 of location.cc  */
-#line 1 "[Bison:b4_percent_define_default]"
-
 namespace zorba {
 
-/* Line 38 of location.cc  */
-#line 54 "/Users/dagraf/work/28msec/software/zorba/build/src/compiler/parser/position.hh"
+/* Line 37 of location.cc  */
+#line 50 "/home/jsoniq/zorba/debug/src/compiler/parser/position.hh"
   /// Abstract a position.
   class position
   {
@@ -84,12 +80,7 @@
     /// (column related) Advance to the COUNT next columns.
     inline void columns (int count = 1)
     {
-// zorba patch: std::max is not available on windows!
-//      column = std::max (1u, column + count);
-      if (1u <= (column+count))
-        column += count;
-      else
-        column = 1u;
+      column = std::max (1u, column + count);
     }
     /** \} */
 
@@ -136,10 +127,11 @@
   inline bool
   operator== (const position& pos1, const position& pos2)
   {
-    return
-      (pos1.filename == pos2.filename
-       || pos1.filename && pos2.filename && *pos1.filename == *pos2.filename)
-      && pos1.line == pos2.line && pos1.column == pos2.column;
+    return (pos1.line == pos2.line
+            && pos1.column == pos2.column
+            && (pos1.filename == pos2.filename
+                || (pos1.filename && pos2.filename
+                    && *pos1.filename == *pos2.filename)));
   }
 
   /// Compare two position objects.
@@ -162,11 +154,8 @@
   }
 
 
-/* Line 144 of location.cc  */
-#line 1 "[Bison:b4_percent_define_default]"
-
 } // zorba
 
 /* Line 144 of location.cc  */
-#line 167 "/Users/dagraf/work/28msec/software/zorba/build/src/compiler/parser/position.hh"
+#line 161 "/home/jsoniq/zorba/debug/src/compiler/parser/position.hh"
 #endif // not BISON_POSITION_HH

=== modified file 'src/compiler/parser/stack.hh'
--- src/compiler/parser/stack.hh	2009-09-23 08:37:57 +0000
+++ src/compiler/parser/stack.hh	2012-02-08 13:51:39 +0000
@@ -1,10 +1,8 @@
-
-/* A Bison parser, made by GNU Bison 2.4.1.  */
+/* A Bison parser, made by GNU Bison 2.5.  */
 
 /* Stack handling for Bison 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
@@ -38,13 +36,10 @@
 #include <deque>
 
 
-/* Line 1067 of lalr1.cc  */
-#line 1 "[Bison:b4_percent_define_default]"
-
 namespace zorba {
 
-/* Line 1067 of lalr1.cc  */
-#line 48 "/Users/dagraf/work/28msec/software/zorba/build/src/compiler/parser/stack.hh"
+/* Line 1149 of lalr1.cc  */
+#line 43 "/home/jsoniq/zorba/debug/src/compiler/parser/stack.hh"
   template <class T, class S = std::deque<T> >
   class stack
   {
@@ -131,13 +126,10 @@
     unsigned int range_;
   };
 
-/* Line 1153 of lalr1.cc  */
-#line 1 "[Bison:b4_percent_define_default]"
-
 } // zorba
 
-/* Line 1153 of lalr1.cc  */
-#line 141 "/Users/dagraf/work/28msec/software/zorba/build/src/compiler/parser/stack.hh"
+/* Line 1235 of lalr1.cc  */
+#line 133 "/home/jsoniq/zorba/debug/src/compiler/parser/stack.hh"
 
 #endif // not BISON_STACK_HH[]dnl
 

=== modified file 'src/compiler/parser/xquery_parser.cpp'
--- src/compiler/parser/xquery_parser.cpp	2012-02-07 23:58:12 +0000
+++ src/compiler/parser/xquery_parser.cpp	2012-02-08 13:51:39 +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/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 293 of lalr1.cc  */
+#line 87 "/home/jsoniq/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/jbuild/src/compiler/parser/xquery_parser.cpp"
+/* Line 293 of lalr1.cc  */
+#line 77 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
 
 
 #include "xquery_parser.hpp"
 
 /* User implementation prologue.  */
 
-/* Line 317 of lalr1.cc  */
-#line 900 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 299 of lalr1.cc  */
+#line 892 "/home/jsoniq/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 1024 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 299 of lalr1.cc  */
+#line 1016 "/home/jsoniq/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/jbuild/src/compiler/parser/xquery_parser.cpp"
+/* Line 299 of lalr1.cc  */
+#line 107 "/home/jsoniq/zorba/debug/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/jbuild/src/compiler/parser/xquery_parser.cpp"
-#if YYERROR_VERBOSE
+/* Line 382 of lalr1.cc  */
+#line 193 "/home/jsoniq/zorba/debug/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)
@@ -277,2486 +290,2441 @@
         case 109: /* "\"'DECIMAL'\"" */
 
 /* Line 480 of lalr1.cc  */
-#line 898 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+#line 890 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
 	{ delete (yyvaluep->decval); };
 
 /* Line 480 of lalr1.cc  */
-#line 285 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
+#line 298 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
 	break;
       case 123: /* "\"'DOUBLE'\"" */
 
 /* Line 480 of lalr1.cc  */
-#line 897 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+#line 889 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
 	{ delete (yyvaluep->dval); };
 
 /* Line 480 of lalr1.cc  */
-#line 294 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
+#line 307 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
 	break;
       case 148: /* "\"'INTEGER'\"" */
 
 /* Line 480 of lalr1.cc  */
-#line 896 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+#line 888 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
 	{ delete (yyvaluep->ival); };
 
 /* Line 480 of lalr1.cc  */
-#line 303 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
+#line 316 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
 	break;
       case 331: /* "VersionDecl" */
 
 /* Line 480 of lalr1.cc  */
-#line 912 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+#line 904 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
 	{ release_hack( (yyvaluep->node) ); };
 
 /* Line 480 of lalr1.cc  */
-#line 312 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
+#line 325 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
 	break;
       case 332: /* "MainModule" */
 
 /* Line 480 of lalr1.cc  */
-#line 912 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+#line 904 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
 	{ release_hack( (yyvaluep->node) ); };
 
 /* Line 480 of lalr1.cc  */
-#line 321 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
+#line 334 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
 	break;
       case 333: /* "LibraryModule" */
 
 /* Line 480 of lalr1.cc  */
-#line 912 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+#line 904 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
 	{ release_hack( (yyvaluep->node) ); };
 
 /* Line 480 of lalr1.cc  */
-#line 330 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
+#line 343 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
 	break;
       case 334: /* "ModuleDecl" */
 
 /* Line 480 of lalr1.cc  */
-#line 912 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+#line 904 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
 	{ release_hack( (yyvaluep->node) ); };
 
 /* Line 480 of lalr1.cc  */
-#line 339 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
+#line 352 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
 	break;
       case 335: /* "SIND_DeclList" */
 
 /* Line 480 of lalr1.cc  */
-#line 912 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+#line 904 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
 	{ release_hack( (yyvaluep->node) ); };
 
 /* Line 480 of lalr1.cc  */
-#line 348 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
+#line 361 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
 	break;
       case 336: /* "SIND_Decl" */
 
 /* Line 480 of lalr1.cc  */
-#line 912 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+#line 904 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
 	{ release_hack( (yyvaluep->node) ); };
 
 /* Line 480 of lalr1.cc  */
-#line 357 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
+#line 370 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
 	break;
       case 337: /* "Setter" */
 
 /* Line 480 of lalr1.cc  */
-#line 912 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+#line 904 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
 	{ release_hack( (yyvaluep->node) ); };
 
 /* Line 480 of lalr1.cc  */
-#line 366 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
+#line 379 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
 	break;
       case 338: /* "BoundarySpaceDecl" */
 
 /* Line 480 of lalr1.cc  */
-#line 912 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+#line 904 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
 	{ release_hack( (yyvaluep->node) ); };
 
 /* Line 480 of lalr1.cc  */
-#line 375 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
+#line 388 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
 	break;
       case 339: /* "DefaultCollationDecl" */
 
 /* Line 480 of lalr1.cc  */
-#line 912 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+#line 904 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
 	{ release_hack( (yyvaluep->node) ); };
 
 /* Line 480 of lalr1.cc  */
-#line 384 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
+#line 397 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
 	break;
       case 340: /* "BaseURIDecl" */
 
 /* Line 480 of lalr1.cc  */
-#line 912 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+#line 904 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
 	{ release_hack( (yyvaluep->node) ); };
 
 /* Line 480 of lalr1.cc  */
-#line 393 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
+#line 406 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
 	break;
       case 341: /* "ConstructionDecl" */
 
 /* Line 480 of lalr1.cc  */
-#line 912 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+#line 904 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
 	{ release_hack( (yyvaluep->node) ); };
 
 /* Line 480 of lalr1.cc  */
-#line 402 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
+#line 415 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
 	break;
       case 342: /* "OrderingModeDecl" */
 
 /* Line 480 of lalr1.cc  */
-#line 912 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+#line 904 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
 	{ release_hack( (yyvaluep->node) ); };
 
 /* Line 480 of lalr1.cc  */
-#line 411 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
+#line 424 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
 	break;
       case 343: /* "EmptyOrderDecl" */
 
 /* Line 480 of lalr1.cc  */
-#line 912 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+#line 904 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
 	{ release_hack( (yyvaluep->node) ); };
 
 /* Line 480 of lalr1.cc  */
-#line 420 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
+#line 433 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
 	break;
       case 344: /* "CopyNamespacesDecl" */
 
 /* Line 480 of lalr1.cc  */
-#line 912 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+#line 904 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
 	{ release_hack( (yyvaluep->node) ); };
 
 /* Line 480 of lalr1.cc  */
-#line 429 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
+#line 442 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
 	break;
       case 345: /* "Import" */
 
 /* Line 480 of lalr1.cc  */
-#line 912 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+#line 904 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
 	{ release_hack( (yyvaluep->node) ); };
 
 /* Line 480 of lalr1.cc  */
-#line 438 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
+#line 451 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
 	break;
       case 346: /* "SchemaImport" */
 
 /* Line 480 of lalr1.cc  */
-#line 912 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+#line 904 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
 	{ release_hack( (yyvaluep->node) ); };
 
 /* Line 480 of lalr1.cc  */
-#line 447 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
+#line 460 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
 	break;
       case 347: /* "URILiteralList" */
 
 /* Line 480 of lalr1.cc  */
-#line 912 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+#line 904 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
 	{ release_hack( (yyvaluep->node) ); };
 
 /* Line 480 of lalr1.cc  */
-#line 456 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
+#line 469 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
 	break;
       case 348: /* "SchemaPrefix" */
 
 /* Line 480 of lalr1.cc  */
-#line 912 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+#line 904 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
 	{ release_hack( (yyvaluep->node) ); };
 
 /* Line 480 of lalr1.cc  */
-#line 465 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
+#line 478 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
 	break;
       case 349: /* "ModuleImport" */
 
 /* Line 480 of lalr1.cc  */
-#line 912 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+#line 904 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
 	{ release_hack( (yyvaluep->node) ); };
 
 /* Line 480 of lalr1.cc  */
-#line 474 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
+#line 487 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
 	break;
       case 350: /* "NamespaceDecl" */
 
 /* Line 480 of lalr1.cc  */
-#line 912 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+#line 904 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
 	{ release_hack( (yyvaluep->node) ); };
 
 /* Line 480 of lalr1.cc  */
-#line 483 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
+#line 496 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
 	break;
       case 351: /* "DefaultNamespaceDecl" */
 
 /* Line 480 of lalr1.cc  */
-#line 912 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+#line 904 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
 	{ release_hack( (yyvaluep->node) ); };
 
 /* Line 480 of lalr1.cc  */
-#line 492 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
+#line 505 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
 	break;
       case 352: /* "VFO_DeclList" */
 
 /* Line 480 of lalr1.cc  */
-#line 912 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+#line 904 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
 	{ release_hack( (yyvaluep->node) ); };
 
 /* Line 480 of lalr1.cc  */
-#line 501 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
+#line 514 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
 	break;
       case 353: /* "VFO_Decl" */
 
 /* Line 480 of lalr1.cc  */
-#line 912 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+#line 904 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
 	{ release_hack( (yyvaluep->node) ); };
 
 /* Line 480 of lalr1.cc  */
-#line 510 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
+#line 523 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
 	break;
       case 354: /* "DecimalFormatDecl" */
 
 /* Line 480 of lalr1.cc  */
-#line 912 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+#line 904 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
 	{ release_hack( (yyvaluep->node) ); };
 
 /* Line 480 of lalr1.cc  */
-#line 519 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
+#line 532 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
 	break;
       case 355: /* "DecimalFormatParamList" */
 
 /* Line 480 of lalr1.cc  */
-#line 924 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+#line 916 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
 	{ delete (yyvaluep->vstrpair); };
 
 /* Line 480 of lalr1.cc  */
-#line 528 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
+#line 541 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
 	break;
       case 356: /* "DecimalFormatParam" */
 
 /* Line 480 of lalr1.cc  */
-#line 924 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+#line 916 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
 	{ delete (yyvaluep->strpair); };
 
 /* Line 480 of lalr1.cc  */
-#line 537 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
+#line 550 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
 	break;
       case 358: /* "OptionDecl" */
 
 /* Line 480 of lalr1.cc  */
-#line 912 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+#line 904 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
 	{ release_hack( (yyvaluep->node) ); };
 
 /* Line 480 of lalr1.cc  */
-#line 546 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
+#line 559 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
 	break;
       case 359: /* "FTOptionDecl" */
 
 /* Line 480 of lalr1.cc  */
-#line 915 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+#line 907 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
 	{ release_hack( (yyvaluep->node) ); };
 
 /* Line 480 of lalr1.cc  */
-#line 555 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
+#line 568 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
 	break;
       case 360: /* "CtxItemDecl" */
 
 /* Line 480 of lalr1.cc  */
-#line 912 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+#line 904 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
 	{ release_hack( (yyvaluep->node) ); };
 
 /* Line 480 of lalr1.cc  */
-#line 564 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
+#line 577 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
 	break;
       case 361: /* "CtxItemDecl2" */
 
 /* Line 480 of lalr1.cc  */
-#line 912 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+#line 904 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
 	{ release_hack( (yyvaluep->node) ); };
 
 /* Line 480 of lalr1.cc  */
-#line 573 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
+#line 586 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
 	break;
       case 362: /* "CtxItemDecl3" */
 
 /* Line 480 of lalr1.cc  */
-#line 912 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+#line 904 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
 	{ release_hack( (yyvaluep->node) ); };
 
 /* Line 480 of lalr1.cc  */
-#line 582 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
+#line 595 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
 	break;
       case 363: /* "CtxItemDecl4" */
 
 /* Line 480 of lalr1.cc  */
-#line 912 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+#line 904 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
 	{ release_hack( (yyvaluep->node) ); };
 
 /* Line 480 of lalr1.cc  */
-#line 591 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
+#line 604 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
 	break;
       case 364: /* "VarDecl" */
 
 /* Line 480 of lalr1.cc  */
-#line 912 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+#line 904 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
 	{ release_hack( (yyvaluep->node) ); };
 
 /* Line 480 of lalr1.cc  */
-#line 600 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
+#line 613 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
 	break;
       case 365: /* "VarNameAndType" */
 
 /* Line 480 of lalr1.cc  */
-#line 924 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+#line 916 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
 	{ delete (yyvaluep->varnametype); };
 
 /* Line 480 of lalr1.cc  */
-#line 609 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
+#line 622 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
 	break;
       case 366: /* "AnnotationList" */
 
 /* Line 480 of lalr1.cc  */
-#line 912 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+#line 904 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
 	{ release_hack( (yyvaluep->node) ); };
 
 /* Line 480 of lalr1.cc  */
-#line 618 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
+#line 631 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
 	break;
       case 367: /* "Annotation" */
 
 /* Line 480 of lalr1.cc  */
-#line 912 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+#line 904 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
 	{ release_hack( (yyvaluep->node) ); };
 
 /* Line 480 of lalr1.cc  */
-#line 627 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
+#line 640 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
 	break;
       case 368: /* "AnnotationLiteralList" */
 
 /* Line 480 of lalr1.cc  */
-#line 912 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+#line 904 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
 	{ release_hack( (yyvaluep->node) ); };
 
 /* Line 480 of lalr1.cc  */
-#line 636 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
+#line 649 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
 	break;
       case 369: /* "FunctionDecl" */
 
 /* Line 480 of lalr1.cc  */
-#line 912 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+#line 904 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
 	{ release_hack( (yyvaluep->node) ); };
 
 /* Line 480 of lalr1.cc  */
-#line 645 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
+#line 658 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
 	break;
       case 370: /* "FunctionDecl2" */
 
 /* Line 480 of lalr1.cc  */
-#line 912 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+#line 904 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
 	{ release_hack( (yyvaluep->node) ); };
 
 /* Line 480 of lalr1.cc  */
-#line 654 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
+#line 667 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
 	break;
       case 371: /* "FunctionDeclSimple" */
 
 /* Line 480 of lalr1.cc  */
-#line 912 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+#line 904 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
 	{ release_hack( (yyvaluep->node) ); };
 
 /* Line 480 of lalr1.cc  */
-#line 663 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
+#line 676 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
 	break;
       case 372: /* "FunctionDeclUpdating" */
 
 /* Line 480 of lalr1.cc  */
-#line 912 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+#line 904 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
 	{ release_hack( (yyvaluep->node) ); };
 
 /* Line 480 of lalr1.cc  */
-#line 672 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
+#line 685 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
 	break;
       case 373: /* "FunctionSig" */
 
 /* Line 480 of lalr1.cc  */
-#line 924 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+#line 916 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
 	{ delete (yyvaluep->fnsig); };
 
 /* Line 480 of lalr1.cc  */
-#line 681 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
+#line 694 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
 	break;
       case 374: /* "ParamList" */
 
 /* Line 480 of lalr1.cc  */
-#line 912 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+#line 904 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
 	{ release_hack( (yyvaluep->node) ); };
 
 /* Line 480 of lalr1.cc  */
-#line 690 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
+#line 703 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
 	break;
       case 375: /* "Param" */
 
 /* Line 480 of lalr1.cc  */
-#line 912 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+#line 904 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
 	{ release_hack( (yyvaluep->node) ); };
 
 /* Line 480 of lalr1.cc  */
-#line 699 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
+#line 712 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
 	break;
       case 376: /* "CollectionDecl" */
 
 /* Line 480 of lalr1.cc  */
-#line 912 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+#line 904 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
 	{ release_hack( (yyvaluep->node) ); };
 
 /* Line 480 of lalr1.cc  */
-#line 708 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
+#line 721 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
 	break;
       case 378: /* "IndexDecl" */
 
 /* Line 480 of lalr1.cc  */
-#line 912 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+#line 904 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
 	{ release_hack( (yyvaluep->node) ); };
 
 /* Line 480 of lalr1.cc  */
-#line 717 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
+#line 730 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
 	break;
       case 379: /* "IndexKeyList" */
 
 /* Line 480 of lalr1.cc  */
-#line 912 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+#line 904 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
 	{ release_hack( (yyvaluep->node) ); };
 
 /* Line 480 of lalr1.cc  */
-#line 726 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
+#line 739 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
 	break;
       case 380: /* "IndexKeySpec" */
 
 /* Line 480 of lalr1.cc  */
-#line 912 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+#line 904 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
 	{ release_hack( (yyvaluep->node) ); };
 
 /* Line 480 of lalr1.cc  */
-#line 735 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
+#line 748 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
 	break;
       case 381: /* "IntegrityConstraintDecl" */
 
 /* Line 480 of lalr1.cc  */
-#line 912 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+#line 904 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
 	{ release_hack( (yyvaluep->node) ); };
 
 /* Line 480 of lalr1.cc  */
-#line 744 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
+#line 757 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
 	break;
       case 382: /* "QueryBody" */
 
 /* Line 480 of lalr1.cc  */
-#line 921 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+#line 913 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
 	{ release_hack( (yyvaluep->expr) ); };
 
 /* Line 480 of lalr1.cc  */
-#line 753 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
+#line 766 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
 	break;
       case 383: /* "StatementsAndOptionalExprTop" */
 
 /* Line 480 of lalr1.cc  */
-#line 921 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+#line 913 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
 	{ release_hack( (yyvaluep->expr) ); };
 
 /* Line 480 of lalr1.cc  */
-#line 762 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
+#line 775 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
 	break;
       case 384: /* "StatementsAndOptionalExpr" */
 
 /* Line 480 of lalr1.cc  */
-#line 921 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+#line 913 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
 	{ release_hack( (yyvaluep->expr) ); };
 
 /* Line 480 of lalr1.cc  */
-#line 771 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
+#line 784 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
 	break;
       case 385: /* "StatementsAndExpr" */
 
 /* Line 480 of lalr1.cc  */
-#line 921 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+#line 913 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
 	{ release_hack( (yyvaluep->expr) ); };
 
 /* Line 480 of lalr1.cc  */
-#line 780 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
+#line 793 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
 	break;
       case 386: /* "Statements" */
 
 /* Line 480 of lalr1.cc  */
-#line 921 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+#line 913 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
 	{ release_hack( (yyvaluep->expr) ); };
 
 /* Line 480 of lalr1.cc  */
-#line 789 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
+#line 802 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
 	break;
       case 387: /* "Statement" */
 
 /* Line 480 of lalr1.cc  */
-#line 921 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+#line 913 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
 	{ release_hack( (yyvaluep->expr) ); };
 
 /* Line 480 of lalr1.cc  */
-#line 798 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
+#line 811 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
 	break;
       case 388: /* "BlockStatement" */
 
 /* Line 480 of lalr1.cc  */
-#line 921 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+#line 913 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
 	{ release_hack( (yyvaluep->expr) ); };
 
 /* Line 480 of lalr1.cc  */
-#line 807 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
+#line 820 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
 	break;
       case 389: /* "BlockExpr" */
 
 /* Line 480 of lalr1.cc  */
-#line 921 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+#line 913 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
 	{ release_hack( (yyvaluep->expr) ); };
 
 /* Line 480 of lalr1.cc  */
-#line 816 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
+#line 829 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
 	break;
       case 390: /* "EnclosedStatementsAndOptionalExpr" */
 
 /* Line 480 of lalr1.cc  */
-#line 921 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+#line 913 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
 	{ release_hack( (yyvaluep->expr) ); };
 
 /* Line 480 of lalr1.cc  */
-#line 825 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
+#line 838 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
 	break;
       case 391: /* "VarDeclStatement" */
 
 /* Line 480 of lalr1.cc  */
-#line 921 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+#line 913 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
 	{ release_hack( (yyvaluep->expr) ); };
 
 /* Line 480 of lalr1.cc  */
-#line 834 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
+#line 847 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
 	break;
       case 394: /* "AssignStatement" */
 
 /* Line 480 of lalr1.cc  */
-#line 921 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+#line 913 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
 	{ release_hack( (yyvaluep->expr) ); };
 
 /* Line 480 of lalr1.cc  */
-#line 843 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
+#line 856 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
 	break;
       case 395: /* "ApplyStatement" */
 
 /* Line 480 of lalr1.cc  */
-#line 921 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+#line 913 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
 	{ release_hack( (yyvaluep->expr) ); };
 
 /* Line 480 of lalr1.cc  */
-#line 852 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
+#line 865 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
 	break;
       case 396: /* "ExitStatement" */
 
 /* Line 480 of lalr1.cc  */
-#line 921 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+#line 913 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
 	{ release_hack( (yyvaluep->expr) ); };
 
 /* Line 480 of lalr1.cc  */
-#line 861 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
+#line 874 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
 	break;
       case 397: /* "WhileStatement" */
 
 /* Line 480 of lalr1.cc  */
-#line 921 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+#line 913 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
 	{ release_hack( (yyvaluep->expr) ); };
 
 /* Line 480 of lalr1.cc  */
-#line 870 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
+#line 883 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
 	break;
       case 398: /* "FlowCtlStatement" */
 
 /* Line 480 of lalr1.cc  */
-#line 921 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+#line 913 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
 	{ release_hack( (yyvaluep->expr) ); };
 
 /* Line 480 of lalr1.cc  */
-#line 879 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
+#line 892 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
 	break;
       case 399: /* "FLWORStatement" */
 
 /* Line 480 of lalr1.cc  */
-#line 921 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+#line 913 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
 	{ release_hack( (yyvaluep->expr) ); };
 
 /* Line 480 of lalr1.cc  */
-#line 888 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
+#line 901 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
 	break;
       case 400: /* "ReturnStatement" */
 
 /* Line 480 of lalr1.cc  */
-#line 921 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+#line 913 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
 	{ release_hack( (yyvaluep->expr) ); };
 
 /* Line 480 of lalr1.cc  */
-#line 897 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
+#line 910 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
 	break;
       case 401: /* "IfStatement" */
 
 /* Line 480 of lalr1.cc  */
-#line 921 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+#line 913 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
 	{ release_hack( (yyvaluep->expr) ); };
 
 /* Line 480 of lalr1.cc  */
-#line 906 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
+#line 919 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
 	break;
       case 402: /* "TryStatement" */
 
 /* Line 480 of lalr1.cc  */
-#line 921 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+#line 913 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
 	{ release_hack( (yyvaluep->expr) ); };
 
 /* Line 480 of lalr1.cc  */
-#line 915 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
+#line 928 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
 	break;
       case 403: /* "CatchListStatement" */
 
 /* Line 480 of lalr1.cc  */
-#line 921 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+#line 913 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
 	{ release_hack( (yyvaluep->expr) ); };
 
 /* Line 480 of lalr1.cc  */
-#line 924 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
+#line 937 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
 	break;
       case 404: /* "CatchStatement" */
 
 /* Line 480 of lalr1.cc  */
-#line 921 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+#line 913 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
 	{ release_hack( (yyvaluep->expr) ); };
 
 /* Line 480 of lalr1.cc  */
-#line 933 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
+#line 946 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
 	break;
       case 405: /* "Expr" */
 
 /* Line 480 of lalr1.cc  */
-#line 921 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+#line 913 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
 	{ release_hack( (yyvaluep->expr) ); };
 
 /* Line 480 of lalr1.cc  */
-#line 942 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
+#line 955 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
 	break;
       case 406: /* "ExprSingle" */
 
 /* Line 480 of lalr1.cc  */
-#line 921 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+#line 913 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
 	{ release_hack( (yyvaluep->expr) ); };
 
 /* Line 480 of lalr1.cc  */
-#line 951 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
+#line 964 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
 	break;
       case 407: /* "ExprSimple" */
 
 /* Line 480 of lalr1.cc  */
-#line 921 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+#line 913 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
 	{ release_hack( (yyvaluep->expr) ); };
 
 /* Line 480 of lalr1.cc  */
-#line 960 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
+#line 973 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
 	break;
       case 408: /* "FLWORExpr" */
 
 /* Line 480 of lalr1.cc  */
-#line 921 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+#line 913 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
 	{ release_hack( (yyvaluep->expr) ); };
 
 /* Line 480 of lalr1.cc  */
-#line 969 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
+#line 982 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
 	break;
       case 409: /* "ReturnExpr" */
 
 /* Line 480 of lalr1.cc  */
-#line 921 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+#line 913 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
 	{ release_hack( (yyvaluep->expr) ); };
 
 /* Line 480 of lalr1.cc  */
-#line 978 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
+#line 991 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
 	break;
       case 412: /* "FLWORWinCond" */
 
 /* Line 480 of lalr1.cc  */
-#line 912 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+#line 904 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
 	{ release_hack( (yyvaluep->node) ); };
 
 /* Line 480 of lalr1.cc  */
-#line 987 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
+#line 1000 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
 	break;
       case 413: /* "WindowClause" */
 
 /* Line 480 of lalr1.cc  */
-#line 912 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+#line 904 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
 	{ release_hack( (yyvaluep->node) ); };
 
 /* Line 480 of lalr1.cc  */
-#line 996 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
+#line 1009 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
 	break;
       case 414: /* "CountClause" */
 
 /* Line 480 of lalr1.cc  */
-#line 912 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+#line 904 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
 	{ release_hack( (yyvaluep->node) ); };
 
 /* Line 480 of lalr1.cc  */
-#line 1005 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
+#line 1018 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
 	break;
       case 415: /* "ForLetWinClause" */
 
 /* Line 480 of lalr1.cc  */
-#line 912 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+#line 904 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
 	{ release_hack( (yyvaluep->node) ); };
 
 /* Line 480 of lalr1.cc  */
-#line 1014 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
+#line 1027 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
 	break;
       case 417: /* "FLWORClauseList" */
 
 /* Line 480 of lalr1.cc  */
-#line 912 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+#line 904 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
 	{ release_hack( (yyvaluep->node) ); };
 
 /* Line 480 of lalr1.cc  */
-#line 1023 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
+#line 1036 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
 	break;
       case 418: /* "ForClause" */
 
 /* Line 480 of lalr1.cc  */
-#line 912 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+#line 904 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
 	{ release_hack( (yyvaluep->node) ); };
 
 /* Line 480 of lalr1.cc  */
-#line 1032 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
+#line 1045 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
 	break;
       case 419: /* "VarInDeclList" */
 
 /* Line 480 of lalr1.cc  */
-#line 912 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+#line 904 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
 	{ release_hack( (yyvaluep->node) ); };
 
 /* Line 480 of lalr1.cc  */
-#line 1041 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
+#line 1054 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
 	break;
       case 420: /* "VarInDecl" */
 
 /* Line 480 of lalr1.cc  */
-#line 912 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+#line 904 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
 	{ release_hack( (yyvaluep->node) ); };
 
 /* Line 480 of lalr1.cc  */
-#line 1050 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
+#line 1063 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
 	break;
       case 421: /* "PositionalVar" */
 
 /* Line 480 of lalr1.cc  */
-#line 912 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+#line 904 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
 	{ release_hack( (yyvaluep->node) ); };
 
 /* Line 480 of lalr1.cc  */
-#line 1059 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
+#line 1072 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
 	break;
       case 422: /* "FTScoreVar" */
 
 /* Line 480 of lalr1.cc  */
-#line 915 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+#line 907 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
 	{ release_hack( (yyvaluep->node) ); };
 
 /* Line 480 of lalr1.cc  */
-#line 1068 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
+#line 1081 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
 	break;
       case 423: /* "LetClause" */
 
 /* Line 480 of lalr1.cc  */
-#line 912 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+#line 904 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
 	{ release_hack( (yyvaluep->node) ); };
 
 /* Line 480 of lalr1.cc  */
-#line 1077 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
+#line 1090 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
 	break;
       case 424: /* "VarGetsDeclList" */
 
 /* Line 480 of lalr1.cc  */
-#line 912 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+#line 904 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
 	{ release_hack( (yyvaluep->node) ); };
 
 /* Line 480 of lalr1.cc  */
-#line 1086 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
+#line 1099 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
 	break;
       case 425: /* "VarGetsDecl" */
 
 /* Line 480 of lalr1.cc  */
-#line 912 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+#line 904 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
 	{ release_hack( (yyvaluep->node) ); };
 
 /* Line 480 of lalr1.cc  */
-#line 1095 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
+#line 1108 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
 	break;
       case 426: /* "WindowVarDecl" */
 
 /* Line 480 of lalr1.cc  */
-#line 912 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+#line 904 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
 	{ release_hack( (yyvaluep->node) ); };
 
 /* Line 480 of lalr1.cc  */
-#line 1104 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
+#line 1117 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
 	break;
       case 427: /* "WindowVars" */
 
 /* Line 480 of lalr1.cc  */
-#line 912 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+#line 904 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
 	{ release_hack( (yyvaluep->node) ); };
 
 /* Line 480 of lalr1.cc  */
-#line 1113 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
+#line 1126 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
 	break;
       case 428: /* "WindowVars3" */
 
 /* Line 480 of lalr1.cc  */
-#line 912 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+#line 904 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
 	{ release_hack( (yyvaluep->node) ); };
 
 /* Line 480 of lalr1.cc  */
-#line 1122 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
+#line 1135 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
 	break;
       case 429: /* "WindowVars2" */
 
 /* Line 480 of lalr1.cc  */
-#line 912 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+#line 904 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
 	{ release_hack( (yyvaluep->node) ); };
 
 /* Line 480 of lalr1.cc  */
-#line 1131 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
+#line 1144 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
 	break;
       case 430: /* "WhereClause" */
 
 /* Line 480 of lalr1.cc  */
-#line 912 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+#line 904 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
 	{ release_hack( (yyvaluep->node) ); };
 
 /* Line 480 of lalr1.cc  */
-#line 1140 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
+#line 1153 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
 	break;
       case 431: /* "GroupByClause" */
 
 /* Line 480 of lalr1.cc  */
-#line 912 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+#line 904 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
 	{ release_hack( (yyvaluep->node) ); };
 
 /* Line 480 of lalr1.cc  */
-#line 1149 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
+#line 1162 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
 	break;
       case 432: /* "GroupSpecList" */
 
 /* Line 480 of lalr1.cc  */
-#line 912 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+#line 904 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
 	{ release_hack( (yyvaluep->node) ); };
 
 /* Line 480 of lalr1.cc  */
-#line 1158 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
+#line 1171 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
 	break;
       case 433: /* "GroupSpec" */
 
 /* Line 480 of lalr1.cc  */
-#line 912 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+#line 904 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
 	{ release_hack( (yyvaluep->node) ); };
 
 /* Line 480 of lalr1.cc  */
-#line 1167 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
+#line 1180 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
 	break;
       case 434: /* "GroupCollationSpec" */
 
 /* Line 480 of lalr1.cc  */
-#line 912 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+#line 904 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
 	{ release_hack( (yyvaluep->node) ); };
 
 /* Line 480 of lalr1.cc  */
-#line 1176 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
+#line 1189 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
 	break;
       case 435: /* "OrderByClause" */
 
 /* Line 480 of lalr1.cc  */
-#line 912 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+#line 904 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
 	{ release_hack( (yyvaluep->node) ); };
 
 /* Line 480 of lalr1.cc  */
-#line 1185 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
+#line 1198 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
 	break;
       case 436: /* "OrderSpecList" */
 
 /* Line 480 of lalr1.cc  */
-#line 912 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+#line 904 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
 	{ release_hack( (yyvaluep->node) ); };
 
 /* Line 480 of lalr1.cc  */
-#line 1194 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
+#line 1207 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
 	break;
       case 437: /* "OrderSpec" */
 
 /* Line 480 of lalr1.cc  */
-#line 912 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+#line 904 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
 	{ release_hack( (yyvaluep->node) ); };
 
 /* Line 480 of lalr1.cc  */
-#line 1203 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
+#line 1216 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
 	break;
       case 438: /* "OrderModifier" */
 
 /* Line 480 of lalr1.cc  */
-#line 912 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+#line 904 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
 	{ release_hack( (yyvaluep->node) ); };
 
 /* Line 480 of lalr1.cc  */
-#line 1212 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
+#line 1225 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
 	break;
       case 439: /* "OrderDirSpec" */
 
 /* Line 480 of lalr1.cc  */
-#line 912 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+#line 904 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
 	{ release_hack( (yyvaluep->node) ); };
 
 /* Line 480 of lalr1.cc  */
-#line 1221 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
+#line 1234 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
 	break;
       case 440: /* "OrderEmptySpec" */
 
 /* Line 480 of lalr1.cc  */
-#line 912 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+#line 904 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
 	{ release_hack( (yyvaluep->node) ); };
 
 /* Line 480 of lalr1.cc  */
-#line 1230 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
+#line 1243 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
 	break;
       case 441: /* "OrderCollationSpec" */
 
 /* Line 480 of lalr1.cc  */
-#line 912 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+#line 904 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
 	{ release_hack( (yyvaluep->node) ); };
 
 /* Line 480 of lalr1.cc  */
-#line 1239 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
+#line 1252 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
 	break;
       case 442: /* "QuantifiedExpr" */
 
 /* Line 480 of lalr1.cc  */
-#line 921 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+#line 913 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
 	{ release_hack( (yyvaluep->expr) ); };
 
 /* Line 480 of lalr1.cc  */
-#line 1248 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
+#line 1261 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
 	break;
       case 443: /* "QVarInDeclList" */
 
 /* Line 480 of lalr1.cc  */
-#line 912 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+#line 904 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
 	{ release_hack( (yyvaluep->node) ); };
 
 /* Line 480 of lalr1.cc  */
-#line 1257 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
+#line 1270 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
 	break;
       case 444: /* "QVarInDecl" */
 
 /* Line 480 of lalr1.cc  */
-#line 912 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+#line 904 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
 	{ release_hack( (yyvaluep->node) ); };
 
 /* Line 480 of lalr1.cc  */
-#line 1266 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
+#line 1279 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
 	break;
       case 445: /* "SwitchExpr" */
 
 /* Line 480 of lalr1.cc  */
-#line 921 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+#line 913 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
 	{ release_hack( (yyvaluep->expr) ); };
 
 /* Line 480 of lalr1.cc  */
-#line 1275 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
+#line 1288 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
 	break;
       case 446: /* "SwitchCaseClauseList" */
 
 /* Line 480 of lalr1.cc  */
-#line 912 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+#line 904 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
 	{ release_hack( (yyvaluep->node) ); };
 
 /* Line 480 of lalr1.cc  */
-#line 1284 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
+#line 1297 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
 	break;
       case 447: /* "SwitchCaseClause" */
 
 /* Line 480 of lalr1.cc  */
-#line 912 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+#line 904 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
 	{ release_hack( (yyvaluep->node) ); };
 
 /* Line 480 of lalr1.cc  */
-#line 1293 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
+#line 1306 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
 	break;
       case 448: /* "SwitchCaseOperandList" */
 
 /* Line 480 of lalr1.cc  */
-#line 912 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+#line 904 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
 	{ release_hack( (yyvaluep->node) ); };
 
 /* Line 480 of lalr1.cc  */
-#line 1302 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
+#line 1315 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
 	break;
       case 449: /* "SwitchStatement" */
 
 /* Line 480 of lalr1.cc  */
-#line 921 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+#line 913 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
 	{ release_hack( (yyvaluep->expr) ); };
 
 /* Line 480 of lalr1.cc  */
-#line 1311 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
+#line 1324 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
 	break;
       case 452: /* "TypeswitchExpr" */
 
 /* Line 480 of lalr1.cc  */
-#line 921 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+#line 913 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
 	{ release_hack( (yyvaluep->expr) ); };
 
 /* Line 480 of lalr1.cc  */
-#line 1320 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
+#line 1333 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
 	break;
       case 453: /* "TypeswitchStatement" */
 
 /* Line 480 of lalr1.cc  */
-#line 921 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+#line 913 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
 	{ release_hack( (yyvaluep->expr) ); };
 
 /* Line 480 of lalr1.cc  */
-#line 1329 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
+#line 1342 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
 	break;
       case 454: /* "CaseClauseList" */
 
 /* Line 480 of lalr1.cc  */
-#line 912 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+#line 904 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
 	{ release_hack( (yyvaluep->node) ); };
 
 /* Line 480 of lalr1.cc  */
-#line 1338 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
+#line 1351 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
 	break;
       case 455: /* "CaseClause" */
 
 /* Line 480 of lalr1.cc  */
-#line 912 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+#line 904 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
 	{ release_hack( (yyvaluep->node) ); };
 
 /* Line 480 of lalr1.cc  */
-#line 1347 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
+#line 1360 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
 	break;
       case 458: /* "IfExpr" */
 
 /* Line 480 of lalr1.cc  */
-#line 921 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+#line 913 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
 	{ release_hack( (yyvaluep->expr) ); };
 
 /* Line 480 of lalr1.cc  */
-#line 1356 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
+#line 1369 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
 	break;
       case 459: /* "OrExpr" */
 
 /* Line 480 of lalr1.cc  */
-#line 921 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+#line 913 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
 	{ release_hack( (yyvaluep->expr) ); };
 
 /* Line 480 of lalr1.cc  */
-#line 1365 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
+#line 1378 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
 	break;
       case 460: /* "AndExpr" */
 
 /* Line 480 of lalr1.cc  */
-#line 921 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+#line 913 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
 	{ release_hack( (yyvaluep->expr) ); };
 
 /* Line 480 of lalr1.cc  */
-#line 1374 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
+#line 1387 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
 	break;
       case 461: /* "ComparisonExpr" */
 
 /* Line 480 of lalr1.cc  */
-#line 921 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+#line 913 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
 	{ release_hack( (yyvaluep->expr) ); };
 
 /* Line 480 of lalr1.cc  */
-#line 1383 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
+#line 1396 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
 	break;
       case 463: /* "FTContainsExpr" */
 
 /* Line 480 of lalr1.cc  */
-#line 921 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+#line 913 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
 	{ release_hack( (yyvaluep->expr) ); };
 
 /* Line 480 of lalr1.cc  */
-#line 1392 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
+#line 1405 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
 	break;
       case 464: /* "opt_FTIgnoreOption" */
 
 /* Line 480 of lalr1.cc  */
-#line 915 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+#line 907 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
 	{ release_hack( (yyvaluep->node) ); };
 
 /* Line 480 of lalr1.cc  */
-#line 1401 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
+#line 1414 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
 	break;
       case 465: /* "RangeExpr" */
 
 /* Line 480 of lalr1.cc  */
-#line 921 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1410 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 466: /* "AdditiveExpr" */
-
-/* Line 480 of lalr1.cc  */
-#line 921 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1419 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 467: /* "MultiplicativeExpr" */
-
-/* Line 480 of lalr1.cc  */
-#line 921 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1428 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 468: /* "UnionExpr" */
-
-/* Line 480 of lalr1.cc  */
-#line 921 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1437 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 469: /* "IntersectExceptExpr" */
-
-/* Line 480 of lalr1.cc  */
-#line 921 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1446 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 470: /* "InstanceofExpr" */
-
-/* Line 480 of lalr1.cc  */
-#line 921 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1455 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 471: /* "TreatExpr" */
-
-/* Line 480 of lalr1.cc  */
-#line 921 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1464 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 472: /* "CastableExpr" */
-
-/* Line 480 of lalr1.cc  */
-#line 921 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1473 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 473: /* "CastExpr" */
-
-/* Line 480 of lalr1.cc  */
-#line 921 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1482 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 474: /* "UnaryExpr" */
-
-/* Line 480 of lalr1.cc  */
-#line 921 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1491 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 475: /* "SignList" */
-
-/* Line 480 of lalr1.cc  */
-#line 912 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1500 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 476: /* "ValueExpr" */
-
-/* Line 480 of lalr1.cc  */
-#line 921 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1509 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 477: /* "ValueComp" */
-
-/* Line 480 of lalr1.cc  */
-#line 912 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1518 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 478: /* "NodeComp" */
-
-/* Line 480 of lalr1.cc  */
-#line 912 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1527 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 479: /* "ValidateExpr" */
-
-/* Line 480 of lalr1.cc  */
-#line 921 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1536 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 480: /* "ExtensionExpr" */
-
-/* Line 480 of lalr1.cc  */
-#line 921 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1545 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 481: /* "Pragma_list" */
-
-/* Line 480 of lalr1.cc  */
-#line 912 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1554 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 482: /* "Pragma" */
-
-/* Line 480 of lalr1.cc  */
-#line 912 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1563 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 483: /* "PathExpr" */
-
-/* Line 480 of lalr1.cc  */
-#line 921 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1572 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 485: /* "RelativePathExpr" */
-
-/* Line 480 of lalr1.cc  */
-#line 921 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1581 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 486: /* "StepExpr" */
-
-/* Line 480 of lalr1.cc  */
-#line 921 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1590 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 487: /* "AxisStep" */
-
-/* Line 480 of lalr1.cc  */
-#line 921 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1599 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 488: /* "ForwardStep" */
-
-/* Line 480 of lalr1.cc  */
-#line 912 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1608 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 489: /* "ForwardAxis" */
-
-/* Line 480 of lalr1.cc  */
-#line 912 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1617 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 490: /* "AbbrevForwardStep" */
-
-/* Line 480 of lalr1.cc  */
-#line 912 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1626 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 491: /* "ReverseStep" */
-
-/* Line 480 of lalr1.cc  */
-#line 912 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1635 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 492: /* "ReverseAxis" */
-
-/* Line 480 of lalr1.cc  */
-#line 912 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1644 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 493: /* "NodeTest" */
-
-/* Line 480 of lalr1.cc  */
-#line 912 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1653 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 494: /* "NameTest" */
-
-/* Line 480 of lalr1.cc  */
-#line 912 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1662 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 495: /* "Wildcard" */
-
-/* Line 480 of lalr1.cc  */
-#line 912 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1671 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 496: /* "FilterExpr" */
-
-/* Line 480 of lalr1.cc  */
-#line 921 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1680 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 497: /* "PredicateList" */
-
-/* Line 480 of lalr1.cc  */
-#line 912 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1689 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 498: /* "Predicate" */
-
-/* Line 480 of lalr1.cc  */
-#line 921 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1698 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 499: /* "PrimaryExpr" */
-
-/* Line 480 of lalr1.cc  */
-#line 921 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1707 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 500: /* "Literal" */
-
-/* Line 480 of lalr1.cc  */
-#line 921 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1716 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 501: /* "NumericLiteral" */
-
-/* Line 480 of lalr1.cc  */
-#line 921 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1725 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 502: /* "VarRef" */
-
-/* Line 480 of lalr1.cc  */
-#line 921 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1734 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 503: /* "ParenthesizedExpr" */
-
-/* Line 480 of lalr1.cc  */
-#line 921 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1743 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 504: /* "ContextItemExpr" */
-
-/* Line 480 of lalr1.cc  */
-#line 921 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1752 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 505: /* "OrderedExpr" */
-
-/* Line 480 of lalr1.cc  */
-#line 921 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1761 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 506: /* "UnorderedExpr" */
-
-/* Line 480 of lalr1.cc  */
-#line 921 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1770 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 507: /* "FunctionCall" */
-
-/* Line 480 of lalr1.cc  */
-#line 921 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1779 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 508: /* "ArgList" */
-
-/* Line 480 of lalr1.cc  */
-#line 912 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1788 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 509: /* "Constructor" */
-
-/* Line 480 of lalr1.cc  */
-#line 921 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1797 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 510: /* "DirectConstructor" */
-
-/* Line 480 of lalr1.cc  */
-#line 921 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1806 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 511: /* "DirElemConstructor" */
-
-/* Line 480 of lalr1.cc  */
-#line 921 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1815 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 512: /* "DirElemContentList" */
-
-/* Line 480 of lalr1.cc  */
-#line 912 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1824 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 513: /* "DirAttributeList" */
-
-/* Line 480 of lalr1.cc  */
-#line 912 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1833 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 514: /* "DirAttr" */
-
-/* Line 480 of lalr1.cc  */
-#line 912 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1842 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 516: /* "DirAttributeValue" */
-
-/* Line 480 of lalr1.cc  */
-#line 912 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1851 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 517: /* "opt_QuoteAttrContentList" */
-
-/* Line 480 of lalr1.cc  */
-#line 912 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1860 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 518: /* "QuoteAttrContentList" */
-
-/* Line 480 of lalr1.cc  */
-#line 912 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1869 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 519: /* "opt_AposAttrContentList" */
-
-/* Line 480 of lalr1.cc  */
-#line 912 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1878 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 520: /* "AposAttrContentList" */
-
-/* Line 480 of lalr1.cc  */
-#line 912 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1887 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 521: /* "QuoteAttrValueContent" */
-
-/* Line 480 of lalr1.cc  */
-#line 912 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1896 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 522: /* "AposAttrValueContent" */
-
-/* Line 480 of lalr1.cc  */
-#line 912 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1905 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 523: /* "DirElemContent" */
-
-/* Line 480 of lalr1.cc  */
-#line 921 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1914 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 524: /* "CommonContent" */
-
-/* Line 480 of lalr1.cc  */
-#line 921 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1923 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 525: /* "DirCommentConstructor" */
-
-/* Line 480 of lalr1.cc  */
-#line 921 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1932 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 526: /* "DirPIConstructor" */
-
-/* Line 480 of lalr1.cc  */
-#line 921 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1941 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 527: /* "CDataSection" */
-
-/* Line 480 of lalr1.cc  */
-#line 921 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1950 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 528: /* "ComputedConstructor" */
-
-/* Line 480 of lalr1.cc  */
-#line 921 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1959 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 529: /* "CompDocConstructor" */
-
-/* Line 480 of lalr1.cc  */
-#line 921 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1968 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 530: /* "CompElemConstructor" */
-
-/* Line 480 of lalr1.cc  */
-#line 921 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1977 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 531: /* "CompAttrConstructor" */
-
-/* Line 480 of lalr1.cc  */
-#line 921 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1986 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 532: /* "CompTextConstructor" */
-
-/* Line 480 of lalr1.cc  */
-#line 921 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1995 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 533: /* "CompCommentConstructor" */
-
-/* Line 480 of lalr1.cc  */
-#line 921 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2004 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 534: /* "CompPIConstructor" */
-
-/* Line 480 of lalr1.cc  */
-#line 921 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2013 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 535: /* "SingleType" */
-
-/* Line 480 of lalr1.cc  */
-#line 912 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2022 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 536: /* "TypeDeclaration" */
-
-/* Line 480 of lalr1.cc  */
-#line 912 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2031 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 537: /* "SequenceType" */
-
-/* Line 480 of lalr1.cc  */
-#line 912 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2040 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 538: /* "OccurrenceIndicator" */
-
-/* Line 480 of lalr1.cc  */
-#line 912 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2049 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 539: /* "ItemType" */
-
-/* Line 480 of lalr1.cc  */
-#line 912 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2058 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 540: /* "TypeList" */
-
-/* Line 480 of lalr1.cc  */
-#line 912 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2067 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 541: /* "AtomicType" */
-
-/* Line 480 of lalr1.cc  */
-#line 912 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2076 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 542: /* "KindTest" */
-
-/* Line 480 of lalr1.cc  */
-#line 912 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2085 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 543: /* "AnyKindTest" */
-
-/* Line 480 of lalr1.cc  */
-#line 912 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2094 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 544: /* "DocumentTest" */
-
-/* Line 480 of lalr1.cc  */
-#line 912 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2103 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 545: /* "TextTest" */
-
-/* Line 480 of lalr1.cc  */
-#line 912 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2112 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 546: /* "CommentTest" */
-
-/* Line 480 of lalr1.cc  */
-#line 912 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2121 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 547: /* "PITest" */
-
-/* Line 480 of lalr1.cc  */
-#line 912 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2130 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 548: /* "AttributeTest" */
-
-/* Line 480 of lalr1.cc  */
-#line 912 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2139 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 549: /* "SchemaAttributeTest" */
-
-/* Line 480 of lalr1.cc  */
-#line 912 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2148 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 550: /* "ElementTest" */
-
-/* Line 480 of lalr1.cc  */
-#line 912 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2157 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 551: /* "SchemaElementTest" */
-
-/* Line 480 of lalr1.cc  */
-#line 912 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2166 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 552: /* "TypeName" */
-
-/* Line 480 of lalr1.cc  */
-#line 912 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2175 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 553: /* "TypeName_WITH_HOOK" */
-
-/* Line 480 of lalr1.cc  */
-#line 912 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2184 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 554: /* "StringLiteral" */
-
-/* Line 480 of lalr1.cc  */
-#line 921 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2193 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 559: /* "AnyFunctionTest" */
-
-/* Line 480 of lalr1.cc  */
-#line 912 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2202 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 560: /* "TypedFunctionTest" */
-
-/* Line 480 of lalr1.cc  */
-#line 912 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2211 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 563: /* "InsertExpr" */
-
-/* Line 480 of lalr1.cc  */
-#line 921 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2220 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 564: /* "DeleteExpr" */
-
-/* Line 480 of lalr1.cc  */
-#line 921 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2229 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 565: /* "ReplaceExpr" */
-
-/* Line 480 of lalr1.cc  */
-#line 921 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2238 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 566: /* "RenameExpr" */
-
-/* Line 480 of lalr1.cc  */
-#line 921 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2247 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 567: /* "TransformExpr" */
-
-/* Line 480 of lalr1.cc  */
-#line 921 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2256 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 568: /* "VarNameList" */
-
-/* Line 480 of lalr1.cc  */
-#line 921 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2265 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 569: /* "VarNameDecl" */
-
-/* Line 480 of lalr1.cc  */
-#line 921 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2274 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 570: /* "TryExpr" */
-
-/* Line 480 of lalr1.cc  */
-#line 921 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2283 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 571: /* "CatchListExpr" */
-
-/* Line 480 of lalr1.cc  */
-#line 921 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2292 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 572: /* "CatchExpr" */
-
-/* Line 480 of lalr1.cc  */
-#line 921 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2301 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 573: /* "BracedExpr" */
-
-/* Line 480 of lalr1.cc  */
-#line 921 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2310 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 574: /* "NameTestList" */
-
-/* Line 480 of lalr1.cc  */
-#line 924 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+#line 913 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1423 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 466: /* "JSONPairConstructor" */
+
+/* Line 480 of lalr1.cc  */
+#line 910 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1432 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 467: /* "AdditiveExpr" */
+
+/* Line 480 of lalr1.cc  */
+#line 913 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1441 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 468: /* "MultiplicativeExpr" */
+
+/* Line 480 of lalr1.cc  */
+#line 913 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1450 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 469: /* "UnionExpr" */
+
+/* Line 480 of lalr1.cc  */
+#line 913 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1459 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 470: /* "IntersectExceptExpr" */
+
+/* Line 480 of lalr1.cc  */
+#line 913 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1468 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 471: /* "InstanceofExpr" */
+
+/* Line 480 of lalr1.cc  */
+#line 913 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1477 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 472: /* "TreatExpr" */
+
+/* Line 480 of lalr1.cc  */
+#line 913 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1486 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 473: /* "CastableExpr" */
+
+/* Line 480 of lalr1.cc  */
+#line 913 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1495 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 474: /* "CastExpr" */
+
+/* Line 480 of lalr1.cc  */
+#line 913 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1504 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 475: /* "UnaryExpr" */
+
+/* Line 480 of lalr1.cc  */
+#line 913 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1513 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 476: /* "SignList" */
+
+/* Line 480 of lalr1.cc  */
+#line 904 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1522 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 477: /* "ValueExpr" */
+
+/* Line 480 of lalr1.cc  */
+#line 913 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1531 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 478: /* "ValueComp" */
+
+/* Line 480 of lalr1.cc  */
+#line 904 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1540 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 479: /* "NodeComp" */
+
+/* Line 480 of lalr1.cc  */
+#line 904 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1549 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 480: /* "ValidateExpr" */
+
+/* Line 480 of lalr1.cc  */
+#line 913 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1558 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 481: /* "ExtensionExpr" */
+
+/* Line 480 of lalr1.cc  */
+#line 913 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1567 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 482: /* "Pragma_list" */
+
+/* Line 480 of lalr1.cc  */
+#line 904 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1576 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 483: /* "Pragma" */
+
+/* Line 480 of lalr1.cc  */
+#line 904 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1585 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 484: /* "PathExpr" */
+
+/* Line 480 of lalr1.cc  */
+#line 913 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1594 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 486: /* "RelativePathExpr" */
+
+/* Line 480 of lalr1.cc  */
+#line 913 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1603 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 487: /* "StepExpr" */
+
+/* Line 480 of lalr1.cc  */
+#line 913 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1612 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 488: /* "AxisStep" */
+
+/* Line 480 of lalr1.cc  */
+#line 913 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1621 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 489: /* "ForwardStep" */
+
+/* Line 480 of lalr1.cc  */
+#line 904 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1630 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 490: /* "ForwardAxis" */
+
+/* Line 480 of lalr1.cc  */
+#line 904 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1639 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 491: /* "AbbrevForwardStep" */
+
+/* Line 480 of lalr1.cc  */
+#line 904 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1648 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 492: /* "ReverseStep" */
+
+/* Line 480 of lalr1.cc  */
+#line 904 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1657 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 493: /* "ReverseAxis" */
+
+/* Line 480 of lalr1.cc  */
+#line 904 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1666 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 494: /* "NodeTest" */
+
+/* Line 480 of lalr1.cc  */
+#line 904 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1675 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 495: /* "NameTest" */
+
+/* Line 480 of lalr1.cc  */
+#line 904 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1684 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 496: /* "Wildcard" */
+
+/* Line 480 of lalr1.cc  */
+#line 904 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1693 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 497: /* "FilterExpr" */
+
+/* Line 480 of lalr1.cc  */
+#line 913 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1702 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 498: /* "PredicateList" */
+
+/* Line 480 of lalr1.cc  */
+#line 904 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1711 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 499: /* "Predicate" */
+
+/* Line 480 of lalr1.cc  */
+#line 913 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1720 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 500: /* "PrimaryExpr" */
+
+/* Line 480 of lalr1.cc  */
+#line 913 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1729 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 501: /* "Literal" */
+
+/* Line 480 of lalr1.cc  */
+#line 913 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1738 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 502: /* "NumericLiteral" */
+
+/* Line 480 of lalr1.cc  */
+#line 913 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1747 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 503: /* "VarRef" */
+
+/* Line 480 of lalr1.cc  */
+#line 913 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1756 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 504: /* "ParenthesizedExpr" */
+
+/* Line 480 of lalr1.cc  */
+#line 913 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1765 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 505: /* "ContextItemExpr" */
+
+/* Line 480 of lalr1.cc  */
+#line 913 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1774 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 506: /* "OrderedExpr" */
+
+/* Line 480 of lalr1.cc  */
+#line 913 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1783 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 507: /* "UnorderedExpr" */
+
+/* Line 480 of lalr1.cc  */
+#line 913 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1792 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 508: /* "FunctionCall" */
+
+/* Line 480 of lalr1.cc  */
+#line 913 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1801 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 509: /* "ArgList" */
+
+/* Line 480 of lalr1.cc  */
+#line 904 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1810 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 510: /* "Constructor" */
+
+/* Line 480 of lalr1.cc  */
+#line 913 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1819 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 511: /* "DirectConstructor" */
+
+/* Line 480 of lalr1.cc  */
+#line 913 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1828 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 512: /* "DirElemConstructor" */
+
+/* Line 480 of lalr1.cc  */
+#line 913 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1837 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 513: /* "DirElemContentList" */
+
+/* Line 480 of lalr1.cc  */
+#line 904 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1846 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 514: /* "DirAttributeList" */
+
+/* Line 480 of lalr1.cc  */
+#line 904 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1855 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 515: /* "DirAttr" */
+
+/* Line 480 of lalr1.cc  */
+#line 904 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1864 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 517: /* "DirAttributeValue" */
+
+/* Line 480 of lalr1.cc  */
+#line 904 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1873 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 518: /* "opt_QuoteAttrContentList" */
+
+/* Line 480 of lalr1.cc  */
+#line 904 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1882 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 519: /* "QuoteAttrContentList" */
+
+/* Line 480 of lalr1.cc  */
+#line 904 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1891 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 520: /* "opt_AposAttrContentList" */
+
+/* Line 480 of lalr1.cc  */
+#line 904 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1900 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 521: /* "AposAttrContentList" */
+
+/* Line 480 of lalr1.cc  */
+#line 904 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1909 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 522: /* "QuoteAttrValueContent" */
+
+/* Line 480 of lalr1.cc  */
+#line 904 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1918 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 523: /* "AposAttrValueContent" */
+
+/* Line 480 of lalr1.cc  */
+#line 904 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1927 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 524: /* "DirElemContent" */
+
+/* Line 480 of lalr1.cc  */
+#line 913 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1936 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 525: /* "CommonContent" */
+
+/* Line 480 of lalr1.cc  */
+#line 913 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1945 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 526: /* "DirCommentConstructor" */
+
+/* Line 480 of lalr1.cc  */
+#line 913 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1954 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 527: /* "DirPIConstructor" */
+
+/* Line 480 of lalr1.cc  */
+#line 913 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1963 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 528: /* "CDataSection" */
+
+/* Line 480 of lalr1.cc  */
+#line 913 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1972 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 529: /* "ComputedConstructor" */
+
+/* Line 480 of lalr1.cc  */
+#line 913 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1981 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 530: /* "CompDocConstructor" */
+
+/* Line 480 of lalr1.cc  */
+#line 913 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1990 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 531: /* "CompElemConstructor" */
+
+/* Line 480 of lalr1.cc  */
+#line 913 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1999 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 532: /* "CompAttrConstructor" */
+
+/* Line 480 of lalr1.cc  */
+#line 913 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2008 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 533: /* "CompTextConstructor" */
+
+/* Line 480 of lalr1.cc  */
+#line 913 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2017 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 534: /* "CompCommentConstructor" */
+
+/* Line 480 of lalr1.cc  */
+#line 913 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2026 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 535: /* "CompPIConstructor" */
+
+/* Line 480 of lalr1.cc  */
+#line 913 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2035 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 536: /* "SingleType" */
+
+/* Line 480 of lalr1.cc  */
+#line 904 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2044 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 537: /* "TypeDeclaration" */
+
+/* Line 480 of lalr1.cc  */
+#line 904 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2053 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 538: /* "SequenceType" */
+
+/* Line 480 of lalr1.cc  */
+#line 904 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2062 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 539: /* "OccurrenceIndicator" */
+
+/* Line 480 of lalr1.cc  */
+#line 904 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2071 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 540: /* "ItemType" */
+
+/* Line 480 of lalr1.cc  */
+#line 904 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2080 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 541: /* "TypeList" */
+
+/* Line 480 of lalr1.cc  */
+#line 904 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2089 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 542: /* "AtomicType" */
+
+/* Line 480 of lalr1.cc  */
+#line 904 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2098 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 543: /* "KindTest" */
+
+/* Line 480 of lalr1.cc  */
+#line 904 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2107 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 544: /* "AnyKindTest" */
+
+/* Line 480 of lalr1.cc  */
+#line 904 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2116 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 545: /* "DocumentTest" */
+
+/* Line 480 of lalr1.cc  */
+#line 904 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2125 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 546: /* "TextTest" */
+
+/* Line 480 of lalr1.cc  */
+#line 904 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2134 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 547: /* "CommentTest" */
+
+/* Line 480 of lalr1.cc  */
+#line 904 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2143 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 548: /* "PITest" */
+
+/* Line 480 of lalr1.cc  */
+#line 904 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2152 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 549: /* "AttributeTest" */
+
+/* Line 480 of lalr1.cc  */
+#line 904 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2161 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 550: /* "SchemaAttributeTest" */
+
+/* Line 480 of lalr1.cc  */
+#line 904 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2170 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 551: /* "ElementTest" */
+
+/* Line 480 of lalr1.cc  */
+#line 904 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2179 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 552: /* "SchemaElementTest" */
+
+/* Line 480 of lalr1.cc  */
+#line 904 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2188 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 553: /* "TypeName" */
+
+/* Line 480 of lalr1.cc  */
+#line 904 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2197 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 554: /* "TypeName_WITH_HOOK" */
+
+/* Line 480 of lalr1.cc  */
+#line 904 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2206 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 555: /* "StringLiteral" */
+
+/* Line 480 of lalr1.cc  */
+#line 913 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2215 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 560: /* "AnyFunctionTest" */
+
+/* Line 480 of lalr1.cc  */
+#line 904 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2224 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 561: /* "TypedFunctionTest" */
+
+/* Line 480 of lalr1.cc  */
+#line 904 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2233 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 564: /* "InsertExpr" */
+
+/* Line 480 of lalr1.cc  */
+#line 913 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2242 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 565: /* "DeleteExpr" */
+
+/* Line 480 of lalr1.cc  */
+#line 913 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2251 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 566: /* "ReplaceExpr" */
+
+/* Line 480 of lalr1.cc  */
+#line 913 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2260 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 567: /* "RenameExpr" */
+
+/* Line 480 of lalr1.cc  */
+#line 913 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2269 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 568: /* "TransformExpr" */
+
+/* Line 480 of lalr1.cc  */
+#line 913 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2278 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 569: /* "VarNameList" */
+
+/* Line 480 of lalr1.cc  */
+#line 913 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2287 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 570: /* "VarNameDecl" */
+
+/* Line 480 of lalr1.cc  */
+#line 913 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2296 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 571: /* "TryExpr" */
+
+/* Line 480 of lalr1.cc  */
+#line 913 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2305 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 572: /* "CatchListExpr" */
+
+/* Line 480 of lalr1.cc  */
+#line 913 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2314 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 573: /* "CatchExpr" */
+
+/* Line 480 of lalr1.cc  */
+#line 913 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2323 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 574: /* "BracedExpr" */
+
+/* Line 480 of lalr1.cc  */
+#line 913 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2332 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 575: /* "NameTestList" */
+
+/* Line 480 of lalr1.cc  */
+#line 916 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
 	{ delete (yyvaluep->name_test_list); };
 
 /* Line 480 of lalr1.cc  */
-#line 2319 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 575: /* "FTSelection" */
-
-/* Line 480 of lalr1.cc  */
-#line 915 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2328 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 578: /* "FTOr" */
-
-/* Line 480 of lalr1.cc  */
-#line 915 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2337 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 579: /* "FTAnd" */
-
-/* Line 480 of lalr1.cc  */
-#line 915 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2346 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 580: /* "FTMildNot" */
-
-/* Line 480 of lalr1.cc  */
-#line 915 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2355 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 581: /* "FTUnaryNot" */
-
-/* Line 480 of lalr1.cc  */
-#line 915 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2364 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 582: /* "FTPrimaryWithOptions" */
-
-/* Line 480 of lalr1.cc  */
-#line 915 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2373 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 583: /* "opt_FTMatchOptions" */
-
-/* Line 480 of lalr1.cc  */
-#line 915 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2382 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 585: /* "FTWeight" */
-
-/* Line 480 of lalr1.cc  */
-#line 915 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2391 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 586: /* "FTPrimary" */
-
-/* Line 480 of lalr1.cc  */
-#line 915 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2400 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 587: /* "opt_FTTimes" */
-
-/* Line 480 of lalr1.cc  */
-#line 915 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2409 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 588: /* "FTExtensionSelection" */
-
-/* Line 480 of lalr1.cc  */
-#line 915 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2418 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 590: /* "FTWords" */
-
-/* Line 480 of lalr1.cc  */
-#line 915 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2427 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 591: /* "FTWordsValue" */
-
-/* Line 480 of lalr1.cc  */
-#line 915 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2436 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 593: /* "FTAnyallOption" */
-
-/* Line 480 of lalr1.cc  */
-#line 915 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2445 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 596: /* "FTPosFilter" */
-
-/* Line 480 of lalr1.cc  */
-#line 915 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2454 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 597: /* "FTOrder" */
-
-/* Line 480 of lalr1.cc  */
-#line 915 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2463 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 598: /* "FTWindow" */
-
-/* Line 480 of lalr1.cc  */
-#line 915 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2472 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 599: /* "FTDistance" */
-
-/* Line 480 of lalr1.cc  */
-#line 915 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2481 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 600: /* "FTUnit" */
-
-/* Line 480 of lalr1.cc  */
-#line 915 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2490 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 601: /* "FTMatchOptions" */
-
-/* Line 480 of lalr1.cc  */
-#line 915 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2499 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 602: /* "FTMatchOption" */
-
-/* Line 480 of lalr1.cc  */
-#line 915 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2508 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 603: /* "FTCaseOption" */
-
-/* Line 480 of lalr1.cc  */
-#line 915 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2517 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 604: /* "FTDiacriticsOption" */
-
-/* Line 480 of lalr1.cc  */
-#line 915 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2526 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 605: /* "FTExtensionOption" */
-
-/* Line 480 of lalr1.cc  */
-#line 915 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2535 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 606: /* "FTStemOption" */
-
-/* Line 480 of lalr1.cc  */
-#line 915 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2544 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 607: /* "FTThesaurusOption" */
-
-/* Line 480 of lalr1.cc  */
-#line 915 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2553 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 611: /* "FTThesaurusID" */
-
-/* Line 480 of lalr1.cc  */
-#line 915 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2562 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 614: /* "FTStopWordOption" */
-
-/* Line 480 of lalr1.cc  */
-#line 915 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2571 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 615: /* "FTStopWords" */
-
-/* Line 480 of lalr1.cc  */
-#line 915 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2580 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 619: /* "FTStopWordsInclExcl" */
-
-/* Line 480 of lalr1.cc  */
-#line 915 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2589 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 620: /* "FTLanguageOption" */
-
-/* Line 480 of lalr1.cc  */
-#line 915 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2598 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 621: /* "FTWildCardOption" */
-
-/* Line 480 of lalr1.cc  */
-#line 915 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2607 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 622: /* "FTContent" */
-
-/* Line 480 of lalr1.cc  */
-#line 915 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2616 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 623: /* "FTTimes" */
-
-/* Line 480 of lalr1.cc  */
-#line 915 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2625 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 624: /* "FTRange" */
-
-/* Line 480 of lalr1.cc  */
-#line 915 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2634 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 625: /* "FTScope" */
-
-/* Line 480 of lalr1.cc  */
-#line 915 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2643 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 626: /* "FTBigUnit" */
-
-/* Line 480 of lalr1.cc  */
-#line 915 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2652 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 627: /* "FTIgnoreOption" */
-
-/* Line 480 of lalr1.cc  */
-#line 915 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2661 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 628: /* "JSONConstructor" */
-
-/* Line 480 of lalr1.cc  */
-#line 918 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2670 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 629: /* "JSONComputedPairConstructor" */
-
-/* Line 480 of lalr1.cc  */
-#line 918 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2679 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 630: /* "JSONComputedObjectConstructor" */
-
-/* Line 480 of lalr1.cc  */
-#line 918 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2688 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 631: /* "JSONComputedArrayConstructor" */
-
-/* Line 480 of lalr1.cc  */
-#line 918 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2697 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 632: /* "JSONDirectArrayConstructor" */
-
-/* Line 480 of lalr1.cc  */
-#line 918 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2706 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 633: /* "JSONDirectObjectConstructor" */
-
-/* Line 480 of lalr1.cc  */
-#line 918 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2715 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 634: /* "JSONDirectObjectContent" */
-
-/* Line 480 of lalr1.cc  */
-#line 918 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2724 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 635: /* "JSONDirectPairConstructor" */
-
-/* Line 480 of lalr1.cc  */
-#line 918 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2733 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 643: /* "QNAME" */
-
-/* Line 480 of lalr1.cc  */
-#line 921 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2742 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 644: /* "FUNCTION_NAME" */
-
-/* Line 480 of lalr1.cc  */
-#line 921 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2751 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
-	break;
-      case 645: /* "EQNAME" */
-
-/* Line 480 of lalr1.cc  */
-#line 921 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2760 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
+#line 2341 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 576: /* "FTSelection" */
+
+/* Line 480 of lalr1.cc  */
+#line 907 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2350 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 579: /* "FTOr" */
+
+/* Line 480 of lalr1.cc  */
+#line 907 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2359 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 580: /* "FTAnd" */
+
+/* Line 480 of lalr1.cc  */
+#line 907 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2368 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 581: /* "FTMildNot" */
+
+/* Line 480 of lalr1.cc  */
+#line 907 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2377 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 582: /* "FTUnaryNot" */
+
+/* Line 480 of lalr1.cc  */
+#line 907 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2386 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 583: /* "FTPrimaryWithOptions" */
+
+/* Line 480 of lalr1.cc  */
+#line 907 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2395 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 584: /* "opt_FTMatchOptions" */
+
+/* Line 480 of lalr1.cc  */
+#line 907 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2404 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 586: /* "FTWeight" */
+
+/* Line 480 of lalr1.cc  */
+#line 907 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2413 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 587: /* "FTPrimary" */
+
+/* Line 480 of lalr1.cc  */
+#line 907 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2422 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 588: /* "opt_FTTimes" */
+
+/* Line 480 of lalr1.cc  */
+#line 907 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2431 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 589: /* "FTExtensionSelection" */
+
+/* Line 480 of lalr1.cc  */
+#line 907 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2440 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 591: /* "FTWords" */
+
+/* Line 480 of lalr1.cc  */
+#line 907 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2449 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 592: /* "FTWordsValue" */
+
+/* Line 480 of lalr1.cc  */
+#line 907 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2458 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 594: /* "FTAnyallOption" */
+
+/* Line 480 of lalr1.cc  */
+#line 907 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2467 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 597: /* "FTPosFilter" */
+
+/* Line 480 of lalr1.cc  */
+#line 907 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2476 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 598: /* "FTOrder" */
+
+/* Line 480 of lalr1.cc  */
+#line 907 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2485 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 599: /* "FTWindow" */
+
+/* Line 480 of lalr1.cc  */
+#line 907 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2494 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 600: /* "FTDistance" */
+
+/* Line 480 of lalr1.cc  */
+#line 907 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2503 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 601: /* "FTUnit" */
+
+/* Line 480 of lalr1.cc  */
+#line 907 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2512 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 602: /* "FTMatchOptions" */
+
+/* Line 480 of lalr1.cc  */
+#line 907 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2521 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 603: /* "FTMatchOption" */
+
+/* Line 480 of lalr1.cc  */
+#line 907 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2530 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 604: /* "FTCaseOption" */
+
+/* Line 480 of lalr1.cc  */
+#line 907 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2539 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 605: /* "FTDiacriticsOption" */
+
+/* Line 480 of lalr1.cc  */
+#line 907 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2548 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 606: /* "FTExtensionOption" */
+
+/* Line 480 of lalr1.cc  */
+#line 907 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2557 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 607: /* "FTStemOption" */
+
+/* Line 480 of lalr1.cc  */
+#line 907 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2566 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 608: /* "FTThesaurusOption" */
+
+/* Line 480 of lalr1.cc  */
+#line 907 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2575 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 612: /* "FTThesaurusID" */
+
+/* Line 480 of lalr1.cc  */
+#line 907 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2584 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 615: /* "FTStopWordOption" */
+
+/* Line 480 of lalr1.cc  */
+#line 907 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2593 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 616: /* "FTStopWords" */
+
+/* Line 480 of lalr1.cc  */
+#line 907 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2602 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 620: /* "FTStopWordsInclExcl" */
+
+/* Line 480 of lalr1.cc  */
+#line 907 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2611 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 621: /* "FTLanguageOption" */
+
+/* Line 480 of lalr1.cc  */
+#line 907 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2620 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 622: /* "FTWildCardOption" */
+
+/* Line 480 of lalr1.cc  */
+#line 907 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2629 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 623: /* "FTContent" */
+
+/* Line 480 of lalr1.cc  */
+#line 907 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2638 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 624: /* "FTTimes" */
+
+/* Line 480 of lalr1.cc  */
+#line 907 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2647 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 625: /* "FTRange" */
+
+/* Line 480 of lalr1.cc  */
+#line 907 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2656 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 626: /* "FTScope" */
+
+/* Line 480 of lalr1.cc  */
+#line 907 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2665 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 627: /* "FTBigUnit" */
+
+/* Line 480 of lalr1.cc  */
+#line 907 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2674 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 628: /* "FTIgnoreOption" */
+
+/* Line 480 of lalr1.cc  */
+#line 907 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2683 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 629: /* "JSONConstructor" */
+
+/* Line 480 of lalr1.cc  */
+#line 910 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2692 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 630: /* "JSONDirectArrayConstructor" */
+
+/* Line 480 of lalr1.cc  */
+#line 910 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2701 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 638: /* "QNAME" */
+
+/* Line 480 of lalr1.cc  */
+#line 913 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2710 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 639: /* "FUNCTION_NAME" */
+
+/* Line 480 of lalr1.cc  */
+#line 913 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2719 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
+	break;
+      case 640: /* "EQNAME" */
+
+/* Line 480 of lalr1.cc  */
+#line 913 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2728 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
 	break;
 
 	default:
@@ -2799,6 +2767,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 ()
   {
@@ -2820,7 +2800,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;
@@ -2834,14 +2814,14 @@
 
     /* User initialization code.  */
     
-/* Line 553 of lalr1.cc  */
-#line 140 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 565 of lalr1.cc  */
+#line 140 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
 {
     yylloc.begin.filename = yylloc.end.filename = &(driver.theFilename2);
 }
 
-/* Line 553 of lalr1.cc  */
-#line 2845 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
+/* Line 565 of lalr1.cc  */
+#line 2825 "/home/jsoniq/zorba/debug/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
@@ -2869,7 +2849,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.  */
@@ -2902,8 +2882,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;
       }
@@ -2959,8 +2939,8 @@
       {
 	  case 3:
 
-/* Line 678 of lalr1.cc  */
-#line 1042 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1034 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
         (yyval.node) = (yysemantic_stack_[(2) - (2)].node);
       }
@@ -2968,8 +2948,8 @@
 
   case 4:
 
-/* Line 678 of lalr1.cc  */
-#line 1051 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1043 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
         (yyval.node) = NULL; YYABORT;
       }
@@ -2977,8 +2957,8 @@
 
   case 5:
 
-/* Line 678 of lalr1.cc  */
-#line 1060 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1052 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
       driver.set_expr( (yyval.node) );
@@ -2987,8 +2967,8 @@
 
   case 6:
 
-/* Line 678 of lalr1.cc  */
-#line 1066 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1058 "/home/jsoniq/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)) );
@@ -2999,8 +2979,8 @@
 
   case 7:
 
-/* Line 678 of lalr1.cc  */
-#line 1074 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1066 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
       driver.set_expr( (yyval.node) );
@@ -3009,8 +2989,8 @@
 
   case 8:
 
-/* Line 678 of lalr1.cc  */
-#line 1080 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1072 "/home/jsoniq/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)) );
@@ -3021,8 +3001,8 @@
 
   case 9:
 
-/* Line 678 of lalr1.cc  */
-#line 1091 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1083 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new VersionDecl( LOC((yyloc)), SYMTAB((yysemantic_stack_[(4) - (3)].sval)), "utf-8" );
     }
@@ -3030,8 +3010,8 @@
 
   case 10:
 
-/* Line 678 of lalr1.cc  */
-#line 1096 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1088 "/home/jsoniq/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)) );
     }
@@ -3039,8 +3019,8 @@
 
   case 11:
 
-/* Line 678 of lalr1.cc  */
-#line 1104 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1096 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       Prolog* prolog = new Prolog(LOC((yyloc)), static_cast<SIND_DeclList*>((yysemantic_stack_[(3) - (1)].node)), NULL);
 
@@ -3050,8 +3030,8 @@
 
   case 12:
 
-/* Line 678 of lalr1.cc  */
-#line 1111 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1103 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       Prolog* prolog = new Prolog(LOC((yyloc)), NULL, static_cast<VFO_DeclList*>((yysemantic_stack_[(3) - (1)].node)));
 
@@ -3061,8 +3041,8 @@
 
   case 13:
 
-/* Line 678 of lalr1.cc  */
-#line 1118 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1110 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       Prolog* prolog = new Prolog(LOC((yyloc)),
                                   static_cast<SIND_DeclList*>((yysemantic_stack_[(5) - (1)].node)),
@@ -3074,8 +3054,8 @@
 
   case 14:
 
-/* Line 678 of lalr1.cc  */
-#line 1127 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1119 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new MainModule( LOC((yyloc)), static_cast<QueryBody*>((yysemantic_stack_[(1) - (1)].expr)), NULL );
     }
@@ -3083,8 +3063,8 @@
 
   case 15:
 
-/* Line 678 of lalr1.cc  */
-#line 1134 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1126 "/home/jsoniq/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();
@@ -3095,8 +3075,8 @@
 
   case 16:
 
-/* Line 678 of lalr1.cc  */
-#line 1142 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1134 "/home/jsoniq/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();
@@ -3107,8 +3087,8 @@
 
   case 17:
 
-/* Line 678 of lalr1.cc  */
-#line 1150 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1142 "/home/jsoniq/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();
@@ -3119,8 +3099,8 @@
 
   case 18:
 
-/* Line 678 of lalr1.cc  */
-#line 1158 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1150 "/home/jsoniq/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();
@@ -3131,8 +3111,8 @@
 
   case 19:
 
-/* Line 678 of lalr1.cc  */
-#line 1169 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1161 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new LibraryModule(LOC((yyloc)), static_cast<ModuleDecl*>((yysemantic_stack_[(1) - (1)].node)), NULL);
     }
@@ -3140,8 +3120,8 @@
 
   case 20:
 
-/* Line 678 of lalr1.cc  */
-#line 1174 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1166 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       Prolog* prolog = new Prolog(LOC((yyloc)), static_cast<SIND_DeclList*>((yysemantic_stack_[(3) - (2)].node)), NULL);
 
@@ -3151,8 +3131,8 @@
 
   case 21:
 
-/* Line 678 of lalr1.cc  */
-#line 1181 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1173 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       Prolog* prolog = new Prolog(LOC((yyloc)), NULL, static_cast<VFO_DeclList*>((yysemantic_stack_[(3) - (2)].node)));
 
@@ -3162,8 +3142,8 @@
 
   case 22:
 
-/* Line 678 of lalr1.cc  */
-#line 1188 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1180 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       Prolog* prolog = new Prolog(LOC((yyloc)),
                                   static_cast<SIND_DeclList*>((yysemantic_stack_[(5) - (2)].node)),
@@ -3175,8 +3155,8 @@
 
   case 23:
 
-/* Line 678 of lalr1.cc  */
-#line 1200 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1192 "/home/jsoniq/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)) );
 
@@ -3186,8 +3166,8 @@
 
   case 24:
 
-/* Line 678 of lalr1.cc  */
-#line 1210 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1202 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       SIND_DeclList *sdl = new SIND_DeclList( LOC((yyloc)) );
       sdl->push_back( (yysemantic_stack_[(1) - (1)].node) );
@@ -3197,8 +3177,8 @@
 
   case 25:
 
-/* Line 678 of lalr1.cc  */
-#line 1217 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1209 "/home/jsoniq/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);
@@ -3207,8 +3187,8 @@
 
   case 26:
 
-/* Line 678 of lalr1.cc  */
-#line 1224 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1216 "/home/jsoniq/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
@@ -3220,8 +3200,8 @@
 
   case 40:
 
-/* Line 678 of lalr1.cc  */
-#line 1259 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1251 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new BoundarySpaceDecl(LOC((yyloc)), StaticContextConsts::preserve_space);
     }
@@ -3229,8 +3209,8 @@
 
   case 41:
 
-/* Line 678 of lalr1.cc  */
-#line 1264 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1256 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new BoundarySpaceDecl(LOC((yyloc)), StaticContextConsts::strip_space);
     }
@@ -3238,8 +3218,8 @@
 
   case 42:
 
-/* Line 678 of lalr1.cc  */
-#line 1272 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1264 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new DefaultCollationDecl( LOC((yyloc)), SYMTAB((yysemantic_stack_[(4) - (4)].sval)) );
     }
@@ -3247,8 +3227,8 @@
 
   case 43:
 
-/* Line 678 of lalr1.cc  */
-#line 1280 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1272 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new BaseURIDecl( LOC((yyloc)), SYMTAB((yysemantic_stack_[(3) - (3)].sval)) );
     }
@@ -3256,8 +3236,8 @@
 
   case 44:
 
-/* Line 678 of lalr1.cc  */
-#line 1288 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1280 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new ConstructionDecl(LOC((yyloc)), StaticContextConsts::cons_preserve);
     }
@@ -3265,8 +3245,8 @@
 
   case 45:
 
-/* Line 678 of lalr1.cc  */
-#line 1293 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1285 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new ConstructionDecl(LOC((yyloc)), StaticContextConsts::cons_strip);
     }
@@ -3274,8 +3254,8 @@
 
   case 46:
 
-/* Line 678 of lalr1.cc  */
-#line 1301 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1293 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new OrderingModeDecl(LOC((yyloc)), StaticContextConsts::ordered);
     }
@@ -3283,8 +3263,8 @@
 
   case 47:
 
-/* Line 678 of lalr1.cc  */
-#line 1306 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1298 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new OrderingModeDecl(LOC((yyloc)), StaticContextConsts::unordered);
     }
@@ -3292,8 +3272,8 @@
 
   case 48:
 
-/* Line 678 of lalr1.cc  */
-#line 1314 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1306 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new EmptyOrderDecl(LOC((yyloc)), StaticContextConsts::empty_greatest);
     }
@@ -3301,8 +3281,8 @@
 
   case 49:
 
-/* Line 678 of lalr1.cc  */
-#line 1319 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1311 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new EmptyOrderDecl(LOC((yyloc)), StaticContextConsts::empty_least);
     }
@@ -3310,8 +3290,8 @@
 
   case 50:
 
-/* Line 678 of lalr1.cc  */
-#line 1327 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1319 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new CopyNamespacesDecl(LOC((yyloc)),
                                   StaticContextConsts::preserve_ns,
@@ -3321,8 +3301,8 @@
 
   case 51:
 
-/* Line 678 of lalr1.cc  */
-#line 1334 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1326 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new CopyNamespacesDecl(LOC((yyloc)),
                                   StaticContextConsts::preserve_ns,
@@ -3332,8 +3312,8 @@
 
   case 52:
 
-/* Line 678 of lalr1.cc  */
-#line 1341 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1333 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new CopyNamespacesDecl(LOC((yyloc)),
                                   StaticContextConsts::no_preserve_ns,
@@ -3343,8 +3323,8 @@
 
   case 53:
 
-/* Line 678 of lalr1.cc  */
-#line 1348 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1340 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new CopyNamespacesDecl(LOC((yyloc)),
                                   StaticContextConsts::no_preserve_ns,
@@ -3354,8 +3334,8 @@
 
   case 56:
 
-/* Line 678 of lalr1.cc  */
-#line 1363 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1355 "/home/jsoniq/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\".");
@@ -3365,8 +3345,8 @@
 
   case 57:
 
-/* Line 678 of lalr1.cc  */
-#line 1373 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1365 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new SchemaImport( LOC((yyloc)), NULL, SYMTAB((yysemantic_stack_[(3) - (3)].sval)), NULL );
     }
@@ -3374,8 +3354,8 @@
 
   case 58:
 
-/* Line 678 of lalr1.cc  */
-#line 1378 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1370 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new SchemaImport(LOC((yyloc)),
                             dynamic_cast<SchemaPrefix*>((yysemantic_stack_[(4) - (3)].node)),
@@ -3386,8 +3366,8 @@
 
   case 59:
 
-/* Line 678 of lalr1.cc  */
-#line 1386 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1378 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new SchemaImport(LOC((yyloc)),
                             NULL,
@@ -3398,8 +3378,8 @@
 
   case 60:
 
-/* Line 678 of lalr1.cc  */
-#line 1394 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1386 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new SchemaImport(LOC((yyloc)),
                             dynamic_cast<SchemaPrefix*>((yysemantic_stack_[(6) - (3)].node)),
@@ -3410,8 +3390,8 @@
 
   case 61:
 
-/* Line 678 of lalr1.cc  */
-#line 1405 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1397 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       URILiteralList *ull = new URILiteralList( LOC((yyloc)));
       ull->push_back( SYMTAB((yysemantic_stack_[(1) - (1)].sval)) );
@@ -3421,8 +3401,8 @@
 
   case 62:
 
-/* Line 678 of lalr1.cc  */
-#line 1412 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1404 "/home/jsoniq/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)) );
@@ -3433,8 +3413,8 @@
 
   case 63:
 
-/* Line 678 of lalr1.cc  */
-#line 1423 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1415 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new SchemaPrefix( LOC((yyloc)), SYMTAB((yysemantic_stack_[(3) - (2)].sval)) );
     }
@@ -3442,8 +3422,8 @@
 
   case 64:
 
-/* Line 678 of lalr1.cc  */
-#line 1428 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1420 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new SchemaPrefix( LOC((yyloc)), true );
     }
@@ -3451,8 +3431,8 @@
 
   case 65:
 
-/* Line 678 of lalr1.cc  */
-#line 1436 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1428 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new ModuleImport(LOC((yyloc)), SYMTAB((yysemantic_stack_[(3) - (3)].sval)), NULL);
 
@@ -3462,8 +3442,8 @@
 
   case 66:
 
-/* Line 678 of lalr1.cc  */
-#line 1443 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1435 "/home/jsoniq/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);
 
@@ -3473,8 +3453,8 @@
 
   case 67:
 
-/* Line 678 of lalr1.cc  */
-#line 1450 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1442 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new ModuleImport(LOC((yyloc)),
                             SYMTAB((yysemantic_stack_[(5) - (3)].sval)),
@@ -3486,8 +3466,8 @@
 
   case 68:
 
-/* Line 678 of lalr1.cc  */
-#line 1459 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1451 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new ModuleImport(LOC((yyloc)),
                             SYMTAB((yysemantic_stack_[(8) - (4)].sval)),
@@ -3500,8 +3480,8 @@
 
   case 69:
 
-/* Line 678 of lalr1.cc  */
-#line 1472 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1464 "/home/jsoniq/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)) );
     }
@@ -3509,8 +3489,8 @@
 
   case 70:
 
-/* Line 678 of lalr1.cc  */
-#line 1480 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1472 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new DefaultNamespaceDecl(LOC((yyloc)),
                                     ParseConstants::ns_element_default,
@@ -3520,8 +3500,8 @@
 
   case 71:
 
-/* Line 678 of lalr1.cc  */
-#line 1487 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1479 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new DefaultNamespaceDecl(LOC((yyloc)),
                                     ParseConstants::ns_function_default,
@@ -3531,8 +3511,8 @@
 
   case 72:
 
-/* Line 678 of lalr1.cc  */
-#line 1497 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1489 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       VFO_DeclList *vdl = new VFO_DeclList( LOC((yyloc)));
       vdl->push_back( (yysemantic_stack_[(1) - (1)].node) );
@@ -3542,8 +3522,8 @@
 
   case 73:
 
-/* Line 678 of lalr1.cc  */
-#line 1504 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1496 "/home/jsoniq/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);
@@ -3552,8 +3532,8 @@
 
   case 74:
 
-/* Line 678 of lalr1.cc  */
-#line 1511 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1503 "/home/jsoniq/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();
@@ -3564,8 +3544,8 @@
 
   case 83:
 
-/* Line 678 of lalr1.cc  */
-#line 1534 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1526 "/home/jsoniq/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);
@@ -3574,8 +3554,8 @@
 
   case 84:
 
-/* Line 678 of lalr1.cc  */
-#line 1540 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1532 "/home/jsoniq/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);
@@ -3584,8 +3564,8 @@
 
   case 85:
 
-/* Line 678 of lalr1.cc  */
-#line 1549 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1541 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.vstrpair) = new vector<string_pair_t>();
       (yyval.vstrpair)->push_back( *(yysemantic_stack_[(1) - (1)].strpair) );
@@ -3595,8 +3575,8 @@
 
   case 86:
 
-/* Line 678 of lalr1.cc  */
-#line 1556 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1548 "/home/jsoniq/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);
@@ -3606,8 +3586,8 @@
 
   case 87:
 
-/* Line 678 of lalr1.cc  */
-#line 1566 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1558 "/home/jsoniq/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() );
@@ -3617,78 +3597,78 @@
 
   case 88:
 
-/* Line 678 of lalr1.cc  */
-#line 1575 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1567 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.strval) = "decimal-separator"; }
     break;
 
   case 89:
 
-/* Line 678 of lalr1.cc  */
-#line 1576 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1568 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.strval) = "digit"; }
     break;
 
   case 90:
 
-/* Line 678 of lalr1.cc  */
-#line 1577 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1569 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.strval) = "grouping-separator"; }
     break;
 
   case 91:
 
-/* Line 678 of lalr1.cc  */
-#line 1578 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1570 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.strval) = "infinty"; }
     break;
 
   case 92:
 
-/* Line 678 of lalr1.cc  */
-#line 1579 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1571 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.strval) = "minus-sign"; }
     break;
 
   case 93:
 
-/* Line 678 of lalr1.cc  */
-#line 1580 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1572 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.strval) = "NaN"; }
     break;
 
   case 94:
 
-/* Line 678 of lalr1.cc  */
-#line 1581 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1573 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.strval) = "pattern-separator"; }
     break;
 
   case 95:
 
-/* Line 678 of lalr1.cc  */
-#line 1582 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1574 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.strval) = "percent"; }
     break;
 
   case 96:
 
-/* Line 678 of lalr1.cc  */
-#line 1583 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1575 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.strval) = "per-mille"; }
     break;
 
   case 97:
 
-/* Line 678 of lalr1.cc  */
-#line 1584 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1576 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.strval) = "zero-digit"; }
     break;
 
   case 98:
 
-/* Line 678 of lalr1.cc  */
-#line 1590 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1582 "/home/jsoniq/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)));
     }
@@ -3696,8 +3676,8 @@
 
   case 99:
 
-/* Line 678 of lalr1.cc  */
-#line 1598 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1590 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new FTOptionDecl( LOC((yyloc)), dynamic_cast<FTMatchOptions*>((yysemantic_stack_[(3) - (3)].node)) );
     }
@@ -3705,8 +3685,8 @@
 
   case 100:
 
-/* Line 678 of lalr1.cc  */
-#line 1606 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1598 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = (yysemantic_stack_[(4) - (4)].node);
     }
@@ -3714,8 +3694,8 @@
 
   case 101:
 
-/* Line 678 of lalr1.cc  */
-#line 1614 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1606 "/home/jsoniq/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);
@@ -3725,8 +3705,8 @@
 
   case 102:
 
-/* Line 678 of lalr1.cc  */
-#line 1621 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1613 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
     }
@@ -3734,8 +3714,8 @@
 
   case 103:
 
-/* Line 678 of lalr1.cc  */
-#line 1629 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1621 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       CtxItemDecl* d = dynamic_cast<CtxItemDecl*>((yysemantic_stack_[(1) - (1)].node));
       d->theIsExternal = false;
@@ -3745,8 +3725,8 @@
 
   case 104:
 
-/* Line 678 of lalr1.cc  */
-#line 1636 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1628 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new CtxItemDecl(LOC((yyloc)), NULL);
     }
@@ -3754,8 +3734,8 @@
 
   case 105:
 
-/* Line 678 of lalr1.cc  */
-#line 1641 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1633 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = (yysemantic_stack_[(2) - (2)].node);
     }
@@ -3763,8 +3743,8 @@
 
   case 106:
 
-/* Line 678 of lalr1.cc  */
-#line 1649 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1641 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new CtxItemDecl(LOC((yyloc)), (yysemantic_stack_[(2) - (2)].expr));
     }
@@ -3772,8 +3752,8 @@
 
   case 107:
 
-/* Line 678 of lalr1.cc  */
-#line 1657 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1649 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       std::auto_ptr<VarNameAndType> nt(dynamic_cast<VarNameAndType *>((yysemantic_stack_[(4) - (2)].varnametype)));
 
@@ -3791,8 +3771,8 @@
 
   case 108:
 
-/* Line 678 of lalr1.cc  */
-#line 1672 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1664 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       std::auto_ptr<VarNameAndType> nt(dynamic_cast<VarNameAndType *>((yysemantic_stack_[(3) - (2)].varnametype)));
 
@@ -3810,8 +3790,8 @@
 
   case 109:
 
-/* Line 678 of lalr1.cc  */
-#line 1687 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1679 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       std::auto_ptr<VarNameAndType> nt(dynamic_cast<VarNameAndType *>((yysemantic_stack_[(5) - (2)].varnametype)));
 
@@ -3829,8 +3809,8 @@
 
   case 110:
 
-/* Line 678 of lalr1.cc  */
-#line 1705 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1697 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.varnametype) = new VarNameAndType(LOC((yyloc)), static_cast<QName*>((yysemantic_stack_[(3) - (3)].expr)), NULL, NULL);
     }
@@ -3838,8 +3818,8 @@
 
   case 111:
 
-/* Line 678 of lalr1.cc  */
-#line 1710 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1702 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.varnametype) = new VarNameAndType(LOC((yyloc)),
                               static_cast<QName*>((yysemantic_stack_[(4) - (3)].expr)),
@@ -3850,8 +3830,8 @@
 
   case 112:
 
-/* Line 678 of lalr1.cc  */
-#line 1718 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1710 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.varnametype) = new VarNameAndType(LOC((yyloc)),
                               static_cast<QName*>((yysemantic_stack_[(4) - (4)].expr)),
@@ -3862,8 +3842,8 @@
 
   case 113:
 
-/* Line 678 of lalr1.cc  */
-#line 1726 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1718 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.varnametype) = new VarNameAndType(LOC((yyloc)),
                               static_cast<QName*>((yysemantic_stack_[(5) - (4)].expr)),
@@ -3874,8 +3854,8 @@
 
   case 114:
 
-/* Line 678 of lalr1.cc  */
-#line 1737 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1729 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new AnnotationListParsenode(LOC((yyloc)), static_cast<AnnotationParsenode*>((yysemantic_stack_[(1) - (1)].node)));
     }
@@ -3883,8 +3863,8 @@
 
   case 115:
 
-/* Line 678 of lalr1.cc  */
-#line 1742 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1734 "/home/jsoniq/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);
@@ -3893,8 +3873,8 @@
 
   case 116:
 
-/* Line 678 of lalr1.cc  */
-#line 1751 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1743 "/home/jsoniq/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);
     }
@@ -3902,8 +3882,8 @@
 
   case 117:
 
-/* Line 678 of lalr1.cc  */
-#line 1756 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1748 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new AnnotationParsenode(LOC((yyloc)),
                                    new QName(LOC((yyloc)), SYMTAB((yysemantic_stack_[(4) - (1)].sval))),
@@ -3913,8 +3893,8 @@
 
   case 118:
 
-/* Line 678 of lalr1.cc  */
-#line 1763 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1755 "/home/jsoniq/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);
     }
@@ -3922,8 +3902,8 @@
 
   case 119:
 
-/* Line 678 of lalr1.cc  */
-#line 1768 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1760 "/home/jsoniq/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),
@@ -3933,8 +3913,8 @@
 
   case 120:
 
-/* Line 678 of lalr1.cc  */
-#line 1778 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1770 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new AnnotationLiteralListParsenode(LOC((yyloc)), (yysemantic_stack_[(1) - (1)].expr));
     }
@@ -3942,8 +3922,8 @@
 
   case 121:
 
-/* Line 678 of lalr1.cc  */
-#line 1783 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1775 "/home/jsoniq/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);
@@ -3952,8 +3932,8 @@
 
   case 122:
 
-/* Line 678 of lalr1.cc  */
-#line 1792 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1784 "/home/jsoniq/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);
@@ -3962,8 +3942,8 @@
 
   case 123:
 
-/* Line 678 of lalr1.cc  */
-#line 1798 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1790 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       FunctionDecl* fdecl = static_cast<FunctionDecl*>((yysemantic_stack_[(3) - (3)].node));
 
@@ -3976,8 +3956,8 @@
 
   case 124:
 
-/* Line 678 of lalr1.cc  */
-#line 1811 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1803 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
     }
@@ -3985,8 +3965,8 @@
 
   case 125:
 
-/* Line 678 of lalr1.cc  */
-#line 1816 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1808 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
     }
@@ -3994,8 +3974,8 @@
 
   case 126:
 
-/* Line 678 of lalr1.cc  */
-#line 1824 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1816 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new FunctionDecl(LOC((yyloc)),
                             static_cast<QName*>((yysemantic_stack_[(4) - (2)].expr)),
@@ -4010,8 +3990,8 @@
 
   case 127:
 
-/* Line 678 of lalr1.cc  */
-#line 1835 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1827 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new FunctionDecl(LOC ((yyloc)),
                             static_cast<QName*>((yysemantic_stack_[(4) - (2)].expr)),
@@ -4026,8 +4006,8 @@
 
   case 128:
 
-/* Line 678 of lalr1.cc  */
-#line 1850 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1842 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new FunctionDecl(LOC ((yyloc)),
                             static_cast<QName*>((yysemantic_stack_[(5) - (3)].expr)),
@@ -4042,8 +4022,8 @@
 
   case 129:
 
-/* Line 678 of lalr1.cc  */
-#line 1862 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1854 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new FunctionDecl(LOC((yyloc)),
                             static_cast<QName*>((yysemantic_stack_[(5) - (3)].expr)),
@@ -4058,8 +4038,8 @@
 
   case 130:
 
-/* Line 678 of lalr1.cc  */
-#line 1877 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1869 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.fnsig) = new FunctionSig(NULL);
     }
@@ -4067,8 +4047,8 @@
 
   case 131:
 
-/* Line 678 of lalr1.cc  */
-#line 1882 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1874 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.fnsig) = new FunctionSig(dynamic_cast<ParamList*>((yysemantic_stack_[(3) - (2)].node)));
     }
@@ -4076,8 +4056,8 @@
 
   case 132:
 
-/* Line 678 of lalr1.cc  */
-#line 1887 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1879 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.fnsig) = new FunctionSig(NULL, dynamic_cast<SequenceType*>((yysemantic_stack_[(4) - (4)].node)));
     }
@@ -4085,8 +4065,8 @@
 
   case 133:
 
-/* Line 678 of lalr1.cc  */
-#line 1892 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1884 "/home/jsoniq/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)));
     }
@@ -4094,8 +4074,8 @@
 
   case 134:
 
-/* Line 678 of lalr1.cc  */
-#line 1900 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1892 "/home/jsoniq/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)) );
@@ -4105,8 +4085,8 @@
 
   case 135:
 
-/* Line 678 of lalr1.cc  */
-#line 1907 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1899 "/home/jsoniq/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)) );
@@ -4117,8 +4097,8 @@
 
   case 136:
 
-/* Line 678 of lalr1.cc  */
-#line 1918 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1910 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new Param(LOC((yyloc)), static_cast<QName*>((yysemantic_stack_[(2) - (2)].expr)), NULL);
     }
@@ -4126,8 +4106,8 @@
 
   case 137:
 
-/* Line 678 of lalr1.cc  */
-#line 1923 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1915 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new Param(LOC((yyloc)),
                      static_cast<QName*>((yysemantic_stack_[(3) - (2)].expr)),
@@ -4137,8 +4117,8 @@
 
   case 138:
 
-/* Line 678 of lalr1.cc  */
-#line 1933 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1925 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new CollectionDecl( LOC((yyloc)),
                               static_cast<QName*>((yysemantic_stack_[(3) - (3)].expr)),
@@ -4149,8 +4129,8 @@
 
   case 139:
 
-/* Line 678 of lalr1.cc  */
-#line 1940 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1932 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new CollectionDecl( LOC((yyloc)),
                               static_cast<QName*>((yysemantic_stack_[(5) - (3)].expr)),
@@ -4161,8 +4141,8 @@
 
   case 140:
 
-/* Line 678 of lalr1.cc  */
-#line 1947 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1939 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new CollectionDecl( LOC((yyloc)),
                                static_cast<QName*>((yysemantic_stack_[(4) - (4)].expr)),
@@ -4173,8 +4153,8 @@
 
   case 141:
 
-/* Line 678 of lalr1.cc  */
-#line 1954 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1946 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new CollectionDecl( LOC((yyloc)),
                                static_cast<QName*>((yysemantic_stack_[(6) - (4)].expr)),
@@ -4185,8 +4165,8 @@
 
   case 142:
 
-/* Line 678 of lalr1.cc  */
-#line 1964 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1956 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = static_cast<parsenode*>(new SequenceType(LOC((yyloc)), (yysemantic_stack_[(1) - (1)].node), NULL));
     }
@@ -4194,8 +4174,8 @@
 
   case 143:
 
-/* Line 678 of lalr1.cc  */
-#line 1968 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1960 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = static_cast<parsenode*>(new SequenceType(LOC((yyloc)),
                                                     (yysemantic_stack_[(2) - (1)].node),
@@ -4205,8 +4185,8 @@
 
   case 144:
 
-/* Line 678 of lalr1.cc  */
-#line 1978 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1970 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new AST_IndexDecl(LOC((yyloc)),
                              static_cast<QName*>((yysemantic_stack_[(8) - (3)].expr)),
@@ -4218,8 +4198,8 @@
 
   case 145:
 
-/* Line 678 of lalr1.cc  */
-#line 1986 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1978 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new AST_IndexDecl(LOC((yyloc)),
                              static_cast<QName*>((yysemantic_stack_[(9) - (4)].expr)),
@@ -4231,8 +4211,8 @@
 
   case 146:
 
-/* Line 678 of lalr1.cc  */
-#line 1997 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1989 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       IndexKeyList* keyList = new IndexKeyList(LOC((yyloc)));
       keyList->addKeySpec(dynamic_cast<IndexKeySpec*>((yysemantic_stack_[(1) - (1)].node)));
@@ -4242,8 +4222,8 @@
 
   case 147:
 
-/* Line 678 of lalr1.cc  */
-#line 2003 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 1995 "/home/jsoniq/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);
@@ -4252,8 +4232,8 @@
 
   case 148:
 
-/* Line 678 of lalr1.cc  */
-#line 2012 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2004 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new IndexKeySpec(LOC((yyloc)), (yysemantic_stack_[(1) - (1)].expr), NULL, NULL);
     }
@@ -4261,8 +4241,8 @@
 
   case 149:
 
-/* Line 678 of lalr1.cc  */
-#line 2017 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2009 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new IndexKeySpec(LOC((yyloc)),
                             (yysemantic_stack_[(2) - (1)].expr),
@@ -4273,8 +4253,8 @@
 
   case 150:
 
-/* Line 678 of lalr1.cc  */
-#line 2024 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2016 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new IndexKeySpec(LOC((yyloc)),
                             (yysemantic_stack_[(2) - (1)].expr),
@@ -4285,8 +4265,8 @@
 
   case 151:
 
-/* Line 678 of lalr1.cc  */
-#line 2031 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2023 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new IndexKeySpec(LOC((yyloc)),
                             (yysemantic_stack_[(3) - (1)].expr),
@@ -4297,8 +4277,8 @@
 
   case 152:
 
-/* Line 678 of lalr1.cc  */
-#line 2043 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2035 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new ICCollSimpleCheck(LOC((yyloc)),
                                  static_cast<QName*>((yysemantic_stack_[(11) - (4)].expr)),
@@ -4310,8 +4290,8 @@
 
   case 153:
 
-/* Line 678 of lalr1.cc  */
-#line 2053 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2045 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new ICCollUniqueKeyCheck(LOC((yyloc)),
                                     static_cast<QName*>((yysemantic_stack_[(14) - (4)].expr)),
@@ -4323,8 +4303,8 @@
 
   case 154:
 
-/* Line 678 of lalr1.cc  */
-#line 2063 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2055 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new ICCollForeachNode(LOC((yyloc)),
                                  static_cast<QName*>((yysemantic_stack_[(13) - (4)].expr)),
@@ -4336,8 +4316,8 @@
 
   case 155:
 
-/* Line 678 of lalr1.cc  */
-#line 2074 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2066 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new ICForeignKey( LOC((yyloc)),
                             static_cast<QName*>((yysemantic_stack_[(22) - (4)].expr)),
@@ -4352,8 +4332,8 @@
 
   case 156:
 
-/* Line 678 of lalr1.cc  */
-#line 2090 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2082 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       if ((yysemantic_stack_[(1) - (1)].expr) == NULL)
       {
@@ -4373,8 +4353,8 @@
 
   case 157:
 
-/* Line 678 of lalr1.cc  */
-#line 2110 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2102 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
     }
@@ -4382,8 +4362,8 @@
 
   case 158:
 
-/* Line 678 of lalr1.cc  */
-#line 2114 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2106 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
     }
@@ -4391,8 +4371,8 @@
 
   case 159:
 
-/* Line 678 of lalr1.cc  */
-#line 2118 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2110 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.expr) =  NULL;
     }
@@ -4400,8 +4380,8 @@
 
   case 160:
 
-/* Line 678 of lalr1.cc  */
-#line 2126 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2118 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
     }
@@ -4409,8 +4389,8 @@
 
   case 161:
 
-/* Line 678 of lalr1.cc  */
-#line 2130 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2122 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
     }
@@ -4418,8 +4398,8 @@
 
   case 162:
 
-/* Line 678 of lalr1.cc  */
-#line 2134 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2126 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.expr) =  new BlockBody(LOC((yyloc)));
     }
@@ -4427,8 +4407,8 @@
 
   case 163:
 
-/* Line 678 of lalr1.cc  */
-#line 2142 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2134 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
     }
@@ -4436,8 +4416,8 @@
 
   case 164:
 
-/* Line 678 of lalr1.cc  */
-#line 2147 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2139 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       BlockBody* blk = static_cast<BlockBody*>((yysemantic_stack_[(2) - (1)].expr));
 
@@ -4449,8 +4429,8 @@
 
   case 165:
 
-/* Line 678 of lalr1.cc  */
-#line 2159 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2151 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       BlockBody* blk = new BlockBody(LOC((yyloc)));
       blk->add((yysemantic_stack_[(1) - (1)].expr));
@@ -4460,8 +4440,8 @@
 
   case 166:
 
-/* Line 678 of lalr1.cc  */
-#line 2166 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2158 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       BlockBody* blk = static_cast<BlockBody*>((yysemantic_stack_[(2) - (1)].expr));
 
@@ -4473,8 +4453,8 @@
 
   case 179:
 
-/* Line 678 of lalr1.cc  */
-#line 2195 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2187 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.expr) = (yysemantic_stack_[(3) - (2)].expr);
     }
@@ -4482,8 +4462,8 @@
 
   case 180:
 
-/* Line 678 of lalr1.cc  */
-#line 2200 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2192 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.expr) = new BlockBody(LOC((yyloc)));
     }
@@ -4491,8 +4471,8 @@
 
   case 181:
 
-/* Line 678 of lalr1.cc  */
-#line 2208 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2200 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       if (dynamic_cast<BlockBody*>((yysemantic_stack_[(3) - (2)].expr)) == NULL)
       {
@@ -4509,8 +4489,8 @@
 
   case 182:
 
-/* Line 678 of lalr1.cc  */
-#line 2225 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2217 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.expr) = (yysemantic_stack_[(3) - (2)].expr);
     }
@@ -4518,8 +4498,8 @@
 
   case 183:
 
-/* Line 678 of lalr1.cc  */
-#line 2233 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2225 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.expr) = (yysemantic_stack_[(2) - (1)].expr);
     }
@@ -4527,8 +4507,8 @@
 
   case 184:
 
-/* Line 678 of lalr1.cc  */
-#line 2241 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2233 "/home/jsoniq/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));
@@ -4538,8 +4518,8 @@
 
   case 185:
 
-/* Line 678 of lalr1.cc  */
-#line 2248 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2240 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       VarDeclStmt* vdecl = new VarDeclStmt(LOC((yyloc)), NULL);
       vdecl->add((yysemantic_stack_[(2) - (2)].node));
@@ -4549,8 +4529,8 @@
 
   case 186:
 
-/* Line 678 of lalr1.cc  */
-#line 2255 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2247 "/home/jsoniq/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));
@@ -4560,8 +4540,8 @@
 
   case 187:
 
-/* Line 678 of lalr1.cc  */
-#line 2265 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2257 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       VarDecl* vd = new VarDecl(LOC((yyloc)),
                                 static_cast<QName*>((yysemantic_stack_[(2) - (2)].expr)),
@@ -4577,8 +4557,8 @@
 
   case 188:
 
-/* Line 678 of lalr1.cc  */
-#line 2277 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2269 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       VarDecl* vd = new VarDecl(LOC((yyloc)),
                                 static_cast<QName*>((yysemantic_stack_[(3) - (2)].expr)),
@@ -4595,8 +4575,8 @@
 
   case 189:
 
-/* Line 678 of lalr1.cc  */
-#line 2290 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2282 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       VarDecl* vd = new VarDecl(LOC((yyloc)),
                                 static_cast<QName*>((yysemantic_stack_[(4) - (2)].expr)),
@@ -4612,8 +4592,8 @@
 
   case 190:
 
-/* Line 678 of lalr1.cc  */
-#line 2302 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2294 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       VarDecl* vd = new VarDecl(LOC((yyloc)),
                                 static_cast<QName*>((yysemantic_stack_[(5) - (2)].expr)),
@@ -4629,8 +4609,8 @@
 
   case 191:
 
-/* Line 678 of lalr1.cc  */
-#line 2318 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2310 "/home/jsoniq/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));
     }
@@ -4638,8 +4618,8 @@
 
   case 192:
 
-/* Line 678 of lalr1.cc  */
-#line 2326 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2318 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.expr) = new ApplyExpr(LOC((yyloc)), (yysemantic_stack_[(2) - (1)].expr));
     }
@@ -4647,8 +4627,8 @@
 
   case 193:
 
-/* Line 678 of lalr1.cc  */
-#line 2334 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2326 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.expr) = new ExitExpr(LOC((yyloc)), (yysemantic_stack_[(4) - (3)].expr));
     }
@@ -4656,8 +4636,8 @@
 
   case 194:
 
-/* Line 678 of lalr1.cc  */
-#line 2342 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2334 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       BlockBody* bb = dynamic_cast<BlockBody *>((yysemantic_stack_[(5) - (5)].expr));
       if (bb == NULL)
@@ -4672,8 +4652,8 @@
 
   case 195:
 
-/* Line 678 of lalr1.cc  */
-#line 2357 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2349 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.expr) = new FlowCtlStatement(LOC((yyloc)), FlowCtlStatement::BREAK);
     }
@@ -4681,8 +4661,8 @@
 
   case 196:
 
-/* Line 678 of lalr1.cc  */
-#line 2362 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2354 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.expr) = new FlowCtlStatement( LOC((yyloc)), FlowCtlStatement::CONTINUE );
     }
@@ -4690,8 +4670,8 @@
 
   case 197:
 
-/* Line 678 of lalr1.cc  */
-#line 2370 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2362 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       ReturnExpr* re = dynamic_cast<ReturnExpr*>((yysemantic_stack_[(2) - (2)].expr));
       (yyval.expr) = new FLWORExpr(LOC((yyloc)),
@@ -4705,8 +4685,8 @@
 
   case 198:
 
-/* Line 678 of lalr1.cc  */
-#line 2384 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2376 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       exprnode* retExpr = (yysemantic_stack_[(2) - (2)].expr);
 
@@ -4723,8 +4703,8 @@
 
   case 199:
 
-/* Line 678 of lalr1.cc  */
-#line 2401 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2393 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       exprnode* thenExpr = (yysemantic_stack_[(8) - (6)].expr);
       exprnode* elseExpr = (yysemantic_stack_[(8) - (8)].expr);
@@ -4749,8 +4729,8 @@
 
   case 200:
 
-/* Line 678 of lalr1.cc  */
-#line 2426 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2418 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.expr) = new TryExpr(LOC((yyloc)), (yysemantic_stack_[(3) - (2)].expr), (yysemantic_stack_[(3) - (3)].expr));
     }
@@ -4758,8 +4738,8 @@
 
   case 201:
 
-/* Line 678 of lalr1.cc  */
-#line 2434 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2426 "/home/jsoniq/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)) );
@@ -4769,8 +4749,8 @@
 
   case 202:
 
-/* Line 678 of lalr1.cc  */
-#line 2441 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2433 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       CatchListExpr *cle = dynamic_cast<CatchListExpr*>((yysemantic_stack_[(2) - (1)].expr));
       if ( cle )
@@ -4781,8 +4761,8 @@
 
   case 203:
 
-/* Line 678 of lalr1.cc  */
-#line 2452 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2444 "/home/jsoniq/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);
@@ -4791,8 +4771,8 @@
 
   case 204:
 
-/* Line 678 of lalr1.cc  */
-#line 2462 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2454 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
     }
@@ -4800,8 +4780,8 @@
 
   case 205:
 
-/* Line 678 of lalr1.cc  */
-#line 2467 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2459 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       Expr* expr = dynamic_cast<Expr*>((yysemantic_stack_[(3) - (1)].expr));
       if ( !expr )
@@ -4816,8 +4796,8 @@
 
   case 219:
 
-/* Line 678 of lalr1.cc  */
-#line 2505 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2497 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       ReturnExpr *re = dynamic_cast<ReturnExpr*>((yysemantic_stack_[(2) - (2)].expr));
       (yyval.expr) = new FLWORExpr(LOC((yyloc)),
@@ -4831,8 +4811,8 @@
 
   case 220:
 
-/* Line 678 of lalr1.cc  */
-#line 2519 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2511 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.expr) = new ReturnExpr( LOC((yyloc)), (yysemantic_stack_[(2) - (2)].expr) );
     }
@@ -4840,8 +4820,8 @@
 
   case 221:
 
-/* Line 678 of lalr1.cc  */
-#line 2527 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2519 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.strval) = parser::the_sliding;
     }
@@ -4849,8 +4829,8 @@
 
   case 222:
 
-/* Line 678 of lalr1.cc  */
-#line 2532 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2524 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.strval) = parser::the_tumbling;
     }
@@ -4858,8 +4838,8 @@
 
   case 223:
 
-/* Line 678 of lalr1.cc  */
-#line 2540 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2532 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.strval) = parser::the_start;
     }
@@ -4867,8 +4847,8 @@
 
   case 224:
 
-/* Line 678 of lalr1.cc  */
-#line 2545 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2537 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.strval) = parser::the_end;
     }
@@ -4876,8 +4856,8 @@
 
   case 225:
 
-/* Line 678 of lalr1.cc  */
-#line 2550 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2542 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
     (yyval.strval) = parser::the_only_end;
   }
@@ -4885,8 +4865,8 @@
 
   case 226:
 
-/* Line 678 of lalr1.cc  */
-#line 2558 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2550 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new FLWORWinCond(LOC((yyloc)),
                             dynamic_cast<WindowVars*>((yysemantic_stack_[(4) - (2)].node)),
@@ -4898,8 +4878,8 @@
 
   case 227:
 
-/* Line 678 of lalr1.cc  */
-#line 2567 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2559 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new FLWORWinCond(LOC((yyloc)),
                             NULL,
@@ -4911,8 +4891,8 @@
 
   case 228:
 
-/* Line 678 of lalr1.cc  */
-#line 2579 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2571 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new WindowClause (LOC ((yyloc)),
                              ((yysemantic_stack_[(5) - (2)].strval) == parser::the_tumbling ?
@@ -4926,8 +4906,8 @@
 
   case 229:
 
-/* Line 678 of lalr1.cc  */
-#line 2589 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2581 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new WindowClause (LOC ((yyloc)),
                              ((yysemantic_stack_[(4) - (2)].strval) == parser::the_tumbling ?
@@ -4940,8 +4920,8 @@
 
   case 230:
 
-/* Line 678 of lalr1.cc  */
-#line 2602 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2594 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new CountClause(LOC((yyloc)), static_cast<QName*>((yysemantic_stack_[(3) - (3)].expr)));
     }
@@ -4949,8 +4929,8 @@
 
   case 239:
 
-/* Line 678 of lalr1.cc  */
-#line 2626 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2618 "/home/jsoniq/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)) );
@@ -4960,8 +4940,8 @@
 
   case 240:
 
-/* Line 678 of lalr1.cc  */
-#line 2633 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2625 "/home/jsoniq/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)) );
@@ -4971,8 +4951,8 @@
 
   case 241:
 
-/* Line 678 of lalr1.cc  */
-#line 2643 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2635 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new ForClause(LOC((yyloc)), dynamic_cast<VarInDeclList*>((yysemantic_stack_[(3) - (3)].node)));
     }
@@ -4980,8 +4960,8 @@
 
   case 242:
 
-/* Line 678 of lalr1.cc  */
-#line 2651 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2643 "/home/jsoniq/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)) );
@@ -4991,8 +4971,8 @@
 
   case 243:
 
-/* Line 678 of lalr1.cc  */
-#line 2658 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2650 "/home/jsoniq/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)) );
@@ -5002,8 +4982,8 @@
 
   case 244:
 
-/* Line 678 of lalr1.cc  */
-#line 2668 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2660 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new VarInDecl(LOC((yyloc)),
                          static_cast<QName*>((yysemantic_stack_[(3) - (1)].expr)),
@@ -5017,8 +4997,8 @@
 
   case 245:
 
-/* Line 678 of lalr1.cc  */
-#line 2678 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2670 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new VarInDecl(LOC((yyloc)),
                          static_cast<QName*>((yysemantic_stack_[(5) - (1)].expr)),
@@ -5032,8 +5012,8 @@
 
   case 246:
 
-/* Line 678 of lalr1.cc  */
-#line 2688 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2680 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new VarInDecl(LOC((yyloc)),
                          static_cast<QName*>((yysemantic_stack_[(4) - (1)].expr)),
@@ -5047,8 +5027,8 @@
 
   case 247:
 
-/* Line 678 of lalr1.cc  */
-#line 2698 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2690 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new VarInDecl(LOC((yyloc)),
                          static_cast<QName*>((yysemantic_stack_[(6) - (1)].expr)),
@@ -5062,8 +5042,8 @@
 
   case 248:
 
-/* Line 678 of lalr1.cc  */
-#line 2708 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2700 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new VarInDecl(LOC((yyloc)),
                          static_cast<QName*>((yysemantic_stack_[(4) - (1)].expr)),
@@ -5077,8 +5057,8 @@
 
   case 249:
 
-/* Line 678 of lalr1.cc  */
-#line 2718 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2710 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new VarInDecl(LOC((yyloc)),
                          static_cast<QName*>((yysemantic_stack_[(6) - (1)].expr)),
@@ -5092,8 +5072,8 @@
 
   case 250:
 
-/* Line 678 of lalr1.cc  */
-#line 2728 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2720 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new VarInDecl(LOC((yyloc)),
                          static_cast<QName*>((yysemantic_stack_[(5) - (1)].expr)),
@@ -5107,8 +5087,8 @@
 
   case 251:
 
-/* Line 678 of lalr1.cc  */
-#line 2738 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2730 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new VarInDecl(LOC((yyloc)),
                          static_cast<QName*>((yysemantic_stack_[(7) - (1)].expr)),
@@ -5122,8 +5102,8 @@
 
   case 252:
 
-/* Line 678 of lalr1.cc  */
-#line 2749 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2741 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new VarInDecl(LOC((yyloc)),
                          static_cast<QName*>((yysemantic_stack_[(4) - (1)].expr)),
@@ -5136,8 +5116,8 @@
 
   case 253:
 
-/* Line 678 of lalr1.cc  */
-#line 2758 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2750 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new VarInDecl(LOC((yyloc)),
                          static_cast<QName*>((yysemantic_stack_[(5) - (1)].expr)),
@@ -5151,8 +5131,8 @@
 
   case 254:
 
-/* Line 678 of lalr1.cc  */
-#line 2768 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2760 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new VarInDecl(LOC ((yyloc)),
                          static_cast<QName*>((yysemantic_stack_[(5) - (1)].expr)),
@@ -5166,8 +5146,8 @@
 
   case 255:
 
-/* Line 678 of lalr1.cc  */
-#line 2778 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2770 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new VarInDecl(LOC ((yyloc)),
                          static_cast<QName*>((yysemantic_stack_[(6) - (1)].expr)),
@@ -5181,8 +5161,8 @@
 
   case 256:
 
-/* Line 678 of lalr1.cc  */
-#line 2794 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2786 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new PositionalVar(LOC((yyloc)), static_cast<QName*>((yysemantic_stack_[(3) - (3)].expr)));
     }
@@ -5190,8 +5170,8 @@
 
   case 257:
 
-/* Line 678 of lalr1.cc  */
-#line 2803 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2795 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new FTScoreVar(LOC((yyloc)), static_cast<QName*>((yysemantic_stack_[(3) - (3)].expr)));
     }
@@ -5199,8 +5179,8 @@
 
   case 258:
 
-/* Line 678 of lalr1.cc  */
-#line 2812 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2804 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new LetClause( LOC((yyloc)), dynamic_cast<VarGetsDeclList*>((yysemantic_stack_[(2) - (2)].node)) );
         }
@@ -5208,8 +5188,8 @@
 
   case 259:
 
-/* Line 678 of lalr1.cc  */
-#line 2820 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2812 "/home/jsoniq/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)) );
@@ -5219,8 +5199,8 @@
 
   case 260:
 
-/* Line 678 of lalr1.cc  */
-#line 2826 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2818 "/home/jsoniq/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)) );
@@ -5230,8 +5210,8 @@
 
   case 261:
 
-/* Line 678 of lalr1.cc  */
-#line 2838 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2830 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new VarGetsDecl(LOC ((yyloc)),
                            static_cast<QName*>((yysemantic_stack_[(4) - (2)].expr)),
@@ -5243,8 +5223,8 @@
 
   case 262:
 
-/* Line 678 of lalr1.cc  */
-#line 2846 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2838 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new VarGetsDecl(LOC ((yyloc)),
                            static_cast<QName*>((yysemantic_stack_[(5) - (2)].expr)),
@@ -5256,8 +5236,8 @@
 
   case 263:
 
-/* Line 678 of lalr1.cc  */
-#line 2856 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2848 "/home/jsoniq/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(),
@@ -5269,8 +5249,8 @@
 
   case 264:
 
-/* Line 678 of lalr1.cc  */
-#line 2864 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2856 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new VarGetsDecl(LOC ((yyloc)),
                            static_cast<QName*>((yysemantic_stack_[(6) - (2)].expr)),
@@ -5282,8 +5262,8 @@
 
   case 265:
 
-/* Line 678 of lalr1.cc  */
-#line 2876 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2868 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new WindowVarDecl(LOC ((yyloc)),
                              static_cast<QName*>((yysemantic_stack_[(4) - (2)].expr)),
@@ -5293,8 +5273,8 @@
 
   case 266:
 
-/* Line 678 of lalr1.cc  */
-#line 2882 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2874 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new WindowVarDecl(LOC ((yyloc)),
                              static_cast<QName*>((yysemantic_stack_[(5) - (2)].expr)),
@@ -5305,8 +5285,8 @@
 
   case 268:
 
-/* Line 678 of lalr1.cc  */
-#line 2895 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2887 "/home/jsoniq/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);
     }
@@ -5314,8 +5294,8 @@
 
   case 269:
 
-/* Line 678 of lalr1.cc  */
-#line 2899 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2891 "/home/jsoniq/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)));
@@ -5324,8 +5304,8 @@
 
   case 270:
 
-/* Line 678 of lalr1.cc  */
-#line 2907 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2899 "/home/jsoniq/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);
     }
@@ -5333,8 +5313,8 @@
 
   case 271:
 
-/* Line 678 of lalr1.cc  */
-#line 2911 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2903 "/home/jsoniq/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)));
@@ -5343,8 +5323,8 @@
 
   case 273:
 
-/* Line 678 of lalr1.cc  */
-#line 2920 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2912 "/home/jsoniq/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)));
     }
@@ -5352,8 +5332,8 @@
 
   case 274:
 
-/* Line 678 of lalr1.cc  */
-#line 2924 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2916 "/home/jsoniq/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)));
     }
@@ -5361,8 +5341,8 @@
 
   case 275:
 
-/* Line 678 of lalr1.cc  */
-#line 2928 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2920 "/home/jsoniq/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);
     }
@@ -5370,8 +5350,8 @@
 
   case 276:
 
-/* Line 678 of lalr1.cc  */
-#line 2938 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2930 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new WhereClause(LOC ((yyloc)), (yysemantic_stack_[(2) - (2)].expr));
     }
@@ -5379,8 +5359,8 @@
 
   case 277:
 
-/* Line 678 of lalr1.cc  */
-#line 2946 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2938 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new GroupByClause(LOC((yyloc)), dynamic_cast<GroupSpecList*>((yysemantic_stack_[(3) - (3)].node)));
     }
@@ -5388,8 +5368,8 @@
 
   case 278:
 
-/* Line 678 of lalr1.cc  */
-#line 2953 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2945 "/home/jsoniq/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)) );
@@ -5399,8 +5379,8 @@
 
   case 279:
 
-/* Line 678 of lalr1.cc  */
-#line 2959 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2951 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             GroupSpecList *gsl = dynamic_cast<GroupSpecList*>((yysemantic_stack_[(3) - (1)].node));
             if ( gsl )
@@ -5411,8 +5391,8 @@
 
   case 280:
 
-/* Line 678 of lalr1.cc  */
-#line 2970 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2962 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new GroupSpec(LOC((yyloc)), static_cast<QName*>((yysemantic_stack_[(2) - (2)].expr)), NULL);
     }
@@ -5420,8 +5400,8 @@
 
   case 281:
 
-/* Line 678 of lalr1.cc  */
-#line 2974 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2966 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new GroupSpec(LOC((yyloc)),
                          static_cast<QName*>((yysemantic_stack_[(3) - (2)].expr)),
@@ -5431,8 +5411,8 @@
 
   case 282:
 
-/* Line 678 of lalr1.cc  */
-#line 2983 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2975 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new GroupCollationSpec( LOC((yyloc)), SYMTAB((yysemantic_stack_[(2) - (2)].sval)) );
         }
@@ -5440,8 +5420,8 @@
 
   case 283:
 
-/* Line 678 of lalr1.cc  */
-#line 2991 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2983 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new OrderByClause(
                 LOC((yyloc)), dynamic_cast<OrderSpecList*>((yysemantic_stack_[(3) - (3)].node))
@@ -5451,8 +5431,8 @@
 
   case 284:
 
-/* Line 678 of lalr1.cc  */
-#line 2997 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2989 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new OrderByClause(
                 LOC((yyloc)), dynamic_cast<OrderSpecList*>((yysemantic_stack_[(4) - (4)].node)), true
@@ -5462,8 +5442,8 @@
 
   case 285:
 
-/* Line 678 of lalr1.cc  */
-#line 3007 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 2999 "/home/jsoniq/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)) );
@@ -5473,8 +5453,8 @@
 
   case 286:
 
-/* Line 678 of lalr1.cc  */
-#line 3013 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3005 "/home/jsoniq/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)) );
@@ -5484,8 +5464,8 @@
 
   case 287:
 
-/* Line 678 of lalr1.cc  */
-#line 3023 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3015 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new OrderSpec( LOC((yyloc)), (yysemantic_stack_[(1) - (1)].expr), NULL );
         }
@@ -5493,8 +5473,8 @@
 
   case 288:
 
-/* Line 678 of lalr1.cc  */
-#line 3027 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3019 "/home/jsoniq/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))
@@ -5504,8 +5484,8 @@
 
   case 289:
 
-/* Line 678 of lalr1.cc  */
-#line 3037 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3029 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new OrderModifierPN(
                 LOC((yyloc)), dynamic_cast<OrderDirSpec*>((yysemantic_stack_[(1) - (1)].node)), NULL, NULL
@@ -5515,8 +5495,8 @@
 
   case 290:
 
-/* Line 678 of lalr1.cc  */
-#line 3043 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3035 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new OrderModifierPN(
                 LOC((yyloc)), NULL, dynamic_cast<OrderEmptySpec*>((yysemantic_stack_[(1) - (1)].node)), NULL
@@ -5526,8 +5506,8 @@
 
   case 291:
 
-/* Line 678 of lalr1.cc  */
-#line 3049 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3041 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new OrderModifierPN(
                 LOC((yyloc)), NULL, NULL, dynamic_cast<OrderCollationSpec*>((yysemantic_stack_[(1) - (1)].node))
@@ -5537,8 +5517,8 @@
 
   case 292:
 
-/* Line 678 of lalr1.cc  */
-#line 3055 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3047 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new OrderModifierPN(
                 LOC((yyloc)),
@@ -5551,8 +5531,8 @@
 
   case 293:
 
-/* Line 678 of lalr1.cc  */
-#line 3064 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3056 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new OrderModifierPN(
                 LOC((yyloc)),
@@ -5565,8 +5545,8 @@
 
   case 294:
 
-/* Line 678 of lalr1.cc  */
-#line 3073 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3065 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new OrderModifierPN(
                 LOC((yyloc)),
@@ -5579,8 +5559,8 @@
 
   case 295:
 
-/* Line 678 of lalr1.cc  */
-#line 3082 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3074 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new OrderModifierPN(
                 LOC((yyloc)),
@@ -5593,8 +5573,8 @@
 
   case 296:
 
-/* Line 678 of lalr1.cc  */
-#line 3095 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3087 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new OrderDirSpec( LOC((yyloc)), ParseConstants::dir_ascending );
         }
@@ -5602,8 +5582,8 @@
 
   case 297:
 
-/* Line 678 of lalr1.cc  */
-#line 3099 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3091 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new OrderDirSpec( LOC((yyloc)), ParseConstants::dir_descending );
         }
@@ -5611,8 +5591,8 @@
 
   case 298:
 
-/* Line 678 of lalr1.cc  */
-#line 3107 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3099 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new OrderEmptySpec(
                 LOC((yyloc)), StaticContextConsts::empty_greatest
@@ -5622,8 +5602,8 @@
 
   case 299:
 
-/* Line 678 of lalr1.cc  */
-#line 3113 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3105 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new OrderEmptySpec(
                 LOC((yyloc)), StaticContextConsts::empty_least
@@ -5633,8 +5613,8 @@
 
   case 300:
 
-/* Line 678 of lalr1.cc  */
-#line 3123 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3115 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new OrderCollationSpec( LOC((yyloc)), SYMTAB((yysemantic_stack_[(2) - (2)].sval)) );
         }
@@ -5642,8 +5622,8 @@
 
   case 301:
 
-/* Line 678 of lalr1.cc  */
-#line 3131 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3123 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.expr) = new QuantifiedExpr(
                 LOC((yyloc)),
@@ -5656,8 +5636,8 @@
 
   case 302:
 
-/* Line 678 of lalr1.cc  */
-#line 3140 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3132 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.expr) = new QuantifiedExpr(
                 LOC((yyloc)),
@@ -5670,8 +5650,8 @@
 
   case 303:
 
-/* Line 678 of lalr1.cc  */
-#line 3153 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3145 "/home/jsoniq/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)) );
@@ -5682,8 +5662,8 @@
 
   case 304:
 
-/* Line 678 of lalr1.cc  */
-#line 3160 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3152 "/home/jsoniq/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)) );
@@ -5693,8 +5673,8 @@
 
   case 305:
 
-/* Line 678 of lalr1.cc  */
-#line 3172 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3164 "/home/jsoniq/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));
     }
@@ -5702,8 +5682,8 @@
 
   case 306:
 
-/* Line 678 of lalr1.cc  */
-#line 3176 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3168 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new QVarInDecl(LOC((yyloc)),
                           static_cast<QName*>((yysemantic_stack_[(4) - (1)].expr)),
@@ -5714,8 +5694,8 @@
 
   case 307:
 
-/* Line 678 of lalr1.cc  */
-#line 3188 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3180 "/home/jsoniq/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));
     }
@@ -5723,8 +5703,8 @@
 
   case 308:
 
-/* Line 678 of lalr1.cc  */
-#line 3195 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3187 "/home/jsoniq/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)));
@@ -5734,8 +5714,8 @@
 
   case 309:
 
-/* Line 678 of lalr1.cc  */
-#line 3201 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3193 "/home/jsoniq/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)));
@@ -5745,8 +5725,8 @@
 
   case 310:
 
-/* Line 678 of lalr1.cc  */
-#line 3210 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3202 "/home/jsoniq/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));
     }
@@ -5754,8 +5734,8 @@
 
   case 311:
 
-/* Line 678 of lalr1.cc  */
-#line 3217 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3209 "/home/jsoniq/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));
@@ -5765,8 +5745,8 @@
 
   case 312:
 
-/* Line 678 of lalr1.cc  */
-#line 3223 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3215 "/home/jsoniq/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));
@@ -5776,8 +5756,8 @@
 
   case 313:
 
-/* Line 678 of lalr1.cc  */
-#line 3234 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3226 "/home/jsoniq/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));
     }
@@ -5785,8 +5765,8 @@
 
   case 314:
 
-/* Line 678 of lalr1.cc  */
-#line 3241 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3233 "/home/jsoniq/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)));
@@ -5796,8 +5776,8 @@
 
   case 315:
 
-/* Line 678 of lalr1.cc  */
-#line 3247 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3239 "/home/jsoniq/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)));
@@ -5807,8 +5787,8 @@
 
   case 316:
 
-/* Line 678 of lalr1.cc  */
-#line 3256 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3248 "/home/jsoniq/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));
     }
@@ -5816,8 +5796,8 @@
 
   case 317:
 
-/* Line 678 of lalr1.cc  */
-#line 3265 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3257 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.expr) = new TypeswitchExpr(LOC((yyloc)),
                               (yysemantic_stack_[(8) - (3)].expr),
@@ -5828,8 +5808,8 @@
 
   case 318:
 
-/* Line 678 of lalr1.cc  */
-#line 3272 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3264 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.expr) = new TypeswitchExpr(LOC ((yyloc)),
                               (yysemantic_stack_[(10) - (3)].expr),
@@ -5841,8 +5821,8 @@
 
   case 319:
 
-/* Line 678 of lalr1.cc  */
-#line 3283 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3275 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.expr) = new TypeswitchExpr(LOC((yyloc)),
                               (yysemantic_stack_[(8) - (3)].expr),
@@ -5853,8 +5833,8 @@
 
   case 320:
 
-/* Line 678 of lalr1.cc  */
-#line 3290 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3282 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.expr) = new TypeswitchExpr(LOC ((yyloc)),
                               (yysemantic_stack_[(10) - (3)].expr),
@@ -5866,8 +5846,8 @@
 
   case 321:
 
-/* Line 678 of lalr1.cc  */
-#line 3302 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3294 "/home/jsoniq/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)));
@@ -5877,8 +5857,8 @@
 
   case 322:
 
-/* Line 678 of lalr1.cc  */
-#line 3308 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3300 "/home/jsoniq/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)));
@@ -5888,8 +5868,8 @@
 
   case 323:
 
-/* Line 678 of lalr1.cc  */
-#line 3320 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3312 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new CaseClause(LOC ((yyloc)),
                           dynamic_cast<SequenceType*>((yysemantic_stack_[(4) - (2)].node)),
@@ -5899,8 +5879,8 @@
 
   case 324:
 
-/* Line 678 of lalr1.cc  */
-#line 3326 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3318 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new CaseClause(LOC ((yyloc)),
                           static_cast<QName*>((yysemantic_stack_[(7) - (3)].expr)),
@@ -5911,8 +5891,8 @@
 
   case 325:
 
-/* Line 678 of lalr1.cc  */
-#line 3337 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3329 "/home/jsoniq/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)));
@@ -5922,8 +5902,8 @@
 
   case 326:
 
-/* Line 678 of lalr1.cc  */
-#line 3343 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3335 "/home/jsoniq/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)));
@@ -5933,8 +5913,8 @@
 
   case 327:
 
-/* Line 678 of lalr1.cc  */
-#line 3354 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3346 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new CaseClause(LOC ((yyloc)),
                           dynamic_cast<SequenceType*>((yysemantic_stack_[(4) - (2)].node)),
@@ -5944,8 +5924,8 @@
 
   case 328:
 
-/* Line 678 of lalr1.cc  */
-#line 3360 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3352 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new CaseClause(LOC ((yyloc)),
                           static_cast<QName*>((yysemantic_stack_[(7) - (3)].expr)),
@@ -5956,8 +5936,8 @@
 
   case 329:
 
-/* Line 678 of lalr1.cc  */
-#line 3371 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3363 "/home/jsoniq/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));
     }
@@ -5965,8 +5945,8 @@
 
   case 330:
 
-/* Line 678 of lalr1.cc  */
-#line 3380 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3372 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
     }
@@ -5974,8 +5954,8 @@
 
   case 331:
 
-/* Line 678 of lalr1.cc  */
-#line 3384 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3376 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.expr) = new OrExpr( LOC((yyloc)), (yysemantic_stack_[(3) - (1)].expr), (yysemantic_stack_[(3) - (3)].expr) );
     }
@@ -5983,8 +5963,8 @@
 
   case 332:
 
-/* Line 678 of lalr1.cc  */
-#line 3393 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3385 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
         }
@@ -5992,8 +5972,8 @@
 
   case 333:
 
-/* Line 678 of lalr1.cc  */
-#line 3397 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3389 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.expr) = new AndExpr( LOC((yyloc)), (yysemantic_stack_[(3) - (1)].expr), (yysemantic_stack_[(3) - (3)].expr) );
         }
@@ -6001,8 +5981,8 @@
 
   case 334:
 
-/* Line 678 of lalr1.cc  */
-#line 3405 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3397 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
         }
@@ -6010,8 +5990,8 @@
 
   case 335:
 
-/* Line 678 of lalr1.cc  */
-#line 3409 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3401 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             /*  ::=  "eq" | "ne" | "lt" | "le" | "gt" | "ge" */
             (yyval.expr) = new ComparisonExpr(
@@ -6025,8 +6005,8 @@
 
   case 336:
 
-/* Line 678 of lalr1.cc  */
-#line 3419 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3411 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             /*  ::=  "is" | "<<" | ">>" */
             (yyval.expr) = new ComparisonExpr(
@@ -6037,8 +6017,8 @@
 
   case 337:
 
-/* Line 678 of lalr1.cc  */
-#line 3426 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3418 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.expr) = new ComparisonExpr(
                 LOC((yyloc)),
@@ -6051,8 +6031,8 @@
 
   case 338:
 
-/* Line 678 of lalr1.cc  */
-#line 3435 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3427 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.expr) = new ComparisonExpr(
                 LOC((yyloc)),
@@ -6065,8 +6045,8 @@
 
   case 339:
 
-/* Line 678 of lalr1.cc  */
-#line 3444 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3436 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             /* this call is needed */
             driver.lexer->interpretAsLessThan();
@@ -6075,8 +6055,8 @@
 
   case 340:
 
-/* Line 678 of lalr1.cc  */
-#line 3449 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3441 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.expr) = new ComparisonExpr(
                 LOC((yyloc)),
@@ -6089,8 +6069,8 @@
 
   case 341:
 
-/* Line 678 of lalr1.cc  */
-#line 3458 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3450 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.expr) = new ComparisonExpr(
                 LOC((yyloc)),
@@ -6103,8 +6083,8 @@
 
   case 342:
 
-/* Line 678 of lalr1.cc  */
-#line 3467 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3459 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.expr) = new ComparisonExpr(
                 LOC((yyloc)),
@@ -6117,8 +6097,8 @@
 
   case 343:
 
-/* Line 678 of lalr1.cc  */
-#line 3476 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3468 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.expr) = new ComparisonExpr(
                 LOC((yyloc)),
@@ -6131,8 +6111,8 @@
 
   case 344:
 
-/* Line 678 of lalr1.cc  */
-#line 3489 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3481 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
         }
@@ -6140,8 +6120,8 @@
 
   case 345:
 
-/* Line 678 of lalr1.cc  */
-#line 3493 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3485 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.expr) = new FTContainsExpr(
                 LOC((yyloc)),
@@ -6154,8 +6134,8 @@
 
   case 346:
 
-/* Line 678 of lalr1.cc  */
-#line 3505 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3497 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = NULL;
         }
@@ -6163,8 +6143,8 @@
 
   case 347:
 
-/* Line 678 of lalr1.cc  */
-#line 3509 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3501 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
         }
@@ -6172,8 +6152,8 @@
 
   case 348:
 
-/* Line 678 of lalr1.cc  */
-#line 3516 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3508 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
         }
@@ -6181,8 +6161,8 @@
 
   case 349:
 
-/* Line 678 of lalr1.cc  */
-#line 3520 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3512 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.expr) = new RangeExpr( LOC((yyloc)), (yysemantic_stack_[(3) - (1)].expr), (yysemantic_stack_[(3) - (3)].expr) );
         }
@@ -6190,8 +6170,8 @@
 
   case 350:
 
-/* Line 678 of lalr1.cc  */
-#line 3528 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3519 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
         }
@@ -6199,157 +6179,155 @@
 
   case 351:
 
-/* Line 678 of lalr1.cc  */
-#line 3532 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3523 "/home/jsoniq/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 JSON_PairConstructor(LOC((yyloc)), (yysemantic_stack_[(3) - (1)].expr), (yysemantic_stack_[(3) - (3)].expr));
         }
     break;
 
   case 352:
 
-/* Line 678 of lalr1.cc  */
-#line 3536 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3531 "/home/jsoniq/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 3544 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3535 "/home/jsoniq/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 3548 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3539 "/home/jsoniq/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 3554 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3547 "/home/jsoniq/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 3560 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3551 "/home/jsoniq/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 3566 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3557 "/home/jsoniq/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 3576 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3563 "/home/jsoniq/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 3580 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3569 "/home/jsoniq/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 3584 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3579 "/home/jsoniq/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 3592 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3583 "/home/jsoniq/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 3596 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3587 "/home/jsoniq/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 3602 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3595 "/home/jsoniq/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 3612 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3599 "/home/jsoniq/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 3616 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3605 "/home/jsoniq/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 3626 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3615 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
         }
@@ -6357,10 +6335,10 @@
 
   case 367:
 
-/* Line 678 of lalr1.cc  */
-#line 3630 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3619 "/home/jsoniq/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))
             );
         }
@@ -6368,8 +6346,8 @@
 
   case 368:
 
-/* Line 678 of lalr1.cc  */
-#line 3640 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3629 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
         }
@@ -6377,19 +6355,19 @@
 
   case 369:
 
-/* Line 678 of lalr1.cc  */
-#line 3644 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3633 "/home/jsoniq/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 3654 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3643 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
         }
@@ -6397,10 +6375,10 @@
 
   case 371:
 
-/* Line 678 of lalr1.cc  */
-#line 3658 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3647 "/home/jsoniq/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))
             );
         }
@@ -6408,8 +6386,8 @@
 
   case 372:
 
-/* Line 678 of lalr1.cc  */
-#line 3668 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3657 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
         }
@@ -6417,44 +6395,64 @@
 
   case 373:
 
-/* Line 678 of lalr1.cc  */
-#line 3672 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3661 "/home/jsoniq/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 3680 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3671 "/home/jsoniq/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 3684 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3675 "/home/jsoniq/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 3688 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3683 "/home/jsoniq/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 3692 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3687 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+    {
+            (yyval.node) = new SignList( LOC((yyloc)), false );
+        }
+    break;
+
+  case 378:
+
+/* Line 690 of lalr1.cc  */
+#line 3691 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+    {
+            (yyval.node) = (yysemantic_stack_[(2) - (1)].node);
+        }
+    break;
+
+  case 379:
+
+/* Line 690 of lalr1.cc  */
+#line 3695 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             if ( SignList *sl = dynamic_cast<SignList*>((yysemantic_stack_[(2) - (1)].node)) )
                 sl->negate();
@@ -6462,28 +6460,10 @@
         }
     break;
 
-  case 378:
-
-/* Line 678 of lalr1.cc  */
-#line 3702 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-    {
-            (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
-        }
-    break;
-
-  case 379:
-
-/* Line 678 of lalr1.cc  */
-#line 3706 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-    {
-            (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
-        }
-    break;
-
   case 380:
 
-/* Line 678 of lalr1.cc  */
-#line 3710 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3705 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
         }
@@ -6491,116 +6471,134 @@
 
   case 381:
 
-/* Line 678 of lalr1.cc  */
-#line 3718 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3709 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+    {
+            (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
+        }
+    break;
+
+  case 382:
+
+/* Line 690 of lalr1.cc  */
+#line 3713 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+    {
+            (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
+        }
+    break;
+
+  case 383:
+
+/* Line 690 of lalr1.cc  */
+#line 3721 "/home/jsoniq/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 3722 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3725 "/home/jsoniq/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 3726 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3729 "/home/jsoniq/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 3730 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3733 "/home/jsoniq/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 3734 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3737 "/home/jsoniq/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 3738 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3741 "/home/jsoniq/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 3746 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3749 "/home/jsoniq/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 3750 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3753 "/home/jsoniq/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 3754 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3757 "/home/jsoniq/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 3762 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3765 "/home/jsoniq/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 3766 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3769 "/home/jsoniq/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 3770 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3773 "/home/jsoniq/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 3774 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3777 "/home/jsoniq/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)
@@ -6609,10 +6607,10 @@
         }
     break;
 
-  case 394:
+  case 396:
 
-/* Line 678 of lalr1.cc  */
-#line 3785 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3788 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.expr) = new ExtensionExpr(
                 LOC((yyloc)), dynamic_cast<PragmaList*>((yysemantic_stack_[(3) - (1)].node)), NULL
@@ -6620,10 +6618,10 @@
         }
     break;
 
-  case 395:
+  case 397:
 
-/* Line 678 of lalr1.cc  */
-#line 3791 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3794 "/home/jsoniq/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)
@@ -6631,10 +6629,10 @@
         }
     break;
 
-  case 396:
+  case 398:
 
-/* Line 678 of lalr1.cc  */
-#line 3801 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3804 "/home/jsoniq/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)) );
@@ -6642,10 +6640,10 @@
         }
     break;
 
-  case 397:
+  case 399:
 
-/* Line 678 of lalr1.cc  */
-#line 3807 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3810 "/home/jsoniq/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)) );
@@ -6653,46 +6651,46 @@
         }
     break;
 
-  case 398:
+  case 400:
 
-/* Line 678 of lalr1.cc  */
-#line 3817 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3820 "/home/jsoniq/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 3821 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3824 "/home/jsoniq/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 3825 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3828 "/home/jsoniq/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 3863 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3866 "/home/jsoniq/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 3867 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3870 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       RelativePathExpr* rpe;
 
@@ -6704,10 +6702,10 @@
     }
     break;
 
-  case 403:
+  case 405:
 
-/* Line 678 of lalr1.cc  */
-#line 3877 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3880 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       RelativePathExpr* rpe;
 
@@ -6719,10 +6717,10 @@
     }
     break;
 
-  case 404:
+  case 406:
 
-/* Line 678 of lalr1.cc  */
-#line 3887 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3890 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       RelativePathExpr* rpe = dynamic_cast<RelativePathExpr*>((yysemantic_stack_[(1) - (1)].expr));
       (yyval.expr) = (!rpe ?
@@ -6731,19 +6729,19 @@
     }
     break;
 
-  case 405:
+  case 407:
 
-/* Line 678 of lalr1.cc  */
-#line 3900 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3903 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.expr) = NULL;
     }
     break;
 
-  case 406:
+  case 408:
 
-/* Line 678 of lalr1.cc  */
-#line 3909 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3912 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       AxisStep* as = dynamic_cast<AxisStep*>((yysemantic_stack_[(1) - (1)].expr));
       (yyval.expr) = (as ?
@@ -6755,46 +6753,46 @@
     }
     break;
 
-  case 407:
+  case 409:
 
-/* Line 678 of lalr1.cc  */
-#line 3919 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3922 "/home/jsoniq/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), false);
     }
     break;
 
-  case 408:
+  case 410:
 
-/* Line 678 of lalr1.cc  */
-#line 3923 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3926 "/home/jsoniq/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), false);
     }
     break;
 
-  case 409:
-
-/* Line 678 of lalr1.cc  */
-#line 3932 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-    {
-      (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
-    }
-    break;
-
-  case 410:
-
-/* Line 678 of lalr1.cc  */
-#line 3936 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-    {
-      (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
-    }
-    break;
-
   case 411:
 
-/* Line 678 of lalr1.cc  */
-#line 3945 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3935 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+    {
+      (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
+    }
+    break;
+
+  case 412:
+
+/* Line 690 of lalr1.cc  */
+#line 3939 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+    {
+      (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
+    }
+    break;
+
+  case 413:
+
+/* Line 690 of lalr1.cc  */
+#line 3948 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.expr) = new AxisStep(
                 LOC((yyloc)), dynamic_cast<ForwardStep*>((yysemantic_stack_[(1) - (1)].node)), NULL
@@ -6802,10 +6800,10 @@
         }
     break;
 
-  case 412:
+  case 414:
 
-/* Line 678 of lalr1.cc  */
-#line 3951 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3954 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.expr) = new AxisStep(
                 LOC((yyloc)),
@@ -6815,10 +6813,10 @@
         }
     break;
 
-  case 413:
+  case 415:
 
-/* Line 678 of lalr1.cc  */
-#line 3959 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3962 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.expr) = new AxisStep(
                 LOC((yyloc)), dynamic_cast<ReverseStep*>((yysemantic_stack_[(1) - (1)].node)), NULL
@@ -6826,10 +6824,10 @@
         }
     break;
 
-  case 414:
+  case 416:
 
-/* Line 678 of lalr1.cc  */
-#line 3965 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3968 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.expr) = new AxisStep(
                 LOC((yyloc)),
@@ -6839,10 +6837,10 @@
         }
     break;
 
-  case 415:
+  case 417:
 
-/* Line 678 of lalr1.cc  */
-#line 3977 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3980 "/home/jsoniq/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)
@@ -6850,10 +6848,10 @@
         }
     break;
 
-  case 416:
+  case 418:
 
-/* Line 678 of lalr1.cc  */
-#line 3983 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3986 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new ForwardStep(
                 LOC((yyloc)), dynamic_cast<AbbrevForwardStep*>((yysemantic_stack_[(1) - (1)].node))
@@ -6861,46 +6859,46 @@
         }
     break;
 
-  case 417:
+  case 419:
 
-/* Line 678 of lalr1.cc  */
-#line 3993 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 3996 "/home/jsoniq/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 3997 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4000 "/home/jsoniq/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 4001 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4004 "/home/jsoniq/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 4005 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4008 "/home/jsoniq/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 4009 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4012 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new ForwardAxis(
                 LOC((yyloc)), ParseConstants::axis_descendant_or_self
@@ -6908,10 +6906,10 @@
         }
     break;
 
-  case 422:
+  case 424:
 
-/* Line 678 of lalr1.cc  */
-#line 4015 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4018 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new ForwardAxis(
                 LOC((yyloc)), ParseConstants::axis_following_sibling
@@ -6919,46 +6917,46 @@
         }
     break;
 
-  case 423:
+  case 425:
 
-/* Line 678 of lalr1.cc  */
-#line 4021 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4024 "/home/jsoniq/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 4029 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4032 "/home/jsoniq/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 4033 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4036 "/home/jsoniq/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 4041 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4044 "/home/jsoniq/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 4045 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4048 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             ReverseAxis *ra = new ReverseAxis(
                 LOC((yyloc)), ParseConstants::axis_parent
@@ -6967,28 +6965,28 @@
         }
     break;
 
-  case 428:
+  case 430:
 
-/* Line 678 of lalr1.cc  */
-#line 4056 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4059 "/home/jsoniq/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 4060 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4063 "/home/jsoniq/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 4064 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4067 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new ReverseAxis(
                 LOC((yyloc)), ParseConstants::axis_preceding_sibling
@@ -6996,19 +6994,19 @@
         }
     break;
 
-  case 431:
+  case 433:
 
-/* Line 678 of lalr1.cc  */
-#line 4070 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4073 "/home/jsoniq/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 4074 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4077 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new ReverseAxis(
                 LOC((yyloc)), ParseConstants::axis_ancestor_or_self
@@ -7016,118 +7014,118 @@
         }
     break;
 
-  case 433:
-
-/* Line 678 of lalr1.cc  */
-#line 4088 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-    {
-            (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
-        }
-    break;
-
-  case 434:
-
-/* Line 678 of lalr1.cc  */
-#line 4092 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-    {
-            (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
-        }
-    break;
-
   case 435:
 
-/* Line 678 of lalr1.cc  */
-#line 4100 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4091 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+    {
+            (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
+        }
+    break;
+
+  case 436:
+
+/* Line 690 of lalr1.cc  */
+#line 4095 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+    {
+            (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
+        }
+    break;
+
+  case 437:
+
+/* Line 690 of lalr1.cc  */
+#line 4103 "/home/jsoniq/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 4104 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4107 "/home/jsoniq/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 4114 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4117 "/home/jsoniq/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 4118 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4121 "/home/jsoniq/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 4122 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4125 "/home/jsoniq/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 4126 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4129 "/home/jsoniq/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 4135 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4138 "/home/jsoniq/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 4139 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4142 "/home/jsoniq/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 4143 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4146 "/home/jsoniq/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 4147 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4150 "/home/jsoniq/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 4155 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4158 "/home/jsoniq/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)) );
@@ -7135,10 +7133,10 @@
         }
     break;
 
-  case 446:
+  case 448:
 
-/* Line 678 of lalr1.cc  */
-#line 4161 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4164 "/home/jsoniq/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)) );
@@ -7146,37 +7144,19 @@
         }
     break;
 
-  case 447:
+  case 449:
 
-/* Line 678 of lalr1.cc  */
-#line 4171 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4174 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.expr) = (yysemantic_stack_[(3) - (2)].expr);
         }
     break;
 
-  case 448:
-
-/* Line 678 of lalr1.cc  */
-#line 4179 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-    {
-          (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
-        }
-    break;
-
-  case 449:
-
-/* Line 678 of lalr1.cc  */
-#line 4183 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-    {
-          (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
-        }
-    break;
-
   case 450:
 
-/* Line 678 of lalr1.cc  */
-#line 4187 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4182 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
           (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
         }
@@ -7184,8 +7164,8 @@
 
   case 451:
 
-/* Line 678 of lalr1.cc  */
-#line 4191 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4186 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
           (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
         }
@@ -7193,8 +7173,8 @@
 
   case 452:
 
-/* Line 678 of lalr1.cc  */
-#line 4195 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4190 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
           (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
         }
@@ -7202,8 +7182,8 @@
 
   case 453:
 
-/* Line 678 of lalr1.cc  */
-#line 4199 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4194 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
           (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
         }
@@ -7211,8 +7191,8 @@
 
   case 454:
 
-/* Line 678 of lalr1.cc  */
-#line 4203 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4198 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
           (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
         }
@@ -7220,8 +7200,8 @@
 
   case 455:
 
-/* Line 678 of lalr1.cc  */
-#line 4207 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4202 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
           (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
         }
@@ -7229,8 +7209,8 @@
 
   case 456:
 
-/* Line 678 of lalr1.cc  */
-#line 4211 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4206 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
           (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
         }
@@ -7238,8 +7218,8 @@
 
   case 457:
 
-/* Line 678 of lalr1.cc  */
-#line 4215 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4210 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
           (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
         }
@@ -7247,8 +7227,8 @@
 
   case 458:
 
-/* Line 678 of lalr1.cc  */
-#line 4219 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4214 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
           (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
         }
@@ -7256,26 +7236,44 @@
 
   case 459:
 
-/* Line 678 of lalr1.cc  */
-#line 4227 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4218 "/home/jsoniq/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 4231 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4222 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
-            (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
+          (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
         }
     break;
 
   case 461:
 
-/* Line 678 of lalr1.cc  */
-#line 4239 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4230 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+    {
+            (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
+        }
+    break;
+
+  case 462:
+
+/* Line 690 of lalr1.cc  */
+#line 4234 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+    {
+            (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
+        }
+    break;
+
+  case 463:
+
+/* Line 690 of lalr1.cc  */
+#line 4242 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.expr) = NumericLiteral::new_literal(
                 LOC((yyloc)), ParseConstants::num_decimal, *(yysemantic_stack_[(1) - (1)].decval)
@@ -7284,10 +7282,10 @@
         }
     break;
 
-  case 462:
+  case 464:
 
-/* Line 678 of lalr1.cc  */
-#line 4246 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4249 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.expr) = NumericLiteral::new_literal(
                 LOC((yyloc)), ParseConstants::num_integer, *(yysemantic_stack_[(1) - (1)].ival)
@@ -7296,10 +7294,10 @@
         }
     break;
 
-  case 463:
+  case 465:
 
-/* Line 678 of lalr1.cc  */
-#line 4253 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4256 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.expr) = NumericLiteral::new_literal(
                 LOC((yyloc)), ParseConstants::num_double, *(yysemantic_stack_[(1) - (1)].dval)
@@ -7308,73 +7306,73 @@
         }
     break;
 
-  case 464:
+  case 466:
 
-/* Line 678 of lalr1.cc  */
-#line 4264 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4267 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.expr) = new VarRef(LOC((yyloc)), static_cast<QName*>((yysemantic_stack_[(2) - (2)].expr)));
         }
     break;
 
-  case 465:
+  case 467:
 
-/* Line 678 of lalr1.cc  */
-#line 4272 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4275 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.expr) = new ParenthesizedExpr( LOC((yyloc)), NULL);
         }
     break;
 
-  case 466:
+  case 468:
 
-/* Line 678 of lalr1.cc  */
-#line 4276 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4279 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.expr) = new ParenthesizedExpr( LOC((yyloc)), (yysemantic_stack_[(3) - (2)].expr) );
         }
     break;
 
-  case 467:
+  case 469:
 
-/* Line 678 of lalr1.cc  */
-#line 4284 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4287 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.expr) = new ContextItemExpr( LOC((yyloc)) );
         }
     break;
 
-  case 468:
+  case 470:
 
-/* Line 678 of lalr1.cc  */
-#line 4292 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4295 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.expr) = new OrderedExpr( LOC((yyloc)), (yysemantic_stack_[(4) - (3)].expr) );
         }
     break;
 
-  case 469:
+  case 471:
 
-/* Line 678 of lalr1.cc  */
-#line 4300 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4303 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.expr) = new UnorderedExpr( LOC((yyloc)), (yysemantic_stack_[(4) - (3)].expr) );
         }
     break;
 
-  case 470:
+  case 472:
 
-/* Line 678 of lalr1.cc  */
-#line 4354 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4357 "/home/jsoniq/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 471:
+  case 473:
 
-/* Line 678 of lalr1.cc  */
-#line 4358 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4361 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.expr) = new FunctionCall(
                 LOC((yyloc)),
@@ -7384,10 +7382,10 @@
         }
     break;
 
-  case 472:
+  case 474:
 
-/* Line 678 of lalr1.cc  */
-#line 4371 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4374 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             ArgList *al = new ArgList( LOC((yyloc)) );
             al->push_back( (yysemantic_stack_[(1) - (1)].expr) );
@@ -7395,10 +7393,10 @@
         }
     break;
 
-  case 473:
+  case 475:
 
-/* Line 678 of lalr1.cc  */
-#line 4377 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4380 "/home/jsoniq/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) );
@@ -7406,28 +7404,10 @@
         }
     break;
 
-  case 474:
-
-/* Line 678 of lalr1.cc  */
-#line 4387 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-    {
-            (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
-        }
-    break;
-
-  case 475:
-
-/* Line 678 of lalr1.cc  */
-#line 4391 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-    {
-            (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
-        }
-    break;
-
   case 476:
 
-/* Line 678 of lalr1.cc  */
-#line 4399 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4390 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
         }
@@ -7435,8 +7415,8 @@
 
   case 477:
 
-/* Line 678 of lalr1.cc  */
-#line 4403 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4394 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
         }
@@ -7444,8 +7424,8 @@
 
   case 478:
 
-/* Line 678 of lalr1.cc  */
-#line 4407 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4402 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
         }
@@ -7453,8 +7433,26 @@
 
   case 479:
 
-/* Line 678 of lalr1.cc  */
-#line 4415 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4406 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+    {
+            (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
+        }
+    break;
+
+  case 480:
+
+/* Line 690 of lalr1.cc  */
+#line 4410 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+    {
+            (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
+        }
+    break;
+
+  case 481:
+
+/* Line 690 of lalr1.cc  */
+#line 4418 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.expr) = new DirElemConstructor(
                 LOC((yyloc)),
@@ -7466,10 +7464,10 @@
         }
     break;
 
-  case 480:
+  case 482:
 
-/* Line 678 of lalr1.cc  */
-#line 4425 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4428 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.expr) = new DirElemConstructor(
                 LOC((yyloc)),
@@ -7481,10 +7479,10 @@
         }
     break;
 
-  case 481:
+  case 483:
 
-/* Line 678 of lalr1.cc  */
-#line 4435 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4438 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.expr) = new DirElemConstructor(
                 LOC((yyloc)),
@@ -7496,10 +7494,10 @@
         }
     break;
 
-  case 482:
+  case 484:
 
-/* Line 678 of lalr1.cc  */
-#line 4445 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4448 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.expr) = new DirElemConstructor(
                 LOC((yyloc)),
@@ -7511,10 +7509,10 @@
         }
     break;
 
-  case 483:
+  case 485:
 
-/* Line 678 of lalr1.cc  */
-#line 4455 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4458 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.expr) = new DirElemConstructor(
                 LOC((yyloc)),
@@ -7526,10 +7524,10 @@
         }
     break;
 
-  case 484:
+  case 486:
 
-/* Line 678 of lalr1.cc  */
-#line 4465 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4468 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.expr) = new DirElemConstructor(
                 LOC((yyloc)),
@@ -7541,10 +7539,10 @@
         }
     break;
 
-  case 485:
+  case 487:
 
-/* Line 678 of lalr1.cc  */
-#line 4480 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4483 "/home/jsoniq/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)) );
@@ -7552,10 +7550,10 @@
         }
     break;
 
-  case 486:
+  case 488:
 
-/* Line 678 of lalr1.cc  */
-#line 4486 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4489 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             DirElemContentList *decl = dynamic_cast<DirElemContentList*>((yysemantic_stack_[(2) - (1)].node));
             if ( decl )
@@ -7564,10 +7562,10 @@
         }
     break;
 
-  case 487:
+  case 489:
 
-/* Line 678 of lalr1.cc  */
-#line 4497 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4500 "/home/jsoniq/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)) );
@@ -7575,10 +7573,10 @@
         }
     break;
 
-  case 488:
+  case 490:
 
-/* Line 678 of lalr1.cc  */
-#line 4503 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4506 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             DirAttributeList *dal = dynamic_cast<DirAttributeList*>((yysemantic_stack_[(2) - (1)].node));
             if ( dal )
@@ -7587,10 +7585,10 @@
         }
     break;
 
-  case 489:
+  case 491:
 
-/* Line 678 of lalr1.cc  */
-#line 4514 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4517 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new DirAttr(
                 LOC((yyloc)),
@@ -7600,114 +7598,114 @@
         }
     break;
 
-  case 492:
+  case 494:
 
-/* Line 678 of lalr1.cc  */
-#line 4531 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4534 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new DirAttributeValue( LOC((yyloc)),
                                 dynamic_cast<QuoteAttrContentList*>((yysemantic_stack_[(3) - (2)].node)));
         }
     break;
 
-  case 493:
+  case 495:
 
-/* Line 678 of lalr1.cc  */
-#line 4536 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4539 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new DirAttributeValue( LOC((yyloc)),
                                 dynamic_cast<AposAttrContentList*>((yysemantic_stack_[(3) - (2)].node)));
         }
     break;
 
-  case 494:
+  case 496:
 
-/* Line 678 of lalr1.cc  */
-#line 4545 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4548 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new QuoteAttrContentList( LOC((yyloc)) );
         }
     break;
 
-  case 495:
-
-/* Line 678 of lalr1.cc  */
-#line 4549 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-    {
-            (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
-        }
-    break;
-
-  case 496:
-
-/* Line 678 of lalr1.cc  */
-#line 4556 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-    {
-            QuoteAttrContentList *qacl = new QuoteAttrContentList( LOC((yyloc)) );
-            qacl->push_back( new QuoteAttrValueContent( LOC((yyloc)), "\"" ) );
-            (yyval.node) = qacl;
-        }
-    break;
-
   case 497:
 
-/* Line 678 of lalr1.cc  */
-#line 4562 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4552 "/home/jsoniq/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 498:
 
-/* Line 678 of lalr1.cc  */
-#line 4568 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4559 "/home/jsoniq/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 499:
 
-/* Line 678 of lalr1.cc  */
-#line 4576 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4565 "/home/jsoniq/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 500:
 
-/* Line 678 of lalr1.cc  */
-#line 4588 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4571 "/home/jsoniq/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 501:
 
-/* Line 678 of lalr1.cc  */
-#line 4592 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4579 "/home/jsoniq/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 502:
 
-/* Line 678 of lalr1.cc  */
-#line 4599 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4591 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+    {
+            (yyval.node) = new AposAttrContentList( LOC((yyloc)) );
+        }
+    break;
+
+  case 503:
+
+/* Line 690 of lalr1.cc  */
+#line 4595 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+    {
+            (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
+        }
+    break;
+
+  case 504:
+
+/* Line 690 of lalr1.cc  */
+#line 4602 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             AposAttrContentList *aacl = new AposAttrContentList( LOC((yyloc)) );
             aacl->push_back( new AposAttrValueContent( LOC((yyloc)),"'") );
@@ -7715,10 +7713,10 @@
         }
     break;
 
-  case 503:
+  case 505:
 
-/* Line 678 of lalr1.cc  */
-#line 4605 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4608 "/home/jsoniq/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)) );
@@ -7726,10 +7724,10 @@
         }
     break;
 
-  case 504:
+  case 506:
 
-/* Line 678 of lalr1.cc  */
-#line 4611 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4614 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             AposAttrContentList *aacl = dynamic_cast<AposAttrContentList*>((yysemantic_stack_[(2) - (1)].node));
             if (aacl)
@@ -7738,10 +7736,10 @@
         }
     break;
 
-  case 505:
+  case 507:
 
-/* Line 678 of lalr1.cc  */
-#line 4618 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4621 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             AposAttrContentList *aacl = dynamic_cast<AposAttrContentList*>((yysemantic_stack_[(2) - (1)].node));
             if ( aacl )
@@ -7750,19 +7748,19 @@
         }
     break;
 
-  case 506:
+  case 508:
 
-/* Line 678 of lalr1.cc  */
-#line 4629 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4632 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new QuoteAttrValueContent( LOC((yyloc)), SYMTAB((yysemantic_stack_[(1) - (1)].sval)) );
         }
     break;
 
-  case 507:
+  case 509:
 
-/* Line 678 of lalr1.cc  */
-#line 4633 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4636 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new QuoteAttrValueContent(
                 LOC((yyloc)), dynamic_cast<CommonContent*>((yysemantic_stack_[(1) - (1)].expr))
@@ -7770,19 +7768,19 @@
         }
     break;
 
-  case 508:
+  case 510:
 
-/* Line 678 of lalr1.cc  */
-#line 4643 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4646 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new AposAttrValueContent( LOC((yyloc)), SYMTAB((yysemantic_stack_[(1) - (1)].sval)) );
         }
     break;
 
-  case 509:
+  case 511:
 
-/* Line 678 of lalr1.cc  */
-#line 4647 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4650 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new AposAttrValueContent(
                 LOC((yyloc)), dynamic_cast<CommonContent*>((yysemantic_stack_[(1) - (1)].expr))
@@ -7790,48 +7788,48 @@
         }
     break;
 
-  case 510:
+  case 512:
 
-/* Line 678 of lalr1.cc  */
-#line 4657 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4660 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.expr) = new DirElemContent( LOC((yyloc)), (yysemantic_stack_[(1) - (1)].expr) );
         }
     break;
 
-  case 511:
+  case 513:
 
-/* Line 678 of lalr1.cc  */
-#line 4661 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4664 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.expr) = new DirElemContent( LOC((yyloc)), SYMTAB((yysemantic_stack_[(1) - (1)].sval)) );
         }
     break;
 
-  case 512:
+  case 514:
 
-/* Line 678 of lalr1.cc  */
-#line 4665 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4668 "/home/jsoniq/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 513:
+  case 515:
 
-/* Line 678 of lalr1.cc  */
-#line 4670 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4673 "/home/jsoniq/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 514:
+  case 516:
 
-/* Line 678 of lalr1.cc  */
-#line 4679 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4682 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.expr) = new CommonContent(
                 LOC((yyloc)), ParseConstants::cont_charref, SYMTAB((yysemantic_stack_[(1) - (1)].sval))
@@ -7839,10 +7837,10 @@
         }
     break;
 
-  case 515:
+  case 517:
 
-/* Line 678 of lalr1.cc  */
-#line 4685 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4688 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.expr) = new CommonContent(
                 LOC((yyloc)), ParseConstants::cont_escape_lbrace
@@ -7850,10 +7848,10 @@
         }
     break;
 
-  case 516:
+  case 518:
 
-/* Line 678 of lalr1.cc  */
-#line 4691 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4694 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.expr) = new CommonContent(
                 LOC((yyloc)), ParseConstants::cont_escape_rbrace
@@ -7861,82 +7859,64 @@
         }
     break;
 
-  case 517:
+  case 519:
 
-/* Line 678 of lalr1.cc  */
-#line 4697 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4700 "/home/jsoniq/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 518:
+  case 520:
 
-/* Line 678 of lalr1.cc  */
-#line 4705 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4708 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.expr) = new DirCommentConstructor( LOC((yyloc)), SYMTAB((yysemantic_stack_[(3) - (2)].sval)) );
     }
     break;
 
-  case 519:
+  case 521:
 
-/* Line 678 of lalr1.cc  */
-#line 4710 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4713 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.expr) = new DirCommentConstructor( LOC((yyloc)), "" );
     }
     break;
 
-  case 520:
+  case 522:
 
-/* Line 678 of lalr1.cc  */
-#line 4718 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4721 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.expr) = new DirPIConstructor( LOC((yyloc)), SYMTAB((yysemantic_stack_[(3) - (2)].sval)) );
     }
     break;
 
-  case 521:
+  case 523:
 
-/* Line 678 of lalr1.cc  */
-#line 4723 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4726 "/home/jsoniq/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 522:
+  case 524:
 
-/* Line 678 of lalr1.cc  */
-#line 4731 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4734 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.expr) = new CDataSection( LOC((yyloc)),SYMTAB((yysemantic_stack_[(2) - (2)].sval)) );
     }
     break;
 
-  case 523:
-
-/* Line 678 of lalr1.cc  */
-#line 4739 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-    {
-      (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
-    }
-    break;
-
-  case 524:
-
-/* Line 678 of lalr1.cc  */
-#line 4744 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-    {
-      (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
-    }
-    break;
-
   case 525:
 
-/* Line 678 of lalr1.cc  */
-#line 4749 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4742 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
     }
@@ -7944,8 +7924,8 @@
 
   case 526:
 
-/* Line 678 of lalr1.cc  */
-#line 4754 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4747 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
     }
@@ -7953,8 +7933,8 @@
 
   case 527:
 
-/* Line 678 of lalr1.cc  */
-#line 4759 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4752 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
     }
@@ -7962,8 +7942,8 @@
 
   case 528:
 
-/* Line 678 of lalr1.cc  */
-#line 4764 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4757 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
     }
@@ -7971,234 +7951,234 @@
 
   case 529:
 
-/* Line 678 of lalr1.cc  */
-#line 4773 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4762 "/home/jsoniq/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 530:
 
-/* Line 678 of lalr1.cc  */
-#line 4781 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4767 "/home/jsoniq/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 531:
 
-/* Line 678 of lalr1.cc  */
-#line 4785 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4776 "/home/jsoniq/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 532:
 
-/* Line 678 of lalr1.cc  */
-#line 4802 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4784 "/home/jsoniq/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 533:
 
-/* Line 678 of lalr1.cc  */
-#line 4806 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4788 "/home/jsoniq/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 534:
 
-/* Line 678 of lalr1.cc  */
-#line 4814 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4805 "/home/jsoniq/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 535:
 
-/* Line 678 of lalr1.cc  */
-#line 4822 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4809 "/home/jsoniq/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 536:
 
-/* Line 678 of lalr1.cc  */
-#line 4830 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4817 "/home/jsoniq/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 537:
 
-/* Line 678 of lalr1.cc  */
-#line 4834 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4825 "/home/jsoniq/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 538:
 
-/* Line 678 of lalr1.cc  */
-#line 4842 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4833 "/home/jsoniq/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 539:
 
-/* Line 678 of lalr1.cc  */
-#line 4848 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4837 "/home/jsoniq/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 540:
 
-/* Line 678 of lalr1.cc  */
-#line 4858 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4845 "/home/jsoniq/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 541:
 
-/* Line 678 of lalr1.cc  */
-#line 4866 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4851 "/home/jsoniq/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 542:
 
-/* Line 678 of lalr1.cc  */
-#line 4870 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4861 "/home/jsoniq/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 543:
 
-/* Line 678 of lalr1.cc  */
-#line 4874 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4869 "/home/jsoniq/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 544:
 
-/* Line 678 of lalr1.cc  */
-#line 4909 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4873 "/home/jsoniq/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 545:
 
-/* Line 678 of lalr1.cc  */
-#line 4915 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4877 "/home/jsoniq/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 546:
 
-/* Line 678 of lalr1.cc  */
-#line 4921 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4912 "/home/jsoniq/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 547:
 
-/* Line 678 of lalr1.cc  */
-#line 4931 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4918 "/home/jsoniq/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 548:
 
-/* Line 678 of lalr1.cc  */
-#line 4935 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4924 "/home/jsoniq/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 549:
 
-/* Line 678 of lalr1.cc  */
-#line 4939 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4934 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
-            (yyval.node) = new ItemType( LOC((yyloc)), true );
+            (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
         }
     break;
 
   case 550:
 
-/* Line 678 of lalr1.cc  */
-#line 4943 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4938 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
-            (yyval.node) = new StructuredItemType(LOC((yyloc)));
+            (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
         }
     break;
 
   case 551:
 
-/* Line 678 of lalr1.cc  */
-#line 4947 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4942 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
-            (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
+            (yyval.node) = new ItemType( LOC((yyloc)), true );
         }
     break;
 
   case 552:
 
-/* Line 678 of lalr1.cc  */
-#line 4951 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4946 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
-            (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
+            (yyval.node) = new StructuredItemType(LOC((yyloc)));
         }
     break;
 
   case 553:
 
-/* Line 678 of lalr1.cc  */
-#line 4955 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4950 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
         }
@@ -8206,8 +8186,26 @@
 
   case 554:
 
-/* Line 678 of lalr1.cc  */
-#line 4962 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4954 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+    {
+            (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
+        }
+    break;
+
+  case 555:
+
+/* Line 690 of lalr1.cc  */
+#line 4958 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+    {
+            (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
+        }
+    break;
+
+  case 556:
+
+/* Line 690 of lalr1.cc  */
+#line 4965 "/home/jsoniq/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)));
@@ -8215,10 +8213,10 @@
         }
     break;
 
-  case 555:
+  case 557:
 
-/* Line 678 of lalr1.cc  */
-#line 4968 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4971 "/home/jsoniq/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)));
@@ -8226,37 +8224,19 @@
         }
     break;
 
-  case 556:
+  case 558:
 
-/* Line 678 of lalr1.cc  */
-#line 4978 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4981 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new AtomicType( LOC((yyloc)), static_cast<QName*>((yysemantic_stack_[(1) - (1)].expr)) );
         }
     break;
 
-  case 557:
-
-/* Line 678 of lalr1.cc  */
-#line 4986 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-    {
-            (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
-        }
-    break;
-
-  case 558:
-
-/* Line 678 of lalr1.cc  */
-#line 4990 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-    {
-            (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
-        }
-    break;
-
   case 559:
 
-/* Line 678 of lalr1.cc  */
-#line 4994 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4989 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
         }
@@ -8264,8 +8244,8 @@
 
   case 560:
 
-/* Line 678 of lalr1.cc  */
-#line 4998 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4993 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
         }
@@ -8273,8 +8253,8 @@
 
   case 561:
 
-/* Line 678 of lalr1.cc  */
-#line 5002 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 4997 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
         }
@@ -8282,8 +8262,8 @@
 
   case 562:
 
-/* Line 678 of lalr1.cc  */
-#line 5006 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5001 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
         }
@@ -8291,8 +8271,8 @@
 
   case 563:
 
-/* Line 678 of lalr1.cc  */
-#line 5010 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5005 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
         }
@@ -8300,8 +8280,8 @@
 
   case 564:
 
-/* Line 678 of lalr1.cc  */
-#line 5014 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5009 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
         }
@@ -8309,8 +8289,8 @@
 
   case 565:
 
-/* Line 678 of lalr1.cc  */
-#line 5018 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5013 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
         }
@@ -8318,35 +8298,53 @@
 
   case 566:
 
-/* Line 678 of lalr1.cc  */
-#line 5026 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5017 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+    {
+            (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
+        }
+    break;
+
+  case 567:
+
+/* Line 690 of lalr1.cc  */
+#line 5021 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+    {
+            (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
+        }
+    break;
+
+  case 568:
+
+/* Line 690 of lalr1.cc  */
+#line 5029 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new AnyKindTest( LOC((yyloc)) );
         }
     break;
 
-  case 567:
+  case 569:
 
-/* Line 678 of lalr1.cc  */
-#line 5034 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5037 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new DocumentTest( LOC((yyloc)) );
         }
     break;
 
-  case 568:
+  case 570:
 
-/* Line 678 of lalr1.cc  */
-#line 5038 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5041 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new DocumentTest( LOC((yyloc)), dynamic_cast<ElementTest*>((yysemantic_stack_[(4) - (3)].node)) );
         }
     break;
 
-  case 569:
+  case 571:
 
-/* Line 678 of lalr1.cc  */
-#line 5042 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5045 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new DocumentTest(
                 LOC((yyloc)), dynamic_cast<SchemaElementTest*>((yysemantic_stack_[(4) - (3)].node))
@@ -8354,259 +8352,259 @@
         }
     break;
 
-  case 570:
+  case 572:
 
-/* Line 678 of lalr1.cc  */
-#line 5052 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5055 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new TextTest( LOC((yyloc)) );
         }
     break;
 
-  case 571:
+  case 573:
 
-/* Line 678 of lalr1.cc  */
-#line 5060 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5063 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new CommentTest( LOC((yyloc)));
         }
     break;
 
-  case 572:
+  case 574:
 
-/* Line 678 of lalr1.cc  */
-#line 5068 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5071 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new PITest( LOC((yyloc)), "" );
         }
     break;
 
-  case 573:
-
-/* Line 678 of lalr1.cc  */
-#line 5072 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-    {
-            (yyval.node) = new PITest( LOC((yyloc)), SYMTAB((yysemantic_stack_[(4) - (3)].sval)) );
-        }
-    break;
-
-  case 574:
-
-/* Line 678 of lalr1.cc  */
-#line 5076 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-    {
-            (yyval.node) = new PITest( LOC((yyloc)), SYMTAB((yysemantic_stack_[(4) - (3)].sval)) );
-        }
-    break;
-
   case 575:
 
-/* Line 678 of lalr1.cc  */
-#line 5084 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5075 "/home/jsoniq/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 576:
 
-/* Line 678 of lalr1.cc  */
-#line 5088 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5079 "/home/jsoniq/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 577:
 
-/* Line 678 of lalr1.cc  */
-#line 5094 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5087 "/home/jsoniq/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 578:
 
-/* Line 678 of lalr1.cc  */
-#line 5100 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5091 "/home/jsoniq/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 579:
 
-/* Line 678 of lalr1.cc  */
-#line 5104 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5097 "/home/jsoniq/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 580:
 
-/* Line 678 of lalr1.cc  */
-#line 5114 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5103 "/home/jsoniq/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 581:
 
-/* Line 678 of lalr1.cc  */
-#line 5122 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5107 "/home/jsoniq/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 582:
 
-/* Line 678 of lalr1.cc  */
-#line 5126 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5117 "/home/jsoniq/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 583:
 
-/* Line 678 of lalr1.cc  */
-#line 5132 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5125 "/home/jsoniq/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 584:
 
-/* Line 678 of lalr1.cc  */
-#line 5141 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5129 "/home/jsoniq/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 585:
 
-/* Line 678 of lalr1.cc  */
-#line 5150 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5135 "/home/jsoniq/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 586:
 
-/* Line 678 of lalr1.cc  */
-#line 5156 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5144 "/home/jsoniq/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 587:
 
-/* Line 678 of lalr1.cc  */
-#line 5162 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5153 "/home/jsoniq/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 588:
 
-/* Line 678 of lalr1.cc  */
-#line 5172 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5159 "/home/jsoniq/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 589:
 
-/* Line 678 of lalr1.cc  */
-#line 5189 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5165 "/home/jsoniq/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 590:
 
-/* Line 678 of lalr1.cc  */
-#line 5196 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5175 "/home/jsoniq/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 591:
 
-/* Line 678 of lalr1.cc  */
-#line 5211 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5192 "/home/jsoniq/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 592:
 
-/* Line 678 of lalr1.cc  */
-#line 5247 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5199 "/home/jsoniq/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 593:
 
-/* Line 678 of lalr1.cc  */
-#line 5251 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5214 "/home/jsoniq/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 594:
 
-/* Line 678 of lalr1.cc  */
-#line 5259 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5250 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+    {
+      (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
+    }
+    break;
+
+  case 595:
+
+/* Line 690 of lalr1.cc  */
+#line 5254 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+    {
+      (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
+    }
+    break;
+
+  case 596:
+
+/* Line 690 of lalr1.cc  */
+#line 5262 "/home/jsoniq/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 595:
+  case 597:
 
-/* Line 678 of lalr1.cc  */
-#line 5267 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5270 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.expr) = new InlineFunction(LOC((yyloc)),
                               &*(yysemantic_stack_[(3) - (2)].fnsig)->theParams,
@@ -8616,46 +8614,46 @@
     }
     break;
 
-  case 596:
-
-/* Line 678 of lalr1.cc  */
-#line 5279 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-    {
-      (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
-    }
-    break;
-
-  case 597:
-
-/* Line 678 of lalr1.cc  */
-#line 5283 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-    {
-      (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
-    }
-    break;
-
   case 598:
 
-/* Line 678 of lalr1.cc  */
-#line 5291 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5282 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+    {
+      (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
+    }
+    break;
+
+  case 599:
+
+/* Line 690 of lalr1.cc  */
+#line 5286 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+    {
+      (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
+    }
+    break;
+
+  case 600:
+
+/* Line 690 of lalr1.cc  */
+#line 5294 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.node) = new AnyFunctionTest(LOC((yyloc)));
     }
     break;
 
-  case 599:
+  case 601:
 
-/* Line 678 of lalr1.cc  */
-#line 5299 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5302 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
           (yyval.node) = new TypedFunctionTest(LOC ((yyloc)), dynamic_cast<SequenceType *>((yysemantic_stack_[(5) - (5)].node)));
         }
     break;
 
-  case 600:
+  case 602:
 
-/* Line 678 of lalr1.cc  */
-#line 5303 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5306 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
           (yyval.node) = new TypedFunctionTest(LOC ((yyloc)),
               dynamic_cast<TypeList *>((yysemantic_stack_[(6) - (3)].node)),
@@ -8663,19 +8661,19 @@
         }
     break;
 
-  case 601:
+  case 603:
 
-/* Line 678 of lalr1.cc  */
-#line 5314 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5317 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
            (yyval.node) = (yysemantic_stack_[(3) - (2)].node);
         }
     break;
 
-  case 602:
+  case 604:
 
-/* Line 678 of lalr1.cc  */
-#line 5331 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5334 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new RevalidationDecl(
                 LOC((yyloc)), StaticContextConsts::strict_validation
@@ -8683,10 +8681,10 @@
         }
     break;
 
-  case 603:
+  case 605:
 
-/* Line 678 of lalr1.cc  */
-#line 5337 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5340 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new RevalidationDecl(
                 LOC((yyloc)), StaticContextConsts::lax_validation
@@ -8694,10 +8692,10 @@
         }
     break;
 
-  case 604:
+  case 606:
 
-/* Line 678 of lalr1.cc  */
-#line 5343 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5346 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new RevalidationDecl(
                 LOC((yyloc)), StaticContextConsts::skip_validation
@@ -8705,81 +8703,81 @@
         }
     break;
 
-  case 605:
-
-/* Line 678 of lalr1.cc  */
-#line 5353 "/home/mbrantner/zorba/jsandbox/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 606:
-
-/* Line 678 of lalr1.cc  */
-#line 5357 "/home/mbrantner/zorba/jsandbox/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 607:
 
-/* Line 678 of lalr1.cc  */
-#line 5363 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5356 "/home/jsoniq/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 608:
 
-/* Line 678 of lalr1.cc  */
-#line 5369 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5360 "/home/jsoniq/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 609:
 
-/* Line 678 of lalr1.cc  */
-#line 5373 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5366 "/home/jsoniq/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 610:
 
-/* Line 678 of lalr1.cc  */
-#line 5379 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5372 "/home/jsoniq/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 611:
 
-/* Line 678 of lalr1.cc  */
-#line 5383 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5376 "/home/jsoniq/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 612:
 
-/* Line 678 of lalr1.cc  */
-#line 5389 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5382 "/home/jsoniq/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 613:
+
+/* Line 690 of lalr1.cc  */
+#line 5386 "/home/jsoniq/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 614:
+
+/* Line 690 of lalr1.cc  */
+#line 5392 "/home/jsoniq/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)
@@ -8787,10 +8785,10 @@
         }
     break;
 
-  case 613:
+  case 615:
 
-/* Line 678 of lalr1.cc  */
-#line 5395 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5398 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.expr) = new InsertExpr(
                 LOC ((yyloc)),
@@ -8799,39 +8797,39 @@
         }
     break;
 
-  case 614:
-
-/* Line 678 of lalr1.cc  */
-#line 5402 "/home/mbrantner/zorba/jsandbox/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 615:
-
-/* Line 678 of lalr1.cc  */
-#line 5412 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-    {
-            (yyval.expr) = new DeleteExpr( LOC ((yyloc)), (yysemantic_stack_[(3) - (3)].expr) );
-        }
-    break;
-
   case 616:
 
-/* Line 678 of lalr1.cc  */
-#line 5417 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5405 "/home/jsoniq/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 617:
 
-/* Line 678 of lalr1.cc  */
-#line 5425 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5415 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+    {
+            (yyval.expr) = new DeleteExpr( LOC ((yyloc)), (yysemantic_stack_[(3) - (3)].expr) );
+        }
+    break;
+
+  case 618:
+
+/* Line 690 of lalr1.cc  */
+#line 5420 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+    {
+            (yyval.expr) = new DeleteExpr( LOC ((yyloc)), (yysemantic_stack_[(3) - (3)].expr) );
+        }
+    break;
+
+  case 619:
+
+/* Line 690 of lalr1.cc  */
+#line 5428 "/home/jsoniq/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)
@@ -8839,10 +8837,10 @@
         }
     break;
 
-  case 618:
+  case 620:
 
-/* Line 678 of lalr1.cc  */
-#line 5431 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5434 "/home/jsoniq/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)
@@ -8850,29 +8848,29 @@
         }
     break;
 
-  case 619:
+  case 621:
 
-/* Line 678 of lalr1.cc  */
-#line 5441 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5444 "/home/jsoniq/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 620:
+  case 622:
 
-/* Line 678 of lalr1.cc  */
-#line 5463 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5466 "/home/jsoniq/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 621:
+  case 623:
 
-/* Line 678 of lalr1.cc  */
-#line 5472 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5475 "/home/jsoniq/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)));
@@ -8880,10 +8878,10 @@
     }
     break;
 
-  case 622:
+  case 624:
 
-/* Line 678 of lalr1.cc  */
-#line 5478 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5481 "/home/jsoniq/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));
@@ -8892,28 +8890,28 @@
     }
     break;
 
-  case 623:
+  case 625:
 
-/* Line 678 of lalr1.cc  */
-#line 5491 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5494 "/home/jsoniq/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 624:
+  case 626:
 
-/* Line 678 of lalr1.cc  */
-#line 5505 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5508 "/home/jsoniq/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 625:
+  case 627:
 
-/* Line 678 of lalr1.cc  */
-#line 5512 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5515 "/home/jsoniq/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)) );
@@ -8921,10 +8919,10 @@
         }
     break;
 
-  case 626:
+  case 628:
 
-/* Line 678 of lalr1.cc  */
-#line 5518 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5521 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             CatchListExpr *cle = dynamic_cast<CatchListExpr*>((yysemantic_stack_[(2) - (1)].expr));
             if ( cle )
@@ -8933,29 +8931,29 @@
         }
     break;
 
-  case 627:
-
-/* Line 678 of lalr1.cc  */
-#line 5528 "/home/mbrantner/zorba/jsandbox/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 628:
-
-/* Line 678 of lalr1.cc  */
-#line 5537 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-    {
-      (yyval.expr) = (yysemantic_stack_[(3) - (2)].expr);
-    }
-    break;
-
   case 629:
 
-/* Line 678 of lalr1.cc  */
-#line 5545 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5531 "/home/jsoniq/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 630:
+
+/* Line 690 of lalr1.cc  */
+#line 5540 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+    {
+      (yyval.expr) = (yysemantic_stack_[(3) - (2)].expr);
+    }
+    break;
+
+  case 631:
+
+/* Line 690 of lalr1.cc  */
+#line 5548 "/home/jsoniq/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)) );
@@ -8963,10 +8961,10 @@
         }
     break;
 
-  case 630:
+  case 632:
 
-/* Line 678 of lalr1.cc  */
-#line 5551 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5554 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             CatchExpr::NameTestList *ntl =
                 static_cast<CatchExpr::NameTestList*>((yysemantic_stack_[(3) - (1)].name_test_list));
@@ -8975,76 +8973,58 @@
         }
     break;
 
-  case 631:
+  case 633:
 
-/* Line 678 of lalr1.cc  */
-#line 5569 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5572 "/home/jsoniq/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 632:
+  case 634:
 
-/* Line 678 of lalr1.cc  */
-#line 5577 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5580 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.pos_filter_list) = NULL;
         }
     break;
 
-  case 633:
+  case 635:
 
-/* Line 678 of lalr1.cc  */
-#line 5581 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5584 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.pos_filter_list) = (yysemantic_stack_[(1) - (1)].pos_filter_list);
         }
     break;
 
-  case 634:
+  case 636:
 
-/* Line 678 of lalr1.cc  */
-#line 5588 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5591 "/home/jsoniq/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 635:
+  case 637:
 
-/* Line 678 of lalr1.cc  */
-#line 5593 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5596 "/home/jsoniq/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 636:
-
-/* Line 678 of lalr1.cc  */
-#line 5601 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-    {
-            (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
-        }
-    break;
-
-  case 637:
-
-/* Line 678 of lalr1.cc  */
-#line 5605 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-    {
-            (yyval.node) = new FTOr( LOC((yyloc)), (yysemantic_stack_[(3) - (1)].node), (yysemantic_stack_[(3) - (3)].node) );
-        }
-    break;
-
   case 638:
 
-/* Line 678 of lalr1.cc  */
-#line 5612 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5604 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
         }
@@ -9052,17 +9032,17 @@
 
   case 639:
 
-/* Line 678 of lalr1.cc  */
-#line 5616 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5608 "/home/jsoniq/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 640:
 
-/* Line 678 of lalr1.cc  */
-#line 5623 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5615 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
         }
@@ -9070,17 +9050,17 @@
 
   case 641:
 
-/* Line 678 of lalr1.cc  */
-#line 5627 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5619 "/home/jsoniq/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 642:
 
-/* Line 678 of lalr1.cc  */
-#line 5634 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5626 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
         }
@@ -9088,8 +9068,26 @@
 
   case 643:
 
-/* Line 678 of lalr1.cc  */
-#line 5638 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5630 "/home/jsoniq/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 644:
+
+/* Line 690 of lalr1.cc  */
+#line 5637 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+    {
+            (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
+        }
+    break;
+
+  case 645:
+
+/* Line 690 of lalr1.cc  */
+#line 5641 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new FTUnaryNot(
                 LOC((yyloc)), dynamic_cast<FTPrimaryWithOptions*>((yysemantic_stack_[(2) - (2)].node))
@@ -9097,10 +9095,10 @@
         }
     break;
 
-  case 644:
+  case 646:
 
-/* Line 678 of lalr1.cc  */
-#line 5647 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5650 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new FTPrimaryWithOptions(
                 LOC((yyloc)),
@@ -9111,28 +9109,10 @@
         }
     break;
 
-  case 645:
-
-/* Line 678 of lalr1.cc  */
-#line 5659 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-    {
-            (yyval.node) = NULL;
-        }
-    break;
-
-  case 646:
-
-/* Line 678 of lalr1.cc  */
-#line 5663 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-    {
-            (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
-        }
-    break;
-
   case 647:
 
-/* Line 678 of lalr1.cc  */
-#line 5670 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5662 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = NULL;
         }
@@ -9140,8 +9120,8 @@
 
   case 648:
 
-/* Line 678 of lalr1.cc  */
-#line 5674 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5666 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
         }
@@ -9149,17 +9129,35 @@
 
   case 649:
 
-/* Line 678 of lalr1.cc  */
-#line 5682 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5673 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+    {
+            (yyval.node) = NULL;
+        }
+    break;
+
+  case 650:
+
+/* Line 690 of lalr1.cc  */
+#line 5677 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+    {
+            (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
+        }
+    break;
+
+  case 651:
+
+/* Line 690 of lalr1.cc  */
+#line 5685 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new FTWeight( LOC((yyloc)), dynamic_cast<exprnode*>((yysemantic_stack_[(4) - (3)].expr)) );
         }
     break;
 
-  case 650:
+  case 652:
 
-/* Line 678 of lalr1.cc  */
-#line 5690 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5693 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new FTWordsTimes(
                 LOC((yyloc)),
@@ -9169,37 +9167,19 @@
         }
     break;
 
-  case 651:
+  case 653:
 
-/* Line 678 of lalr1.cc  */
-#line 5698 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5701 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = (yysemantic_stack_[(3) - (2)].node);
         }
     break;
 
-  case 652:
-
-/* Line 678 of lalr1.cc  */
-#line 5702 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-    {
-            (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
-        }
-    break;
-
-  case 653:
-
-/* Line 678 of lalr1.cc  */
-#line 5709 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-    {
-            (yyval.node) = NULL;
-        }
-    break;
-
   case 654:
 
-/* Line 678 of lalr1.cc  */
-#line 5713 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5705 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
         }
@@ -9207,8 +9187,26 @@
 
   case 655:
 
-/* Line 678 of lalr1.cc  */
-#line 5721 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5712 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+    {
+            (yyval.node) = NULL;
+        }
+    break;
+
+  case 656:
+
+/* Line 690 of lalr1.cc  */
+#line 5716 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+    {
+            (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
+        }
+    break;
+
+  case 657:
+
+/* Line 690 of lalr1.cc  */
+#line 5724 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new FTExtensionSelection(
                 LOC((yyloc)),
@@ -9218,28 +9216,28 @@
         }
     break;
 
-  case 656:
-
-/* Line 678 of lalr1.cc  */
-#line 5732 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-    {
-            (yyval.node) = NULL;
-        }
-    break;
-
-  case 657:
-
-/* Line 678 of lalr1.cc  */
-#line 5736 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-    {
-            (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
-        }
-    break;
-
   case 658:
 
-/* Line 678 of lalr1.cc  */
-#line 5744 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5735 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+    {
+            (yyval.node) = NULL;
+        }
+    break;
+
+  case 659:
+
+/* Line 690 of lalr1.cc  */
+#line 5739 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+    {
+            (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
+        }
+    break;
+
+  case 660:
+
+/* Line 690 of lalr1.cc  */
+#line 5747 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new FTWords(
                 LOC((yyloc)),
@@ -9249,10 +9247,10 @@
         }
     break;
 
-  case 659:
+  case 661:
 
-/* Line 678 of lalr1.cc  */
-#line 5756 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5759 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new FTWordsValue(
                 LOC((yyloc)), static_cast<StringLiteral*>((yysemantic_stack_[(1) - (1)].expr)), NULL
@@ -9260,10 +9258,10 @@
         }
     break;
 
-  case 660:
+  case 662:
 
-/* Line 678 of lalr1.cc  */
-#line 5762 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5765 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new FTWordsValue(
                 LOC((yyloc)), NULL, dynamic_cast<exprnode*>((yysemantic_stack_[(3) - (2)].expr))
@@ -9271,109 +9269,91 @@
         }
     break;
 
-  case 661:
+  case 663:
 
-/* Line 678 of lalr1.cc  */
-#line 5771 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5774 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new FTAnyallOption( LOC((yyloc)), ft_anyall_mode::any );
         }
     break;
 
-  case 662:
-
-/* Line 678 of lalr1.cc  */
-#line 5775 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-    {
-            (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
-        }
-    break;
-
-  case 663:
-
-/* Line 678 of lalr1.cc  */
-#line 5783 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-    {
-            (yyval.node) = new FTAnyallOption( LOC((yyloc)), (yysemantic_stack_[(2) - (2)].ft_anyall_value) );
-        }
-    break;
-
   case 664:
 
-/* Line 678 of lalr1.cc  */
-#line 5787 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5778 "/home/jsoniq/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 665:
 
-/* Line 678 of lalr1.cc  */
-#line 5791 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5786 "/home/jsoniq/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 666:
 
-/* Line 678 of lalr1.cc  */
-#line 5798 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5790 "/home/jsoniq/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 667:
 
-/* Line 678 of lalr1.cc  */
-#line 5802 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5794 "/home/jsoniq/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 668:
 
-/* Line 678 of lalr1.cc  */
-#line 5809 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5801 "/home/jsoniq/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 669:
 
-/* Line 678 of lalr1.cc  */
-#line 5813 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5805 "/home/jsoniq/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 670:
 
-/* Line 678 of lalr1.cc  */
-#line 5821 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5812 "/home/jsoniq/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 671:
 
-/* Line 678 of lalr1.cc  */
-#line 5825 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5816 "/home/jsoniq/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 672:
 
-/* Line 678 of lalr1.cc  */
-#line 5829 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5824 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
         }
@@ -9381,8 +9361,8 @@
 
   case 673:
 
-/* Line 678 of lalr1.cc  */
-#line 5833 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5828 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
         }
@@ -9390,8 +9370,8 @@
 
   case 674:
 
-/* Line 678 of lalr1.cc  */
-#line 5837 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5832 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
         }
@@ -9399,17 +9379,35 @@
 
   case 675:
 
-/* Line 678 of lalr1.cc  */
-#line 5845 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5836 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+    {
+            (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
+        }
+    break;
+
+  case 676:
+
+/* Line 690 of lalr1.cc  */
+#line 5840 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+    {
+            (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
+        }
+    break;
+
+  case 677:
+
+/* Line 690 of lalr1.cc  */
+#line 5848 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new FTOrder( LOC((yyloc)) );
         }
     break;
 
-  case 676:
+  case 678:
 
-/* Line 678 of lalr1.cc  */
-#line 5853 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5856 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new FTWindow(
                 LOC((yyloc)),
@@ -9419,10 +9417,10 @@
         }
     break;
 
-  case 677:
+  case 679:
 
-/* Line 678 of lalr1.cc  */
-#line 5865 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5868 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new FTDistance(
                 LOC((yyloc)),
@@ -9432,37 +9430,37 @@
         }
     break;
 
-  case 678:
+  case 680:
 
-/* Line 678 of lalr1.cc  */
-#line 5877 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5880 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new FTUnit( LOC((yyloc)), ft_unit::words );
         }
     break;
 
-  case 679:
+  case 681:
 
-/* Line 678 of lalr1.cc  */
-#line 5881 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5884 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new FTUnit( LOC((yyloc)), ft_unit::sentences );
         }
     break;
 
-  case 680:
+  case 682:
 
-/* Line 678 of lalr1.cc  */
-#line 5885 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5888 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new FTUnit( LOC((yyloc)), ft_unit::paragraphs );
         }
     break;
 
-  case 681:
+  case 683:
 
-/* Line 678 of lalr1.cc  */
-#line 5893 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5896 "/home/jsoniq/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)) );
@@ -9470,10 +9468,10 @@
         }
     break;
 
-  case 682:
+  case 684:
 
-/* Line 678 of lalr1.cc  */
-#line 5899 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5902 "/home/jsoniq/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)) );
@@ -9481,28 +9479,10 @@
         }
     break;
 
-  case 683:
-
-/* Line 678 of lalr1.cc  */
-#line 5909 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-    {
-            (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
-        }
-    break;
-
-  case 684:
-
-/* Line 678 of lalr1.cc  */
-#line 5913 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-    {
-            (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
-        }
-    break;
-
   case 685:
 
-/* Line 678 of lalr1.cc  */
-#line 5917 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5912 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
         }
@@ -9510,8 +9490,8 @@
 
   case 686:
 
-/* Line 678 of lalr1.cc  */
-#line 5921 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5916 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
         }
@@ -9519,8 +9499,8 @@
 
   case 687:
 
-/* Line 678 of lalr1.cc  */
-#line 5925 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5920 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
         }
@@ -9528,8 +9508,8 @@
 
   case 688:
 
-/* Line 678 of lalr1.cc  */
-#line 5929 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5924 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
         }
@@ -9537,8 +9517,8 @@
 
   case 689:
 
-/* Line 678 of lalr1.cc  */
-#line 5933 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5928 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
         }
@@ -9546,8 +9526,8 @@
 
   case 690:
 
-/* Line 678 of lalr1.cc  */
-#line 5937 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5932 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
         }
@@ -9555,44 +9535,62 @@
 
   case 691:
 
-/* Line 678 of lalr1.cc  */
-#line 5945 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5936 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+    {
+            (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
+        }
+    break;
+
+  case 692:
+
+/* Line 690 of lalr1.cc  */
+#line 5940 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+    {
+            (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
+        }
+    break;
+
+  case 693:
+
+/* Line 690 of lalr1.cc  */
+#line 5948 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new FTCaseOption( LOC((yyloc)), ft_case_mode::sensitive );
         }
     break;
 
-  case 692:
+  case 694:
 
-/* Line 678 of lalr1.cc  */
-#line 5949 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5952 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new FTCaseOption( LOC((yyloc)), ft_case_mode::insensitive );
         }
     break;
 
-  case 693:
+  case 695:
 
-/* Line 678 of lalr1.cc  */
-#line 5953 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5956 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new FTCaseOption( LOC((yyloc)), ft_case_mode::lower );
         }
     break;
 
-  case 694:
+  case 696:
 
-/* Line 678 of lalr1.cc  */
-#line 5957 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5960 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new FTCaseOption( LOC((yyloc)), ft_case_mode::upper );
         }
     break;
 
-  case 695:
+  case 697:
 
-/* Line 678 of lalr1.cc  */
-#line 5965 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5968 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new FTDiacriticsOption(
                 LOC((yyloc)), ft_diacritics_mode::sensitive
@@ -9600,10 +9598,10 @@
         }
     break;
 
-  case 696:
+  case 698:
 
-/* Line 678 of lalr1.cc  */
-#line 5971 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5974 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new FTDiacriticsOption(
                 LOC((yyloc)), ft_diacritics_mode::insensitive
@@ -9611,10 +9609,10 @@
         }
     break;
 
-  case 697:
+  case 699:
 
-/* Line 678 of lalr1.cc  */
-#line 5981 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5984 "/home/jsoniq/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))
@@ -9622,28 +9620,28 @@
         }
     break;
 
-  case 698:
+  case 700:
 
-/* Line 678 of lalr1.cc  */
-#line 5991 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5994 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new FTStemOption( LOC((yyloc)), ft_stem_mode::with );
         }
     break;
 
-  case 699:
+  case 701:
 
-/* Line 678 of lalr1.cc  */
-#line 5995 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 5998 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new FTStemOption( LOC((yyloc)), ft_stem_mode::without );
         }
     break;
 
-  case 700:
+  case 702:
 
-/* Line 678 of lalr1.cc  */
-#line 6003 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6006 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             FTThesaurusOption::thesaurus_id_list_t *til = NULL;
             if ( (yysemantic_stack_[(2) - (2)].node) ) {
@@ -9655,10 +9653,10 @@
         }
     break;
 
-  case 701:
+  case 703:
 
-/* Line 678 of lalr1.cc  */
-#line 6013 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6016 "/home/jsoniq/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) ) {
@@ -9671,75 +9669,75 @@
         }
     break;
 
-  case 702:
+  case 704:
 
-/* Line 678 of lalr1.cc  */
-#line 6024 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6027 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new FTThesaurusOption( LOC((yyloc)), NULL, false, true );
         }
     break;
 
-  case 703:
-
-/* Line 678 of lalr1.cc  */
-#line 6031 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-    {
-            (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
-        }
-    break;
-
-  case 704:
-
-/* Line 678 of lalr1.cc  */
-#line 6035 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-    {
-            (yyval.node) = NULL;
-        }
-    break;
-
   case 705:
 
-/* Line 678 of lalr1.cc  */
-#line 6042 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6034 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+    {
+            (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
+        }
+    break;
+
+  case 706:
+
+/* Line 690 of lalr1.cc  */
+#line 6038 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+    {
+            (yyval.node) = NULL;
+        }
+    break;
+
+  case 707:
+
+/* Line 690 of lalr1.cc  */
+#line 6045 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.thesaurus_id_list) = NULL;
         }
     break;
 
-  case 706:
+  case 708:
 
-/* Line 678 of lalr1.cc  */
-#line 6046 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6049 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.thesaurus_id_list) = (yysemantic_stack_[(2) - (2)].thesaurus_id_list);
         }
     break;
 
-  case 707:
+  case 709:
 
-/* Line 678 of lalr1.cc  */
-#line 6053 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6056 "/home/jsoniq/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 708:
+  case 710:
 
-/* Line 678 of lalr1.cc  */
-#line 6058 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6061 "/home/jsoniq/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 709:
+  case 711:
 
-/* Line 678 of lalr1.cc  */
-#line 6067 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6070 "/home/jsoniq/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))
@@ -9747,46 +9745,46 @@
         }
     break;
 
-  case 710:
+  case 712:
 
-/* Line 678 of lalr1.cc  */
-#line 6076 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6079 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.sval) = NULL;
         }
     break;
 
-  case 711:
+  case 713:
 
-/* Line 678 of lalr1.cc  */
-#line 6080 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6083 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.sval) = (yysemantic_stack_[(2) - (2)].sval);
         }
     break;
 
-  case 712:
-
-/* Line 678 of lalr1.cc  */
-#line 6087 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-    {
-            (yyval.node) = NULL;
-        }
-    break;
-
-  case 713:
-
-/* Line 678 of lalr1.cc  */
-#line 6091 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-    {
-            (yyval.node) = (yysemantic_stack_[(2) - (1)].node);
-        }
-    break;
-
   case 714:
 
-/* Line 678 of lalr1.cc  */
-#line 6099 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6090 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+    {
+            (yyval.node) = NULL;
+        }
+    break;
+
+  case 715:
+
+/* Line 690 of lalr1.cc  */
+#line 6094 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+    {
+            (yyval.node) = (yysemantic_stack_[(2) - (1)].node);
+        }
+    break;
+
+  case 716:
+
+/* Line 690 of lalr1.cc  */
+#line 6102 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new FTStopWordOption(
                 LOC((yyloc)),
@@ -9797,10 +9795,10 @@
         }
     break;
 
-  case 715:
+  case 717:
 
-/* Line 678 of lalr1.cc  */
-#line 6108 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6111 "/home/jsoniq/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
@@ -9809,10 +9807,10 @@
         }
     break;
 
-  case 716:
+  case 718:
 
-/* Line 678 of lalr1.cc  */
-#line 6115 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6118 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new FTStopWordOption(
                 LOC((yyloc)), NULL, NULL, ft_stop_words_mode::without
@@ -9820,28 +9818,28 @@
         }
     break;
 
-  case 717:
+  case 719:
 
-/* Line 678 of lalr1.cc  */
-#line 6125 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6128 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new FTStopWords( LOC((yyloc)), SYMTAB((yysemantic_stack_[(2) - (2)].sval)), NULL );
         }
     break;
 
-  case 718:
+  case 720:
 
-/* Line 678 of lalr1.cc  */
-#line 6129 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6132 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new FTStopWords( LOC((yyloc)), "", (yysemantic_stack_[(3) - (2)].strlist) );
         }
     break;
 
-  case 719:
+  case 721:
 
-/* Line 678 of lalr1.cc  */
-#line 6136 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6139 "/home/jsoniq/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)) );
@@ -9849,10 +9847,10 @@
         }
     break;
 
-  case 720:
+  case 722:
 
-/* Line 678 of lalr1.cc  */
-#line 6142 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6145 "/home/jsoniq/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)) );
@@ -9860,38 +9858,38 @@
         }
     break;
 
-  case 721:
+  case 723:
 
-/* Line 678 of lalr1.cc  */
-#line 6151 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6154 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.incl_excl_list) = NULL;
         }
     break;
 
-  case 722:
+  case 724:
 
-/* Line 678 of lalr1.cc  */
-#line 6155 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6158 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.incl_excl_list) = (yysemantic_stack_[(1) - (1)].incl_excl_list);
         }
     break;
 
-  case 723:
+  case 725:
 
-/* Line 678 of lalr1.cc  */
-#line 6162 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6165 "/home/jsoniq/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 724:
+  case 726:
 
-/* Line 678 of lalr1.cc  */
-#line 6167 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6170 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             FTStopWordOption::incl_excl_list_t *iel = (yysemantic_stack_[(2) - (1)].incl_excl_list);
             if ( !iel )
@@ -9901,10 +9899,10 @@
         }
     break;
 
-  case 725:
+  case 727:
 
-/* Line 678 of lalr1.cc  */
-#line 6179 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6182 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new FTStopWordsInclExcl(
                 LOC((yyloc)),
@@ -9914,10 +9912,10 @@
         }
     break;
 
-  case 726:
+  case 728:
 
-/* Line 678 of lalr1.cc  */
-#line 6187 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6190 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new FTStopWordsInclExcl(
                 LOC((yyloc)),
@@ -9927,109 +9925,109 @@
         }
     break;
 
-  case 727:
+  case 729:
 
-/* Line 678 of lalr1.cc  */
-#line 6199 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6202 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new FTLanguageOption( LOC((yyloc)), SYMTAB((yysemantic_stack_[(2) - (2)].sval)) );
         }
     break;
 
-  case 728:
+  case 730:
 
-/* Line 678 of lalr1.cc  */
-#line 6207 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6210 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new FTWildCardOption( LOC((yyloc)), ft_wild_card_mode::with );
         }
     break;
 
-  case 729:
+  case 731:
 
-/* Line 678 of lalr1.cc  */
-#line 6211 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6214 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new FTWildCardOption( LOC((yyloc)), ft_wild_card_mode::without );
         }
     break;
 
-  case 730:
+  case 732:
 
-/* Line 678 of lalr1.cc  */
-#line 6219 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6222 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new FTContent( LOC((yyloc)), ft_content_mode::at_start );
         }
     break;
 
-  case 731:
+  case 733:
 
-/* Line 678 of lalr1.cc  */
-#line 6223 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6226 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new FTContent( LOC((yyloc)), ft_content_mode::at_end );
         }
     break;
 
-  case 732:
+  case 734:
 
-/* Line 678 of lalr1.cc  */
-#line 6227 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6230 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new FTContent( LOC((yyloc)), ft_content_mode::entire );
         }
     break;
 
-  case 733:
+  case 735:
 
-/* Line 678 of lalr1.cc  */
-#line 6235 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6238 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new FTTimes( LOC((yyloc)), dynamic_cast<FTRange*>((yysemantic_stack_[(3) - (2)].node)) );
         }
     break;
 
-  case 734:
+  case 736:
 
-/* Line 678 of lalr1.cc  */
-#line 6243 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6246 "/home/jsoniq/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 735:
+  case 737:
 
-/* Line 678 of lalr1.cc  */
-#line 6247 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6250 "/home/jsoniq/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 736:
+  case 738:
 
-/* Line 678 of lalr1.cc  */
-#line 6251 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6254 "/home/jsoniq/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 737:
+  case 739:
 
-/* Line 678 of lalr1.cc  */
-#line 6255 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6258 "/home/jsoniq/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 738:
+  case 740:
 
-/* Line 678 of lalr1.cc  */
-#line 6263 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6266 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new FTScope(
                 LOC((yyloc)),
@@ -10039,10 +10037,10 @@
         }
     break;
 
-  case 739:
+  case 741:
 
-/* Line 678 of lalr1.cc  */
-#line 6271 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6274 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new FTScope(
                 LOC((yyloc)),
@@ -10052,55 +10050,37 @@
         }
     break;
 
-  case 740:
+  case 742:
 
-/* Line 678 of lalr1.cc  */
-#line 6283 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6286 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new FTBigUnit( LOC((yyloc)), ft_big_unit::sentence );
         }
     break;
 
-  case 741:
+  case 743:
 
-/* Line 678 of lalr1.cc  */
-#line 6287 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6290 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new FTBigUnit( LOC((yyloc)), ft_big_unit::paragraph );
         }
     break;
 
-  case 742:
+  case 744:
 
-/* Line 678 of lalr1.cc  */
-#line 6295 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6298 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
             (yyval.node) = new FTIgnoreOption( LOC((yyloc)), static_cast<UnionExpr*>((yysemantic_stack_[(3) - (3)].expr)) );
         }
     break;
 
-  case 743:
-
-/* Line 678 of lalr1.cc  */
-#line 6304 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-    {
-      (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
-    }
-    break;
-
-  case 744:
-
-/* Line 678 of lalr1.cc  */
-#line 6308 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-    {
-      (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
-    }
-    break;
-
   case 745:
 
-/* Line 678 of lalr1.cc  */
-#line 6312 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6307 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
       (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
     }
@@ -10108,209 +10088,98 @@
 
   case 746:
 
-/* Line 678 of lalr1.cc  */
-#line 6316 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6315 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
-      (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
+      (yyval.expr) = new JSON_ArrayConstructor(LOC((yyloc)), NULL);
     }
     break;
 
   case 747:
 
-/* Line 678 of lalr1.cc  */
-#line 6320 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6319 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
-      (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
+      (yyval.expr) = new JSON_ArrayConstructor(LOC((yyloc)), (yysemantic_stack_[(3) - (2)].expr));
     }
     break;
 
   case 748:
 
-/* Line 678 of lalr1.cc  */
-#line 6328 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6327 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
-      (yyval.expr) = new JSON_PairConstructor(LOC((yyloc)), (yysemantic_stack_[(6) - (3)].expr), (yysemantic_stack_[(6) - (5)].expr));
+      (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
     }
     break;
 
   case 749:
 
-/* Line 678 of lalr1.cc  */
-#line 6336 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6332 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
-      (yyval.expr) = new JSON_ObjectConstructor(LOC((yyloc)), (yysemantic_stack_[(4) - (3)].expr));
+      (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
     }
     break;
 
   case 750:
 
-/* Line 678 of lalr1.cc  */
-#line 6340 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6337 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
-      (yyval.expr) = new JSON_ObjectConstructor(LOC((yyloc)), (yysemantic_stack_[(4) - (3)].expr));
+      (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
     }
     break;
 
   case 751:
 
-/* Line 678 of lalr1.cc  */
-#line 6344 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6342 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
-      (yyval.expr) = new JSON_ObjectConstructor(LOC((yyloc)), NULL);
+      (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
     }
     break;
 
   case 752:
 
-/* Line 678 of lalr1.cc  */
-#line 6352 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6350 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
-      (yyval.expr) = new JSON_ArrayConstructor(LOC((yyloc)), NULL);
+      (yyval.node) = new JSON_Test(LOC((yyloc)), store::StoreConsts::jsonItem);
     }
     break;
 
   case 753:
 
-/* Line 678 of lalr1.cc  */
-#line 6356 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6357 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
-      (yyval.expr) = new JSON_ArrayConstructor(LOC((yyloc)), (yysemantic_stack_[(4) - (3)].expr));
+      (yyval.node) = new JSON_Test(LOC((yyloc)), store::StoreConsts::jsonObject);
     }
     break;
 
   case 754:
 
-/* Line 678 of lalr1.cc  */
-#line 6364 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6364 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     {
-      (yyval.expr) = new JSON_ArrayConstructor(LOC((yyloc)), NULL);
+      (yyval.node) = new JSON_Test(LOC((yyloc)), store::StoreConsts::jsonArray);
     }
     break;
 
   case 755:
 
-/* Line 678 of lalr1.cc  */
-#line 6368 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-    {
-      (yyval.expr) = new JSON_ArrayConstructor(LOC((yyloc)), (yysemantic_stack_[(3) - (2)].expr));
-    }
-    break;
-
-  case 756:
-
-/* Line 678 of lalr1.cc  */
-#line 6376 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-    {
-      (yyval.expr) = new JSON_ObjectConstructor(LOC((yyloc)), (yysemantic_stack_[(3) - (2)].expr));
-    }
-    break;
-
-  case 757:
-
-/* Line 678 of lalr1.cc  */
-#line 6384 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-    {
-      JSON_DirectObjectContent* jpl = new JSON_DirectObjectContent(LOC((yyloc)));
-      jpl->push_back((yysemantic_stack_[(1) - (1)].expr));
-      (yyval.expr) = jpl;
+/* Line 690 of lalr1.cc  */
+#line 6372 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
+    {
+      (yyval.node) = new JSON_Test(LOC((yyloc)), store::StoreConsts::jsonPair);
     }
     break;
 
   case 758:
 
-/* Line 678 of lalr1.cc  */
-#line 6390 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-    {
-      static_cast<JSON_DirectObjectContent*>((yysemantic_stack_[(3) - (1)].expr))->push_back((yysemantic_stack_[(3) - (3)].expr));
-      (yyval.expr) = (yysemantic_stack_[(3) - (1)].expr);
-    }
-    break;
-
-  case 759:
-
-/* Line 678 of lalr1.cc  */
-#line 6398 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-    {
-      (yyval.expr) = new JSON_PairConstructor(LOC((yyloc)), (yysemantic_stack_[(3) - (1)].expr), (yysemantic_stack_[(3) - (3)].expr));
-    }
-    break;
-
-  case 760:
-
-/* Line 678 of lalr1.cc  */
-#line 6406 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-    {
-      (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
-    }
-    break;
-
-  case 761:
-
-/* Line 678 of lalr1.cc  */
-#line 6411 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-    {
-      (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
-    }
-    break;
-
-  case 762:
-
-/* Line 678 of lalr1.cc  */
-#line 6416 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-    {
-      (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
-    }
-    break;
-
-  case 763:
-
-/* Line 678 of lalr1.cc  */
-#line 6421 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-    {
-      (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
-    }
-    break;
-
-  case 764:
-
-/* Line 678 of lalr1.cc  */
-#line 6429 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-    {
-      (yyval.node) = new JSON_Test(LOC((yyloc)), store::StoreConsts::jsonItem);
-    }
-    break;
-
-  case 765:
-
-/* Line 678 of lalr1.cc  */
-#line 6436 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-    {
-      (yyval.node) = new JSON_Test(LOC((yyloc)), store::StoreConsts::jsonObject);
-    }
-    break;
-
-  case 766:
-
-/* Line 678 of lalr1.cc  */
-#line 6443 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-    {
-      (yyval.node) = new JSON_Test(LOC((yyloc)), store::StoreConsts::jsonArray);
-    }
-    break;
-
-  case 767:
-
-/* Line 678 of lalr1.cc  */
-#line 6451 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
-    {
-      (yyval.node) = new JSON_Test(LOC((yyloc)), store::StoreConsts::jsonPair);
-    }
-    break;
-
-  case 770:
-
-/* Line 678 of lalr1.cc  */
-#line 6469 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6390 "/home/jsoniq/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();
@@ -10322,1546 +10191,1557 @@
         }
     break;
 
-  case 772:
+  case 760:
 
-/* Line 678 of lalr1.cc  */
-#line 6482 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6403 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("attribute"))); }
     break;
 
-  case 773:
+  case 761:
 
-/* Line 678 of lalr1.cc  */
-#line 6483 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6404 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("comment"))); }
     break;
 
-  case 774:
+  case 762:
 
-/* Line 678 of lalr1.cc  */
-#line 6484 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6405 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("document-node"))); }
     break;
 
-  case 775:
+  case 763:
 
-/* Line 678 of lalr1.cc  */
-#line 6485 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6406 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("element"))); }
     break;
 
-  case 776:
+  case 764:
 
-/* Line 678 of lalr1.cc  */
-#line 6486 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6407 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("item"))); }
     break;
 
-  case 777:
+  case 765:
 
-/* Line 678 of lalr1.cc  */
-#line 6487 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6408 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("if"))); }
     break;
 
-  case 778:
+  case 766:
 
-/* Line 678 of lalr1.cc  */
-#line 6488 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6409 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("node"))); }
     break;
 
-  case 779:
+  case 767:
 
-/* Line 678 of lalr1.cc  */
-#line 6489 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6410 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("processing-instruction"))); }
     break;
 
-  case 780:
+  case 768:
 
-/* Line 678 of lalr1.cc  */
-#line 6490 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6411 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("schema-attribute"))); }
     break;
 
-  case 781:
+  case 769:
 
-/* Line 678 of lalr1.cc  */
-#line 6491 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6412 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("schema-element"))); }
     break;
 
-  case 782:
+  case 770:
 
-/* Line 678 of lalr1.cc  */
-#line 6492 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6413 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("text"))); }
     break;
 
-  case 783:
+  case 771:
 
-/* Line 678 of lalr1.cc  */
-#line 6493 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6414 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("typeswitch"))); }
     break;
 
-  case 784:
+  case 772:
 
-/* Line 678 of lalr1.cc  */
-#line 6494 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6415 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("switch"))); }
     break;
 
-  case 785:
+  case 773:
 
-/* Line 678 of lalr1.cc  */
-#line 6495 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6416 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("empty-sequence"))); }
     break;
 
-  case 786:
+  case 774:
 
-/* Line 678 of lalr1.cc  */
-#line 6496 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6417 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("while"))); }
     break;
 
-  case 788:
+  case 776:
 
-/* Line 678 of lalr1.cc  */
-#line 6501 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6422 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB((yysemantic_stack_[(1) - (1)].sval))); }
     break;
 
-  case 789:
+  case 777:
 
-/* Line 678 of lalr1.cc  */
-#line 6502 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6423 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("xquery"))); }
     break;
 
-  case 790:
+  case 778:
 
-/* Line 678 of lalr1.cc  */
-#line 6503 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6424 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("empty"))); }
     break;
 
-  case 791:
+  case 779:
 
-/* Line 678 of lalr1.cc  */
-#line 6504 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6425 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("boundary-space"))); }
     break;
 
-  case 792:
+  case 780:
 
-/* Line 678 of lalr1.cc  */
-#line 6505 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6426 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("ft-option"))); }
     break;
 
-  case 793:
+  case 781:
 
-/* Line 678 of lalr1.cc  */
-#line 6506 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6427 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("base-uri"))); }
     break;
 
-  case 794:
+  case 782:
 
-/* Line 678 of lalr1.cc  */
-#line 6507 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6428 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("lax"))); }
     break;
 
-  case 795:
+  case 783:
 
-/* Line 678 of lalr1.cc  */
-#line 6508 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6429 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("strict"))); }
     break;
 
-  case 796:
+  case 784:
 
-/* Line 678 of lalr1.cc  */
-#line 6509 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6430 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("idiv"))); }
     break;
 
-  case 797:
+  case 785:
 
-/* Line 678 of lalr1.cc  */
-#line 6510 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6431 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("document"))); }
     break;
 
-  case 798:
+  case 786:
 
-/* Line 678 of lalr1.cc  */
-#line 6511 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6432 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("ftnot"))); }
     break;
 
-  case 799:
+  case 787:
 
-/* Line 678 of lalr1.cc  */
-#line 6512 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6433 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("not"))); }
     break;
 
-  case 800:
+  case 788:
 
-/* Line 678 of lalr1.cc  */
-#line 6513 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6434 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("sensitive"))); }
     break;
 
-  case 801:
+  case 789:
 
-/* Line 678 of lalr1.cc  */
-#line 6514 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6435 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("insensitive"))); }
     break;
 
-  case 802:
+  case 790:
 
-/* Line 678 of lalr1.cc  */
-#line 6515 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6436 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("diacritics"))); }
     break;
 
-  case 803:
+  case 791:
 
-/* Line 678 of lalr1.cc  */
-#line 6516 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6437 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("without"))); }
     break;
 
-  case 804:
+  case 792:
 
-/* Line 678 of lalr1.cc  */
-#line 6517 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6438 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("stemming"))); }
     break;
 
-  case 805:
+  case 793:
 
-/* Line 678 of lalr1.cc  */
-#line 6518 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6439 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("thesaurus"))); }
     break;
 
-  case 806:
+  case 794:
 
-/* Line 678 of lalr1.cc  */
-#line 6519 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6440 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("stop"))); }
     break;
 
-  case 807:
+  case 795:
 
-/* Line 678 of lalr1.cc  */
-#line 6520 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6441 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("wildcards"))); }
     break;
 
-  case 808:
+  case 796:
 
-/* Line 678 of lalr1.cc  */
-#line 6521 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6442 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("entire"))); }
     break;
 
-  case 809:
+  case 797:
 
-/* Line 678 of lalr1.cc  */
-#line 6522 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6443 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("content"))); }
     break;
 
-  case 810:
+  case 798:
 
-/* Line 678 of lalr1.cc  */
-#line 6523 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6444 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("word"))); }
     break;
 
-  case 811:
+  case 799:
 
-/* Line 678 of lalr1.cc  */
-#line 6524 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6445 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("start"))); }
     break;
 
-  case 812:
+  case 800:
 
-/* Line 678 of lalr1.cc  */
-#line 6525 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6446 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("end"))); }
     break;
 
-  case 813:
+  case 801:
 
-/* Line 678 of lalr1.cc  */
-#line 6526 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6447 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("most"))); }
     break;
 
-  case 814:
+  case 802:
 
-/* Line 678 of lalr1.cc  */
-#line 6527 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6448 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("skip"))); }
     break;
 
-  case 815:
+  case 803:
 
-/* Line 678 of lalr1.cc  */
-#line 6528 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6449 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("copy"))); }
     break;
 
-  case 816:
+  case 804:
 
-/* Line 678 of lalr1.cc  */
-#line 6529 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6450 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("general"))); }
     break;
 
-  case 817:
+  case 805:
 
-/* Line 678 of lalr1.cc  */
-#line 6530 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6451 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("value"))); }
     break;
 
-  case 818:
+  case 806:
 
-/* Line 678 of lalr1.cc  */
-#line 6531 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6452 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("eq"))); }
     break;
 
-  case 819:
+  case 807:
 
-/* Line 678 of lalr1.cc  */
-#line 6532 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6453 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("ne"))); }
     break;
 
-  case 820:
+  case 808:
 
-/* Line 678 of lalr1.cc  */
-#line 6533 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6454 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("lt"))); }
     break;
 
-  case 821:
+  case 809:
 
-/* Line 678 of lalr1.cc  */
-#line 6534 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6455 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("le"))); }
     break;
 
-  case 822:
+  case 810:
 
-/* Line 678 of lalr1.cc  */
-#line 6535 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6456 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("gt"))); }
     break;
 
-  case 823:
+  case 811:
 
-/* Line 678 of lalr1.cc  */
-#line 6536 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6457 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("ge"))); }
     break;
 
-  case 824:
+  case 812:
 
-/* Line 678 of lalr1.cc  */
-#line 6537 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6458 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("at"))); }
     break;
 
-  case 825:
+  case 813:
 
-/* Line 678 of lalr1.cc  */
-#line 6538 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6459 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("context"))); }
     break;
 
-  case 826:
+  case 814:
 
-/* Line 678 of lalr1.cc  */
-#line 6539 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6460 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("variable"))); }
     break;
 
-  case 827:
+  case 815:
 
-/* Line 678 of lalr1.cc  */
-#line 6540 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6461 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("return"))); }
     break;
 
-  case 828:
+  case 816:
 
-/* Line 678 of lalr1.cc  */
-#line 6541 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6462 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("for"))); }
     break;
 
-  case 829:
+  case 817:
 
-/* Line 678 of lalr1.cc  */
-#line 6542 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6463 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("allowing"))); }
     break;
 
-  case 830:
+  case 818:
 
-/* Line 678 of lalr1.cc  */
-#line 6543 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6464 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("sliding"))); }
     break;
 
-  case 831:
+  case 819:
 
-/* Line 678 of lalr1.cc  */
-#line 6544 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6465 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("tumbling"))); }
     break;
 
-  case 832:
+  case 820:
 
-/* Line 678 of lalr1.cc  */
-#line 6545 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6466 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("previous"))); }
     break;
 
-  case 833:
+  case 821:
 
-/* Line 678 of lalr1.cc  */
-#line 6546 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6467 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("next"))); }
     break;
 
-  case 834:
+  case 822:
 
-/* Line 678 of lalr1.cc  */
-#line 6547 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6468 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("only"))); }
     break;
 
-  case 835:
+  case 823:
 
-/* Line 678 of lalr1.cc  */
-#line 6548 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6469 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("when"))); }
     break;
 
-  case 836:
+  case 824:
 
-/* Line 678 of lalr1.cc  */
-#line 6549 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6470 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("count"))); }
     break;
 
-  case 837:
+  case 825:
 
-/* Line 678 of lalr1.cc  */
-#line 6550 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6471 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("in"))); }
     break;
 
-  case 838:
+  case 826:
 
-/* Line 678 of lalr1.cc  */
-#line 6551 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6472 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("let"))); }
     break;
 
-  case 839:
+  case 827:
 
-/* Line 678 of lalr1.cc  */
-#line 6552 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6473 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("where"))); }
     break;
 
-  case 840:
+  case 828:
 
-/* Line 678 of lalr1.cc  */
-#line 6553 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6474 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("by"))); }
     break;
 
-  case 841:
+  case 829:
 
-/* Line 678 of lalr1.cc  */
-#line 6554 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6475 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("group"))); }
     break;
 
-  case 842:
+  case 830:
 
-/* Line 678 of lalr1.cc  */
-#line 6555 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6476 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("order"))); }
     break;
 
-  case 843:
+  case 831:
 
-/* Line 678 of lalr1.cc  */
-#line 6556 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6477 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("stable"))); }
     break;
 
-  case 844:
+  case 832:
 
-/* Line 678 of lalr1.cc  */
-#line 6557 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6478 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("ascending"))); }
     break;
 
-  case 845:
+  case 833:
 
-/* Line 678 of lalr1.cc  */
-#line 6558 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6479 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("descending"))); }
     break;
 
-  case 846:
+  case 834:
 
-/* Line 678 of lalr1.cc  */
-#line 6559 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6480 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("greatest"))); }
     break;
 
-  case 847:
+  case 835:
 
-/* Line 678 of lalr1.cc  */
-#line 6560 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6481 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("least"))); }
     break;
 
-  case 848:
+  case 836:
 
-/* Line 678 of lalr1.cc  */
-#line 6561 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6482 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("collation"))); }
     break;
 
-  case 849:
+  case 837:
 
-/* Line 678 of lalr1.cc  */
-#line 6562 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6483 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("some"))); }
     break;
 
-  case 850:
+  case 838:
 
-/* Line 678 of lalr1.cc  */
-#line 6563 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6484 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("every"))); }
     break;
 
-  case 851:
+  case 839:
 
-/* Line 678 of lalr1.cc  */
-#line 6564 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6485 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("satisfies"))); }
     break;
 
-  case 852:
+  case 840:
 
-/* Line 678 of lalr1.cc  */
-#line 6565 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6486 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("case"))); }
     break;
 
-  case 853:
+  case 841:
 
-/* Line 678 of lalr1.cc  */
-#line 6566 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6487 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("as"))); }
     break;
 
-  case 854:
+  case 842:
 
-/* Line 678 of lalr1.cc  */
-#line 6567 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6488 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("then"))); }
     break;
 
-  case 855:
+  case 843:
 
-/* Line 678 of lalr1.cc  */
-#line 6568 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6489 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("else"))); }
     break;
 
-  case 856:
+  case 844:
 
-/* Line 678 of lalr1.cc  */
-#line 6569 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6490 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("or"))); }
     break;
 
-  case 857:
+  case 845:
 
-/* Line 678 of lalr1.cc  */
-#line 6570 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6491 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("and"))); }
     break;
 
-  case 858:
+  case 846:
 
-/* Line 678 of lalr1.cc  */
-#line 6571 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6492 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("instance"))); }
     break;
 
-  case 859:
+  case 847:
 
-/* Line 678 of lalr1.cc  */
-#line 6572 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6493 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("of"))); }
     break;
 
-  case 860:
+  case 848:
 
-/* Line 678 of lalr1.cc  */
-#line 6573 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6494 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("castable"))); }
     break;
 
-  case 861:
+  case 849:
 
-/* Line 678 of lalr1.cc  */
-#line 6574 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6495 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("to"))); }
     break;
 
-  case 862:
+  case 850:
 
-/* Line 678 of lalr1.cc  */
-#line 6575 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6496 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("div"))); }
     break;
 
-  case 863:
+  case 851:
 
-/* Line 678 of lalr1.cc  */
-#line 6576 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6497 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("mod"))); }
     break;
 
-  case 864:
+  case 852:
 
-/* Line 678 of lalr1.cc  */
-#line 6577 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6498 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("union"))); }
     break;
 
-  case 865:
+  case 853:
 
-/* Line 678 of lalr1.cc  */
-#line 6578 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6499 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("intersect"))); }
     break;
 
-  case 866:
+  case 854:
 
-/* Line 678 of lalr1.cc  */
-#line 6579 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6500 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("except"))); }
     break;
 
-  case 867:
+  case 855:
 
-/* Line 678 of lalr1.cc  */
-#line 6580 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6501 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("validate"))); }
     break;
 
-  case 868:
+  case 856:
 
-/* Line 678 of lalr1.cc  */
-#line 6581 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6502 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("type"))); }
     break;
 
-  case 869:
+  case 857:
 
-/* Line 678 of lalr1.cc  */
-#line 6582 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6503 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("cast"))); }
     break;
 
-  case 870:
+  case 858:
 
-/* Line 678 of lalr1.cc  */
-#line 6583 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6504 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("treat"))); }
     break;
 
-  case 871:
+  case 859:
 
-/* Line 678 of lalr1.cc  */
-#line 6584 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6505 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("is"))); }
     break;
 
-  case 872:
+  case 860:
 
-/* Line 678 of lalr1.cc  */
-#line 6585 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6506 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("preserve"))); }
     break;
 
-  case 873:
+  case 861:
 
-/* Line 678 of lalr1.cc  */
-#line 6586 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6507 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("strip"))); }
     break;
 
-  case 874:
+  case 862:
 
-/* Line 678 of lalr1.cc  */
-#line 6587 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6508 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("namespace"))); }
     break;
 
-  case 875:
+  case 863:
 
-/* Line 678 of lalr1.cc  */
-#line 6588 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6509 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("external"))); }
     break;
 
-  case 876:
+  case 864:
 
-/* Line 678 of lalr1.cc  */
-#line 6589 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6510 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("encoding"))); }
     break;
 
-  case 877:
+  case 865:
 
-/* Line 678 of lalr1.cc  */
-#line 6590 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6511 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("no-preserve"))); }
     break;
 
-  case 878:
+  case 866:
 
-/* Line 678 of lalr1.cc  */
-#line 6591 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6512 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("inherit"))); }
     break;
 
-  case 879:
+  case 867:
 
-/* Line 678 of lalr1.cc  */
-#line 6592 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6513 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("no-inherit"))); }
     break;
 
-  case 880:
+  case 868:
 
-/* Line 678 of lalr1.cc  */
-#line 6593 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6514 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("declare"))); }
     break;
 
-  case 881:
+  case 869:
 
-/* Line 678 of lalr1.cc  */
-#line 6594 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6515 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("construction"))); }
     break;
 
-  case 882:
+  case 870:
 
-/* Line 678 of lalr1.cc  */
-#line 6595 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6516 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("ordering"))); }
     break;
 
-  case 883:
+  case 871:
 
-/* Line 678 of lalr1.cc  */
-#line 6596 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6517 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("default"))); }
     break;
 
-  case 884:
+  case 872:
 
-/* Line 678 of lalr1.cc  */
-#line 6597 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6518 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("copy-namespaces"))); }
     break;
 
-  case 885:
+  case 873:
 
-/* Line 678 of lalr1.cc  */
-#line 6598 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6519 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("option"))); }
     break;
 
-  case 886:
+  case 874:
 
-/* Line 678 of lalr1.cc  */
-#line 6599 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6520 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("version"))); }
     break;
 
-  case 887:
+  case 875:
 
-/* Line 678 of lalr1.cc  */
-#line 6600 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6521 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("import"))); }
     break;
 
-  case 888:
+  case 876:
 
-/* Line 678 of lalr1.cc  */
-#line 6601 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6522 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("schema"))); }
     break;
 
-  case 889:
+  case 877:
 
-/* Line 678 of lalr1.cc  */
-#line 6602 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6523 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("module"))); }
     break;
 
-  case 890:
+  case 878:
 
-/* Line 678 of lalr1.cc  */
-#line 6603 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6524 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("function"))); }
     break;
 
-  case 891:
+  case 879:
 
-/* Line 678 of lalr1.cc  */
-#line 6604 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6525 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("score"))); }
     break;
 
-  case 892:
+  case 880:
 
-/* Line 678 of lalr1.cc  */
-#line 6605 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6526 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("contains"))); }
     break;
 
-  case 893:
+  case 881:
 
-/* Line 678 of lalr1.cc  */
-#line 6606 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6527 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("weight"))); }
     break;
 
-  case 894:
+  case 882:
 
-/* Line 678 of lalr1.cc  */
-#line 6607 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6528 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("window"))); }
     break;
 
-  case 895:
+  case 883:
 
-/* Line 678 of lalr1.cc  */
-#line 6608 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6529 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("distance"))); }
     break;
 
-  case 896:
+  case 884:
 
-/* Line 678 of lalr1.cc  */
-#line 6609 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6530 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("occurs"))); }
     break;
 
-  case 897:
+  case 885:
 
-/* Line 678 of lalr1.cc  */
-#line 6610 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6531 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("times"))); }
     break;
 
-  case 898:
+  case 886:
 
-/* Line 678 of lalr1.cc  */
-#line 6611 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6532 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("same"))); }
     break;
 
-  case 899:
+  case 887:
 
-/* Line 678 of lalr1.cc  */
-#line 6612 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6533 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("different"))); }
     break;
 
-  case 900:
+  case 888:
 
-/* Line 678 of lalr1.cc  */
-#line 6613 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6534 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("lowercase"))); }
     break;
 
-  case 901:
+  case 889:
 
-/* Line 678 of lalr1.cc  */
-#line 6614 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6535 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("uppercase"))); }
     break;
 
-  case 902:
+  case 890:
 
-/* Line 678 of lalr1.cc  */
-#line 6615 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6536 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("relationship"))); }
     break;
 
-  case 903:
+  case 891:
 
-/* Line 678 of lalr1.cc  */
-#line 6616 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6537 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("levels"))); }
     break;
 
-  case 904:
+  case 892:
 
-/* Line 678 of lalr1.cc  */
-#line 6617 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6538 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("language"))); }
     break;
 
-  case 905:
+  case 893:
 
-/* Line 678 of lalr1.cc  */
-#line 6618 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6539 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("any"))); }
     break;
 
-  case 906:
+  case 894:
 
-/* Line 678 of lalr1.cc  */
-#line 6619 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6540 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("all"))); }
     break;
 
-  case 907:
+  case 895:
 
-/* Line 678 of lalr1.cc  */
-#line 6620 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6541 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("exactly"))); }
     break;
 
-  case 908:
+  case 896:
 
-/* Line 678 of lalr1.cc  */
-#line 6621 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6542 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("from"))); }
     break;
 
-  case 909:
+  case 897:
 
-/* Line 678 of lalr1.cc  */
-#line 6622 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6543 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("words"))); }
     break;
 
-  case 910:
+  case 898:
 
-/* Line 678 of lalr1.cc  */
-#line 6623 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6544 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("sentences"))); }
     break;
 
-  case 911:
+  case 899:
 
-/* Line 678 of lalr1.cc  */
-#line 6624 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6545 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("sentence"))); }
     break;
 
-  case 912:
+  case 900:
 
-/* Line 678 of lalr1.cc  */
-#line 6625 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6546 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("phrase"))); }
     break;
 
-  case 913:
+  case 901:
 
-/* Line 678 of lalr1.cc  */
-#line 6626 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6547 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("paragraph"))); }
     break;
 
-  case 914:
+  case 902:
 
-/* Line 678 of lalr1.cc  */
-#line 6627 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6548 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("paragraphs"))); }
     break;
 
-  case 915:
+  case 903:
 
-/* Line 678 of lalr1.cc  */
-#line 6628 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6549 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("replace"))); }
     break;
 
-  case 916:
+  case 904:
 
-/* Line 678 of lalr1.cc  */
-#line 6629 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6550 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("modify"))); }
     break;
 
-  case 917:
+  case 905:
 
-/* Line 678 of lalr1.cc  */
-#line 6630 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6551 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("first"))); }
     break;
 
-  case 918:
+  case 906:
 
-/* Line 678 of lalr1.cc  */
-#line 6631 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6552 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("insert"))); }
     break;
 
-  case 919:
+  case 907:
 
-/* Line 678 of lalr1.cc  */
-#line 6632 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6553 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("before"))); }
     break;
 
-  case 920:
+  case 908:
 
-/* Line 678 of lalr1.cc  */
-#line 6633 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6554 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("after"))); }
     break;
 
-  case 921:
+  case 909:
 
-/* Line 678 of lalr1.cc  */
-#line 6634 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6555 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("revalidation"))); }
     break;
 
-  case 922:
+  case 910:
 
-/* Line 678 of lalr1.cc  */
-#line 6635 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6556 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("with"))); }
     break;
 
-  case 923:
+  case 911:
 
-/* Line 678 of lalr1.cc  */
-#line 6636 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6557 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("nodes"))); }
     break;
 
-  case 924:
+  case 912:
 
-/* Line 678 of lalr1.cc  */
-#line 6637 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6558 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("rename"))); }
     break;
 
-  case 925:
+  case 913:
 
-/* Line 678 of lalr1.cc  */
-#line 6638 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6559 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("last"))); }
     break;
 
-  case 926:
+  case 914:
 
-/* Line 678 of lalr1.cc  */
-#line 6639 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6560 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("delete"))); }
     break;
 
-  case 927:
+  case 915:
 
-/* Line 678 of lalr1.cc  */
-#line 6640 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6561 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("into"))); }
     break;
 
-  case 928:
+  case 916:
 
-/* Line 678 of lalr1.cc  */
-#line 6641 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6562 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("simple"))); }
     break;
 
-  case 929:
+  case 917:
 
-/* Line 678 of lalr1.cc  */
-#line 6642 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6563 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("sequential"))); }
     break;
 
-  case 930:
+  case 918:
 
-/* Line 678 of lalr1.cc  */
-#line 6643 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6564 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("updating"))); }
     break;
 
-  case 931:
+  case 919:
 
-/* Line 678 of lalr1.cc  */
-#line 6644 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6565 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("ordered"))); }
     break;
 
-  case 932:
+  case 920:
 
-/* Line 678 of lalr1.cc  */
-#line 6645 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6566 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("unordered"))); }
     break;
 
-  case 933:
+  case 921:
 
-/* Line 678 of lalr1.cc  */
-#line 6646 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6567 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("returning"))); }
     break;
 
-  case 934:
+  case 922:
 
-/* Line 678 of lalr1.cc  */
-#line 6647 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6568 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("exit"))); }
     break;
 
-  case 935:
+  case 923:
 
-/* Line 678 of lalr1.cc  */
-#line 6648 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6569 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("loop"))); }
     break;
 
-  case 936:
+  case 924:
 
-/* Line 678 of lalr1.cc  */
-#line 6649 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6570 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("break"))); }
     break;
 
-  case 937:
+  case 925:
 
-/* Line 678 of lalr1.cc  */
-#line 6650 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6571 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("continue"))); }
     break;
 
-  case 938:
+  case 926:
 
-/* Line 678 of lalr1.cc  */
-#line 6651 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6572 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("try"))); }
     break;
 
-  case 939:
+  case 927:
 
-/* Line 678 of lalr1.cc  */
-#line 6652 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6573 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("catch"))); }
     break;
 
-  case 940:
+  case 928:
 
-/* Line 678 of lalr1.cc  */
-#line 6653 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6574 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("using"))); }
     break;
 
-  case 941:
+  case 929:
 
-/* Line 678 of lalr1.cc  */
-#line 6654 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6575 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("set"))); }
     break;
 
-  case 942:
+  case 930:
 
-/* Line 678 of lalr1.cc  */
-#line 6655 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6576 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("index"))); }
     break;
 
-  case 943:
+  case 931:
 
-/* Line 678 of lalr1.cc  */
-#line 6656 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6577 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("unique"))); }
     break;
 
-  case 944:
+  case 932:
 
-/* Line 678 of lalr1.cc  */
-#line 6657 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6578 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("non"))); }
     break;
 
-  case 945:
+  case 933:
 
-/* Line 678 of lalr1.cc  */
-#line 6658 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6579 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("on"))); }
     break;
 
-  case 946:
+  case 934:
 
-/* Line 678 of lalr1.cc  */
-#line 6659 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6580 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("range"))); }
     break;
 
-  case 947:
+  case 935:
 
-/* Line 678 of lalr1.cc  */
-#line 6660 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6581 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("equality"))); }
     break;
 
-  case 948:
+  case 936:
 
-/* Line 678 of lalr1.cc  */
-#line 6661 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6582 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("manually"))); }
     break;
 
-  case 949:
+  case 937:
 
-/* Line 678 of lalr1.cc  */
-#line 6662 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6583 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("automatically"))); }
     break;
 
-  case 950:
+  case 938:
 
-/* Line 678 of lalr1.cc  */
-#line 6663 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6584 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("maintained"))); }
     break;
 
-  case 951:
+  case 939:
 
-/* Line 678 of lalr1.cc  */
-#line 6664 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6585 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("decimal-format"))); }
     break;
 
-  case 952:
+  case 940:
 
-/* Line 678 of lalr1.cc  */
-#line 6665 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6586 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("decimal-separator"))); }
     break;
 
-  case 953:
+  case 941:
 
-/* Line 678 of lalr1.cc  */
-#line 6666 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6587 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("grouping-separator"))); }
     break;
 
-  case 954:
+  case 942:
 
-/* Line 678 of lalr1.cc  */
-#line 6667 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6588 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("infinity"))); }
     break;
 
-  case 955:
+  case 943:
 
-/* Line 678 of lalr1.cc  */
-#line 6668 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6589 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("minus-sign"))); }
     break;
 
-  case 956:
+  case 944:
 
-/* Line 678 of lalr1.cc  */
-#line 6669 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6590 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("NaN"))); }
     break;
 
-  case 957:
+  case 945:
 
-/* Line 678 of lalr1.cc  */
-#line 6670 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6591 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("percent"))); }
     break;
 
-  case 958:
+  case 946:
 
-/* Line 678 of lalr1.cc  */
-#line 6671 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6592 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("per-mille"))); }
     break;
 
-  case 959:
+  case 947:
 
-/* Line 678 of lalr1.cc  */
-#line 6672 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6593 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("zero-digit"))); }
     break;
 
-  case 960:
+  case 948:
 
-/* Line 678 of lalr1.cc  */
-#line 6673 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6594 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("digit"))); }
     break;
 
-  case 961:
+  case 949:
 
-/* Line 678 of lalr1.cc  */
-#line 6674 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6595 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("pattern-separator"))); }
     break;
 
-  case 962:
+  case 950:
 
-/* Line 678 of lalr1.cc  */
-#line 6675 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6596 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("collection"))); }
     break;
 
-  case 963:
+  case 951:
 
-/* Line 678 of lalr1.cc  */
-#line 6676 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6597 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("const"))); }
     break;
 
-  case 964:
+  case 952:
 
-/* Line 678 of lalr1.cc  */
-#line 6677 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6598 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("append-only"))); }
     break;
 
-  case 965:
+  case 953:
 
-/* Line 678 of lalr1.cc  */
-#line 6678 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6599 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("queue"))); }
     break;
 
-  case 966:
+  case 954:
 
-/* Line 678 of lalr1.cc  */
-#line 6679 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6600 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("mutable"))); }
     break;
 
-  case 967:
+  case 955:
 
-/* Line 678 of lalr1.cc  */
-#line 6680 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6601 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("read-only"))); }
     break;
 
-  case 968:
+  case 956:
 
-/* Line 678 of lalr1.cc  */
-#line 6681 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6602 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("integrity"))); }
     break;
 
-  case 969:
+  case 957:
 
-/* Line 678 of lalr1.cc  */
-#line 6682 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6603 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("constraint"))); }
     break;
 
-  case 970:
+  case 958:
 
-/* Line 678 of lalr1.cc  */
-#line 6683 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6604 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("check"))); }
     break;
 
-  case 971:
+  case 959:
 
-/* Line 678 of lalr1.cc  */
-#line 6684 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6605 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("key"))); }
     break;
 
-  case 972:
+  case 960:
 
-/* Line 678 of lalr1.cc  */
-#line 6685 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6606 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("foreach"))); }
     break;
 
-  case 973:
+  case 961:
 
-/* Line 678 of lalr1.cc  */
-#line 6686 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6607 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("foreign"))); }
     break;
 
-  case 974:
+  case 962:
 
-/* Line 678 of lalr1.cc  */
-#line 6687 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6608 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("keys"))); }
     break;
 
-  case 975:
+  case 963:
 
-/* Line 678 of lalr1.cc  */
-#line 6688 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6609 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("ancestor"))); }
     break;
 
-  case 976:
+  case 964:
 
-/* Line 678 of lalr1.cc  */
-#line 6689 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6610 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("child"))); }
     break;
 
-  case 977:
+  case 965:
 
-/* Line 678 of lalr1.cc  */
-#line 6690 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6611 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("descendant"))); }
     break;
 
-  case 978:
+  case 966:
 
-/* Line 678 of lalr1.cc  */
-#line 6691 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6612 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("parent"))); }
     break;
 
-  case 979:
+  case 967:
 
-/* Line 678 of lalr1.cc  */
-#line 6692 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6613 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("preceding"))); }
     break;
 
-  case 980:
+  case 968:
 
-/* Line 678 of lalr1.cc  */
-#line 6693 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6614 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("self"))); }
     break;
 
-  case 981:
+  case 969:
 
-/* Line 678 of lalr1.cc  */
-#line 6694 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6615 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("following"))); }
     break;
 
-  case 982:
+  case 970:
 
-/* Line 678 of lalr1.cc  */
-#line 6695 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6616 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("ancestor-or-self"))); }
     break;
 
-  case 983:
+  case 971:
 
-/* Line 678 of lalr1.cc  */
-#line 6696 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6617 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("descendant-or-self"))); }
     break;
 
-  case 984:
+  case 972:
 
-/* Line 678 of lalr1.cc  */
-#line 6697 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6618 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("following-sibling"))); }
     break;
 
-  case 985:
+  case 973:
 
-/* Line 678 of lalr1.cc  */
-#line 6698 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6619 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("preceding-sibling"))); }
     break;
 
-  case 986:
+  case 974:
 
-/* Line 678 of lalr1.cc  */
-#line 6699 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6620 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("object"))); }
     break;
 
-  case 987:
+  case 975:
 
-/* Line 678 of lalr1.cc  */
-#line 6700 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6621 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("array"))); }
     break;
 
-  case 988:
+  case 976:
 
-/* Line 678 of lalr1.cc  */
-#line 6701 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6622 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("pair"))); }
     break;
 
-  case 989:
+  case 977:
 
-/* Line 678 of lalr1.cc  */
-#line 6702 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6623 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("json-item"))); }
     break;
 
-  case 990:
+  case 978:
 
-/* Line 678 of lalr1.cc  */
-#line 6703 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6624 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("structured-item"))); }
     break;
 
-  case 991:
+  case 979:
 
-/* Line 678 of lalr1.cc  */
-#line 6708 "/home/mbrantner/zorba/jsandbox/src/compiler/parser/xquery_parser.y"
+/* Line 690 of lalr1.cc  */
+#line 6629 "/home/jsoniq/zorba/sandbox/src/compiler/parser/xquery_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB((yysemantic_stack_[(1) - (1)].sval)), true); }
     break;
 
 
 
-/* Line 678 of lalr1.cc  */
-#line 11862 "/home/mbrantner/zorba/jbuild/src/compiler/parser/xquery_parser.cpp"
+/* Line 690 of lalr1.cc  */
+#line 11731 "/home/jsoniq/zorba/debug/src/compiler/parser/xquery_parser.cpp"
 	default:
           break;
       }
+    /* User semantic actions sometimes alter yychar, and that requires
+       that yytoken be updated with the new translation.  We take the
+       approach of translating immediately before every use of yytoken.
+       One alternative is translating here after every semantic action,
+       but that translation would be missed if the semantic action
+       invokes YYABORT, YYACCEPT, or YYERROR immediately after altering
+       yychar.  In the case of YYABORT or YYACCEPT, an incorrect
+       destructor might then be invoked immediately.  In the case of
+       YYERROR, subsequent parser actions might lead to an incorrect
+       destructor call or verbose syntax error message before the
+       lookahead is translated.  */
     YY_SYMBOL_PRINT ("-> $$ =", yyr1_[yyn], &yyval, &yyloc);
 
     yypop_ (yylen);
@@ -11885,14 +11765,20 @@
   | yyerrlab -- here on detecting error |
   `------------------------------------*/
   yyerrlab:
+    /* Make sure we have latest lookahead translation.  See comments at
+       user semantic actions for why this is necessary.  */
+    yytoken = yytranslate_ (yychar);
+
     /* If not already recovering from an error, report this error.  */
     if (!yyerrstatus_)
       {
 	++yynerrs_;
+	if (yychar == yyempty_)
+	  yytoken = yyempty_;
 	error (yylloc, yysyntax_error_ (yystate, yytoken));
       }
 
-    yyerror_range[0] = yylloc;
+    yyerror_range[1] = yylloc;
     if (yyerrstatus_ == 3)
       {
 	/* If just tried and 

Follow ups