XML大作业

共两题,均于实验上机完成

第一题:在xml文档中使用DTD

第二题:掌握使用xsl显示xml文件的基本方法

第一题:

一、实验目的

(1)通过本实验,使学生能够了解并掌握XML DTD的定义方法及其用途

(2)了解并掌握DTD元素申明的基本语法

(3)了解并掌握DTD属性申明的基本语法

(4)了解并掌握DTD实体申明的基本语法

(5)了解并掌握DTD标记申明的基本语法

(6)了解并掌握XMLSpy中基于DTD的XML文件输入

二、实验条件

配置有windows记事本、写字板或XMLSpy开发环境的计算机设备。

三、实验原理及相关知识

(1)XMLDTD是对XML结构进行定义的机制

(2)XMLDTD本身不符合XML语法

四、实验内容及实验步骤

分析下列XML实例,上机编写外部DTD文档,并进行验证。

1、xml实例如下:

<?xml version="1.0" encoding="UTF-8"?>
        <!DOCTYPE 学生名册 SYSTEM "C:\Users\Administrator\Desktop\实验代码\实验一\STUDENT.dtd">
        <学生名册>
            <学生 学号="A1">
                <姓名>张三</姓名>
                <性别>男</性别>
                <年龄>20</年龄>
             </学生>
            <学生 学号="A2">
                <姓名>李四</姓名>
                <性别>女</性别>
                <年龄>19</年龄>
            </学生>
            <学生 学号="A3">
                <姓名>王二</姓名>
                <性别>男</性别>
                <年龄>21</年龄>
            </学生>
        </学生名册>

2、XML外部DTD文档

<? xml version="1.0" encoding="UTF-8"?>
<!ELEMENT 学生名册(学生)+>
<!ELEMENT 学生(姓名,性别,年龄)>
<!ELEMENT 姓名 (#PCDATA)>
<!ELEMENT 性别 (#PCDATA)>
<!ELEMENT 年龄 (#PCDATA)>
<!ATTLIST 学生
学号 CDATA#REQUIRED
>

3、截图效果

4、使用XMLSPY 对“student.dtd”和“student.xml”进行合法性验证,结果正确。

五、实验总结

这个单元。学到了DTD为XMl提供了严格而精确的规划。通过简单的标记声明,能够定义XML文档的结构以及它所允许使用的内容。DTD提供了xml文档所包含的元素’属性,实体及相互关系的定义。DTD满足了网络共享和数据交互。

第二题:

一、实验目的

(1)掌握使用xsl显示xml文件的基本方法

(2)理解css与xsl的区别

二、实验条件

包配置有windows记事本、写字板或XMLSpy开发环境的计算机设备。

三、实验原理及相关知识

1) XSL实际包含三方面的内容:XSLT,XPath以及XSL格式化对象。

2) XSL的定义最终是有由XSLT来执行完成的。

3) XPath对xml文件片段进行查找、定位。

4) 格式化对象将XSL转换结果进行显示

四、实验内容及实验步骤

1、XML文档内容如下

<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="product.xsl" ?>
<PRODUCTDATA>
    <PRODUCT PRODID="p001" CATEGORT="Toy">
        <PRODUCTNAME>Mini Bus</PRODUCTNAME>
        <DESCRIPTION>
            this is a toy for childern aged 4 and above
        </DESCRIPTION>
        <PRICE>75</PRICE>
        <QUANTITY>54</QUANTITY>
    </PRODUCT>
    <PRODUCT PRODID="p002" CATEGORT="Toy">
        <PRODUCTNAME>Barbie Doll</PRODUCTNAME>
        <DESCRIPTION>
            this is a toy for childern in age group of 5-10
        </DESCRIPTION>
        <PRICE>20</PRICE>
        <QUANTITY>200</QUANTITY>
    </PRODUCT>
</PRODUCTDATA>

2、xsl样式表如下

<?xml version="1.0" encoding="UTF-8" ?>
        <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:fo="http://www.w3.org/1999/XSL/Format">
    <xsl:template match="/">
        <html>
            <head>
                <title>订单</title>
            </head>
            <body>
                <a>订单</a>
                <table border="3" cellpadding="2" cellspacing="5">
                    <thread align="center" color="white">
                        <tr>
                            <th>订单号</th>
                            <th>种类</th>
                            <th>名称</th>
                            <th>描述</th>
                            <th>价格</th>
                            <th>现有量</th>
                        </tr>
                    </thread>
                    <tbody>
                        <xsl:for-each select="PRODUCTDATA/PRODUCT">
                            <tr>
                                <td>
                                    <font color="green">
                                        <xsl:value-of select="@CATEGORY"/>
                                    </font>
                                </td>
                                <td>
                                    <font color="red">
                                        <xsl:value-of select="PRODUCTNAME"/>
                                    </font>
                                </td>
                                <td>
                                    <font color="green"><xsl:value-of select="DESCRIPTION"/>
                                    </font>
                                </td>
                                <td>
                                  <font color="green">
                                      <xsl:value-of select="PRICE"/>
                                  </font>  
                                </td>
                                <td>
                                    <font color="green">
                                        <xsl:value-of select="QUANTITY"/>
                                    </font>
                                </td>
                            </tr>
                        </xsl:for-each>
                    </tbody>
                    
                </table>
            </body>
        </html>
    </xsl:template>
</xsl:stylesheet>

对于下列xml文档,根据要求,上机编写并在xml文档上应用对应的xsl样式表。

五、实验总结

