Isso não parece ser possível, então eu escrevi um XSLT para fazer isso.
<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
version="2.0">
<xsl:template match="/">
<root>
<xsl:for-each select="/root/entry/subentry[special_id = /root/entry/subentry/special_id]">
<xsl:copy-of select="."/>
</xsl:for-each>
</root>
</xsl:template>
</xsl:stylesheet>