如何在XML文档上应用XSL转换?

<X:变换>标记适用于一个XML文档XSL转换。

属性

<X:变换>标签具有以下属性-

属性描述需要默认
docXSLT转换的源XML文档没有身体
docSystemId原始XML文档的URI没有没有
xsltXSLT样式表提供转换说明没有
xsltSystemId原始XSLT文档的URI没有没有
结果结果对象接受转换的结果没有打印到页面
变种设置为转换后的XML文档的变量没有打印到页面
范围暴露转换结果的变量范围没有没有

示例

请看下面的XSLT样式表style.xsl -

<?xml version = "1.0"?>
<xsl:stylesheet xmlns:xsl = "http://www.w3.org/1999/XSL/Transform"
version = "1.0">
   <xsl:output method = "html" indent = "yes"/>
   <xsl:template match = "/">
      <html>
         <body>
            <xsl:apply-templates/>
         </body>
      </html>
   </xsl:template>
   <xsl:template match = "books">
      <table border = "1" width = "100%">
         <xsl:for-each select = "book">
            <tr>
               <td>
                  <i><xsl:value-of select = "name"/></i>
               </td>
               <td>
                  <xsl:value-of select = "author"/>
               </td>
               <td>
                  <xsl:value-of select = "price"/>
               </td>
            </tr>
         </xsl:for-each>
      </table>
   </xsl:template>
</xsl:stylesheet>

现在请看以下JSP文件-

<%@ taglib prefix = "c" uri = "http://java.sun.com/jsp/jstl/core" %>
<%@ taglib prefix = "x" uri = "http://java.sun.com/jsp/jstl/xml" %>
<html>
   <head>
      <title>JSTL x:transform Tags</title>
   </head>
   <body>
      <h3>Books Info:</h3>
       <c:set var = "xmltext">
          <books>
             <book>
                <name>Padam History</name>
                <author>ZARA</author>
                <price>100</price>
             </book>
             <book>
                <name>Great Mistry</name>
                <author>NUHA</author>
                <price>2000</price>
             </book>
          </books>
       </c:set>
       <c:import url = "http://localhost:8080/style.xsl" var = "xslt"/>
       <x:transform xml = "${xmltext}" xslt = "${xslt}"/>
   </body>
</html>

您将收到以下结果-

图书信息

Padam历史
ZARA
100

薄雾NUHA
2000