元素XML基础及实践开发教程(唐琳-主编)习题答案

xml教程  时间:2021-03-15  阅读:()

习题1答案

1.XML参考答案

<?xmlversion=” 1. 0” encoding=” gb2312” ?><poem>

<title>静夜思</title>

<author>李白</author>

<content>

<line>床前明月光</line>

<line>疑是地上霜</line>

<line>举头望明月</line>

<line>低头思故乡</line>

</content>

</poem>

2.判断下列元素的内容是否合法

<data>&</data> 错

<data>/</data> 对

<data>/></data>对

<data><</data> 错

<data>] ]></data> 错

3. //错误元素中不允许使用] ]>

4. <?xmlversion="1 . 0"encoding="UTF-8"?>

<teams>

<team>

<teamid>1</teamid>

<teamname>北京xx</teamname>

</team>

<team>

<teamid>2</teamid>

<teamname>大连yy</teamname>

</team>

<team>

<teamid>3</teamid>

<teamname>上海zz</teamname>

</team>

</teams>

5.XML文件的分类

无效的XML文档、格式良好的XML文档、有效的XML文档

6.XML文件的逻辑构成 并简述各部分内容

逻辑构成包括 1 XML必要声明2 DTD声明 3 P I(处理指令) 4元素5注释

1)XML必要声明

语法 <??>

位置必须位于第一行

可以包含的属性及含义version必须的XML版本1.0| 1. 1encoding可选的编码方式standalone可选的XML文档是否独立yes|no2)DTD声明

语法 <!DOCTYPE. . . . >

内置的DTD声明

1)PI

语法 <??>

位置通常位于第一个元素之前

如果需要使用的时候给出否则不写

PIvsxml必要声明的相同点和不同点

(1)位置

(2出现次数

(3作用

4)注释

语法 <!---->

需要注意的问题

1不能位于必要声明之前

2不能嵌套在标记中

3本身不能嵌套

4中间内容不能出现--

5不能以--->

5)元素

分类空元素、带属性的、带内容的、 带内容且带属性的

习题2答案

1.分为3种方式

1 内部DTD

<!DOCTYPE根元素名称[

元素描述

]>

2外部DTD:外部DTD的引用须事先已有一个dtd文件将DTD的约束写到文件中 然后在XML文档中按以下语法格式添加

<!DOCTYPE(根元素名称)SYSTEM “外部DTD的URL地址” >

SYSTEM关键字表示文档使用的是私有DTD文件 “外部DTD文件的URI”可以是相对URI或者绝对URI相对URI是相对于文档类型声明所在文档的位置。 “外部DTD文件的URI”这部分也被称为系统标识符systemidentifier 。

3公用DTD:公用DTD与外部DTD类似但是该DTD引用公用的DTD的语法格式如下<!DOCTYPE(根元素名称)PUBLIC “DTD的标识名” “公用DTD的URL地址” >

2.DTD划分的元素类型及其含义

1. <!ENTITYmedium"中等">&big;

5. <?xmlversion="1. 0"encoding="UTF-8"?>

