XML基础及实践开发教程(唐琳-主编)习题答案Word格式.doc
《XML基础及实践开发教程(唐琳-主编)习题答案Word格式.doc》由会员分享,可在线阅读,更多相关《XML基础及实践开发教程(唐琳-主编)习题答案Word格式.doc(28页珍藏版)》请在冰豆网上搜索。
对
错
]]>
错
3.//错误元素中不允许使用]]>
4.<
xmlversion="
1.0"
encoding="
UTF-8"
teams>
<
team>
<
teamid>
1<
/teamid>
teamname>
北京xx<
/teamname>
/team>
2<
大连yy<
3<
上海zz<
/teams>
5.XML文件的分类:
无效的XML文档、格式良好的XML文档、有效的XML文档
6.XML文件的逻辑构成,并简述各部分内容
逻辑构成包括:
(1)XML必要声明
(2)DTD声明(3)PI(处理指令)(4)元素(5)注释
1)XML必要声明
语法:
?
位置:
必须位于第一行
可以包含的属性及含义
version必须的XML版本1.0|1.1
encoding可选的编码方式
standalone可选的XML文档是否独立yes|no
2)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划分的元素类型及其含义
元素类型
含义
EMPTY
空元素,即该元素不包括任何内容
(#PCDATA)
字符串类型,即该元素内容中可以为任意字符串
ANY
任意类型,即该元素内容任意无限制
子元素
子元素类型,即该元素嵌套子元素
混合类型
混合内容类型,即该元素内部即包含字符串又包含子元素
3.属性类型及其含义
属性类型
说明
CDATA
单纯的字符数据,大部分属性都设置为该类型
ID
具有唯一性的属性值,需要注意的是该属性值必须以字母开头
IDREF
引用其它ID属性的值,该值必须在其它ID属性中存在
IDREFS
引用多个其它ID属性的值,中间使用空格间隔
ENTITY
未解析的外部实体类型,
ENTITIES
多个未解析的外部实体类型,中间使用空格间隔
NMTOKEN
是NameToken,就是关键字的名字。
可以包含字母、数字、[.]、[-]、[_]、[:
]组合的名字
NMTOKENS
多个NMTOKEN,中间使用空格间隔
NOTATION
标记名称
Enumerated
枚举类型的属性,只能从已有的属性中选取,不能填入新项目
1.<
ENTITYmedium"
中等"
&
big;
5.<
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#IMPLIED
LANGUAGECDATA#IMPLIED>
ENTITYcopyright"
XXXXXXX"
TVSCHEDULENAME="
name"
CHANNELCHAN="
01"
BANNER>
BANNERContent<
/BANNER>
DAY>
DATE>
1990-10-10<
/DATE>
HOLIDAY>
11<
/HOLIDAY>
/DAY>
/CHANNEL>
CHANNELCHAN="
02"
111<
<
PROGRAMSLOTVTR="
net"
<
TIME>
12:
00<
/TIME>
TITLERATING="
rat"
LANGUAGE="
zh"
titlename<
/TITLE>
/PROGRAMSLOT>
PROGRAMSLOT>
TITLE>
DESCRIPTION>
copyright;
/DESCRIPTION>
/TVSCHEDULE>
6.答案<
DOCTYPECATALOG[
ENTITYAUTHOR"
JohnDoe"
ENTITYCOMPANY"
JDPowerTools,Inc."
ENTITYEMAIL"
jd@jd-"
ELEMENTCATALOG(PRODUCT+)>
ELEMENTPRODUCT
(SPECIFICATIONS+,OPTIONS?
PRICE+,NOTES?
ATTLISTPRODUCT
NAMECDATA#IMPLIED
CATEGORY(HandTool|Table|Shop-Professional)"
HandTool"
PARTNUMCDATA#IMPLIED
PLANT(Pittsburgh|Milwaukee|Chicago)"
Chicago"
INVENTORY(InStock|Backordered|Discontinued)"
InStock"
ELEMENTSPECIFICATIONS(#PCDATA)>
ATTLISTSPECIFICATIONS
WEIGHTCDATA#IMPLIED
POWERCDATA#IMPLIED>
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#IMPLIED>
ELEMENTNOTES(#PCDATA)>
CATALOG>
PRODUCTNAME="
sss"
CATEGORY="
Table"
PARTNUM="
xxx"
PLANT="
Milwaukee"
INVENTORY="
Backordered"
SPECIFICATIONSWEIGHT="
100"
POWER="
eee"
COMPANY;
/SPECIFICATIONS>
OPTIONS>
ddd<
/OPTIONS>
PRICEMSRP="
ss"
SHIPPING="
STREET="
WHOLESALE="
/PRICE>
NOTES>
/NOTES>
/PRODUCT>
PRODUCT>
SPECIFICATIONS>
PRICE>
/CATALOG>
习题3答案
DOCTYPEclass[
ELEMENTclass(aa:
major,students)*>
ELEMENTaa:
major(aa:
name)*>
name(#PCDATA)>
ELEMENTstudents(bb:
student)*>
ELEMENTbb:
student(bb:
name+,bb:
age+)>
ELEME