У меня есть следующий XML:XSLT: выбрать различные, но немного отличается от других примеров
<a>
<b>
<d>D1 content (can include child nodes)</d>
</b>
<b>
<c>C1 content (can include child nodes)</c>
</b>
<b>
<e>E1 content (can include child nodes)</e>
</b>
<b>
<c>C2 content (can include child nodes)</c>
</b>
</a>
Использование XSLT 1.0, мне нужно производить из этого просто: «CDE»; то есть отдельный список имен непосредственных дочерних элементов/a/b /, упорядоченных по имени узла. Каждый b имеет ровно один ребенок произвольного имени.
я могу произвести «CCDE»:
<xsl:for-each select="https://stackoverflow.com/a/b/*">
<xsl:sort select="name(.)"/>
<xsl:value-of select="name(.)" />
</xsl:for-each>
Я попытался с помощью обычного предшествующего-родственного :: сравнения, но так как каждый б только один ребенок, предшествующее брат не всегда ничего.
Спасибо - работает хорошо. – sellotape