xml第1次大作业
- 格式:doc
- 大小:71.50 KB
- 文档页数:3
淮海工学院计算机工程学院实验报告书课程名:《XML开发技术》题目:熟悉XML工具班级:*******学号:201*******姓名:***评语:成绩:指导教师:批阅时间:年月日一.实验目的(1)通过实验,了解XMP SPY的集成开发环境(2)通过实验,熟悉并掌握XML文档的良构性要求(5点要求)(3)能够编写一个良构的XML文档二.实验内容(1) 编写良构的XML文档orders.xml,来描述订单的相关信息。
(2) 编写良构的XML文档stuInfo.xml或teachInfo.xml,来描述学生/教师的信息。
(3)编写良构的XML文档poems.xml,描述唐诗300首的信息,请给出至少两首古诗的内容。
三.实验步骤(1)在网络没有联通的情况下,打开XMLSPY环境;(2)编写XML文档(不受DTD约束)(3)验证XML文档的良构性(Well-formed)四.实验结果第一题第二题第三题实验源码:1.<?xml version="1.0" encoding="GB2312"?><orders><order><customerID>c0500069</customerID><order_date>20050517</order_date><order_status>pending</order_status><items><item><bookID>001</bookID><quantity>10</quantity><item_status>pending</item_status> </item></items></order><order><customerID>c500701</customerID><order_date>20050712</order_date><order_status>pending</order_status><items><item><bookID>002</bookID><quantity>30</quantity><item_status>pending</item_status></item><item><bookID>003</bookID><quantity>20</quantity><item_status>pending</item_status></item></items></order></orders>2.<?xml version="1.0" encoding="UTF-8"?><students><student><stu_name>张三</stu_name><stu_sex>男</stu_sex><stu_age>20</stu_age><stu_class>软件111</stu_class><course><course_name>高数</course_name><course_teacher>王老师</course_teacher><course_score>74</course_score></course></student><student><stu_name>李红</stu_name><stu_sex>女</stu_sex><stu_age>21</stu_age><stu_class>网络111</stu_class><course><course_name>网络</course_name><course_teacher>张老师</course_teacher><course_score>85</course_score></course></student><student><stu_name>王五</stu_name><stu_sex>男</stu_sex><stu_age>20</stu_age><stu_class>软件112</stu_class><course><course_name>毛概</course_name><course_teacher>李老师</course_teacher><course_score>72</course_score></course></student></students>3.<?xml version="1.0" encoding="UTF-8"?><poems><poem><poem_name>凉州词</poem_name><poem_author>王翰</poem_author><content><paragraph>葡萄美酒夜光杯</paragraph><paragraph>欲饮琵琶马上催</paragraph><paragraph>醉卧沙场君莫笑</paragraph><paragraph>古来征战几人回</paragraph></content></poem><poem><poem_name>贾生</poem_name><poem_author>李商隐</poem_author><content><paragraph>宣室求贤访逐臣</paragraph><paragraph>贾生才调更无伦</paragraph><paragraph>可怜夜半虚前席</paragraph><paragraph>不问苍生问鬼神</paragraph></content></poem><poem><poem_name>早发白帝城</poem_name><poem_author>李白</poem_author><content><paragraph>朝辞白帝彩云间</paragraph><paragraph>千里江陵一日还</paragraph><paragraph>两岸猿声啼不住</paragraph><paragraph>轻舟已过万重山</paragraph></content></poem></poems>五.实验体会*********************************************************************** *************************************************************************** *************************************************************************** **。
《XML技术解析及应用》课程的课后作业(第1学期)本课程的主要教学内容:(1)XML技术:XML语法、DTD、XML Schema技术、XSL技术等(2)XML解析:SAX、DOM及JDom编程(3)XML应用:AJAX技术1.1.1第一次课程(9月3日)1、为什么会产生XML技术、XML的主要的应用是什么?(请用具体的应用示例来说明)2、请描述XML的标签的主要特性。
3、请描述XML和HTML的不同之处。
4、什么是Well-formed XML(良好格式的XML)?应该满足那些要求?请用具体的XML 文件的内容来加以说明。
5、什么是Valid XML(有效的XML)?应该满足那些要求?请用具体的XML文件的内容来加以说明1.1.2第二次课程(9月10日)1、什么是DTD?为什么要应用DTD?2、请为下面的XML文件的内容设计一个DTD文件<?xml version="1.0" encoding="GB2312" standalone="yes" ?><软件学院学生信息><学生信息性别="男"><姓名>张三</姓名><出生日期>1987/10/18</出生日期><专业>软件工程</专业><班级方向="J2EE软件开发">软件1班</班级></学生信息><学生信息性别="女"><姓名>李四</姓名><出生日期>1988/2/18</出生日期><专业>软件工程</专业><班级方向="数字媒体方向">软件2班</班级></学生信息></软件学院学生信息>3、请为下面的XML文档设计一个命名空间,并用命名空间对该文件进行重新定义<?xml version="1.0" encoding="GB2312" standalone="no"?><chapter><introdution>XML 技术与应用的课程介绍</introdution><chap_num>第一讲</chap_num><chap_title>XML 技术基础与语法</chap_title><part><part_num>I.</part_num><part_title>XML 技术概述</part_title><para_1>本段的内容:XML首先是一种标记语言而且是用来创造标记语言(比如HTML)的元语言;</para_1></part></chapter>4、请在自己的计算机中安装好本课程的开发环境Eclipse 3.2 + MyEclipse 5.2,并采用Eclipse工具来完成上面的作业。
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作为一种通用的数据描述语言,具有自我描述性、可扩展性和跨平台性的特点,被广泛应用于各个领域。
学号:1021201452873 姓名:张澔班级:10秋计算机网络管理《XML程序设计》第一次作业一、填空题1.XML的中文全称是(可扩展标记语言)。
2.一个XML文档最基本的构成包括:(XML声明)、处理指令和XML元素。
3.XML元素由(开始标记)、结束标记和两者之间的内容三个部分组成。
4.用形如“<学生/>”表示的标记称为(空)标记。
5.在XML文档中只有(一)个根元素,可以有(多)个子元素。
6.属性是元素的可选组成部分,它可以放在(开始)标记或(空)标记中,属性值必须用(引号)括起来。
7.(命名空间)是解决XML元素多义性和名字冲突问题的方案。
二、单选题1.下面(D )不是XML语言的特点。
A 自我描述B 可扩展C 跨平台D 修饰数据2.目前,浏览器所支持的XML版本是(A )。
A 1.0B 1.1C 2.0D 3.03.XML文档默认的编码方式是(D)。
A ASCIIB UnicodeC UTF-16D UTF-84.下列元素定义中正确的是( C )。
A <book></Book>B <BOOK></book>C <book></book>D <Book></bOOK>5.实体引用符'代表的是下列哪个特殊符号?(C )。
A <B >C …D “6.XML声明语句:<?xml version=”1.0”( B )=”UTF-8”?>。
A standaloneB encodingC encordingD cording7.统一资源标识符简称为( A )。
A URIB URLC UPID URN8.下面哪一个标记语言可以创建其他的标记语言(A)。
A XMLB XHTMLC HTMLD CML三、简答题1.编写一个XML声明语句,要求采用中文编码方式。
XML第一次作业_2注:1-2位学生为一组。
一、使用XML来设计最简单的公司网页,网页包含公司简介,产品,招聘信息,联系我们。
编写公司网页.xml文档和DTD(或Schema)。
Company.xml<?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet type="text/xsl" href="company.xsl"?><!DOCTYPE 公司 SYSTEM "company.dtd"><公司><介绍>奇虎360创立于2005年9月,是中国领先的互联网安全软件与互联网服务公司,曾先后获得过鼎晖创投、红杉资本、高原资本、红点投资、Matrix、IDG等风险投资商总额高达数千万美元的联合投资。
2011年3月30日奇虎360公司正式在纽约证券交易所挂牌交易,证券代码为“QIHU”。
</介绍><产品 no="a1"><名字>《360安全卫士》</名字><详解>拥有木马查杀、恶意软件清理、漏洞补丁修复、电脑全面体检等多种功能。
目前木马威胁之大已远超病毒,360安全卫士运用云安全技术,在杀木马、防盗号、保护网银和游戏的帐号密码安全、防止电脑变肉鸡等方面表现出色,被誉为“防范木马的第一选择”。
360安全卫士自身非常轻巧,同时还具备开机加速 360安全卫士、垃圾清理等多种系统优化功能,可大大加快电脑运行速度,内含的360软件管家还可帮助用户轻松下载、升级和强力卸载各种应用软件。
</详解></产品><产品 no="a2"><名字>《360安全浏览器》</名字><详解>360安全浏览器是和360安全卫士、360杀毒等软件等产品一同成为360安全中心的系列产品。
这里的system之后不一定要加的是。
Xml文件,也可以是。
Txt文件
解决方案:
以后出现这种问题,最好是重新敲一遍
解决方案:
Ip属性申明了是REQUIRED必须的,所以这下面不能没有ip
如果ip属性申明的是implied则说明此属性是可以有的也可以没有
这里也没有属性ip,是因为我们什么属性表的时候什么的是inplied
Fixed+缺省值
如果不写的话就是这样的
但是如果要想写的话,那么值也是上面的,不能修改,如果修改那么:
最后一种就是只有缺省值,没有#FIXED
这个如果想写的话,可以改变的哦
可以把多个属性放到一起
解决方案:
老问题,什么的是#required,就必须写,
解决方案:
这个ID是有命名规范的:
第一个字母必须是字母
解决方案:
ID属性必须是唯一的
解决方案:
如果属性设置成为IDREF类型的话,那么次属性的取值只能在本类型中的Id中取值,去的值一点要是一件存在的
上面的程序可以变相成
解决方案:
在属性的列表中必须要加上属性的属性值:
解决方案:
这个其实按理是可以的,可以同时出现两个属性的。
中间不能有其他的符号,要用空格来分隔。
XML 编程技术上机练习提交截止日期:2012年4月25日责任教师:刘毅⏹练习1:进入01_DTD目录,为census1.xml编写一个外部DTD文件,其文件名是census1.dtd,放在同一目录中。
对census1.dtd有如下额外要求:1)<person>元素employed属性的取值只能是fulltime或parttime,并且该属性是可选的2)<person>元素pid属性的类型是ID,该属性是必须的census1.xml的序言部分也要适当修改。
然后使用XMLSPY验证census1.xml。
测试完成时间50钟⏹练习2:进入XML 02_Schema目录,为census2.xml编写一个Schema文件,其文件名是census2.xsd,放在同一目录中。
对census2.xsd有如下额外要求:1)<census-record>元素taker属性的取值只能是1至9999。
2)<person>元素employed属性的取值只能是fulltime或parttime,并且该属性是可选的3)<person>元素pid属性是必须的4)<gender>元素的内容只能是female或malecensus2.xsd的序言部分也要适当修改。
然后使用XMLSPY验证census2.xml。
⏹练习3:(第七章 XSLT习题): 进入03_XSLT目录,编写一个XSLT程序,将Catalog.xml转换成XSL Output.html调试完成时间30钟⏹练习4:进入04_DOM目录,给定ch9_books.xml,试在testDOM.htm中用javascript编写DOM程序,使得单击testDOM.htm中的按钮后,能显示ch9_books.xml中每一层节点的类型、名称和值。
其输出结果如‘输出结果.txt’所示。
调试完成时间45钟⏹练习5: 进入05_SAX目录,给定Orders.xml,试用java编写SAX程序,该程序执行后能输出Orders.xml中各种股票的订购总数,具体输出形式为:股票代号=IBM;订购总数=250股票代号=MSFT;订购总数=600上述五个练习完成后,把源代码分别放入相应的目录中,然后把DTD目录、XML Schema目录、XSLT目录、DOM目录、SAX目录用winrar打包合成一个后缀是rar的文件,rar文件的命名规则是:学号_姓名.rar (例:906840105_孙悟空.rar),交给老师(riuyi@)。
XML考试系统⼤作业UML期末⼤作业考试系统项⽬:考试系统专业:软件测试成员:李斌 20107740423 组长(四班)郑雪丰 20107740471 组员(四班)任东洋 20107740443 组员(四班)项⽬情景:1. 管理员可以建⽴若⼲的⽼师和学⽣帐户;2. 每个⽼师登录后,可以出题,题⽬仅有选择题⼀种类型,且所有的题⽬都是单选题,⽼师录⼊题⽬的同时,还要录⼊正确答案,录⼊题⽬的过程中,⽼师随时可以按保存按钮保存,除了录⼊题⽬,还有录⼊该考试的开始时间,结束时间;3. 学⽣登录后,可以看到试卷的名称,但是没有到考试时间的时候,学⽣⽆法看到考卷内容;4. 到达考试时间后,学⽣点开考卷,可以看到考卷内容,进⾏答题,并且必须在考试结束以前提及考卷,否则系统不再接受该同学提交的试卷;5. 考试结束后,系统⾃动判分,按成绩⾼低排名;6. 试卷分析:出卷⽼师登录系统后,可以看到该试卷参考⼈数,平均分,各分数⼈数分布,每道题⽬回答的正确率;⼀、需求陈述:本考试系统主要提供的服务有:试题管理服务和在线考试管理服务以及⽤户管理服务(1)⽤户管理——负责对参加考试的学⽣以及参与出题⽼师建⽴账号(2)试题管理——负责考前提供考试所⽤的试题;(3)考试管理——负责整个考试过程的时间分配与控制,以及已提交试卷的管理与分析;考试系统——⽤户管理提供的服务如下:1、录⼊参加考试的学⽣信息在考前由管理员根据实际参加考试的学⽣信息创建并⽣成学⽣账号,以便学⽣正常参加考试;2、录⼊参加出题的⽼师信息在考前由管理员依据参加出题⽼师的基本信息创建并⽣成教师账号,以便于在考试之前各个教师能够顺利登陆考试系统,并完成出题⼯作;在考试后可以对学⽣成绩及试卷进⾏分析与统计考试系统——试题管理提供的服务如下:1、限定试题的类型与规格试题题⽬只能是选择题⼀种类型,并且所有的题⽬都是单选题;2、教师录⼊试题及相关要求教师登陆系统以后,可以录⼊试题及正确答案,同时还要录⼊该考试的开始时间及结束时间。
沈鸣XML大作业第一题是:xml代码(文件名:test.xml)和xml编译器截图和xml文件截图;第二题是:td文件(文件名:test.dtd)和dtd编译器截图;第三题是:证文件有效性的JA V A代码和证文件有效性的截图;第四题是:计算平均成绩的JAVA代码和计算平均成绩的截图;第五题是:树状结构图和树状结构图的软件截图;1、xml代码(文件名:test.xml)<?xml version="1.0" encoding="UTF-8" ?><!DOCTYPE 学生信息SYSTEM "test.dtd"><学生信息><班级信息><班级><共有信息><班级名称>12计应1</班级名称><专业>计算机应用</专业><类别>软件</类别></共有信息><学生><姓名>叮当</姓名><性别>女</性别><学号>12051111</学号><年龄>20</年龄><生源地>南京</生源地></学生><学生><姓名>沈美丽</姓名><性别>女</性别><学号>12052222</学号><年龄>23</年龄><生源地>徐州</生源地></学生><学生><姓名>朱大</姓名><性别>男</性别><学号>12053333</学号><年龄>23</年龄><生源地>姜堰</生源地></学生></班级><班级><共有信息><班级名称>12计应2</班级名称> <专业>计算机应用</专业><类别>软件</类别></共有信息><学生><姓名>王大锤</姓名><性别>男</性别><学号>12055555</学号><年龄>20</年龄><生源地>北京</生源地></学生><学生><姓名>李前进</姓名><性别>男</性别><学号>12056666</学号><年龄>20</年龄><生源地>泰州</生源地></学生><学生><姓名>朱淡定</姓名><性别>女</性别><学号>12057777</学号><年龄>22</年龄><生源地>苏州</生源地></学生></班级></班级信息><毕业信息><毕业><毕业时间>2015年</毕业时间> <所在班级>2</所在班级><毕业数量>40</毕业数量></毕业><毕业><毕业时间>2015年</毕业时间><所在班级>2</所在班级><毕业数量>42</毕业数量></毕业></毕业信息><辅导员><辅导员信息><辅导员1>陈红</辅导员1><联系方式>1122334455</联系方式><职位>老师</职位><管理班级>12计应一</管理班级></辅导员信息><辅导员信息><辅导员1>王一</辅导员1><联系方式>1122335566</联系方式><职位>老师</职位><管理班级>12计应二</管理班级> </辅导员信息></辅导员></学生信息>xml编译器截图:xml文件截图:2、dtd文件(文件名:test.dtd)<!ELEMENT 学生信息(班级信息,毕业信息,辅导员)><!ELEMENT 班级信息(班级*)><!ELEMENT 班级(共有信息,学生*)><!ELEMENT 共有信息(班级名称,专业,类别)><!ELEMENT 学生(姓名,性别,学号,年龄,生源地)><!ELEMENT 毕业信息(毕业*)><!ELEMENT 毕业(毕业时间,所在班级,毕业数量)><!ELEMENT 辅导员(辅导员信息*)><!ELEMENT 辅导员信息(辅导员1,联系方式,职位,管理班级)> <!ELEMENT 班级名称(#PCDA TA)><!ELEMENT 专业(#PCDATA)><!ELEMENT 类别(#PCDATA)><!ELEMENT 姓名(#PCDATA)><!ELEMENT 性别(#PCDATA)><!ELEMENT 学号(#PCDATA)><!ELEMENT 年龄(#PCDATA)><!ELEMENT 生源地(#PCDA TA)><!ELEMENT 毕业时间(#PCDA TA)><!ELEMENT 所在班级(#PCDA TA)><!ELEMENT 毕业数量(#PCDA TA)><!ELEMENT 管理班级(#PCDA TA)><!ELEMENT 辅导员1 (#PCDATA)><!ELEMENT 联系方式(#PCDA TA)><!ELEMENT 职位(#PCDATA)>dtd编译器截图:3、验证文件有效性的JA V A代码:import javax.xml.parsers.*;import java.io.*;import org.w3c.dom.*;import java.util.Scanner;import org.xml.sax.helpers.DefaultHandler;import org.xml.sax.*;public class aa{public static void main(String args[]){String fileName=null;try { Scanner reader=new Scanner(System.in);System.out.print("请输入要验证有效性的XML文件的名字:");fileName=reader.nextLine();DocumentBuilderFactory factory=DocumentBuilderFactory.newInstance(); factory.setValidating(true);DocumentBuilder builder= factory.newDocumentBuilder();MyHandler handler=new MyHandler();builder.setErrorHandler(handler);Document b=builder.parse(new File(fileName)) ;if(handler.errorMessage==null)System.out.println(fileName+"文件是有效的");elseSystem.out.println(fileName+"文件不是有效的");}catch(Exception e){System.out.println(e);}}}class MyHandler extends DefaultHandler{String errorMessage=null;public void error(SAXParseException e) throws SAXException{errorMessage=e.getMessage();System.out.println("一般错误:"+errorMessage);}public void fatalError(SAXParseException e) throws SAXException{ errorMessage=e.getMessage();System.out.println("致命错误:"+errorMessage);}}验证文件有效性的截图:4、计算平均成绩的JAVA代码:import org.w3c.dom.*;import javax.xml.parsers.*;import java.io.*;public class testjava {public static void main(String[] args) {// TODO Auto-generated method stubGiveData give = new GiveData();try{DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();DocumentBuilder domParse = factory.newDocumentBuilder();Document document = domParse.parse(new File("test.xml"));//读取xml文件NodeList nodeList = document.getChildNodes();//生成节点链表give.output(nodeList);double average = give.sum / give.count;System.out.println("平均入学年龄是:" + average+ "岁.");//输出平均年龄}catch(Exception ex){ex.printStackTrace();}}}class GiveData{double sum = 0.0;int count = 0;/****/public void output (NodeList nodelist){int size = nodelist.getLength();for(int k = 0;k<size;k++){Node node = nodelist.item(k);if(node.getNodeType() == Node.TEXT_NODE){Text textNode = (Text)node;String content = textNode.getWholeText();System.out.print(content);Element parent =(Element)textNode.getParentNode();boolean boo = ("年龄".equals(parent.getNodeName()));if(boo== true){content = textNode.getWholeText();sum += Double.parseDouble(content.trim());count += 1;}}if(node.getNodeType()== Node.ELEMENT_NODE){Element elementNode = (Element)node;String name = elementNode.getNodeName();System.out.print(name + ":");NodeList nodes = elementNode.getChildNodes();output(nodes);}}}}计算平均成绩的截图:5、树状结构图:树状结构图的软件截图:。
实验二:XML语法实践
1学时
2学时
2实验目的与要求
2.1通过实验,使学生掌握XML的基本语法。
2.2要求学生根据XML语法规范,能够改正错误的XML文件,
2.3通过实验,使学生巩固XML的基本语法,掌握实体、预定义实体、字符引用、
CDATA段的概念、功能及使用方法
2.4编写语法正确的XML文件。
3实验环境
XML SPY
4准备工作
准备好实验环境;准备练习。
5实验内容
实验1.改正语法错误并为下面的XML文档画出树形结构。
<书架>
<Book>
<书名>How to Purse Happiness</书名>
<作者>
<名>Adair</名>
<姓>Lana</姓>
</作者>
<price >8.99</price >
</Book>
<Book>
<书名>The Confidence Man</书名>
<作者>
<名>Herman</名>
<姓>Melville</姓>
</作者>
<price>11.99</price>
</Book>
</书架>
实验2.教材p41第3题
实验3.编写个人信息的XML文件
用XML文件表达个人基本信息,包括学号、姓名、性别、年龄、专业、班级、家庭住址、个人爱好等。
要求所有表达符合XML语法规范。
实验4.改错
<?xml version="1.0" encoding="UTF-8"?>
<路标>
<标记1>&你好&</标记1>
<标记2>"注意观察"</标记2>
<标记3>限高30米</标记3>
</路标>
实验5.改错
<?xml version="1.0" encoding="UTF-8"?>
<性价比调查>
<价格>产品1<产品2<产品3</价格>
<性价比>产品1>产品2>产品3></性价比>
</性价比调查>
实验6.用XML文件表达下列数据:
6实验步骤
6.1准备好环境。
6.2熟记XML语法,弄清标记、元素、属性等概念。
6.3根据语法纠错。
6.4编写XML文件。
点击check well-formedness按钮(或F7)验证文件语法。
6.5继续修正错误直至成功。
7实验要求
7.1提交运行成功的源代码
7.2运行成功的截图
8思考题。