← Back to team overview

zorba-coders team mailing list archive

[Merge] lp:~zorba-coders/zorba/new-jsoniq into lp:zorba

 

Nicolae Brinza has proposed merging lp:~zorba-coders/zorba/new-jsoniq into lp:zorba.

Commit message:
Merging of xquery and jsoniq grammar files step 1

Requested reviews:
  Nicolae Brinza (nbrinza)

For more details, see:
https://code.launchpad.net/~zorba-coders/zorba/new-jsoniq/+merge/159274

Merging of xquery and jsoniq grammar files step 1
-- 
The attached diff has been truncated due to its size.
https://code.launchpad.net/~zorba-coders/zorba/new-jsoniq/+merge/159274
Your team Zorba Coders is subscribed to branch lp:zorba.
=== modified file 'cmake_modules/CMakeUseBison.cmake'
--- cmake_modules/CMakeUseBison.cmake	2013-02-07 17:24:36 +0000
+++ cmake_modules/CMakeUseBison.cmake	2013-04-17 01:24:28 +0000
@@ -71,24 +71,24 @@
     ELSE(BISON_PREFIX_OUTPUTS)
       SET(PREFIX "yy")
     ENDIF(BISON_PREFIX_OUTPUTS)
-    SET(OUTFILE "${CMAKE_CURRENT_BINARY_DIR}/${PATH}/${HEAD}.cpp")
+    SET(OUTFILE "${PATH}/${HEAD}.cpp")
     IF(BISON_GENERATE_DEFINES)
-      SET(HEADER "${CMAKE_CURRENT_BINARY_DIR}/${PATH}/${HEAD}.hpp")
-	  SET(LOCATION "${CMAKE_CURRENT_BINARY_DIR}/${PATH}/location.hh")
-	  SET(POSITION "${CMAKE_CURRENT_BINARY_DIR}/${PATH}/position.hh")
-	  SET(STACK "${CMAKE_CURRENT_BINARY_DIR}/${PATH}/stack.hh")
+      SET(HEADER "${PATH}/${HEAD}.hpp")
+      SET(LOCATION "${PATH}/location.hh")
+      SET(POSITION "${PATH}/position.hh")
+      SET(STACK "${PATH}/stack.hh")
 	  
       ADD_CUSTOM_COMMAND(
         OUTPUT "${OUTFILE}" "${HEADER}" "${LOCATION}" "${POSITION}" "${STACK}"
         COMMAND "${BISON_EXECUTABLE}"
         ARGS "--name-prefix=${PREFIX}"
         "--defines"
-		"-t"
-		"-rall"
-		"--locations"
+        "-t"
+        "-rall"
+        "--locations"
         "--output-file=${OUTFILE}"
-        "${CMAKE_CURRENT_SOURCE_DIR}/${FILENAME}"
-        DEPENDS "${CMAKE_CURRENT_SOURCE_DIR}/${FILENAME}")
+        "${FILENAME}"
+        DEPENDS "${FILENAME}")
       SET_SOURCE_FILES_PROPERTIES("${OUTFILE}" "${HEADER}" "${LOCATION}" "${POSITION}" "${STACK}" PROPERTIES GENERATED TRUE)
       SET_SOURCE_FILES_PROPERTIES("${HEADER}" "${LOCATION}" "${POSITION}" "${STACK}" PROPERTIES HEADER_FILE_ONLY TRUE)
     ELSE(BISON_GENERATE_DEFINES)
@@ -97,8 +97,8 @@
         COMMAND "${BISON_EXECUTABLE}"
         ARGS "--name-prefix=${PREFIX}"
         "--output-file=${OUTFILE}"
-        "${CMAKE_CURRENT_SOURCE_DIR}/${FILENAME}"
-        DEPENDS "${CMAKE_CURRENT_SOURCE_DIR}/${FILENAME}")
+        "${FILENAME}"
+        DEPENDS "${FILENAME}")
       SET_SOURCE_FILES_PROPERTIES("${OUTFILE}" PROPERTIES GENERATED TRUE)
     ENDIF(BISON_GENERATE_DEFINES)
   ENDMACRO(BISON_FILE)

=== modified file 'cmake_modules/CMakeUseFlex.cmake'
--- cmake_modules/CMakeUseFlex.cmake	2013-02-07 17:24:36 +0000
+++ cmake_modules/CMakeUseFlex.cmake	2013-04-17 01:24:28 +0000
@@ -81,14 +81,14 @@
       ARGS -E copy_if_different
          "${FLEX_INCLUDE_DIR}/FlexLexer.h"
          "${FLEXLEXERH}")
-    SET(OUTFILE "${CMAKE_CURRENT_BINARY_DIR}/${PATH}/${PREFIX}.cpp")
+    SET(OUTFILE "${PATH}/${PREFIX}.cpp")
     ADD_CUSTOM_COMMAND(
       OUTPUT "${OUTFILE}"
       COMMAND "${FLEX_EXECUTABLE}"
-      ARGS -t --debug "${CMAKE_CURRENT_SOURCE_DIR}/${FILENAME}"
+      ARGS -t --debug "${FILENAME}"
       # flex's --outfile doesn't seem to work right, so redirect stdout
           > "${OUTFILE}"
-      DEPENDS "${CMAKE_CURRENT_SOURCE_DIR}/${FILENAME}"
+      DEPENDS "${FILENAME}"
          "${FLEXLEXERH}")
     SET_SOURCE_FILES_PROPERTIES("${OUTFILE}" PROPERTIES GENERATED TRUE)
   ENDMACRO(FLEX_FILE)

=== modified file 'src/compiler/parser/CMakeLists.txt'
--- src/compiler/parser/CMakeLists.txt	2013-03-17 16:30:51 +0000
+++ src/compiler/parser/CMakeLists.txt	2013-04-17 01:24:28 +0000
@@ -47,13 +47,40 @@
 
 COMPARE_BISON_VERSION("${BISON_VERSION_FULL}" "2.4")
 
+
+MACRO(GENERATE_GRAMMAR_FILE PARSER_TYPE)
+  SET(TARGET_PATH "${CMAKE_CURRENT_BINARY_DIR}/compiler/parser")
+  SET_SOURCE_FILES_PROPERTIES(${TARGET_PATH}/${PARSER_TYPE}.y PROPERTIES GENERATED TRUE)
+  STRING(TOUPPER ${PARSER_TYPE} PARSER_DEFINE)
+  ADD_CUSTOM_COMMAND(
+      OUTPUT ${TARGET_PATH}/${PARSER_TYPE}.y
+      COMMAND "echo"
+      ARGS "-e" "\"%{\\n#define" "${PARSER_DEFINE}\\n%}\">${TARGET_PATH}/${PARSER_TYPE}.y"
+      COMMAND "cat"
+      ARGS "${CMAKE_CURRENT_SOURCE_DIR}/compiler/parser/parser_y_includes.h" 
+            ">>"
+           "${TARGET_PATH}/${PARSER_TYPE}.y"
+      COMMAND ${CMAKE_CXX_COMPILER} 
+      ARGS "-xc++" "-P" "-D${PARSER_DEFINE}"
+           "-E" "${CMAKE_CURRENT_SOURCE_DIR}/compiler/parser/parser.y"
+           ">>" "${TARGET_PATH}/${PARSER_TYPE}.y"
+      DEPENDS "${CMAKE_CURRENT_SOURCE_DIR}/compiler/parser/parser.y" "${CMAKE_CURRENT_SOURCE_DIR}/compiler/parser/parser_y_includes.h"
+    )
+  
+  BISON_FILE(${TARGET_PATH}/${PARSER_TYPE}.y)
+  LIST(APPEND PARSER_BUILD_SRCS ${TARGET_PATH}/${PARSER_TYPE}.cpp)
+ENDMACRO(GENERATE_GRAMMAR_FILE PARSER_TYPE)
+
 # Bison setup for the parser
 IF (GENERATE_BISON_FILES)
     SET(BISON_GENERATE_DEFINES TRUE)
-    BISON_FILE(compiler/parser/xquery_parser.y)
-    LIST(APPEND PARSER_BUILD_SRCS ${CMAKE_BINARY_DIR}/src/compiler/parser/xquery_parser.cpp)
-    BISON_FILE(compiler/parser/jsoniq_parser.y)
-    LIST(APPEND PARSER_BUILD_SRCS ${CMAKE_BINARY_DIR}/src/compiler/parser/jsoniq_parser.cpp)
+    IF(NOT EXISTS "${CMAKE_CURRENT_BINARY_DIR}/compiler/parser")
+      FILE(MAKE_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}/compiler/parser")
+    ENDIF(NOT EXISTS "${CMAKE_CURRENT_BINARY_DIR}/compiler/parser")
+    
+    GENERATE_GRAMMAR_FILE(xquery_parser)
+    GENERATE_GRAMMAR_FILE(jsoniq_parser)
+    
 ELSE (GENERATE_BISON_FILES)
     IF (BISON_EXECUTABLE)
         MESSAGE(STATUS "         GNU Bison's version " ${BISON_VERSION_FULL} " is less than required (2.4) -- the parser will not be regenerated")
@@ -85,13 +112,43 @@
 
 COMPARE_FLEX_VERSION("${FLEX_VERSION_FULL}" "2.5.33")
 
+MACRO(GENERATE_FLEX_FILE SCANNER_TYPE)
+  SET(TARGET_PATH ${CMAKE_CURRENT_BINARY_DIR}/compiler/parser)  
+  SET_SOURCE_FILES_PROPERTIES(${TARGET_PATH}/${SCANNER_TYPE}.l PROPERTIES GENERATED TRUE)
+  STRING(TOUPPER ${SCANNER_TYPE} SCANNER_DEFINE)
+  
+  ADD_CUSTOM_COMMAND(
+      OUTPUT ${TARGET_PATH}/${SCANNER_TYPE}.l
+      COMMAND "echo"
+      ARGS "-e" "\"%{\\n#define" "${SCANNER_DEFINE}\\n%}\">${TARGET_PATH}/${SCANNER_TYPE}.l"
+      COMMAND "cat"
+      ARGS "${CMAKE_CURRENT_SOURCE_DIR}/compiler/parser/scanner_l_includes.h" 
+            ">>"
+           "${TARGET_PATH}/${SCANNER_TYPE}.l"
+      COMMAND ${CMAKE_CXX_COMPILER} 
+      ARGS "-xc++" "-P" "-D${SCANNER_DEFINE}"
+           "-E" "${CMAKE_CURRENT_SOURCE_DIR}/compiler/parser/scanner.l"
+           ">>" "${TARGET_PATH}/${SCANNER_TYPE}.l"
+      DEPENDS "${CMAKE_CURRENT_SOURCE_DIR}/compiler/parser/scanner.l" "${CMAKE_CURRENT_SOURCE_DIR}/compiler/parser/scanner_l_includes.h"
+    )
+    
+  FLEX_FILE(${TARGET_PATH}/${SCANNER_TYPE}.l)  
+  LIST(APPEND PARSER_BUILD_SRCS ${CMAKE_BINARY_DIR}/src/compiler/parser/${SCANNER_TYPE}.cpp)
+ENDMACRO(GENERATE_FLEX_FILE SCANNER_TYPE)
+
+
 # Flex setup for the scanner
 IF (GENERATE_FLEX_FILES AND ZORBA_HAVE_FLEXLEXER_H)
+    IF(NOT EXISTS "${CMAKE_CURRENT_BINARY_DIR}/compiler/parser")
+      FILE(MAKE_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}/compiler/parser")
+    ENDIF(NOT EXISTS "${CMAKE_CURRENT_BINARY_DIR}/compiler/parser")
+              
     SET(FLEX_PREFIX_OUTPUTS TRUE)
-    FLEX_FILE(compiler/parser/xquery_scanner.l)
-    FLEX_FILE(compiler/parser/jsoniq_scanner.l)
     ADD_DEFINITIONS(-DFLEX_FILES_REGENERATED)
-    LIST(APPEND PARSER_BUILD_SRCS ${CMAKE_BINARY_DIR}/src/compiler/parser/xquery_scanner.cpp ${CMAKE_BINARY_DIR}/src/compiler/parser/jsoniq_scanner.cpp)
+    
+    GENERATE_FLEX_FILE(xquery_scanner)
+    GENERATE_FLEX_FILE(jsoniq_scanner)
+        
 ELSE (GENERATE_FLEX_FILES AND ZORBA_HAVE_FLEXLEXER_H)
     IF (NOT ZORBA_HAVE_FLEXLEXER_H)
         MESSAGE(STATUS "         FlexLexer.h has not been found -- the lexer will not be regenerated")

=== modified file 'src/compiler/parser/jsoniq_parser.cpp'
--- src/compiler/parser/jsoniq_parser.cpp	2013-04-16 06:58:24 +0000
+++ src/compiler/parser/jsoniq_parser.cpp	2013-04-17 01:24:28 +0000
@@ -36,7 +36,12 @@
 /* First part of user declarations.  */
 
 /* Line 293 of lalr1.cc  */
-#line 88 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 1 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+
+#define JSONIQ_PARSER
+
+/* Line 293 of lalr1.cc  */
+#line 58 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
 
 
 #include "common/common.h"
@@ -49,7 +54,13 @@
 #include "compiler/parser/parse_constants.h"
 #include "compiler/api/compilercb.h"
 #include "store/api/update_consts.h"
+
+#ifdef XQUERY_PARSER
+#include "compiler/parser/xquery_driver.h"
+#else
 #include "compiler/parser/jsoniq_driver.h"
+#endif
+
 #include "compiler/parser/parser_helpers.h"
 
 #define SYMTAB( n ) driver.symtab.get( (off_t)n )
@@ -63,9 +74,22 @@
 using namespace zorba;
 
 
-
-/* Line 293 of lalr1.cc  */
-#line 69 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
+/* Line 293 of lalr1.cc  */
+#line 97 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+
+#ifdef XQUERY_PARSER
+#include "compiler/parser/xquery_scanner.h"
+#else
+#include "compiler/parser/jsoniq_scanner.h"
+#endif
+
+#undef yylex
+#define yylex driver.lexer->lex
+
+
+
+/* Line 293 of lalr1.cc  */
+#line 93 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
 
 
 #include "jsoniq_parser.hpp"
@@ -73,10 +97,8 @@
 /* User implementation prologue.  */
 
 /* Line 299 of lalr1.cc  */