<!DOCTYPETVSCHEDULE[

<!ELEMENTTVSCHEDULE(CHANNEL*)>

<!ELEMENTCHANNEL(BANNER,DAY+)>

<!ELEMENTBANNER(#PCDATA)>

<!ELEMENTDAY(DATE,HOLIDAY?,PROGRAMSLOT?)>

<!ELEMENTDATE(#PCDATA)>

<!ELEMENTHOLIDAY(#PCDATA)>

<!ELEMENTPROGRAMSLOT(TIME,TITLE,DESCRIPTION?)>

<!ELEMENTTIME(#PCDATA)>

<!ELEMENTTITLE(#PCDATA)>

<!ELEMENTDESCRIPTION(#PCDATA)>

<!ATTLISTTVSCHEDULENAMECDATA#IMPLIED>

<!ATTLISTCHANNELCHANCDATA#REQUIRED>

<!ATTLISTPROGRAMSLOTVTRCDATA#IMPLIED>

<!ATTLISTTITLE

RATINGCDATA#I MPL I ED

LANGUAGECDATA#I MPL I ED>

<!ENTITYcopyright"XXXXXXX">

]>

<TVSCHEDULENAME="name">

<CHANNELCHAN="01">

<BANNER>BANNERContent</BANNER>

<DAY><DATE>1990-10-10</DATE><HOLIDAY>11</HOLIDAY></DAY></CHANNEL>

<CHANNELCHAN="02">

<BANNER>1 1 1</BANNER>

<DAY><DATE>1990-10-10</DATE>

<PROGRAMSLOTVTR="net">

<TIME>12:00</TIME>

<TITLERATING="rat"LANGUAGE="zh">titlename</TITLE></PROGRAMSLOT></DAY>

<DAY><DATE>1990-10-10</DATE><HOLIDAY>11</HOLIDAY><PROGRAMSLOT>

<TIME>12:00</TIME>

<TITLE>titlename</TITLE>

<DESCRIPTION>&copyright;</DESCRIPTION>

</PROGRAMSLOT></DAY>

</CHANNEL>

</TVSCHEDULE>

6.答案<?xmlversion="1. 0"encoding="UTF-8"?>

<!DOCTYPECATALOG[

<!ENTITYAUTHOR"JohnDoe">

<!ENTITYCOMPANY"JDPowerTool s, Inc. ">

<!ENTITYEMAIL"j d@j d-too l s. com">

<!ELEMENTCATALOG(PRODUCT+)>

<!ELEMENTPRODUCT

(SPECIFICATIONS+,OPTIONS?,PRICE+,NOTES?)>

<!ATTLISTPRODUCT

NAMECDATA#I MPL I ED

CATEGORY(HandTool |Table |Shop-Professional) "HandTool"

PARTNUMCDATA#I MPL I ED

PLANT(Pittsburgh|Milwaukee|Chicago) "Chicago"

INVENTORY(InStock|Backordered|Discontinued) "InStock">

<!ELEMENTSPECIFICATIONS(#PCDATA)>

<!ATTLISTSPECIFICATIONS

WEIGHTCDATA#IMPL I ED

POWERCDATA#IMPL I ED>

<!ELEMENTOPTIONS(#PCDATA)>

<!ATTLISTOPTIONS

FINISH(Metal |Polished|Matte) "Matte"

ADAPTER(Included|Optional |NotApplicable) "Included"

CASE(HardShell |Soft |NotApplicable) "HardShell">

<!ELEMENTPRICE(#PCDATA)>

<!ATTLISTPRICE

MSRPCDATA#IMPLIED

WHOLESALECDATA#IMPLIED

STREETCDATA#IMPLIED

SHIPPINGCDATA#IMPL IED>

<!ELEMENTNOTES(#PCDATA)>

]>

<CATALOG>

<PRODUCTNAME="sss"CATEGORY="Tabl e"PARTNUM="xxx"PLANT="Mi lwaukee"INVENTORY="Backordered">

<SPECIFICATIONSWEIGHT="100"POWER="eee">&COMPANY;</SPECIFICATIONS><OPTIONS>ddd</OPTIONS>

<PRICEMSRP="ss"SHIPPING="ss"STREET="ss"

WHOLESALE="eee">ddd</PRICE>

<NOTES></NOTES>

</PRODUCT>

<PRODUCT>

<SPECIFICATIONS></SPECIFICATIONS>

<PRICE></PRICE>

</PRODUCT>

</CATALOG>

习题3答案

1. <?xmlversion="1. 0"encoding="UTF-8"?>

<!DOCTYPEclass[

<!ELEMENTclass(aa:major, students)*>

<!ELEMENTaa:major(aa:name)*>

<!ELEMENTaa:name(#PCDATA)>

<!ELEMENTstudents(bb: student)*>

<!ELEMENTbb: student (bb:name+,bb:age+)>

<!ELEMENTbb:name(#PCDATA)>

<!ELEMENTbb:age(#PCDATA)>

<!ATTLISTclassxmlns:aaCDATA#REQUIREDxmlns:bbCDATA#REQUIREDxmlnsCDATA#REQU I RED>

<!ATTLISTbb: studentsnCDATA#REQUI RED>

]>

<classxmlns:aa="http://www. dlut. edu. cn/xml/major"xmlns :bb="http://www. dlut. edu. cn/xml/student"xmlns="http://www. dlut. edu. cn/xml">

<aa:major>

<aa:name>软件工程</aa:name>

</aa:major>

<students>

<bb:studentsn="01">

<bb:name>张三

</bb:name><bb:age>18</bb

:age>

</bb:student>

<bb:studentsn="02">

<bb:name>李四

</bb:name><bb:age>120</bb:age>

</bb:student>

</students>

</class>

2. <?xmlversion="1. 0"encoding="UTF-8"?>

<!DOCTYPElibrary[

<!ELEMENTlibrary(books, records)*>

<!ELEMENTbooks(book*)>

<!ELEMENTbook(#PCDATA)>

<!ATTLISTbookaa:booki dCDATA#REQUIRED>

<!ELEMENTrecords(i tem*)>

<!ELEMENTitem(dat e+,per son+)>

<!ELEMENTdate(#PCDATA)>

<!ELEMENTperson(#PCDATA)>

<!ATTLISTpersonbb:nameCDATA#REQUIRED>

<!ATTLISTpersonborrowedCDATA#REQUIRED>

<!ATTLISTlibraryxmlns:aaCDATA#REQUIREDxmlns:bbCDATA#REQUIRED>

]>

<libraryxmlns:aa="http://www. dlut. edu. cn/xml/book"xmlns :bb="http://www. dlut. edu. cn/xml/record">

<books>

<bookaa:bookid="b-1-1">XML详解</book>

<bookaa:bookid="b-1-2">Servlet从入门到精通

</book><bookaa:bookid="b-1-3">JSP实例编程</book></books>

<records>

<item>

<date>2012-08-01</date>

<personbb:name="张三"borrowed="b-1-1b-1-

2"/></item>

<item>

<date>2012-08-02</date>

<personbb:name="李四"borrowed="b-1-1b-1-

3"/></item>

</records>

</library>

习题4答案

1.

<?xmlversion="1. 0"encoding="UTF-8"?>

<xs:schemaxmlns:xs="http://www.w3. org/2001/XMLSchema"elementFormDefault="qualified"attributeFormDefault="unqualified"><xs:elementname="学生名册">

<xs:complexType>

<xs:sequenceminOccurs="1"maxOccurs="unbounded">

<xs:elementname="学生"type="studenttype"/></xs:sequence>

</xs:complexType>

</xs:element>

<xs:complexTypename="studenttype">

<xs:sequence>

<xs:elementname="姓名"type="xs: string"/>

<xs:elementname="性别">

<xs:simpleType>

<xs:restrictionbase="xs: string">

<xs:enumerationvalue="男"/>

<xs:enumerationvalue="女"/>

</xs:restriction>

</xs:simpleType>

</xs:element>

<xs:elementname="年龄">

<xs:simpleType>

<xs:restrictionbase="xs: integer">

<xs:minExclusivevalue="0"/>

<xs:maxExclusivevalue="100"/>

</xs:restriction>

</xs:simpleType>

</xs:element>

</xs:sequence>

<xs:attributename="学号"type="xs: integer"/>

</xs:complexType>

</xs:schema>

2. <?xmlversion="1. 0"encoding="UTF-8"?>

<xs:schemaxmlns:xs="http://www.w3. org/2001/XMLSchema"elementFormDefault="qualified"attributeFormDefault="unqualified"><xs:simpleTypename="bookIDType">

<xs:restrictionbase="xs: string">

<xs:patternvalue="b-\d{1}-\d{1} "/>

</xs:restriction>

</xs:simpleType>

<xs:elementname="book">

<xs:complexType>

<xs:simpleContent>

<xs:extensionbase="xs: string">

<xs:attributename="bookid"type="bookIDType">

</xs:attribute>

</xs:extension>

</xs: simpleContent>

</xs:complexType>

</xs:element>

<xs:elementname="books">

<xs:complexType>

<xs:sequencemaxOccurs="unbounded">

<xs:elementref="book"></xs:element>

</xs:sequence>

</xs:complexType>

</xs:element>

<xs:elementname="person"nillable="true">

<xs:complexType>

<xs:simpleContent>

<xs:extensionbase="xs: string">

<xs:attributename="name"type="xs: string">

</xs:attribute>

<xs:attributename="borrowed">

<xs:simpleType>

<xs: listitemType="bookIDType">

</xs: list>

</xs:simpleType>

</xs:attribute>

</xs:extension>

</xs: simpleContent>

</xs:complexType>

</xs:element>

<xs:elementname="item">

<xs:complexType>

<xs:sequence>

<xs:elementname="date"type="xs:date"></xs:element><xs:elementref="person"></xs:element>

</xs:sequence>

</xs:complexType>

</xs:element>

<xs:elementname="records">

LiCloud:香港CMI/香港CN2+BGP服务器,30Mbps,$39.99/月;香港KVM VPS仅$6.99/月

licloud怎么样?licloud目前提供香港cmi服务器及香港CN2+BGP服务器/E3-1230v2/16GB内存/240GB SSD硬盘/不限流量/30Mbps带宽,$39.99/月。licloud 成立於2021年,是香港LiCloud Limited(CR No.3013909)旗下的品牌,主要提供香港kvm vps,分为精简网络和高级网络A、高级网络B,现在精简网络和高级网络A。现在...

georgedatacenter39美元/月$20/年/洛杉矶独立服务器美国VPS/可选洛杉矶/芝加哥/纽约/达拉斯机房/

georgedatacenter这次其实是两个促销,一是促销一款特价洛杉矶E3-1220 V5独服,性价比其实最高;另外还促销三款特价vps,georgedatacenter是一家成立于2019年的美国VPS商家,主营美国洛杉矶、芝加哥、达拉斯、新泽西、西雅图机房的VPS、邮件服务器和托管独立服务器业务。georgedatacenter的VPS采用KVM和VMware虚拟化,可以选择windows...

legionbox:美国、德国和瑞士独立服务器,E5/16GB/1Gbps月流量10TB起/$69/月起

legionbox怎么样?legionbox是一家来自于澳大利亚的主机销售商,成立时间在2014年,属于比较老牌商家。主要提供VPS和独立服务器产品,数据中心包括美国洛杉矶、瑞士、德国和俄罗斯。其中VPS采用KVM和Xen架构虚拟技术,硬盘分机械硬盘和固态硬盘,系统支持Windows。当前商家有几款大硬盘的独立服务器,可选美国、德国和瑞士机房,有兴趣的可以看一下,付款方式有PAYPAL、BTC等。...

xml教程为你推荐
怎么查询商标手机上能查询商标吗?怎么查?百花百游“百花竟放贺阳春 万物从今尽转新 末数莫言穷运至 不知否极泰来临”是什么意思啊?mole.61.com摩尔大陆?????ip查询器查看自己IP的指令sesehu.comwww.hu338.com 怎么看不到啊www.idanmu.com腾讯有qqsk.zik.mu这个网站吗?机器蜘蛛有谁知道猎人的机械蜘蛛在哪捉的铂金血痕“斑斑的血痕”是什么意思?夏琦薇赞夏琦薇的人有多少?www.stockstar.com股票分析软件哪个好用?用过的介绍一些
国外域名注册 域名估价 查询域名 美国域名 cybermonday 本网站服务器在美国维护 linode日本 新加坡服务器 韩国俄罗斯 ix主机 网络星期一 外国空间 服务器怎么绑定域名 php空间申请 帽子云 什么是刀片服务器 国外免费全能空间 宁波服务器 789电视 爱奇艺vip免费领取 更多