习题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>©right;</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">
近日CloudCone发布了七月的特价便宜优惠VPS云服务器产品,KVM虚拟架构,性价比最高的为2核心1.5G内存1Gbps带宽5TB月流量,2.89美元/月,稳定性还是非常不错的,有需要国外便宜VPS云服务器的朋友可以关注一下。CloudCone怎么样?CloudCone服务器好不好?CloudCone值不值得购买?CloudCone是一家成立于2017年的美国服务器提供商,国外实力大厂,自己开...
[六一云迎国庆]转盘活动实物礼品美国G口/香港CTG/美国T级超防云/物理机/CDN大促销六一云 成立于2018年,归属于西安六一网络科技有限公司,是一家国内正规持有IDC ISP CDN IRCS电信经营许可证书的老牌商家。大陆持证公司受大陆各部门监管不好用支持退款退现,再也不怕被割韭菜了!主要业务有:国内高防云,美国高防云,美国cera大带宽,香港CTG,香港沙田CN2,海外站群服务,物理机,...
官方网站:https://www.akkocloud.com/AkkoCloud新品英国伦敦CN2 GIA已上线三网回程CN2 GIA 国内速度优秀.电信去程CN2 GIALooking Glass:http://lonlg.akkocloud.com/Speedtest:http://lonlg.akkocloud.com/speedtest/新品上线刚好碰上国庆节 特此放上国庆专属九折循环优惠...