Error: Interrupted. Compiling: - inlining Q{product_library}getCategory#1 - inlining $products_3 - simplifying flwor expression - inlining $products_2 - simplifying flwor expression Query: import module 'product_library' at 'file:///C:/Users/ankumar/Desktop/product_library.xq'; declare namespace lib ="product_library"; declare namespace p="a:b:c"; let $products := /products/*[@catid] return count(lib:getCategory($products)) Optimized Query: count(let $catRefs_4 := distinct-values(db:open-pre("large_products",0)/products/*[@catid]/@catid) return ((db:open-pre("large_products",2), ...))[(@id = $catRefs_4)]) Query plan: