版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、XML实 验 指 导 书数计学院23实验一 XML基本结构和语法实验学时:2实验类型:验证一、实验目的(1)通过本实验,使学生能够熟悉XML文档编辑、解析、浏览工具。(2)掌握XML文档的基本结构和基本语法。(3)能够得到格式良好的XML文档。 二、实验条件配置有windows记事本、写字板 或 XMLSpy开发环境的计算机设备。三、实验原理及相关知识(1)XML文档的基本结构(2)XML元素定义不能交叉,必须完全嵌套或不完全不嵌套四、实验内容及步骤1、熟悉XMLSpy;2、创建一个不需要DTD验证的XMLDocument,验证其是否正确:(1)用记事本创建以下“图书信息”的XML文件(boo
2、k.xml)。 <?xml version="1.0" encoding="UTF-8"?><!- 这是一个用XML描述的例子 -><bookcase><book type="教育"><b-name>XML实用培训教程</b-name><author><name>张健飞</name><E-mail>zjf</E-mail></author><price>27元</price&
3、gt;<publishing-house><p-name>科学出版社</p-name><address>北京东皇城根北街16号</address><zipcode>100717</zipcode><E-mail>yanmc</E-mail></publishing-house></book><book type="科技"><b-name> XML网页制作彻底研究</b-name><author>&
4、lt;name>陈会安</name><E-mail>cha</E-mail></author><price>47元</price><publishing-house><p-name>中国铁道出版社</p-name><address>北京市宣武区右安门西街8号</address><zipcode>100054</zipcode><E-mail>bjb</E-mail></publishing-house&g
5、t;</book></bookcase>(2)在XMLSpy中输入上述“图书信息”XML文件,然后验证其是否正确。 方法1:从记事本中将上述内容拷贝入XMLSpy中. 方法2:逐步输入,注意XMLSpy中对XML元素标记的补全功能(即开始标记输入完毕后,XMLSpy会自动将结束标记补在输入点之后)。(4)在浏览器(如IE)中打开“book.xml”文件,观察其显示,并反复进行元素的打开、折叠操作,理解XML元素嵌套的含义。3. 在XMLSpy中编写“person.xml”文件并进行验证,要求该文件中包括五个人(Person)的相关信息,相关信息包括:性别(作为Perso
6、n的属性)、姓名、年龄、地址(含有省、市、街道和邮编4个子元素)、电话号码、e-mail地址。4. XML文档改错:(1)<!-这是一个记录书籍信息的XML文档-><?xml version="1.0" encoding="gb2312"?><book> <b:title id="book" xmlns:b="/book" xmlns:p="/people"> Java Web
7、开发详解 </b:title> <isbn>7-121-02396-2</isbn> <author> <name>孙鑫</name> <p:title id="people">教师</p:title> </author> <publisher>电子工业出版社</publisher> <publishdate>2006年4月</publishdate> <edition>第一版</edition>
8、 <price>¥99.00</price> <brief> <!CDATA 本书共分四部分,展示了Java Web开发中各种技术的应用。<配套光盘包括"教学视频"&'本书示例'> > </brief> <anythings/></Book><book> <title id="book">XML基础教程</title> <isbn>7-302-12591-0</isbn&
9、gt; <author> <name>耿祥义</name> <title id="people">教师</title> </author> <publisher>清华大学出版社</publisher> <publishdate>2006年4月</publishdate> <edition>第一版</edition> <price>¥31.00</price> <brief> <!CDATA
10、本书是高等院校参考教材。 > </brief> <anythings/></book>(2)<?xml version="1.0" encoding="UTF-8"?><书架> <Book> <书名>How to Purse Happiness <作者> <名>Adair<名> <姓>Lana<姓> </作者> < price >8.99</price > </bo
11、ok><Book> <书名>The Confidence Man <作者> <名>Herman<名> <姓>Melville<姓> </作者> <price>11.99</价格> </book></书架>(3)<?xml version="1.0" encoding="UTF-8"?><路标> <标记1>&你好&</标记1> <标记2&g
12、t;"注意观察"</标记2> <标记3>限高30米</标记3></路标>五、思考题及其它(1)XML文件中的名字空间有什么用处?(2)XML的标记与关系数据库中的列名有什么区别? 实验二 在XML文档中使用DTD 实验学时:2实验类型:设计一、实验目的通过本实验,使学生能够了解并掌握XML DTD的定义方法及其用途(1)了解并掌握DTD元素声明的基本语法(2)了解并掌握DTD属性声明的基本语法(3)了解并掌握DTD实体声明的基本语法二、实验条件配置有windows记事本、写字板 或 XMLSpy开发环境的计算机设备。三、实验原
13、理及相关知识XML DTD的声明和与XML文档的关联四、实验内容及步骤1、对以下“book.xml”进行DTD定义(设DTD文件名为“bookinfo.dtd”) <?xml version="1.0" encoding="UTF-8"?><!- 这是一个用XML描述的例子 -><bookcase><book type="教育"><b-name>XML实用培训教程</b-name><author><name>张健飞</name>
14、<E-mail>zjf</E-mail></author><price>27元</price><publishing-house><p-name>科学出版社</p-name><address>北京东皇城根北街16号</address><zipcode>100717</zipcode><E-mail>yanmc</E-mail></publishing-house></book><book type=
15、"科技"><b-name> XML网页制作彻底研究</b-name><author><name>陈会安</name><E-mail>cha</E-mail></author><price>47元</price><publishing-house><p-name>中国铁道出版社</p-name><address>北京市宣武区右安门西街8号</address><zipcode>100
16、054</zipcode><E-mail>bjb</E-mail></publishing-house></book></bookcase>(1)书写XML DTD定义头部<?xml version="1.0" encoding="UTF-8"?>(2)书写XML DTD元素定义<!ELEMENT bookcase (book*)><!ELEMENT book (b-name,author,price,publishing-house)><!
17、ELEMENT b-name (#PCDATA)><!ELEMENT author (name,E-mail)><!ELEMENT name (#PCDATA)><!ELEMENT E-mail (#PCDATA)><!ELEMENT price (#PCDATA)><!ELEMENT publishing-house (p-name,address,zipcode,E-mail)><!ELEMENT p-name (#PCDATA)><!ELEMENT address (#PCDATA)><!EL
18、EMENT zipcode (#PCDATA)>(3)添加XML DTD属性定义(添加在book元素定义之后)<!ATTLIST book type (教育|科技) "科技"> (4)创建带有DTD验证的XML文档“book-ondtd”,并在IE中打开该文档,观察符合DTD定义的XML文件显示。 2、为一个XML文档创建外部DTD,并根据创建的DTD编写对应的XML文档,进行有效性验证。该XML文档的根元素名为“班级学生花名册”;“班级学生花名册”元素必须包含两个元素:“学生名单”和“班级信息”;“学生名单”包含若干“学生”元素;“学生”元素包含“姓名”
19、、“学号”、“性别”三个子元素;“班级信息”又包含“班主任姓名”和“班主任联系电话”两个子元素。3、根据实验一中的“person.xml”文件,编写对应的“person.dtd”文件,并使用XMLSpy 对“person.dtd”和“person.xml”进行有效性性验证,若有错误,按照提示进行修改。五、思考题及其它(1)为什么要定义DTD?(2)DTD不符合XML语法有什么缺点?实验三 在XML文档中使用Schema实验学时:2实验类型:设计一、实验目的通过本实验,使学生能够了解并掌握XML Schema的定义方法及其用途(1)了解并掌握Schema的基本结构(2)了解并掌握Schema的数
20、据类型(3)了解并掌握Schema的元素声明(4)了解并掌握Schema的属性声明二、实验条件配置有windows记事本、写字板 或 XMLSpy开发环境的计算机设备。三、实验原理及相关知识XML Schema的语法规范 四、实验内容及步骤1、对以下“book.xml”进行Schema定义(设Schema文件名为“bookinfo.xsd”) <?xml version="1.0" encoding="UTF-8"?><!- 这是一个用XML描述的例子 -><bookcase><book type="教
21、育"><b-name>XML实用培训教程</b-name><author><name>张健飞</name><E-mail>zjf</E-mail></author><price>27元</price><publishing-house><p-name>科学出版社</p-name><address>北京东皇城根北街16号</address><zipcode>100717</zipcod
22、e><E-mail>yanmc</E-mail></publishing-house></book><book type="科技"><b-name> XML网页制作彻底研究</b-name><author><name>陈会安</name><E-mail>cha</E-mail></author><price>47元</price><publishing-house><p-n
23、ame>中国铁道出版社</p-name><address>北京市宣武区右安门西街8号</address><zipcode>100054</zipcode><E-mail>bjb</E-mail></publishing-house></book></bookcase>(1)在XMLSpy中新建XML Schema文档“bookinfo.xsd”,其内容如下:XML Schema定义头部:<?xml version="1.0" encoding=
24、"UTF-8"?><xs:schema xmlns:xs="/2001/XMLSchema"> </xs:schema>(2)定义bookcase元素(添加在处)<xs:element name="bookcase"> <xs:complexType> <xs:sequence minOccurs="1" maxOccurs="unbounded"><xs:element name="
25、;book" type="bookType"/> </xs:sequence> </xs:complexType></xs:element>(3)定义bookType类型(里面引用定义authorType, pub-houseType,添加在bookcase元素定义之后) <xs:complexType name="bookType"> <xs:sequence><xs:element name="b-name" type="xs:string
26、"/><xs:element name="author" type="authorType"/><xs:element name="price" type="xs:string"/><xs:element name="publishing-house" type="pub-houseType"/> </xs:sequence> <xs:attribute name="type">
27、<xs:simpleType><xs:restriction base="xs:string"> <xs:enumeration value="科技"/> <xs:enumeration value="教育"/></xs:restriction></xs:simpleType> </xs:attribute></xs:complexType>(4)定义authorType及pub-houseType元素类型(添加在bookType类型定义之
28、后) <xs:complexType name="authorType"><xs:sequence><xs:element name="name" type="xs:string"/><xs:element name="E-mail" type="xs:string"/></xs:sequence> </xs:complexType> <xs:complexType name="pub-houseType&q
29、uot;><xs:sequence><xs:element name="p-name" type="xs:string"/><xs:element name="address" type="xs:string"/><xs:element name="zipcode" type="xs:string"/><xs:element name="E-mail" type="xs:string&q
30、uot;/></xs:sequence> </xs:complexType>(5)在XMLSpy中创建一个基于“bookinfo.xsd”的XML文件“book-onschema.xml”。(6)在IE中打开XML Schema文件“bookinfo.xsd”和带有Schema定义的“book-onschema.xml”,观察带有Schema的XML文件显示。2、XML文档如下:<?xml version="1.0" encoding="UTF-8"?><order xmlns:xsi="http
31、://2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="e3-2.xsd"><orderItem><id>7-5005-6450-1</id> <quatity>3</quatity></orderItem><orderItem><id>7-5005-6450-2</id> <customer>xyz</customer><quatity&g
32、t;5</quatity></orderItem><orderItem><id>7-5005-6450-3</id> <quatity>7</quatity></orderItem></order>请为以上XML文档编写合适的XML Schema,并根据创建的XML Schema文档对XML进行有效性验证。其中,元素id的取值格式为:1位数字-4位数字-4位数字-1位数字3、根据实验一中的“person.xml”文件,编写对应的“person.xsd”文件,并使用XMLSpy 对“per
33、son.xsd”和“person.xml”进行有效性性验证,若有错误,按照提示进行修改。五、思考题及其它(1)Schema与DTD的共同点和区别是什么?(2)Schema符合XML语法有什么优点?实验四 层叠样式表CSS实验学时:2实验类型:设计一、实验目的(1)了解并掌握CSS的基本语法及创作步骤(2)了解并掌握XML文档中使用CSS的引入式方法(3)了解并掌握XML文档中使用CSS的嵌入式方法二、实验条件包配置有windows记事本、写字板 或 XMLSpy开发环境的计算机设备。三、实验原理及相关知识CSS的基本语法以及在XML文档中引用CSS的方法。四、实验内容1、对以下XML进行CSS
34、定义:<?xml version="1.0" encoding="utf-8" standalone="no"?><?xml-stylesheet type="text/css" href="person-comm.css"?><personslist> <person> <name>李 明</name> <age>20</age> <address> <province>湖北
35、省</province> <city>武汉市</city> <street>常青花园一路</street> </address> <tele>83969020</tele> <e-mail>123</e-mail> </person> <person> <name>林 琳</name> <age>21</age> <address> <province>湖北省</provin
36、ce> <city>武汉市</city> <street>金银湖马池路</street> </address> <tele>88888888</tele> <e-mail>54310858</e-mail> </person></personslist>利用CSS属性和相关使用规则,根据以上XML文件编写一个CSS文件,使其转换成一个HTML文件。该HTML文件通过浏览器打开的显示效果如图所示:2、以下XML文档:<?xml version="
37、;1.0" encoding="UTF-8"?><book isbn="978-7-115-28282-8" id="b2"><title lang="CHN">数学之美</title><price>45.00</price><authors><author>吴军</author></authors><press>人民邮电出版社</press><pages>
38、304</pages><description>读了“数学之美”,才发现大学时学的数学知识,比如马尔科夫链、矩阵计算,甚至余弦函数原来都如此亲切,并且栩栩如生,才发现自然语言和信息处理这么有趣,才真正明白“数学是科学的皇后”这句名言。</description><cover>book-math.jpg</cover></book>对以上XML文档编写样式文件,对其呈现样式进行控制:(1)每个元素默认占据一行,字体缺省为微软雅黑、海军蓝色navy,下部外边距为5px,左侧内边距为5px;(2)元素title的字体大小为24p
39、t,下部外边距为20px,颜色为橙色orange;(3)隐藏price、pages和cover元素;(4)元素description的上侧内边距为5px,上边框为1个像素宽的灰色(gray)虚线。在浏览器中的呈现效果如下:五、思考题及其它(1)CSS的基本作用是什么?(2)CSS中元素显示定义之间有嵌套关系吗?实验五 可扩展样式单语言XSL实验学时:2实验类型:设计一、实验目的掌握使用XSL显示XML文件的基本方法二、实验条件配置有windows记事本、写字板 或 XMLSpy 开发环境的计算机设备。三、实验原理及相关知识(1)XSL实际包含三方面的内容:XSLT,XPath以及XSL格式化对
40、象(2)XSLT中模板的定义(3)XPath对XML文件片段进行查找、定位(4)格式化对象将XSL转换结果进行显示四、实验内容及步骤1、对以下“booklist.xml”进行XSL定义(设XSL文件名为“booklist.xsl”)<?xml version="1.0" encoding="GB2312"?><Booklist> <Book> <BookID>000001</BookID> <BookType>计算机</BookType> <BookName>
41、算法与数据结构</BookName> <Auth>严蔚敏 陈文博</Auth> <Publisher>清华大学出版社</Publisher> <Price>24</Price> <PubDate>2002-1-1</PubDate> <Quantity>10</Quantity> </Book> <Book> <BookID>000002</BookID> <BookType>计算机</BookTy
42、pe> <BookName>软件工程导轮</BookName> <Auth>张海藩</Auth> <Publisher>清华大学出版社</Publisher> <Price>5.4</Price> <PubDate>1987-6-1</PubDate> <Quantity>5</Quantity> </Book> <Book> <BookID>000003</BookID> <BookType
43、>计算机</BookType> <BookName>XML/JSP网页编程教材</BookName> <Auth>吴艾</Auth> <Publisher>北京希望电子出版社</Publisher> <Price>46</Price> <PubDate>2001-7-1</PubDate> <Quantity>15</Quantity> </Book> <Book> <BookID>000012&l
44、t;/BookID> <BookType>工具</BookType> <BookName>汉语成语字典</BookName> <Auth>李一华 吕德申</Auth> <Publisher>四川辞书出版社</Publisher> <Price>12</Price> <PubDate>1992-1-1</PubDate> <Quantity>10</Quantity> </Book> <Book> &
45、lt;BookID>000016</BookID> <BookType>机械</BookType> <BookName>机电控制工程</BookName> <Auth>高钟毓 王永梁</Auth> <Publisher>清华大学出版社</Publisher> <Price>19.8</Price> <PubDate>1994-9-1</PubDate> <Quantity>19</Quantity> </
46、Book> <Book> <BookID>000018</BookID> <BookType>工具</BookType> <BookName>英华大字典</BookName> <Auth>郑易里</Auth> <Publisher>商务印书馆</Publisher> <Price>18.5</Price> <PubDate>1984-11-1</PubDate> <Quantity>2</Qu
47、antity> </Book></Booklist>(1)书写XSL定义头部<?xml version="1.0" encoding="GB2312"?>(3)编写根节点匹配模板(注意xsl:stylesheet元素是必须要的)<xsl:stylesheet version="1.0" xmlns:xsl="/1999/XSL/Transform"> <xsl:template match="/">
48、 <html> <body> <table border="2" style="position:absolute;top:30px;left:30px;font:15px"> <tr> <td style="text-align:center">BookID</td> <td style="text-align:center">BookType</td> <td style="text-align:ce
49、nter">BookName</td> <td style="text-align:center">Auth</td> <td style="text-align:center">Publisher</td> <td style="text-align:center">Price</td> <td style="text-align:center">PubDate</td> <td st
50、yle="text-align:center">Quantity</td> </tr> </table> </body> </html> </xsl:template></xsl:stylesheet> (4)编写XPath节点booklist/book的匹配模板(添加在处)<xsl:for-each select="Booklist/Book"> <tr> <td style="text-align:center"
51、><xsl:value-of select="BookID"/></td> <td style="text-align:center"><xsl:value-of select="BookType"/></td> <td style="text-align:center"><xsl:value-of select="BookName"/></td> <td style="text
52、-align:center"><xsl:value-of select="Auth"/></td> <td style="text-align:center"><xsl:value-of select="Publisher"/></td> <td style="text-align:center"><xsl:value-of select="Price"/></td> <td s
53、tyle="text-align:center"><xsl:value-of select="PubDate"/></td> <td style="text-align:center"><xsl:value-of select="Quantity"/></td> </tr> </xsl:for-each> (5)在IE中打开带有XSL定义的“booklist.xml”,观察文件显示结果(带XSL定义的XML文件头部如下所示)。
54、 <?xml version="1.0" encoding="GB2312"?><?xml-stylesheet type="text/xsl" href="booklist.xsl"?> (6)修改上述代码,不用<xsl:for-each>语句实现相同的显示结果。(7)根据“booklist.xml”,编写“bookinfoquery.xsl”,要求能够以表格方式输出BookName的值是以“算法”开头的图书的所有信息。提示:判断BookName元素的值是否以算法开头可以用st
55、arts-with函数,如下:starts-with(BookName,'算法')2、下面是一个关于个人简历的XML文档resume.xml,请编写XSLT文档将其转换成HTML格式,以表格的方式显示相关数据,要求HTML页面设计尽量合理美观。<?xml version="1.0" encoding="UTF-8"?><个人简历> <求职目标> <职位>软件开发工程师</职位> <公司>伟豪软件工程</公司> </求职目标> <个人信息>
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 《水电厂经济运行系统设计及遗传算法应用研究》
- 《食品包装设计的趣味性创意研究》
- 《四川省绿色金融发展水平对产业结构升级的影响研究》
- 《冠心病合并心力衰竭患者血清CA125水平及意义》
- 《LncRNA LINC00265通过miR-4855p-IRF2轴诱导细胞自噬抑制AML细胞凋亡》
- 《跨国公司国际避税问题研究》
- 2024年排水工程合同
- 绿城物业增值服务品质提升方案
- 2024-2030年稀土原料公司技术改造及扩产项目可行性研究报告
- 2024年新型建筑劳务分包合同
- 检测公司检验检测工作控制程序
- 社工机构项目管理制度
- 充电桩整体解决方案PPT幻灯片(PPT 27页)
- 物业服务集团全员品质督导策划方案
- 建筑设计基础(ppt)课件
- 半导体芯片项目商业计划书范文参考
- 邯郸市政府采购办事指南
- 城市初期雨水污染治理
- 在护林员培训班上的讲话护林员会议讲话稿.doc
- 材料科学基础-第7章-三元相图
- (完整word版)高频变压器的设计
评论
0/150
提交评论