Dear Meredith,
for ... let ... where C return ... == for ... let ... where C and ( true ) return ...
you may be surprised to hear that "true" is no boolean value, but a valid path expression, yielding all element child nodes with the name "true". Using the function "true()" will give you the expected results.
Hope this helps, Christian