1
У меня есть документ xsl с некоторыми атрибутами, и мне нужно подсчитать количество уникальных атрибутов в этом документе по их имени.подсчет всех различных атрибутов с помощью xslt
, например, XML:
<Collection>
<item>
<Id attr1="value1">123</Id>
<property>u1</property>
</item>
<item>
<Id>1234</Id>
<property>u2</property>
</item>
<item attr1="value11">
<Id>12345</Id>
<property>u3</property>
</item>
<item attr2="value2">
<Id>123456</Id>
<property attr3="value3">u4</property>
</item>
</Collection>
Есть 4 атрибутов, но attr1 дублируются, поэтому ответы: 3. Я заинтересован, чтобы сделать это с помощью XSLT 1.0.
Теперь у меня есть что-то вроде этого, но не может сделать встречное
<xsl:stylesheet
version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:key name="node" match="@*" use="local-name()"/>
<xsl:template match="/">
<xsl:for-each select="//@*">
<xsl:variable name="name" select="local-name()"/>
<xsl:if test="generate-id(.) = generate-id(key('node', $name))">
<!-- increment counter? -->
</xsl:if>
</xsl:for-each>
</xsl:template>
</xsl:stylesheet>
благодаря
Спасибо, это действительно то, что я пытался сделать! – unr