XML实验报告
XML同学录实验报告

二 实验要求
设计一个同学通讯录显示网页,以表格的形式进行显示,并能够
分页显示。当点击表格中某个同学的通讯信息时,能够单独显示该同
学的详细通讯信息。同学的通讯信息用 XML 文档存储。
也可以设计其它信息的显示网页,要求同上通讯录显示网页。
三 实验原理
XML 数据岛是指嵌入 HTML 文档中的扩展标记信息。XML 数据
信息科学与工程学部 XML 基础 实验报告
年级 学号
姓名
成绩
专业
实验地点
指导教师
实验项目 XML 数据岛与 HTML 的绑定 实验日期
一 实验目的
1.理解 XML 数据岛和数据源对象的概念;
2.掌握数据绑定的方法;
3.熟悉 HTML 文档中嵌入 XML 数据的方法;
4.掌握 HTML、脚本语言与 XML 结合的方法。
<QQ>53726486</QQ> </student > <student id="0036" sex="男" amount="100" remain="无" discount="8.3">
<name>王铭铭</name> <banji>软件 1 班</banji> <add>河大新区</add> <tel>15837264527</tel> <hometown>唐山</hometown>
<QQ>7346383</QQ> </student > </students> 2、HTML 文档中嵌入 XML 数据,XML 数据岛与 HTML 的绑定主要代码如下:
xml实验报告

xml实验报告XML实验报告一、引言XML(可扩展标记语言)是一种用于描述、存储和传输数据的标记语言。
它具有自我描述性、可扩展性和跨平台性的特点,被广泛应用于各种领域。
本实验旨在通过实际操作,深入了解XML的基本概念、语法和应用。
二、实验目的1. 掌握XML的基本语法和标记规则;2. 学会使用XML解析器解析和处理XML文档;3. 熟悉XML的应用场景,如数据存储、数据交换等。
三、实验环境与工具实验环境:Windows 10实验工具:文本编辑器、XML解析器四、实验过程1. 创建XML文档在文本编辑器中创建一个新的文件,并保存为"experiment.xml"。
XML文档的根元素应该使用尖括号括起来,并且以问号结尾。
在根元素内部,可以定义各种元素和属性。
2. 定义元素和属性在XML文档中,元素用于表示数据的结构和层次关系,属性则用于描述元素的特性和属性值。
通过在尖括号内添加元素名和属性名,可以定义元素和属性。
3. 编写文档内容在XML文档中,可以使用文本、标记和注释等方式来编写文档内容。
文本用于表示实际的数据值,标记用于表示数据的结构,注释则用于添加对文档的说明和解释。
4. 保存并验证XML文档在完成XML文档的编写后,保存文件并使用XML解析器进行验证。
XML解析器可以检查文档的语法和结构是否符合XML规范,以确保文档的正确性。
五、实验结果与分析通过以上实验步骤,我们成功创建了一个简单的XML文档,并使用XML解析器进行验证。
在实际应用中,XML可用于数据存储、数据交换和配置文件等多个场景。
例如,在Web开发中,XML可用于存储和传输网页内容、配置文件和用户数据等。
在移动应用开发中,XML可用于定义应用界面、数据传输和应用配置等。
此外,XML还广泛应用于企业数据交换、电子商务和科学研究等领域。
六、实验总结通过本次实验,我们深入了解了XML的基本概念、语法和应用。
XML作为一种通用的数据描述语言,具有自我描述性、可扩展性和跨平台性的特点,被广泛应用于各个领域。
用XML做通讯录实验报告

综合性实验报告学院:专业:学号:姓名:计算机与信息技术学院综合性、设计性实验报告专业:年级/班级:学年第学期课程名称XML基础指导教师本组成员学号姓名实验地点实验时间项目名称个人通讯薄一的设计与实现实验类型综合性一、实验目的1、掌握XML文档的基本语法,能够得到格式良好的XML文档;2、能够了解并掌握XML DTD的定义方法及其用途;3、能够熟练使用XMLSPY来创建DTD文件及对应的有效的XML文件,并进行验证;二、实验仪器或设备学院提供公共机房,1台学生微型计算机。
三、总体设计(设计原理、设计方案及流程等)设计原理:按照XML、DTD的语法规则来编写、保存文件XML、DTD文件。
设计方案及流程:利用XML文档作为存储载体来存储个人通讯薄,按照以下要求设计并实现该通讯薄:1、内含同学(classmate)、朋友(friend)、家人(home)等人员。
每条通讯录至少包含以下信息:a、姓名(name):必须有一个,其中包含一个枚举类型的性别(sex)属性;b、性别(sex):必须有一个;c、联系方式(tel):必须有一个;d、QQ号:一个或多个;e、地址(address):一个或多个;f、备注(other):一个或多个;g、根据需要可添加其它字段。
2、为该XML文档,编写DTD文档。
四、实验步骤(包括主要步骤、代码分析等)1、按照以上设计编写一个规范的XML文档<?xml version="1.0" encoding="UTF-8"?>这句话放为XML文件的声明,作为文件的第一行,在其前面不能有空白、其他处理指令或注释。
XML声明以<?xml标识开始、以?>标识结束。
在该XML声明中,属性version 的值为1.0,指出了该XML文件使用的XML版本,目前该属性的值只可以取1.0。
属性encoding规定XML文件采用哪种字符集进行编码,在这encoding的值为“UTF-8”,那么标记的名字以及标记包含的文本内容中就可以使用汉字、日文、英文等。
XML实验报告——XML文件的两种显示方式