-#line 917 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 776 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_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...
 template<typename T> inline void release_hack( T *ref ) {
     if ( ref ) {
         RCHelper::addReference( ref );
@@ -85,17 +107,12 @@
 }
 
 /* Line 299 of lalr1.cc  */
-#line 1053 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-
-#include "compiler/parser/jsoniq_scanner.h"
-
-#undef yylex
-#define yylex driver.lexer->lex
+#line 831 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
 
 
 
 /* Line 299 of lalr1.cc  */
-#line 99 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
+#line 116 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
 
 #ifndef YY_
 # if defined YYENABLE_NLS && YYENABLE_NLS
@@ -181,7 +198,7 @@
 namespace zorba {
 
 /* Line 382 of lalr1.cc  */
-#line 185 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
+#line 202 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
 
   /* Return YYSTR after stripping away unnecessary quotes and
      backslashes, so that it's suitable for yyerror.  The heuristic is
@@ -282,2495 +299,2504 @@
         case 112: /* "\"'DECIMAL'\"" */
 
 /* Line 480 of lalr1.cc  */
-#line 915 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 775 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
 	{ delete (yyvaluep->decval); };
 
 /* Line 480 of lalr1.cc  */
-#line 290 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
+#line 307 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
 	break;
       case 127: /* "\"'DOUBLE'\"" */
 
 /* Line 480 of lalr1.cc  */
-#line 914 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 774 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
 	{ delete (yyvaluep->dval); };
 
 /* Line 480 of lalr1.cc  */
-#line 299 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
+#line 316 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
 	break;
       case 152: /* "\"'INTEGER'\"" */
 
 /* Line 480 of lalr1.cc  */
-#line 913 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 773 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
 	{ delete (yyvaluep->ival); };
 
 /* Line 480 of lalr1.cc  */
-#line 308 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 346: /* "VersionDecl" */
-
-/* Line 480 of lalr1.cc  */
-#line 932 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 317 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 347: /* "MainModule" */
-
-/* Line 480 of lalr1.cc  */
-#line 932 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 326 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 348: /* "LibraryModule" */
-
-/* Line 480 of lalr1.cc  */
-#line 932 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 335 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 349: /* "ModuleDecl" */
-
-/* Line 480 of lalr1.cc  */
-#line 932 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 344 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 350: /* "SIND_DeclList" */
-
-/* Line 480 of lalr1.cc  */
-#line 932 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 353 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 351: /* "SIND_Decl" */
-
-/* Line 480 of lalr1.cc  */
-#line 932 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 362 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 352: /* "Setter" */
-
-/* Line 480 of lalr1.cc  */
-#line 932 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 371 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 353: /* "BoundarySpaceDecl" */
-
-/* Line 480 of lalr1.cc  */
-#line 932 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 380 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 354: /* "DefaultCollationDecl" */
-
-/* Line 480 of lalr1.cc  */
-#line 932 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 389 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 355: /* "BaseURIDecl" */
-
-/* Line 480 of lalr1.cc  */
-#line 932 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 398 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 356: /* "ConstructionDecl" */
-
-/* Line 480 of lalr1.cc  */
-#line 932 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 407 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 357: /* "OrderingModeDecl" */
-
-/* Line 480 of lalr1.cc  */
-#line 932 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 416 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 358: /* "EmptyOrderDecl" */
-
-/* Line 480 of lalr1.cc  */
-#line 932 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 425 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 359: /* "CopyNamespacesDecl" */
-
-/* Line 480 of lalr1.cc  */
-#line 932 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 434 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 360: /* "Import" */
-
-/* Line 480 of lalr1.cc  */
-#line 932 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 443 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 361: /* "SchemaImport" */
-
-/* Line 480 of lalr1.cc  */
-#line 932 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 452 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 362: /* "URILiteralList" */
-
-/* Line 480 of lalr1.cc  */
-#line 932 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 461 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 363: /* "SchemaPrefix" */
-
-/* Line 480 of lalr1.cc  */
-#line 932 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 470 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 364: /* "ModuleImport" */
-
-/* Line 480 of lalr1.cc  */
-#line 932 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 479 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 365: /* "NamespaceDecl" */
-
-/* Line 480 of lalr1.cc  */
-#line 932 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 488 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 366: /* "DefaultNamespaceDecl" */
-
-/* Line 480 of lalr1.cc  */
-#line 932 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 497 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 367: /* "VFO_DeclList" */
-
-/* Line 480 of lalr1.cc  */
-#line 932 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 506 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 368: /* "VFO_Decl" */
-
-/* Line 480 of lalr1.cc  */
-#line 932 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 515 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 369: /* "DecimalFormatDecl" */
-
-/* Line 480 of lalr1.cc  */
-#line 932 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 524 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 370: /* "DecimalFormatParamList" */
-
-/* Line 480 of lalr1.cc  */
-#line 947 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 325 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 345: /* "VersionDecl" */
+
+/* Line 480 of lalr1.cc  */
+#line 795 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 334 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 346: /* "MainModule" */
+
+/* Line 480 of lalr1.cc  */
+#line 788 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 343 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 347: /* "LibraryModule" */
+
+/* Line 480 of lalr1.cc  */
+#line 788 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 352 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 348: /* "ModuleDecl" */
+
+/* Line 480 of lalr1.cc  */
+#line 788 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 361 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 349: /* "SIND_DeclList" */
+
+/* Line 480 of lalr1.cc  */
+#line 791 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 370 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 350: /* "SIND_Decl" */
+
+/* Line 480 of lalr1.cc  */
+#line 791 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 379 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 351: /* "Setter" */
+
+/* Line 480 of lalr1.cc  */
+#line 792 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 388 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 352: /* "BoundarySpaceDecl" */
+
+/* Line 480 of lalr1.cc  */
+#line 785 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 397 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 353: /* "DefaultCollationDecl" */
+
+/* Line 480 of lalr1.cc  */
+#line 786 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 406 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 354: /* "BaseURIDecl" */
+
+/* Line 480 of lalr1.cc  */
+#line 785 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 415 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 355: /* "ConstructionDecl" */
+
+/* Line 480 of lalr1.cc  */
+#line 785 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 424 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 356: /* "OrderingModeDecl" */
+
+/* Line 480 of lalr1.cc  */
+#line 790 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 433 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 357: /* "EmptyOrderDecl" */
+
+/* Line 480 of lalr1.cc  */
+#line 787 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 442 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 358: /* "CopyNamespacesDecl" */
+
+/* Line 480 of lalr1.cc  */
+#line 786 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 451 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 359: /* "Import" */
+
+/* Line 480 of lalr1.cc  */
+#line 787 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 460 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 360: /* "SchemaImport" */
+
+/* Line 480 of lalr1.cc  */
+#line 791 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 469 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 361: /* "URILiteralList" */
+
+/* Line 480 of lalr1.cc  */
+#line 793 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 478 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 362: /* "SchemaPrefix" */
+
+/* Line 480 of lalr1.cc  */
+#line 792 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 487 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 363: /* "ModuleImport" */
+
+/* Line 480 of lalr1.cc  */
+#line 788 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 496 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 364: /* "NamespaceDecl" */
+
+/* Line 480 of lalr1.cc  */
+#line 788 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 505 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 365: /* "DefaultNamespaceDecl" */
+
+/* Line 480 of lalr1.cc  */
+#line 786 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 514 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 366: /* "VFO_DeclList" */
+
+/* Line 480 of lalr1.cc  */
+#line 795 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 523 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 367: /* "VFO_Decl" */
+
+/* Line 480 of lalr1.cc  */
+#line 795 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 532 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 368: /* "DecimalFormatDecl" */
+
+/* Line 480 of lalr1.cc  */
+#line 795 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 541 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 369: /* "DecimalFormatParamList" */
+
+/* Line 480 of lalr1.cc  */
+#line 801 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
 	{ delete (yyvaluep->vstrpair); };
 
 /* Line 480 of lalr1.cc  */
-#line 533 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
+#line 550 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
 	break;
-      case 371: /* "DecimalFormatParam" */
+      case 370: /* "DecimalFormatParam" */
 
 /* Line 480 of lalr1.cc  */
-#line 947 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 801 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
 	{ delete (yyvaluep->strpair); };
 
 /* Line 480 of lalr1.cc  */
-#line 542 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 373: /* "OptionDecl" */
-
-/* Line 480 of lalr1.cc  */
-#line 932 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 551 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 374: /* "FTOptionDecl" */
-
-/* Line 480 of lalr1.cc  */
-#line 935 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 560 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 375: /* "CtxItemDecl" */
-
-/* Line 480 of lalr1.cc  */
-#line 932 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 569 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 376: /* "CtxItemDecl2" */
-
-/* Line 480 of lalr1.cc  */
-#line 932 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 578 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 377: /* "CtxItemDecl3" */
-
-/* Line 480 of lalr1.cc  */
-#line 932 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 587 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 378: /* "CtxItemDecl4" */
-
-/* Line 480 of lalr1.cc  */
-#line 932 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 596 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 379: /* "VarDecl" */
-
-/* Line 480 of lalr1.cc  */
-#line 932 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 605 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 380: /* "VarNameAndType" */
-
-/* Line 480 of lalr1.cc  */
-#line 947 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 559 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 372: /* "OptionDecl" */
+
+/* Line 480 of lalr1.cc  */
+#line 789 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 568 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 373: /* "FTOptionDecl" */
+
+/* Line 480 of lalr1.cc  */
+#line 798 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 577 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 374: /* "CtxItemDecl" */
+
+/* Line 480 of lalr1.cc  */
+#line 793 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 586 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 375: /* "CtxItemDecl2" */
+
+/* Line 480 of lalr1.cc  */
+#line 793 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 595 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 376: /* "CtxItemDecl3" */
+
+/* Line 480 of lalr1.cc  */
+#line 793 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 604 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 377: /* "CtxItemDecl4" */
+
+/* Line 480 of lalr1.cc  */
+#line 794 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 613 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 378: /* "VarDecl" */
+
+/* Line 480 of lalr1.cc  */
+#line 794 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 622 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 379: /* "VarNameAndType" */
+
+/* Line 480 of lalr1.cc  */
+#line 801 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
 	{ delete (yyvaluep->varnametype); };
 
 /* Line 480 of lalr1.cc  */
-#line 614 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 381: /* "AnnotationList" */
-
-/* Line 480 of lalr1.cc  */
-#line 932 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 623 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 382: /* "Annotation" */
-
-/* Line 480 of lalr1.cc  */
-#line 932 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 632 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 383: /* "AnnotationLiteralList" */
-
-/* Line 480 of lalr1.cc  */
-#line 932 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 641 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 384: /* "FunctionDecl" */
-
-/* Line 480 of lalr1.cc  */
-#line 932 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 650 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 385: /* "FunctionDecl2" */
-
-/* Line 480 of lalr1.cc  */
-#line 932 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 659 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 386: /* "FunctionDeclSimple" */
-
-/* Line 480 of lalr1.cc  */
-#line 932 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 668 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 387: /* "FunctionDeclUpdating" */
-
-/* Line 480 of lalr1.cc  */
-#line 932 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 677 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 388: /* "FunctionSig" */
-
-/* Line 480 of lalr1.cc  */
-#line 947 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 631 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 380: /* "AnnotationList" */
+
+/* Line 480 of lalr1.cc  */
+#line 784 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 640 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 381: /* "Annotation" */
+
+/* Line 480 of lalr1.cc  */
+#line 784 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 649 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 382: /* "AnnotationLiteralList" */
+
+/* Line 480 of lalr1.cc  */
+#line 784 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 658 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 383: /* "FunctionDecl" */
+
+/* Line 480 of lalr1.cc  */
+#line 787 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 667 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 384: /* "FunctionDecl2" */
+
+/* Line 480 of lalr1.cc  */
+#line 787 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 676 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 385: /* "FunctionDeclSimple" */
+
+/* Line 480 of lalr1.cc  */
+#line 787 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 685 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 386: /* "FunctionDeclUpdating" */
+
+/* Line 480 of lalr1.cc  */
+#line 787 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 694 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 387: /* "FunctionSig" */
+
+/* Line 480 of lalr1.cc  */
+#line 801 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
 	{ delete (yyvaluep->fnsig); };
 
 /* Line 480 of lalr1.cc  */
-#line 686 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 389: /* "ParamList" */
-
-/* Line 480 of lalr1.cc  */
-#line 932 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 695 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 390: /* "Param" */
-
-/* Line 480 of lalr1.cc  */
-#line 932 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 704 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 391: /* "CollectionDecl" */
-
-/* Line 480 of lalr1.cc  */
-#line 932 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 713 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 393: /* "IndexDecl" */
-
-/* Line 480 of lalr1.cc  */
-#line 932 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 722 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 394: /* "IndexKeyList" */
-
-/* Line 480 of lalr1.cc  */
-#line 932 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 731 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 395: /* "IndexKeySpec" */
-
-/* Line 480 of lalr1.cc  */
-#line 932 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 740 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 396: /* "IntegrityConstraintDecl" */
-
-/* Line 480 of lalr1.cc  */
-#line 932 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 749 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 397: /* "QueryBody" */
-
-/* Line 480 of lalr1.cc  */
-#line 944 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 758 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 398: /* "StatementsAndOptionalExprTop" */
-
-/* Line 480 of lalr1.cc  */
-#line 944 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 767 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 399: /* "StatementsAndOptionalExpr" */
-
-/* Line 480 of lalr1.cc  */
-#line 944 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 776 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 400: /* "StatementsAndExpr" */
-
-/* Line 480 of lalr1.cc  */
-#line 944 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 785 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 401: /* "Statements" */
-
-/* Line 480 of lalr1.cc  */
-#line 944 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 794 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 402: /* "Statement" */
-
-/* Line 480 of lalr1.cc  */
-#line 944 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 803 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 403: /* "BlockStatement" */
-
-/* Line 480 of lalr1.cc  */
-#line 944 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 812 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 404: /* "BlockExpr" */
-
-/* Line 480 of lalr1.cc  */
-#line 944 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 821 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 405: /* "EnclosedStatementsAndOptionalExpr" */
-
-/* Line 480 of lalr1.cc  */
-#line 944 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 830 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 406: /* "VarDeclStatement" */
-
-/* Line 480 of lalr1.cc  */
-#line 944 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 839 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 409: /* "AssignStatement" */
-
-/* Line 480 of lalr1.cc  */
-#line 944 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 848 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 410: /* "ApplyStatement" */
-
-/* Line 480 of lalr1.cc  */
-#line 944 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 857 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 411: /* "ExitStatement" */
-
-/* Line 480 of lalr1.cc  */
-#line 944 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 866 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 412: /* "WhileStatement" */
-
-/* Line 480 of lalr1.cc  */
-#line 944 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 875 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 413: /* "FlowCtlStatement" */
-
-/* Line 480 of lalr1.cc  */
-#line 944 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 884 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 414: /* "FLWORStatement" */
-
-/* Line 480 of lalr1.cc  */
-#line 944 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 893 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 415: /* "ReturnStatement" */
-
-/* Line 480 of lalr1.cc  */
-#line 944 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 902 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 416: /* "IfStatement" */
-
-/* Line 480 of lalr1.cc  */
-#line 944 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 911 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 417: /* "TryStatement" */
-
-/* Line 480 of lalr1.cc  */
-#line 944 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 920 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 418: /* "CatchListStatement" */
-
-/* Line 480 of lalr1.cc  */
-#line 944 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 929 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 419: /* "CatchStatement" */
-
-/* Line 480 of lalr1.cc  */
-#line 944 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 938 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 421: /* "Expr" */
-
-/* Line 480 of lalr1.cc  */
-#line 944 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 947 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 422: /* "ExprSingle" */
-
-/* Line 480 of lalr1.cc  */
-#line 944 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 956 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 423: /* "ExprSimple" */
-
-/* Line 480 of lalr1.cc  */
-#line 944 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 965 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 424: /* "FLWORExpr" */
-
-/* Line 480 of lalr1.cc  */
-#line 944 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 974 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 425: /* "ReturnExpr" */
-
-/* Line 480 of lalr1.cc  */
-#line 944 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 983 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 428: /* "FLWORWinCond" */
-
-/* Line 480 of lalr1.cc  */
-#line 932 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 992 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 429: /* "WindowClause" */
-
-/* Line 480 of lalr1.cc  */
-#line 932 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1001 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 430: /* "CountClause" */
-
-/* Line 480 of lalr1.cc  */
-#line 932 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1010 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 431: /* "ForLetWinClause" */
-
-/* Line 480 of lalr1.cc  */
-#line 932 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1019 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 433: /* "FLWORClauseList" */
-
-/* Line 480 of lalr1.cc  */
-#line 932 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1028 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 434: /* "ForClause" */
-
-/* Line 480 of lalr1.cc  */
-#line 932 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1037 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 436: /* "VarInDeclList" */
-
-/* Line 480 of lalr1.cc  */
-#line 932 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1046 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 437: /* "VarInDecl" */
-
-/* Line 480 of lalr1.cc  */
-#line 932 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1055 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 438: /* "PositionalVar" */
-
-/* Line 480 of lalr1.cc  */
-#line 932 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1064 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 439: /* "FTScoreVar" */
-
-/* Line 480 of lalr1.cc  */
-#line 935 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1073 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 440: /* "LetClause" */
-
-/* Line 480 of lalr1.cc  */
-#line 932 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1082 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 441: /* "VarGetsDeclList" */
-
-/* Line 480 of lalr1.cc  */
-#line 932 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1091 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 442: /* "VarGetsDecl" */
-
-/* Line 480 of lalr1.cc  */
-#line 932 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1100 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 443: /* "WindowVarDecl" */
-
-/* Line 480 of lalr1.cc  */
-#line 932 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1109 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 444: /* "WindowVars" */
-
-/* Line 480 of lalr1.cc  */
-#line 932 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1118 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 445: /* "WindowVars3" */
-
-/* Line 480 of lalr1.cc  */
-#line 932 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1127 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 446: /* "WindowVars2" */
-
-/* Line 480 of lalr1.cc  */
-#line 932 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1136 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 447: /* "WhereClause" */
-
-/* Line 480 of lalr1.cc  */
-#line 932 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1145 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 448: /* "GroupByClause" */
-
-/* Line 480 of lalr1.cc  */
-#line 932 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1154 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 449: /* "GroupSpecList" */
-
-/* Line 480 of lalr1.cc  */
-#line 932 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1163 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 450: /* "GroupSpec" */
-
-/* Line 480 of lalr1.cc  */
-#line 932 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1172 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 451: /* "GroupCollationSpec" */
-
-/* Line 480 of lalr1.cc  */
-#line 932 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1181 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 452: /* "OrderByClause" */
-
-/* Line 480 of lalr1.cc  */
-#line 932 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1190 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 453: /* "OrderSpecList" */
-
-/* Line 480 of lalr1.cc  */
-#line 932 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1199 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 454: /* "OrderSpec" */
-
-/* Line 480 of lalr1.cc  */
-#line 932 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1208 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 455: /* "OrderModifier" */
-
-/* Line 480 of lalr1.cc  */
-#line 932 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1217 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 456: /* "OrderDirSpec" */
-
-/* Line 480 of lalr1.cc  */
-#line 932 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1226 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 457: /* "OrderEmptySpec" */
-
-/* Line 480 of lalr1.cc  */
-#line 932 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1235 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 458: /* "OrderCollationSpec" */
-
-/* Line 480 of lalr1.cc  */
-#line 932 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1244 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 459: /* "QuantifiedExpr" */
-
-/* Line 480 of lalr1.cc  */
-#line 944 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1253 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 460: /* "QVarInDeclList" */
-
-/* Line 480 of lalr1.cc  */
-#line 932 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1262 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 461: /* "QVarInDecl" */
-
-/* Line 480 of lalr1.cc  */
-#line 932 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1271 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 462: /* "SwitchExpr" */
-
-/* Line 480 of lalr1.cc  */
-#line 944 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1280 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 463: /* "SwitchCaseClauseList" */
-
-/* Line 480 of lalr1.cc  */
-#line 932 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1289 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 464: /* "SwitchCaseClause" */
-
-/* Line 480 of lalr1.cc  */
-#line 932 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1298 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 465: /* "SwitchCaseOperandList" */
-
-/* Line 480 of lalr1.cc  */
-#line 932 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1307 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 466: /* "SwitchStatement" */
-
-/* Line 480 of lalr1.cc  */
-#line 944 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1316 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 469: /* "TypeswitchExpr" */
-
-/* Line 480 of lalr1.cc  */
-#line 944 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1325 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 470: /* "TypeswitchStatement" */
-
-/* Line 480 of lalr1.cc  */
-#line 944 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1334 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 471: /* "CaseClauseList" */
-
-/* Line 480 of lalr1.cc  */
-#line 932 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1343 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 472: /* "CaseClause" */
-
-/* Line 480 of lalr1.cc  */
-#line 932 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1352 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 475: /* "SequenceTypeList" */
-
-/* Line 480 of lalr1.cc  */
-#line 932 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1361 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 476: /* "IfExpr" */
-
-/* Line 480 of lalr1.cc  */
-#line 944 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1370 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 477: /* "OrExpr" */
-
-/* Line 480 of lalr1.cc  */
-#line 944 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1379 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 478: /* "AndExpr" */
-
-/* Line 480 of lalr1.cc  */
-#line 944 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1388 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 479: /* "NotExpr" */
-
-/* Line 480 of lalr1.cc  */
-#line 944 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1397 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 480: /* "ComparisonExpr" */
-
-/* Line 480 of lalr1.cc  */
-#line 944 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1406 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 481: /* "FTContainsExpr" */
-
-/* Line 480 of lalr1.cc  */
-#line 944 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1415 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 482: /* "StringConcatExpr" */
-
-/* Line 480 of lalr1.cc  */
-#line 944 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1424 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 483: /* "opt_FTIgnoreOption" */
-
-/* Line 480 of lalr1.cc  */
-#line 935 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1433 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 484: /* "RangeExpr" */
-
-/* Line 480 of lalr1.cc  */
-#line 944 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1442 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 485: /* "AdditiveExpr" */
-
-/* Line 480 of lalr1.cc  */
-#line 944 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1451 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 486: /* "MultiplicativeExpr" */
-
-/* Line 480 of lalr1.cc  */
-#line 944 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1460 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 487: /* "UnionExpr" */
-
-/* Line 480 of lalr1.cc  */
-#line 944 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1469 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 488: /* "IntersectExceptExpr" */
-
-/* Line 480 of lalr1.cc  */
-#line 944 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1478 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 489: /* "InstanceofExpr" */
-
-/* Line 480 of lalr1.cc  */
-#line 944 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1487 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 490: /* "TreatExpr" */
-
-/* Line 480 of lalr1.cc  */
-#line 944 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1496 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 491: /* "CastableExpr" */
-
-/* Line 480 of lalr1.cc  */
-#line 944 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1505 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 492: /* "CastExpr" */
-
-/* Line 480 of lalr1.cc  */
-#line 944 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1514 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 493: /* "SingleType" */
-
-/* Line 480 of lalr1.cc  */
-#line 932 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1523 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 494: /* "UnaryExpr" */
-
-/* Line 480 of lalr1.cc  */
-#line 944 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1532 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 495: /* "SignList" */
-
-/* Line 480 of lalr1.cc  */
-#line 932 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1541 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 496: /* "ValueExpr" */
-
-/* Line 480 of lalr1.cc  */
-#line 944 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1550 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 497: /* "SimpleMapExpr" */
-
-/* Line 480 of lalr1.cc  */
-#line 944 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1559 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 498: /* "ValueComp" */
-
-/* Line 480 of lalr1.cc  */
-#line 932 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1568 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 499: /* "ValidateExpr" */
-
-/* Line 480 of lalr1.cc  */
-#line 944 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1577 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 500: /* "ExtensionExpr" */
-
-/* Line 480 of lalr1.cc  */
-#line 944 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1586 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 501: /* "Pragma_list" */
-
-/* Line 480 of lalr1.cc  */
-#line 932 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1595 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 502: /* "Pragma" */
-
-/* Line 480 of lalr1.cc  */
-#line 932 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1604 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 503: /* "PathExpr" */
-
-/* Line 480 of lalr1.cc  */
-#line 944 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1613 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 504: /* "RelativePathExpr" */
-
-/* Line 480 of lalr1.cc  */
-#line 944 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1622 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 505: /* "StepExpr" */
-
-/* Line 480 of lalr1.cc  */
-#line 944 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1631 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 506: /* "NameTest" */
-
-/* Line 480 of lalr1.cc  */
-#line 932 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1640 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 507: /* "Wildcard" */
-
-/* Line 480 of lalr1.cc  */
-#line 932 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1649 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 508: /* "FilterExpr" */
-
-/* Line 480 of lalr1.cc  */
-#line 944 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1658 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 509: /* "PredicateList" */
-
-/* Line 480 of lalr1.cc  */
-#line 932 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1667 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 510: /* "Predicate" */
-
-/* Line 480 of lalr1.cc  */
-#line 944 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1676 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 511: /* "PrimaryExpr" */
-
-/* Line 480 of lalr1.cc  */
-#line 944 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1685 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 512: /* "Literal" */
-
-/* Line 480 of lalr1.cc  */
-#line 944 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1694 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 513: /* "NumericLiteral" */
-
-/* Line 480 of lalr1.cc  */
-#line 944 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1703 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 515: /* "VarRef" */
-
-/* Line 480 of lalr1.cc  */
-#line 944 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1712 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 516: /* "ParenthesizedExpr" */
-
-/* Line 480 of lalr1.cc  */
-#line 944 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1721 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 517: /* "ContextItemExpr" */
-
-/* Line 480 of lalr1.cc  */
-#line 944 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1730 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 518: /* "OrderedExpr" */
-
-/* Line 480 of lalr1.cc  */
-#line 944 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1739 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 519: /* "UnorderedExpr" */
-
-/* Line 480 of lalr1.cc  */
-#line 944 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1748 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 520: /* "FunctionCall" */
-
-/* Line 480 of lalr1.cc  */
-#line 944 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1757 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 521: /* "ArgList" */
-
-/* Line 480 of lalr1.cc  */
-#line 932 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1766 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 525: /* "Constructor" */
-
-/* Line 480 of lalr1.cc  */
-#line 944 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1775 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 526: /* "DirectConstructor" */
-
-/* Line 480 of lalr1.cc  */
-#line 944 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1784 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 527: /* "DirElemConstructor" */
-
-/* Line 480 of lalr1.cc  */
-#line 944 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1793 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 528: /* "DirElemContentList" */
-
-/* Line 480 of lalr1.cc  */
-#line 932 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1802 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 529: /* "DirAttributeList" */
-
-/* Line 480 of lalr1.cc  */
-#line 932 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1811 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 530: /* "DirAttr" */
-
-/* Line 480 of lalr1.cc  */
-#line 932 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1820 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 532: /* "DirAttributeValue" */
-
-/* Line 480 of lalr1.cc  */
-#line 932 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1829 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 533: /* "opt_QuoteAttrContentList" */
-
-/* Line 480 of lalr1.cc  */
-#line 932 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1838 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 534: /* "QuoteAttrContentList" */
-
-/* Line 480 of lalr1.cc  */
-#line 932 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1847 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 535: /* "opt_AposAttrContentList" */
-
-/* Line 480 of lalr1.cc  */
-#line 932 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1856 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 536: /* "AposAttrContentList" */
-
-/* Line 480 of lalr1.cc  */
-#line 932 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1865 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 537: /* "QuoteAttrValueContent" */
-
-/* Line 480 of lalr1.cc  */
-#line 932 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1874 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 538: /* "AposAttrValueContent" */
-
-/* Line 480 of lalr1.cc  */
-#line 932 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1883 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 539: /* "DirElemContent" */
-
-/* Line 480 of lalr1.cc  */
-#line 944 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1892 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 540: /* "CommonContent" */
-
-/* Line 480 of lalr1.cc  */
-#line 944 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1901 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 541: /* "DirCommentConstructor" */
-
-/* Line 480 of lalr1.cc  */
-#line 944 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1910 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 542: /* "DirPIConstructor" */
-
-/* Line 480 of lalr1.cc  */
-#line 944 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1919 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 543: /* "CDataSection" */
-
-/* Line 480 of lalr1.cc  */
-#line 944 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1928 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 544: /* "ComputedConstructor" */
-
-/* Line 480 of lalr1.cc  */
-#line 944 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1937 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 545: /* "CompDocConstructor" */
-
-/* Line 480 of lalr1.cc  */
-#line 944 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1946 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 546: /* "CompElemConstructor" */
-
-/* Line 480 of lalr1.cc  */
-#line 944 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1955 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 547: /* "CompAttrConstructor" */
-
-/* Line 480 of lalr1.cc  */
-#line 944 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1964 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 548: /* "CompTextConstructor" */
-
-/* Line 480 of lalr1.cc  */
-#line 944 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1973 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 549: /* "CompCommentConstructor" */
-
-/* Line 480 of lalr1.cc  */
-#line 944 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1982 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 550: /* "CompPIConstructor" */
-
-/* Line 480 of lalr1.cc  */
-#line 944 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 1991 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 551: /* "CompNamespaceConstructor" */
-
-/* Line 480 of lalr1.cc  */
-#line 944 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2000 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 552: /* "TypeDeclaration" */
-
-/* Line 480 of lalr1.cc  */
-#line 932 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2009 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 553: /* "SequenceType" */
-
-/* Line 480 of lalr1.cc  */
-#line 932 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2018 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 554: /* "OccurrenceIndicator" */
-
-/* Line 480 of lalr1.cc  */
-#line 932 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2027 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 555: /* "ItemType" */
-
-/* Line 480 of lalr1.cc  */
-#line 932 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2036 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 556: /* "TypeList" */
-
-/* Line 480 of lalr1.cc  */
-#line 932 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2045 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 557: /* "GeneralizedAtomicType" */
-
-/* Line 480 of lalr1.cc  */
-#line 932 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2054 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 558: /* "SimpleType" */
-
-/* Line 480 of lalr1.cc  */
-#line 932 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2063 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 559: /* "KindTest" */
-
-/* Line 480 of lalr1.cc  */
-#line 932 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2072 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 560: /* "AnyKindTest" */
-
-/* Line 480 of lalr1.cc  */
-#line 932 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2081 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 561: /* "DocumentTest" */
-
-/* Line 480 of lalr1.cc  */
-#line 932 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2090 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 562: /* "NamespaceTest" */
-
-/* Line 480 of lalr1.cc  */
-#line 932 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2099 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 563: /* "TextTest" */
-
-/* Line 480 of lalr1.cc  */
-#line 932 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2108 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 564: /* "CommentTest" */
-
-/* Line 480 of lalr1.cc  */
-#line 932 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2117 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 565: /* "PITest" */
-
-/* Line 480 of lalr1.cc  */
-#line 932 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2126 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 566: /* "AttributeTest" */
-
-/* Line 480 of lalr1.cc  */
-#line 932 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2135 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 567: /* "SchemaAttributeTest" */
-
-/* Line 480 of lalr1.cc  */
-#line 932 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2144 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 568: /* "ElementTest" */
-
-/* Line 480 of lalr1.cc  */
-#line 932 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2153 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 569: /* "SchemaElementTest" */
-
-/* Line 480 of lalr1.cc  */
-#line 932 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2162 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 570: /* "TypeName" */
-
-/* Line 480 of lalr1.cc  */
-#line 932 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2171 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 571: /* "TypeName_WITH_HOOK" */
-
-/* Line 480 of lalr1.cc  */
-#line 932 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2180 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 572: /* "StringLiteral" */
-
-/* Line 480 of lalr1.cc  */
-#line 944 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2189 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 574: /* "AnyFunctionTest" */
-
-/* Line 480 of lalr1.cc  */
-#line 932 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2198 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 575: /* "TypedFunctionTest" */
-
-/* Line 480 of lalr1.cc  */
-#line 932 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2207 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 578: /* "InsertExpr" */
-
-/* Line 480 of lalr1.cc  */
-#line 944 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2216 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 579: /* "DeleteExpr" */
-
-/* Line 480 of lalr1.cc  */
-#line 944 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2225 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 580: /* "ReplaceExpr" */
-
-/* Line 480 of lalr1.cc  */
-#line 944 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2234 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 581: /* "RenameExpr" */
-
-/* Line 480 of lalr1.cc  */
-#line 944 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2243 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 582: /* "TransformExpr" */
-
-/* Line 480 of lalr1.cc  */
-#line 944 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2252 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 583: /* "VarNameList" */
-
-/* Line 480 of lalr1.cc  */
-#line 944 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2261 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 584: /* "VarNameDecl" */
-
-/* Line 480 of lalr1.cc  */
-#line 944 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2270 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 585: /* "TryExpr" */
-
-/* Line 480 of lalr1.cc  */
-#line 944 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2279 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 586: /* "CatchListExpr" */
-
-/* Line 480 of lalr1.cc  */
-#line 944 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2288 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 587: /* "CatchExpr" */
-
-/* Line 480 of lalr1.cc  */
-#line 944 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2297 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 588: /* "BracedExpr" */
-
-/* Line 480 of lalr1.cc  */
-#line 944 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2306 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 589: /* "NameTestList" */
-
-/* Line 480 of lalr1.cc  */
-#line 947 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 703 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 388: /* "ParamList" */
+
+/* Line 480 of lalr1.cc  */
+#line 790 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 712 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 389: /* "Param" */
+
+/* Line 480 of lalr1.cc  */
+#line 790 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 721 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 390: /* "CollectionDecl" */
+
+/* Line 480 of lalr1.cc  */
+#line 793 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 730 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 392: /* "IndexDecl" */
+
+/* Line 480 of lalr1.cc  */
+#line 793 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 739 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 393: /* "IndexKeyList" */
+
+/* Line 480 of lalr1.cc  */
+#line 793 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 748 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 394: /* "IndexKeySpec" */
+
+/* Line 480 of lalr1.cc  */
+#line 793 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 757 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 395: /* "IntegrityConstraintDecl" */
+
+/* Line 480 of lalr1.cc  */
+#line 793 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 766 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 396: /* "QueryBody" */
+
+/* Line 480 of lalr1.cc  */
+#line 800 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 775 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 397: /* "StatementsAndOptionalExprTop" */
+
+/* Line 480 of lalr1.cc  */
+#line 800 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 784 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 398: /* "StatementsAndOptionalExpr" */
+
+/* Line 480 of lalr1.cc  */
+#line 800 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 793 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 399: /* "StatementsAndExpr" */
+
+/* Line 480 of lalr1.cc  */
+#line 800 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 802 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 400: /* "Statements" */
+
+/* Line 480 of lalr1.cc  */
+#line 800 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 811 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 401: /* "Statement" */
+
+/* Line 480 of lalr1.cc  */
+#line 800 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 820 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 402: /* "BlockStatement" */
+
+/* Line 480 of lalr1.cc  */
+#line 800 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 829 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 403: /* "BlockExpr" */
+
+/* Line 480 of lalr1.cc  */
+#line 800 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 838 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 404: /* "EnclosedStatementsAndOptionalExpr" */
+
+/* Line 480 of lalr1.cc  */
+#line 800 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 847 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 405: /* "VarDeclStatement" */
+
+/* Line 480 of lalr1.cc  */
+#line 800 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 856 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 408: /* "AssignStatement" */
+
+/* Line 480 of lalr1.cc  */
+#line 800 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 865 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 409: /* "ApplyStatement" */
+
+/* Line 480 of lalr1.cc  */
+#line 800 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 874 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 410: /* "ExitStatement" */
+
+/* Line 480 of lalr1.cc  */
+#line 800 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 883 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 411: /* "WhileStatement" */
+
+/* Line 480 of lalr1.cc  */
+#line 800 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 892 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 412: /* "FlowCtlStatement" */
+
+/* Line 480 of lalr1.cc  */
+#line 800 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 901 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 413: /* "FLWORStatement" */
+
+/* Line 480 of lalr1.cc  */
+#line 800 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 910 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 414: /* "ReturnStatement" */
+
+/* Line 480 of lalr1.cc  */
+#line 800 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 919 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 415: /* "IfStatement" */
+
+/* Line 480 of lalr1.cc  */
+#line 800 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 928 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 416: /* "TryStatement" */
+
+/* Line 480 of lalr1.cc  */
+#line 800 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 937 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 417: /* "CatchListStatement" */
+
+/* Line 480 of lalr1.cc  */
+#line 800 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 946 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 418: /* "CatchStatement" */
+
+/* Line 480 of lalr1.cc  */
+#line 800 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 955 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 419: /* "VoidStatement" */
+
+/* Line 480 of lalr1.cc  */
+#line 797 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 964 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 420: /* "Expr" */
+
+/* Line 480 of lalr1.cc  */
+#line 800 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 973 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 421: /* "ExprSingle" */
+
+/* Line 480 of lalr1.cc  */
+#line 800 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 982 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 422: /* "ExprSimple" */
+
+/* Line 480 of lalr1.cc  */
+#line 800 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 991 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 423: /* "FLWORExpr" */
+
+/* Line 480 of lalr1.cc  */
+#line 800 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1000 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 424: /* "ReturnExpr" */
+
+/* Line 480 of lalr1.cc  */
+#line 800 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1009 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 427: /* "FLWORWinCond" */
+
+/* Line 480 of lalr1.cc  */
+#line 794 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1018 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 428: /* "WindowClause" */
+
+/* Line 480 of lalr1.cc  */
+#line 787 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1027 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 429: /* "CountClause" */
+
+/* Line 480 of lalr1.cc  */
+#line 795 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1036 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 430: /* "ForLetWinClause" */
+
+/* Line 480 of lalr1.cc  */
+#line 787 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1045 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 432: /* "FLWORClauseList" */
+
+/* Line 480 of lalr1.cc  */
+#line 787 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1054 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 433: /* "ForClause" */
+
+/* Line 480 of lalr1.cc  */
+#line 787 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1063 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 435: /* "VarInDeclList" */
+
+/* Line 480 of lalr1.cc  */
+#line 794 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1072 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 436: /* "VarInDecl" */
+
+/* Line 480 of lalr1.cc  */
+#line 794 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1081 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 437: /* "PositionalVar" */
+
+/* Line 480 of lalr1.cc  */
+#line 790 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1090 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 438: /* "FTScoreVar" */
+
+/* Line 480 of lalr1.cc  */
+#line 798 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1099 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 439: /* "LetClause" */
+
+/* Line 480 of lalr1.cc  */
+#line 788 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1108 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 440: /* "VarGetsDeclList" */
+
+/* Line 480 of lalr1.cc  */
+#line 794 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1117 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 441: /* "VarGetsDecl" */
+
+/* Line 480 of lalr1.cc  */
+#line 794 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1126 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 442: /* "WindowVarDecl" */
+
+/* Line 480 of lalr1.cc  */
+#line 794 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1135 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 443: /* "WindowVars" */
+
+/* Line 480 of lalr1.cc  */
+#line 794 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1144 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 444: /* "WindowVars3" */
+
+/* Line 480 of lalr1.cc  */
+#line 794 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1153 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 445: /* "WindowVars2" */
+
+/* Line 480 of lalr1.cc  */
+#line 794 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1162 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 446: /* "WhereClause" */
+
+/* Line 480 of lalr1.cc  */
+#line 795 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1171 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 447: /* "GroupByClause" */
+
+/* Line 480 of lalr1.cc  */
+#line 789 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1180 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 448: /* "GroupSpecList" */
+
+/* Line 480 of lalr1.cc  */
+#line 789 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1189 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 449: /* "GroupSpec" */
+
+/* Line 480 of lalr1.cc  */
+#line 789 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1198 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 450: /* "GroupCollationSpec" */
+
+/* Line 480 of lalr1.cc  */
+#line 789 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1207 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 451: /* "OrderByClause" */
+
+/* Line 480 of lalr1.cc  */
+#line 789 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1216 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 452: /* "OrderSpecList" */
+
+/* Line 480 of lalr1.cc  */
+#line 790 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1225 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 453: /* "OrderSpec" */
+
+/* Line 480 of lalr1.cc  */
+#line 790 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1234 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 454: /* "OrderModifier" */
+
+/* Line 480 of lalr1.cc  */
+#line 789 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1243 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 455: /* "OrderDirSpec" */
+
+/* Line 480 of lalr1.cc  */
+#line 789 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1252 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 456: /* "OrderEmptySpec" */
+
+/* Line 480 of lalr1.cc  */
+#line 789 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1261 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 457: /* "OrderCollationSpec" */
+
+/* Line 480 of lalr1.cc  */
+#line 789 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1270 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 458: /* "QuantifiedExpr" */
+
+/* Line 480 of lalr1.cc  */
+#line 800 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1279 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 459: /* "QVarInDeclList" */
+
+/* Line 480 of lalr1.cc  */
+#line 790 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1288 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 460: /* "QVarInDecl" */
+
+/* Line 480 of lalr1.cc  */
+#line 790 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1297 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 461: /* "SwitchExpr" */
+
+/* Line 480 of lalr1.cc  */
+#line 800 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1306 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 462: /* "SwitchCaseClauseList" */
+
+/* Line 480 of lalr1.cc  */
+#line 796 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1315 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 463: /* "SwitchCaseClause" */
+
+/* Line 480 of lalr1.cc  */
+#line 796 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1324 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 464: /* "SwitchCaseOperandList" */
+
+/* Line 480 of lalr1.cc  */
+#line 796 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1333 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 465: /* "SwitchStatement" */
+
+/* Line 480 of lalr1.cc  */
+#line 800 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1342 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 468: /* "TypeswitchExpr" */
+
+/* Line 480 of lalr1.cc  */
+#line 800 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1351 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 469: /* "TypeswitchStatement" */
+
+/* Line 480 of lalr1.cc  */
+#line 800 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1360 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 470: /* "CaseClauseList" */
+
+/* Line 480 of lalr1.cc  */
+#line 785 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1369 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 471: /* "CaseClause" */
+
+/* Line 480 of lalr1.cc  */
+#line 785 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1378 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 474: /* "SequenceTypeList" */
+
+/* Line 480 of lalr1.cc  */
+#line 792 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1387 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 475: /* "IfExpr" */
+
+/* Line 480 of lalr1.cc  */
+#line 800 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1396 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 476: /* "OrExpr" */
+
+/* Line 480 of lalr1.cc  */
+#line 800 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1405 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 477: /* "AndExpr" */
+
+/* Line 480 of lalr1.cc  */
+#line 800 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1414 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 478: /* "NotExpr" */
+
+/* Line 480 of lalr1.cc  */
+#line 797 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1423 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 479: /* "ComparisonExpr" */
+
+/* Line 480 of lalr1.cc  */
+#line 800 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1432 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 480: /* "FTContainsExpr" */
+
+/* Line 480 of lalr1.cc  */
+#line 800 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1441 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 481: /* "StringConcatExpr" */
+
+/* Line 480 of lalr1.cc  */
+#line 800 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1450 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 482: /* "opt_FTIgnoreOption" */
+
+/* Line 480 of lalr1.cc  */
+#line 798 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1459 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 483: /* "RangeExpr" */
+
+/* Line 480 of lalr1.cc  */
+#line 800 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1468 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 484: /* "AdditiveExpr" */
+
+/* Line 480 of lalr1.cc  */
+#line 800 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1477 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 485: /* "MultiplicativeExpr" */
+
+/* Line 480 of lalr1.cc  */
+#line 800 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1486 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 486: /* "UnionExpr" */
+
+/* Line 480 of lalr1.cc  */
+#line 800 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1495 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 487: /* "IntersectExceptExpr" */
+
+/* Line 480 of lalr1.cc  */
+#line 800 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1504 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 488: /* "InstanceofExpr" */
+
+/* Line 480 of lalr1.cc  */
+#line 800 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1513 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 489: /* "TreatExpr" */
+
+/* Line 480 of lalr1.cc  */
+#line 800 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1522 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 490: /* "CastableExpr" */
+
+/* Line 480 of lalr1.cc  */
+#line 800 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1531 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 491: /* "CastExpr" */
+
+/* Line 480 of lalr1.cc  */
+#line 800 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1540 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 492: /* "SingleType" */
+
+/* Line 480 of lalr1.cc  */
+#line 792 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1549 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 493: /* "UnaryExpr" */
+
+/* Line 480 of lalr1.cc  */
+#line 800 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1558 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 494: /* "SignList" */
+
+/* Line 480 of lalr1.cc  */
+#line 792 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1567 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 495: /* "ValueExpr" */
+
+/* Line 480 of lalr1.cc  */
+#line 800 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1576 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 496: /* "SimpleMapExpr" */
+
+/* Line 480 of lalr1.cc  */
+#line 800 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1585 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 497: /* "ValueComp" */
+
+/* Line 480 of lalr1.cc  */
+#line 793 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1594 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 498: /* "ValidateExpr" */
+
+/* Line 480 of lalr1.cc  */
+#line 800 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1603 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 499: /* "ExtensionExpr" */
+
+/* Line 480 of lalr1.cc  */
+#line 800 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1612 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 500: /* "Pragma_list" */
+
+/* Line 480 of lalr1.cc  */
+#line 790 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1621 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 501: /* "Pragma" */
+
+/* Line 480 of lalr1.cc  */
+#line 790 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1630 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 502: /* "PathExpr" */
+
+/* Line 480 of lalr1.cc  */
+#line 800 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1639 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 503: /* "RelativePathExpr" */
+
+/* Line 480 of lalr1.cc  */
+#line 800 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1648 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 504: /* "StepExpr" */
+
+/* Line 480 of lalr1.cc  */
+#line 800 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1657 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 505: /* "NameTest" */
+
+/* Line 480 of lalr1.cc  */
+#line 788 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1666 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 506: /* "Wildcard" */
+
+/* Line 480 of lalr1.cc  */
+#line 795 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1675 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 507: /* "FilterExpr" */
+
+/* Line 480 of lalr1.cc  */
+#line 800 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1684 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 508: /* "PredicateList" */
+
+/* Line 480 of lalr1.cc  */
+#line 790 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1693 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 509: /* "Predicate" */
+
+/* Line 480 of lalr1.cc  */
+#line 800 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1702 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 510: /* "PrimaryExpr" */
+
+/* Line 480 of lalr1.cc  */
+#line 800 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1711 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 511: /* "Literal" */
+
+/* Line 480 of lalr1.cc  */
+#line 800 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1720 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 512: /* "NumericLiteral" */
+
+/* Line 480 of lalr1.cc  */
+#line 800 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1729 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 514: /* "VarRef" */
+
+/* Line 480 of lalr1.cc  */
+#line 800 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1738 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 515: /* "ParenthesizedExpr" */
+
+/* Line 480 of lalr1.cc  */
+#line 800 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1747 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 516: /* "ContextItemExpr" */
+
+/* Line 480 of lalr1.cc  */
+#line 800 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1756 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 517: /* "OrderedExpr" */
+
+/* Line 480 of lalr1.cc  */
+#line 800 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1765 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 518: /* "UnorderedExpr" */
+
+/* Line 480 of lalr1.cc  */
+#line 800 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1774 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 519: /* "FunctionCall" */
+
+/* Line 480 of lalr1.cc  */
+#line 800 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1783 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 520: /* "ArgList" */
+
+/* Line 480 of lalr1.cc  */
+#line 784 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1792 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 524: /* "Constructor" */
+
+/* Line 480 of lalr1.cc  */
+#line 800 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1801 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 525: /* "DirectConstructor" */
+
+/* Line 480 of lalr1.cc  */
+#line 800 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1810 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 526: /* "DirElemConstructor" */
+
+/* Line 480 of lalr1.cc  */
+#line 800 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1819 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 527: /* "DirElemContentList" */
+
+/* Line 480 of lalr1.cc  */
+#line 786 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1828 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 528: /* "DirAttributeList" */
+
+/* Line 480 of lalr1.cc  */
+#line 786 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1837 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 529: /* "DirAttr" */
+
+/* Line 480 of lalr1.cc  */
+#line 786 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1846 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 531: /* "DirAttributeValue" */
+
+/* Line 480 of lalr1.cc  */
+#line 786 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1855 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 532: /* "opt_QuoteAttrContentList" */
+
+/* Line 480 of lalr1.cc  */
+#line 791 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1864 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 533: /* "QuoteAttrContentList" */
+
+/* Line 480 of lalr1.cc  */
+#line 791 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1873 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 534: /* "opt_AposAttrContentList" */
+
+/* Line 480 of lalr1.cc  */
+#line 784 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1882 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 535: /* "AposAttrContentList" */
+
+/* Line 480 of lalr1.cc  */
+#line 784 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1891 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 536: /* "QuoteAttrValueContent" */
+
+/* Line 480 of lalr1.cc  */
+#line 791 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1900 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 537: /* "AposAttrValueContent" */
+
+/* Line 480 of lalr1.cc  */
+#line 784 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1909 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 538: /* "DirElemContent" */
+
+/* Line 480 of lalr1.cc  */
+#line 800 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1918 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 539: /* "CommonContent" */
+
+/* Line 480 of lalr1.cc  */
+#line 800 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1927 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 540: /* "DirCommentConstructor" */
+
+/* Line 480 of lalr1.cc  */
+#line 800 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1936 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 541: /* "DirPIConstructor" */
+
+/* Line 480 of lalr1.cc  */
+#line 800 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1945 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 542: /* "CDataSection" */
+
+/* Line 480 of lalr1.cc  */
+#line 800 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1954 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 543: /* "ComputedConstructor" */
+
+/* Line 480 of lalr1.cc  */
+#line 800 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1963 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 544: /* "CompDocConstructor" */
+
+/* Line 480 of lalr1.cc  */
+#line 800 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1972 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 545: /* "CompElemConstructor" */
+
+/* Line 480 of lalr1.cc  */
+#line 800 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1981 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 546: /* "CompAttrConstructor" */
+
+/* Line 480 of lalr1.cc  */
+#line 800 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1990 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 547: /* "CompTextConstructor" */
+
+/* Line 480 of lalr1.cc  */
+#line 800 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 1999 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 548: /* "CompCommentConstructor" */
+
+/* Line 480 of lalr1.cc  */
+#line 800 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2008 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 549: /* "CompPIConstructor" */
+
+/* Line 480 of lalr1.cc  */
+#line 800 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2017 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 550: /* "CompNamespaceConstructor" */
+
+/* Line 480 of lalr1.cc  */
+#line 800 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2026 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 551: /* "TypeDeclaration" */
+
+/* Line 480 of lalr1.cc  */
+#line 792 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2035 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 552: /* "SequenceType" */
+
+/* Line 480 of lalr1.cc  */
+#line 792 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2044 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 553: /* "OccurrenceIndicator" */
+
+/* Line 480 of lalr1.cc  */
+#line 788 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2053 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 554: /* "ItemType" */
+
+/* Line 480 of lalr1.cc  */
+#line 788 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2062 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 555: /* "TypeList" */
+
+/* Line 480 of lalr1.cc  */
+#line 795 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2071 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 556: /* "GeneralizedAtomicType" */
+
+/* Line 480 of lalr1.cc  */
+#line 785 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2080 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 557: /* "SimpleType" */
+
+/* Line 480 of lalr1.cc  */
+#line 785 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2089 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 558: /* "KindTest" */
+
+/* Line 480 of lalr1.cc  */
+#line 788 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2098 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 559: /* "AnyKindTest" */
+
+/* Line 480 of lalr1.cc  */
+#line 784 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2107 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 560: /* "DocumentTest" */
+
+/* Line 480 of lalr1.cc  */
+#line 786 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2116 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 561: /* "NamespaceTest" */
+
+/* Line 480 of lalr1.cc  */
+#line 792 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2125 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 562: /* "TextTest" */
+
+/* Line 480 of lalr1.cc  */
+#line 792 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2134 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 563: /* "CommentTest" */
+
+/* Line 480 of lalr1.cc  */
+#line 785 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2143 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 564: /* "PITest" */
+
+/* Line 480 of lalr1.cc  */
+#line 790 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2152 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 565: /* "AttributeTest" */
+
+/* Line 480 of lalr1.cc  */
+#line 785 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2161 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 566: /* "SchemaAttributeTest" */
+
+/* Line 480 of lalr1.cc  */
+#line 791 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2170 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 567: /* "ElementTest" */
+
+/* Line 480 of lalr1.cc  */
+#line 786 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2179 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 568: /* "SchemaElementTest" */
+
+/* Line 480 of lalr1.cc  */
+#line 791 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2188 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 569: /* "TypeName" */
+
+/* Line 480 of lalr1.cc  */
+#line 792 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2197 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 570: /* "TypeName_WITH_HOOK" */
+
+/* Line 480 of lalr1.cc  */
+#line 792 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2206 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 571: /* "StringLiteral" */
+
+/* Line 480 of lalr1.cc  */
+#line 800 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2215 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 573: /* "AnyFunctionTest" */
+
+/* Line 480 of lalr1.cc  */
+#line 795 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2224 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 574: /* "TypedFunctionTest" */
+
+/* Line 480 of lalr1.cc  */
+#line 795 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2233 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 577: /* "InsertExpr" */
+
+/* Line 480 of lalr1.cc  */
+#line 800 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2242 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 578: /* "DeleteExpr" */
+
+/* Line 480 of lalr1.cc  */
+#line 800 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2251 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 579: /* "ReplaceExpr" */
+
+/* Line 480 of lalr1.cc  */
+#line 800 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2260 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 580: /* "RenameExpr" */
+
+/* Line 480 of lalr1.cc  */
+#line 800 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2269 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 581: /* "TransformExpr" */
+
+/* Line 480 of lalr1.cc  */
+#line 800 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2278 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 582: /* "VarNameList" */
+
+/* Line 480 of lalr1.cc  */
+#line 800 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2287 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 583: /* "VarNameDecl" */
+
+/* Line 480 of lalr1.cc  */
+#line 800 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2296 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 584: /* "TryExpr" */
+
+/* Line 480 of lalr1.cc  */
+#line 800 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2305 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 585: /* "CatchListExpr" */
+
+/* Line 480 of lalr1.cc  */
+#line 800 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2314 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 586: /* "CatchExpr" */
+
+/* Line 480 of lalr1.cc  */
+#line 800 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2323 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 587: /* "BracedExpr" */
+
+/* Line 480 of lalr1.cc  */
+#line 800 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2332 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 588: /* "NameTestList" */
+
+/* Line 480 of lalr1.cc  */
+#line 801 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
 	{ delete (yyvaluep->name_test_list); };
 
 /* Line 480 of lalr1.cc  */
-#line 2315 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 590: /* "FTSelection" */
-
-/* Line 480 of lalr1.cc  */
-#line 935 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2324 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 593: /* "FTOr" */
-
-/* Line 480 of lalr1.cc  */
-#line 935 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2333 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 594: /* "FTAnd" */
-
-/* Line 480 of lalr1.cc  */
-#line 935 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2342 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 595: /* "FTMildNot" */
-
-/* Line 480 of lalr1.cc  */
-#line 935 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2351 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 596: /* "FTUnaryNot" */
-
-/* Line 480 of lalr1.cc  */
-#line 935 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2360 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 597: /* "FTPrimaryWithOptions" */
-
-/* Line 480 of lalr1.cc  */
-#line 935 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2369 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 598: /* "opt_FTMatchOptions" */
-
-/* Line 480 of lalr1.cc  */
-#line 935 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2378 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 600: /* "FTWeight" */
-
-/* Line 480 of lalr1.cc  */
-#line 935 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2387 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 601: /* "FTPrimary" */
-
-/* Line 480 of lalr1.cc  */
-#line 935 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2396 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 602: /* "opt_FTTimes" */
-
-/* Line 480 of lalr1.cc  */
-#line 935 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2405 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 603: /* "FTExtensionSelection" */
-
-/* Line 480 of lalr1.cc  */
-#line 935 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2414 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 605: /* "FTWords" */
-
-/* Line 480 of lalr1.cc  */
-#line 935 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2423 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 606: /* "FTWordsValue" */
-
-/* Line 480 of lalr1.cc  */
-#line 935 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2432 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 608: /* "FTAnyallOption" */
-
-/* Line 480 of lalr1.cc  */
-#line 935 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2441 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 611: /* "FTPosFilter" */
-
-/* Line 480 of lalr1.cc  */
-#line 935 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2450 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 612: /* "FTOrder" */
-
-/* Line 480 of lalr1.cc  */
-#line 935 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2459 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 613: /* "FTWindow" */
-
-/* Line 480 of lalr1.cc  */
-#line 935 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2468 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 614: /* "FTDistance" */
-
-/* Line 480 of lalr1.cc  */
-#line 935 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2477 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 615: /* "FTUnit" */
-
-/* Line 480 of lalr1.cc  */
-#line 935 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2486 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 616: /* "FTMatchOptions" */
-
-/* Line 480 of lalr1.cc  */
-#line 935 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2495 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 617: /* "FTMatchOption" */
-
-/* Line 480 of lalr1.cc  */
-#line 935 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2504 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 618: /* "FTCaseOption" */
-
-/* Line 480 of lalr1.cc  */
-#line 935 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2513 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 619: /* "FTDiacriticsOption" */
-
-/* Line 480 of lalr1.cc  */
-#line 935 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2522 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 620: /* "FTExtensionOption" */
-
-/* Line 480 of lalr1.cc  */
-#line 935 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2531 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 621: /* "FTStemOption" */
-
-/* Line 480 of lalr1.cc  */
-#line 935 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2540 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 622: /* "FTThesaurusOption" */
-
-/* Line 480 of lalr1.cc  */
-#line 935 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2549 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 626: /* "FTThesaurusID" */
-
-/* Line 480 of lalr1.cc  */
-#line 935 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2558 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 629: /* "FTStopWordOption" */
-
-/* Line 480 of lalr1.cc  */
-#line 935 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2567 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 630: /* "FTStopWords" */
-
-/* Line 480 of lalr1.cc  */
-#line 935 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2576 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 634: /* "FTStopWordsInclExcl" */
-
-/* Line 480 of lalr1.cc  */
-#line 935 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2585 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 635: /* "FTLanguageOption" */
-
-/* Line 480 of lalr1.cc  */
-#line 935 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2594 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 636: /* "FTWildCardOption" */
-
-/* Line 480 of lalr1.cc  */
-#line 935 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2603 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 637: /* "FTContent" */
-
-/* Line 480 of lalr1.cc  */
-#line 935 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2612 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 638: /* "FTTimes" */
-
-/* Line 480 of lalr1.cc  */
-#line 935 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2621 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 639: /* "FTRange" */
-
-/* Line 480 of lalr1.cc  */
-#line 935 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2630 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 640: /* "FTScope" */
-
-/* Line 480 of lalr1.cc  */
-#line 935 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2639 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 641: /* "FTBigUnit" */
-
-/* Line 480 of lalr1.cc  */
-#line 935 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2648 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 642: /* "FTIgnoreOption" */
-
-/* Line 480 of lalr1.cc  */
-#line 935 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2657 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 643: /* "JSONArrayConstructor" */
-
-/* Line 480 of lalr1.cc  */
-#line 938 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2666 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 644: /* "JSONSimpleObjectUnion" */
-
-/* Line 480 of lalr1.cc  */
-#line 938 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2675 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 645: /* "JSONAccumulatorObjectUnion" */
-
-/* Line 480 of lalr1.cc  */
-#line 938 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2684 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 646: /* "JSONObjectConstructor" */
-
-/* Line 480 of lalr1.cc  */
-#line 938 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2693 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 647: /* "JSONPairList" */
-
-/* Line 480 of lalr1.cc  */
-#line 938 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->node) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2702 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 648: /* "JSONInsertExpr" */
-
-/* Line 480 of lalr1.cc  */
-#line 938 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2711 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 649: /* "JSONAppendExpr" */
-
-/* Line 480 of lalr1.cc  */
-#line 938 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2720 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 650: /* "JSONDeleteExpr" */
-
-/* Line 480 of lalr1.cc  */
-#line 938 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2729 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 651: /* "JSONRenameExpr" */
-
-/* Line 480 of lalr1.cc  */
-#line 938 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2738 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 652: /* "JSONReplaceExpr" */
-
-/* Line 480 of lalr1.cc  */
-#line 938 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2747 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 659: /* "QNAME" */
-
-/* Line 480 of lalr1.cc  */
-#line 944 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2756 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 660: /* "FUNCTION_NAME" */
-
-/* Line 480 of lalr1.cc  */
-#line 944 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2765 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
-	break;
-      case 661: /* "EQNAME" */
-
-/* Line 480 of lalr1.cc  */
-#line 944 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
-	{ release_hack( (yyvaluep->expr) ); };
-
-/* Line 480 of lalr1.cc  */
-#line 2774 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
+#line 2341 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 589: /* "FTSelection" */
+
+/* Line 480 of lalr1.cc  */
+#line 798 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2350 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 592: /* "FTOr" */
+
+/* Line 480 of lalr1.cc  */
+#line 798 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2359 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 593: /* "FTAnd" */
+
+/* Line 480 of lalr1.cc  */
+#line 798 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2368 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 594: /* "FTMildNot" */
+
+/* Line 480 of lalr1.cc  */
+#line 798 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2377 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 595: /* "FTUnaryNot" */
+
+/* Line 480 of lalr1.cc  */
+#line 798 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2386 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 596: /* "FTPrimaryWithOptions" */
+
+/* Line 480 of lalr1.cc  */
+#line 798 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2395 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 597: /* "opt_FTMatchOptions" */
+
+/* Line 480 of lalr1.cc  */
+#line 798 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2404 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 599: /* "FTWeight" */
+
+/* Line 480 of lalr1.cc  */
+#line 798 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2413 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 600: /* "FTPrimary" */
+
+/* Line 480 of lalr1.cc  */
+#line 798 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2422 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 601: /* "opt_FTTimes" */
+
+/* Line 480 of lalr1.cc  */
+#line 798 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2431 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 602: /* "FTExtensionSelection" */
+
+/* Line 480 of lalr1.cc  */
+#line 798 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2440 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 604: /* "FTWords" */
+
+/* Line 480 of lalr1.cc  */
+#line 798 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2449 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 605: /* "FTWordsValue" */
+
+/* Line 480 of lalr1.cc  */
+#line 798 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2458 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 607: /* "FTAnyallOption" */
+
+/* Line 480 of lalr1.cc  */
+#line 798 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2467 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 610: /* "FTPosFilter" */
+
+/* Line 480 of lalr1.cc  */
+#line 798 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2476 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 611: /* "FTOrder" */
+
+/* Line 480 of lalr1.cc  */
+#line 798 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2485 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 612: /* "FTWindow" */
+
+/* Line 480 of lalr1.cc  */
+#line 798 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2494 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 613: /* "FTDistance" */
+
+/* Line 480 of lalr1.cc  */
+#line 798 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2503 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 614: /* "FTUnit" */
+
+/* Line 480 of lalr1.cc  */
+#line 798 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2512 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 615: /* "FTMatchOptions" */
+
+/* Line 480 of lalr1.cc  */
+#line 798 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2521 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 616: /* "FTMatchOption" */
+
+/* Line 480 of lalr1.cc  */
+#line 798 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2530 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 617: /* "FTCaseOption" */
+
+/* Line 480 of lalr1.cc  */
+#line 798 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2539 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 618: /* "FTDiacriticsOption" */
+
+/* Line 480 of lalr1.cc  */
+#line 798 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2548 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 619: /* "FTExtensionOption" */
+
+/* Line 480 of lalr1.cc  */
+#line 798 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2557 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 620: /* "FTStemOption" */
+
+/* Line 480 of lalr1.cc  */
+#line 798 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2566 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 621: /* "FTThesaurusOption" */
+
+/* Line 480 of lalr1.cc  */
+#line 798 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2575 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 625: /* "FTThesaurusID" */
+
+/* Line 480 of lalr1.cc  */
+#line 798 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2584 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 628: /* "FTStopWordOption" */
+
+/* Line 480 of lalr1.cc  */
+#line 798 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2593 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 629: /* "FTStopWords" */
+
+/* Line 480 of lalr1.cc  */
+#line 798 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2602 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 633: /* "FTStopWordsInclExcl" */
+
+/* Line 480 of lalr1.cc  */
+#line 798 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2611 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 634: /* "FTLanguageOption" */
+
+/* Line 480 of lalr1.cc  */
+#line 798 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2620 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 635: /* "FTWildCardOption" */
+
+/* Line 480 of lalr1.cc  */
+#line 798 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2629 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 636: /* "FTContent" */
+
+/* Line 480 of lalr1.cc  */
+#line 798 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2638 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 637: /* "FTTimes" */
+
+/* Line 480 of lalr1.cc  */
+#line 798 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2647 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 638: /* "FTRange" */
+
+/* Line 480 of lalr1.cc  */
+#line 798 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2656 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 639: /* "FTScope" */
+
+/* Line 480 of lalr1.cc  */
+#line 798 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2665 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 640: /* "FTBigUnit" */
+
+/* Line 480 of lalr1.cc  */
+#line 798 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2674 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 641: /* "FTIgnoreOption" */
+
+/* Line 480 of lalr1.cc  */
+#line 798 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2683 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 642: /* "JSONArrayConstructor" */
+
+/* Line 480 of lalr1.cc  */
+#line 799 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2692 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 643: /* "JSONSimpleObjectUnion" */
+
+/* Line 480 of lalr1.cc  */
+#line 799 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2701 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 644: /* "JSONAccumulatorObjectUnion" */
+
+/* Line 480 of lalr1.cc  */
+#line 799 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2710 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 645: /* "JSONObjectConstructor" */
+
+/* Line 480 of lalr1.cc  */
+#line 799 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2719 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 646: /* "JSONPairList" */
+
+/* Line 480 of lalr1.cc  */
+#line 799 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->node) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2728 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 647: /* "JSONInsertExpr" */
+
+/* Line 480 of lalr1.cc  */
+#line 799 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2737 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 648: /* "JSONAppendExpr" */
+
+/* Line 480 of lalr1.cc  */
+#line 799 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2746 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 649: /* "JSONDeleteExpr" */
+
+/* Line 480 of lalr1.cc  */
+#line 799 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2755 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 650: /* "JSONRenameExpr" */
+
+/* Line 480 of lalr1.cc  */
+#line 799 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2764 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 651: /* "JSONReplaceExpr" */
+
+/* Line 480 of lalr1.cc  */
+#line 799 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2773 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 658: /* "QNAME" */
+
+/* Line 480 of lalr1.cc  */
+#line 800 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2782 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 659: /* "FUNCTION_NAME" */
+
+/* Line 480 of lalr1.cc  */
+#line 800 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2791 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
+	break;
+      case 660: /* "EQNAME" */
+
+/* Line 480 of lalr1.cc  */
+#line 800 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
+	{ release_hack( (yyvaluep->expr) ); };
+
+/* Line 480 of lalr1.cc  */
+#line 2800 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
 	break;
 
 	default:
@@ -2861,13 +2887,13 @@
     /* User initialization code.  */
     
 /* Line 565 of lalr1.cc  */
-#line 133 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 119 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
 {
     yylloc.begin.filename = yylloc.end.filename = &(driver.theFilename2);
 }
 
 /* Line 565 of lalr1.cc  */
-#line 2871 "/home/markos/zorba/repo/hof-next/build/src/compiler/parser/jsoniq_parser.cpp"
+#line 2897 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.cpp"
 
     /* Initialize the stacks.  The initial state will be pushed in
        yynewstate, since the latter expects the semantical and the
@@ -2986,7 +3012,7 @@
 	  case 3:
 
 /* Line 690 of lalr1.cc  */
-#line 1071 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 838 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
         (yyval.node) = (yysemantic_stack_[(2) - (2)].node);
       }
@@ -2995,7 +3021,7 @@
   case 4:
 
 /* Line 690 of lalr1.cc  */
-#line 1075 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 842 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
         (yyval.node) = (yysemantic_stack_[(2) - (2)].node);
       }
