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