<a id="aId" deleted="false">
<b id="bIdOne" deleted="false">
<c>cValue</c>
<d id="dId" deleted="true">
<e>eValue</e>
</d>
<f id="fId" deleted="false">
<g>gValue</g>
</f>
</b>
<b id="bIdTwo" deleted="true">
<c>cValue</c>
<d id="dId" deleted="true">
<e>eValue</e>
</d>
<f id="fId" deleted="false">
<g>gValue</g>
</f>
</b>
<b id="bIdThree" deleted="false">
<c>cValue</c>
<d id="dId" deleted="true">
<e>eValue</e>
</d>
<f id="fId" deleted="true">
<g>gValue</g>
</f>
</b>
<Y><yValue</Y>
</a>
Expected Output :
retrieve list of b and its child where deleted attribute is false, Expected output is below
query should be something like : for $x in $data//descendant::[(@deleted=\"false\" or empty(@deleted))] return $x/b";
<b id="bIdOne" deleted="false">
<c>cValue</c>
<f id="fId" deleted="false">
<g>gValue</g>
</f>
</b>
<b id="bIdThree" deleted="false">
<c>cValue</c>
<Y><yValue</Y>
</b>