2017-07-31 16 views
0

例のchindrenです:このような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="???"/> 

答えて

0

そのXMLの場合には、それがあろうようuse値は、単にmatchで示されるノードの相対パスである:

<xsl:key name="person-by-id" match="person" use="id"/> 
0
<xsl:key name="person-by-id" match="/persons/person" use="id"/> 

OR

<xsl:key name="person-by-id" match="person" use="id"/> 

一致が先頭から始まり、定義した単語と一致します。

関連する問題