@@ -3004,7 +3030,7 @@
   case 5:
 
 /* Line 690 of lalr1.cc  */
-#line 1079 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 846 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
         (yyval.node) = (yysemantic_stack_[(3) - (3)].node);
       }
@@ -3013,7 +3039,7 @@
   case 6:
 
 /* Line 690 of lalr1.cc  */
-#line 1087 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 852 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
         (yyval.node) = NULL;
       }
@@ -3022,7 +3048,7 @@
   case 7:
 
 /* Line 690 of lalr1.cc  */
-#line 1093 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 856 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
         (yyval.node) = NULL; YYABORT;
       }
@@ -3031,7 +3057,7 @@
   case 8:
 
 /* Line 690 of lalr1.cc  */
-#line 1097 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 860 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
         (yyval.node) = NULL; YYABORT;
       }
@@ -3040,7 +3066,7 @@
   case 9:
 
 /* Line 690 of lalr1.cc  */
-#line 1106 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 866 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
       driver.set_expr( (yyval.node) );
@@ -3050,7 +3076,7 @@
   case 10:
 
 /* Line 690 of lalr1.cc  */
-#line 1112 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 872 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       MainModule* mm = dynamic_cast<MainModule*>((yysemantic_stack_[(2) - (2)].node));
       mm->set_version_decl( static_cast<VersionDecl*>((yysemantic_stack_[(2) - (1)].node)) );
@@ -3062,7 +3088,7 @@
   case 11:
 
 /* Line 690 of lalr1.cc  */
-#line 1120 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 880 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
       driver.set_expr( (yyval.node) );
@@ -3072,7 +3098,7 @@
   case 12:
 
 /* Line 690 of lalr1.cc  */
-#line 1126 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 886 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       LibraryModule* lm = dynamic_cast<LibraryModule*>((yysemantic_stack_[(2) - (2)].node));
       lm->set_version_decl( static_cast<VersionDecl*>((yysemantic_stack_[(2) - (1)].node)) );
@@ -3084,7 +3110,7 @@
   case 13:
 
 /* Line 690 of lalr1.cc  */
-#line 1137 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 895 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.node) = new VersionDecl( LOC((yyloc)), SYMTAB((yysemantic_stack_[(4) - (3)].sval)), "utf-8" );
     }
@@ -3093,7 +3119,7 @@
   case 14:
 
 /* Line 690 of lalr1.cc  */
-#line 1142 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 900 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.node) = new VersionDecl( LOC((yyloc)), SYMTAB((yysemantic_stack_[(6) - (3)].sval)), SYMTAB((yysemantic_stack_[(6) - (5)].sval)) );
     }
@@ -3102,7 +3128,7 @@
   case 15:
 
 /* Line 690 of lalr1.cc  */
-#line 1146 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 905 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.node) = new VersionDecl( LOC((yyloc)), SYMTAB((yysemantic_stack_[(4) - (3)].sval)), "utf-8", VersionDecl::jsoniq );
     }
@@ -3111,20 +3137,18 @@
   case 16:
 
 /* Line 690 of lalr1.cc  */
-#line 1151 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 910 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
-      (yyval.node) = new VersionDecl(
-        LOC((yyloc)), SYMTAB((yysemantic_stack_[(6) - (3)].sval)), SYMTAB((yysemantic_stack_[(6) - (5)].sval)), VersionDecl::jsoniq );
+      (yyval.node) = new VersionDecl( LOC((yyloc)), SYMTAB((yysemantic_stack_[(6) - (3)].sval)), SYMTAB((yysemantic_stack_[(6) - (5)].sval)), VersionDecl::jsoniq );
     }
     break;
 
   case 17:
 
 /* Line 690 of lalr1.cc  */
-#line 1160 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 916 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       Prolog* prolog = new Prolog(LOC((yyloc)), static_cast<SIND_DeclList*>((yysemantic_stack_[(3) - (1)].node)), NULL);
-
       (yyval.node) = new MainModule(LOC((yyloc)), static_cast<QueryBody*>((yysemantic_stack_[(3) - (3)].expr)), prolog);
     }
     break;
@@ -3132,10 +3156,9 @@
   case 18:
 
 /* Line 690 of lalr1.cc  */
-#line 1167 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 922 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       Prolog* prolog = new Prolog(LOC((yyloc)), NULL, static_cast<VFO_DeclList*>((yysemantic_stack_[(3) - (1)].node)));
-
       (yyval.node) = new MainModule(LOC((yyloc)), static_cast<QueryBody*>((yysemantic_stack_[(3) - (3)].expr)), prolog);
     }
     break;
@@ -3143,12 +3166,11 @@
   case 19:
 
 /* Line 690 of lalr1.cc  */
-#line 1174 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 928 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       Prolog* prolog = new Prolog(LOC((yyloc)),
                                   static_cast<SIND_DeclList*>((yysemantic_stack_[(5) - (1)].node)),
                                   static_cast<VFO_DeclList*>((yysemantic_stack_[(5) - (3)].node)));
-
       (yyval.node) = new MainModule(LOC((yyloc)), static_cast<QueryBody*>((yysemantic_stack_[(5) - (5)].expr)), prolog);
     }
     break;
@@ -3156,7 +3178,7 @@
   case 20:
 
 /* Line 690 of lalr1.cc  */
-#line 1183 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 936 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.node) = new MainModule( LOC((yyloc)), static_cast<QueryBody*>((yysemantic_stack_[(1) - (1)].expr)), NULL );
     }
@@ -3165,9 +3187,9 @@
   case 21:
 
 /* Line 690 of lalr1.cc  */
-#line 1190 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 941 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
-      (yyval.node) = (yysemantic_stack_[(3) - (1)].node); (yyval.node) = (yysemantic_stack_[(3) - (3)].expr); // to prevent the Bison warning
+      (yyval.node) = (yysemantic_stack_[(3) - (1)].node); (yyval.node) = (yysemantic_stack_[(3) - (3)].expr);
       (yylocation_stack_[(3) - (1)]).step();
       error((yylocation_stack_[(3) - (1)]), "syntax error, missing semicolon \";\" after statement.");
       YYERROR;
@@ -3177,9 +3199,9 @@
   case 22:
 
 /* Line 690 of lalr1.cc  */
-#line 1198 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 949 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
-      (yyval.node) = (yysemantic_stack_[(3) - (1)].node); (yyval.node) = (yysemantic_stack_[(3) - (3)].expr); // to prevent the Bison warning
+      (yyval.node) = (yysemantic_stack_[(3) - (1)].node); (yyval.node) = (yysemantic_stack_[(3) - (3)].expr);
       (yylocation_stack_[(3) - (1)]).step();
       error((yylocation_stack_[(3) - (1)]), "syntax error, missing semicolon \";\" after declaration.");
       YYERROR;
@@ -3189,9 +3211,9 @@
   case 23:
 
 /* Line 690 of lalr1.cc  */
-#line 1206 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 957 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_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
+      (yyval.node) = (yysemantic_stack_[(5) - (1)].node); (yyval.node) = (yysemantic_stack_[(5) - (3)].node); (yyval.node) = (yysemantic_stack_[(5) - (5)].expr);
       (yylocation_stack_[(5) - (3)]).step();
       error((yylocation_stack_[(5) - (3)]), "syntax error, missing semicolon \";\" after declaration.");
       YYERROR;
@@ -3201,9 +3223,9 @@
   case 24:
 
 /* Line 690 of lalr1.cc  */
-#line 1214 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 965 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_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
+      (yyval.node) = (yysemantic_stack_[(5) - (1)].node); (yyval.node) = (yysemantic_stack_[(5) - (3)].node); (yyval.node) = (yysemantic_stack_[(5) - (5)].expr);
       (yylocation_stack_[(5) - (1)]).step();
       error((yylocation_stack_[(5) - (1)]), "syntax error, missing semicolon \";\" after statement.");
       YYERROR;
@@ -3213,7 +3235,7 @@
   case 25:
 
 /* Line 690 of lalr1.cc  */
-#line 1225 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 974 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.node) = new LibraryModule(LOC((yyloc)), static_cast<ModuleDecl*>((yysemantic_stack_[(1) - (1)].node)), NULL);
     }
@@ -3222,10 +3244,9 @@
   case 26:
 
 /* Line 690 of lalr1.cc  */
-#line 1230 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 979 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       Prolog* prolog = new Prolog(LOC((yyloc)), static_cast<SIND_DeclList*>((yysemantic_stack_[(3) - (2)].node)), NULL);
-
       (yyval.node) = new LibraryModule(LOC((yyloc)), static_cast<ModuleDecl*>((yysemantic_stack_[(3) - (1)].node)), prolog);
     }
     break;
@@ -3233,10 +3254,9 @@
   case 27:
 
 /* Line 690 of lalr1.cc  */
-#line 1237 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 985 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       Prolog* prolog = new Prolog(LOC((yyloc)), NULL, static_cast<VFO_DeclList*>((yysemantic_stack_[(3) - (2)].node)));
-
       (yyval.node) = new LibraryModule(LOC((yyloc)), static_cast<ModuleDecl*>((yysemantic_stack_[(3) - (1)].node)), prolog);
     }
     break;
@@ -3244,12 +3264,11 @@
   case 28:
 
 /* Line 690 of lalr1.cc  */
-#line 1244 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 991 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       Prolog* prolog = new Prolog(LOC((yyloc)),
                                   static_cast<SIND_DeclList*>((yysemantic_stack_[(5) - (2)].node)),
                                   static_cast<VFO_DeclList*>((yysemantic_stack_[(5) - (4)].node)));
-
       (yyval.node) = new LibraryModule(LOC((yyloc)), static_cast<ModuleDecl*>((yysemantic_stack_[(5) - (1)].node)), prolog);
     }
     break;
@@ -3257,10 +3276,9 @@
   case 29:
 
 /* Line 690 of lalr1.cc  */
-#line 1256 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 1000 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.node) = new ModuleDecl( LOC((yyloc)), SYMTAB((yysemantic_stack_[(6) - (3)].sval)), SYMTAB((yysemantic_stack_[(6) - (5)].sval)) );
-
       dynamic_cast<ModuleDecl*>((yyval.node))->setComment( SYMTAB((yysemantic_stack_[(6) - (1)].sval)) );
     }
     break;
@@ -3268,7 +3286,7 @@
   case 30:
 
 /* Line 690 of lalr1.cc  */
-#line 1266 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 1007 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       SIND_DeclList *sdl = new SIND_DeclList( LOC((yyloc)) );
       sdl->push_back( (yysemantic_stack_[(1) - (1)].node) );
@@ -3279,7 +3297,7 @@
   case 31:
 
 /* Line 690 of lalr1.cc  */
-#line 1273 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 1014 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       ((SIND_DeclList*)(yysemantic_stack_[(3) - (1)].node))->push_back( (yysemantic_stack_[(3) - (3)].node) );
       (yyval.node) = (yysemantic_stack_[(3) - (1)].node);
@@ -3289,10 +3307,9 @@
   case 32:
 
 /* Line 690 of lalr1.cc  */
-#line 1280 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 1020 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
-      // error
-      (yyval.node) = (yysemantic_stack_[(3) - (1)].node); (yyval.node) = (yysemantic_stack_[(3) - (3)].node); // to prevent the Bison warning
+      (yyval.node) = (yysemantic_stack_[(3) - (1)].node); (yyval.node) = (yysemantic_stack_[(3) - (3)].node);
       (yylocation_stack_[(3) - (1)]).step();
       error((yylocation_stack_[(3) - (1)]), "syntax error, missing semicolon \";\" after declaration.");
       YYERROR;
@@ -3302,7 +3319,7 @@
   case 46:
 
 /* Line 690 of lalr1.cc  */
-#line 1315 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 1046 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.node) = new BoundarySpaceDecl(LOC((yyloc)), StaticContextConsts::preserve_space);
     }
@@ -3311,7 +3328,7 @@
   case 47:
 
 /* Line 690 of lalr1.cc  */
-#line 1320 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 1051 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.node) = new BoundarySpaceDecl(LOC((yyloc)), StaticContextConsts::strip_space);
     }
@@ -3320,7 +3337,7 @@
   case 48:
 
 /* Line 690 of lalr1.cc  */
-#line 1328 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 1057 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.node) = new DefaultCollationDecl( LOC((yyloc)), SYMTAB((yysemantic_stack_[(4) - (4)].sval)) );
     }
@@ -3329,7 +3346,7 @@
   case 49:
 
 /* Line 690 of lalr1.cc  */
-#line 1336 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 1063 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.node) = new BaseURIDecl( LOC((yyloc)), SYMTAB((yysemantic_stack_[(3) - (3)].sval)) );
     }
@@ -3338,7 +3355,7 @@
   case 50:
 
 /* Line 690 of lalr1.cc  */
-#line 1344 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 1069 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.node) = new ConstructionDecl(LOC((yyloc)), StaticContextConsts::cons_preserve);
     }
@@ -3347,7 +3364,7 @@
   case 51:
 
 /* Line 690 of lalr1.cc  */
-#line 1349 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 1074 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.node) = new ConstructionDecl(LOC((yyloc)), StaticContextConsts::cons_strip);
     }
@@ -3356,7 +3373,7 @@
   case 52:
 
 /* Line 690 of lalr1.cc  */
-#line 1357 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 1080 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.node) = new OrderingModeDecl(LOC((yyloc)), StaticContextConsts::ordered);
     }
@@ -3365,7 +3382,7 @@
   case 53:
 
 /* Line 690 of lalr1.cc  */
-#line 1362 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 1085 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.node) = new OrderingModeDecl(LOC((yyloc)), StaticContextConsts::unordered);
     }
@@ -3374,7 +3391,7 @@
   case 54:
 
 /* Line 690 of lalr1.cc  */
-#line 1370 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 1091 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.node) = new EmptyOrderDecl(LOC((yyloc)), StaticContextConsts::empty_greatest);
     }
@@ -3383,7 +3400,7 @@
   case 55:
 
 /* Line 690 of lalr1.cc  */
-#line 1375 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 1096 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.node) = new EmptyOrderDecl(LOC((yyloc)), StaticContextConsts::empty_least);
     }
@@ -3392,7 +3409,7 @@
   case 56:
 
 /* Line 690 of lalr1.cc  */
-#line 1383 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 1102 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.node) = new CopyNamespacesDecl(LOC((yyloc)), true, true);
     }
@@ -3401,7 +3418,7 @@
   case 57:
 
 /* Line 690 of lalr1.cc  */
-#line 1388 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 1107 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.node) = new CopyNamespacesDecl(LOC((yyloc)), true, false);
     }
@@ -3410,7 +3427,7 @@
   case 58:
 
 /* Line 690 of lalr1.cc  */
-#line 1393 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 1112 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.node) = new CopyNamespacesDecl(LOC((yyloc)), false, true);
     }
@@ -3419,7 +3436,7 @@
   case 59:
 
 /* Line 690 of lalr1.cc  */
-#line 1398 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 1117 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.node) = new CopyNamespacesDecl(LOC((yyloc)), false, false);
     }
@@ -3428,9 +3445,9 @@
   case 62:
 
 /* Line 690 of lalr1.cc  */
-#line 1411 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 1127 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
-      (yyval.node) = (yyval.node); // to prevent the Bison warning
+      (yyval.node) = (yyval.node);
       error((yylocation_stack_[(3) - (2)]), "syntax error, \"import\" should be followed by either \"schema\" or \"module\".");
       YYERROR;
     }
@@ -3439,7 +3456,7 @@
   case 63:
 
 /* Line 690 of lalr1.cc  */
-#line 1421 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 1135 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.node) = new SchemaImport( LOC((yyloc)), NULL, SYMTAB((yysemantic_stack_[(3) - (3)].sval)), NULL );
     }
@@ -3448,7 +3465,7 @@
   case 64:
 
 /* Line 690 of lalr1.cc  */
-#line 1426 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 1140 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.node) = new SchemaImport(LOC((yyloc)),
                             dynamic_cast<SchemaPrefix*>((yysemantic_stack_[(4) - (3)].node)),
@@ -3460,7 +3477,7 @@
   case 65:
 
 /* Line 690 of lalr1.cc  */
-#line 1434 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 1148 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.node) = new SchemaImport(LOC((yyloc)),
                             NULL,
@@ -3472,7 +3489,7 @@
   case 66:
 
 /* Line 690 of lalr1.cc  */
-#line 1442 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 1156 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.node) = new SchemaImport(LOC((yyloc)),
                             dynamic_cast<SchemaPrefix*>((yysemantic_stack_[(6) - (3)].node)),
@@ -3484,7 +3501,7 @@
   case 67:
 
 /* Line 690 of lalr1.cc  */
-#line 1453 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 1165 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       URILiteralList *ull = new URILiteralList( LOC((yyloc)));
       ull->push_back( SYMTAB((yysemantic_stack_[(1) - (1)].sval)) );
@@ -3495,11 +3512,10 @@
   case 68:
 
 /* Line 690 of lalr1.cc  */
-#line 1460 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 1172 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       if ( URILiteralList *ull = dynamic_cast<URILiteralList*>((yysemantic_stack_[(3) - (1)].node)) )
         ull->push_back( SYMTAB((yysemantic_stack_[(3) - (3)].sval)) );
-
       (yyval.node) = (yysemantic_stack_[(3) - (1)].node);
     }
     break;
@@ -3507,7 +3523,7 @@
   case 69:
 
 /* Line 690 of lalr1.cc  */
-#line 1471 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 1180 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.node) = new SchemaPrefix( LOC((yyloc)), SYMTAB((yysemantic_stack_[(3) - (2)].sval)) );
     }
@@ -3516,7 +3532,7 @@
   case 70:
 
 /* Line 690 of lalr1.cc  */
-#line 1476 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 1185 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.node) = new SchemaPrefix( LOC((yyloc)), true );
     }
@@ -3525,10 +3541,9 @@
   case 71:
 
 /* Line 690 of lalr1.cc  */
-#line 1484 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 1191 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.node) = new ModuleImport(LOC((yyloc)), SYMTAB((yysemantic_stack_[(3) - (3)].sval)), NULL);
-
       dynamic_cast<ModuleImport *>((yyval.node))->setComment(SYMTAB((yysemantic_stack_[(3) - (2)].sval)));
     }
     break;
@@ -3536,10 +3551,9 @@
   case 72:
 
 /* Line 690 of lalr1.cc  */
-#line 1491 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 1197 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.node) = new ModuleImport(LOC((yyloc)), SYMTAB((yysemantic_stack_[(6) - (4)].sval)), SYMTAB((yysemantic_stack_[(6) - (6)].sval)), NULL);
-
       dynamic_cast<ModuleImport *>((yyval.node))->setComment(SYMTAB((yysemantic_stack_[(6) - (2)].sval)));
     }
     break;
@@ -3547,12 +3561,11 @@
   case 73:
 
 /* Line 690 of lalr1.cc  */
-#line 1498 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 1203 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.node) = new ModuleImport(LOC((yyloc)),
                             SYMTAB((yysemantic_stack_[(5) - (3)].sval)),
                             dynamic_cast<URILiteralList*>((yysemantic_stack_[(5) - (5)].node)));
-
       dynamic_cast<ModuleImport *>((yyval.node))->setComment(SYMTAB((yysemantic_stack_[(5) - (2)].sval)));
     }
     break;
@@ -3560,13 +3573,12 @@
   case 74:
 
 /* Line 690 of lalr1.cc  */
-#line 1507 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 1211 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.node) = new ModuleImport(LOC((yyloc)),
                             SYMTAB((yysemantic_stack_[(8) - (4)].sval)),
                             SYMTAB((yysemantic_stack_[(8) - (6)].sval)),
                             dynamic_cast<URILiteralList*>((yysemantic_stack_[(8) - (8)].node)));
-
       dynamic_cast<ModuleImport *>((yyval.node))->setComment(SYMTAB((yysemantic_stack_[(8) - (2)].sval)));
     }
     break;
@@ -3574,7 +3586,7 @@
   case 75:
 
 /* Line 690 of lalr1.cc  */
-#line 1520 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 1221 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.node) = new NamespaceDecl( LOC((yyloc)), SYMTAB((yysemantic_stack_[(5) - (3)].sval)), SYMTAB((yysemantic_stack_[(5) - (5)].sval)) );
     }
@@ -3583,7 +3595,7 @@
   case 76:
 
 /* Line 690 of lalr1.cc  */
-#line 1528 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 1227 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.node) = new DefaultNamespaceDecl(LOC((yyloc)),
                                     ParseConstants::ns_element_default,
@@ -3594,7 +3606,7 @@
   case 77:
 
 /* Line 690 of lalr1.cc  */
-#line 1535 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 1234 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.node) = new DefaultNamespaceDecl(LOC((yyloc)),
                                     ParseConstants::ns_function_default,
@@ -3605,7 +3617,7 @@
   case 78:
 
 /* Line 690 of lalr1.cc  */
-#line 1545 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 1242 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       VFO_DeclList *vdl = new VFO_DeclList( LOC((yyloc)));
       vdl->push_back( (yysemantic_stack_[(1) - (1)].node) );
@@ -3616,7 +3628,7 @@
   case 79:
 
 /* Line 690 of lalr1.cc  */
-#line 1552 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 1249 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       ((VFO_DeclList*)(yysemantic_stack_[(3) - (1)].node))->push_back( (yysemantic_stack_[(3) - (3)].node) );
       (yyval.node) = (yysemantic_stack_[(3) - (1)].node);
@@ -3626,9 +3638,9 @@
   case 80:
 
 /* Line 690 of lalr1.cc  */
-#line 1559 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 1255 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
-      (yyval.node) = (yysemantic_stack_[(3) - (1)].node); (yyval.node) = (yysemantic_stack_[(3) - (3)].node); // to prevent the Bison warning
+      (yyval.node) = (yysemantic_stack_[(3) - (1)].node); (yyval.node) = (yysemantic_stack_[(3) - (3)].node);
       (yylocation_stack_[(3) - (1)]).step();
       error((yylocation_stack_[(3) - (1)]), "syntax error, missing semicolon \";\" after declaration.");
       YYERROR;
@@ -3638,7 +3650,7 @@
   case 89:
 
 /* Line 690 of lalr1.cc  */
-#line 1582 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 1274 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.node) = new DecimalFormatNode(LOC((yyloc)), (yysemantic_stack_[(4) - (4)].vstrpair));
       delete (yysemantic_stack_[(4) - (4)].vstrpair);
@@ -3648,7 +3660,7 @@
   case 90:
 
 /* Line 690 of lalr1.cc  */
-#line 1588 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 1280 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_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);
@@ -3658,7 +3670,7 @@
   case 91:
 
 /* Line 690 of lalr1.cc  */
-#line 1597 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 1287 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.vstrpair) = new vector<string_pair_t>();
       (yyval.vstrpair)->push_back( *(yysemantic_stack_[(1) - (1)].strpair) );
@@ -3669,7 +3681,7 @@
   case 92:
 
 /* Line 690 of lalr1.cc  */
-#line 1604 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 1294 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yysemantic_stack_[(2) - (1)].vstrpair)->push_back( *(yysemantic_stack_[(2) - (2)].strpair) );
       delete (yysemantic_stack_[(2) - (2)].strpair);
@@ -3680,7 +3692,7 @@
   case 93:
 
 /* Line 690 of lalr1.cc  */
-#line 1614 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 1302 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_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() );
@@ -3691,77 +3703,77 @@
   case 94:
 
 /* Line 690 of lalr1.cc  */
-#line 1623 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 1309 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     { (yyval.strval) = "decimal-separator"; }
     break;
 
   case 95:
 
 /* Line 690 of lalr1.cc  */
-#line 1624 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 1310 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     { (yyval.strval) = "digit"; }
     break;
 
   case 96:
 
 /* Line 690 of lalr1.cc  */
-#line 1625 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 1311 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     { (yyval.strval) = "grouping-separator"; }
     break;
 
   case 97:
 
 /* Line 690 of lalr1.cc  */
-#line 1626 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 1312 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     { (yyval.strval) = "infinity"; }
     break;
 
   case 98:
 
 /* Line 690 of lalr1.cc  */
-#line 1627 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 1313 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     { (yyval.strval) = "minus-sign"; }
     break;
 
   case 99:
 
 /* Line 690 of lalr1.cc  */
-#line 1628 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 1314 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     { (yyval.strval) = "NaN"; }
     break;
 
   case 100:
 
 /* Line 690 of lalr1.cc  */
-#line 1629 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 1315 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     { (yyval.strval) = "pattern-separator"; }
     break;
 
   case 101:
 
 /* Line 690 of lalr1.cc  */
-#line 1630 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 1316 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     { (yyval.strval) = "percent"; }
     break;
 
   case 102:
 
 /* Line 690 of lalr1.cc  */
-#line 1631 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 1317 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     { (yyval.strval) = "per-mille"; }
     break;
 
   case 103:
 
 /* Line 690 of lalr1.cc  */
-#line 1632 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 1318 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     { (yyval.strval) = "zero-digit"; }
     break;
 
   case 104:
 
 /* Line 690 of lalr1.cc  */
-#line 1638 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 1322 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.node) = new OptionDecl(LOC((yyloc)), static_cast<QName*>((yysemantic_stack_[(4) - (3)].expr)), SYMTAB((yysemantic_stack_[(4) - (4)].sval)));
     }
@@ -3770,7 +3782,7 @@
   case 105:
 
 /* Line 690 of lalr1.cc  */
-#line 1646 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 1328 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.node) = new FTOptionDecl( LOC((yyloc)), dynamic_cast<FTMatchOptions*>((yysemantic_stack_[(3) - (3)].node)) );
     }
@@ -3779,7 +3791,7 @@
   case 106:
 
 /* Line 690 of lalr1.cc  */
-#line 1654 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 1334 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.node) = (yysemantic_stack_[(4) - (4)].node);
     }
@@ -3788,7 +3800,7 @@
   case 107:
 
 /* Line 690 of lalr1.cc  */
-#line 1662 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 1340 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       CtxItemDecl* d = dynamic_cast<CtxItemDecl*>((yysemantic_stack_[(3) - (3)].node));
       d->theType = (yysemantic_stack_[(3) - (2)].node);
@@ -3799,7 +3811,7 @@
   case 108:
 
 /* Line 690 of lalr1.cc  */
-#line 1669 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 1347 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
     }
@@ -3808,7 +3820,7 @@
   case 109:
 
 /* Line 690 of lalr1.cc  */
-#line 1677 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 1353 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       CtxItemDecl* d = dynamic_cast<CtxItemDecl*>((yysemantic_stack_[(1) - (1)].node));
       d->theIsExternal = false;
@@ -3819,7 +3831,7 @@
   case 110:
 
 /* Line 690 of lalr1.cc  */
-#line 1684 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 1360 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.node) = new CtxItemDecl(LOC((yyloc)), NULL);
     }
@@ -3828,7 +3840,7 @@
   case 111:
 
 /* Line 690 of lalr1.cc  */
-#line 1689 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 1365 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.node) = (yysemantic_stack_[(2) - (2)].node);
     }
@@ -3837,7 +3849,7 @@
   case 112:
 
 /* Line 690 of lalr1.cc  */
-#line 1697 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 1371 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.node) = new CtxItemDecl(LOC((yyloc)), (yysemantic_stack_[(2) - (2)].expr));
     }
@@ -3846,17 +3858,15 @@
   case 113:
 
 /* Line 690 of lalr1.cc  */
-#line 1705 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 1377 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       std::auto_ptr<VarNameAndType> nt(dynamic_cast<VarNameAndType *>((yysemantic_stack_[(4) - (2)].varnametype)));
-
       (yyval.node) = new GlobalVarDecl(LOC((yyloc)),
                              nt->theName,
                              nt->theType,
                              (yysemantic_stack_[(4) - (4)].expr),
                              nt->get_annotations(),
-                             false);  // not external
-
+                             false);
       static_cast<GlobalVarDecl*>((yyval.node))->setComment(SYMTAB((yysemantic_stack_[(4) - (1)].sval)));
     }
     break;
@@ -3864,17 +3874,15 @@
   case 114:
 
 /* Line 690 of lalr1.cc  */
-#line 1719 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 1389 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       std::auto_ptr<VarNameAndType> nt(dynamic_cast<VarNameAndType *>((yysemantic_stack_[(3) - (2)].varnametype)));
-
       (yyval.node) = new GlobalVarDecl(LOC((yyloc)),
                              nt->theName,
                              nt->theType,
-                             NULL,   // no init expr
+                             NULL,
                              nt->get_annotations(),
-                             true);  // external
-
+                             true);
       static_cast<GlobalVarDecl*>((yyval.node))->setComment(SYMTAB((yysemantic_stack_[(3) - (1)].sval)));
     }
     break;
@@ -3882,17 +3890,15 @@
   case 115:
 
 /* Line 690 of lalr1.cc  */
-#line 1733 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 1401 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       std::auto_ptr<VarNameAndType> nt(dynamic_cast<VarNameAndType *>((yysemantic_stack_[(5) - (2)].varnametype)));
-
       (yyval.node) = new GlobalVarDecl(LOC((yyloc)),
                              nt->theName,
                              nt->theType,
-                             (yysemantic_stack_[(5) - (5)].expr),     // init expr
+                             (yysemantic_stack_[(5) - (5)].expr),
                              nt->get_annotations(),
-                             true);  // external
-
+                             true);
       static_cast<GlobalVarDecl*>((yyval.node))->setComment(SYMTAB((yysemantic_stack_[(5) - (1)].sval)));
     }
     break;
@@ -3900,7 +3906,7 @@
   case 116:
 
 /* Line 690 of lalr1.cc  */
-#line 1750 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 1414 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.varnametype) = new VarNameAndType(LOC((yyloc)), static_cast<QName*>((yysemantic_stack_[(3) - (3)].expr)), NULL, NULL);
     }
@@ -3909,7 +3915,7 @@
   case 117:
 
 /* Line 690 of lalr1.cc  */
-#line 1755 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 1419 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.varnametype) = new VarNameAndType(LOC((yyloc)),
                               static_cast<QName*>((yysemantic_stack_[(4) - (3)].expr)),
@@ -3921,7 +3927,7 @@
   case 118:
 
 /* Line 690 of lalr1.cc  */
-#line 1763 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 1427 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.varnametype) = new VarNameAndType(LOC((yyloc)),
                               static_cast<QName*>((yysemantic_stack_[(4) - (4)].expr)),
@@ -3933,7 +3939,7 @@
   case 119:
 
 /* Line 690 of lalr1.cc  */
-#line 1771 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 1435 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.varnametype) = new VarNameAndType(LOC((yyloc)),
                               static_cast<QName*>((yysemantic_stack_[(5) - (4)].expr)),
@@ -3945,7 +3951,7 @@
   case 120:
 
 /* Line 690 of lalr1.cc  */
-#line 1782 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 1444 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.node) = new AnnotationListParsenode(LOC((yyloc)), static_cast<AnnotationParsenode*>((yysemantic_stack_[(1) - (1)].node)));
     }
@@ -3954,7 +3960,7 @@
   case 121:
 
 /* Line 690 of lalr1.cc  */
-#line 1787 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 1449 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_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);
@@ -3964,7 +3970,7 @@
   case 122:
 
 /* Line 690 of lalr1.cc  */
-#line 1796 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 1456 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.node) = new AnnotationParsenode(LOC((yyloc)), new QName(LOC((yyloc)), SYMTAB((yysemantic_stack_[(1) - (1)].sval))), NULL);
     }
@@ -3973,7 +3979,7 @@
   case 123:
 
 /* Line 690 of lalr1.cc  */
-#line 1801 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 1461 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.node) = new AnnotationParsenode(LOC((yyloc)),
                                    new QName(LOC((yyloc)), SYMTAB((yysemantic_stack_[(4) - (1)].sval))),
@@ -3984,7 +3990,7 @@
   case 124:
 
 /* Line 690 of lalr1.cc  */
-#line 1808 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 1468 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.node) = new AnnotationParsenode(LOC((yyloc)), new QName(LOC((yyloc)), SYMTAB((yysemantic_stack_[(1) - (1)].sval)), true), NULL);
     }
@@ -3993,7 +3999,7 @@
   case 125:
 
 /* Line 690 of lalr1.cc  */
-#line 1813 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 1473 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.node) = new AnnotationParsenode(LOC((yyloc)),
                                    new QName(LOC((yyloc)), SYMTAB((yysemantic_stack_[(4) - (1)].sval)), true),
@@ -4004,7 +4010,7 @@
   case 126:
 
 /* Line 690 of lalr1.cc  */
-#line 1823 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 1481 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.node) = new AnnotationLiteralListParsenode(LOC((yyloc)), (yysemantic_stack_[(1) - (1)].expr));
     }
@@ -4013,7 +4019,7 @@
   case 127:
 
 /* Line 690 of lalr1.cc  */
-#line 1828 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 1486 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       static_cast<AnnotationLiteralListParsenode*>((yysemantic_stack_[(3) - (1)].node))->push_back((yysemantic_stack_[(3) - (3)].expr));
       (yyval.node) = (yysemantic_stack_[(3) - (1)].node);
@@ -4023,7 +4029,7 @@
   case 128:
 
 /* Line 690 of lalr1.cc  */
-#line 1837 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 1493 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       static_cast<FunctionDecl*>((yysemantic_stack_[(2) - (2)].node))->setComment( SYMTAB((yysemantic_stack_[(2) - (1)].sval)) );
       (yyval.node) = (yysemantic_stack_[(2) - (2)].node);
@@ -4033,12 +4039,10 @@
   case 129:
 
 /* Line 690 of lalr1.cc  */
-#line 1843 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 1499 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       FunctionDecl* fdecl = static_cast<FunctionDecl*>((yysemantic_stack_[(3) - (3)].node));
-
       fdecl->setComment( SYMTAB((yysemantic_stack_[(3) - (1)].sval)) );
-
       fdecl->set_annotations(static_cast<AnnotationListParsenode*>((yysemantic_stack_[(3) - (2)].node)));
       (yyval.node) = (yysemantic_stack_[(3) - (3)].node);
     }
@@ -4047,7 +4051,7 @@
   case 130:
 
 /* Line 690 of lalr1.cc  */
-#line 1856 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 1508 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
     }
@@ -4056,7 +4060,7 @@
   case 131:
 
 /* Line 690 of lalr1.cc  */
-#line 1861 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 1513 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
     }
@@ -4065,15 +4069,15 @@
   case 132:
 
 /* Line 690 of lalr1.cc  */
-#line 1869 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 1519 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.node) = new FunctionDecl(LOC((yyloc)),
                             static_cast<QName*>((yysemantic_stack_[(4) - (2)].expr)),
                             &* (yysemantic_stack_[(4) - (3)].fnsig)->theParams,
                             &* (yysemantic_stack_[(4) - (3)].fnsig)->theReturnType,
-                            (yysemantic_stack_[(4) - (4)].expr),      // body
-                            false,   // not explicitly updating
-                            false);  // not external
+                            (yysemantic_stack_[(4) - (4)].expr),
+                            false,
+                            false);
       delete (yysemantic_stack_[(4) - (3)].fnsig);
     }
     break;
@@ -4081,15 +4085,15 @@
   case 133:
 
 /* Line 690 of lalr1.cc  */
-#line 1880 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 1530 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.node) = new FunctionDecl(LOC ((yyloc)),
                             static_cast<QName*>((yysemantic_stack_[(4) - (2)].expr)),
                             (yysemantic_stack_[(4) - (3)].fnsig)->theParams.getp(),
                             (yysemantic_stack_[(4) - (3)].fnsig)->theReturnType.getp(),
-                            NULL,   // no body
-                            false,   // not explicitly updating
-                            true);  // external
+                            NULL,
+                            false,
+                            true);
       delete (yysemantic_stack_[(4) - (3)].fnsig);
     }
     break;
@@ -4097,15 +4101,15 @@
   case 134:
 
 /* Line 690 of lalr1.cc  */