XML实验报告计算机学院软件工程一、实验题目XML文件的两种显示方式二、实验目的1.理解CSS;2.学会使用CSS显示XML文件;3.理解XSL;4.学会使用XSL显示XML文件;5.对比CSS和XSL;三、实验代码1.用DTD文件生成的XML文件<?xml version="1.0" encoding="UTF-8"?><!--Sample XML file generated by XMLSpy v2007 ()--> <!DOCTYPE bookcase SYSTEM "课堂练习2(DTD文件).dtd"><?xml-stylesheet type="text/css" href="css.css"?><bookcase><book><b-name>书1</b-name><author><name>敖阳月</name><E-mail>邮箱1</E-mail></author><price>10</price><publishing-house><p-name>天津出版社</p-name><address>出版社地址1</address><zipcode>出版社编号1</zipcode><E-mail>出版社邮箱1</E-mail></publishing-house></book><book><b-name>书2</b-name><author><name>敖阳月</name><E-mail>邮箱2</E-mail></author><price>20</price><publishing-house><p-name>出版社名2</p-name><address>出版社地址2</address><zipcode>出版社编号2</zipcode><E-mail>出版社邮箱2</E-mail> </publishing-house></book><book><b-name>书3</b-name><author><name>作者3</name><E-mail>邮箱3</E-mail></author><price>30</price><publishing-house><p-name>天津出版社</p-name><address>出版社地址3</address><zipcode>出版社编号3</zipcode><E-mail>出版社邮箱3</E-mail> </publishing-house></book><book><b-name>书4</b-name><author><name>作者4</name><E-mail>邮箱4</E-mail></author><price>40</price><publishing-house><p-name>出版社名4</p-name><address>出版社地址4</address><zipcode>出版社编号4</zipcode><E-mail>出版社邮箱4</E-mail> </publishing-house></book><book><b-name>书5</b-name><author><name>敖阳月</name><E-mail>邮箱5</E-mail></author><price>50</price><publishing-house><p-name>出版社名5</p-name><address>出版社地址5</address><zipcode>出版社编号5</zipcode><E-mail>出版社邮箱5</E-mail></publishing-house></book><book><b-name>书6</b-name><author><name>作者6</name><E-mail>邮箱6</E-mail></author><price>60</price><publishing-house><p-name>出版社名6</p-name><address>出版社地址6</address><zipcode>出版社编号6</zipcode><E-mail>出版社邮箱6</E-mail> </publishing-house></book></bookcase>2.CSS文件bookcase{background-color: #FFFFCC;}book{border-style: double;border-color: #000080;display: block;margin-bottom: 20pt;padding: 10pt;text-align: center;}name,zipcode,p-name{font-family: 华a文?新?魏o;font-size: medium;font-weight: bold;padding-right:15pt;}b-name,address{font-family: 华a文?行D楷?;color: #008080;padding-right:15pt;display:inherit;}E-mail{font-family: 华a文?行D楷?;color: #888080;padding-right:15pt;display:inherit;}price{font-family: 华a文?彩¨º云?;color: #FF0000;padding-right:15pt;}3.实验截图4.用DTD文件生成的XML文件:<?xml version="1.0" encoding="UTF-8"?><!--Sample XML file generated by XMLSpy v2007 ()--> <!DOCTYPE bookcase SYSTEM "generateDTD.dtd"><?xml-stylesheet type="text/xsl" href="H:\XML\课堂练习5(xsl文件).xsl"?><bookcase><book><b-name>书1</b-name><author><name>敖阳月</name><E-mail>邮箱1</E-mail></author><price>10</price><publishing-house><p-name>出版社名1</p-name><address>出版社地址1</address><zipcode>出版社编号1</zipcode><E-mail>出版社邮箱1</E-mail></publishing-house></book><book><b-name>书2</b-name><author><name>敖阳月</name><E-mail>邮箱2</E-mail></author><price>20</price><publishing-house><p-name>出版社名2</p-name><address>出版社地址2</address><zipcode>出版社编号2</zipcode><E-mail>出版社邮箱2</E-mail></publishing-house></book><book><b-name>书3</b-name><author><name>作者3</name><E-mail>邮箱3</E-mail></author><price>30</price><publishing-house><p-name>出版社名3</p-name><address>出版社地址3</address><zipcode>出版社编号3</zipcode><E-mail>出版社邮箱3</E-mail> </publishing-house></book><book><b-name>书4</b-name><author><name>作者4</name><E-mail>邮箱4</E-mail></author><price>40</price><publishing-house><p-name>出版社名4</p-name><address>出版社地址4</address><zipcode>出版社编号4</zipcode><E-mail>出版社邮箱4</E-mail> </publishing-house></book><book><b-name>书5</b-name><author><name>敖阳月</name><E-mail>邮箱5</E-mail></author><price>50</price><publishing-house><p-name>出版社名5</p-name><address>出版社地址5</address><zipcode>出版社编号5</zipcode><E-mail>出版社邮箱5</E-mail> </publishing-house></book><book><b-name>书6</b-name><author><name>作者6</name><E-mail>邮箱6</E-mail></author><price>60</price><publishing-house><p-name>出版社名6</p-name><address>出版社地址6</address><zipcode>出版社编号6</zipcode><E-mail>出版社邮箱6</E-mail></publishing-house></book></bookcase>5.XSL文件<?xml version="1.0" encoding="UTF-8"?><xsl:stylesheet version="2.0" xmlns:xsl="/1999/XSL/Transform" xmlns:fo="/1999/XSL/Format"xmlns:xs="/2001/XMLSchema"xmlns:fn="/2005/xpath-functions"><xsl:template match="/"><html><head><title>图书信息</title></head><body><center><h2>图书列表</h2><table border="5" width="80%"><tr><th>书名</th><th>作者</th><th>价格</th><th>出版社</th></tr><xsl:for-each select="bookcase/book"><xsl:sort select="price" order="descending"/><tr><td><xsl:value-of select="b-name"/></td><td><xsl:if test="author/name='敖阳月'"><xsl:attributename="style">color:blue</xsl:attribute></xsl:if><xsl:value-of select="author/name"/></td><td><xsl:if test="price>=40"><xsl:attributename="style">color:red;font-size:large</xsl:attribute></xsl:if><xsl:value-of select="price"/></td><xsl:choose><xsl:when test="publishing-house/p-name='天津出版社'"><td style="background-color:gray"><xsl:value-ofselect="publishing-house/p-name"/></td></xsl:when><xsl:otherwise><td style="background-color:yellow"><xsl:value-ofselect="publishing-house/p-name"/></td></xsl:otherwise></xsl:choose></tr></xsl:for-each></table></center></body></html></xsl:template></xsl:stylesheet>6.实验截图四、实验步骤1.CSS显示XMLa)创建一个关于图书信息的DTD文件,通过该DTD文件自动生成有6本书的XML文件;b)新建一个CSS文件,在该文件中将选择器定义为XML文件中的各标签名,并设置各属性以达到不同的显示效果;c)在XML文件的序言后添加PI指令,导入外部CSS;2.XSL显示XMLa)创建一个关于图书信息的DTD文件,通过该DTD文件自动生成有6本书的XML文件;b)新建一个XSL文件,利用XSL语法定义模板元素、选取XML文档中的数据;c)在XML文件的序言后添加PI指令,导入XSL;五、实验心得通过老师介绍CSS禅意花园,并且自己也浏览了该网站,对CSS 产生了极大的兴趣,但下载了CSS文件并仔细浏览分析后发现CSS 真的是博大精深,需要下一定的功夫去研究学习。
(完整word版)xml开发技术实验报告

淮海工学院计算机工程学院实验报告书课程名: 《XML开发技术》题目: DOM解析学号:姓名:一、实验目的与要求DOM(Document Object Model,文档对象模型)是W3C制定的一套规范标准,即规定了解析文件的接口DOM规范的核心是树模型。
对于解析XML文件的解析器,解析器通过读入XML文件在内存中建立一个树,也就是说XML文件的标记、标记的文本内容、实体等都会和内存中树的某个节点相对应。
1.掌握DO解析器的工作原理;2.掌握节点的类型;3.熟练掌握Element、Text、Document等节点的使用。
二、实验内容或题目使用DOM解析器读取存储CD信息的XML文件,练习Element、Text、Document等节点的使用。
三、实验步骤与源程序1.使用以前创建的XML文件,文件中包含多条CD信息、图书信息等。
2.使用DOM,编写JAVA程序,读取XML文件中的数据,并显示到控制台上。
使用两种方法实现该功能:1)使用getElementsByTagName()方法2)使用getChildNodes()方法3.属性值的读取使用两种1)使用getAttribute方法2)使用ATTR节点//getChildNode.javaimport java.io.File;import javax.xml.parsers。
DocumentBuilder;import javax.xml.parsers.DocumentBuilderFactory;import org.w3c。
dom.Document;import org.w3c。
dom。
Element;import org。
w3c.dom。
Node;import org。
w3c。
dom。
NodeList;public class getChildNode {public static void main(String args[]){ try{DocumentBuilderFactory factory = DocumentBuilderFactory。
xml实验报告

目录第一章实验课程基本信息 (2)第二章如何编写格式良好的XML文档 (2)2.1实验目的 (2)2.2实验要求 (2)2.3实验过程 (3)2.3.1分析过程 (3)2.3.2XML文档编写过程 (3)2.4注意事项 (4)第三章编写DTD和有效的XML实例文档 (5)3.1实验目的 (5)3.2实验要求 (5)3.3实验过程 (5)3.3.1分析过程 (5)3.3.2DTD文档的编写过程 (6)3.4注意事项 (10)第四章编写Schema和有效的XML文档 (10)4.1实验目的 (10)4.2实验要求 (10)4.3实验过程 (11)4.3.1分析过程 (11)4.3.2Schema的编写方式 (11)4.4注意事项 (13)第五章XML文档的转换 (13)5.1实验目的 (13)5.2实验要求 (13)5.3实验过程 (14)5.3.1分析过程 (14)5.3.2XHTML实验编写基本过程 (14)5.4注意事项 (18)第六章DOM编程 (18)6.1实验目的 (18)6.2实验要求 (18)6.3实验过程 (18)6.3.1分析过程 (18)6.3.2DOM编写的基本过程 (19)6.4注意事项 (22)XML编程实验摘要XML自推出以来,尤其是在1998年2月成为W3C推荐标准以来,受到了广泛的支持。
各大软件厂商如IBM、Microsoft、Oracle、Sun等都积极支持并参与XML的研究和产品化工作,先后推出了支持XML的产品或者将改造原有的产品以支持XML,W3C也一直致力于完善XML的整个理论体系。
XML虽然获得了极大的支持,但是它还有很长的路要走。
首先,XML的规则只是迈出了第一步,还有许多技术细节没有解决。
其次,现在虽然出现了一些XML工具和应用,但是其市场反应还有待进一步观察。
另外如何让更多的人迅速学会使用XML,并利用它进行开发,进而促进XML的应用也是一个问题。
XML实验报告

XML实验报告计算机系实验报告实验课程:XML实验班级:⽹⼯(2)班学⽣姓名:学⽣学号:实验成绩:⼀、实验⽬的综合验证以下课程主要知识点:1.XML语法熟悉XML语法规范、能够编写形式良好的XML⽂档;2.DTD和xml Schema⽂档约束熟练使⽤DTD和XML Schema定义基本的XML元素、属性、限定等⽅⾯的模式约束。
3.SAX解析、DOM解析以及JAXP了解SAX和DOM解析原理,能够使⽤JAXP接⼝完成对XML⽂档的解析和转换。
4.XSLT和XPath能够使⽤XSLT和XPath完成从XML⽂档到HTML格式的转换。
⼆、实验内容1.编写XML⽂档约束根据下图中显⽰的信息,编写⼀个DTD⽂档,其内容要求能够包含图中所有的信息点。
2.编写⼀个XML⽂档,使其在DTD约束下是有效的假设上⼀步编写的DTD⽂档⽂件名为:books.dtd,编译⼀个XML⽂档使其在books.dtd ⽂件的约束下成为⼀个有效的XML⽂档。
然后,使⽤xmllint程序对你编写的XML⽂档进⾏有效性验证,具体如果使⽤,请参看“《XML》课程教案”中的相关内容。
3.使⽤JAXP接⼝,对上⼀步完成的XML⽂档进⾏解析假设上⼀步编写的XML⽂档名为books.xml。
1)使⽤SAX⽅式解析从XML⽂档books.xml中获得“书名”、“书号”、“作者”、“出版社”、“出版⽇期”这5个记录项的信息,并将其格式化输出到⼀个⽂件books.txt中。
books.txt中的信息格式如下所⽰:书名书号作者出版社出版⽇期--------------------------------------------------------------------name 1234 Tom 清华20112)使⽤DOM⽅式解析从XML⽂档books.xml中获取“书名”、“书号”、“作者”、“出版社”、“出版⽇期”,并将它们封装到⼀个javabean类中,然后利⽤该类中的数据,通过DOM构造⼀棵DOM⽂档树,并将其序列化到⼀个XML⽂件中simplebooks.xml。
XML期末作业实验报告

XML期末作业实验报告实验名称:XML期末课程设计实验目的:运用本学期所学的XML知识写一个XML并在网页上显示,然后对这个文件进行添加删除修改操作实验环境:Dreamweaver实验过程:内容:<?xml version="1.0" encoding="utf-8"?><!DOCTYPE book [<!ELEMENT book (title,num,auth,text)><!ELEMENT title (#PCDATA)><!ELEMENT num (#PCDA TA)><!ELEMENT auth (#PCDATA)><!ELEMENT text (#PCDATA)>]><post><book id="b1"><title>《肠子》</title><num>8.4</num><auth>[美] 恰克·帕拉尼克</auth><text>对从来没有性生活的柯拉·雷诺兹而言,这些仿真娃娃,因为它们的被侵犯,它们的残缺和弱势,反而获得了人的尊严……在这里,物与人的对立与互指变得如此激烈</text></book><book id="b2"><title>《笑谈大先生》</title><num>8.4</num><auth>陈丹青</auth><text>写就了七篇谈鲁迅的文字,好比是给此前教科书糟蹋得灰头土脸的鲁迅画了七张简净风流的素描。
在他那里,鲁迅并非一个词汇、概念或是什么说法,就是一个呆在上海,抽烟,爱看电影,爱买书的作家。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
本科生实验报告实验课程XML语言学院名称专业名称学生姓名学生学号指导教师实验地点实验成绩二〇一年月二〇一年月填写说明1、适用于本科生所有的实验报告(印制实验报告册除外);2、专业填写为专业全称,有专业方向的用小括号标明;3、格式要求:①用A4纸双面打印(封面双面打印)或在A4大小纸上用蓝黑色水笔书写。
②打印排版:正文用宋体小四号,1.5倍行距,页边距采取默认形式(上下2.54cm,左右2.54cm,页眉1.5cm,页脚1.75cm)。
字符间距为默认值(缩放100%,间距:标准);页码用小五号字底端居中。
③具体要求:题目(二号黑体居中);摘要(“摘要”二字用小二号黑体居中,隔行书写摘要的文字部分,小4号宋体);关键词(隔行顶格书写“关键词”三字,提炼3-5个关键词,用分号隔开,小4号黑体);正文部分采用三级标题;第1章××(小二号黑体居中,段前0.5行)1.1 ×××××小三号黑体×××××(段前、段后0.5行)1.1.1小四号黑体(段前、段后0.5行)参考文献(黑体小二号居中,段前0.5行),参考文献用五号宋体,参照《参考文献著录规则(GB/T 7714-2005)》。
实验1、编写格式良好的XML文档一、实验内容要求:格式良好,包含XML声明、合理的元素嵌套结构、属性、注释、名称空间。
能合理体现下列数据的语义。
学生信息:学号(声明为id类型属性),姓名,性别,出生日期课程信息:课程编号(声明为id类型属性),课程名,学分,课程说明成绩信息:成绩(考虑补考及重修)实例文档:多个学生、多门课程的成绩(不少于3个学生2门课程)二、实验过程<?xml version="1.0" encoding="UTF-8"?><academic_information><students><student studentID="s001"><sname>Adele</sname><sex>female</sex><birthday>1995/06/02</birthday></student><student studentID="s002"><sname>Linda</sname><sex>female</sex><birthday>1994/06/25</birthday></student><student studentID="s003"><sname>Frank</sname><sex>male</sex><birthday>1995/07/13</birthday></student><student studentID="s004"><sname>Bob</sname><sex>male</sex><birthday>1995/05/14</birthday></student><student studentID="s005"><sname>Talor</sname><sex>female</sex><birthday>1995/12/11</birthday></student><student studentID="s006"><sname>David</sname><sex>male</sex><birthday>1995/02/26</birthday></student><student studentID="s007"><sname>Jack</sname><sex>male</sex><birthday>1995/04/27</birthday></student><student studentID="s008"><sname>Tom</sname><sex>male</sex><birthday>1995/08/10</birthday></student></students><courses><course courseID="c001"><cname>math</cname><credit>4</credit><description>base</description></course><course courseID="c002"><cname>C# programing language</cname><credit>4</credit><description>base</description></course><course courseID="c003"><cname>english</cname><credit>3</credit><description>base</description></course></courses><grades><grade studentID="s001"><score courseID="c001">45</score><resit_info s_type="Supplementary examination.">60</resit_info> </grade><grade studentID="s001"><score courseID="c002">40</score><resit_info s_type="Supplementary examination.">49</resit_info><restudy_info sc_type="Restudy.">60</restudy_info></grade><grade studentID="s001"><score courseID="c003">54</score><resit_info s_type="Supplementary examination.">60</resit_info> </grade><grade studentID="s002"><score courseID="c001">70</score></grade><grade studentID="s002"><score courseID="c002">78</score></grade><grade studentID="s002"><score courseID="c003">55</score><resit_info s_type="Supplementary examination.">60</resit_info> </grade><grade studentID="s003"><score courseID="c001">80</score></grade><grade studentID="s003"><score courseID="c002">74</score></grade><grade studentID="s003"><score courseID="c003">81</score></grade><grade studentID="s004"><score courseID="c001">64</score></grade><grade studentID="s004"><score courseID="c002">48</score><resit_info s_type="Supplementary examination.">56</resit_info><restudy_info sc_type="Restudy.">60</restudy_info></grade><grade studentID="s004"><score courseID="c003">73</score></grade></grades></academic_information>三、实验成果实验2、按照下列内容要求,编写DTD和有效的xml实例文档一、实验内容要求:能合理体现下列数据的语义学生信息:学号(声明为id类型属性),姓名,性别,出生日期课程信息:课程编号(声明为id类型属性),课程名,学分,课程说明成绩信息:成绩(考虑补考及重修)实例文档:多个学生、多门课程的成绩(不少于8个学生3门课程)二、实验过程<?xml version="1.0" encoding="UTF-8"?><!-- edited with XMLSpy v2011 () by cdut (cdut) --><!DOCTYPE academic_information [<!ELEMENT academic_information (students, courses, grades)><!ELEMENT students (student+)><!ELEMENT student (sname, sex, birthday)><!ATTLIST student studentID ID #REQUIRED><!ELEMENT sname (#PCDATA)><!ELEMENT sex (#PCDATA)><!ELEMENT birthday (#PCDATA)><!ELEMENT courses (course+)><!ELEMENT course (cname, credit, description)><!ATTLIST course courseID ID #REQUIRED><!ELEMENT cname (#PCDATA)><!ELEMENT credit (#PCDATA)><!ELEMENT description (#PCDATA)><!ELEMENT grades (grade+)><!ELEMENT grade (score, resit_info?, restudy_info?)><!ATTLIST grade studentID IDREF #REQUIRED><!ATTLIST score courseID IDREF #REQUIRED><!ELEMENT score (#PCDATA)><!ELEMENT resit_info (#PCDATA)><!ATTLIST resit_info s_type CDATA #FIXED "Supplementary examination."> <!ELEMENT restudy_info (#PCDATA)><!ATTLIST restudy_info sc_type CDATA #FIXED "Restudy.">]><academic_information><students><student studentID="s001"><sname>Adele</sname><sex>female</sex><birthday>1995/06/02</birthday></student><student studentID="s002"><sname>Linda</sname><sex>female</sex><birthday>1994/06/25</birthday></student><student studentID="s003"><sname>Frank</sname><sex>male</sex><birthday>1995/07/13</birthday></student><student studentID="s004"><sname>Bob</sname><sex>male</sex><birthday>1995/05/14</birthday></student><student studentID="s005"><sname>Talor</sname><sex>female</sex><birthday>1995/12/11</birthday></student><student studentID="s006"><sname>David</sname><sex>male</sex><birthday>1995/02/26</birthday></student><student studentID="s007"><sname>Jack</sname><sex>male</sex><birthday>1995/04/27</birthday></student><student studentID="s008"><sname>Tom</sname><sex>male</sex><birthday>1995/08/10</birthday></student></students> <courses><course courseID="c001"><cname>math</cname><credit>4</credit><description>base</description></course><course courseID="c002"><cname>C# programing language</cname><credit>4</credit><description>base</description></course><course courseID="c003"><cname>english</cname><credit>3</credit><description>base</description></course></courses><grades><grade studentID="s001"><score courseID="c001">45</score><resit_info s_type="Supplementary examination.">60</resit_info> </grade><grade studentID="s001"><score courseID="c002">40</score><resit_info s_type="Supplementary examination.">59</resit_info> <restudy_info sc_type="Restudy.">60</restudy_info></grade><grade studentID="s001"><score courseID="c003">54</score><resit_info s_type="Supplementary examination.">60</resit_info> </grade><grade studentID="s002"><score courseID="c001">70</score></grade><grade studentID="s002"><score courseID="c002">78</score></grade><grade studentID="s002"><score courseID="c003">55</score><resit_info s_type="Supplementary examination.">60</resit_info> </grade><grade studentID="s003"><score courseID="c001">80</score></grade><grade studentID="s003"><score courseID="c002">74</score></grade><grade studentID="s003"><score courseID="c003">81</score></grade><grade studentID="s004"><score courseID="c001">64</score></grade><grade studentID="s004"><score courseID="c002">48</score><resit_info s_type="Supplementary examination.">56</resit_info><restudy_info sc_type="Restudy.">60</restudy_info></grade><grade studentID="s004"><score courseID="c003">73</score></grade></grades></academic_information>三、实验成果实验3、按照下列内容要求,编写schema和有效的xml实例文档一、实验内容要求:1、使用全局有名类型2、使用“目标名称空间”3、能合理体现下列数据的语义学生信息:学号(声明为id类型属性),姓名,性别,出生日期课程信息:课程编号(声明为id类型属性),课程名,学分,课程说明成绩信息:成绩(考虑补考及重修)实例文档:多个学生、多门课程的成绩(不少于8个学生3门课程)二、实验过程1、schema文档<?xml version="1.0" encoding="UTF-8"?><xs:schema xmlns:info="/e-commerce"xmlns:xs="/2001/XMLSchema"targetNamespace="/e-commerce"><xs:annotation><xs:documentation>教务信息</xs:documentation></xs:annotation><xs:element name="academic_information" type="info:informationType"/> <xs:complexType name="informationType"><xs:sequence><xs:element name="students" type="info:studentType"/><xs:element name="courses" type="info:courseType"/><xs:element name="grades" type="info:gradeType"/></xs:sequence></xs:complexType><xs:complexType name="studentType"><xs:sequence><xs:element name="student" minOccurs="1" maxOccurs="unbounded"> <xs:complexType><xs:sequence><xs:element name="sname" type="xs:string"/><xs:element name="sex" type="xs:string"/><xs:element name="birthday" type="xs:date"/></xs:sequence><xs:attribute name="studentID" type="info:registerID"/> </xs:complexType></xs:element></xs:sequence></xs:complexType><xs:complexType name="courseType"><xs:sequence><xs:element name="course" minOccurs="1" maxOccurs="unbounded"> <xs:complexType><xs:sequence><xs:element name="cname" type="xs:string"/><xs:element name="credit" type="xs:string"/><xs:element name="description" type="xs:string"/></xs:sequence><xs:attribute name="courseID" type="info:registerID"/> </xs:complexType></xs:element></xs:sequence></xs:complexType><xs:complexType name="gradeType"><xs:sequence><xs:element name="grade" minOccurs="1" maxOccurs="unbounded"><xs:complexType><xs:sequence><xs:element name="score" minOccurs="1"><xs:complexType><xs:simpleContent><xs:extension base="xs:int"><xs:attribute name="courseID"type="info:registerID"/></xs:extension></xs:simpleContent></xs:complexType></xs:element><xs:element name="resit_info" minOccurs="0"><xs:complexType><xs:simpleContent><xs:extension base="xs:int"><xs:attribute name="s_type"type="xs:string"/></xs:extension></xs:simpleContent></xs:complexType></xs:element><xs:element name="restudy_info" minOccurs="0"><xs:complexType><xs:simpleContent><xs:extension base="xs:int"><xs:attribute name="sc_type"type="xs:string"/></xs:extension></xs:simpleContent></xs:complexType></xs:element></xs:sequence><xs:attribute name="studentID" type="info:registerID"/> </xs:complexType></xs:element></xs:sequence></xs:complexType><xs:simpleType name="registerID"><xs:restriction base="xs:string"><xs:pattern value=".\d{3}"/></xs:restriction></xs:simpleType></xs:schema>2、XML文档<?xml version="1.0" encoding="UTF-8"?><info:academic_information xmlns:xsi="/2001/XMLSchema-instance" xsi:schemaLocation="/e-commerce info.xsd"xmlns:info="/e-commerce"><students><student studentID="s001"><sname>Adele</sname><sex>female</sex><birthday>1995-06-02</birthday></student><student studentID="s002"><sname>Linda</sname><sex>female</sex><birthday>1994-06-25</birthday></student><student studentID="s003"><sname>Frank</sname><sex>male</sex><birthday>1995-07-13</birthday></student><student studentID="s004"><sname>Bob</sname><sex>male</sex><birthday>1995-05-14</birthday></student><student studentID="s005"><sname>Talor</sname><sex>female</sex><birthday>1995-12-11</birthday></student><student studentID="s006"><sname>David</sname><sex>male</sex><birthday>1995-02-26</birthday></student><student studentID="s007"><sname>Jack</sname><sex>male</sex><birthday>1995-04-27</birthday></student><student studentID="s008"><sname>Tom</sname><sex>male</sex><birthday>1995-08-10</birthday></student></students><courses><course courseID="c001"><cname>math</cname><credit>4</credit><description>base</description></course><course courseID="c002"><cname>C# programing language</cname><credit>4</credit><description>base</description></course><course courseID="c003"><cname>english</cname><credit>3</credit><description>base</description></course></courses><grades><grade studentID="s001"><score courseID="c001">45</score><resit_info s_type="Supplementary examination.">60</resit_info> </grade><grade studentID="s001"><score courseID="c002">40</score><resit_info s_type="Supplementary examination.">59</resit_info><restudy_info sc_type="Restudy.">60</restudy_info></grade><grade studentID="s001"><score courseID="c003">54</score><resit_info s_type="Supplementary examination.">60</resit_info> </grade></grades></info:academic_information>三、实验成果实验4、编写XSLT,将实验2编写的XML文档转换为XHTML文档,并在浏览器上显示一、实验内容要求:界面实用、简洁、美观二、实验过程1、XSLT文档<?xml version="1.0" encoding="UTF-8"?><xsl:stylesheet version="1.0" xmlns:xsl="/1999/XSL/Transform"> <!--xsl:output method="xml" version="1.0" encoding="UTF-8" indent="yes"/--><xsl:template match="/"><html><body><title>academic_information</title><center><h1>academic_information</h1></center><div style="text-align:center; font-weight:bold;width:100%;margin:5px 0px 0px 100px"> <table border="1" style="border:1px solid gray"><tr bgcolor="gray"><th>学生姓名</th><th>学生编号</th><th>性别</th><th>出生日期</th></tr><xsl:for-each select="academic_information/students/student"><tr><td><xsl:value-of select="sname"/> </td><td><xsl:value-of select="@studentID"/></td><td><xsl:value-of select="sex"/></td><td><xsl:value-of select="birthday"/></td></tr></xsl:for-each></table></div><div style="text-align:center; font-weight:bold;width:100%;margin:-222px 0px 0px 500px"><table border="1" style="border:1px solid gray"><tr bgcolor="gray"><th>课程名称</th><th>课程编号</th><th>学分</th><th>描述</th></tr><xsl:for-each select="academic_information/courses/course"><tr><td><xsl:value-of select="cname"/></td><td><xsl:value-of select="@courseID"/></td><td><xsl:value-of select="credit"/></td><td><xsl:value-ofselect="description"/></td></tr></xsl:for-each></table></div><div style="text-align:center; font-weight:bold;width:100%;margin:-100px 0px 0px 850px"> <table border="1" style="border:1px solid gray"><tr bgcolor="gray"><th>学生编号</th><th>课程编号</th><th>分数</th><th>成绩类型</th><th>补考成绩</th><th>成绩类型</th><th>重修成绩</th></tr><xsl:for-each select="academic_information/grades/grade"><tr><td><xsl:value-of select="@studentID"/></td><td><xsl:value-of select="./score/@courseID"/> </td><td><xsl:value-of select="score"/></td><td><xsl:value-of select="./resit_info/@s_type"/> </td><td><xsl:value-of select="resit_info"/></td><td><xsl:value-of select="./restudy_info/@sc_type"/></td><td><xsl:value-of select="restudy_info"/></td></tr></xsl:for-each></table></div> </body> </html></xsl:template></xsl:stylesheet>2、XML文档<?xml version="1.0" encoding="UTF-8"?><!-- edited with XMLSpy v2011 () by cdut (cdut) --><?xml-stylesheet type="text/xsl" href="info.xslt"?><!DOCTYPE academic_information [<!ELEMENT academic_information (students, courses, grades)><!ELEMENT students (student+)><!ELEMENT student (sname, sex, birthday)><!ATTLIST student studentID ID #REQUIRED><!ELEMENT sname (#PCDATA)><!ELEMENT sex (#PCDATA)><!ELEMENT birthday (#PCDATA)><!ELEMENT courses (course+)><!ELEMENT course (cname, credit, description)><!ATTLIST course courseID ID #REQUIRED><!ELEMENT cname (#PCDATA)><!ELEMENT credit (#PCDATA)><!ELEMENT description (#PCDATA)><!ELEMENT grades (grade+)><!ELEMENT grade (score, resit_info?, restudy_info?)><!ATTLIST grade studentID IDREF #REQUIRED><!ATTLIST score courseID IDREF #REQUIRED><!ELEMENT score (#PCDATA)><!ELEMENT resit_info (#PCDATA)><!ATTLIST resit_info s_type CDATA #FIXED "Supplementary examination."><!ELEMENT restudy_info (#PCDATA)><!ATTLIST restudy_info sc_type CDATA #FIXED "Restudy." >]><academic_information><students><student studentID="s001"><sname>Adele</sname><sex>female</sex><birthday>1995/06/02</birthday> </student><student studentID="s002"><sname>Linda</sname><sex>female</sex><birthday>1994/06/25</birthday> </student><student studentID="s003"><sname>Frank</sname><sex>male</sex><birthday>1995/07/13</birthday> </student><student studentID="s004"><sname>Bob</sname><sex>male</sex><birthday>1995/05/14</birthday> </student><student studentID="s005"><sname>Talor</sname><sex>female</sex><birthday>1995/12/11</birthday> </student><student studentID="s006"><sname>David</sname><sex>male</sex><birthday>1995/02/26</birthday> </student><student studentID="s007"><sname>Jack</sname><sex>male</sex><birthday>1995/04/27</birthday> </student><student studentID="s008"><sname>Tom</sname><sex>male</sex><birthday>1995/08/10</birthday> </student></students><courses><course courseID="c001"><cname>math</cname><credit>4</credit><description>base</description> </course><course courseID="c002"><cname>C# programing language</cname><credit>4</credit><description>base</description></course><course courseID="c003"><cname>english</cname><credit>3</credit><description>base</description></course></courses><grades><grade studentID="s001"><score courseID="c001">45</score><resit_info s_type="Supplementary examination.">60</resit_info> </grade><grade studentID="s001"><score courseID="c002">40</score><resit_info s_type="Supplementary examination.">59</resit_info> <restudy_info sc_type="Restudy.">60</restudy_info></grade><grade studentID="s001"><score courseID="c003">54</score><resit_info s_type="Supplementary examination.">60</resit_info> </grade><grade studentID="s002"><score courseID="c001">70</score></grade><grade studentID="s002"><score courseID="c002">78</score></grade><grade studentID="s002"><score courseID="c003">55</score><resit_info s_type="Supplementary examination.">60</resit_info> </grade><grade studentID="s003"><score courseID="c001">80</score></grade><grade studentID="s003"><score courseID="c002">74</score></grade><grade studentID="s003"><score courseID="c003">81</score></grade><grade studentID="s004"><score courseID="c001">64</score></grade><grade studentID="s004"><score courseID="c002">48</score><resit_info s_type="Supplementary examination.">56</resit_info><restudy_info sc_type="Restudy.">60</restudy_info></grade><grade studentID="s004"><score courseID="c003">73</score></grade></grades></academic_information>三、实验成果实验5、下面给出描述学生信息(student)、课程信息(course)、学生课程成绩(score)的DTD文档一、实验内容要求:编写基于DOM的程序,实现对指定“学生”及“课程”的成绩查询。