XML教程
XQuery教程
XSLT教程
XPath教程

XSLT <xsl: key>

XSLT <xsl: key>元素

XSLT element用于指定分配给XML文档中特定元素的命名名称/值对。该密钥与XPath表达式中的key()函数一起使用,以访问XML文档中分配的元素。
<xsl:key 
   name = QName 
   match = Pattern 
   use = Expression> 
</xsl:key>

参数说明

名称 说明
名称 它指定要使用的密钥的名称。
匹配 它指定模式必须与拥有此键的节点匹配。
使用 它指定XPath表达式来标识xml文档节点的值。

XSLT 元素示例

让我们以创建具有属性" id"的<employee>元素表为例以及遍历每个员工的子项<firstname>,<lastname>,<nickname>和<salary>。本示例将姓名作为员工的名字作为密钥之一,然后打印员工的详细信息。
Employee.xml
<?xml version = "1.0"?>
<?xml-stylesheet type = "text/xsl" href = "employee.xsl"?>
<class> 
   <employee id = "001">
      <firstname>Aryan</firstname> 
      <lastname>Gupta</lastname> 
      <nickname>Raju</nickname> 
      <salary>60000</salary>
   </employee> 
   <employee id = "024"> 
      <firstname>Sonam</firstname> 
      <lastname>Gupta</lastname> 
      <nickname>Vinni</nickname> 
      <salary>45000</salary>
   </employee> 
   <employee id = "056"> 
      <firstname>Peter</firstname> 
      <lastname>Symon</lastname> 
      <nickname>John</nickname> 
      <salary>20000</salary> 
   </employee> 
</class>
Employee.xsl
<xsl:stylesheet version = "1.0" 
   xmlns:xsl = "http://www.w3.org/1999/XSL/Transform"> 
   <xsl:key name = "firstname-search" match = "employee" use = "firstname"/>  
   <xsl:template match = "/">  
      <html>  
         <body>>  
            <h2> Employee</h2>  
            <table border = "1">  
               <tr bgcolor = "pink">  
                  <th> ID</th> 
                  <th>> First Name</th> 
                  <th> Last Name</th>  
                  <th> Nick Name</th>  
                  <th> Salary</th>  
               </tr>>  
     
               <xsl:for-each select = "key('firstname-search', 'Sonam')">  
    
                  <tr> 
                     <td> <xsl:value-of select = "@id"/> </td>  
                     <td> <xsl:value-of select = "firstname"/> </td>  
                     <td> <xsl:value-of select = "lastname"/> ></td>  
                     <td> <xsl:value-of select = "nickname"/> </td>  
                     <td> <xsl:value-of select = "salary"/> </td>  
                  </tr>  
     
               </xsl:for-each>  
            </table>  
        </body>  
      </html>  
   </xsl:template>   
</xsl:stylesheet>
输出:
XSLT Xsl关键元素1
昵称: 邮箱:
Copyright © 2022 立地货 All Rights Reserved.
备案号:京ICP备14037608号-4