-#line 1895 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 1543 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.node) = new FunctionDecl(LOC ((yyloc)),
                             static_cast<QName*>((yysemantic_stack_[(5) - (3)].expr)),
                             (yysemantic_stack_[(5) - (4)].fnsig)->theParams.getp(),
                             (yysemantic_stack_[(5) - (4)].fnsig)->theReturnType.getp(),
-                            (yysemantic_stack_[(5) - (5)].expr),    // body
-                            true,  // updating
-                            false);// not external
+                            (yysemantic_stack_[(5) - (5)].expr),
+                            true,
+                            false);
       delete (yysemantic_stack_[(5) - (4)].fnsig);
     }
     break;
@@ -4113,15 +4117,15 @@
   case 135:
 
 /* Line 690 of lalr1.cc  */
-#line 1907 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 1555 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.node) = new FunctionDecl(LOC((yyloc)),
                             static_cast<QName*>((yysemantic_stack_[(5) - (3)].expr)),
                             (yysemantic_stack_[(5) - (4)].fnsig)->theParams.getp(),
                             (yysemantic_stack_[(5) - (4)].fnsig)->theReturnType.getp(),
-                            NULL,  // no body
-                            true,  // updating
-                            true); // external
+                            NULL,
+                            true,
+                            true);
       delete (yysemantic_stack_[(5) - (4)].fnsig);
     }
     break;
@@ -4129,7 +4133,7 @@
   case 136:
 
 /* Line 690 of lalr1.cc  */
-#line 1922 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 1568 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.fnsig) = new FunctionSig(NULL);
     }
@@ -4138,7 +4142,7 @@
   case 137:
 
 /* Line 690 of lalr1.cc  */
-#line 1927 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 1573 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.fnsig) = new FunctionSig(dynamic_cast<ParamList*>((yysemantic_stack_[(3) - (2)].node)));
     }
@@ -4147,7 +4151,7 @@
   case 138:
 
 /* Line 690 of lalr1.cc  */
-#line 1932 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 1578 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.fnsig) = new FunctionSig(NULL, dynamic_cast<SequenceType*>((yysemantic_stack_[(4) - (4)].node)));
     }
@@ -4156,7 +4160,7 @@
   case 139:
 
 /* Line 690 of lalr1.cc  */
-#line 1937 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 1583 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.fnsig) = new FunctionSig(dynamic_cast<ParamList*>((yysemantic_stack_[(5) - (2)].node)), dynamic_cast<SequenceType*>((yysemantic_stack_[(5) - (5)].node)));
     }
@@ -4165,7 +4169,7 @@
   case 140:
 
 /* Line 690 of lalr1.cc  */
-#line 1945 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 1589 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       ParamList *pl = new ParamList( LOC((yyloc)) );
       pl->push_back( dynamic_cast<Param*>((yysemantic_stack_[(1) - (1)].node)) );
@@ -4176,11 +4180,10 @@
   case 141:
 
 /* Line 690 of lalr1.cc  */
-#line 1952 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 1596 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       if ( ParamList *pl = dynamic_cast<ParamList*>((yysemantic_stack_[(3) - (1)].node)) )
         pl->push_back( dynamic_cast<Param*>((yysemantic_stack_[(3) - (3)].node)) );
-
       (yyval.node) = (yysemantic_stack_[(3) - (1)].node);
     }
     break;
@@ -4188,7 +4191,7 @@
   case 142:
 
 /* Line 690 of lalr1.cc  */
-#line 1963 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 1604 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.node) = new Param(LOC((yyloc)), static_cast<QName*>((yysemantic_stack_[(2) - (2)].expr)), NULL);
     }
@@ -4197,7 +4200,7 @@
   case 143:
 
 /* Line 690 of lalr1.cc  */
-#line 1968 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 1609 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.node) = new Param(LOC((yyloc)),
                      static_cast<QName*>((yysemantic_stack_[(3) - (2)].expr)),
@@ -4208,13 +4211,12 @@
   case 144:
 
 /* Line 690 of lalr1.cc  */
-#line 1978 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 1617 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.node) = new CollectionDecl( LOC((yyloc)),
                               static_cast<QName*>((yysemantic_stack_[(3) - (3)].expr)),
                               NULL,
                               NULL);
-
       static_cast<CollectionDecl*>((yyval.node))->setComment(SYMTAB((yysemantic_stack_[(3) - (1)].sval)));
     }
     break;
@@ -4222,13 +4224,12 @@
   case 145:
 
 /* Line 690 of lalr1.cc  */
-#line 1987 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 1625 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.node) = new CollectionDecl( LOC((yyloc)),
                               static_cast<QName*>((yysemantic_stack_[(5) - (3)].expr)),
                               0,
                               static_cast<SequenceType*>((yysemantic_stack_[(5) - (5)].node)));
-
       static_cast<CollectionDecl*>((yyval.node))->setComment(SYMTAB((yysemantic_stack_[(5) - (1)].sval)));
     }
     break;
@@ -4236,13 +4237,12 @@
   case 146:
 
 /* Line 690 of lalr1.cc  */
-#line 1996 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 1633 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.node) = new CollectionDecl( LOC((yyloc)),
                                static_cast<QName*>((yysemantic_stack_[(4) - (4)].expr)),
                                static_cast<AnnotationListParsenode*>((yysemantic_stack_[(4) - (2)].node)),
                                0);
-
       static_cast<CollectionDecl*>((yyval.node))->setComment(SYMTAB((yysemantic_stack_[(4) - (1)].sval)));
     }
     break;
@@ -4250,13 +4250,12 @@
   case 147:
 
 /* Line 690 of lalr1.cc  */
-#line 2005 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 1641 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.node) = new CollectionDecl( LOC((yyloc)),
                                static_cast<QName*>((yysemantic_stack_[(6) - (4)].expr)),
                                static_cast<AnnotationListParsenode*>((yysemantic_stack_[(6) - (2)].node)),
                                static_cast<SequenceType*>((yysemantic_stack_[(6) - (6)].node)));
-
       static_cast<CollectionDecl*>((yyval.node))->setComment(SYMTAB((yysemantic_stack_[(6) - (1)].sval)));
     }
     break;
@@ -4264,7 +4263,7 @@
   case 148:
 
 /* Line 690 of lalr1.cc  */
-#line 2017 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 1651 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.node) = static_cast<parsenode*>(new SequenceType(LOC((yyloc)), (yysemantic_stack_[(1) - (1)].node), NULL));
     }
@@ -4273,7 +4272,7 @@
   case 149:
 
 /* Line 690 of lalr1.cc  */
-#line 2021 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 1655 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.node) = static_cast<parsenode*>(new SequenceType(LOC((yyloc)),
                                                     (yysemantic_stack_[(2) - (1)].node),
@@ -4284,7 +4283,7 @@
   case 150:
 
 /* Line 690 of lalr1.cc  */
-#line 2027 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 1661 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.node) = static_cast<parsenode*>(new SequenceType(LOC((yyloc)), (yysemantic_stack_[(1) - (1)].node), NULL));
     }
@@ -4293,26 +4292,24 @@
   case 151:
 
 /* Line 690 of lalr1.cc  */
-#line 2031 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 1665 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.node) = static_cast<parsenode*>(new SequenceType(LOC((yyloc)),
                                                     (yysemantic_stack_[(2) - (1)].node),
                                                     dynamic_cast<OccurrenceIndicator*>((yysemantic_stack_[(2) - (2)].node))));
-
     }
     break;
 
   case 152:
 
 /* Line 690 of lalr1.cc  */
-#line 2041 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 1672 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.node) = new AST_IndexDecl(LOC((yyloc)),
                              static_cast<QName*>((yysemantic_stack_[(8) - (3)].expr)),
                              (yysemantic_stack_[(8) - (6)].expr),
                              dynamic_cast<IndexKeyList*>((yysemantic_stack_[(8) - (8)].node)),
                              NULL);
-
       static_cast<AST_IndexDecl*>((yyval.node))->setComment( SYMTAB((yysemantic_stack_[(8) - (1)].sval)) );
     }
     break;
@@ -4320,14 +4317,13 @@
   case 153:
 
 /* Line 690 of lalr1.cc  */
-#line 2051 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 1681 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.node) = new AST_IndexDecl(LOC((yyloc)),
                              static_cast<QName*>((yysemantic_stack_[(9) - (4)].expr)),
                              (yysemantic_stack_[(9) - (7)].expr),
                              dynamic_cast<IndexKeyList*>((yysemantic_stack_[(9) - (9)].node)),
                              static_cast<AnnotationListParsenode*>((yysemantic_stack_[(9) - (2)].node)));
-
       static_cast<AST_IndexDecl*>((yyval.node))->setComment( SYMTAB((yysemantic_stack_[(9) - (1)].sval)) );
     }
     break;
@@ -4335,7 +4331,7 @@
   case 154:
 
 /* Line 690 of lalr1.cc  */
-#line 2064 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 1692 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       IndexKeyList* keyList = new IndexKeyList(LOC((yyloc)));
       keyList->addKeySpec(dynamic_cast<IndexKeySpec*>((yysemantic_stack_[(1) - (1)].node)));
@@ -4346,7 +4342,7 @@
   case 155:
 
 /* Line 690 of lalr1.cc  */
-#line 2070 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 1698 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_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);
@@ -4356,7 +4352,7 @@
   case 156:
 
 /* Line 690 of lalr1.cc  */
-#line 2079 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 1705 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.node) = new IndexKeySpec(LOC((yyloc)), (yysemantic_stack_[(1) - (1)].expr), NULL, NULL);
     }
@@ -4365,7 +4361,7 @@
   case 157:
 
 /* Line 690 of lalr1.cc  */
-#line 2084 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 1710 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.node) = new IndexKeySpec(LOC((yyloc)),
                             (yysemantic_stack_[(2) - (1)].expr),
@@ -4377,7 +4373,7 @@
   case 158:
 
 /* Line 690 of lalr1.cc  */
-#line 2091 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 1717 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.node) = new IndexKeySpec(LOC((yyloc)),
                             (yysemantic_stack_[(2) - (1)].expr),
@@ -4389,7 +4385,7 @@
   case 159:
 
 /* Line 690 of lalr1.cc  */
-#line 2098 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 1724 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.node) = new IndexKeySpec(LOC((yyloc)),
                             (yysemantic_stack_[(3) - (1)].expr),
@@ -4401,7 +4397,7 @@
   case 160:
 
 /* Line 690 of lalr1.cc  */
-#line 2110 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 1734 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.node) = new ICCollSimpleCheck(LOC((yyloc)),
                                  static_cast<QName*>((yysemantic_stack_[(11) - (4)].expr)),
@@ -4414,7 +4410,7 @@
   case 161:
 
 /* Line 690 of lalr1.cc  */
-#line 2120 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 1744 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.node) = new ICCollUniqueKeyCheck(LOC((yyloc)),
                                     static_cast<QName*>((yysemantic_stack_[(14) - (4)].expr)),
@@ -4427,7 +4423,7 @@
   case 162:
 
 /* Line 690 of lalr1.cc  */
-#line 2130 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 1754 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.node) = new ICCollForeachNode(LOC((yyloc)),
                                  static_cast<QName*>((yysemantic_stack_[(13) - (4)].expr)),
@@ -4440,7 +4436,7 @@
   case 163:
 
 /* Line 690 of lalr1.cc  */
-#line 2141 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 1765 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.node) = new ICForeignKey( LOC((yyloc)),
                             static_cast<QName*>((yysemantic_stack_[(22) - (4)].expr)),
@@ -4456,20 +4452,18 @@
   case 164:
 
 /* Line 690 of lalr1.cc  */
-#line 2157 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 1778 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       if ((yysemantic_stack_[(1) - (1)].expr) == NULL)
       {
         error((yylocation_stack_[(1) - (1)]), "syntax error, unexpected end of file, the query body should not be empty");
         YYERROR;
       }
-
       if (dynamic_cast<BlockBody*>((yysemantic_stack_[(1) - (1)].expr)) != NULL)
       {
         BlockBody* blk = static_cast<BlockBody*>((yysemantic_stack_[(1) - (1)].expr));
         blk->setTopLevel(true);
       }
-
       (yyval.expr) = new QueryBody(LOC((yyloc)), (yysemantic_stack_[(1) - (1)].expr));
     }
     break;
@@ -4477,7 +4471,7 @@
   case 165:
 
 /* Line 690 of lalr1.cc  */
-#line 2177 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 1794 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
     }
@@ -4486,7 +4480,7 @@
   case 166:
 
 /* Line 690 of lalr1.cc  */
-#line 2181 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 1798 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
     }
@@ -4495,16 +4489,16 @@
   case 167:
 
 /* Line 690 of lalr1.cc  */
-#line 2185 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 1802 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
-      (yyval.expr) =  NULL;
+      (yyval.expr) = NULL;
     }
     break;
 
   case 168:
 
 /* Line 690 of lalr1.cc  */
-#line 2193 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 1808 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
     }
@@ -4513,7 +4507,7 @@
   case 169:
 
 /* Line 690 of lalr1.cc  */
-#line 2197 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 1812 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
     }
@@ -4522,16 +4516,16 @@
   case 170:
 
 /* Line 690 of lalr1.cc  */
-#line 2201 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 1816 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
-      (yyval.expr) =  new BlockBody(LOC((yyloc)));
+      (yyval.expr) = new BlockBody(LOC((yyloc)));
     }
     break;
 
   case 171:
 
 /* Line 690 of lalr1.cc  */
-#line 2209 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 1822 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
     }
@@ -4540,12 +4534,10 @@
   case 172:
 
 /* Line 690 of lalr1.cc  */
-#line 2214 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 1827 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       BlockBody* blk = static_cast<BlockBody*>((yysemantic_stack_[(2) - (1)].expr));
-
       blk->add((yysemantic_stack_[(2) - (2)].expr));
-
       (yyval.expr) = blk;
     }
     break;
@@ -4553,7 +4545,7 @@
   case 173:
 
 /* Line 690 of lalr1.cc  */
-#line 2226 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 1835 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       BlockBody* blk = new BlockBody(LOC((yyloc)));
       blk->add((yysemantic_stack_[(1) - (1)].expr));
@@ -4564,12 +4556,10 @@
   case 174:
 
 /* Line 690 of lalr1.cc  */
-#line 2233 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 1842 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       BlockBody* blk = static_cast<BlockBody*>((yysemantic_stack_[(2) - (1)].expr));
-
       blk->add((yysemantic_stack_[(2) - (2)].expr));
-
       (yyval.expr) = blk;
     }
     break;
@@ -4577,13 +4567,13 @@
   case 175:
 
 /* Line 690 of lalr1.cc  */
-#line 2243 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 1849 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
-      (yyval.expr) = (yysemantic_stack_[(4) - (1)].expr); // to prevent the Bison warning
-      (yyval.expr) = (yysemantic_stack_[(4) - (2)].expr); // to prevent the Bison warning
-      (yyval.expr) = (yysemantic_stack_[(4) - (4)].expr); // to prevent the Bison warning
+      (yyval.expr) = (yysemantic_stack_[(4) - (1)].expr);
+      (yyval.expr) = (yysemantic_stack_[(4) - (2)].expr);
+      (yyval.expr) = (yysemantic_stack_[(4) - (4)].expr);
       error((yylocation_stack_[(4) - (3)]), "syntax error, unexpected statement (missing semicolon \";\" between statements?)");
-      delete (yysemantic_stack_[(4) - (1)].expr); // these need to be deleted here because the parser deallocator will skip them
+      delete (yysemantic_stack_[(4) - (1)].expr);
       delete (yysemantic_stack_[(4) - (2)].expr);
       delete (yysemantic_stack_[(4) - (4)].expr);
       YYERROR;
@@ -4593,7 +4583,7 @@
   case 189:
 
 /* Line 690 of lalr1.cc  */
-#line 2276 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 1877 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.expr) = (yysemantic_stack_[(3) - (2)].expr);
     }
@@ -4602,14 +4592,15 @@
   case 190:
 
 /* Line 690 of lalr1.cc  */
-#line 2284 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 1883 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       BlockBody* block = dynamic_cast<BlockBody*>((yysemantic_stack_[(3) - (2)].expr));
       if ((yysemantic_stack_[(3) - (2)].expr) == NULL || (block != NULL && block->isEmpty()))
       {
         (yyval.expr) = new JSONDirectObjectConstructor(LOC((yyloc)));
       }
-      else if (block == NULL)
+      else
+      if (block == NULL)
       {
         BlockBody* blk = new BlockBody(LOC((yyloc)));
         blk->add((yysemantic_stack_[(3) - (2)].expr));
@@ -4625,7 +4616,7 @@
   case 191:
 
 /* Line 690 of lalr1.cc  */
-#line 2306 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 1904 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.expr) = (yysemantic_stack_[(3) - (2)].expr);
     }
@@ -4634,7 +4625,7 @@
   case 192:
 
 /* Line 690 of lalr1.cc  */
-#line 2314 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 1910 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.expr) = (yysemantic_stack_[(2) - (1)].expr);
     }
@@ -4643,7 +4634,7 @@
   case 193:
 
 /* Line 690 of lalr1.cc  */
-#line 2322 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 1916 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       VarDeclStmt* vdecl = static_cast<VarDeclStmt*>((yysemantic_stack_[(3) - (1)].expr));
       vdecl->add((yysemantic_stack_[(3) - (3)].node));
@@ -4654,7 +4645,7 @@
   case 194:
 
 /* Line 690 of lalr1.cc  */
-#line 2329 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 1923 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       VarDeclStmt* vdecl = new VarDeclStmt(LOC((yyloc)), NULL);
       vdecl->add((yysemantic_stack_[(2) - (2)].node));
@@ -4665,7 +4656,7 @@
   case 195:
 
 /* Line 690 of lalr1.cc  */
-#line 2336 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 1930 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       VarDeclStmt* vdecl = new VarDeclStmt(LOC((yyloc)),
                                            static_cast<AnnotationListParsenode*>((yysemantic_stack_[(3) - (1)].node)));
@@ -4677,13 +4668,13 @@
   case 196:
 
 /* Line 690 of lalr1.cc  */
-#line 2347 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 1939 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       LocalVarDecl* vd = new LocalVarDecl(LOC((yyloc)),
                                           static_cast<QName*>((yysemantic_stack_[(2) - (2)].expr)),
-                                          NULL,  // no type
-                                          NULL,  // no init expr
-                                          NULL); // no annotations
+                                          NULL,
+                                          NULL,
+                                          NULL);
       (yyval.node) = vd;
     }
     break;
@@ -4691,13 +4682,13 @@
   case 197:
 
 /* Line 690 of lalr1.cc  */
-#line 2356 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 1948 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       LocalVarDecl* vd = new LocalVarDecl(LOC((yyloc)),
                                           static_cast<QName*>((yysemantic_stack_[(3) - (2)].expr)),
-                                          dynamic_cast<SequenceType*>((yysemantic_stack_[(3) - (3)].node)), // type
-                                          NULL,  // no init expr
-                                          NULL); // no annotations
+                                          dynamic_cast<SequenceType*>((yysemantic_stack_[(3) - (3)].node)),
+                                          NULL,
+                                          NULL);
       (yyval.node) = vd;
     }
     break;
@@ -4705,13 +4696,13 @@
   case 198:
 
 /* Line 690 of lalr1.cc  */
-#line 2365 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 1957 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       LocalVarDecl* vd = new LocalVarDecl(LOC((yyloc)),
                                           static_cast<QName*>((yysemantic_stack_[(4) - (2)].expr)),
-                                          NULL,  // no type
-                                          (yysemantic_stack_[(4) - (4)].expr),    // init expr
-                                          NULL); // no annotations
+                                          NULL,
+                                          (yysemantic_stack_[(4) - (4)].expr),
+                                          NULL);
       (yyval.node) = vd;
     }
     break;
@@ -4719,13 +4710,13 @@
   case 199:
 
 /* Line 690 of lalr1.cc  */
-#line 2374 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 1966 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       LocalVarDecl* vd = new LocalVarDecl(LOC((yyloc)),
                                           static_cast<QName*>((yysemantic_stack_[(5) - (2)].expr)),
-                                          dynamic_cast<SequenceType*>((yysemantic_stack_[(5) - (3)].node)), // type
-                                          (yysemantic_stack_[(5) - (5)].expr),    // init expr
-                                          NULL); // no annotations
+                                          dynamic_cast<SequenceType*>((yysemantic_stack_[(5) - (3)].node)),
+                                          (yysemantic_stack_[(5) - (5)].expr),
+                                          NULL);
       (yyval.node) = vd;
     }
     break;
@@ -4733,7 +4724,7 @@
   case 200:
 
 /* Line 690 of lalr1.cc  */
-#line 2387 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 1977 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.expr) = new AssignExpr(LOC((yyloc)), static_cast<QName*>((yysemantic_stack_[(5) - (2)].expr)), (yysemantic_stack_[(5) - (4)].expr));
     }
@@ -4742,7 +4733,7 @@
   case 201:
 
 /* Line 690 of lalr1.cc  */
-#line 2395 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 1983 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.expr) = new ApplyExpr(LOC((yyloc)), (yysemantic_stack_[(2) - (1)].expr));
     }
@@ -4751,7 +4742,7 @@
   case 202:
 
 /* Line 690 of lalr1.cc  */
-#line 2403 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 1989 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.expr) = new ExitExpr(LOC((yyloc)), (yysemantic_stack_[(4) - (3)].expr));
     }
@@ -4760,7 +4751,7 @@
   case 203:
 
 /* Line 690 of lalr1.cc  */
-#line 2411 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 1995 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       BlockBody* bb = dynamic_cast<BlockBody *>((yysemantic_stack_[(5) - (5)].expr));
       if (bb == NULL)
@@ -4768,7 +4759,6 @@
         bb = new BlockBody((yysemantic_stack_[(5) - (5)].expr)->get_location());
         bb->add((yysemantic_stack_[(5) - (5)].expr));
       }
-
       (yyval.expr) = new WhileExpr(LOC((yyloc)), (yysemantic_stack_[(5) - (3)].expr), bb);
     }
     break;
@@ -4776,7 +4766,7 @@
   case 204:
 
 /* Line 690 of lalr1.cc  */
-#line 2426 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 2007 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.expr) = new FlowCtlStatement(LOC((yyloc)), FlowCtlStatement::BREAK);
     }
@@ -4785,7 +4775,7 @@
   case 205:
 
 /* Line 690 of lalr1.cc  */
-#line 2431 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 2012 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.expr) = new FlowCtlStatement( LOC((yyloc)), FlowCtlStatement::CONTINUE );
     }
@@ -4794,7 +4784,7 @@
   case 206:
 
 /* Line 690 of lalr1.cc  */
-#line 2439 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 2018 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       ReturnExpr* re = dynamic_cast<ReturnExpr*>((yysemantic_stack_[(2) - (2)].expr));
       (yyval.expr) = new FLWORExpr(LOC((yyloc)),
@@ -4809,17 +4799,15 @@
   case 207:
 
 /* Line 690 of lalr1.cc  */
-#line 2453 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 2030 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       exprnode* retExpr = (yysemantic_stack_[(2) - (2)].expr);
-
       if (dynamic_cast<VarDeclStmt*>(retExpr) != NULL)
       {
         BlockBody* blk = new BlockBody(LOC((yyloc)));
         blk->add(retExpr);
         retExpr = blk;
       }
-
       (yyval.expr) = new ReturnExpr(LOC((yyloc)), retExpr);
     }
     break;
@@ -4827,25 +4815,22 @@
   case 208:
 
 /* Line 690 of lalr1.cc  */
-#line 2470 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 2043 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       exprnode* thenExpr = (yysemantic_stack_[(8) - (6)].expr);
       exprnode* elseExpr = (yysemantic_stack_[(8) - (8)].expr);
-
       if (dynamic_cast<VarDeclStmt*>(thenExpr) != NULL)
       {
         BlockBody* blk = new BlockBody(LOC((yyloc)));
         blk->add(thenExpr);
         thenExpr = blk;
       }
-
       if (dynamic_cast<VarDeclStmt*>(elseExpr) != NULL)
       {
         BlockBody* blk = new BlockBody(LOC((yyloc)));
         blk->add(elseExpr);
         elseExpr = blk;
       }
-
       (yyval.expr) = new IfExpr(LOC((yyloc)), (yysemantic_stack_[(8) - (3)].expr), thenExpr, elseExpr);
     }
     break;
@@ -4853,7 +4838,7 @@
   case 209:
 
 /* Line 690 of lalr1.cc  */
-#line 2495 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 2063 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.expr) = new TryExpr(LOC((yyloc)), (yysemantic_stack_[(3) - (2)].expr), (yysemantic_stack_[(3) - (3)].expr));
     }
@@ -4862,7 +4847,7 @@
   case 210:
 
 /* Line 690 of lalr1.cc  */
-#line 2503 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 2069 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       CatchListExpr* cle = new CatchListExpr( LOC((yyloc)) );
       cle->push_back( static_cast<CatchExpr*>((yysemantic_stack_[(1) - (1)].expr)) );
@@ -4873,7 +4858,7 @@
   case 211:
 
 /* Line 690 of lalr1.cc  */
-#line 2510 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 2076 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       CatchListExpr *cle = dynamic_cast<CatchListExpr*>((yysemantic_stack_[(2) - (1)].expr));
       if ( cle )
@@ -4885,7 +4870,7 @@
   case 212:
 
 /* Line 690 of lalr1.cc  */
-#line 2521 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 2085 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_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);
@@ -4895,7 +4880,7 @@
   case 213:
 
 /* Line 690 of lalr1.cc  */
-#line 2530 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 2092 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.expr) = new BlockBody(LOC((yyloc)));
     }
@@ -4904,7 +4889,7 @@
   case 214:
 
 /* Line 690 of lalr1.cc  */
-#line 2537 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 2098 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
     }
@@ -4913,7 +4898,7 @@
   case 215:
 
 /* Line 690 of lalr1.cc  */
-#line 2542 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 2103 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       Expr* expr = dynamic_cast<Expr*>((yysemantic_stack_[(3) - (1)].expr));
       if ( !expr )
@@ -4929,16 +4914,13 @@
   case 216:
 
 /* Line 690 of lalr1.cc  */
-#line 2555 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 2115 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
-      (yyval.expr) = (yysemantic_stack_[(3) - (1)].expr); // to prevent the Bison warning
-      (yyval.expr) = (yysemantic_stack_[(3) - (3)].expr); // to prevent the Bison warning
-      // Heuristics to improve the error message: if the $1 Expr is a QName (which in turn gets
-      // promoted to a PathExpr), chances are that it's not a missing comma, so don't modify
-      // the error message.
+      (yyval.expr) = (yysemantic_stack_[(3) - (1)].expr);
+      (yyval.expr) = (yysemantic_stack_[(3) - (3)].expr);
       if (dynamic_cast<PathExpr*>((yysemantic_stack_[(3) - (1)].expr)) == NULL)
         error((yylocation_stack_[(3) - (2)]), "syntax error, unexpected expression (missing comma \",\" between expressions?)");
-      delete (yysemantic_stack_[(3) - (1)].expr); // these need to be deleted here because the parser deallocator will skip them
+      delete (yysemantic_stack_[(3) - (1)].expr);
       delete (yysemantic_stack_[(3) - (3)].expr);
       YYERROR;
     }
@@ -4947,7 +4929,7 @@
   case 235:
 
 /* Line 690 of lalr1.cc  */
-#line 2602 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 2149 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       ReturnExpr *re = dynamic_cast<ReturnExpr*>((yysemantic_stack_[(2) - (2)].expr));
       (yyval.expr) = new FLWORExpr(LOC((yyloc)),
@@ -4962,7 +4944,7 @@
   case 236:
 
 /* Line 690 of lalr1.cc  */
-#line 2616 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 2161 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.expr) = new ReturnExpr( LOC((yyloc)), (yysemantic_stack_[(2) - (2)].expr) );
     }
@@ -4971,7 +4953,7 @@
   case 237:
 
 /* Line 690 of lalr1.cc  */
-#line 2624 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 2167 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.strval) = parser::the_sliding;
     }
@@ -4980,7 +4962,7 @@
   case 238:
 
 /* Line 690 of lalr1.cc  */
-#line 2629 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 2172 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.strval) = parser::the_tumbling;
     }
@@ -4989,7 +4971,7 @@
   case 239:
 
 /* Line 690 of lalr1.cc  */
-#line 2637 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 2178 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.strval) = parser::the_start;
     }
@@ -4998,7 +4980,7 @@
   case 240:
 
 /* Line 690 of lalr1.cc  */
-#line 2642 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 2183 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.strval) = parser::the_end;
     }
@@ -5007,7 +4989,7 @@
   case 241:
 
 /* Line 690 of lalr1.cc  */
-#line 2647 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 2188 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
     (yyval.strval) = parser::the_only_end;
   }
@@ -5016,7 +4998,7 @@
   case 242:
 
 /* Line 690 of lalr1.cc  */
-#line 2655 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 2194 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.node) = new FLWORWinCond(LOC((yyloc)),
                             dynamic_cast<WindowVars*>((yysemantic_stack_[(4) - (2)].node)),
@@ -5029,7 +5011,7 @@
   case 243:
 
 /* Line 690 of lalr1.cc  */
-#line 2664 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 2203 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.node) = new FLWORWinCond(LOC((yyloc)),
                             NULL,
@@ -5042,7 +5024,7 @@
   case 244:
 
 /* Line 690 of lalr1.cc  */
-#line 2676 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 2214 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.node) = new WindowClause (LOC ((yyloc)),
                              ((yysemantic_stack_[(5) - (2)].strval) == parser::the_tumbling ?
@@ -5057,7 +5039,7 @@
   case 245:
 
 /* Line 690 of lalr1.cc  */
-#line 2686 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 2226 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.node) = new WindowClause (LOC ((yyloc)),
                              ((yysemantic_stack_[(4) - (2)].strval) == parser::the_tumbling ?
@@ -5071,7 +5053,7 @@
   case 246:
 
 /* Line 690 of lalr1.cc  */
-#line 2699 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 2237 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.node) = new CountClause(LOC((yyloc)), static_cast<QName*>((yysemantic_stack_[(3) - (3)].expr)));
     }
@@ -5080,7 +5062,7 @@
   case 255:
 
 /* Line 690 of lalr1.cc  */
-#line 2723 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 2255 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       FLWORClauseList *fcl = new FLWORClauseList( LOC((yyloc)) );
       fcl->push_back( dynamic_cast<FLWORClause*>((yysemantic_stack_[(1) - (1)].node)) );
@@ -5091,7 +5073,7 @@
   case 256:
 
 /* Line 690 of lalr1.cc  */
-#line 2730 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 2262 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       FLWORClauseList *fcl = dynamic_cast<FLWORClauseList*>((yysemantic_stack_[(2) - (1)].node));
       fcl->push_back( dynamic_cast<FLWORClause*>((yysemantic_stack_[(2) - (2)].node)) );
@@ -5102,7 +5084,7 @@
   case 257:
 
 /* Line 690 of lalr1.cc  */
-#line 2740 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 2271 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.node) = new ForClause(LOC((yyloc)), dynamic_cast<VarInDeclList*>((yysemantic_stack_[(3) - (3)].node)));
     }
@@ -5111,9 +5093,9 @@
   case 258:
 
 /* Line 690 of lalr1.cc  */
-#line 2746 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 2277 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
-      (yyval.node) = (yysemantic_stack_[(3) - (3)].node); // to prevent the Bison warning
+      (yyval.node) = (yysemantic_stack_[(3) - (3)].node);
       error((yylocation_stack_[(3) - (2)]), "syntax error, unexpected qualified name \""
           + static_cast<VarInDeclList*>((yysemantic_stack_[(3) - (3)].node))->operator[](0)->get_var_name()->get_qname().str() + "\" (missing \"$\" sign?)");
       delete (yysemantic_stack_[(3) - (3)].node);
@@ -5124,10 +5106,10 @@
   case 259:
 
 /* Line 690 of lalr1.cc  */
-#line 2755 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 2287 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
-      (yyval.node) = NULL; // to prevent the Bison warning
-      error((yylocation_stack_[(2) - (2)]), ""); // the error message is already set in the driver's parseError member
+      (yyval.node) = NULL;
+      error((yylocation_stack_[(2) - (2)]), "");
       YYERROR;
     }
     break;
@@ -5135,16 +5117,15 @@
   case 261:
 
 /* Line 690 of lalr1.cc  */
-#line 2765 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 2296 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
-      // this adds on shift-reduce conflict (probably with FTRange expression)
     }
     break;
 
   case 262:
 
 /* Line 690 of lalr1.cc  */
-#line 2773 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 2301 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       VarInDeclList* vdl = new VarInDeclList( LOC((yyloc)) );
       vdl->push_back( dynamic_cast<VarInDecl*>((yysemantic_stack_[(1) - (1)].node)) );
@@ -5155,7 +5136,7 @@
   case 263:
 
 /* Line 690 of lalr1.cc  */
-#line 2780 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 2308 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       if ( VarInDeclList* vdl = dynamic_cast<VarInDeclList*>((yysemantic_stack_[(4) - (1)].node)) )
         vdl->push_back( dynamic_cast<VarInDecl*>((yysemantic_stack_[(4) - (4)].node)) );
@@ -5166,9 +5147,9 @@
   case 264:
 
 /* Line 690 of lalr1.cc  */
-#line 2788 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 2315 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
-      (yyval.node) = (yysemantic_stack_[(3) - (1)].node); // to prevent the Bison warning
+      (yyval.node) = (yysemantic_stack_[(3) - (1)].node);
       error((yylocation_stack_[(3) - (3)]), "syntax error, unexpected QName \""
           + static_cast<VarInDecl*>((yysemantic_stack_[(3) - (3)].node))->get_var_name()->get_qname().str() + "\" (missing \"$\" sign?)");
       delete (yysemantic_stack_[(3) - (1)].node);
@@ -5179,7 +5160,7 @@
   case 265:
 
 /* Line 690 of lalr1.cc  */
-#line 2800 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 2325 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.node) = new VarInDecl(LOC((yyloc)),
                          static_cast<QName*>((yysemantic_stack_[(3) - (1)].expr)),
@@ -5194,7 +5175,7 @@
   case 266:
 
 /* Line 690 of lalr1.cc  */
-#line 2810 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 2335 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.node) = new VarInDecl(LOC((yyloc)),
                          static_cast<QName*>((yysemantic_stack_[(5) - (1)].expr)),
@@ -5209,7 +5190,7 @@
   case 267:
 
 /* Line 690 of lalr1.cc  */
-#line 2820 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 2345 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.node) = new VarInDecl(LOC((yyloc)),
                          static_cast<QName*>((yysemantic_stack_[(4) - (1)].expr)),
@@ -5224,7 +5205,7 @@
   case 268:
 
 /* Line 690 of lalr1.cc  */
-#line 2830 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 2355 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.node) = new VarInDecl(LOC((yyloc)),
                          static_cast<QName*>((yysemantic_stack_[(6) - (1)].expr)),
@@ -5239,7 +5220,7 @@
   case 269:
 
 /* Line 690 of lalr1.cc  */
-#line 2840 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 2365 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.node) = new VarInDecl(LOC((yyloc)),
                          static_cast<QName*>((yysemantic_stack_[(4) - (1)].expr)),
@@ -5254,7 +5235,7 @@
   case 270:
 
 /* Line 690 of lalr1.cc  */
-#line 2850 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 2375 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.node) = new VarInDecl(LOC((yyloc)),
                          static_cast<QName*>((yysemantic_stack_[(6) - (1)].expr)),
@@ -5269,7 +5250,7 @@
   case 271:
 
 /* Line 690 of lalr1.cc  */
-#line 2860 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 2385 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.node) = new VarInDecl(LOC((yyloc)),
                          static_cast<QName*>((yysemantic_stack_[(5) - (1)].expr)),
@@ -5284,7 +5265,7 @@
   case 272:
 
 /* Line 690 of lalr1.cc  */
-#line 2870 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 2395 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.node) = new VarInDecl(LOC((yyloc)),
                          static_cast<QName*>((yysemantic_stack_[(7) - (1)].expr)),
@@ -5299,7 +5280,7 @@
   case 273:
 
 /* Line 690 of lalr1.cc  */
-#line 2881 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 2405 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.node) = new VarInDecl(LOC((yyloc)),
                          static_cast<QName*>((yysemantic_stack_[(4) - (1)].expr)),
@@ -5313,7 +5294,7 @@
   case 274:
 
 /* Line 690 of lalr1.cc  */
-#line 2890 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 2414 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.node) = new VarInDecl(LOC((yyloc)),
                          static_cast<QName*>((yysemantic_stack_[(5) - (1)].expr)),
@@ -5328,7 +5309,7 @@
   case 275:
 
 /* Line 690 of lalr1.cc  */
-#line 2900 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 2424 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.node) = new VarInDecl(LOC ((yyloc)),
                          static_cast<QName*>((yysemantic_stack_[(5) - (1)].expr)),
@@ -5343,7 +5324,7 @@
   case 276:
 
 /* Line 690 of lalr1.cc  */
-#line 2910 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 2434 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.node) = new VarInDecl(LOC ((yyloc)),
                          static_cast<QName*>((yysemantic_stack_[(6) - (1)].expr)),
@@ -5358,7 +5339,7 @@
   case 277:
 
 /* Line 690 of lalr1.cc  */
-#line 2926 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 2446 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.node) = new PositionalVar(LOC((yyloc)), static_cast<QName*>((yysemantic_stack_[(3) - (3)].expr)));
     }
@@ -5367,7 +5348,7 @@
   case 278:
 
 /* Line 690 of lalr1.cc  */
-#line 2935 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 2452 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.node) = new FTScoreVar(LOC((yyloc)), static_cast<QName*>((yysemantic_stack_[(3) - (3)].expr)));
     }
@@ -5376,7 +5357,7 @@
   case 279:
 
 /* Line 690 of lalr1.cc  */
-#line 2944 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 2458 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.node) = new LetClause( LOC((yyloc)), dynamic_cast<VarGetsDeclList*>((yysemantic_stack_[(2) - (2)].node)) );
         }
@@ -5385,7 +5366,7 @@
   case 280:
 
 /* Line 690 of lalr1.cc  */
-#line 2952 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 2464 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             VarGetsDeclList *vgdl = new VarGetsDeclList( LOC((yyloc)) );
             vgdl->push_back( dynamic_cast<VarGetsDecl*>((yysemantic_stack_[(1) - (1)].node)) );
@@ -5396,7 +5377,7 @@
   case 281:
 
 /* Line 690 of lalr1.cc  */
-#line 2958 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 2470 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             if( VarGetsDeclList *vgdl = dynamic_cast<VarGetsDeclList*>((yysemantic_stack_[(3) - (1)].node)) )
                 vgdl->push_back( dynamic_cast<VarGetsDecl*>((yysemantic_stack_[(3) - (3)].node)) );
@@ -5407,7 +5388,7 @@
   case 282:
 
 /* Line 690 of lalr1.cc  */
-#line 2970 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 2478 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.node) = new VarGetsDecl(LOC ((yyloc)),
                            static_cast<QName*>((yysemantic_stack_[(4) - (2)].expr)),
@@ -5420,7 +5401,7 @@
   case 283:
 
 /* Line 690 of lalr1.cc  */
-#line 2978 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 2486 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.node) = new VarGetsDecl(LOC ((yyloc)),
                            static_cast<QName*>((yysemantic_stack_[(5) - (2)].expr)),
