XPath contém (text (), 'alguma string') não funciona quando usado com nó com mais de um subnó de texto

Eu tenho um pequeno problema com o Xpath contém com dom4j ...

Vamos dizer que meu XML é

<Home>
    <Addr>
        <Street>ABC</Street>
        <Number>5</Number>
        <Comment>BLAH BLAH BLAH <br/><br/>ABC</Comment>
    </Addr>
</Home>

Vamos dizer que eu quero encontrar todos os nós que têm ABC no texto, dado o elemento raiz ...

Portanto, o xpath que eu precisaria escrever seria

//*[contains(text(),'ABC')]

No entanto, não é isso que o Dom4j retorna .... esse é um problema do dom4j ou meu entendimento de como o xpath funciona. pois essa consulta retorna apenas o elemento Street e não o elemento Comment.

O DOM torna o elemento Comment um elemento composto com quatro tags dois

[Text = 'XYZ'][BR][BR][Text = 'ABC'] 

Eu diria que a consulta ainda deve retornar o elemento, pois ele deve encontrar o elemento e executar contém nele, mas não ... ...

a consulta a seguir retorna o elemento, mas retorna muito mais do que apenas o elemento, retorna os elementos pai também ... o que é indesejável para o problema ...

//*[contains(text(),'ABC')]

Alguém conhece a consulta xpath que retornaria apenas os elementos<Street/> e<Comment/> ?

questionAnswers(3)

yourAnswerToTheQuestion