<?xml version="1.0" encoding="UTF-8"?>
<XSL:STYLESHEET VERSION="1.0" XMLNS:XSL="HTTP://WWW.W3.ORG/1999/XSL/TRANSFORM">
<XSL:OUTPUT METHOD="HTML"/>
<XSL:TEMPLATE MATCH="/">
<HTML>
<HEAD>
<XSL:APPLY-TEMPLATES MODE="HEAD"/>
</HEAD>
<!-- YOU MAY WANT TO USE STYLES IN A CSS STYLE ELEMENT RATHER -->
<!-- THAN HARDCODING AS I DO HERE -->
<BODY STYLE="MARGIN-LEFT:100;MARGIN-RIGHT:100;MARGIN-TOP:50;MARGIN-BOTTOM:50">
<XSL:APPLY-TEMPLATES/>
<XSL:APPLY-TEMPLATES SELECT="CHAPTER/CHAPTERINFO/*" MODE="COPYRIGHT"/>
</BODY>
</HTML>
</XSL:TEMPLATE>
<!-- HEAD -->
<XSL:TEMPLATE MATCH="CHAPTER" MODE="HEAD">
<XSL:APPLY-TEMPLATES SELECT="CHAPTERINFO" MODE="HEAD" />
<XSL:APPLY-TEMPLATES SELECT="TITLE" MODE="HEAD" />
</XSL:TEMPLATE>
<XSL:TEMPLATE MATCH="CHAPTER/TITLE" MODE="HEAD">
<TITLE><XSL:VALUE-OF SELECT="."/></TITLE>
</XSL:TEMPLATE>
<XSL:TEMPLATE MATCH="AUTHOR" MODE="HEAD">
<META NAME="AUTHOR" CONTENT="{CONCAT(FIRSTNAME,' ', SURNAME)}"/>
</XSL:TEMPLATE>
<XSL:TEMPLATE MATCH="COPYRIGHT" MODE="HEAD">
<META NAME="COPYRIGHT" CONTENT="{CONCAT(HOLDER,' ',YEAR)}"/>
</XSL:TEMPLATE>
<XSL:TEMPLATE MATCH="TEXT( )" MODE="HEAD"/>
<!-- BODY -->
<XSL:TEMPLATE MATCH="CHAPTER">
<DIV ALIGN="RIGHT" STYLE="FONT-SIZE : 48PT; FONT-FAMILY: TIMES SERIF;
FONT-WEIGHT : BOLD; PADDING-BOTTOM:10; COLOR:BLACK" ><XSL:VALUE-OF
SELECT="@LABEL"/></DIV>
<XSL:APPLY-TEMPLATES/>
</XSL:TEMPLATE>
<XSL:TEMPLATE MATCH="CHAPTER/TITLE">
<DIV ALIGN="RIGHT" STYLE="FONT-SIZE : 24PT; FONT-FAMILY: TIMES SERIF; PADDING-
BOTTOM:150; COLOR:BLACK"><XSL:VALUE-OF SELECT="."/></DIV>
</XSL:TEMPLATE>
<XSL:TEMPLATE MATCH="EPIGRAPH/PARA">
<DIV ALIGN="RIGHT" STYLE="FONT-SIZE : 10PT; FONT-FAMILY: TIMES
SERIF; FONT-STYLE : ITALIC; PADDING-TOP:4; PADDING-BOTTOM:4">
<XSL:VALUE-OF SELECT="."/></DIV>
</XSL:TEMPLATE>
<XSL:TEMPLATE MATCH="EPIGRAPH/ATTRIBUTION">
<DIV ALIGN="RIGHT" STYLE="FONT-SIZE : 10PT; FONT-FAMILY: TIMES SERIF; PADDING-
TOP:4; PADDING-BOTTOM:4"><XSL:VALUE-OF SELECT="."/></DIV>
</XSL:TEMPLATE>
<XSL:TEMPLATE MATCH="SECT1">
<H1 STYLE="FONT-SIZE : 18PT; FONT-FAMILY: TIMES SERIF; FONT-WEIGHT : BOLD">
<XSL:VALUE-OF SELECT="TITLE"/>
</H1>
<XSL:APPLY-TEMPLATES/>
</XSL:TEMPLATE>
<XSL:TEMPLATE MATCH="SECT2">
<H2 STYLE="FONT-SIZE : 14PT; FONT-FAMILY: TIMES SERIF; FONT-WEIGHT : BOLD">
<XSL:VALUE-OF SELECT="TITLE"/>
</H2>
<XSL:APPLY-TEMPLATES/>
</XSL:TEMPLATE>
<XSL:TEMPLATE MATCH="PARA">
<P STYLE="FONT-SIZE : 12PT; FONT-FAMILY: TIMES SERIF">
<XSL:VALUE-OF SELECT="."/>
</P>
</XSL:TEMPLATE>
<XSL:TEMPLATE MATCH="TEXT( )"/>
<XSL:TEMPLATE MATCH="COPYRIGHT" MODE="COPYRIGHT">
<DIV STYLE="FONT-SIZE : 10PT; FONT-FAMILY: TIMES SERIF; PADDING-TOP : 100">
<XSL:TEXT>COPYRIGHT </XSL:TEXT>
<XSL:VALUE-OF SELECT="HOLDER"/>
<XSL:TEXT> </XSL:TEXT>
<XSL:VALUE-OF SELECT="YEAR"/>
<XSL:TEXT>. ALL RIGHTS RESERVED.</XSL:TEXT>
</DIV>
</XSL:TEMPLATE>
<XSL:TEMPLATE MATCH="*" MODE="COPYRIGHT"/>
</XSL:STYLESHEET>
<?xml version="1.0" encoding="UTF-8"?>
<?XML-STYLESHEET TYPE="TEXT/XSL" HREF="BOOK.XSL"?>
<CHAPTER LABEL="第一章">
<CHAPTERINFO>
<AUTHOR>
<SURNAME>BUPT3G</SURNAME>
<FIRSTNAME>BUPT3G</FIRSTNAME>
</AUTHOR>
<COPYRIGHT>
<YEAR>2006</YEAR>
<HOLDER>BUPT3G</HOLDER>
</COPYRIGHT>
</CHAPTERINFO>
<TITLE>XML TO HTML</TITLE>
<EPIGRAPH>
<PARA>示例</PARA>
<ATTRIBUTION>JONAHLIU</ATTRIBUTION>
</EPIGRAPH>
<SECT1>
<TITLE>使用XSLT作为样式语言</TITLE>
<SECT2>
<TITLE>示例</TITLE>
<PARA>使用XSLT格式化XML文档产生HTML.</PARA>
</SECT2>
</SECT1>
</CHAPTER>
本文介绍了一个使用XSLT将XML文档转换为HTML的实例。通过具体示例展示了如何定义XSLT样式表来控制XML文档的布局和外观,并实现版权信息的正确显示。

被折叠的 条评论
为什么被折叠?