@@ -5433,7 +5414,7 @@
   case 284:
 
 /* Line 690 of lalr1.cc  */
-#line 2988 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 2494 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.node) = new VarGetsDecl(LOC ((yyloc)),
                            dynamic_cast<FTScoreVar*>((yysemantic_stack_[(3) - (1)].node))->get_var_name(),
@@ -5446,7 +5427,7 @@
   case 285:
 
 /* Line 690 of lalr1.cc  */
-#line 2996 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 2502 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.node) = new VarGetsDecl(LOC ((yyloc)),
                            static_cast<QName*>((yysemantic_stack_[(6) - (2)].expr)),
@@ -5459,7 +5440,7 @@
   case 286:
 
 /* Line 690 of lalr1.cc  */
-#line 3008 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 2512 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.node) = new WindowVarDecl(LOC ((yyloc)),
                              static_cast<QName*>((yysemantic_stack_[(4) - (2)].expr)),
@@ -5470,7 +5451,7 @@
   case 287:
 
 /* Line 690 of lalr1.cc  */
-#line 3014 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 2518 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.node) = new WindowVarDecl(LOC ((yyloc)),
                              static_cast<QName*>((yysemantic_stack_[(5) - (2)].expr)),
@@ -5482,7 +5463,7 @@
   case 289:
 
 /* Line 690 of lalr1.cc  */
-#line 3027 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 2528 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.node) = new WindowVars(LOC((yyloc)), NULL, static_cast<QName*>((yysemantic_stack_[(2) - (2)].expr)), NULL, NULL);
     }
@@ -5491,7 +5472,7 @@
   case 290:
 
 /* Line 690 of lalr1.cc  */
-#line 3031 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 2532 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.node) = (yysemantic_stack_[(3) - (3)].node);
       dynamic_cast<WindowVars *>((yyval.node))->set_curr(static_cast<QName*>((yysemantic_stack_[(3) - (2)].expr)));
@@ -5501,7 +5482,7 @@
   case 291:
 
 /* Line 690 of lalr1.cc  */
-#line 3039 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 2539 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.node) = new WindowVars(LOC((yyloc)), dynamic_cast<PositionalVar*>((yysemantic_stack_[(1) - (1)].node)), NULL, NULL, NULL);
     }
@@ -5510,7 +5491,7 @@
   case 292:
 
 /* Line 690 of lalr1.cc  */
-#line 3043 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 2543 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.node) = (yysemantic_stack_[(2) - (2)].node);
       dynamic_cast<WindowVars *>((yyval.node))->set_posvar(dynamic_cast<PositionalVar*>((yysemantic_stack_[(2) - (1)].node)));
@@ -5520,7 +5501,7 @@
   case 294:
 
 /* Line 690 of lalr1.cc  */
-#line 3052 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 2551 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_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)));
     }
@@ -5529,7 +5510,7 @@
   case 295:
 
 /* Line 690 of lalr1.cc  */
-#line 3056 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 2555 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.node) = new WindowVars(LOC((yyloc)), NULL, NULL, NULL, static_cast<QName*>((yysemantic_stack_[(3) - (3)].expr)));
     }
@@ -5538,7 +5519,7 @@
   case 296:
 
 /* Line 690 of lalr1.cc  */
-#line 3060 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 2559 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.node) = new WindowVars(LOC((yyloc)), NULL, NULL, static_cast<QName*>((yysemantic_stack_[(3) - (3)].expr)), NULL);
     }
@@ -5547,7 +5528,7 @@
   case 297:
 
 /* Line 690 of lalr1.cc  */
-#line 3070 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 2565 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.node) = new WhereClause(LOC ((yyloc)), (yysemantic_stack_[(2) - (2)].expr));
     }
@@ -5556,7 +5537,7 @@
   case 298:
 
 /* Line 690 of lalr1.cc  */
-#line 3078 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 2571 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.node) = new GroupByClause(LOC((yyloc)), dynamic_cast<GroupSpecList*>((yysemantic_stack_[(3) - (3)].node)));
     }
@@ -5565,7 +5546,7 @@
   case 299:
 
 /* Line 690 of lalr1.cc  */
-#line 3085 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 2577 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       GroupSpecList* gsl = new GroupSpecList(LOC((yyloc)));
       gsl->push_back(static_cast<GroupSpec*>((yysemantic_stack_[(1) - (1)].node)));
@@ -5576,7 +5557,7 @@
   case 300:
 
 /* Line 690 of lalr1.cc  */
-#line 3091 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 2583 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       GroupSpecList* gsl = static_cast<GroupSpecList*>((yysemantic_stack_[(3) - (1)].node));
       gsl->push_back(static_cast<GroupSpec*>((yysemantic_stack_[(3) - (3)].node)));
@@ -5587,7 +5568,7 @@
   case 301:
 
 /* Line 690 of lalr1.cc  */
-#line 3101 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 2591 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.node) = new GroupSpec(LOC((yyloc)), static_cast<QName*>((yysemantic_stack_[(2) - (2)].expr)), NULL, NULL, NULL);
     }
@@ -5596,7 +5577,7 @@
   case 302:
 
 /* Line 690 of lalr1.cc  */
-#line 3105 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 2595 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.node) = new GroupSpec(LOC((yyloc)), static_cast<QName*>((yysemantic_stack_[(4) - (2)].expr)), NULL, (yysemantic_stack_[(4) - (4)].expr), NULL);
     }
@@ -5605,7 +5586,7 @@
   case 303:
 
 /* Line 690 of lalr1.cc  */
-#line 3109 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 2599 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.node) = new GroupSpec(LOC((yyloc)),
                          static_cast<QName*>((yysemantic_stack_[(5) - (2)].expr)),
@@ -5618,7 +5599,7 @@
   case 304:
 
 /* Line 690 of lalr1.cc  */
-#line 3117 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 2607 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.node) = new GroupSpec(LOC((yyloc)),
                          static_cast<QName*>((yysemantic_stack_[(6) - (2)].expr)),
@@ -5631,7 +5612,7 @@
   case 305:
 
 /* Line 690 of lalr1.cc  */
-#line 3125 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 2615 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.node) = new GroupSpec(LOC((yyloc)),
                          static_cast<QName*>((yysemantic_stack_[(5) - (2)].expr)),
@@ -5644,7 +5625,7 @@
   case 306:
 
 /* Line 690 of lalr1.cc  */
-#line 3133 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 2623 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.node) = new GroupSpec(LOC((yyloc)),
                          static_cast<QName*>((yysemantic_stack_[(3) - (2)].expr)),
@@ -5657,7 +5638,7 @@
   case 307:
 
 /* Line 690 of lalr1.cc  */
-#line 3145 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 2633 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.node) = new GroupCollationSpec( LOC((yyloc)), SYMTAB((yysemantic_stack_[(2) - (2)].sval)) );
     }
@@ -5666,7 +5647,7 @@
   case 308:
 
 /* Line 690 of lalr1.cc  */
-#line 3153 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 2639 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.node) = new OrderByClause(
                 LOC((yyloc)), dynamic_cast<OrderSpecList*>((yysemantic_stack_[(3) - (3)].node))
@@ -5677,7 +5658,7 @@
   case 309:
 
 /* Line 690 of lalr1.cc  */
-#line 3159 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 2645 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.node) = new OrderByClause(
                 LOC((yyloc)), dynamic_cast<OrderSpecList*>((yysemantic_stack_[(4) - (4)].node)), true
@@ -5688,7 +5669,7 @@
   case 310:
 
 /* Line 690 of lalr1.cc  */
-#line 3169 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 2653 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             OrderSpecList *osl = new OrderSpecList( LOC((yyloc)) );
             osl->push_back( dynamic_cast<OrderSpec*>((yysemantic_stack_[(1) - (1)].node)) );
@@ -5699,7 +5680,7 @@
   case 311:
 
 /* Line 690 of lalr1.cc  */
-#line 3175 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 2659 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             if ( OrderSpecList* osl = dynamic_cast<OrderSpecList*>((yysemantic_stack_[(3) - (1)].node)) )
                 osl->push_back( dynamic_cast<OrderSpec*>((yysemantic_stack_[(3) - (3)].node)) );
@@ -5710,7 +5691,7 @@
   case 312:
 
 /* Line 690 of lalr1.cc  */
-#line 3185 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 2667 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.node) = new OrderSpec( LOC((yyloc)), (yysemantic_stack_[(1) - (1)].expr), NULL );
         }
@@ -5719,7 +5700,7 @@
   case 313:
 
 /* Line 690 of lalr1.cc  */
-#line 3189 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 2671 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.node) = new OrderSpec(
                 LOC((yyloc)), (yysemantic_stack_[(2) - (1)].expr), dynamic_cast<OrderModifierPN*>((yysemantic_stack_[(2) - (2)].node))
@@ -5730,7 +5711,7 @@
   case 314:
 
 /* Line 690 of lalr1.cc  */
-#line 3199 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 2679 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.node) = new OrderModifierPN(
                 LOC((yyloc)), dynamic_cast<OrderDirSpec*>((yysemantic_stack_[(1) - (1)].node)), NULL, NULL
@@ -5741,7 +5722,7 @@
   case 315:
 
 /* Line 690 of lalr1.cc  */
-#line 3205 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 2685 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.node) = new OrderModifierPN(
                 LOC((yyloc)), NULL, dynamic_cast<OrderEmptySpec*>((yysemantic_stack_[(1) - (1)].node)), NULL
@@ -5752,7 +5733,7 @@
   case 316:
 
 /* Line 690 of lalr1.cc  */
-#line 3211 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 2691 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.node) = new OrderModifierPN(
                 LOC((yyloc)), NULL, NULL, dynamic_cast<OrderCollationSpec*>((yysemantic_stack_[(1) - (1)].node))
@@ -5763,7 +5744,7 @@
   case 317:
 
 /* Line 690 of lalr1.cc  */
-#line 3217 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 2697 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.node) = new OrderModifierPN(
                 LOC((yyloc)),
@@ -5777,7 +5758,7 @@
   case 318:
 
 /* Line 690 of lalr1.cc  */
-#line 3226 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 2706 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.node) = new OrderModifierPN(
                 LOC((yyloc)),
@@ -5791,7 +5772,7 @@
   case 319:
 
 /* Line 690 of lalr1.cc  */
-#line 3235 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 2715 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.node) = new OrderModifierPN(
                 LOC((yyloc)),
@@ -5805,7 +5786,7 @@
   case 320:
 
 /* Line 690 of lalr1.cc  */
-#line 3244 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 2724 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.node) = new OrderModifierPN(
                 LOC((yyloc)),
@@ -5819,7 +5800,7 @@
   case 321:
 
 /* Line 690 of lalr1.cc  */
-#line 3257 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 2735 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.node) = new OrderDirSpec( LOC((yyloc)), ParseConstants::dir_ascending );
         }
@@ -5828,7 +5809,7 @@
   case 322:
 
 /* Line 690 of lalr1.cc  */
-#line 3261 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 2739 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.node) = new OrderDirSpec( LOC((yyloc)), ParseConstants::dir_descending );
         }
@@ -5837,7 +5818,7 @@
   case 323:
 
 /* Line 690 of lalr1.cc  */
-#line 3269 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 2745 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.node) = new OrderEmptySpec(
                 LOC((yyloc)), StaticContextConsts::empty_greatest
@@ -5848,7 +5829,7 @@
   case 324:
 
 /* Line 690 of lalr1.cc  */
-#line 3275 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 2751 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.node) = new OrderEmptySpec(
                 LOC((yyloc)), StaticContextConsts::empty_least
@@ -5859,7 +5840,7 @@
   case 325:
 
 /* Line 690 of lalr1.cc  */
-#line 3285 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 2759 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.node) = new OrderCollationSpec( LOC((yyloc)), SYMTAB((yysemantic_stack_[(2) - (2)].sval)) );
         }
@@ -5868,7 +5849,7 @@
   case 326:
 
 /* Line 690 of lalr1.cc  */
-#line 3293 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 2765 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.expr) = new QuantifiedExpr(
                 LOC((yyloc)),
@@ -5882,7 +5863,7 @@
   case 327:
 
 /* Line 690 of lalr1.cc  */
-#line 3302 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 2774 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.expr) = new QuantifiedExpr(
                 LOC((yyloc)),
@@ -5896,19 +5877,18 @@
   case 328:
 
 /* Line 690 of lalr1.cc  */
-#line 3315 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 2785 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       QVarInDeclList *qvidl = new QVarInDeclList( LOC((yyloc)) );
       qvidl->push_back( dynamic_cast<QVarInDecl*>((yysemantic_stack_[(1) - (1)].node)) );
       (yyval.node) = qvidl;
-
     }
     break;
 
   case 329:
 
 /* Line 690 of lalr1.cc  */
-#line 3322 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 2791 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       QVarInDeclList *qvidl = dynamic_cast<QVarInDeclList*>((yysemantic_stack_[(4) - (1)].node));
       qvidl->push_back( dynamic_cast<QVarInDecl*>((yysemantic_stack_[(4) - (4)].node)) );
@@ -5919,7 +5899,7 @@
   case 330:
 
 /* Line 690 of lalr1.cc  */
-#line 3334 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 2799 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.node) = new QVarInDecl(LOC((yyloc)), static_cast<QName*>((yysemantic_stack_[(3) - (1)].expr)), (yysemantic_stack_[(3) - (3)].expr));
     }
@@ -5928,7 +5908,7 @@
   case 331:
 
 /* Line 690 of lalr1.cc  */
-#line 3338 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 2803 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.node) = new QVarInDecl(LOC((yyloc)),
                           static_cast<QName*>((yysemantic_stack_[(4) - (1)].expr)),
@@ -5940,7 +5920,7 @@
   case 332:
 
 /* Line 690 of lalr1.cc  */
-#line 3350 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 2812 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_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));
     }
@@ -5949,7 +5929,7 @@
   case 333:
 
 /* Line 690 of lalr1.cc  */
-#line 3357 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 2818 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       SwitchCaseClauseList* scc_list_p = new SwitchCaseClauseList(LOC((yyloc)));
       scc_list_p->push_back(static_cast<SwitchCaseClause*>((yysemantic_stack_[(1) - (1)].node)));
@@ -5960,7 +5940,7 @@
   case 334:
 
 /* Line 690 of lalr1.cc  */
-#line 3363 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 2824 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_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)));
@@ -5971,7 +5951,7 @@
   case 335:
 
 /* Line 690 of lalr1.cc  */
-#line 3372 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 2832 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.node) = new SwitchCaseClause(LOC((yyloc)), dynamic_cast<SwitchCaseOperandList*>((yysemantic_stack_[(3) - (1)].node)), (yysemantic_stack_[(3) - (3)].expr));
     }
@@ -5980,7 +5960,7 @@
   case 336:
 
 /* Line 690 of lalr1.cc  */
-#line 3379 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 2838 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       SwitchCaseOperandList* sco_list_p = new SwitchCaseOperandList(LOC((yyloc)));
       sco_list_p->push_back((yysemantic_stack_[(2) - (2)].expr));
@@ -5991,7 +5971,7 @@
   case 337:
 
 /* Line 690 of lalr1.cc  */
-#line 3385 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 2844 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       SwitchCaseOperandList* sco_list_p = static_cast<SwitchCaseOperandList*>((yysemantic_stack_[(3) - (1)].node));
       sco_list_p->push_back((yysemantic_stack_[(3) - (3)].expr));
@@ -6002,7 +5982,7 @@
   case 338:
 
 /* Line 690 of lalr1.cc  */
-#line 3396 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 2852 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_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));
     }
@@ -6011,7 +5991,7 @@
   case 339:
 
 /* Line 690 of lalr1.cc  */
-#line 3403 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 2858 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       SwitchCaseClauseList* scc_list_p = new SwitchCaseClauseList(LOC((yyloc)));
       scc_list_p->push_back(static_cast<SwitchCaseClause*>((yysemantic_stack_[(1) - (1)].node)));
@@ -6022,7 +6002,7 @@
   case 340:
 
 /* Line 690 of lalr1.cc  */
-#line 3409 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 2864 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_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)));
@@ -6033,7 +6013,7 @@
   case 341:
 
 /* Line 690 of lalr1.cc  */
-#line 3418 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 2872 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.node) = new SwitchCaseClause(LOC((yyloc)), dynamic_cast<SwitchCaseOperandList*>((yysemantic_stack_[(3) - (1)].node)), (yysemantic_stack_[(3) - (3)].expr));
     }
@@ -6042,7 +6022,7 @@
   case 342:
 
 /* Line 690 of lalr1.cc  */
-#line 3427 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 2878 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.expr) = new TypeswitchExpr(LOC((yyloc)),
                               (yysemantic_stack_[(8) - (3)].expr),
@@ -6054,7 +6034,7 @@
   case 343:
 
 /* Line 690 of lalr1.cc  */
-#line 3434 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 2885 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.expr) = new TypeswitchExpr(LOC ((yyloc)),
                               (yysemantic_stack_[(10) - (3)].expr),
@@ -6067,7 +6047,7 @@
   case 344:
 
 /* Line 690 of lalr1.cc  */
-#line 3445 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 2895 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.expr) = new TypeswitchExpr(LOC((yyloc)),
                               (yysemantic_stack_[(8) - (3)].expr),
@@ -6079,7 +6059,7 @@
   case 345:
 
 /* Line 690 of lalr1.cc  */
-#line 3452 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 2902 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.expr) = new TypeswitchExpr(LOC ((yyloc)),
                               (yysemantic_stack_[(10) - (3)].expr),
@@ -6092,7 +6072,7 @@
   case 346:
 
 /* Line 690 of lalr1.cc  */
-#line 3464 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 2912 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       CaseClauseList* cc_list_p = new CaseClauseList(LOC ((yyloc)));
       cc_list_p->push_back(static_cast<CaseClause*>((yysemantic_stack_[(1) - (1)].node)));
@@ -6103,7 +6083,7 @@
   case 347:
 
 /* Line 690 of lalr1.cc  */
-#line 3470 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 2918 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       CaseClauseList* cc_list_p = dynamic_cast<CaseClauseList*>((yysemantic_stack_[(2) - (1)].node));
       cc_list_p->push_back(static_cast<CaseClause*>((yysemantic_stack_[(2) - (2)].node)));
@@ -6114,7 +6094,7 @@
   case 348:
 
 /* Line 690 of lalr1.cc  */
-#line 3482 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 2926 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.node) = new CaseClause(LOC ((yyloc)),
                           static_cast<SequenceTypeList*>((yysemantic_stack_[(4) - (2)].node)),
@@ -6125,7 +6105,7 @@
   case 349:
 
 /* Line 690 of lalr1.cc  */
-#line 3488 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 2932 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.node) = new CaseClause(LOC ((yyloc)),
                           static_cast<QName*>((yysemantic_stack_[(7) - (3)].expr)),
@@ -6137,7 +6117,7 @@
   case 350:
 
 /* Line 690 of lalr1.cc  */
-#line 3499 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 2941 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       CaseClauseList* cc_list_p = new CaseClauseList(LOC ((yyloc)));
       cc_list_p->push_back(static_cast<CaseClause*>((yysemantic_stack_[(1) - (1)].node)));
@@ -6148,7 +6128,7 @@
   case 351:
 
 /* Line 690 of lalr1.cc  */
-#line 3505 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 2947 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       CaseClauseList* cc_list_p = static_cast<CaseClauseList*>((yysemantic_stack_[(2) - (1)].node));
       cc_list_p->push_back(static_cast<CaseClause*>((yysemantic_stack_[(2) - (2)].node)));
@@ -6159,7 +6139,7 @@
   case 352:
 
 /* Line 690 of lalr1.cc  */
-#line 3516 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 2955 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.node) = new CaseClause(LOC ((yyloc)),
                           static_cast<SequenceTypeList*>((yysemantic_stack_[(4) - (2)].node)),
@@ -6170,7 +6150,7 @@
   case 353:
 
 /* Line 690 of lalr1.cc  */
-#line 3522 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 2961 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.node) = new CaseClause(LOC ((yyloc)),
                           static_cast<QName*>((yysemantic_stack_[(7) - (3)].expr)),
@@ -6182,7 +6162,7 @@
   case 354:
 
 /* Line 690 of lalr1.cc  */
-#line 3533 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 2970 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       SequenceTypeList* seqList = new SequenceTypeList(LOC((yyloc)));
       seqList->push_back(static_cast<SequenceType*>((yysemantic_stack_[(1) - (1)].node)));
@@ -6193,7 +6173,7 @@
   case 355:
 
 /* Line 690 of lalr1.cc  */
-#line 3539 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 2976 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       SequenceTypeList* seqList = static_cast<SequenceTypeList*>((yysemantic_stack_[(3) - (1)].node));
       seqList->push_back(static_cast<SequenceType*>((yysemantic_stack_[(3) - (3)].node)));
@@ -6204,7 +6184,7 @@
   case 356:
 
 /* Line 690 of lalr1.cc  */
-#line 3550 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 2984 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.expr) = new IfExpr(LOC ((yyloc)), (yysemantic_stack_[(8) - (3)].expr), (yysemantic_stack_[(8) - (6)].expr), (yysemantic_stack_[(8) - (8)].expr));
     }
@@ -6213,7 +6193,7 @@
   case 357:
 
 /* Line 690 of lalr1.cc  */
-#line 3559 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 2990 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
     }
@@ -6222,7 +6202,7 @@
   case 358:
 
 /* Line 690 of lalr1.cc  */
-#line 3563 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 2994 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.expr) = new OrExpr( LOC((yyloc)), (yysemantic_stack_[(3) - (1)].expr), (yysemantic_stack_[(3) - (3)].expr) );
     }
@@ -6231,7 +6211,7 @@
   case 359:
 
 /* Line 690 of lalr1.cc  */
-#line 3572 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 3000 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
         }
@@ -6240,7 +6220,7 @@
   case 360:
 
 /* Line 690 of lalr1.cc  */
-#line 3576 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 3005 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.expr) = new AndExpr( LOC((yyloc)), (yysemantic_stack_[(3) - (1)].expr), (yysemantic_stack_[(3) - (3)].expr) );
         }
@@ -6249,7 +6229,7 @@
   case 361:
 
 /* Line 690 of lalr1.cc  */
-#line 3583 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 3011 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
           (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
         }
@@ -6258,7 +6238,7 @@
   case 362:
 
 /* Line 690 of lalr1.cc  */
-#line 3587 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 3015 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
           (yyval.expr) = new ComparisonExpr(
               LOC((yyloc)),
@@ -6272,7 +6252,7 @@
   case 363:
 
 /* Line 690 of lalr1.cc  */
-#line 3600 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 3026 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
         }
@@ -6281,9 +6261,8 @@
   case 364:
 
 /* Line 690 of lalr1.cc  */
-#line 3604 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 3030 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
-            /*  ::=  "eq" | "ne" | "lt" | "le" | "gt" | "ge" */
             (yyval.expr) = new ComparisonExpr(
                 LOC((yyloc)),
                 dynamic_cast<ValueComp*>((yysemantic_stack_[(3) - (2)].node)),
@@ -6296,7 +6275,7 @@
   case 365:
 
 /* Line 690 of lalr1.cc  */
-#line 3684 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 3041 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
         }
@@ -6305,7 +6284,7 @@
   case 366:
 
 /* Line 690 of lalr1.cc  */
-#line 3688 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 3045 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.expr) = new FTContainsExpr(
                 LOC((yyloc)),
@@ -6319,7 +6298,7 @@
   case 367:
 
 /* Line 690 of lalr1.cc  */
-#line 3700 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 3056 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
           (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
         }
@@ -6328,7 +6307,7 @@
   case 368:
 
 /* Line 690 of lalr1.cc  */
-#line 3704 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 3060 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
           (yyval.expr) = new StringConcatExpr(LOC((yyloc)), (yysemantic_stack_[(3) - (1)].expr), (yysemantic_stack_[(3) - (3)].expr));
         }
@@ -6337,7 +6316,7 @@
   case 369:
 
 /* Line 690 of lalr1.cc  */
-#line 3711 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 3065 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.node) = NULL;
         }
@@ -6346,7 +6325,7 @@
   case 370:
 
 /* Line 690 of lalr1.cc  */
-#line 3715 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 3069 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
         }
@@ -6355,7 +6334,7 @@
   case 371:
 
 /* Line 690 of lalr1.cc  */
-#line 3722 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 3075 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
         }
@@ -6364,7 +6343,7 @@
   case 372:
 
 /* Line 690 of lalr1.cc  */
-#line 3726 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 3079 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.expr) = new RangeExpr( LOC((yyloc)), (yysemantic_stack_[(3) - (1)].expr), (yysemantic_stack_[(3) - (3)].expr) );
         }
@@ -6373,7 +6352,7 @@
   case 373:
 
 /* Line 690 of lalr1.cc  */
-#line 3735 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 3085 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
         }
@@ -6382,7 +6361,7 @@
   case 374:
 
 /* Line 690 of lalr1.cc  */
-#line 3739 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 3089 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.expr) = new AdditiveExpr( LOC((yyloc)), ParseConstants::op_plus, (yysemantic_stack_[(3) - (1)].expr), (yysemantic_stack_[(3) - (3)].expr) );
         }
@@ -6391,7 +6370,7 @@
   case 375:
 
 /* Line 690 of lalr1.cc  */
-#line 3743 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 3093 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.expr) = new AdditiveExpr( LOC((yyloc)), ParseConstants::op_minus, (yysemantic_stack_[(3) - (1)].expr), (yysemantic_stack_[(3) - (3)].expr) );
         }
@@ -6400,7 +6379,7 @@
   case 376:
 
 /* Line 690 of lalr1.cc  */
-#line 3751 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 3099 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
         }
@@ -6409,7 +6388,7 @@
   case 377:
 
 /* Line 690 of lalr1.cc  */
-#line 3755 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 3103 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.expr) = new MultiplicativeExpr(
                 LOC((yyloc)), ParseConstants::op_mul, (yysemantic_stack_[(3) - (1)].expr), (yysemantic_stack_[(3) - (3)].expr)
@@ -6420,7 +6399,7 @@
   case 378:
 
 /* Line 690 of lalr1.cc  */
-#line 3761 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 3109 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.expr) = new MultiplicativeExpr(
                 LOC((yyloc)), ParseConstants::op_div, (yysemantic_stack_[(3) - (1)].expr), (yysemantic_stack_[(3) - (3)].expr)
@@ -6431,7 +6410,7 @@
   case 379:
 
 /* Line 690 of lalr1.cc  */
-#line 3767 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 3115 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.expr) = new MultiplicativeExpr(
                 LOC((yyloc)), ParseConstants::op_idiv, (yysemantic_stack_[(3) - (1)].expr), (yysemantic_stack_[(3) - (3)].expr)
@@ -6442,7 +6421,7 @@
   case 380:
 
 /* Line 690 of lalr1.cc  */
-#line 3773 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 3121 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.expr) = new MultiplicativeExpr(
                 LOC((yyloc)), ParseConstants::op_mod, (yysemantic_stack_[(3) - (1)].expr), (yysemantic_stack_[(3) - (3)].expr)
@@ -6453,7 +6432,7 @@
   case 381:
 
 /* Line 690 of lalr1.cc  */
-#line 3783 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 3129 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
         }
@@ -6462,7 +6441,7 @@
   case 382:
 
 /* Line 690 of lalr1.cc  */
-#line 3787 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 3133 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.expr) = new UnionExpr( LOC((yyloc)), (yysemantic_stack_[(3) - (1)].expr), (yysemantic_stack_[(3) - (3)].expr) );
         }
@@ -6471,7 +6450,7 @@
   case 383:
 
 /* Line 690 of lalr1.cc  */
-#line 3791 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 3137 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.expr) = new UnionExpr( LOC((yyloc)), (yysemantic_stack_[(3) - (1)].expr), (yysemantic_stack_[(3) - (3)].expr) );
         }
@@ -6480,7 +6459,7 @@
   case 384:
 
 /* Line 690 of lalr1.cc  */
-#line 3799 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 3143 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
         }
@@ -6489,7 +6468,7 @@
   case 385:
 
 /* Line 690 of lalr1.cc  */
-#line 3803 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 3147 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.expr) = new IntersectExceptExpr(
                 LOC((yyloc)), ParseConstants::op_intersect, (yysemantic_stack_[(3) - (1)].expr), (yysemantic_stack_[(3) - (3)].expr)
@@ -6500,7 +6479,7 @@
   case 386:
 
 /* Line 690 of lalr1.cc  */
-#line 3809 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 3153 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.expr) = new IntersectExceptExpr(
                 LOC((yyloc)), ParseConstants::op_except, (yysemantic_stack_[(3) - (1)].expr), (yysemantic_stack_[(3) - (3)].expr)
@@ -6511,7 +6490,7 @@
   case 387:
 
 /* Line 690 of lalr1.cc  */
-#line 3819 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 3161 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
         }
@@ -6520,7 +6499,7 @@
   case 388:
 
 /* Line 690 of lalr1.cc  */
-#line 3823 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 3165 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.expr) = new InstanceofExpr(
                 LOC((yyloc)), (yysemantic_stack_[(4) - (1)].expr), dynamic_cast<SequenceType*>((yysemantic_stack_[(4) - (4)].node))
@@ -6531,7 +6510,7 @@
   case 389:
 
 /* Line 690 of lalr1.cc  */
-#line 3833 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 3173 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
         }
@@ -6540,7 +6519,7 @@
   case 390:
 
 /* Line 690 of lalr1.cc  */
-#line 3837 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 3177 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.expr) = new TreatExpr(
                 LOC((yyloc)), (yysemantic_stack_[(4) - (1)].expr), dynamic_cast<SequenceType*>((yysemantic_stack_[(4) - (4)].node))
@@ -6551,7 +6530,7 @@
   case 391:
 
 /* Line 690 of lalr1.cc  */
-#line 3847 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 3185 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
         }
@@ -6560,7 +6539,7 @@
   case 392:
 
 /* Line 690 of lalr1.cc  */
-#line 3851 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 3189 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.expr) = new CastableExpr(
                 LOC((yyloc)), (yysemantic_stack_[(4) - (1)].expr), dynamic_cast<SingleType*>((yysemantic_stack_[(4) - (4)].node))
@@ -6571,7 +6550,7 @@
   case 393:
 
 /* Line 690 of lalr1.cc  */
-#line 3861 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 3197 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
         }
@@ -6580,7 +6559,7 @@
   case 394:
 
 /* Line 690 of lalr1.cc  */
-#line 3865 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 3201 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.expr) = new CastExpr(
                 LOC((yyloc)), (yysemantic_stack_[(4) - (1)].expr), dynamic_cast<SingleType*>((yysemantic_stack_[(4) - (4)].node))
@@ -6591,7 +6570,7 @@
   case 395:
 
 /* Line 690 of lalr1.cc  */
-#line 3875 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 3209 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.node) = new SingleType(LOC((yyloc)), dynamic_cast<SimpleType*>((yysemantic_stack_[(1) - (1)].node)), false);
     }
@@ -6600,7 +6579,7 @@
   case 396:
 
 /* Line 690 of lalr1.cc  */
-#line 3879 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 3213 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.node) = new SingleType(LOC((yyloc)), dynamic_cast<SimpleType*>((yysemantic_stack_[(2) - (1)].node)), true);
     }
@@ -6609,7 +6588,7 @@
   case 397:
 
 /* Line 690 of lalr1.cc  */
-#line 3888 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 3219 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
         }
@@ -6618,7 +6597,7 @@
   case 398:
 
 /* Line 690 of lalr1.cc  */
-#line 3892 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 3223 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.expr) = new UnaryExpr( LOC((yyloc)), dynamic_cast<SignList*>((yysemantic_stack_[(2) - (1)].node)), (yysemantic_stack_[(2) - (2)].expr) );
         }
@@ -6627,7 +6606,7 @@
   case 399:
 
 /* Line 690 of lalr1.cc  */
-#line 3900 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 3229 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.node) = new SignList( LOC((yyloc)), true );
         }
@@ -6636,7 +6615,7 @@
   case 400:
 
 /* Line 690 of lalr1.cc  */
-#line 3904 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 3233 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.node) = new SignList( LOC((yyloc)), false );
         }
@@ -6645,7 +6624,7 @@
   case 401:
 
 /* Line 690 of lalr1.cc  */
-#line 3908 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 3237 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.node) = (yysemantic_stack_[(2) - (1)].node);
         }
@@ -6654,7 +6633,7 @@
   case 402:
 
 /* Line 690 of lalr1.cc  */
-#line 3912 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 3241 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             if ( SignList *sl = dynamic_cast<SignList*>((yysemantic_stack_[(2) - (1)].node)) )
                 sl->negate();
@@ -6665,7 +6644,7 @@
   case 403:
 
 /* Line 690 of lalr1.cc  */
-#line 3922 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 3249 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
         }
@@ -6674,7 +6653,7 @@
   case 404:
 
 /* Line 690 of lalr1.cc  */
-#line 3926 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 3253 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
         }
@@ -6683,7 +6662,7 @@
   case 405:
 
 /* Line 690 of lalr1.cc  */
-#line 3930 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 3257 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
         }
@@ -6692,7 +6671,7 @@
   case 406:
 
 /* Line 690 of lalr1.cc  */
-#line 3937 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 3263 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
         (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
       }
@@ -6701,7 +6680,7 @@
   case 407:
 
 /* Line 690 of lalr1.cc  */
-#line 3942 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 3268 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
         (yyval.expr) = new SimpleMapExpr(LOC((yyloc)), (yysemantic_stack_[(3) - (1)].expr), (yysemantic_stack_[(3) - (3)].expr));
       }
@@ -6710,7 +6689,7 @@
   case 408:
 
 /* Line 690 of lalr1.cc  */
-#line 3950 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 3274 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.node) = new ValueComp( LOC((yyloc)), ParseConstants::op_val_eq );
         }
@@ -6719,7 +6698,7 @@
   case 409:
 
 /* Line 690 of lalr1.cc  */
-#line 3954 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 3278 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.node) = new ValueComp( LOC((yyloc)), ParseConstants::op_val_ne );
         }
@@ -6728,7 +6707,7 @@
   case 410:
 
 /* Line 690 of lalr1.cc  */
-#line 3958 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 3282 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.node) = new ValueComp( LOC((yyloc)), ParseConstants::op_val_lt );
         }
@@ -6737,7 +6716,7 @@
   case 411:
 
 /* Line 690 of lalr1.cc  */
-#line 3962 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 3286 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.node) = new ValueComp( LOC((yyloc)), ParseConstants::op_val_le );
         }
@@ -6746,7 +6725,7 @@
   case 412:
 
 /* Line 690 of lalr1.cc  */
-#line 3966 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 3290 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.node) = new ValueComp( LOC((yyloc)), ParseConstants::op_val_gt );
         }
@@ -6755,7 +6734,7 @@
   case 413:
 
 /* Line 690 of lalr1.cc  */
-#line 3970 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 3294 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.node) = new ValueComp( LOC((yyloc)), ParseConstants::op_val_ge );
         }
@@ -6764,7 +6743,7 @@
   case 414:
 
 /* Line 690 of lalr1.cc  */
-#line 3994 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 3300 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.expr) = new ValidateExpr( LOC((yyloc)), "strict", (yysemantic_stack_[(4) - (3)].expr) );
         }
@@ -6773,7 +6752,7 @@
   case 415:
 
 /* Line 690 of lalr1.cc  */
-#line 3998 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 3304 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.expr) = new ValidateExpr( LOC((yyloc)), "lax", (yysemantic_stack_[(5) - (4)].expr) );
         }
@@ -6782,7 +6761,7 @@
   case 416:
 
 /* Line 690 of lalr1.cc  */
-#line 4002 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 3308 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.expr) = new ValidateExpr( LOC((yyloc)), "strict", (yysemantic_stack_[(5) - (4)].expr) );
         }
@@ -6791,7 +6770,7 @@
   case 417:
 
 /* Line 690 of lalr1.cc  */
-#line 4006 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 3312 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.expr) = new ValidateExpr(
                 LOC((yyloc)), dynamic_cast<TypeName*>((yysemantic_stack_[(6) - (3)].node))->get_name(), (yysemantic_stack_[(6) - (5)].expr)
@@ -6803,7 +6782,7 @@
   case 418:
 
 /* Line 690 of lalr1.cc  */
-#line 4017 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 3321 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.expr) = new ExtensionExpr(
                 LOC((yyloc)), dynamic_cast<PragmaList*>((yysemantic_stack_[(3) - (1)].node)), NULL
@@ -6814,7 +6793,7 @@
   case 419:
 
 /* Line 690 of lalr1.cc  */
-#line 4023 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 3327 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.expr) = new ExtensionExpr(
                 LOC((yyloc)), dynamic_cast<PragmaList*>((yysemantic_stack_[(4) - (1)].node)), (yysemantic_stack_[(4) - (3)].expr)
@@ -6825,7 +6804,7 @@
   case 420:
 
 /* Line 690 of lalr1.cc  */
-#line 4033 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 3335 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             PragmaList *pl = new PragmaList( LOC((yyloc)) );
             pl->push_back( dynamic_cast<Pragma*>((yysemantic_stack_[(1) - (1)].node)) );
@@ -6836,7 +6815,7 @@
   case 421:
 
 /* Line 690 of lalr1.cc  */
-#line 4039 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 3341 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             if ( PragmaList *pl = dynamic_cast<PragmaList*>((yysemantic_stack_[(2) - (1)].node)) )
                 pl->push_back( dynamic_cast<Pragma*>((yysemantic_stack_[(2) - (2)].node)) );
@@ -6847,7 +6826,7 @@
   case 422:
 
 /* Line 690 of lalr1.cc  */
-#line 4049 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 3349 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.node) = new Pragma( LOC((yyloc)), static_cast<QName*>((yysemantic_stack_[(3) - (2)].expr)), SYMTAB((yysemantic_stack_[(3) - (3)].sval)) );
         }
@@ -6856,7 +6835,7 @@
   case 423:
 
 /* Line 690 of lalr1.cc  */
-#line 4053 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 3353 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.node) = new Pragma( LOC((yyloc)), new QName( LOC((yyloc)), SYMTAB((yysemantic_stack_[(2) - (2)].sval)) ), "" );
         }
@@ -6865,7 +6844,7 @@
   case 424:
 
 /* Line 690 of lalr1.cc  */
-#line 4057 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 3357 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.node) = new Pragma( LOC((yyloc)), new QName( LOC((yyloc)), SYMTAB((yysemantic_stack_[(2) - (2)].sval)), true ), "" );
         }
@@ -6874,7 +6853,7 @@
   case 425:
 
 /* Line 690 of lalr1.cc  */
-#line 4120 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 3363 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       RelativePathExpr* rpe = dynamic_cast<RelativePathExpr*>((yysemantic_stack_[(1) - (1)].expr));
       (yyval.expr) = (!rpe ?
@@ -6886,7 +6865,7 @@
   case 426:
 
 /* Line 690 of lalr1.cc  */
-#line 4142 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 3372 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       AxisStep* as = dynamic_cast<AxisStep*>((yysemantic_stack_[(1) - (1)].expr));
       (yyval.expr) = (as ?
@@ -6901,7 +6880,7 @@
   case 427:
 
 /* Line 690 of lalr1.cc  */
-#line 4170 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 3384 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
     }
@@ -6910,7 +6889,7 @@
   case 428:
 
 /* Line 690 of lalr1.cc  */
-#line 4334 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 3390 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.node) = new NameTest( LOC((yyloc)), static_cast<QName*>((yysemantic_stack_[(1) - (1)].expr)) );
         }
