2011-09-30 39 views
0

xmlをカスタムxml形式に変換する必要があります。xsl:後で使用するために複数の項目を変数またはパラメータに格納

私は多くの sectionsノードを持っているでしょうし、私が使用して一意のIDを作成していた各ノードのための新しいフォーマットでは

<xsl:attribute name="identifier"> 
       <xsl:variable name="uid" select="util:randomUUID()"/>A<xsl:value-of select="util:toString($uid)"/> 
</xsl:attribute> 

私はなるように、リストや配列にこれらのIDのすべてを格納するための方法が必要です私はそれを他のいくつかのテンプレートから参照してfor-eachループで使用することができます。

xslでこれを行う方法はありますか?任意のヘルプ

答えて

1

ため

おかげで、これらはグローバルを宣言している:

<xsl:variable name="vrtfRandList"> 
<xsl:for-each select="yourNodeSet"> 
    <rand><xsl:value-of select="util:randomUUID()"/></rand> 
</xsl:for-each> 
</xsl:variable> 

<xsl:variable name="vRandlist" select="ext:node-set($vrtfRandList)/*"/> 

その後を使用します。

XSLT 2.0使用
$vRandlist[$k] 

<xsl:variable name="vRandlist" as="xs:integer*" 
    select="for $i in 1 to count(yourNodeSet) 
       return 
       util:randomUUID() 
      "/> 
+0

ありがとう、試してみる – Ankur

+0

@AnkurMittal:XSLT 2.0ソリューションも追加しました。 –

+0

ありがとうございました。 – Ankur

関連する問題