Неполное выражение FLWOR: ожидание возврата

У меня возникли проблемы с командой if-then-else XQuery.

В настоящее время я использую BaseX для редактирования XQuery (если это имеет значение!)

if ($item/pf3:Current/pf3:Name) then (
    let $Name := "None"
) else (
    let $Name := data($item/pf3:Current/pf3:Name)
)

В этом фрагменте выдается сообщение об ошибке: [XPST0003] Неполное выражение FLWOR: ожидание возврата.

1 ответ

Решение

Есть небольшая проблема с вашим xquery. Вот исправленная версия -

let $Name :=
if ($item/pf3:Current/pf3:Name) 
then "None" 
else data($item/pf3:Current/pf3:Name)

Если после вышеприведенного оператора присваивания нет операторов возврата, вы можете добавить следующий оператор возврата после вышеуказанных операторов:

return $Name
Другие вопросы по тегам