@@ -6919,7 +6898,7 @@
   case 429:
 
 /* Line 690 of lalr1.cc  */
-#line 4338 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 3394 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.node) = new NameTest( LOC((yyloc)), dynamic_cast<Wildcard*>((yysemantic_stack_[(1) - (1)].node)) );
         }
@@ -6928,7 +6907,7 @@
   case 430:
 
 /* Line 690 of lalr1.cc  */
-#line 4348 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 3400 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.node) = new Wildcard(LOC((yyloc)), "", "", ParseConstants::wild_all, false);
     }
@@ -6937,7 +6916,7 @@
   case 431:
 
 /* Line 690 of lalr1.cc  */
-#line 4352 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 3404 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.node) = new Wildcard(LOC((yyloc)), SYMTAB((yysemantic_stack_[(1) - (1)].sval)), "", ParseConstants::wild_elem, false);
     }
@@ -6946,7 +6925,7 @@
   case 432:
 
 /* Line 690 of lalr1.cc  */
-#line 4356 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 3408 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.node) = new Wildcard(LOC((yyloc)), SYMTAB((yysemantic_stack_[(1) - (1)].sval)), "", ParseConstants::wild_elem, true);
     }
@@ -6955,7 +6934,7 @@
   case 433:
 
 /* Line 690 of lalr1.cc  */
-#line 4360 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 3412 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.node) = new Wildcard(LOC((yyloc)), "", SYMTAB((yysemantic_stack_[(1) - (1)].sval)), ParseConstants::wild_prefix, false);
     }
@@ -6964,7 +6943,7 @@
   case 434:
 
 /* Line 690 of lalr1.cc  */
-#line 4369 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 3418 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
        (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
      }
@@ -6973,7 +6952,7 @@
   case 435:
 
 /* Line 690 of lalr1.cc  */
-#line 4373 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 3422 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
        (yyval.expr) = new FilterExpr(LOC((yyloc)), (yysemantic_stack_[(2) - (1)].expr), dynamic_cast<PredicateList*>((yysemantic_stack_[(2) - (2)].node)));
      }
@@ -6982,25 +6961,25 @@
   case 436:
 
 /* Line 690 of lalr1.cc  */
-#line 4377 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 3426 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
-       (yyval.expr) = new DynamicFunctionInvocation(LOC ((yyloc)), (yysemantic_stack_[(3) - (1)].expr), false);
+       (yyval.expr) = new DynamicFunctionInvocation(LOC((yyloc)), (yysemantic_stack_[(3) - (1)].expr), false);
      }
     break;
 
   case 437:
 
 /* Line 690 of lalr1.cc  */
-#line 4381 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 3430 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
-       (yyval.expr) = new DynamicFunctionInvocation(LOC ((yyloc)), (yysemantic_stack_[(4) - (1)].expr), dynamic_cast<ArgList*>((yysemantic_stack_[(4) - (3)].node)), false);
+       (yyval.expr) = new DynamicFunctionInvocation(LOC((yyloc)), (yysemantic_stack_[(4) - (1)].expr), dynamic_cast<ArgList*>((yysemantic_stack_[(4) - (3)].node)), false);
      }
     break;
 
   case 438:
 
 /* Line 690 of lalr1.cc  */
-#line 4385 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 3434 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
        StringLiteral* sl = new StringLiteral( LOC((yyloc)), SYMTAB((yysemantic_stack_[(3) - (3)].sval)) );
        (yyval.expr) = new JSONObjectLookup(LOC((yyloc)), (yysemantic_stack_[(3) - (1)].expr), sl);
@@ -7010,7 +6989,7 @@
   case 439:
 
 /* Line 690 of lalr1.cc  */
-#line 4390 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 3439 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
        (yyval.expr) = new JSONObjectLookup(LOC((yyloc)), (yysemantic_stack_[(3) - (1)].expr), (yysemantic_stack_[(3) - (3)].expr));
      }
@@ -7019,16 +6998,16 @@
   case 440:
 
 /* Line 690 of lalr1.cc  */
-#line 4394 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 3443 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
-       (yyval.expr) = new JSONObjectLookup(LOC((yyloc)), (yysemantic_stack_[(3) - (1)].expr), (yysemantic_stack_[(3) - (3)].expr));
+        (yyval.expr) = new JSONObjectLookup(LOC((yyloc)), (yysemantic_stack_[(3) - (1)].expr), (yysemantic_stack_[(3) - (3)].expr));
      }
     break;
 
   case 441:
 
 /* Line 690 of lalr1.cc  */
-#line 4398 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 3447 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
        (yyval.expr) = new JSONObjectLookup(LOC((yyloc)), (yysemantic_stack_[(3) - (1)].expr), (yysemantic_stack_[(3) - (3)].expr));
      }
@@ -7037,7 +7016,7 @@
   case 442:
 
 /* Line 690 of lalr1.cc  */
-#line 4407 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 3453 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             PredicateList *pl = new PredicateList( LOC((yyloc)) );
             pl->push_back( dynamic_cast<exprnode*>((yysemantic_stack_[(1) - (1)].expr)) );
@@ -7048,7 +7027,7 @@
   case 443:
 
 /* Line 690 of lalr1.cc  */
-#line 4413 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 3459 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             if ( PredicateList *pl = dynamic_cast<PredicateList*>((yysemantic_stack_[(2) - (1)].node)) )
                 pl->push_back( dynamic_cast<exprnode*>((yysemantic_stack_[(2) - (2)].expr)) );
@@ -7059,7 +7038,7 @@
   case 444:
 
 /* Line 690 of lalr1.cc  */
-#line 4423 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 3467 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.expr) = (yysemantic_stack_[(3) - (2)].expr);
         }
@@ -7068,7 +7047,7 @@
   case 445:
 
 /* Line 690 of lalr1.cc  */
-#line 4431 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 3473 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
           (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
         }
@@ -7077,7 +7056,7 @@
   case 446:
 
 /* Line 690 of lalr1.cc  */
-#line 4435 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 3477 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
           (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
         }
@@ -7086,7 +7065,7 @@
   case 447:
 
 /* Line 690 of lalr1.cc  */
-#line 4439 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 3481 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
           (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
         }
@@ -7095,7 +7074,7 @@
   case 448:
 
 /* Line 690 of lalr1.cc  */
-#line 4443 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 3485 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
           (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
         }
@@ -7104,7 +7083,7 @@
   case 449:
 
 /* Line 690 of lalr1.cc  */
-#line 4447 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 3489 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
           (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
         }
@@ -7113,7 +7092,7 @@
   case 450:
 
 /* Line 690 of lalr1.cc  */
-#line 4451 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 3493 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
           (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
         }
@@ -7122,7 +7101,7 @@
   case 451:
 
 /* Line 690 of lalr1.cc  */
-#line 4455 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 3497 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
           (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
         }
@@ -7131,7 +7110,7 @@
   case 452:
 
 /* Line 690 of lalr1.cc  */
-#line 4459 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 3501 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
           (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
         }
@@ -7140,7 +7119,7 @@
   case 453:
 
 /* Line 690 of lalr1.cc  */
-#line 4463 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 3505 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
           (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
         }
@@ -7149,7 +7128,7 @@
   case 454:
 
 /* Line 690 of lalr1.cc  */
-#line 4467 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 3509 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
           (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
         }
@@ -7158,7 +7137,7 @@
   case 455:
 
 /* Line 690 of lalr1.cc  */
-#line 4472 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 3513 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
           (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
         }
@@ -7167,7 +7146,7 @@
   case 456:
 
 /* Line 690 of lalr1.cc  */
-#line 4476 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 3517 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
           (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
         }
@@ -7176,7 +7155,7 @@
   case 457:
 
 /* Line 690 of lalr1.cc  */
-#line 4480 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 3521 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
           (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
         }
@@ -7185,7 +7164,7 @@
   case 458:
 
 /* Line 690 of lalr1.cc  */
-#line 4484 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 3525 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
           (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
         }
@@ -7194,7 +7173,7 @@
   case 459:
 
 /* Line 690 of lalr1.cc  */
-#line 4492 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 3531 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
         }
@@ -7203,7 +7182,7 @@
   case 460:
 
 /* Line 690 of lalr1.cc  */
-#line 4496 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 3535 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
         }
@@ -7212,7 +7191,7 @@
   case 461:
 
 /* Line 690 of lalr1.cc  */
-#line 4500 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 3539 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
         }
@@ -7221,7 +7200,7 @@
   case 462:
 
 /* Line 690 of lalr1.cc  */
-#line 4504 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 3543 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.expr) = new NullLiteral(LOC((yyloc)));
         }
@@ -7230,7 +7209,7 @@
   case 463:
 
 /* Line 690 of lalr1.cc  */
-#line 4512 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 3549 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.expr) = NumericLiteral::new_literal(
                 LOC((yyloc)), ParseConstants::num_decimal, *(yysemantic_stack_[(1) - (1)].decval)
@@ -7242,7 +7221,7 @@
   case 464:
 
 /* Line 690 of lalr1.cc  */
-#line 4519 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 3556 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.expr) = NumericLiteral::new_literal(
                 LOC((yyloc)), ParseConstants::num_integer, *(yysemantic_stack_[(1) - (1)].ival)
@@ -7254,7 +7233,7 @@
   case 465:
 
 /* Line 690 of lalr1.cc  */
-#line 4526 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 3563 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.expr) = NumericLiteral::new_literal(
                 LOC((yyloc)), ParseConstants::num_double, *(yysemantic_stack_[(1) - (1)].dval)
@@ -7266,7 +7245,7 @@
   case 466:
 
 /* Line 690 of lalr1.cc  */
-#line 4536 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 3572 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
           (yyval.expr) = new BooleanLiteral(LOC((yyloc)), true);
         }
@@ -7275,7 +7254,7 @@
   case 467:
 
 /* Line 690 of lalr1.cc  */
-#line 4540 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 3576 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
           (yyval.expr) = new BooleanLiteral(LOC((yyloc)), false);
         }
@@ -7284,7 +7263,7 @@
   case 468:
 
 /* Line 690 of lalr1.cc  */
-#line 4548 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 3582 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.expr) = new VarRef(LOC((yyloc)), static_cast<QName*>((yysemantic_stack_[(2) - (2)].expr)));
         }
@@ -7293,7 +7272,7 @@
   case 469:
 
 /* Line 690 of lalr1.cc  */
-#line 4556 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 3588 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.expr) = new ParenthesizedExpr( LOC((yyloc)), NULL);
         }
@@ -7302,7 +7281,7 @@
   case 470:
 
 /* Line 690 of lalr1.cc  */
-#line 4560 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 3592 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.expr) = new ParenthesizedExpr( LOC((yyloc)), (yysemantic_stack_[(3) - (2)].expr) );
         }
@@ -7311,7 +7290,7 @@
   case 471:
 
 /* Line 690 of lalr1.cc  */
-#line 4568 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 3598 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.expr) = new ContextItemExpr( LOC((yyloc)) );
         }
@@ -7320,7 +7299,7 @@
   case 472:
 
 /* Line 690 of lalr1.cc  */
-#line 4572 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 3602 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.expr) = new ContextItemExpr( LOC((yyloc)) );
         }
@@ -7329,7 +7308,7 @@
   case 473:
 
 /* Line 690 of lalr1.cc  */
-#line 4580 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 3608 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.expr) = new OrderedExpr( LOC((yyloc)), (yysemantic_stack_[(4) - (3)].expr) );
         }
@@ -7338,7 +7317,7 @@
   case 474:
 
 /* Line 690 of lalr1.cc  */
-#line 4588 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 3614 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.expr) = new UnorderedExpr( LOC((yyloc)), (yysemantic_stack_[(4) - (3)].expr) );
         }
@@ -7347,7 +7326,7 @@
   case 475:
 
 /* Line 690 of lalr1.cc  */
-#line 4642 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 3620 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.expr) = new FunctionCall( LOC((yyloc)), static_cast<QName*>((yysemantic_stack_[(3) - (1)].expr)), NULL );
     }
@@ -7356,17 +7335,15 @@
   case 476:
 
 /* Line 690 of lalr1.cc  */
-#line 4646 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 3624 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       ArgList* argList = dynamic_cast<ArgList*>((yysemantic_stack_[(4) - (3)].node));
-
       if (argList->has_placeholder())
       {
-        LiteralFunctionItem* lfi = 
+        LiteralFunctionItem* lfi =
         new LiteralFunctionItem(LOC((yyloc)),
                                 dynamic_cast<QName*>((yysemantic_stack_[(4) - (1)].expr)),
                                 new Integer(argList->size()));
-
         (yyval.expr) = new DynamicFunctionInvocation(LOC((yyloc)), lfi, argList, true);
       }
       else
@@ -7379,7 +7356,7 @@
   case 477:
 
 /* Line 690 of lalr1.cc  */
-#line 4668 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 3642 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       ArgList *al = new ArgList( LOC((yyloc)) );
       al->push_back(new ArgumentPlaceholder(LOC((yyloc))));
@@ -7390,7 +7367,7 @@
   case 478:
 
 /* Line 690 of lalr1.cc  */
-#line 4674 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 3648 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       if ( ArgList *al = dynamic_cast<ArgList*>((yysemantic_stack_[(3) - (1)].node)) )
         al->push_back( new ArgumentPlaceholder(LOC((yyloc))) );
@@ -7401,7 +7378,7 @@
   case 479:
 
 /* Line 690 of lalr1.cc  */
-#line 4680 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 3654 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       ArgList *al = new ArgList( LOC((yyloc)) );
       al->push_back( (yysemantic_stack_[(1) - (1)].expr) );
@@ -7412,7 +7389,7 @@
   case 480:
 
 /* Line 690 of lalr1.cc  */
-#line 4686 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 3660 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       if ( ArgList *al = dynamic_cast<ArgList*>((yysemantic_stack_[(3) - (1)].node)) )
         al->push_back( (yysemantic_stack_[(3) - (3)].expr) );
@@ -7423,7 +7400,7 @@
   case 481:
 
 /* Line 690 of lalr1.cc  */
-#line 4696 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 3668 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
     }
@@ -7432,7 +7409,7 @@
   case 482:
 
 /* Line 690 of lalr1.cc  */
-#line 4700 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 3672 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
     }
@@ -7441,7 +7418,7 @@
   case 483:
 
 /* Line 690 of lalr1.cc  */
-#line 4708 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 3678 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.expr) = new LiteralFunctionItem(LOC ((yyloc)), dynamic_cast<QName*>((yysemantic_stack_[(3) - (1)].expr)), (yysemantic_stack_[(3) - (3)].ival));
     }
@@ -7450,7 +7427,7 @@
   case 484:
 
 /* Line 690 of lalr1.cc  */
-#line 4716 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 3684 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.expr) = new InlineFunction(LOC((yyloc)),
                               &*(yysemantic_stack_[(3) - (2)].fnsig)->theParams,
@@ -7463,7 +7440,7 @@
   case 485:
 
 /* Line 690 of lalr1.cc  */
-#line 4728 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 3694 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
     }
@@ -7472,7 +7449,7 @@
   case 486:
 
 /* Line 690 of lalr1.cc  */
-#line 4732 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 3698 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
     }
@@ -7481,7 +7458,7 @@
   case 487:
 
 /* Line 690 of lalr1.cc  */
-#line 4740 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 3704 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
     }
@@ -7490,7 +7467,7 @@
   case 488:
 
 /* Line 690 of lalr1.cc  */
-#line 4744 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 3708 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
     }
@@ -7499,7 +7476,7 @@
   case 489:
 
 /* Line 690 of lalr1.cc  */
-#line 4748 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 3712 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
     }
@@ -7508,7 +7485,7 @@
   case 490:
 
 /* Line 690 of lalr1.cc  */
-#line 4756 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 3718 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.expr) = new DirElemConstructor(LOC((yyloc)),
                                   static_cast<QName*>((yysemantic_stack_[(4) - (2)].expr)),
@@ -7521,7 +7498,7 @@
   case 491:
 
 /* Line 690 of lalr1.cc  */
-#line 4764 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 3726 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       if (static_cast<QName*>((yysemantic_stack_[(8) - (2)].expr))->get_qname() != static_cast<QName*>((yysemantic_stack_[(8) - (6)].expr))->get_qname())
       {
@@ -7531,7 +7508,6 @@
                   static_cast<QName*>((yysemantic_stack_[(8) - (2)].expr))->get_qname().str() + ">");
         YYERROR;
       }
-
       (yyval.expr) = new DirElemConstructor(LOC((yyloc)),
                                   static_cast<QName*>((yysemantic_stack_[(8) - (2)].expr)),
                                   static_cast<QName*>((yysemantic_stack_[(8) - (6)].expr)),
@@ -7543,7 +7519,7 @@
   case 492:
 
 /* Line 690 of lalr1.cc  */
-#line 4781 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 3742 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.expr) = new DirElemConstructor(LOC((yyloc)),
                                   static_cast<QName*>((yysemantic_stack_[(5) - (2)].expr)),
@@ -7556,7 +7532,7 @@
   case 493:
 
 /* Line 690 of lalr1.cc  */
-#line 4789 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 3750 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       if (static_cast<QName*>((yysemantic_stack_[(9) - (2)].expr))->get_qname() != static_cast<QName*>((yysemantic_stack_[(9) - (7)].expr))->get_qname())
       {
@@ -7566,7 +7542,6 @@
                   static_cast<QName*>((yysemantic_stack_[(9) - (2)].expr))->get_qname().str() + ">");
         YYERROR;
       }
-
       (yyval.expr) = new DirElemConstructor(LOC((yyloc)),
                                   static_cast<QName*>((yysemantic_stack_[(9) - (2)].expr)),
                                   static_cast<QName*>((yysemantic_stack_[(9) - (7)].expr)),
@@ -7578,7 +7553,7 @@
   case 494:
 
 /* Line 690 of lalr1.cc  */
-#line 4808 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 3768 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       if (static_cast<QName*>((yysemantic_stack_[(9) - (2)].expr))->get_qname() != static_cast<QName*>((yysemantic_stack_[(9) - (7)].expr))->get_qname())
       {
@@ -7588,7 +7563,6 @@
                   static_cast<QName*>((yysemantic_stack_[(9) - (2)].expr))->get_qname().str() + ">");
         YYERROR;
       }
-
       (yyval.expr) = new DirElemConstructor(LOC((yyloc)),
                                   static_cast<QName*>((yysemantic_stack_[(9) - (2)].expr)),
                                   static_cast<QName*>((yysemantic_stack_[(9) - (7)].expr)),
@@ -7600,7 +7574,7 @@
   case 495:
 
 /* Line 690 of lalr1.cc  */
-#line 4827 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 3786 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       if (static_cast<QName*>((yysemantic_stack_[(10) - (2)].expr))->get_qname() != static_cast<QName*>((yysemantic_stack_[(10) - (8)].expr))->get_qname())
       {
@@ -7610,7 +7584,6 @@
                   static_cast<QName*>((yysemantic_stack_[(10) - (2)].expr))->get_qname().str() + ">");
         YYERROR;
       }
-
       (yyval.expr) = new DirElemConstructor(LOC((yyloc)),
                                   static_cast<QName*>((yysemantic_stack_[(10) - (2)].expr)),
                                   static_cast<QName*>((yysemantic_stack_[(10) - (8)].expr)),
@@ -7622,7 +7595,7 @@
   case 496:
 
 /* Line 690 of lalr1.cc  */
-#line 4849 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 3804 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       DirElemContentList *decl = new DirElemContentList( LOC((yyloc)) );
       decl->push_back( dynamic_cast<DirElemContent*>((yysemantic_stack_[(1) - (1)].expr)) );
@@ -7633,7 +7606,7 @@
   case 497:
 
 /* Line 690 of lalr1.cc  */
-#line 4855 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 3810 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       DirElemContentList *decl = dynamic_cast<DirElemContentList*>((yysemantic_stack_[(2) - (1)].node));
       if ( decl )
@@ -7645,7 +7618,7 @@
   case 498:
 
 /* Line 690 of lalr1.cc  */
-#line 4866 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 3819 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       DirAttributeList *dal = new DirAttributeList( LOC((yyloc)) );
       dal->push_back( dynamic_cast<DirAttr*>((yysemantic_stack_[(1) - (1)].node)) );
@@ -7656,7 +7629,7 @@
   case 499:
 
 /* Line 690 of lalr1.cc  */
-#line 4872 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 3825 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       DirAttributeList *dal = dynamic_cast<DirAttributeList*>((yysemantic_stack_[(2) - (1)].node));
       if ( dal )
@@ -7668,7 +7641,7 @@
   case 500:
 
 /* Line 690 of lalr1.cc  */
-#line 4883 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 3834 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.node) = new DirAttr(LOC((yyloc)),
                        static_cast<QName*>((yysemantic_stack_[(6) - (2)].expr)),
@@ -7679,7 +7652,7 @@
   case 503:
 
 /* Line 690 of lalr1.cc  */
-#line 4898 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 3844 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.node) = new DirAttributeValue(LOC((yyloc)),
                                  dynamic_cast<QuoteAttrContentList*>((yysemantic_stack_[(3) - (2)].node)));
@@ -7689,7 +7662,7 @@
   case 504:
 
 /* Line 690 of lalr1.cc  */
-#line 4903 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 3849 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.node) = new DirAttributeValue( LOC((yyloc)),
                                   dynamic_cast<AposAttrContentList*>((yysemantic_stack_[(3) - (2)].node)));
@@ -7699,7 +7672,7 @@
   case 505:
 
 /* Line 690 of lalr1.cc  */
-#line 4912 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 3855 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.node) = new QuoteAttrContentList( LOC((yyloc)) );
     }
@@ -7708,7 +7681,7 @@
   case 506:
 
 /* Line 690 of lalr1.cc  */
-#line 4916 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 3859 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
     }
@@ -7717,7 +7690,7 @@
   case 507:
 
 /* Line 690 of lalr1.cc  */
-#line 4923 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 3865 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       QuoteAttrContentList *qacl = new QuoteAttrContentList( LOC((yyloc)) );
       qacl->push_back( new QuoteAttrValueContent( LOC((yyloc)), "\"" ) );
@@ -7728,7 +7701,7 @@
   case 508:
 
 /* Line 690 of lalr1.cc  */
-#line 4929 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 3871 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       QuoteAttrContentList *qacl = new QuoteAttrContentList( LOC((yyloc)) );
       qacl->push_back( dynamic_cast<QuoteAttrValueContent*>((yysemantic_stack_[(1) - (1)].node)) );
@@ -7739,7 +7712,7 @@
   case 509:
 
 /* Line 690 of lalr1.cc  */
-#line 4935 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 3877 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       QuoteAttrContentList* qacl = dynamic_cast<QuoteAttrContentList*>((yysemantic_stack_[(2) - (1)].node));
       if ( qacl )
@@ -7751,7 +7724,7 @@
   case 510:
 
 /* Line 690 of lalr1.cc  */
-#line 4942 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 3884 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       QuoteAttrContentList *qacl = dynamic_cast<QuoteAttrContentList*>((yysemantic_stack_[(2) - (1)].node));
       if ( qacl )
@@ -7763,7 +7736,7 @@
   case 511:
 
 /* Line 690 of lalr1.cc  */
-#line 4953 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 3892 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.node) = new AposAttrContentList( LOC((yyloc)) );
     }
@@ -7772,7 +7745,7 @@
   case 512:
 
 /* Line 690 of lalr1.cc  */
-#line 4957 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 3896 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
     }
@@ -7781,7 +7754,7 @@
   case 513:
 
 /* Line 690 of lalr1.cc  */
-#line 4964 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 3902 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       AposAttrContentList *aacl = new AposAttrContentList( LOC((yyloc)) );
       aacl->push_back( new AposAttrValueContent( LOC((yyloc)),"'") );
@@ -7792,7 +7765,7 @@
   case 514:
 
 /* Line 690 of lalr1.cc  */
-#line 4970 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 3908 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       AposAttrContentList *aacl = new AposAttrContentList( LOC((yyloc)) );
       aacl->push_back( dynamic_cast<AposAttrValueContent*>((yysemantic_stack_[(1) - (1)].node)) );
@@ -7803,7 +7776,7 @@
   case 515:
 
 /* Line 690 of lalr1.cc  */
-#line 4976 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 3914 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       AposAttrContentList *aacl = dynamic_cast<AposAttrContentList*>((yysemantic_stack_[(2) - (1)].node));
       if (aacl)
@@ -7815,7 +7788,7 @@
   case 516:
 
 /* Line 690 of lalr1.cc  */
-#line 4983 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 3921 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       AposAttrContentList *aacl = dynamic_cast<AposAttrContentList*>((yysemantic_stack_[(2) - (1)].node));
       if ( aacl )
@@ -7827,7 +7800,7 @@
   case 517:
 
 /* Line 690 of lalr1.cc  */
-#line 4994 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 3930 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.node) = new QuoteAttrValueContent( LOC((yyloc)), SYMTAB((yysemantic_stack_[(1) - (1)].sval)) );
     }
@@ -7836,7 +7809,7 @@
   case 518:
 
 /* Line 690 of lalr1.cc  */
-#line 4998 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 3934 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.node) = new QuoteAttrValueContent(LOC((yyloc)), dynamic_cast<CommonContent*>((yysemantic_stack_[(1) - (1)].expr)));
     }
@@ -7845,7 +7818,7 @@
   case 519:
 
 /* Line 690 of lalr1.cc  */
-#line 5006 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 3940 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.node) = new AposAttrValueContent( LOC((yyloc)), SYMTAB((yysemantic_stack_[(1) - (1)].sval)) );
     }
@@ -7854,7 +7827,7 @@
   case 520:
 
 /* Line 690 of lalr1.cc  */
-#line 5010 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 3944 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.node) = new AposAttrValueContent(LOC((yyloc)), dynamic_cast<CommonContent*>((yysemantic_stack_[(1) - (1)].expr)));
     }
@@ -7863,7 +7836,7 @@
   case 521:
 
 /* Line 690 of lalr1.cc  */
-#line 5018 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 3950 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.expr) = new DirElemContent( LOC((yyloc)), (yysemantic_stack_[(1) - (1)].expr) );
     }
@@ -7872,7 +7845,7 @@
   case 522:
 
 /* Line 690 of lalr1.cc  */
-#line 5022 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 3954 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.expr) = new DirElemContent( LOC((yyloc)), SYMTAB((yysemantic_stack_[(1) - (1)].sval)) );
     }
@@ -7881,7 +7854,7 @@
   case 523:
 
 /* Line 690 of lalr1.cc  */
-#line 5026 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 3958 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       rchandle<CDataSection> cdata_h = dynamic_cast<CDataSection*>((yysemantic_stack_[(1) - (1)].expr));
       (yyval.expr) = new DirElemContent( LOC((yyloc)), cdata_h );
@@ -7891,7 +7864,7 @@
   case 524:
 
 /* Line 690 of lalr1.cc  */
-#line 5031 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 3963 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       rchandle<CommonContent> cont_h = dynamic_cast<CommonContent*>((yysemantic_stack_[(1) - (1)].expr));
       (yyval.expr) = new DirElemContent( LOC((yyloc)), cont_h );
@@ -7901,7 +7874,7 @@
   case 525:
 
 /* Line 690 of lalr1.cc  */
-#line 5040 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 3970 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.expr) = new CommonContent(LOC((yyloc)), ParseConstants::cont_charref, SYMTAB((yysemantic_stack_[(1) - (1)].sval)));
     }
@@ -7910,7 +7883,7 @@
   case 526:
 
 /* Line 690 of lalr1.cc  */
-#line 5044 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 3974 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.expr) = new CommonContent(LOC((yyloc)), ParseConstants::cont_escape_lbrace);
     }
@@ -7919,7 +7892,7 @@
   case 527:
 
 /* Line 690 of lalr1.cc  */
-#line 5048 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 3978 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.expr) = new CommonContent(LOC((yyloc)), ParseConstants::cont_escape_rbrace);
     }
@@ -7928,7 +7901,7 @@
   case 528:
 
 /* Line 690 of lalr1.cc  */
-#line 5052 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 3982 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.expr) = new CommonContent(LOC((yyloc)), new EnclosedExpr(LOC((yyloc)), (yysemantic_stack_[(3) - (2)].expr)));
     }
@@ -7937,7 +7910,7 @@
   case 529:
 
 /* Line 690 of lalr1.cc  */
-#line 5060 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 3988 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.expr) = new DirCommentConstructor( LOC((yyloc)), SYMTAB((yysemantic_stack_[(3) - (2)].sval)) );
     }
@@ -7946,7 +7919,7 @@
   case 530:
 
 /* Line 690 of lalr1.cc  */
-#line 5065 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 3993 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.expr) = new DirCommentConstructor( LOC((yyloc)), "" );
     }
@@ -7955,7 +7928,7 @@
   case 531:
 
 /* Line 690 of lalr1.cc  */
-#line 5073 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 3999 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.expr) = new DirPIConstructor( LOC((yyloc)), SYMTAB((yysemantic_stack_[(3) - (2)].sval)) );
     }
@@ -7964,7 +7937,7 @@
   case 532:
 
 /* Line 690 of lalr1.cc  */
-#line 5078 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4004 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.expr) = new DirPIConstructor( LOC((yyloc)), SYMTAB((yysemantic_stack_[(3) - (2)].sval)), SYMTAB((yysemantic_stack_[(3) - (3)].sval)) );
     }
@@ -7973,7 +7946,7 @@
   case 533:
 
 /* Line 690 of lalr1.cc  */
-#line 5086 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4010 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.expr) = new CDataSection( LOC((yyloc)),SYMTAB((yysemantic_stack_[(2) - (2)].sval)) );
     }
@@ -7982,7 +7955,7 @@
   case 534:
 
 /* Line 690 of lalr1.cc  */
-#line 5094 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4016 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
     }
@@ -7991,7 +7964,7 @@
   case 535:
 
 /* Line 690 of lalr1.cc  */
-#line 5099 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4021 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
     }
@@ -8000,7 +7973,7 @@
   case 536:
 
 /* Line 690 of lalr1.cc  */
-#line 5104 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4026 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
     }
@@ -8009,7 +7982,7 @@
   case 537:
 
 /* Line 690 of lalr1.cc  */
-#line 5109 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4031 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
     }
@@ -8018,7 +7991,7 @@
   case 538:
 
 /* Line 690 of lalr1.cc  */
-#line 5114 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4036 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
     }
@@ -8027,7 +8000,7 @@
   case 539:
 
 /* Line 690 of lalr1.cc  */
-#line 5119 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4041 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.expr) = (yysemantic_stack_[(1) - (1)].expr);
     }
@@ -8036,7 +8009,7 @@
   case 541:
 
 /* Line 690 of lalr1.cc  */
-#line 5130 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4049 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.expr) = new CompDocConstructor( LOC((yyloc)), (yysemantic_stack_[(4) - (3)].expr) );
     }
@@ -8045,7 +8018,7 @@
   case 542:
 
 /* Line 690 of lalr1.cc  */
-#line 5138 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4055 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.expr) = new CompElemConstructor(LOC((yyloc)), new QName(LOC((yyloc)), SYMTAB((yysemantic_stack_[(3) - (1)].sval))), (yysemantic_stack_[(3) - (2)].expr));
     }
@@ -8054,7 +8027,7 @@
   case 543:
 
 /* Line 690 of lalr1.cc  */
-#line 5142 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4059 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.expr) = new CompElemConstructor( LOC((yyloc)), (yysemantic_stack_[(7) - (3)].expr), (yysemantic_stack_[(7) - (6)].expr) );
     }
@@ -8063,7 +8036,7 @@
   case 544:
 
 /* Line 690 of lalr1.cc  */
-#line 5159 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4065 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.expr) = new CompAttrConstructor( LOC((yyloc)), new QName(LOC((yyloc)), SYMTAB((yysemantic_stack_[(3) - (1)].sval))), (yysemantic_stack_[(3) - (2)].expr) );
     }
@@ -8072,7 +8045,7 @@
   case 545:
 
 /* Line 690 of lalr1.cc  */
-#line 5163 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4069 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.expr) = new CompAttrConstructor( LOC((yyloc)), (yysemantic_stack_[(7) - (3)].expr), (yysemantic_stack_[(7) - (6)].expr) );
     }
@@ -8081,7 +8054,7 @@
   case 546:
 
 /* Line 690 of lalr1.cc  */
-#line 5171 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4075 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.expr) = new CompTextConstructor( LOC((yyloc)), (yysemantic_stack_[(4) - (3)].expr) );
     }
@@ -8090,7 +8063,7 @@
   case 547:
 
 /* Line 690 of lalr1.cc  */
-#line 5179 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4081 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.expr) = new CompCommentConstructor( LOC((yyloc)), (yysemantic_stack_[(4) - (3)].expr) );
     }
@@ -8099,7 +8072,7 @@
   case 548:
 
 /* Line 690 of lalr1.cc  */
-#line 5187 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4087 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.expr) = new CompPIConstructor(LOC((yyloc)), SYMTAB((yysemantic_stack_[(3) - (1)].sval)), (yysemantic_stack_[(3) - (2)].expr));
     }
@@ -8108,7 +8081,7 @@
   case 549:
 
 /* Line 690 of lalr1.cc  */
-#line 5191 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4091 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.expr) = new CompPIConstructor(LOC((yyloc)), (yysemantic_stack_[(7) - (3)].expr), (yysemantic_stack_[(7) - (6)].expr));
     }
@@ -8117,7 +8090,7 @@
   case 550:
 
 /* Line 690 of lalr1.cc  */
-#line 5199 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4097 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.expr) = new CompNamespaceConstructor(LOC((yyloc)), SYMTAB((yysemantic_stack_[(3) - (1)].sval)), (yysemantic_stack_[(3) - (2)].expr));
     }
@@ -8126,7 +8099,7 @@
   case 551:
 
 /* Line 690 of lalr1.cc  */
-#line 5203 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4101 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.expr) = new CompNamespaceConstructor(LOC((yyloc)), (yysemantic_stack_[(7) - (3)].expr), (yysemantic_stack_[(7) - (6)].expr));
     }
@@ -8135,7 +8108,7 @@
   case 552:
 
 /* Line 690 of lalr1.cc  */
-#line 5211 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4107 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.node) = (yysemantic_stack_[(2) - (2)].node);
     }
@@ -8144,7 +8117,7 @@
   case 553:
 
 /* Line 690 of lalr1.cc  */
-#line 5219 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4113 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.node) = new SequenceType( LOC((yyloc)), (yysemantic_stack_[(1) - (1)].node), NULL );
         }
@@ -8153,7 +8126,7 @@
   case 554:
 
 /* Line 690 of lalr1.cc  */
-#line 5223 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4117 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.node) = new SequenceType(LOC((yyloc)), (yysemantic_stack_[(2) - (1)].node), dynamic_cast<OccurrenceIndicator*>((yysemantic_stack_[(2) - (2)].node)));
         }
@@ -8162,7 +8135,7 @@
   case 555:
 
 /* Line 690 of lalr1.cc  */
-#line 5227 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4121 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.node) = new SequenceType( LOC((yyloc)), NULL, NULL );
         }
@@ -8171,7 +8144,7 @@
   case 556:
 
 /* Line 690 of lalr1.cc  */
-#line 5232 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4125 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.node) = new SequenceType( LOC((yyloc)), NULL, NULL );
         }
@@ -8180,7 +8153,7 @@
   case 557:
 
 /* Line 690 of lalr1.cc  */
-#line 5267 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4131 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.node) = new OccurrenceIndicator(
                 LOC((yyloc)), ParseConstants::occurs_optionally
@@ -8191,7 +8164,7 @@
   case 558:
 
 /* Line 690 of lalr1.cc  */
-#line 5273 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4137 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.node) = new OccurrenceIndicator(
                 LOC((yyloc)), ParseConstants::occurs_zero_or_more
@@ -8202,7 +8175,7 @@
   case 559:
 
 /* Line 690 of lalr1.cc  */
-#line 5279 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4143 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.node) = new OccurrenceIndicator(
                 LOC((yyloc)), ParseConstants::occurs_one_or_more
@@ -8213,7 +8186,7 @@
   case 560:
 
 /* Line 690 of lalr1.cc  */
-#line 5289 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4151 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
         }
@@ -8222,7 +8195,7 @@
   case 561:
 
 /* Line 690 of lalr1.cc  */
-#line 5293 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4155 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
         }
@@ -8231,7 +8204,7 @@
   case 562:
 
 /* Line 690 of lalr1.cc  */
-#line 5297 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4159 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.node) = new ItemType( LOC((yyloc)), true );
         }
@@ -8240,7 +8213,7 @@
   case 563:
 
 /* Line 690 of lalr1.cc  */
-#line 5302 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4163 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.node) = new ItemType( LOC((yyloc)), true );
         }
@@ -8249,7 +8222,7 @@
   case 564:
 
 /* Line 690 of lalr1.cc  */
-#line 5306 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4167 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.node) = new StructuredItemType(LOC((yyloc)));
         }
@@ -8258,7 +8231,7 @@
   case 565:
 
 /* Line 690 of lalr1.cc  */
-#line 5311 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4171 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.node) = new StructuredItemType(LOC((yyloc)));
         }
@@ -8267,7 +8240,7 @@
   case 566:
 
 /* Line 690 of lalr1.cc  */
-#line 5315 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4175 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
         }
@@ -8276,7 +8249,7 @@
   case 567:
 
 /* Line 690 of lalr1.cc  */
-#line 5319 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4179 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
         }
@@ -8285,7 +8258,7 @@
   case 568:
 
 /* Line 690 of lalr1.cc  */
-#line 5323 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4183 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
         }
@@ -8294,7 +8267,7 @@
   case 569:
 
 /* Line 690 of lalr1.cc  */
-#line 5330 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4189 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
           TypeList* aTypeList = new TypeList(LOC ((yyloc)));
           aTypeList->push_back(dynamic_cast<SequenceType *>((yysemantic_stack_[(1) - (1)].node)));
@@ -8305,7 +8278,7 @@
   case 570:
 
 /* Line 690 of lalr1.cc  */
-#line 5336 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4195 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
           TypeList* aTypeList = dynamic_cast<TypeList *>((yysemantic_stack_[(3) - (1)].node));
           aTypeList->push_back(dynamic_cast<SequenceType *>((yysemantic_stack_[(3) - (3)].node)));
@@ -8316,7 +8289,7 @@
   case 571:
 
 /* Line 690 of lalr1.cc  */
-#line 5346 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4203 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.node) = new GeneralizedAtomicType( LOC((yyloc)), static_cast<QName*>((yysemantic_stack_[(1) - (1)].expr)) );
     }
@@ -8325,7 +8298,7 @@
   case 572:
 
 /* Line 690 of lalr1.cc  */
-#line 5354 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4209 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.node) = new SimpleType( LOC((yyloc)), static_cast<QName*>((yysemantic_stack_[(1) - (1)].expr)) );
     }
@@ -8334,7 +8307,7 @@
   case 573:
 
 /* Line 690 of lalr1.cc  */
-#line 5362 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4215 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
     }
@@ -8343,7 +8316,7 @@
   case 574:
 
 /* Line 690 of lalr1.cc  */
