📄 xsl_transformation.asp
字号:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html lang="en-US" xml:lang="en-US" xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>XSLT Transformation</title>
<link rel="shortcut icon" href="../favicon.ico" type="image/x-icon" />
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" />
<meta name="Keywords" content="xml,tutorial,html,dhtml,css,xsl,xhtml,javascript,asp,ado,vbscript,dom,sql,colors,soap,php,authoring,programming,training,learning,beginner's guide,primer,lessons,school,howto,reference,examples,samples,source code,tags,demos,tips,links,FAQ,tag list,forms,frames,color table,w3c,cascading style sheets,active server pages,dynamic html,internet,database,development,Web building,Webmaster,html guide" />
<meta name="Description" content="Free HTML XHTML CSS JavaScript DHTML XML DOM XSL XSLT RSS AJAX ASP ADO PHP SQL tutorials, references, examples for web building." />
<meta http-equiv="pragma" content="no-cache" />
<meta http-equiv="cache-control" content="no-cache" />
<link rel="stylesheet" type="text/css" href="../stdtheme.css" />
<script type="text/javascript">
var gaJsHost = (("https:" == document.location.protocol) ? "../../https@ssl./default.htm" : "../../www./default.htm");
document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
</script>
<script type="text/javascript">
var pageTracker = _gat._getTracker("UA-3855518-1");
pageTracker._initData();
pageTracker._trackPageview();
</script>
</head>
<body>
<a name="top"></a>
<table cellpadding="0" cellspacing="0" width="100%" bgcolor="#808080">
<tr>
<td width="234" valign="top">
<a href="../default.htm"><img src="../images/w3default80.jpg" border="0" alt="W3Schools" /></a>
</td>
<th valign="middle" align="left" class="right">
<script type="text/javascript"><!--
google_ad_client = "pub-3440800076797949";
/*txtimg*/
google_ad_slot = "5330033957";
google_ad_width = 728;
google_ad_height = 90;
//-->
</script>
<script type="text/javascript" src="../../pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
<noscript>
<a href="../default.asp" target="_blank"><img src="../banners/w6.gif" border="0" alt="W3Schools" /></a>
</noscript>
<br /></th>
</tr>
</table>
<table style="margin-left:1px" width="800px" border="0" cellpadding="0" cellspacing="2">
<tr>
<td width="137" class="content" valign="top"><br />
<a class="left" href="../default.asp" target="_top">
<img src="../images/homeicon.gif" border="0" alt="home" /></a>
<a class="left" href="../default.asp" target="_top">
<b>HOME</b></a>
<br /><br />
<b>XSLT Basic</b><br />
<a class="left" target="_top" href="default.asp" >XSLT HOME</a><br />
<a class="left" target="_top" href="xsl_languages.asp" >XSL Languages</a><br />
<a class="left" target="_top" href="xsl_intro.asp" >XSLT Introduction</a><br />
<a class="left" target="_top" href="xsl_browsers.asp" >XSLT Browsers</a><br />
<a class="left" target="_top" href="xsl_transformation.asp" style='font-weight:bold;'>XSLT Transform</a><br />
<a class="left" target="_top" href="xsl_templates.asp" >XSLT <template></a><br />
<a class="left" target="_top" href="xsl_value_of.asp" >XSLT <value-of></a><br />
<a class="left" target="_top" href="xsl_for_each.asp" >XSLT <for-each></a><br />
<a class="left" target="_top" href="xsl_sort.asp" >XSLT <sort></a><br />
<a class="left" target="_top" href="xsl_if.asp" >XSLT <if></a><br />
<a class="left" target="_top" href="xsl_choose.asp" >XSLT <choose></a><br />
<a class="left" target="_top" href="xsl_apply_templates.asp" >XSLT Apply</a><br />
<br />
<b>XSLT Advanced</b><br />
<a class="left" target="_top" href="xsl_client.asp" >XSLT on the Client</a><br />
<a class="left" target="_top" href="xsl_server.asp" >XSLT on the Server</a><br />
<a class="left" target="_top" href="xsl_editxml.asp" >XSLT Edit XML</a><br />
<a class="left" target="_top" href="xsl_editors.asp" >XSLT Editors</a><br />
<a class="left" target="_top" href="xsl_summary.asp" >XSLT Summary</a><br />
<br />
<b>References</b><br />
<a class="left" target="_top" href="xsl_w3celementref.asp" >XSLT Elements</a><br />
<a class="left" target="_top" href="xsl_functions.asp" >XSLT Functions</a><br /><br />
<b>Selected Reading</b><br />
<a class="left" target="_top" href="../browsers/browsers_stats.asp">Web Statistics</a><br />
<a class="left" target="_top" href="../site/site_glossary.asp">Web Glossary</a><br />
<a class="left" target="_top" href="../hosting/default.asp">Web Hosting</a><br />
<a class="left" target="_top" href="../quality/default.asp">Web Quality</a><br /><br />
<a class="left" target="_top" href="../forum/default.asp">W3Schools Forum</a><br /><br />
<a class="left" target="_top" href="../about/about_helping.asp">Helping W3Schools</a><br /><br />
<script type="text/javascript"><!--
google_ad_client = "pub-3440800076797949";
/*LeftLinkUnit*/
google_ad_slot = "4854527104";
google_ad_width = 120;
google_ad_height = 90;
//-->
</script>
<script type="text/javascript"
src="../../pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</td>
<td valign="top">
<table style="border: 1px solid gray" width="100%" bgcolor="#FFFFFF" border="0" cellpadding="5" cellspacing="0">
<tr>
<td>
<h1>XSLT - Transformation</h1>
<a href="xsl_browsers.asp"><img border="0" src="../images/btn_previous.gif" alt="prev" width="100" height="20" /></a>
<a href="xsl_templates.asp"><img border="0" src="../images/btn_next.gif" alt="next" width="100" height="20" /></a>
<hr />
<p class="intro">Example study: How to transform XML into XHTML using XSLT.</p>
<p class="intro">The details of this example will be explained in the next
chapter. </p>
<hr />
<h2>Correct Style Sheet Declaration</h2>
<p>The root element that declares the document to be an XSL style sheet is <xsl:stylesheet>
or <xsl:transform>.</p>
<p><b>Note:</b> <xsl:stylesheet> and <xsl:transform> are completely synonymous
and either can be used!</p>
<p>The correct way to declare an XSL style sheet according to the W3C XSLT Recommendation
is:</p>
<table width="100%" border="1" class="ex" cellspacing="0" cellpadding="2">
<tr>
<td><pre><xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"></pre>
</td>
</tr>
</table>
<p>or:</p>
<table width="100%" border="1" class="ex" cellspacing="0" cellpadding="2">
<tr>
<td><pre><xsl:transform version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"></pre>
</td>
</tr>
</table>
<p>To get access to the XSLT elements, attributes and features we must declare
the XSLT namespace at the top of the document.</p>
<p>The xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
points to the official W3C XSLT namespace. If you use this
namespace, you must also include the attribute version="1.0".</p>
<hr />
<h2>Start with a Raw XML Document</h2>
<p>We want to <b>transform</b> the following XML document ("cdcatalog.xml") into
XHTML:</p>
<table width="100%" border="1" class="ex" cellspacing="0" cellpadding="2">
<tr>
<td>
<pre><?xml version="1.0" encoding="ISO-8859-1"?>
<catalog>
<cd>
<title>Empire Burlesque</title>
<artist>Bob Dylan</artist>
<country>USA</country>
<company>Columbia</company>
<price>10.90</price>
<year>1985</year>
</cd>
.
.
.
</catalog></pre>
</td>
</tr>
</table>
<p><b>Viewing XML Files in Firefox and Internet Explorer:</b> Open the XML file
(typically by clicking on a link) - The XML document will be displayed with
color-coded root and child elements. A plus (+) or minus sign (-) to the left of
the elements can be clicked to expand or collapse the element structure. To view
the raw XML source (without the + and - signs), select "View Page Source" or
"View Source" from the browser menu.</p>
<p><b>Viewing XML Files in Netscape 6:</b> Open the XML file, then right-click
in XML file and select "View Page Source". The XML document will then be
displayed with color-coded root and child elements.</p>
<p><b>Viewing XML Files in Opera 7:</b> Open the XML file, then right-click in
XML file and select "Frame" / "View Source". The XML document will be displayed
as plain text.</p>
<p><a target="_blank" href="cdcatalog.xml">View "cdcatalog.xml"</a></p>
<hr />
<h2>Create an XSL Style Sheet</h2>
<p>Then you create an XSL Style Sheet ("cdcatalog.xsl") with a transformation template: </p>
<table width="100%" border="1" class="ex" cellspacing="0" cellpadding="2">
<tr>
<td>
<pre><?xml version="1.0" encoding="ISO-8859-1"?></pre>
<pre><xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"></pre>
<pre><xsl:template match="/">
<html>
<body>
<h2>My CD Collection</h2>
<table border="1">
<tr bgcolor="#9acd32">
<th align="left">Title</th>
<th align="left">Artist</th>
</tr>
<xsl:for-each select="catalog/cd">
<tr>
<td><xsl:value-of select="title"/></td>
<td><xsl:value-of select="artist"/></td>
</tr>
</xsl:for-each>
</table>
</body>
</html>
</xsl:template></pre>
<pre></xsl:stylesheet></pre>
</td>
</tr>
</table>
<p><a target="_blank" href="cdcatalog.xsl">View "cdcatalog.xsl"</a></p>
<hr />
<h2>Link the XSL Style Sheet to the XML Document</h2>
<p>Add the XSL style sheet reference to your XML document ("cdcatalog.xml"):</p>
<table width="100%" border="1" class="ex" cellspacing="0" cellpadding="2">
<tr>
<td>
<pre><?xml version="1.0" encoding="ISO-8859-1"?>
<span class="insert"><?xml-stylesheet type="text/xsl" href="cdcatalog.xsl"?></span>
<catalog>
<cd>
<title>Empire Burlesque</title>
<artist>Bob Dylan</artist>
<country>USA</country>
<company>Columbia</company>
<price>10.90</price>
<year>1985</year>
</cd>
.
.
.
</catalog></pre>
</td>
</tr>
</table>
<p>If you have an XSLT compliant browser it will nicely <b>transform</b> your
XML into XHTML.</p>
<p> <a href="cdcatalog_with_xsl.xml" target="_blank">View the result</a></p>
<p>The details of the example above will be explained in the next chapters.</p>
<hr />
<a href="xsl_browsers.asp"><img border="0" src="../images/btn_previous.gif" alt="prev" width="100" height="20" /></a>
<a href="xsl_templates.asp"><img border="0" src="../images/btn_next.gif" alt="next" width="100" height="20" /></a>
<br />
<hr />
<!-- **** SPOTLIGHTS 1 **** -->
<iframe src="../banners/aspallframe.asp" height="110" width="485"
marginwidth="0" marginheight="0" frameborder="0" scrolling="no">
Your browser does not support inline frames or is currently configured not to display inline frames.
</iframe>
<hr />
<!-- **** SPOTLIGHTS 2 **** -->
<!-- **** SPOTLIGHTS 3 **** -->
<table cellpadding="0" cellspacing="0"><tr><td width="72"></td><td>
<script type="text/javascript"><!--
google_ad_client = "pub-3440800076797949";
/*txt*/
google_ad_slot = "1699448869";
google_ad_width = 336;
google_ad_height = 280;
//-->
</script>
<script type="text/javascript"
src="../../pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
</td></tr></table>
<hr />
<center>
<iframe style="background-color:#ffffff" src="../banners/aspallbannerframe.asp" height="60" width="468" marginwidth="0" marginheight="0" frameborder="0" scrolling="no">
Your browser does not support inline frames or is currently configured not to display inline frames.
</iframe>
</center>
<hr />
<table>
<tr>
<td><img src="../images/diploma.jpg" alt="diploma" /></td>
<td> </td>
<td valign="top">
<h2>Get Your Diploma!</h2>
<p>W3Schools' Online Certification Program is the perfect solution for busy
professionals who need to balance work, family, and career building.</p>
<p>The <a href="../cert/default.asp">HTML Certificate</a> is for developers who want to document their knowledge of HTML, XHTML, and CSS.</p>
<p>The <a href="../cert/default.asp">ASP Certificate</a> is for developers who want to document their knowledge of ASP, SQL, and ADO.</p>
</td>
</tr>
</table>
<br />
<hr />
<!-- **** END SPOTLIGHTS **** -->
</td></tr>
<tr><td>
<p>Jump to: <a href="#top" target="_top"><b>Top of Page</b></a>
or <a href="../default.asp" target="_top"><b>HOME</b></a> or
<a href='xsl_transformation.asp@output=print' target="_blank">
<img src="../images/print.gif" alt="Printer Friendly" border="0" />
<b>Printer friendly page</b></a></p>
<p>W3Schools provides material for training only. We do not warrant the correctness of its contents.
The risk from using it lies entirely with the user.
While using this site, you agree to have read and accepted our
<a href="../about/about_copyright.asp">terms of use</a> and
<a href="../about/about_privacy.asp">privacy policy</a>.
</p>
<p><a href="../about/about_copyright.asp">Copyright 1999-2008</a> by Refsnes Data. All Rights Reserved.</p>
<table border="0" width="100%" cellspacing="0" cellpadding="0"><tr>
<td width="60%" align="left">
<a href="../../validator.w3.org/check@uri=referer" target="_blank">
<img src="../images/vxhtml.gif" alt="Validate" width="88" height="31" border="0" /></a>
<a href="../../jigsaw.w3.org/css-validator/check@uri=referer" target="_blank">
<img src="../images/vcss.gif" alt="Validate" width="88" height="31" border="0" /></a>
<a href="../../www.w3.org/WAI/WCAG1A-Conformance" title="Explanation of Level A Conformance" target="_blank">
<img src="../images/wai.gif" alt="W3C-WAI level A conformance icon" width="88" height="31" border="0" /></a>
</td>
<td>
<a href="../xhtml/xhtml_howto.asp" target="_top">W3Schools was converted to XHTML in December 1999</a>
</td></tr>
</table>
</td></tr>
</table>
</td>
<td width="145" align="center" valign="top">
<iframe style="background-color:#f1f1f1" src="../banners/rightcolumn.asp@secid=xsl" height="1500" width="147"
marginwidth="0" marginheight="0" frameborder="0" scrolling="no">
</iframe>
</td>
</tr></table>
</body>
</html>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -