示例:对于这样的 xml,
<persons>
<person name="Tarzan" id="050676"/>
<person name="Donald" id="070754"/>
<person name="Dolly" id="231256"/>
</persons>
我会写
<xsl:key name="person-by-id" match="person" use="@id"/>
定义键
如果我的 xml 结构是,
<persons>
<person>
<name>Tarzan</name>
<id>050676</id>
</person>
<person>
<name>Donald</name>
<id>070754</id>
</person>
<person>
<name>Dolly</name>
<id>231256</id>
</person>
</persons>
我将如何提供匹配和使用的值?
<xsl:key name="person-by-id" match="???" use="???"/>
use
值只是相对于match
中指示的节点的路径,因此在该 XML 的情况下,它将是:
<xsl:key name="person-by-id" match="person" use="id"/>
<xsl:key name="person-by-id" match="/persons/person" use="id"/>
或
<xsl:key name="person-by-id" match="person" use="id"/>
匹配将从顶部开始,并与您定义的单词匹配。