Je suis en train d'apprendre xQuery provenant d'un fond de php, j'ai cette expression de travail comme prévuxQuery simple, sinon vide conditionnelle
<![CDATA[
declare variable $doc as node() external;
declare variable $id external;
let $cont := data($doc//div[@class="cont"])
let $title := data($doc//p[@class="vtitle"])
let $text := data($doc//div[@class="venue-cont-left"])
return
<venue id="{$id}">
<title>{$title}</title>
<text>{$text}</text>
</venue>
]]>
Mais maintenant, je veux simplement faire un chèque temps $ title est vide ou non
<![CDATA[
declare variable $doc as node() external;
declare variable $id external;
if(empty(data($doc//p[@class="vtitle"]))) then
(
let $id :=$id
return
<venue id="{$id}" />
) else (
let $cont := data($doc//div[@class="cont"])
let $title := data($doc//p[@class="vtitle"])
let $text := data($doc//div[@class="venue-cont-left"])
return
<venue id="{$id}">
<title>{$title}</title>
<text>{$text}</text>
</venue>
)
]]>
cela ne fonctionne pas parce que je reçois cette sortie résultant
<venue id="4">
<title/>
<text>
PHONE:
ADDRESS:....
Comme vous s ee lieu 4 n'a pas de titre donc il aurait dû être retourné comme <venue id="4" />
Merci pour toute aide!