Мне нужно сосчитать всех ProductOwner, которые имеют истинное значение. В моем случае у меня есть одно истинное значение, поэтому в качестве результата я получу число 1.
Вот мой XML-код:
<ClientList>
<Client>
<ProductOwner>true</ProductOwner>
</Client>
<Client>
<ProductOwner>false</ProductOwner>
</Client>
</ClientList>
Я хочу получить такой выходной XML-код:
<ClientList>
<Client>
<Number>1</Number>
</Client>
</ClientList>
Вот мой XSL-код, но он не работает должным образом:
<Number>
<xsl:variable name="Number" select="substring(ProductOwner, 1, 4)" />
<xsl:for-each select="ClientList/Client">
<xsl:choose>
<xsl:when test="(ClientList/Client/@ProductOwner)='true'">true</xsl:when>
<xsl:otherwise>false</xsl:otherwise>
</xsl:choose>
</xsl:for-each>
</Number>