Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> Lập Trình

Cách áp dụng biến đổi XSL trên tài liệu XML?

Thẻ <x:transform> áp dụng biến đổi XSL trên một tài liệu XML.

Các thuộc tính

Thẻ <x:transform> có các thuộc tính sau:

Thuộc tính Mô tả Bắt buộc Mặc định
doc Tài liệu XML nguồn cho biến đổi XSLT Không Body
docSystemId URI của tài liệu XML gốc Không Không có
xslt Stylesheet XSLT cung cấp hướng dẫn biến đổi Có Không có
xsltSystemId URI của tài liệu XSLT gốc Không Không có
result Đối tượng kết quả chấp nhận kết quả biến đổi Không In ra trang
var Biến được đặt thành tài liệu XML đã biến đổi Không In ra trang
scope Phạm vi của biến hiển thị kết quả biến đổi Không Không có

Ví dụ

Xem xét stylesheet XSLT sau style.xsl:

<?xml version = "1.0"?>
<xsl:stylesheet xmlns:xsl = "https://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>

Bây giờ xem xét file JSP sau:

<%@ taglib prefix = "c" uri = "https://java.sun.com/jsp/jstl/core" %>
<%@ taglib prefix = "x" uri = "https://java.sun.com/jsp/jstl/xml" %>
<html>
   <head>
        <title>Thẻ JSTL x:transform</title>
   </head>
   <body>
        <h3>Thông tin sách:</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 = "https://localhost:8080/style.xsl" var = "xslt"/>
<x:transform xml = "${xmltext}" xslt = "${xslt}"/>
</body>
</html>

Bạn sẽ nhận được kết quả sau:

Thông tin sách

Padam History
ZARA
100
Great Mistry
NUHA
2000