实验五 XML文档设计
- 格式:doc
- 大小:260.50 KB
- 文档页数:4
import java.util.*;import javax.xml.transform.*;import javax.xml.transform.stream.*;import javax.xml.transform.dom.*;public class jia{public static void main(String args[]){Scanner reader=new Scanner(System.in);System.out.println("输入年:");String y=reader.nextLine();System.out.println("输入月:");String m=reader.nextLine();System.out.println("输入日:");String d=reader.nextLine(); //从键盘输入年、月、日的值boolean flg=false;//标志位,反馈匹配信息try{DocumentBuilderFactory factory=DocumentBuilderFactory.newInstance(); DocumentBuilder builder=factory.newDocumentBuilder();Document document=builder.parse(new File("jia.xml"));Element root=document.getDocumentElement(); //得到根节点String rooName=root.getNodeName();System.out.println("XML文件根结点的名称为:"+rooName);NodeList nodelist=document.getElementsByTagName("date");//得到date节点集合int size=nodelist.getLength(); //得到date节点集合的长度for(int i=0;i<size;i++){ //进入循环,实现对每个date元素的查询 Node node=nodelist.item(i);if(node.getNodeType()==Node.ELEMENT_NODE){Element elementNode=(Element)node;String idy=elementNode.getAttribute("year");String idm=elementNode.getAttribute("month");String idd=elementNode.getAttribute("day");//得到每个date元素中的时间值if(idy.equals(y)&&idm.equals(m)&&idd.equals(d)){//如果从键盘上输入的时间值与date元素的属性值相同,则进行如下操作flg=true;//匹配上时间值,把标志位置为真System.out.println(idy+"年"+idm+"月"+idd+"日");NodeList timenode=elementNode.getChildNodes();TotalM tt=new TotalM();//创建一个类的对象System.out.println("查询结果:");tt.Out(timenode);//调用Out方法,实现查询结果的输出功能System.out.println("需要修改请输入1,需要删除请输入2,不需任何操作请输入任意整数退出:");int test=reader.nextInt();//从键盘输入一个整数if(test==1){System.out.println("输入需要修改的时间:");Scanner reader1=new Scanner(System.in);String sj1=reader1.nextLine();//输入所要修改的时间System.out.println("修改结果:");tt.Upd(timenode,sj1); //调用Upd方法,实现对XML文档的修改 }else{if(test==2){System.out.println("输入需要删除的时间:");Scanner reader2=new Scanner(System.in);String sj2=reader2.nextLine();//输入所要删除的时间System.out.println("删除结果:");tt.Del(elementNode,sj2);//调用Del方法,实现对XML文档的删除}else{System.out.println("操作完成,退出!");}//如果不修改,不删除,则输出“操作完成,推出!”}}}}if(!flg){ System.out.println("今日无规划记录");}//如果匹配不到时间,标志位为假,则输出“今日无规划记录”TransformerFactory transFactory=TransformerFactory.newInstance();//创建一个TransformerFactory(转换工厂对象)Transformer transformer=transFactory.newTransformer();//创建一个Transformer对象(文件转换对象)DOMSource domSource=new DOMSource(document);//把要转换的Document对象封装到一个DOMSource类中File file=new File("jia.xml");FileOutputStream out=new FileOutputStream(file);StreamResult xmlResult=new StreamResult(out);//将转换得到的XML文件保存在StreamResult中transformer.transform(domSource,xmlResult);//把节点树转换为XML文件}catch(Exception e){System.out.println(e);}}}创建辅助类TotalM,下面是Out方法,通过tt对象调用实现结果的输出:public void Out(NodeList timenode){int size=timenode.getLength();//得到time节点集合的长度for(int k=0;k<size;k++){ //进入循环,实现对每个time节点的查询Node node=timenode.item(k);if(node.getNodeType()==Node.ELEMENT_NODE){Element elementNode=(Element)node;String timename=elementNode.getNodeName();String id=elementNode.getAttribute("t");String content=elementNode.getTextContent();System.out.println(timename+" "+id+" "+content+"\n");//得到time的节点名,属性值及内容,输出}}}下面是Upd方法,声明为public void Upd(NodeList timenode,String sj1),要注意参数String sj1的传递。
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.理解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 真的是博大精深,需要下一定的功夫去研究学习。
淮海工学院计算机工程学院实验报告书课程名: 《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期末作业实验报告实验名称: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>写就了七篇谈鲁迅的文字,好比是给此前教科书糟蹋得灰头土脸的鲁迅画了七张简净风流的素描。
在他那里,鲁迅并非一个词汇、概念或是什么说法,就是一个呆在上海,抽烟,爱看电影,爱买书的作家。
《XML技术及应用》实验报告学生姓名:学生学号:指导教师:实验成绩:一、实验内容:1、通过Java 编程实现对“通讯录”的XML 文档的解析,并把解析结果存到数据库的表中。
2、进一步实现相反的过程,即将数据库表的内容读出来,并将其转化为XML 文件存储起来。
二、XML文档代码Student.xml<?xml version="1.0" encoding="GB2312"?><StudentInfo><student><name>Jimmey</name><sex>男</sex><address>台湾台北</address><phone>011-2857</phone></student><student><name>华晨宇</name><sex>男</sex><address>湖北武汉</address><phone>1809210</phone></student><student><name>Victorian</name><sex>女</sex><address>上海</address><phone>725120</phone></student><student><name>尼坤</name><sex>男</sex><address>韩国首尔</address><phone>9218337</phone></student></StudentInfo>三、对student.xml进行解析1、配置Access数据库控制面板----系统和安全------管理工具-----数据源(ODBC)-----系统DSN-----添加Access驱动程序-----填写数据源名、路径等。
创建xml的实验步骤XML(可扩展标记语言)是一种用于存储和传输数据的通用标记语言。
它被广泛用于网页设计、数据交换和文档存储。
在本实验中,我们将学习如何创建XML文档。
以下是创建XML文档的实验步骤:1. 了解XML基础在开始创建XML文档之前,了解XML的基础知识是很重要的。
XML是一种标记语言,它使用嵌套的元素来表示数据。
每个元素都有一个开始标签和结束标签,以及一个可选的属性和文本内容。
例如,以下是一个简单的XML文档示例:```<book><title>Book Title</title><author>Author Name</author><price>10.99</price></book>```2. 创建一个新的文本编辑器或IDE为了创建XML文档,你需要一个文本编辑器或集成开发环境(IDE)。
有许多免费和付费的选项可供选择,如Notepad++、Sublime Text、Visual Studio Code 等。
选择一个适合你需求的编辑器,并安装任何必要的插件或扩展。
3. 创建一个新的XML文件在文本编辑器中创建一个新的文本文件。
将其命名为“example.xml”,并保存为XML格式。
这将在文件顶部创建一个XML声明:```<?xml version="1.0" encoding="UTF-8"?>```4. 编写XML元素和属性现在你可以开始编写XML元素和属性。
以下是一个简单的示例:```xml<?xml version="1.0" encoding="UTF-8"?><catalog><book><title>Book Title 1</title><author>Author 1</author><price>10.99</price></book><book><title>Book Title 2</title><author>Author 2</author><price>12.99</price></book></catalog>```5. 验证XML文档的语法在保存XML文件后,可以使用在线验证工具检查XML文档的语法是否正确。
XML实验指导书适用专业:软件技术执笔人:周辉奎南昌工学院信息学院编二〇一一年十二月目录实验项目一编写一个简单的XML文档 (1)实验项目二文档类型定义DTD的使用 (4)实验项目三 DTD实体的使用 (8)实验项目四 XML Schema的使用 (10)实验项目五 XML模式之间的调用 (14)实验项目六级联式样式表CSS的使用 (17)实验项目七可扩展样式表XSL的使用 (21)实验项目八基于条件进行格式化数据 (27)实验项目九 XML文档对象模型DTD的语法 (30)实验项目十 XML文档对象模型DTD的使用 (32)实验项目十一 XML综合应用 (33)实验项目一编写一个简单的XML文档一、实验目的和要求:(一)目的:1、掌握XML开发工具XMLEditPro 2.2软件的使用方法。
2、熟悉一个简单的XML文档的基本格式。
3、熟悉一个简单的XML文档的组成要素。
4、掌握XMLEditPro 2.2的基本使用方法。
(二)要求:1、认真做好实验前的各项准备工作,熟悉实验内容和机器操作流程。
2、遵守实验室规章制度和实验课堂教学纪律。
3、认真完成实验任务,填写实验报告。
4、熟悉XML开发工具XMLEditPro 2.2软件。
二、实验时数:2学时三、实验器材:安装有XML开发工具XMLEditPro 2.2软件的PC机一台。
四、实验内容或步骤:(一)内容:1、按下面要求编写一个简单的XML文档,并保存文件名为Room.xml,然后在IE中浏览。
酒店管理系统中,需要存储客房信息。
要求对于酒店的各部门(如客房部、办公室等)、客户都可以通过不同的系统或网络了解客房的有关信息,客房]信息数据应存储在独立于软件和硬件的数据格式中。
客房信息包括:客房编号、客房标准(房间类型)、客房位置、客房单价、备注。
步骤:源代码如下:<?xml version="1.0"?><!--information of the room library --><ROOMLIBRARY><ROOM ROOMNO="001"><TYPENAME>双人</TYPENAME><PLACE>朝南</PLACE><PRICE>100</PRICE><DESC>已预订</DESC></ROOM><ROOM ROOMNO="002"><TYPENAME>三人</TYPENAME><PLACE>朝北</PLACE><PRICE>150</PRICE><DESC>未预订</DESC></ROOM></ROOMLIBRARY>2、使用XMLEditPro 2.2或记事本等文本编辑器编辑如下XML文档,并保存文件名为code1_1.xml,然后在IE中浏览。
实验五XML文档设计一、实验目的1.掌握在XML SPY中创建XML文档的方法2.掌握在XML Spy中验证XML文件格式的正确性、有效性的方法3.了解并掌握XML DTD的定义方法及其用途4.了解并掌握DTD元素、属性、实体声明的基本语法5.了解并掌握XMLSpy中基于DTD的XML文件输入6.了解并掌握XML Schema的定义方法及其用途7.了解并掌握Schema的基本结构、数据类型、元素、属性的声明8.了解并掌握XMLSpy中基于Schema的XML文件输入9.掌握使用XSL显示XML文件的基本方法10.了解并掌握XML文档中使用CSS的引入式方法11.了解并掌握使用XSL显示XML文件的基本方法二、实验环境Windows操作系统,XML SPY,IE。
三、实验内容1. 在XMLSpy中输入如下XML文件,用IE打开观察一下效果。
2.创3.4.5.6.7.8.9.10.11.12.13.14.15.16.17.18.19.20.2.建一个格式良好的xml文档,存储学生成绩的信息,包括:学号number、姓名name、成绩score。
上机实现并在浏览器中进行查看。
3.分析下列XML实例,编写外部DTD文档,并进行验证。
<?xml versio n=”1.0” encoding=”gb2312”?><学生名册><学生学号=”A1”><姓名>张三</姓名><性别>男</性别><年龄>20</年龄></学生><学生学号=”A2”><姓名>李四</姓名><性别>女</性别><年龄>19</年龄></学生><学生学号=”A3”><姓名>王二</姓名><性别>男</性别><年龄>20</年龄></学生>4.分析下列DTD文档,上机编写有效的XML文档,并进行验证。
<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE NEWSPAPER[<!ELEMENT NEWSPAPER(ARTICLE+)><!ELEMENT ARTICLE(HEADLINE,BYLINE,LEAD,BODY,NOTES)><!ELEMENT HEADLINE (#PCDATA)><!ELEMENT BYLINE (#PCDATA)><!ELEMENT LEAD(#PCDATA)><!ELEMENT BODY(#PCDATA)><!ELEMENT NOTES(#PCDATA)><!ATTLIST ARTICLE AUTHOR CDATA #REQUIRED><!ATTLIST ARTICLE EDITOR CDATA #IMPLIED><!ATTLIST ARTICLE DATE CDATA #IMPLIED><!ATTLIST ARTICLE EDITION CDATA #IMPLIED><!ENTITY NEWSPAPER "Vervet Logic Times"><!ENTITY PUBLISHER "Vervet Logic Press"><!ENTITY COPYRIGHT "Copyright 1998 Vervet Logic Press">]>5.利用Schema定义XML文档(1)对以下“个人信息.xml”进行Schema定义(设Schema文件名为“个人信息.xsd”)<?xml version="1.0" encoding="UTF-8"?> <!-- 这是一个用XML描述的例子--> <bookcase xmlns:xsi="/2001/XMLSchema-instance" ><book type="教育"><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</zipcode><E-mail>yanmc@</E-mail></publishing-house></book></bookcase>(2)书写XML Schema定义头部<?xml version="1.0" encoding="UTF-8"?><xs:schema xmlns:xs="/2001/XMLSchema"><xs:annotation><xs:documentation> JinYanZhong XML File Schema Test </xs:documentation> </xs:annotation> [] </xs:schema>(3)定义bookcaseType类型(添加在[]处)<xs:element name="bookcase" type="bookcaseType"/><xs:attribute name="type"><xs:simpleType><xs:restriction base="xs:string"><xs:enumeration value="科技"/><xs:enumeration value="教育"/></xs:restriction></xs:simpleType></xs:attribute>(4)定义bookcase元素(紧随bookcaseType类型定义之后)<xs:complexType name="bookcaseType"><xs:sequence><xs:element name="book" type="bookType"/></xs:sequence></xs:complexType>(5)定义bookType元素类型(里面引用定义authorType, pub-houseType)<xs:complexType name="bookType"><xs:sequence><xs:element name="b-name" type="xs:string"/><xs:element name="author" type="authorType"/><xs:element name="price" type="xs:string"/><xs:element name="publishing-house" type="pub-houseType"/></xs:sequence> </xs:complexType>(6)定义authorType及pub-houseType元素类型<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"><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"/></xs:sequence></xs:complexType>(7)在XMLSpy中新创建一个基于“个人信息.xsd”的XML文件,体会该方法的方便快捷(8)在IE中打开带有Schema定义的“个人信息.xsd”,观察符合DTD定义及不符合Schema定义的XML文件显示6.利用CSS样式将上题中的XML文档内容在IE中显示出来。