Como saber usando XPath se um elemento está presente e não está vazio?

Eu tenho uma entrada XML algo nesta linha:

<Holding id="12">
    <Policy>
        <HoldingForm tc="1">Individual</HoldingForm>
        <PolNumber>848433</PolNumber>
        <LineOfBusiness tc="1">Life</LineOfBusiness>
        <CarrierCode>67644</CarrierCode>
    </Policy>
</Holding>

Minha manipulação neste XML depende se<PolNumber> (é um elemento opcional no esquema) tem um valor ou não. Estou usando o Mule 3.3xpath avaliador para fazer isso e minha expressão XPath parece isso:

<expression-filter expression="#[xpath('//acord:Holding/acord:Policy/acord:PolNumber').text != empty]"/> 

Isso funciona bem contanto que<PolNumber> elemento está presente ou<PolNumber/> é um elemento vazio. Mas se<PolNumber> está ausente, a expressão acima lança exceção.

Eu tentei usarXPath booleano função, mas retornatrue para<PolNumber/>. Existe uma maneira melhor de verificar se um elemento está presente e não está vazio?

EDITAR:

Esta é a configuração do gerenciador de namespace na minha configuração mula

<xm:namespace-manager includeConfigNamespaces="true">
    <xm:namespace prefix="acord" uri="http://ACORD.org/Standards/Life/2" />
    <xm:namespace prefix="soap" uri="http://schemas.xmlsoap.org/soap/encoding/" />
</xm:namespace-manager>

questionAnswers(5)

yourAnswerToTheQuestion