mathematical operators
+, -, *, div, idiv( integer division ), mod, -x( unary minus ), +x( unary plus )
Comparing operators
=, !=,
< or <
> or >
<= or <=
> or >
>= or >=
and
or
value comparison operator
this is stricter than comparing operators
eq
ne
lt
gt
boolean expressions
and
or
combining node sets
union( | )
intersect
except
if statement
if (... ) then ...
else if (...) then ...
else if (...) then ...
else then ...
for statement
for $x in E1 return E2
for example
sum(for $v in order-item return $v/price * $v/quantity)
sum(for $v in order-item return $v/price * $v/quantity)
returns the total value of (price times quantity) for all the selected order-item elements.
some and every expression
some $x in E1 satisfies E2
every $x in E1 satisfies E2