通过本实验,学习到了XSL样式表的基础知识和语法及格式,xsl和xml的关联方式。Xsl本身也符合xml的语法规定,它使用一种完全不同的方法解释xml文档,使得xml变成可显示的对象,可见xsl还是很重要的。

XML大作业的更多相关文章

  1. 数据库大作业--由python+flask

    这个是项目一来是数据库大作业,另一方面也算是再对falsk和python熟悉下,好久不用会忘很快. 界面相比上一个项目好看很多,不过因为时间紧加上只有我一个人写,所以有很多地方逻辑写的比较繁琐,如果是 ...

  2. 程设大作业xjb写——魔方复原

    鸽了那么久总算期中过[爆]去[炸]了...该是时候写写大作业了 [总不能丢给他们不会写的来做吧 一.三阶魔方的几个基本定义 ↑就像这样,可以定义面的称呼:上U下D左L右R前F后B UD之间的叫E,LR ...

  3. 大作业NABC分析结果

    大作业NABC分析结果 这次的大作业计划制作一款关于七巧板的游戏软件.关于编写的APP的NABC需求分析: N:需求 ,本款软件主要面向一些在校的大学生,他们在校空闲时间比较多,而且热衷于一些益智类游 ...

  4. [留念贴] C#开发技术期末大作业——星月之痕

    明天就要去上海大学参加 2015赛季 ACM/ICPC最后一场比赛 —— EC-Final,在这之前,顺利地把期末大作业赶出来了. 在这种期末大作业10个人里面有9个是从网上下载的国内计算机水平五六流 ...

  5. Hadoop综合大作业

    Hadoop综合大作业 要求: 用Hive对爬虫大作业产生的文本文件(或者英文词频统计下载的英文长篇小说)词频统计. 用Hive对爬虫大作业产生的csv文件进行数据分析 1. 用Hive对爬虫大作业产 ...

  6. 爬虫综合大作业——网易云音乐爬虫 & 数据可视化分析

    作业要求来自于https://edu.cnblogs.com/campus/gzcc/GZCC-16SE2/homework/3075 爬虫综合大作业 选择一个热点或者你感兴趣的主题. 选择爬取的对象 ...

  7. 期末Java Web大作业----简易的学生管理系统

    学生信息管理系统(大作业) 2018-12-21:此文章已在我的网站更新,添加视图介绍等信息,源码请移步下载https://www.jeson.xin/javaweb-sims.html PS:首先不 ...

  8. CSAPP HITICS 大作业 hello's P2P by zsz

    摘 要 摘要是论文内容的高度概括,应具有独立性和自含性,即不阅读论文的全文,就能获得必要的信息.摘要应包括本论文的目的.主要内容.方法.成果及其理论与实际意义.摘要中不宜使用公式.结构式.图表和非公知 ...

  9. #006 C语言大作业学生管理系统第三天

    还差最后两部分 读取文件 恢复删除的学生信息 先学会处理文件的 知识点,再继续跟着视频做这个作业. 应该明天周六能把视频里手把手教的学生管理系统敲完 第二周尽量自己能完成C语言课本最后面那道学生管理系 ...

随机推荐

  1. Python工具库(感谢backlion整理)

    漏洞及渗透练习平台: WebGoat漏洞练习平台: https://github.com/WebGoat/WebGoat webgoat-legacy漏洞练习平台: https://github.co ...

  2. CEPH安装(CentOS 7)

    以包含四个节点的集群为例,其中包括一个 ceph-deploy 管理节点和一个三节点的Ceph存储集群. 下图中每个节点代表一台机器. 安装 CEPH 部署工具 执行如下命令: sudo yum in ...

  3. P3188 [HNOI2007]梦幻岛宝珠

    传送门 注意到 $a,b$ 不大 考虑对每一个 $a*2^b$ 的 $b$ 分别背包 设 $f[i][j]$ 表示只考虑 $b=i$ 的物品时,容量为 $j= \sum a$ 的最大价值 这个就是普通 ...

  4. MS COCO 数据集学习笔记(Common Objects in COntext)

    一.数据来源 COCO中图片资源均引用自Flickr图片网站 二.数据集创建目的 进行图像识别训练,主要针对以下三个方向: (1)object instances (2)object keypoint ...

  5. C# ASP.NET 手写板并生成图片保存

    前端: @{ Layout = null; } <!DOCTYPE html> <html lang="zh-CN"> <head> <t ...

  6. 事件对象e的实现原理

    转自:https://segmentfault.com/q/1010000007337410?_ea=1313467 事件对象传递原理 1.前置知识回顾 在讲传递原理前,我们先看看普通函数是如何传递参 ...

  7. ORACLE之字符集修改(10g)

    当从oracle服务器将数据导出成dmp文件后,再导入到本地的oracle数据库时,出现: IMP-00019: 由于 ORACLE 错误 12899 而拒绝行 IMP-00003: 遇到 ORACL ...

  8. ORI-621龙芯3A处理器CPCI刀片计算机

    ORI-621龙芯3A处理器CPCI刀片计算机 一.产品简介 ORI -621是一款基于龙芯3A国产CPU处理器的特种CPCI刀片计算机.该产品成功地实现了服务器NUMA架构在国产特种计算机中的应用, ...

  9. Axios跨域实例

    //创建axios实例 var instance = axios.create({ baseURL : "http://localhost:8080", withCredentia ...

  10. 03SQL语句

    数据库是不认识JAVA语言的,但是我们同样要与数据库交互,这时需要使用到数据库认识的语言SQL语句,它是数据库的代码. 结构化查询语言(Structured Query Language)简称SQL, ...