[英]Using an element within a node-set variable
我有一個包含節點集的變量vHeaders
。
現在,我想創建一個for循環 ,這樣vHeaders
中的for-each元素將創建一個包含另一個節點集的變量:
<xsl:variable name = "vHeaders" select = "DATAPACKET/METADATA/FIELDS/*/@attrname"/>
<xsl:for-each select="$vHeaders">
<xsl:variable name="blah" select= "."/>
<xsl:variable name = "vName" select = "DATAPACKET/ROWDATA/*/$blah"/>
<xsl:value-of select = "vName[1]"/>
</xsl:for-each>
我是XML的新手,我不確定該怎么做。 任何幫助,將不勝感激!
要編寫XSLT代碼,您需要理解的概念之一是“上下文”的概念。 諸如a / b / c之類的路徑表達式選擇相對於某些上下文項的節點。 xsl:for-each
指令更改上下文項。 如果你想選擇時結合DATAPACKET vName
是一樣的約束力,當你選擇了DATAPACKET vHeaders
,那么最簡單的辦法是移動的聲明vName
外面xsl:for-each
,因為它不以任何方式依賴基於xsl:for-each
建立的新上下文。
(另一方面,如果@blah
屬性與$blah
變量有關,那么這里也存在其他問題。)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.