XML课后练习答案(七)——XSL文档编写小测验答案分享

题目

已知学生的简历的XML文档内容如下:

<?xml version="1.0" encoding="gb2312"?>

<学生>

<个人基本信息>

 <照片>miffy.jpg</照片>

<姓名>米菲</姓名>

 <性别>女</性别>

 <民族>兔佳族</民族>

 <出生地>大荷兰</出生地>

 <通讯地址>

  <条目>130012</条目>

  <条目>吉林省长春市前进大街2699号</条目>

  <条目>吉林大学计算机科学与技术学院</条目>

 </通讯地址>

 <电子邮件>[email protected]</电子邮件>

</个人基本信息>

 

<学历和工作简历>

 <条目>2003年毕业于吉林大学附属小学</条目>>

 <条目>2013年毕业于吉林大学计算机学院</条目>

 <条目>2012.07至2012.09在吉林大学就业指导中心实习</条目

 <条目>2006年毕业于吉林大学附属中学初中部</条目>

 <条目>2009年毕业于吉林大学附属中学高中部</条目>

</学历和工作简历>

 

<已修课程>

 <条目>数据结构</条目>

 <条目>数据库原理</条目>

 <条目>C语言程序设计</条目>

 <条目>Java语言程序设计</条目>

 <条目>Web应用开发基础</条目>

 <条目>XML语言</条目>

</已修课程>

 

<已获奖励>

 <条目>2012获中国大学生创新项目一等奖</条目>

 <条目>2013获中国大学生软件竞赛一等奖</条目>

</已获奖励>

 

<已发表论文>

 <条目>人机对话中关键技术的探索,2011年发表于《机器与人》创刊号第1页</条目>

 <条目>米菲家族祖先追踪,2012年发表于《物种起源》卷99999第8888页</条目>

</已发表论文>

</学生>

 

miffy.jpg:

XML课后练习答案(七)——XSL文档编写小测验答案分享

请给出将其转换成HTML的XSLT代码,并给出转换后在浏览器中的显示结果的截屏。

要求转换后在浏览器中的显示结果如下:

XML课后练习答案(七)——XSL文档编写小测验答案分享

1、答案:(这样是不能直接拿去运行的哦,下面会说明应该怎么运行XML结合XSL的代码)

<?xml version="1.0" encoding="utf-8"?>

<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">

    <xsl:template match="/">

        <html>

            <body>

                <h3 align = "center">米菲的简历</h3>

                <table border="1"  align = "center" cellpadding="10"><!--CCFFFF-->

                    <tr>

                        <td bgcolor="#ADD8E6" width = "70" align = "center">姓名</td>

                        <td bgcolor="#E0FFFF" width = "300"><xsl:value-of select="/学生/个人基本信息/姓名"/></td>

                        <td rowspan="6">

                            <img>

                            <xsl:attribute name="src"><xsl:value-of select="/学生/个人基本信息/照片" /></xsl:attribute>

                            </img>

                        </td>

                    </tr>

                    <tr>

                        <td bgcolor="#ADD8E6" align = "center">性别</td>

                        <td bgcolor="#E0FFFF"><xsl:value-of select="/学生/个人基本信息/性别"/></td>

                    </tr>

                    <tr>

                        <td bgcolor="#ADD8E6" align = "center">民族</td>

                        <td bgcolor="#E0FFFF"><xsl:value-of select="/学生/个人基本信息/民族"/></td>

                    </tr>

                    <tr>

                        <td bgcolor="#ADD8E6" align = "center">出生地</td>

                        <td bgcolor="#E0FFFF"><xsl:value-of select="/学生/个人基本信息/出生地"/></td>

                    </tr>

                    <tr>

                        <td bgcolor="#ADD8E6" align = "center">通讯地址</td>

                        <td bgcolor="#E0FFFF">

                            <xsl:for-each select="/学生/个人基本信息/通讯地址/条目">

                                <ul>

                                    <li><xsl:value-of select="."/></li>

                                </ul>

                            </xsl:for-each>

                        </td>

                    </tr>

                    <tr>

                        <td bgcolor="#ADD8E6" align = "center">电邮</td>

                        <td bgcolor="#E0FFFF"><xsl:value-of select="/学生/个人基本信息/电子邮件"/></td>

                    </tr>

                    <tr>

                        <td bgcolor="#ADD8E6" align = "center" colspan = "3">学历和工作简历</td>

                    </tr>

                    <tr>

                        <td bgcolor="#E0FFFF" colspan = "3">

                            <xsl:for-each select="/学生/学历和工作简历/条目">

                                <ul>

                                    <li><xsl:value-of select="."/></li>

                                </ul>

                            </xsl:for-each>

                        </td>

                    </tr>

                    <tr>

                        <td bgcolor="#ADD8E6" align = "center" colspan = "3">已修课程</td>

                    </tr>

                    <tr>

                        <td bgcolor="#E0FFFF" colspan = "3">

                            <xsl:for-each select="/学生/已修课程/条目">

                                <ul>

                                    <li><xsl:value-of select="."/></li>

                                </ul>

                            </xsl:for-each>

                        </td>

                    </tr>

                    <tr>

                        <td bgcolor="#ADD8E6" align = "center" colspan = "3">已获奖励</td>

                    </tr>

                    <tr>

                        <td bgcolor="#E0FFFF" colspan = "3">

                            <xsl:for-each select="/学生/已获奖励/条目">

                                <ul>

                                    <li><xsl:value-of select="."/></li>

                                </ul>

                            </xsl:for-each>

                        </td>

                    </tr>

                    <tr>

                        <td bgcolor="#ADD8E6" align = "center" colspan = "3">已发表论文</td>

                    </tr>

                    <tr>

                        <td bgcolor="#E0FFFF" colspan = "3">

                            <xsl:for-each select="/学生/已发表论文/条目">

                                <ul>

                                    <li><xsl:value-of select="."/></li>

                                </ul>

                            </xsl:for-each>

                        </td>

                    </tr>

                </table>

            </body>

        </html>

    </xsl:template>

</xsl:stylesheet>

2、运行说明:

总体布局是这样的:有一个XML文档描述了页面整体的元素和从属关系,也就是题目给出的XML文档,还有一个XSL文档对应描述了XML文档中的元素怎么布局,有点像HTML和CSS的关系,但是XML文档并不是直接用题目中的就可以,要加上说明语句,说明自己是关联了哪一个XSL文档,也就是加上下面第二个截图的第二行语句href说明自己要关联的XSL文档。

XML课后练习答案(七)——XSL文档编写小测验答案分享

XML课后练习答案(七)——XSL文档编写小测验答案分享

3、这一系列共有8次分享,分享结束以后我会上传最后两次比较复杂的题目的资源,这一题小伙伴用浏览器打开XML文档就可以直接运行看到效果了,有什么问题欢迎留言^^