-#line 5366 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4219 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
     }
@@ -8352,7 +8325,7 @@
   case 575:
 
 /* Line 690 of lalr1.cc  */
-#line 5370 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4223 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
     }
@@ -8361,7 +8334,7 @@
   case 576:
 
 /* Line 690 of lalr1.cc  */
-#line 5374 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4227 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
     }
@@ -8370,7 +8343,7 @@
   case 577:
 
 /* Line 690 of lalr1.cc  */
-#line 5378 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4231 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
     }
@@ -8379,7 +8352,7 @@
   case 578:
 
 /* Line 690 of lalr1.cc  */
-#line 5382 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4235 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
     }
@@ -8388,7 +8361,7 @@
   case 579:
 
 /* Line 690 of lalr1.cc  */
-#line 5386 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4239 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
     }
@@ -8397,7 +8370,7 @@
   case 580:
 
 /* Line 690 of lalr1.cc  */
-#line 5390 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4243 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
     }
@@ -8406,7 +8379,7 @@
   case 581:
 
 /* Line 690 of lalr1.cc  */
-#line 5394 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4247 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
     }
@@ -8415,7 +8388,7 @@
   case 582:
 
 /* Line 690 of lalr1.cc  */
-#line 5398 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4251 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
     }
@@ -8424,7 +8397,7 @@
   case 583:
 
 /* Line 690 of lalr1.cc  */
-#line 5406 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4257 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.node) = new AnyKindTest( LOC((yyloc)) );
     }
@@ -8433,7 +8406,7 @@
   case 584:
 
 /* Line 690 of lalr1.cc  */
-#line 5414 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4263 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.node) = new DocumentTest(LOC((yyloc)));
     }
@@ -8442,7 +8415,7 @@
   case 585:
 
 /* Line 690 of lalr1.cc  */
-#line 5418 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4267 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.node) = new DocumentTest(LOC((yyloc)), dynamic_cast<ElementTest*>((yysemantic_stack_[(4) - (3)].node)));
     }
@@ -8451,7 +8424,7 @@
   case 586:
 
 /* Line 690 of lalr1.cc  */
-#line 5422 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4271 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.node) = new DocumentTest(LOC((yyloc)), dynamic_cast<SchemaElementTest*>((yysemantic_stack_[(4) - (3)].node)));
     }
@@ -8460,7 +8433,7 @@
   case 587:
 
 /* Line 690 of lalr1.cc  */
-#line 5430 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4277 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.node) = new NamespaceTest(LOC((yyloc)));
     }
@@ -8469,7 +8442,7 @@
   case 588:
 
 /* Line 690 of lalr1.cc  */
-#line 5437 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4282 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.node) = new TextTest(LOC((yyloc)));
     }
@@ -8478,7 +8451,7 @@
   case 589:
 
 /* Line 690 of lalr1.cc  */
-#line 5445 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4288 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.node) = new CommentTest(LOC((yyloc)));
     }
@@ -8487,7 +8460,7 @@
   case 590:
 
 /* Line 690 of lalr1.cc  */
-#line 5453 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4294 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.node) = new PITest( LOC((yyloc)), "" );
         }
@@ -8496,7 +8469,7 @@
   case 591:
 
 /* Line 690 of lalr1.cc  */
-#line 5457 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4298 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.node) = new PITest( LOC((yyloc)), SYMTAB((yysemantic_stack_[(4) - (3)].sval)) );
         }
@@ -8505,7 +8478,7 @@
   case 592:
 
 /* Line 690 of lalr1.cc  */
-#line 5461 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4302 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.node) = new PITest( LOC((yyloc)), SYMTAB((yysemantic_stack_[(4) - (3)].sval)) );
         }
@@ -8514,7 +8487,7 @@
   case 593:
 
 /* Line 690 of lalr1.cc  */
-#line 5469 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4308 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.node) = new AttributeTest( LOC((yyloc)), NULL, NULL );
         }
@@ -8523,7 +8496,7 @@
   case 594:
 
 /* Line 690 of lalr1.cc  */
-#line 5473 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4312 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.node) = new AttributeTest(
                 LOC((yyloc)), static_cast<QName*>((yysemantic_stack_[(4) - (3)].expr)), NULL
@@ -8534,7 +8507,7 @@
   case 595:
 
 /* Line 690 of lalr1.cc  */
-#line 5479 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4318 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.node) = new AttributeTest(
                 LOC((yyloc)), static_cast<QName*>((yysemantic_stack_[(6) - (3)].expr)), dynamic_cast<TypeName*>((yysemantic_stack_[(6) - (5)].node))
@@ -8545,7 +8518,7 @@
   case 596:
 
 /* Line 690 of lalr1.cc  */
-#line 5485 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4324 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.node) = new AttributeTest( LOC((yyloc)), NULL, NULL );
         }
@@ -8554,7 +8527,7 @@
   case 597:
 
 /* Line 690 of lalr1.cc  */
-#line 5489 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4328 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.node) = new AttributeTest(
                 LOC((yyloc)), NULL, dynamic_cast<TypeName*>((yysemantic_stack_[(6) - (5)].node))
@@ -8565,7 +8538,7 @@
   case 598:
 
 /* Line 690 of lalr1.cc  */
-#line 5499 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4336 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.node) = new SchemaAttributeTest( LOC((yyloc)), static_cast<QName*>((yysemantic_stack_[(4) - (3)].expr)) );
         }
@@ -8574,7 +8547,7 @@
   case 599:
 
 /* Line 690 of lalr1.cc  */
-#line 5507 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4342 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.node) = new ElementTest( LOC((yyloc)), NULL, NULL, true );
         }
@@ -8583,7 +8556,7 @@
   case 600:
 
 /* Line 690 of lalr1.cc  */
-#line 5511 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4346 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.node) = new ElementTest(
                 LOC((yyloc)), static_cast<QName*>((yysemantic_stack_[(4) - (3)].expr)), NULL, true
@@ -8594,7 +8567,7 @@
   case 601:
 
 /* Line 690 of lalr1.cc  */
-#line 5517 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4352 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.node) = new ElementTest(
                 LOC((yyloc)),
@@ -8608,7 +8581,7 @@
   case 602:
 
 /* Line 690 of lalr1.cc  */
-#line 5526 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4361 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.node) = new ElementTest(
                 LOC((yyloc)),
@@ -8622,7 +8595,7 @@
   case 603:
 
 /* Line 690 of lalr1.cc  */
-#line 5535 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4370 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.node) = new ElementTest(
                 LOC((yyloc)), NULL, NULL, true
@@ -8633,7 +8606,7 @@
   case 604:
 
 /* Line 690 of lalr1.cc  */
-#line 5541 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4376 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.node) = new ElementTest(
                 LOC((yyloc)), NULL, dynamic_cast<TypeName*>((yysemantic_stack_[(6) - (5)].node)), false
@@ -8644,7 +8617,7 @@
   case 605:
 
 /* Line 690 of lalr1.cc  */
-#line 5547 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4382 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.node) = new ElementTest(
                 LOC((yyloc)), NULL, dynamic_cast<TypeName*>((yysemantic_stack_[(6) - (5)].node)), true
@@ -8655,7 +8628,7 @@
   case 606:
 
 /* Line 690 of lalr1.cc  */
-#line 5557 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4390 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.node) = new SchemaElementTest( LOC((yyloc)), static_cast<QName*>((yysemantic_stack_[(4) - (3)].expr)) );
         }
@@ -8664,7 +8637,7 @@
   case 607:
 
 /* Line 690 of lalr1.cc  */
-#line 5574 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4396 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.node) = new TypeName( LOC((yyloc)), static_cast<QName*>((yysemantic_stack_[(1) - (1)].expr)) );
         }
@@ -8673,7 +8646,7 @@
   case 608:
 
 /* Line 690 of lalr1.cc  */
-#line 5581 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4402 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.node) = new TypeName( LOC((yyloc)), static_cast<QName*>((yysemantic_stack_[(2) - (1)].expr)), true );
         }
@@ -8682,7 +8655,7 @@
   case 609:
 
 /* Line 690 of lalr1.cc  */
-#line 5596 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4408 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.expr) = new StringLiteral( LOC((yyloc)), SYMTAB((yysemantic_stack_[(1) - (1)].sval)) );
         }
@@ -8691,7 +8664,7 @@
   case 610:
 
 /* Line 690 of lalr1.cc  */
-#line 5623 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4414 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
     }
@@ -8700,7 +8673,7 @@
   case 611:
 
 /* Line 690 of lalr1.cc  */
-#line 5627 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4418 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
     }
@@ -8709,7 +8682,7 @@
   case 612:
 
 /* Line 690 of lalr1.cc  */
-#line 5635 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4424 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.node) = new AnyFunctionTest(LOC((yyloc)));
     }
@@ -8718,7 +8691,7 @@
   case 613:
 
 /* Line 690 of lalr1.cc  */
-#line 5643 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4430 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
           (yyval.node) = new TypedFunctionTest(LOC ((yyloc)), dynamic_cast<SequenceType *>((yysemantic_stack_[(5) - (5)].node)));
         }
@@ -8727,7 +8700,7 @@
   case 614:
 
 /* Line 690 of lalr1.cc  */
-#line 5647 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4434 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
           (yyval.node) = new TypedFunctionTest(LOC ((yyloc)),
               dynamic_cast<TypeList *>((yysemantic_stack_[(6) - (3)].node)),
@@ -8738,7 +8711,7 @@
   case 615:
 
 /* Line 690 of lalr1.cc  */
-#line 5658 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4442 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
            (yyval.node) = (yysemantic_stack_[(3) - (2)].node);
         }
@@ -8747,7 +8720,7 @@
   case 616:
 
 /* Line 690 of lalr1.cc  */
-#line 5675 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4448 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.node) = new RevalidationDecl(
                 LOC((yyloc)), StaticContextConsts::strict_validation
@@ -8758,7 +8731,7 @@
   case 617:
 
 /* Line 690 of lalr1.cc  */
-#line 5681 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4454 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.node) = new RevalidationDecl(
                 LOC((yyloc)), StaticContextConsts::lax_validation
@@ -8769,7 +8742,7 @@
   case 618:
 
 /* Line 690 of lalr1.cc  */
-#line 5687 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4460 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.node) = new RevalidationDecl(
                 LOC((yyloc)), StaticContextConsts::skip_validation
@@ -8780,7 +8753,7 @@
   case 619:
 
 /* Line 690 of lalr1.cc  */
-#line 5697 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4468 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.expr) = new InsertExpr( LOC((yyloc)), store::UpdateConsts::INTO, (yysemantic_stack_[(5) - (3)].expr), (yysemantic_stack_[(5) - (5)].expr) );
         }
@@ -8789,7 +8762,7 @@
   case 620:
 
 /* Line 690 of lalr1.cc  */
-#line 5701 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4472 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.expr) = new InsertExpr(
                 LOC((yyloc)), store::UpdateConsts::AS_FIRST_INTO, (yysemantic_stack_[(7) - (3)].expr), (yysemantic_stack_[(7) - (7)].expr)
@@ -8800,7 +8773,7 @@
   case 621:
 
 /* Line 690 of lalr1.cc  */
-#line 5707 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4478 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.expr) = new InsertExpr(
                 LOC((yyloc)), store::UpdateConsts::AS_LAST_INTO, (yysemantic_stack_[(7) - (3)].expr), (yysemantic_stack_[(7) - (7)].expr)
@@ -8811,7 +8784,7 @@
   case 622:
 
 /* Line 690 of lalr1.cc  */
-#line 5713 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4484 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.expr) = new InsertExpr( LOC((yyloc)), store::UpdateConsts::AFTER, (yysemantic_stack_[(5) - (3)].expr), (yysemantic_stack_[(5) - (5)].expr) );
         }
@@ -8820,7 +8793,7 @@
   case 623:
 
 /* Line 690 of lalr1.cc  */
-#line 5717 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4488 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.expr) = new InsertExpr(
                 LOC ((yyloc)), store::UpdateConsts::BEFORE, (yysemantic_stack_[(5) - (3)].expr), (yysemantic_stack_[(5) - (5)].expr)
@@ -8831,7 +8804,7 @@
   case 624:
 
 /* Line 690 of lalr1.cc  */
-#line 5723 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4494 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.expr) = new InsertExpr( LOC((yyloc)), store::UpdateConsts::INTO, (yysemantic_stack_[(5) - (3)].expr), (yysemantic_stack_[(5) - (5)].expr) );
         }
@@ -8840,7 +8813,7 @@
   case 625:
 
 /* Line 690 of lalr1.cc  */
-#line 5727 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4498 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.expr) = new InsertExpr(
                 LOC((yyloc)), store::UpdateConsts::AS_FIRST_INTO, (yysemantic_stack_[(7) - (3)].expr), (yysemantic_stack_[(7) - (7)].expr)
@@ -8851,7 +8824,7 @@
   case 626:
 
 /* Line 690 of lalr1.cc  */
-#line 5733 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4504 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.expr) = new InsertExpr(
                   LOC((yyloc)), store::UpdateConsts::AS_LAST_INTO, (yysemantic_stack_[(7) - (3)].expr), (yysemantic_stack_[(7) - (7)].expr)
@@ -8862,7 +8835,7 @@
   case 627:
 
 /* Line 690 of lalr1.cc  */
-#line 5739 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4510 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.expr) = new InsertExpr(
                 LOC ((yyloc)),
@@ -8874,7 +8847,7 @@
   case 628:
 
 /* Line 690 of lalr1.cc  */
-#line 5746 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4517 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.expr) = new InsertExpr(
                 LOC ((yyloc)), store::UpdateConsts::BEFORE, (yysemantic_stack_[(5) - (3)].expr), (yysemantic_stack_[(5) - (5)].expr)
@@ -8885,7 +8858,7 @@
   case 629:
 
 /* Line 690 of lalr1.cc  */
-#line 5756 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4525 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.expr) = new DeleteExpr( LOC ((yyloc)), (yysemantic_stack_[(3) - (3)].expr) );
         }
@@ -8894,7 +8867,7 @@
   case 630:
 
 /* Line 690 of lalr1.cc  */
-#line 5761 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4530 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.expr) = new DeleteExpr( LOC ((yyloc)), (yysemantic_stack_[(3) - (3)].expr) );
         }
@@ -8903,7 +8876,7 @@
   case 631:
 
 /* Line 690 of lalr1.cc  */
-#line 5769 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4536 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.expr) = new ReplaceExpr(
                 LOC((yyloc)), store::UpdateConsts::NODE, (yysemantic_stack_[(5) - (3)].expr), (yysemantic_stack_[(5) - (5)].expr)
@@ -8914,7 +8887,7 @@
   case 632:
 
 /* Line 690 of lalr1.cc  */
-#line 5775 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4542 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.expr) = new ReplaceExpr(
                 LOC((yyloc)), store::UpdateConsts::VALUE_OF_NODE, (yysemantic_stack_[(7) - (5)].expr), (yysemantic_stack_[(7) - (7)].expr)
@@ -8925,7 +8898,7 @@
   case 633:
 
 /* Line 690 of lalr1.cc  */
-#line 5785 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4550 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.expr) = new RenameExpr( LOC ((yyloc)), (yysemantic_stack_[(5) - (3)].expr), (yysemantic_stack_[(5) - (5)].expr) );
         }
@@ -8934,7 +8907,7 @@
   case 634:
 
 /* Line 690 of lalr1.cc  */
-#line 5807 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4556 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_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) );
@@ -8944,7 +8917,7 @@
   case 635:
 
 /* Line 690 of lalr1.cc  */
-#line 5816 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4563 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       CopyVarList* lList = new CopyVarList(LOC((yyloc)));
       lList->push_back (dynamic_cast<VarBinding*> ((yysemantic_stack_[(1) - (1)].expr)));
@@ -8955,7 +8928,7 @@
   case 636:
 
 /* Line 690 of lalr1.cc  */
-#line 5822 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4569 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       CopyVarList* lList = dynamic_cast<CopyVarList*>((yysemantic_stack_[(4) - (1)].expr));
       VarBinding* lBinding = dynamic_cast<VarBinding*>((yysemantic_stack_[(4) - (4)].expr));
@@ -8967,7 +8940,7 @@
   case 637:
 
 /* Line 690 of lalr1.cc  */
-#line 5835 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4578 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
        (yyval.expr) = new VarBinding(LOC((yyloc)), static_cast<QName*>((yysemantic_stack_[(3) - (1)].expr)), (yysemantic_stack_[(3) - (3)].expr));
     }
@@ -8976,7 +8949,7 @@
   case 638:
 
 /* Line 690 of lalr1.cc  */
-#line 5849 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4584 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.expr) = new TryExpr( LOC((yyloc)), (yysemantic_stack_[(5) - (3)].expr), (yysemantic_stack_[(5) - (5)].expr) );
         }
@@ -8985,7 +8958,7 @@
   case 639:
 
 /* Line 690 of lalr1.cc  */
-#line 5856 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4590 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             CatchListExpr *cle = new CatchListExpr( LOC((yyloc)) );
             cle->push_back( static_cast<CatchExpr*>((yysemantic_stack_[(1) - (1)].expr)) );
@@ -8996,7 +8969,7 @@
   case 640:
 
 /* Line 690 of lalr1.cc  */
-#line 5862 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4596 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             CatchListExpr *cle = dynamic_cast<CatchListExpr*>((yysemantic_stack_[(2) - (1)].expr));
             if ( cle )
@@ -9008,7 +8981,7 @@
   case 641:
 
 /* Line 690 of lalr1.cc  */
-#line 5872 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4605 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_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);
@@ -9018,7 +8991,7 @@
   case 642:
 
 /* Line 690 of lalr1.cc  */
-#line 5881 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4612 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
       (yyval.expr) = (yysemantic_stack_[(3) - (2)].expr);
     }
@@ -9027,7 +9000,7 @@
   case 643:
 
 /* Line 690 of lalr1.cc  */
-#line 5889 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4618 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             CatchExpr::NameTestList *ntl = new CatchExpr::NameTestList;
             ntl->push_back( static_cast<NameTest*>((yysemantic_stack_[(1) - (1)].node)) );
@@ -9038,7 +9011,7 @@
   case 644:
 
 /* Line 690 of lalr1.cc  */
-#line 5895 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4624 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             CatchExpr::NameTestList *ntl =
                 static_cast<CatchExpr::NameTestList*>((yysemantic_stack_[(3) - (1)].name_test_list));
@@ -9050,7 +9023,7 @@
   case 645:
 
 /* Line 690 of lalr1.cc  */
-#line 5913 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4633 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_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);
@@ -9060,7 +9033,7 @@
   case 646:
 
 /* Line 690 of lalr1.cc  */
-#line 5921 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4640 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.pos_filter_list) = NULL;
         }
@@ -9069,7 +9042,7 @@
   case 647:
 
 /* Line 690 of lalr1.cc  */
-#line 5925 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4644 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.pos_filter_list) = (yysemantic_stack_[(1) - (1)].pos_filter_list);
         }
@@ -9078,7 +9051,7 @@
   case 648:
 
 /* Line 690 of lalr1.cc  */
-#line 5932 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4650 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_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)) );
@@ -9088,7 +9061,7 @@
   case 649:
 
 /* Line 690 of lalr1.cc  */
-#line 5937 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4655 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_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);
@@ -9098,7 +9071,7 @@
   case 650:
 
 /* Line 690 of lalr1.cc  */
-#line 5945 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4662 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
         }
@@ -9107,7 +9080,7 @@
   case 651:
 
 /* Line 690 of lalr1.cc  */
-#line 5949 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4666 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.node) = new FTOr( LOC((yyloc)), (yysemantic_stack_[(3) - (1)].node), (yysemantic_stack_[(3) - (3)].node) );
         }
@@ -9116,7 +9089,7 @@
   case 652:
 
 /* Line 690 of lalr1.cc  */
-#line 5956 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4672 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
         }
@@ -9125,7 +9098,7 @@
   case 653:
 
 /* Line 690 of lalr1.cc  */
-#line 5960 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4676 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.node) = new FTAnd( LOC((yyloc)), (yysemantic_stack_[(3) - (1)].node), (yysemantic_stack_[(3) - (3)].node) );
         }
@@ -9134,7 +9107,7 @@
   case 654:
 
 /* Line 690 of lalr1.cc  */
-#line 5967 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4682 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
         }
@@ -9143,7 +9116,7 @@
   case 655:
 
 /* Line 690 of lalr1.cc  */
-#line 5971 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4686 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.node) = new FTMildNot( LOC((yyloc)), (yysemantic_stack_[(4) - (1)].node), (yysemantic_stack_[(4) - (4)].node) );
         }
@@ -9152,7 +9125,7 @@
   case 656:
 
 /* Line 690 of lalr1.cc  */
-#line 5978 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4692 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
         }
@@ -9161,7 +9134,7 @@
   case 657:
 
 /* Line 690 of lalr1.cc  */
-#line 5982 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4696 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.node) = new FTUnaryNot(
                 LOC((yyloc)), dynamic_cast<FTPrimaryWithOptions*>((yysemantic_stack_[(2) - (2)].node))
@@ -9172,7 +9145,7 @@
   case 658:
 
 /* Line 690 of lalr1.cc  */
-#line 5991 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4704 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.node) = new FTPrimaryWithOptions(
                 LOC((yyloc)),
@@ -9186,7 +9159,7 @@
   case 659:
 
 /* Line 690 of lalr1.cc  */
-#line 6003 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4714 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.node) = NULL;
         }
@@ -9195,7 +9168,7 @@
   case 660:
 
 /* Line 690 of lalr1.cc  */
-#line 6007 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4718 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
         }
@@ -9204,7 +9177,7 @@
   case 661:
 
 /* Line 690 of lalr1.cc  */
-#line 6014 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4723 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.node) = NULL;
         }
@@ -9213,7 +9186,7 @@
   case 662:
 
 /* Line 690 of lalr1.cc  */
-#line 6018 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4727 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
         }
@@ -9222,7 +9195,7 @@
   case 663:
 
 /* Line 690 of lalr1.cc  */
-#line 6026 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4733 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.node) = new FTWeight( LOC((yyloc)), dynamic_cast<exprnode*>((yysemantic_stack_[(4) - (3)].expr)) );
         }
@@ -9231,7 +9204,7 @@
   case 664:
 
 /* Line 690 of lalr1.cc  */
-#line 6034 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4739 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.node) = new FTWordsTimes(
                 LOC((yyloc)),
@@ -9244,7 +9217,7 @@
   case 665:
 
 /* Line 690 of lalr1.cc  */
-#line 6042 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4747 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.node) = (yysemantic_stack_[(3) - (2)].node);
         }
@@ -9253,7 +9226,7 @@
   case 666:
 
 /* Line 690 of lalr1.cc  */
-#line 6046 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4751 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
         }
@@ -9262,7 +9235,7 @@
   case 667:
 
 /* Line 690 of lalr1.cc  */
-#line 6053 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4756 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.node) = NULL;
         }
@@ -9271,7 +9244,7 @@
   case 668:
 
 /* Line 690 of lalr1.cc  */
-#line 6057 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4760 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
         }
@@ -9280,7 +9253,7 @@
   case 669:
 
 /* Line 690 of lalr1.cc  */
-#line 6065 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4766 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.node) = new FTExtensionSelection(
                 LOC((yyloc)),
@@ -9293,7 +9266,7 @@
   case 670:
 
 /* Line 690 of lalr1.cc  */
-#line 6076 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4775 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.node) = NULL;
         }
@@ -9302,7 +9275,7 @@
   case 671:
 
 /* Line 690 of lalr1.cc  */
-#line 6080 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4779 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
         }
@@ -9311,7 +9284,7 @@
   case 672:
 
 /* Line 690 of lalr1.cc  */
-#line 6088 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4785 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.node) = new FTWords(
                 LOC((yyloc)),
@@ -9324,7 +9297,7 @@
   case 673:
 
 /* Line 690 of lalr1.cc  */
-#line 6100 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4795 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.node) = new FTWordsValue(
                 LOC((yyloc)), static_cast<StringLiteral*>((yysemantic_stack_[(1) - (1)].expr)), NULL
@@ -9335,7 +9308,7 @@
   case 674:
 
 /* Line 690 of lalr1.cc  */
-#line 6106 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4801 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.node) = new FTWordsValue(
                 LOC((yyloc)), NULL, dynamic_cast<exprnode*>((yysemantic_stack_[(3) - (2)].expr))
@@ -9346,7 +9319,7 @@
   case 675:
 
 /* Line 690 of lalr1.cc  */
-#line 6115 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4808 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.node) = new FTAnyallOption( LOC((yyloc)), ft_anyall_mode::any );
         }
@@ -9355,7 +9328,7 @@
   case 676:
 
 /* Line 690 of lalr1.cc  */
-#line 6119 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4812 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
         }
@@ -9364,7 +9337,7 @@
   case 677:
 
 /* Line 690 of lalr1.cc  */
-#line 6127 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4818 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.node) = new FTAnyallOption( LOC((yyloc)), (yysemantic_stack_[(2) - (2)].ft_anyall_value) );
         }
@@ -9373,7 +9346,7 @@
   case 678:
 
 /* Line 690 of lalr1.cc  */
-#line 6131 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4822 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.node) = new FTAnyallOption( LOC((yyloc)), (yysemantic_stack_[(2) - (2)].ft_anyall_value) );
         }
@@ -9382,7 +9355,7 @@
   case 679:
 
 /* Line 690 of lalr1.cc  */
-#line 6135 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4826 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.node) = new FTAnyallOption( LOC((yyloc)), ft_anyall_mode::phrase );
         }
@@ -9391,7 +9364,7 @@
   case 680:
 
 /* Line 690 of lalr1.cc  */
-#line 6142 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4831 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.ft_anyall_value) = ft_anyall_mode::any;
         }
@@ -9400,7 +9373,7 @@
   case 681:
 
 /* Line 690 of lalr1.cc  */
-#line 6146 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4835 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.ft_anyall_value) = ft_anyall_mode::any_word;
         }
@@ -9409,7 +9382,7 @@
   case 682:
 
 /* Line 690 of lalr1.cc  */
-#line 6153 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4840 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.ft_anyall_value) = ft_anyall_mode::all;
         }
@@ -9418,7 +9391,7 @@
   case 683:
 
 /* Line 690 of lalr1.cc  */
-#line 6157 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4844 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.ft_anyall_value) = ft_anyall_mode::all_words;
         }
@@ -9427,7 +9400,7 @@
   case 684:
 
 /* Line 690 of lalr1.cc  */
-#line 6165 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4850 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
         }
@@ -9436,7 +9409,7 @@
   case 685:
 
 /* Line 690 of lalr1.cc  */
-#line 6169 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4854 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
         }
@@ -9445,7 +9418,7 @@
   case 686:
 
 /* Line 690 of lalr1.cc  */
-#line 6173 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4858 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
         }
@@ -9454,7 +9427,7 @@
   case 687:
 
 /* Line 690 of lalr1.cc  */
-#line 6177 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4862 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
         }
@@ -9463,7 +9436,7 @@
   case 688:
 
 /* Line 690 of lalr1.cc  */
-#line 6181 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4866 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
         }
@@ -9472,7 +9445,7 @@
   case 689:
 
 /* Line 690 of lalr1.cc  */
-#line 6189 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4872 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.node) = new FTOrder( LOC((yyloc)) );
         }
@@ -9481,7 +9454,7 @@
   case 690:
 
 /* Line 690 of lalr1.cc  */
-#line 6197 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4878 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.node) = new FTWindow(
                 LOC((yyloc)),
@@ -9494,7 +9467,7 @@
   case 691:
 
 /* Line 690 of lalr1.cc  */
-#line 6209 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4888 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.node) = new FTDistance(
                 LOC((yyloc)),
@@ -9507,7 +9480,7 @@
   case 692:
 
 /* Line 690 of lalr1.cc  */
-#line 6221 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4898 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.node) = new FTUnit( LOC((yyloc)), ft_unit::words );
         }
@@ -9516,7 +9489,7 @@
   case 693:
 
 /* Line 690 of lalr1.cc  */
-#line 6225 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4902 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.node) = new FTUnit( LOC((yyloc)), ft_unit::sentences );
         }
@@ -9525,7 +9498,7 @@
   case 694:
 
 /* Line 690 of lalr1.cc  */
-#line 6229 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4906 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.node) = new FTUnit( LOC((yyloc)), ft_unit::paragraphs );
         }
@@ -9534,7 +9507,7 @@
   case 695:
 
 /* Line 690 of lalr1.cc  */
-#line 6237 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4912 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             FTMatchOptions *mo = new FTMatchOptions( LOC((yyloc)) );
             mo->push_back( dynamic_cast<FTMatchOption*>((yysemantic_stack_[(2) - (2)].node)) );
@@ -9545,7 +9518,7 @@
   case 696:
 
 /* Line 690 of lalr1.cc  */
-#line 6243 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4918 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             FTMatchOptions *mo = dynamic_cast<FTMatchOptions*>((yysemantic_stack_[(3) - (1)].node));
             mo->push_back( dynamic_cast<FTMatchOption*>((yysemantic_stack_[(3) - (3)].node)) );
@@ -9556,7 +9529,7 @@
   case 697:
 
 /* Line 690 of lalr1.cc  */
-#line 6253 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4926 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
         }
@@ -9565,7 +9538,7 @@
   case 698:
 
 /* Line 690 of lalr1.cc  */
-#line 6257 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4930 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
         }
@@ -9574,7 +9547,7 @@
   case 699:
 
 /* Line 690 of lalr1.cc  */
-#line 6261 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4934 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
         }
@@ -9583,7 +9556,7 @@
   case 700:
 
 /* Line 690 of lalr1.cc  */
-#line 6265 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4938 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
         }
@@ -9592,7 +9565,7 @@
   case 701:
 
 /* Line 690 of lalr1.cc  */
-#line 6269 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4942 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
         }
@@ -9601,7 +9574,7 @@
   case 702:
 
 /* Line 690 of lalr1.cc  */
-#line 6273 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4946 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
         }
@@ -9610,7 +9583,7 @@
   case 703:
 
 /* Line 690 of lalr1.cc  */
-#line 6277 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4950 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
         }
@@ -9619,7 +9592,7 @@
   case 704:
 
 /* Line 690 of lalr1.cc  */
-#line 6281 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4954 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
         }
@@ -9628,7 +9601,7 @@
   case 705:
 
 /* Line 690 of lalr1.cc  */
-#line 6289 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4960 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.node) = new FTCaseOption( LOC((yyloc)), ft_case_mode::sensitive );
         }
@@ -9637,7 +9610,7 @@
   case 706:
 
 /* Line 690 of lalr1.cc  */
-#line 6293 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4964 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.node) = new FTCaseOption( LOC((yyloc)), ft_case_mode::insensitive );
         }
@@ -9646,7 +9619,7 @@
   case 707:
 
 /* Line 690 of lalr1.cc  */
-#line 6297 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4968 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.node) = new FTCaseOption( LOC((yyloc)), ft_case_mode::lower );
         }
@@ -9655,7 +9628,7 @@
   case 708:
 
 /* Line 690 of lalr1.cc  */
-#line 6301 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4972 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.node) = new FTCaseOption( LOC((yyloc)), ft_case_mode::upper );
         }
@@ -9664,7 +9637,7 @@
   case 709:
 
 /* Line 690 of lalr1.cc  */
-#line 6309 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4978 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.node) = new FTDiacriticsOption(
                 LOC((yyloc)), ft_diacritics_mode::sensitive
@@ -9675,7 +9648,7 @@
   case 710:
 
 /* Line 690 of lalr1.cc  */
-#line 6315 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4984 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.node) = new FTDiacriticsOption(
                 LOC((yyloc)), ft_diacritics_mode::insensitive
@@ -9686,7 +9659,7 @@
   case 711:
 
 /* Line 690 of lalr1.cc  */
-#line 6325 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 4992 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.node) = new FTExtensionOption(
                 LOC((yyloc)), static_cast<QName*>((yysemantic_stack_[(3) - (2)].expr)), SYMTAB((yysemantic_stack_[(3) - (3)].sval))
@@ -9697,7 +9670,7 @@
   case 712:
 
 /* Line 690 of lalr1.cc  */
-#line 6335 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5000 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.node) = new FTStemOption( LOC((yyloc)), ft_stem_mode::stemming );
         }
@@ -9706,7 +9679,7 @@
   case 713:
 
 /* Line 690 of lalr1.cc  */
-#line 6339 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5004 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.node) = new FTStemOption( LOC((yyloc)), ft_stem_mode::no_stemming );
         }
@@ -9715,7 +9688,7 @@
   case 714:
 
 /* Line 690 of lalr1.cc  */
-#line 6347 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5010 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             FTThesaurusOption::thesaurus_id_list_t *til = NULL;
             if ( (yysemantic_stack_[(2) - (2)].node) ) {
@@ -9730,7 +9703,7 @@
   case 715:
 
 /* Line 690 of lalr1.cc  */
-#line 6357 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5020 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             FTThesaurusOption::thesaurus_id_list_t *til = (yysemantic_stack_[(5) - (4)].thesaurus_id_list);
             if ( (yysemantic_stack_[(5) - (3)].node) ) {
@@ -9746,7 +9719,7 @@
   case 716:
 
 /* Line 690 of lalr1.cc  */
-#line 6368 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5031 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.node) = new FTThesaurusOption( LOC((yyloc)), NULL, false, true );
         }
@@ -9755,7 +9728,7 @@
   case 717:
 
 /* Line 690 of lalr1.cc  */
-#line 6375 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5037 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
         }
@@ -9764,7 +9737,7 @@
   case 718:
 
 /* Line 690 of lalr1.cc  */
-#line 6379 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5041 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.node) = NULL;
         }
@@ -9773,7 +9746,7 @@
   case 719:
 
 /* Line 690 of lalr1.cc  */
-#line 6386 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5046 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.thesaurus_id_list) = NULL;
         }
@@ -9782,7 +9755,7 @@
   case 720:
 
 /* Line 690 of lalr1.cc  */
-#line 6390 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5050 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.thesaurus_id_list) = (yysemantic_stack_[(2) - (2)].thesaurus_id_list);
         }
@@ -9791,7 +9764,7 @@
   case 721:
 
 /* Line 690 of lalr1.cc  */
-#line 6397 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5056 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_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)) );
@@ -9801,7 +9774,7 @@
   case 722:
 
 /* Line 690 of lalr1.cc  */
-#line 6402 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5061 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_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);
@@ -9811,7 +9784,7 @@
   case 723:
 
 /* Line 690 of lalr1.cc  */
-#line 6411 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5068 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_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))
@@ -9822,7 +9795,7 @@
   case 724:
 
 /* Line 690 of lalr1.cc  */
-#line 6420 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5075 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.sval) = 0;
         }
@@ -9831,7 +9804,7 @@
   case 725:
 
 /* Line 690 of lalr1.cc  */
-#line 6424 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5079 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.sval) = (yysemantic_stack_[(2) - (2)].sval);
         }
@@ -9840,7 +9813,7 @@
   case 726:
 
 /* Line 690 of lalr1.cc  */
-#line 6431 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5085 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.node) = NULL;
         }
@@ -9849,7 +9822,7 @@
   case 727:
 
 /* Line 690 of lalr1.cc  */
-#line 6435 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5089 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.node) = (yysemantic_stack_[(2) - (1)].node);
         }
@@ -9858,7 +9831,7 @@
   case 728:
 
 /* Line 690 of lalr1.cc  */
-#line 6443 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5095 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.node) = new FTStopWordOption(
                 LOC((yyloc)),
@@ -9872,7 +9845,7 @@
   case 729:
 
 /* Line 690 of lalr1.cc  */
-#line 6452 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5104 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.node) = new FTStopWordOption(
                 LOC((yyloc)), NULL, (yysemantic_stack_[(4) - (4)].incl_excl_list), ft_stop_words_mode::with_default
@@ -9884,7 +9857,7 @@
   case 730:
 
 /* Line 690 of lalr1.cc  */
-#line 6459 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5111 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.node) = new FTStopWordOption(
                 LOC((yyloc)), NULL, NULL, ft_stop_words_mode::without
@@ -9895,7 +9868,7 @@
   case 731:
 
 /* Line 690 of lalr1.cc  */
-#line 6469 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5119 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.node) = new FTStopWords( LOC((yyloc)), SYMTAB((yysemantic_stack_[(2) - (2)].sval)), NULL );
         }
@@ -9904,7 +9877,7 @@
   case 732:
 
 /* Line 690 of lalr1.cc  */
-#line 6473 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5123 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.node) = new FTStopWords( LOC((yyloc)), "", (yysemantic_stack_[(3) - (2)].strlist) );
         }
@@ -9913,7 +9886,7 @@
   case 733:
 
 /* Line 690 of lalr1.cc  */
-#line 6480 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5129 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             string_list_t *sl = new string_list_t;
             sl->push_back( SYMTAB((yysemantic_stack_[(1) - (1)].sval)) );
@@ -9924,7 +9897,7 @@
   case 734:
 
 /* Line 690 of lalr1.cc  */
-#line 6486 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5135 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             if ( (yysemantic_stack_[(3) - (1)].strlist) )
                 (yysemantic_stack_[(3) - (1)].strlist)->push_back( SYMTAB((yysemantic_stack_[(3) - (3)].sval)) );
@@ -9935,7 +9908,7 @@
   case 735:
 
 /* Line 690 of lalr1.cc  */
-#line 6495 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5142 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.incl_excl_list) = NULL;
         }
@@ -9944,7 +9917,7 @@
   case 736:
 
 /* Line 690 of lalr1.cc  */
-#line 6499 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5146 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.incl_excl_list) = (yysemantic_stack_[(1) - (1)].incl_excl_list);
         }
@@ -9953,7 +9926,7 @@
   case 737:
 
 /* Line 690 of lalr1.cc  */
-#line 6506 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5152 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_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)) );
@@ -9963,7 +9936,7 @@
   case 738:
 
 /* Line 690 of lalr1.cc  */
-#line 6511 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5157 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             FTStopWordOption::incl_excl_list_t *iel = (yysemantic_stack_[(2) - (1)].incl_excl_list);
             if ( !iel )
@@ -9976,7 +9949,7 @@
   case 739:
 
 /* Line 690 of lalr1.cc  */
-#line 6523 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5167 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.node) = new FTStopWordsInclExcl(
                 LOC((yyloc)),
@@ -9989,7 +9962,7 @@
   case 740:
 
 /* Line 690 of lalr1.cc  */
-#line 6531 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5175 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.node) = new FTStopWordsInclExcl(
                 LOC((yyloc)),
@@ -10002,7 +9975,7 @@
   case 741:
 
 /* Line 690 of lalr1.cc  */
-#line 6543 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5185 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.node) = new FTLanguageOption( LOC((yyloc)), SYMTAB((yysemantic_stack_[(2) - (2)].sval)) );
         }
@@ -10011,7 +9984,7 @@
   case 742:
 
 /* Line 690 of lalr1.cc  */
-#line 6551 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5191 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.node) = new FTWildCardOption( LOC((yyloc)), ft_wild_card_mode::with );
         }
@@ -10020,7 +9993,7 @@
   case 743:
 
 /* Line 690 of lalr1.cc  */
-#line 6555 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5195 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.node) = new FTWildCardOption( LOC((yyloc)), ft_wild_card_mode::without );
         }
