В Python, используя первое «истинное» значение нескольких кандидатов, можно записать в виде:
result = a or b or c
... что исключает необходимость повторения или присвоения переменной при работе с результатом вызова функции:
result = get-candidate() or get-default()
Доступен ли в XQuery краткий, производительный, читаемый эквивалент?
Лучшее, что я могу придумать (не полагаясь на механизм оптимизации нескольких вызовов до get-candidate()
до одного, что может оказаться невозможным вообще, если он выполняет что-то вроде внешней HTTP или SQL-транзакции), это что-то похожее на следующее:
let $a := get-candidate()
return if($a) then $a else get-default()
... особенно, если это повторяется несколько раз, это не очень красиво.
Какой лучший краткий, читабельный подход?