XSLT: Как найти количество уникальных дочерних узлов?
Мой XML выглядит так:
<foo>
<bar name="a">
<baz name="xyz">
<time>2</time>
<date>3</date>
</baz>
</bar>
<bar name="b">
<baz name="xyz">
<time>2</time>
<date>3</date>
</baz>
</bar>
<bar name="c">
<baz name="xyz">
<time>2</time>
<date>3</date>
</baz>
</bar>
</foo>
Я пишу XSL, который должен функционировать так: если всеbaz
тогда дети такие жеdoSomething
ещеdoSomethingElse
, Мой текущий узелfoo
.
Я новичок в XSLT, и я знаю об условиях в XSL. Это выглядит примерно так:
<xsl:template match="foo">
<xsl:choose>
<xsl:when test="[My condition]">
doSomething()
</xsl:when>
<xsl:otherwise>
doSomethingElse()
</xsl:otherwise>
</xsl:choose>
</xsl:template>
В текущем примере это должноdoSomething()
как и всеbaz
элементы одинаковы.
Если я узнаю количество уникальныхbaz
элементы, я могу проверить, равен ли он одному. Если это так, то я будуdoSomething()
ещеdoSomethingElse()
Как мне это реализовать? Что должноMyCondition
быть?
PS: моя версия XSL 1.0