@@ -10029,7 +10002,7 @@
   case 744:
 
 /* Line 690 of lalr1.cc  */
-#line 6563 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5201 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.node) = new FTContent( LOC((yyloc)), ft_content_mode::at_start );
         }
@@ -10038,7 +10011,7 @@
   case 745:
 
 /* Line 690 of lalr1.cc  */
-#line 6567 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5205 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.node) = new FTContent( LOC((yyloc)), ft_content_mode::at_end );
         }
@@ -10047,7 +10020,7 @@
   case 746:
 
 /* Line 690 of lalr1.cc  */
-#line 6571 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5209 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.node) = new FTContent( LOC((yyloc)), ft_content_mode::entire );
         }
@@ -10056,7 +10029,7 @@
   case 747:
 
 /* Line 690 of lalr1.cc  */
-#line 6579 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5215 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.node) = new FTTimes( LOC((yyloc)), dynamic_cast<FTRange*>((yysemantic_stack_[(3) - (2)].node)) );
         }
@@ -10065,7 +10038,7 @@
   case 748:
 
 /* Line 690 of lalr1.cc  */
-#line 6587 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5221 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.node) = new FTRange( LOC((yyloc)), ft_range_mode::exactly, (yysemantic_stack_[(2) - (2)].expr) );
         }
@@ -10074,7 +10047,7 @@
   case 749:
 
 /* Line 690 of lalr1.cc  */
-#line 6591 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5225 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.node) = new FTRange( LOC((yyloc)), ft_range_mode::at_least, (yysemantic_stack_[(3) - (3)].expr) );
         }
@@ -10083,7 +10056,7 @@
   case 750:
 
 /* Line 690 of lalr1.cc  */
-#line 6595 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5229 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.node) = new FTRange( LOC((yyloc)), ft_range_mode::at_most, (yysemantic_stack_[(3) - (3)].expr) );
         }
@@ -10092,7 +10065,7 @@
   case 751:
 
 /* Line 690 of lalr1.cc  */
-#line 6599 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5233 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.node) = new FTRange( LOC((yyloc)), ft_range_mode::from_to, (yysemantic_stack_[(4) - (2)].expr), (yysemantic_stack_[(4) - (4)].expr) );
         }
@@ -10101,7 +10074,7 @@
   case 752:
 
 /* Line 690 of lalr1.cc  */
-#line 6607 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5239 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.node) = new FTScope(
                 LOC((yyloc)),
@@ -10114,7 +10087,7 @@
   case 753:
 
 /* Line 690 of lalr1.cc  */
-#line 6615 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5247 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.node) = new FTScope(
                 LOC((yyloc)),
@@ -10127,7 +10100,7 @@
   case 754:
 
 /* Line 690 of lalr1.cc  */
-#line 6627 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5257 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.node) = new FTBigUnit( LOC((yyloc)), ft_big_unit::sentence );
         }
@@ -10136,7 +10109,7 @@
   case 755:
 
 /* Line 690 of lalr1.cc  */
-#line 6631 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5261 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.node) = new FTBigUnit( LOC((yyloc)), ft_big_unit::paragraph );
         }
@@ -10145,7 +10118,7 @@
   case 756:
 
 /* Line 690 of lalr1.cc  */
-#line 6639 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5267 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
             (yyval.node) = new FTIgnoreOption( LOC((yyloc)), static_cast<UnionExpr*>((yysemantic_stack_[(3) - (3)].expr)) );
         }
@@ -10154,7 +10127,7 @@
   case 757:
 
 /* Line 690 of lalr1.cc  */
-#line 6653 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5273 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
           (yyval.expr) = new JSONArrayConstructor( LOC((yyloc)), NULL );
         }
@@ -10163,7 +10136,7 @@
   case 758:
 
 /* Line 690 of lalr1.cc  */
-#line 6657 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5277 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
           (yyval.expr) = new JSONArrayConstructor( LOC((yyloc)), (yysemantic_stack_[(3) - (2)].expr) );
         }
@@ -10172,9 +10145,8 @@
   case 759:
 
 /* Line 690 of lalr1.cc  */
-#line 6664 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5283 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
-          // TODO: fill in with the correct constructor
           (yyval.expr) = new JSONObjectConstructor(LOC((yyloc)), NULL, false);
         }
     break;
@@ -10182,9 +10154,8 @@
   case 760:
 
 /* Line 690 of lalr1.cc  */
-#line 6669 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5287 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
-          // TODO: fill in with the correct constructor
           (yyval.expr) = new JSONObjectConstructor(LOC((yyloc)), (yysemantic_stack_[(3) - (2)].expr), false);
         }
     break;
@@ -10192,9 +10163,8 @@
   case 761:
 
 /* Line 690 of lalr1.cc  */
-#line 6677 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5293 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
-          // TODO: fill in with the correct constructor
           (yyval.expr) = new JSONObjectConstructor(LOC((yyloc)), NULL, true);
         }
     break;
@@ -10202,9 +10172,8 @@
   case 762:
 
 /* Line 690 of lalr1.cc  */
-#line 6682 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5297 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
-          // TODO: fill in with the correct constructor
           (yyval.expr) = new JSONObjectConstructor(LOC((yyloc)), (yysemantic_stack_[(3) - (2)].expr), true);
         }
     break;
@@ -10212,7 +10181,7 @@
   case 763:
 
 /* Line 690 of lalr1.cc  */
-#line 6691 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5303 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
           (yyval.expr) = new JSONDirectObjectConstructor(LOC((yyloc)),
                                                dynamic_cast<JSONPairList*>((yysemantic_stack_[(3) - (2)].node)));
@@ -10222,7 +10191,7 @@
   case 764:
 
 /* Line 690 of lalr1.cc  */
-#line 6703 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5310 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
           StringLiteral* sl = new StringLiteral( LOC((yyloc)), SYMTAB((yysemantic_stack_[(3) - (1)].sval)) );
           JSONPairList* jpl = new JSONPairList(LOC((yyloc)));
@@ -10234,7 +10203,7 @@
   case 765:
 
 /* Line 690 of lalr1.cc  */
-#line 6710 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5318 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
           JSONPairList* jpl = new JSONPairList(LOC((yyloc)));
           jpl->push_back(new JSONPairConstructor(LOC((yyloc)), (yysemantic_stack_[(3) - (1)].expr), (yysemantic_stack_[(3) - (3)].expr)));
@@ -10245,7 +10214,7 @@
   case 766:
 
 /* Line 690 of lalr1.cc  */
-#line 6716 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5324 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
           JSONPairList* jpl = dynamic_cast<JSONPairList*>((yysemantic_stack_[(5) - (1)].node));
           assert(jpl);
@@ -10257,7 +10226,7 @@
   case 767:
 
 /* Line 690 of lalr1.cc  */
-#line 6723 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5331 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
           JSONPairList* jpl = dynamic_cast<JSONPairList*>((yysemantic_stack_[(5) - (1)].node));
           assert(jpl);
@@ -10270,7 +10239,7 @@
   case 768:
 
 /* Line 690 of lalr1.cc  */
-#line 6734 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5341 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
           (yyval.expr) = new JSONObjectInsertExpr(LOC((yyloc)),
                                         (yysemantic_stack_[(5) - (3)].expr),
@@ -10281,7 +10250,7 @@
   case 769:
 
 /* Line 690 of lalr1.cc  */
-#line 6740 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5347 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
           JSONPairList* jpl = dynamic_cast<JSONPairList*>((yysemantic_stack_[(5) - (3)].node));
           (yyval.expr) = new JSONObjectInsertExpr(
@@ -10296,7 +10265,7 @@
   case 770:
 
 /* Line 690 of lalr1.cc  */
-#line 6750 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5357 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
           (yyval.expr) = new JSONArrayInsertExpr(LOC((yyloc)), (yysemantic_stack_[(8) - (3)].expr), (yysemantic_stack_[(8) - (5)].expr), (yysemantic_stack_[(8) - (8)].expr));
         }
@@ -10305,7 +10274,7 @@
   case 771:
 
 /* Line 690 of lalr1.cc  */
-#line 6755 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5361 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
           (yyval.expr) = new JSONObjectInsertExpr(LOC((yyloc)),
                                         (yysemantic_stack_[(4) - (2)].expr),
@@ -10316,7 +10285,7 @@
   case 772:
 
 /* Line 690 of lalr1.cc  */
-#line 6761 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5367 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
           JSONPairList* jpl = dynamic_cast<JSONPairList*>((yysemantic_stack_[(4) - (2)].node));
           (yyval.expr) = new JSONObjectInsertExpr(
@@ -10331,7 +10300,7 @@
   case 773:
 
 /* Line 690 of lalr1.cc  */
-#line 6771 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5377 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
           (yyval.expr) = new JSONArrayInsertExpr(LOC((yyloc)), (yysemantic_stack_[(7) - (2)].expr), (yysemantic_stack_[(7) - (4)].expr), (yysemantic_stack_[(7) - (7)].expr));
         }
@@ -10340,7 +10309,7 @@
   case 774:
 
 /* Line 690 of lalr1.cc  */
-#line 6778 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5383 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
           (yyval.expr) = new JSONArrayAppendExpr(LOC((yyloc)), (yysemantic_stack_[(5) - (3)].expr), (yysemantic_stack_[(5) - (5)].expr));
         }
@@ -10349,7 +10318,7 @@
   case 775:
 
 /* Line 690 of lalr1.cc  */
-#line 6782 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5387 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
           (yyval.expr) = new JSONArrayAppendExpr(LOC((yyloc)), (yysemantic_stack_[(4) - (2)].expr), (yysemantic_stack_[(4) - (4)].expr));
         }
@@ -10358,23 +10327,20 @@
   case 776:
 
 /* Line 690 of lalr1.cc  */
-#line 6789 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5393 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
           rchandle<DynamicFunctionInvocation> lDynamicFunctionInvocation =
           dynamic_cast<DynamicFunctionInvocation*>((yysemantic_stack_[(3) - (3)].expr));
-
           if (lDynamicFunctionInvocation == NULL)
           {
             error((yylocation_stack_[(3) - (3)]), "An object invocation is expected. A filter was found instead.");
             YYERROR;
           }
-
           if (lDynamicFunctionInvocation->getArgList()->size() != 1)
           {
             error((yylocation_stack_[(3) - (3)]), "An object invocation with exactly one argument is expected. Zero or more than one argument were found.");
             YYERROR;
           }
-
           (yyval.expr) = new JSONDeleteExpr(
                 LOC((yyloc)),
                 lDynamicFunctionInvocation->getPrimaryExpr(),
@@ -10385,23 +10351,20 @@
   case 777:
 
 /* Line 690 of lalr1.cc  */
-#line 6811 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5412 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
           rchandle<DynamicFunctionInvocation> lDynamicFunctionInvocation =
           dynamic_cast<DynamicFunctionInvocation*>((yysemantic_stack_[(2) - (2)].expr));
-
           if (lDynamicFunctionInvocation == NULL)
           {
             error((yylocation_stack_[(2) - (2)]), "An object invocation is expected. A filter was found instead.");
             YYERROR;
           }
-
           if (lDynamicFunctionInvocation->getArgList()->size() != 1)
           {
             error((yylocation_stack_[(2) - (2)]), "An object invocation with exactly one argument is expected. Zero or more than one argument were found.");
             YYERROR;
           }
-
           (yyval.expr) = new JSONDeleteExpr(
                 LOC((yyloc)),
                 lDynamicFunctionInvocation->getPrimaryExpr(),
@@ -10412,25 +10375,22 @@
   case 778:
 
 /* Line 690 of lalr1.cc  */
-#line 6836 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5433 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
           rchandle<DynamicFunctionInvocation> lDynamicFunctionInvocation =
           dynamic_cast<DynamicFunctionInvocation*>((yysemantic_stack_[(5) - (3)].expr));
-
           if(lDynamicFunctionInvocation == NULL)
           {
             error((yylocation_stack_[(5) - (3)]), "An object invocation is expected. A filter was found instead.");
             delete (yysemantic_stack_[(5) - (5)].expr);
             YYERROR;
           }
-
           if (lDynamicFunctionInvocation->getArgList()->size() != 1)
           {
             error((yylocation_stack_[(5) - (3)]), "An object invocation with exactly one argument is expected. Zero or more than one argument were found.");
             delete (yysemantic_stack_[(5) - (5)].expr);
             YYERROR;
           }
-
           (yyval.expr) = new JSONRenameExpr(
                 LOC((yyloc)),
                 lDynamicFunctionInvocation->getPrimaryExpr(),
@@ -10442,25 +10402,22 @@
   case 779:
 
 /* Line 690 of lalr1.cc  */
-#line 6861 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5455 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
           rchandle<DynamicFunctionInvocation> lDynamicFunctionInvocation =
           dynamic_cast<DynamicFunctionInvocation*>((yysemantic_stack_[(4) - (2)].expr));
-
           if(lDynamicFunctionInvocation == NULL)
           {
             error((yylocation_stack_[(4) - (2)]), "An object invocation is expected. A filter was found instead.");
             delete (yysemantic_stack_[(4) - (4)].expr);
             YYERROR;
           }
-
           if (lDynamicFunctionInvocation->getArgList()->size() != 1)
           {
             error((yylocation_stack_[(4) - (2)]), "An object invocation with exactly one argument is expected. Zero or more than one argument were found.");
             delete (yysemantic_stack_[(4) - (4)].expr);
             YYERROR;
           }
-
           (yyval.expr) = new JSONRenameExpr(
                 LOC((yyloc)),
                 lDynamicFunctionInvocation->getPrimaryExpr(),
@@ -10472,25 +10429,22 @@
   case 780:
 
 /* Line 690 of lalr1.cc  */
-#line 6889 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5479 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
           rchandle<DynamicFunctionInvocation> lDynamicFunctionInvocation =
           dynamic_cast<DynamicFunctionInvocation*>((yysemantic_stack_[(7) - (5)].expr));
-
           if(lDynamicFunctionInvocation == NULL)
           {
             error((yylocation_stack_[(7) - (3)]), "An object invocation is expected. A filter was found instead.");
             delete (yysemantic_stack_[(7) - (7)].expr);
             YYERROR;
           }
-
           if (lDynamicFunctionInvocation->getArgList()->size() != 1)
           {
             error((yylocation_stack_[(7) - (3)]), "An object invocation with exactly one argument is expected. Zero or more than one argument were found.");
             delete (yysemantic_stack_[(7) - (7)].expr);
             YYERROR;
           }
-
           (yyval.expr) = new JSONReplaceExpr(
                 LOC((yyloc)),
                 lDynamicFunctionInvocation->getPrimaryExpr(),
@@ -10502,25 +10456,22 @@
   case 781:
 
 /* Line 690 of lalr1.cc  */
-#line 6914 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5501 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
           rchandle<DynamicFunctionInvocation> lDynamicFunctionInvocation =
           dynamic_cast<DynamicFunctionInvocation*>((yysemantic_stack_[(6) - (4)].expr));
-
           if(lDynamicFunctionInvocation == NULL)
           {
             error((yylocation_stack_[(6) - (2)]), "An object invocation is expected. A filter was found instead.");
             delete (yysemantic_stack_[(6) - (6)].expr);
             YYERROR;
           }
-
           if (lDynamicFunctionInvocation->getArgList()->size() != 1)
           {
             error((yylocation_stack_[(6) - (2)]), "An object invocation with exactly one argument is expected. Zero or more than one argument were found.");
             delete (yysemantic_stack_[(6) - (6)].expr);
             YYERROR;
           }
-
           (yyval.expr) = new JSONReplaceExpr(
                 LOC((yyloc)),
                 lDynamicFunctionInvocation->getPrimaryExpr(),
@@ -10532,7 +10483,7 @@
   case 782:
 
 /* Line 690 of lalr1.cc  */
-#line 6942 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5525 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
           (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
         }
@@ -10541,7 +10492,7 @@
   case 783:
 
 /* Line 690 of lalr1.cc  */
-#line 6946 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5529 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
           (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
         }
@@ -10550,7 +10501,7 @@
   case 784:
 
 /* Line 690 of lalr1.cc  */
-#line 6950 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5533 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
           (yyval.node) = (yysemantic_stack_[(1) - (1)].node);
         }
@@ -10559,7 +10510,7 @@
   case 785:
 
 /* Line 690 of lalr1.cc  */
-#line 6957 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5539 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
           (yyval.node) = new JSON_Test(LOC((yyloc)), store::StoreConsts::jsonItem);
         }
@@ -10568,7 +10519,7 @@
   case 786:
 
 /* Line 690 of lalr1.cc  */
-#line 6962 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5543 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
           (yyval.node) = new JSON_Test(LOC((yyloc)), store::StoreConsts::jsonItem);
         }
@@ -10577,7 +10528,7 @@
   case 787:
 
 /* Line 690 of lalr1.cc  */
-#line 6969 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5549 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
           (yyval.node) = new JSON_Test(LOC((yyloc)), store::StoreConsts::jsonObject);
         }
@@ -10586,7 +10537,7 @@
   case 788:
 
 /* Line 690 of lalr1.cc  */
-#line 6974 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5553 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
           (yyval.node) = new JSON_Test(LOC((yyloc)), store::StoreConsts::jsonObject);
         }
@@ -10595,7 +10546,7 @@
   case 789:
 
 /* Line 690 of lalr1.cc  */
-#line 6981 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5559 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
           (yyval.node) = new JSON_Test(LOC((yyloc)), store::StoreConsts::jsonArray);
         }
@@ -10604,7 +10555,7 @@
   case 790:
 
 /* Line 690 of lalr1.cc  */
-#line 6986 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5563 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
           (yyval.node) = new JSON_Test(LOC((yyloc)), store::StoreConsts::jsonArray);
         }
@@ -10613,7 +10564,7 @@
   case 793:
 
 /* Line 690 of lalr1.cc  */
-#line 7003 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5573 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     {
           auto_ptr<QName> lQName( static_cast<QName*>((yysemantic_stack_[(1) - (1)].expr)) );
           zstring const &tmp = lQName->get_qname();
@@ -10628,1484 +10579,1484 @@
   case 795:
 
 /* Line 690 of lalr1.cc  */
-#line 7016 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5585 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("attribute"))); }
     break;
 
   case 796:
 
 /* Line 690 of lalr1.cc  */
-#line 7017 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5586 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("comment"))); }
     break;
 
   case 797:
 
 /* Line 690 of lalr1.cc  */
-#line 7018 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5587 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("document-node"))); }
     break;
 
   case 798:
 
 /* Line 690 of lalr1.cc  */
-#line 7019 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5588 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("namespace-node"))); }
     break;
 
   case 799:
 
 /* Line 690 of lalr1.cc  */
-#line 7020 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5589 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("element"))); }
     break;
 
   case 800:
 
 /* Line 690 of lalr1.cc  */
-#line 7022 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5590 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("if"))); }
     break;
 
   case 801:
 
 /* Line 690 of lalr1.cc  */
-#line 7023 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5591 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("node"))); }
     break;
 
   case 802:
 
 /* Line 690 of lalr1.cc  */
-#line 7024 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5592 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("processing-instruction"))); }
     break;
 
   case 803:
 
 /* Line 690 of lalr1.cc  */
-#line 7025 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5593 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("schema-attribute"))); }
     break;
 
   case 804:
 
 /* Line 690 of lalr1.cc  */
-#line 7026 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5594 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("schema-element"))); }
     break;
 
   case 805:
 
 /* Line 690 of lalr1.cc  */
-#line 7027 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5595 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("text"))); }
     break;
 
   case 806:
 
 /* Line 690 of lalr1.cc  */
-#line 7028 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5596 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("typeswitch"))); }
     break;
 
   case 807:
 
 /* Line 690 of lalr1.cc  */
-#line 7029 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5597 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("switch"))); }
     break;
 
   case 808:
 
 /* Line 690 of lalr1.cc  */
-#line 7030 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5598 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("empty-sequence"))); }
     break;
 
   case 809:
 
 /* Line 690 of lalr1.cc  */
-#line 7031 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5599 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("while"))); }
     break;
 
   case 811:
 
 /* Line 690 of lalr1.cc  */
-#line 7036 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5603 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB((yysemantic_stack_[(1) - (1)].sval))); }
     break;
 
   case 812:
 
 /* Line 690 of lalr1.cc  */
-#line 7037 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5604 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("xquery"))); }
     break;
 
   case 813:
 
 /* Line 690 of lalr1.cc  */
-#line 7038 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5605 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("empty"))); }
     break;
 
   case 814:
 
 /* Line 690 of lalr1.cc  */
-#line 7039 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5606 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("boundary-space"))); }
     break;
 
   case 815:
 
 /* Line 690 of lalr1.cc  */
-#line 7040 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5607 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("ft-option"))); }
     break;
 
   case 816:
 
 /* Line 690 of lalr1.cc  */
-#line 7041 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5608 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("base-uri"))); }
     break;
 
   case 817:
 
 /* Line 690 of lalr1.cc  */
-#line 7042 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5609 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("lax"))); }
     break;
 
   case 818:
 
 /* Line 690 of lalr1.cc  */
-#line 7043 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5610 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("strict"))); }
     break;
 
   case 819:
 
 /* Line 690 of lalr1.cc  */
-#line 7044 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5611 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("idiv"))); }
     break;
 
   case 820:
 
 /* Line 690 of lalr1.cc  */
-#line 7045 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5612 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("document"))); }
     break;
 
   case 821:
 
 /* Line 690 of lalr1.cc  */
-#line 7046 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5613 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("ftnot"))); }
     break;
 
   case 822:
 
 /* Line 690 of lalr1.cc  */
-#line 7047 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5614 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("not"))); }
     break;
 
   case 823:
 
 /* Line 690 of lalr1.cc  */
-#line 7048 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5615 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("sensitive"))); }
     break;
 
   case 824:
 
 /* Line 690 of lalr1.cc  */
-#line 7049 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5616 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("insensitive"))); }
     break;
 
   case 825:
 
 /* Line 690 of lalr1.cc  */
-#line 7050 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5617 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("diacritics"))); }
     break;
 
   case 826:
 
 /* Line 690 of lalr1.cc  */
-#line 7051 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5618 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("without"))); }
     break;
 
   case 827:
 
 /* Line 690 of lalr1.cc  */
-#line 7052 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5619 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("stemming"))); }
     break;
 
   case 828:
 
 /* Line 690 of lalr1.cc  */
-#line 7053 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5620 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("thesaurus"))); }
     break;
 
   case 829:
 
 /* Line 690 of lalr1.cc  */
-#line 7054 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5621 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("stop"))); }
     break;
 
   case 830:
 
 /* Line 690 of lalr1.cc  */
-#line 7055 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5622 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("wildcards"))); }
     break;
 
   case 831:
 
 /* Line 690 of lalr1.cc  */
-#line 7056 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5623 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("entire"))); }
     break;
 
   case 832:
 
 /* Line 690 of lalr1.cc  */
-#line 7057 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5624 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("content"))); }
     break;
 
   case 833:
 
 /* Line 690 of lalr1.cc  */
-#line 7058 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5625 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("word"))); }
     break;
 
   case 834:
 
 /* Line 690 of lalr1.cc  */
-#line 7059 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5626 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("start"))); }
     break;
 
   case 835:
 
 /* Line 690 of lalr1.cc  */
-#line 7060 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5627 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("end"))); }
     break;
 
   case 836:
 
 /* Line 690 of lalr1.cc  */
-#line 7061 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5628 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("most"))); }
     break;
 
   case 837:
 
 /* Line 690 of lalr1.cc  */
-#line 7062 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5629 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("skip"))); }
     break;
 
   case 838:
 
 /* Line 690 of lalr1.cc  */
-#line 7063 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5630 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("copy"))); }
     break;
 
   case 839:
 
 /* Line 690 of lalr1.cc  */
-#line 7064 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5631 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("general"))); }
     break;
 
   case 840:
 
 /* Line 690 of lalr1.cc  */
-#line 7065 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5632 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("value"))); }
     break;
 
   case 841:
 
 /* Line 690 of lalr1.cc  */
-#line 7066 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5633 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("eq"))); }
     break;
 
   case 842:
 
 /* Line 690 of lalr1.cc  */
-#line 7067 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5634 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("ne"))); }
     break;
 
   case 843:
 
 /* Line 690 of lalr1.cc  */
-#line 7068 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5635 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("lt"))); }
     break;
 
   case 844:
 
 /* Line 690 of lalr1.cc  */
-#line 7069 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5636 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("le"))); }
     break;
 
   case 845:
 
 /* Line 690 of lalr1.cc  */
-#line 7070 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5637 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("gt"))); }
     break;
 
   case 846:
 
 /* Line 690 of lalr1.cc  */
-#line 7071 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5638 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("ge"))); }
     break;
 
   case 847:
 
 /* Line 690 of lalr1.cc  */
-#line 7072 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5639 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("at"))); }
     break;
 
   case 848:
 
 /* Line 690 of lalr1.cc  */
-#line 7073 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5640 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("context"))); }
     break;
 
   case 849:
 
 /* Line 690 of lalr1.cc  */
-#line 7074 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5641 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("variable"))); }
     break;
 
   case 850:
 
 /* Line 690 of lalr1.cc  */
-#line 7075 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5642 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("return"))); }
     break;
 
   case 851:
 
 /* Line 690 of lalr1.cc  */
-#line 7076 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5643 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("for"))); }
     break;
 
   case 852:
 
 /* Line 690 of lalr1.cc  */
-#line 7077 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5644 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("allowing"))); }
     break;
 
   case 853:
 
 /* Line 690 of lalr1.cc  */
-#line 7078 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5645 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("sliding"))); }
     break;
 
   case 854:
 
 /* Line 690 of lalr1.cc  */
-#line 7079 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5646 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("tumbling"))); }
     break;
 
   case 855:
 
 /* Line 690 of lalr1.cc  */
-#line 7080 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5647 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("previous"))); }
     break;
 
   case 856:
 
 /* Line 690 of lalr1.cc  */
-#line 7081 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5648 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("next"))); }
     break;
 
   case 857:
 
 /* Line 690 of lalr1.cc  */
-#line 7082 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5649 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("only"))); }
     break;
 
   case 858:
 
 /* Line 690 of lalr1.cc  */
-#line 7083 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5650 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("when"))); }
     break;
 
   case 859:
 
 /* Line 690 of lalr1.cc  */
-#line 7084 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5651 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("count"))); }
     break;
 
   case 860:
 
 /* Line 690 of lalr1.cc  */
-#line 7085 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5652 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("in"))); }
     break;
 
   case 861:
 
 /* Line 690 of lalr1.cc  */
-#line 7086 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5653 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("let"))); }
     break;
 
   case 862:
 
 /* Line 690 of lalr1.cc  */
-#line 7087 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5654 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("where"))); }
     break;
 
   case 863:
 
 /* Line 690 of lalr1.cc  */
-#line 7088 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5655 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("by"))); }
     break;
 
   case 864:
 
 /* Line 690 of lalr1.cc  */
-#line 7089 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5656 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("group"))); }
     break;
 
   case 865:
 
 /* Line 690 of lalr1.cc  */
-#line 7090 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5657 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("order"))); }
     break;
 
   case 866:
 
 /* Line 690 of lalr1.cc  */
-#line 7091 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5658 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("stable"))); }
     break;
 
   case 867:
 
 /* Line 690 of lalr1.cc  */
-#line 7092 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5659 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("ascending"))); }
     break;
 
   case 868:
 
 /* Line 690 of lalr1.cc  */
-#line 7093 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5660 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("descending"))); }
     break;
 
   case 869:
 
 /* Line 690 of lalr1.cc  */
-#line 7094 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5661 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("greatest"))); }
     break;
 
   case 870:
 
 /* Line 690 of lalr1.cc  */
-#line 7095 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5662 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("least"))); }
     break;
 
   case 871:
 
 /* Line 690 of lalr1.cc  */
-#line 7096 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5663 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("collation"))); }
     break;
 
   case 872:
 
 /* Line 690 of lalr1.cc  */
-#line 7097 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5664 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("some"))); }
     break;
 
   case 873:
 
 /* Line 690 of lalr1.cc  */
-#line 7098 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5665 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("every"))); }
     break;
 
   case 874:
 
 /* Line 690 of lalr1.cc  */
-#line 7099 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5666 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("satisfies"))); }
     break;
 
   case 875:
 
 /* Line 690 of lalr1.cc  */
-#line 7100 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5667 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("case"))); }
     break;
 
   case 876:
 
 /* Line 690 of lalr1.cc  */
-#line 7101 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5668 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("as"))); }
     break;
 
   case 877:
 
 /* Line 690 of lalr1.cc  */
-#line 7102 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5669 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("then"))); }
     break;
 
   case 878:
 
 /* Line 690 of lalr1.cc  */
-#line 7103 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5670 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("else"))); }
     break;
 
   case 879:
 
 /* Line 690 of lalr1.cc  */
-#line 7104 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5671 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("or"))); }
     break;
 
   case 880:
 
 /* Line 690 of lalr1.cc  */
-#line 7105 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5672 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("and"))); }
     break;
 
   case 881:
 
 /* Line 690 of lalr1.cc  */
-#line 7106 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5673 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("instance"))); }
     break;
 
   case 882:
 
 /* Line 690 of lalr1.cc  */
-#line 7107 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5674 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("of"))); }
     break;
 
   case 883:
 
 /* Line 690 of lalr1.cc  */
-#line 7108 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5675 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("castable"))); }
     break;
 
   case 884:
 
 /* Line 690 of lalr1.cc  */
-#line 7109 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5676 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("to"))); }
     break;
 
   case 885:
 
 /* Line 690 of lalr1.cc  */
-#line 7110 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5677 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("div"))); }
     break;
 
   case 886:
 
 /* Line 690 of lalr1.cc  */
-#line 7111 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5678 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("mod"))); }
     break;
 
   case 887:
 
 /* Line 690 of lalr1.cc  */
-#line 7112 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5679 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("union"))); }
     break;
 
   case 888:
 
 /* Line 690 of lalr1.cc  */
-#line 7113 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5680 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("intersect"))); }
     break;
 
   case 889:
 
 /* Line 690 of lalr1.cc  */
-#line 7114 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5681 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("except"))); }
     break;
 
   case 890:
 
 /* Line 690 of lalr1.cc  */
-#line 7115 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5682 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("validate"))); }
     break;
 
   case 891:
 
 /* Line 690 of lalr1.cc  */
-#line 7116 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5683 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("type"))); }
     break;
 
   case 892:
 
 /* Line 690 of lalr1.cc  */
-#line 7117 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5684 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("cast"))); }
     break;
 
   case 893:
 
 /* Line 690 of lalr1.cc  */
-#line 7118 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5685 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("treat"))); }
     break;
 
   case 894:
 
 /* Line 690 of lalr1.cc  */
-#line 7119 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5686 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("is"))); }
     break;
 
   case 895:
 
 /* Line 690 of lalr1.cc  */
-#line 7120 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5687 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("preserve"))); }
     break;
 
   case 896:
 
 /* Line 690 of lalr1.cc  */
-#line 7121 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5688 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("strip"))); }
     break;
 
   case 897:
 
 /* Line 690 of lalr1.cc  */
-#line 7122 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5689 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("namespace"))); }
     break;
 
   case 898:
 
 /* Line 690 of lalr1.cc  */
-#line 7123 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5690 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("external"))); }
     break;
 
   case 899:
 
 /* Line 690 of lalr1.cc  */
-#line 7124 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5691 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("encoding"))); }
     break;
 
   case 900:
 
 /* Line 690 of lalr1.cc  */
-#line 7125 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5692 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("no-preserve"))); }
     break;
 
   case 901:
 
 /* Line 690 of lalr1.cc  */
-#line 7126 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5693 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("inherit"))); }
     break;
 
   case 902:
 
 /* Line 690 of lalr1.cc  */
-#line 7127 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5694 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("no-inherit"))); }
     break;
 
   case 903:
 
 /* Line 690 of lalr1.cc  */
-#line 7128 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5695 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("declare"))); }
     break;
 
   case 904:
 
 /* Line 690 of lalr1.cc  */
-#line 7129 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5696 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("construction"))); }
     break;
 
   case 905:
 
 /* Line 690 of lalr1.cc  */
-#line 7130 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5697 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("ordering"))); }
     break;
 
   case 906:
 
 /* Line 690 of lalr1.cc  */
-#line 7131 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5698 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("default"))); }
     break;
 
   case 907:
 
 /* Line 690 of lalr1.cc  */
-#line 7132 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5699 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("copy-namespaces"))); }
     break;
 
   case 908:
 
 /* Line 690 of lalr1.cc  */
-#line 7133 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5700 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("option"))); }
     break;
 
   case 909:
 
 /* Line 690 of lalr1.cc  */
-#line 7134 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5701 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("version"))); }
     break;
 
   case 910:
 
 /* Line 690 of lalr1.cc  */
-#line 7135 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5702 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("import"))); }
     break;
 
   case 911:
 
 /* Line 690 of lalr1.cc  */
-#line 7136 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5703 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("schema"))); }
     break;
 
   case 912:
 
 /* Line 690 of lalr1.cc  */
-#line 7137 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5704 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("module"))); }
     break;
 
   case 913:
 
 /* Line 690 of lalr1.cc  */
-#line 7138 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5705 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("function"))); }
     break;
 
   case 914:
 
 /* Line 690 of lalr1.cc  */
-#line 7139 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5706 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("score"))); }
     break;
 
   case 915:
 
 /* Line 690 of lalr1.cc  */
-#line 7140 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5707 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("contains"))); }
     break;
 
   case 916:
 
 /* Line 690 of lalr1.cc  */
-#line 7141 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5708 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("weight"))); }
     break;
 
   case 917:
 
 /* Line 690 of lalr1.cc  */
-#line 7142 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5709 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("window"))); }
     break;
 
   case 918:
 
 /* Line 690 of lalr1.cc  */
-#line 7143 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5710 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("distance"))); }
     break;
 
   case 919:
 
 /* Line 690 of lalr1.cc  */
-#line 7144 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5711 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("occurs"))); }
     break;
 
   case 920:
 
 /* Line 690 of lalr1.cc  */
-#line 7145 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5712 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("times"))); }
     break;
 
   case 921:
 
 /* Line 690 of lalr1.cc  */
-#line 7146 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5713 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("same"))); }
     break;
 
   case 922:
 
 /* Line 690 of lalr1.cc  */
-#line 7147 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5714 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("different"))); }
     break;
 
   case 923:
 
 /* Line 690 of lalr1.cc  */
-#line 7148 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5715 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("lowercase"))); }
     break;
 
   case 924:
 
 /* Line 690 of lalr1.cc  */
-#line 7149 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5716 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("uppercase"))); }
     break;
 
   case 925:
 
 /* Line 690 of lalr1.cc  */
-#line 7150 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5717 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("relationship"))); }
     break;
 
   case 926:
 
 /* Line 690 of lalr1.cc  */
-#line 7151 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5718 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("levels"))); }
     break;
 
   case 927:
 
 /* Line 690 of lalr1.cc  */
-#line 7152 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5719 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("language"))); }
     break;
 
   case 928:
 
 /* Line 690 of lalr1.cc  */
-#line 7153 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5720 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("any"))); }
     break;
 
   case 929:
 
 /* Line 690 of lalr1.cc  */
-#line 7154 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5721 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("all"))); }
     break;
 
   case 930:
 
 /* Line 690 of lalr1.cc  */
-#line 7155 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5722 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("exactly"))); }
     break;
 
   case 931:
 
 /* Line 690 of lalr1.cc  */
-#line 7156 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5723 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("from"))); }
     break;
 
   case 932:
 
 /* Line 690 of lalr1.cc  */
-#line 7157 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5724 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("words"))); }
     break;
 
   case 933:
 
 /* Line 690 of lalr1.cc  */
-#line 7158 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5725 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("sentences"))); }
     break;
 
   case 934:
 
 /* Line 690 of lalr1.cc  */
-#line 7159 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5726 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("sentence"))); }
     break;
 
   case 935:
 
 /* Line 690 of lalr1.cc  */
-#line 7160 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5727 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("phrase"))); }
     break;
 
   case 936:
 
 /* Line 690 of lalr1.cc  */
-#line 7161 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5728 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("paragraph"))); }
     break;
 
   case 937:
 
 /* Line 690 of lalr1.cc  */
-#line 7162 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5729 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("paragraphs"))); }
     break;
 
   case 938:
 
 /* Line 690 of lalr1.cc  */
-#line 7164 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5730 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("modify"))); }
     break;
 
   case 939:
 
 /* Line 690 of lalr1.cc  */
-#line 7165 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5731 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("first"))); }
     break;
 
   case 940:
 
 /* Line 690 of lalr1.cc  */
-#line 7167 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5732 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("before"))); }
     break;
 
   case 941:
 
 /* Line 690 of lalr1.cc  */
-#line 7168 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5733 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("after"))); }
     break;
 
   case 942:
 
 /* Line 690 of lalr1.cc  */
-#line 7169 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5734 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("revalidation"))); }
     break;
 
   case 943:
 
 /* Line 690 of lalr1.cc  */
-#line 7170 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5735 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("with"))); }
     break;
 
   case 944:
 
 /* Line 690 of lalr1.cc  */
-#line 7171 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5736 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("nodes"))); }
     break;
 
   case 945:
 
 /* Line 690 of lalr1.cc  */
-#line 7173 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5737 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("last"))); }
     break;
 
   case 946:
 
 /* Line 690 of lalr1.cc  */
-#line 7175 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5738 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("into"))); }
     break;
 
   case 947:
 
 /* Line 690 of lalr1.cc  */
-#line 7176 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5739 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("simple"))); }
     break;
 
   case 948:
 
 /* Line 690 of lalr1.cc  */
-#line 7177 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5740 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("sequential"))); }
     break;
 
   case 949:
 
 /* Line 690 of lalr1.cc  */
-#line 7178 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5741 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("updating"))); }
     break;
 
   case 950:
 
 /* Line 690 of lalr1.cc  */
-#line 7179 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5742 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("ordered"))); }
     break;
 
   case 951:
 
 /* Line 690 of lalr1.cc  */
-#line 7180 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5743 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("unordered"))); }
     break;
 
   case 952:
 
 /* Line 690 of lalr1.cc  */
-#line 7181 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5744 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("returning"))); }
     break;
 
   case 953:
 
 /* Line 690 of lalr1.cc  */
-#line 7182 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5745 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("exit"))); }
     break;
 
   case 954:
 
 /* Line 690 of lalr1.cc  */
-#line 7183 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5746 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("loop"))); }
     break;
 
   case 955:
 
 /* Line 690 of lalr1.cc  */
-#line 7184 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5747 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("break"))); }
     break;
 
   case 956:
 
 /* Line 690 of lalr1.cc  */
-#line 7185 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5748 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("continue"))); }
     break;
 
   case 957:
 
 /* Line 690 of lalr1.cc  */
-#line 7186 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5749 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("try"))); }
     break;
 
   case 958:
 
 /* Line 690 of lalr1.cc  */
-#line 7187 "/home/markos/zorba/repo/hof-next/src/compiler/parser/jsoniq_parser.y"
+#line 5750 "/home/colea/xquery/new-jsoniq/build/src/compiler/parser/jsoniq_parser.y"
     { (yyval.expr) = new QName(LOC((yyloc)), SYMTAB(SYMTAB_PUT("catch"))); }
     break;
 
   case 959:

Follow ups