<x:transform>
標籤對XML文件應用XSL轉換。
<x:transform>
標籤具有以下屬性 -
屬性 | 描述 | 必需 | 預設 |
---|---|---|---|
doc |
源XML文件的XSLT轉換 | 否 | 主體 |
docSystemId |
原始XML文件的URI | 否 | — |
xslt |
XSLT樣式表提供轉換指令 | 否 | — |
xsltSystemId |
原始XSLT文件的URI | 否 | — |
result |
結果物件接受轉換的結果 | 否 | 列印到頁面 |
var |
設定為轉換的XML文件的變數 | 否 | 列印到頁面 |
scope |
變數的範圍來揭示轉換的結果 | 否 | — |
假設有以下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>
以下範例將顯示如何使用<x:transform>
標籤,編寫一個JSP檔案:xml_transform.jsp 如下所示:
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
<%@ taglib prefix="x" uri="http://java.sun.com/jsp/jstl/xml"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>jstl xml:transform 標籤範例</title>
</head>
<body>
<div style="margin: auto; width: 90%">
<h3>圖書資訊:</h3>
<c:set var="xmltext">
<books>
<book>
<name>Three mistakes of my life</name>
<author>Newsu</author>
<price>20</price>
</book>
<book>
<name>Tomorrow land</name>
<author>Bird</author>
<price>190</price>
</book>
</books>
</c:set>
<c:import url = "http://localhost:8080/jstl/style.xsl" var = "xslt"/>
<x:transform xml = "${xmltext}" xslt = "${xslt}"/> </div>
</body>
</html>
執行上述專案程式碼,得到以下結果如下 -