<xsl:key> 元素
<xsl:key> 項目可宣告具名索引鍵 — 亦即,指定給 XML 文件中之指定項目的名稱/值組。 您可以在 XPath 運算式中搭配使用此索引鍵與 key() 函式,以便能更有效率地存取複雜 XML 文件中的指定項目。
<xsl:key
name = QName
match = Pattern
use = Expression
</xsl:key>
屬性
name
指定索引鍵的 限定名稱 (XSLT)。match
指定 圖樣 (XSLT),以識別此索引鍵存放所在的節點。use
指定要當作索引鍵值使用的 Expressions (XSLT)。 索引鍵值可以是下列其中一個:屬性、子元素,或相符元素的內容。
項目資訊
發生次數 |
無限制 |
父項目 |
|
項目子系 |
(沒有項目子系) |
備註
您可以使用索引鍵做為通用 ID,來參考 XML 文件中的項目。 若要執行此動作,則必須先使用 <xsl:key> 宣告節點的索引鍵。 接著,呼叫 key() 函式擷取節點,以提供索引鍵的名稱與值,而做為函式引數。 如需詳細資訊,請參閱下列範例。
一個節點上可宣告多個索引鍵。 如此您即有多種方式可查詢節點。
在使用較大的 XML 文件時,索引鍵通常是一個可讓您快速查詢項目的方式。 這是因為它實際上會事先對您需要的節點編輯位置的索引。 但在編譯 <xsl:key> 項目時,XSLT 處理器將不會建立這些索引,除非針對索引鍵呼叫 key() 函式。 如此可確保密集的索引作業只會在必要時執行。
在樣式表中,<xsl:key> 項目為最上層項目,不可顯示在範本中。 若要避免循環參考,請不要使用參數或變數參考做為 <xsl:key> 比對的一部分。
範例
下列主題提供 <xsl:key> 項目的範例。