《XML技术》习题 含答案.docx
《《XML技术》习题 含答案.docx》由会员分享,可在线阅读,更多相关《《XML技术》习题 含答案.docx(20页珍藏版)》请在冰豆网上搜索。
《XML技术》习题含答案
Xml技术习题
一、填空题
1、每文档都分为两个部:
序文部分和文档元素。
2、
xmlversion="1.0"encoding="gb2312"?
>就是一个序文文档的声明。
3、XML文档内容的主体部分,一般由根元素,子元素,属性,注释和内容组成。
4、一个元素开始的分隔符被称作起始标记,一个元素最后的分隔符被称作结束标记。
5、一共有四类元素:
空元素;仅含文本的;含其他元素;含子元素、文本或混合元素的元素
6、文档类型定义DTD,用来描述定义一段合法的XML文档块。
7、在DTD中,元素类型是通过ELEMENT标记声明的。
8、属性类型设为ID,表明该属性的取值是唯一。
9、Xml定义了两种类型的entity。
一种是普通entity;另一种是参数entity。
二、选择题
1、属性(B)用来表示XML文档所使用的字符集。
A.versionB.encodingC.standalone
2、XML(A)提供了一种避免元素命名冲突的方法。
A.命名空间B.DTDC.XSDD.XSL
3、下列那段代码描述的是空元素?
()
A.
gonewiththewindmovie
classic
B.
gonewiththewindmovie
classic
C.
4、含有中文字符的XML文档中,encoding属性值应设为(B)
A.BIG5B.GB2312C.UTF-8
5、实体引用是一种合法的XML名字,前面带有一个符号(A)
A.&B.;C.+
6、下列选项中,哪一个是合法的元素名?
(A)
A.TOMB.1JACKC.12
7、对于下面的代码
ELEMENTPRODUCT(PRODUCTNAME,DESCRIPTION,PRICE,QUANTITY)>
下列选项中,哪一个不是PRODUCT元素的子元素?
(C)
A.PRODUCTNAMEB.DESCRIPTION
C.NUMBERD.QUANTITY
8、DTD文档中,定义属性的关键字是(A)。
A.ATTLISTB.ELEMENTC.ENTITY
9、DTD文档中,某元素属性的属性特点定义为#REQUIRED,说明此属性值在XML文档中(A)
A.必须给出B.可有可无
10、下列选项中,哪一个是预定义实体?
(B)
A.&name;B.<C.©right;
第4章
1、定义一个元素组,要求一次只能出现组中的一个元素,要使用的关键字是:
C
A.sequenceB.groupC.choiceD.allE.attributeGroup:
2、对于下列代码:
attributename="age"type="xs:
integer"use="optional"/>
属性age是:
A
A.可选的B.必选的
3、哪种类型用于定义至少包含一个子元素或属性的元素?
A
A. 复杂数据类型B. 内置数据类型
C. 用户自定义的简单数据类型
4、阅读程序,将其补充完整。
xmlversion="1.0"?
>
schemaxmlns:
xsd="http:
//www.w3.org/2001/XMLSchema">
elementname="CUSTOMERDATA"type="cdata"/>
--cdata-->
complexTypename="cdata">
sequence>
elementname="CUSTOMER"type="custtype"/>
sequence>
complexType>
--custtype-->
complexTypename="custtype">
sequence>
elementname="FIRSTNAME"type="xsd:
string"/>
elementname="LASTNAME"type="xsd:
string"/>
elementname="CONTACTINFO"type="contacttype"/>
sequence>
attributename="CUSTOMERID"type="xsd:
string"use="required"/>
complexType>
--contacttype-->
complexTypename="contacttype">
choice>
elementname="RESIDENCE"type="addtype"/>
elementname="OFFICE"type="addtype"/>
B
complexType>
--addtype-->
complexTypename="addtype">
groupref="ADDPHONE"/>
complexType>
--ADDPHONE-->
groupname="ADDPHONE">
sequence>
elementname="ADDRESS"type="xsd:
string"/>
elementname="PHONE"type="xsd:
string"/>
sequence>
group>
schema>
A.
complexType>B.
choice>
C.sequence>D.choice>
第6章
1、由(C)元素定义的模板规则是XSL样式表的最重要的部分
A.xsl:
value-ofB.xsl:
templateC.xsl:
apply-templatesD.xsl:
choose
2、选择catalog元素下的所有名为cd的子元素,要使用的XPATH表达式是(B)
A./catalogB./catalog/cdC./catalog/cd/*
3、xsl:
sort元素一般作为xsl:
apply-templates或(D)的子元素出现。
A.xsl:
value-ofB.xsl:
templateC.xsl:
apply-templatesD.xsl:
for-each
4、 xsl是什么文件(B)
Axml文件B样式表单文件
Csoap文件D转换后的流文件
5、文件emp.XSL的内容如下:
xmlversion="1.0"encoding="UTF-8"?
>
stylesheetversion="1.0"xmlns:
xsl="http:
//www.w3.org/1999/XSL/Transform"xmlns:
fo="http:
//www.w3.org/1999/XSL/Format">
templatematch="/">
EmployeeName | DateofBirth | Address | Designation |
.
for-eachselect="EMPDETAILS/EMP">
value-ofselect="EMPNAME"/> | value-ofselect="DOB"/> | value-ofselect="ADDRESS"/> | value-ofselect="DESIG"/> |
for-each>
template>
stylesheet>
使用上面这个样式表单文件,有可能转换成什么格式的文件?
()
Ahtml文件Bxsl文件
C流文件Dxml文件
三、简答题
1.什么是xml?
xml的特点有哪些?
XML(eXtensibleMarkupLanguage)即可扩展标记语言,它与HTML一样,都是处于SGML,标准通用语言
具有html所具有的简捷,适于浏览网上传输和浏览的特点
易于编辑,便于管理,适于存档,容易查询
。
2.分别描述DOM解析器和SAX解析器的解析步骤。
DOM:
解析器读入整个文档,然后构建一个驻留内存的树结构,然后代码就可以使用DOM接口来操作这个树结构。
优点:
整个文档树在内存中,便于操作;支持删除、修改、重新排列等多种功能;\缺点:
将整个文档调入内存(包括无用的节点),浪费时间和空间;
使用场合:
一旦解析了文档还需多次访问这些数据;硬件资源充足(内存、CPU)
SAX:
事件驱动。
当解析器发现元素开始、元素结束、文本、文档的开始或结束等时,发送事件,程序员编写响应这些事件的代码,保存数据。
优点:
不用事先调入整个文档,占用资源少
缺点:
不是持久的;事件过后,若没保存数据,那么数据就丢了;无状态性;从事件中只能得到文本,但不知该文本属于哪个元素;
使用场合:
只需XML文档的少量内容,很少回头访问;一次性读取;机器内存少; 注意:
SAX 解析器不创建任何对象。
3.写出下列缩略词对应的中文意思。
XML:
DTD:
CSS:
XSL,XSLT,DOM
XML可扩展标记语言用于网页传输数据。
DTD就是一种内容模型是一个模板。
CSS即CascadingStyleSheet(级联样式单)的缩写用于控制html的外观。
风格样式单。
DSO应该是comservices所用的文件.
dom是是一种文档结构模型,基于树和节点。
4.写出下列技术对应文档的后缀名:
XML,DTD,XSD,CSS,XSL
*.xml*.dtd*.xsd*.css
*.xsdl
5、写出XML的文档规则。
1.文档的开始必须是Xml必要声明
2.含有数据的元素必须有起始和结束的标记
3.不含数据并且仅使用一个标记的元素必须以“/>”结束
4.文档只能包含一个能够包含全部其他元素的根元素
5.元素只能嵌套不能重叠
6.属性值必须要加引号
7.字符<和&只能用于起始标记和实体引用
8.出现的实体引用只有&;<;>;&apos;";。
6、XML元素命名规范是什么?
1、元素的名字可以包含字母、数字、和其他字符
2、元素的名字不能以xml(XML、Xml、xML等)开头
3、元素的名字不能以数字或者标点符号开头
4、元素的名字不能包含空格
5、XML文档除了XML以外,没有其他所谓的保留字,任何的名字都可以使用,但是应该尽量使元素名字具有可读性,名字使用下划线是个不错的选择
6、尽量避免使用"-"和".",因为可能引起混乱。
7、在XML元素命名中不要使用”:
”,因为XML命名空间需要用到这个十分特殊的字符。
7.模式文件自定义的数据类型有几种?
分别写出它们的语法。
8分别写出普通实体和参数实体定义的语法和他们的引用方式。
9.使用XMLDOM,可以让我们遍历、读取和操纵XML文档的结构和内容,列出XMLDOM中的主要对象和方法
四、程序填空题
1、青岛大学
2、
GoneWiththeWind
25.00
35
3.PRODUCTDATA
4、
xmlversion="1.0"encoding="UTF-8"?
>
schemaxmlns:
xs="http:
//www.w3.org/2001/XMLSchema">
elementname="name">
complexType>
sequence>
elementname="first"type="xs:
string"/>
sequence>
integer"use="required"/>
complexType>
element>
schema>
5.
xmlversion="1.0"encoding="UTF-8"?
>
schemaxmlns:
xs="http:
//www.w3.org/2001/XMLSchema">
elementname="name">
complexType>
—元素first,middle和last在父元素中一次只能出现一个-->
elementname="first"type="xs:
string"/>
elementname="middle"type="xs:
string"/>
elementname="last"type="xs:
string"/>
complexType>
element>
schema>
6.
xmlversion="1.0"?
>
MiniBus
Thisisatoyforchildernaged4andabove
75
54
BarbieDoll
Thisisatoyforchildernintheagegroupof5-10
20
200
7.学生成绩单
五.上机题
1、分析下列XML实例,编写外部DTD文档,并进行验证。
xmlversion="1.0"encoding="gb2312"?
>
张三
32
男
上海
李四
22
男
北京
要求:
1)id属性是必选属性
2)age元素可有可无,name元素可以出现多次,但至少要出现一次,其它元素必须出现而且只能出现一次。
答案:
xmlversion="1.0"encoding="GB2312"?
>
ELEMENTemployees(employee+)>
ELEMENTemployee(name+,age?
sex,address)>
ELEMENTname(#PCDATA)>
ELEMENTage(#PCDATA)>
ELEMENTsex(#PCDATA)>
ELEMENTaddress(#PCDATA)>
ATTLISTemployeeidID#REQUIRED>
第4章
1、对于下列XML文档,
xmlversion="1.0"encoding="GB2312"?
>
玩具
10
北京
100000
文具
5
青岛
266000
创建一个模式文档,并应用于给定的XML文档。
要求如下:
(1)Order元素在XML文档中可以出现多次,但是至少要出现一次。
(2)OrderID的值的格式必须是AXXX,其中X为0-9的数字。
(3)number的值要在1-99之间。
(4)zip元素的内容的格式必须是XXXXXX,其中X为0-9的数字。
(5)orderID是必选属性,orderDate是可选属性
答案:
1、
xmlversion="1.0"encoding="UTF-8"?
>
schemaxmlns:
xs="http:
//www.w3.org/2001/XMLSchema">
elementname="Orders"type="ord"/>
complexTypename="ord">
elementname="Order">
complexType>
sequence>
elementname="name"type="xs:
string"/>
elementname="number"type="numgs"/>
elementname="city"type="xs:
string"/>
elementname="zip"type="zipgs"/>
sequence>
attributename="orderID"type="idgs"use="required"/>
attributename="orderDate"type="xs:
date"use="optional"/>
complexType>
element>
complexType>
simpleTypename=“zipgs”>
restrictionbase=“xs:
string”>
lengthvalue=“6”/>
patternvalue=“\d{6}”/>
restriction>
simpleType>
simpleTypename=“idgs”>
restrictionbase=“xs:
string”>
lengthvalue=“4”/>
patternvalue=“[A]{1}\d{3}”/>
restriction>
simpleType>
simpleTypename=“numgs”>
restrictionbase=“xs:
integer”>
maxInclusivevalue=“99”/>
minInclusicevalue=“1”/>
restriction>
simpleType>
schema>
2、对于下列XML文档,
xmlversion="1.0"?
>
BarbieDoll
Thisisadollforchildrenaged11andabove
75.5
54
创建一个模式文档,并应用于给定的XML文档。
要求如下:
(1)PRODUCT元素的属性只能是toy或者book。
(2)PRODUCT元素中必须按顺序出现4个子元素。
(3)PRICE元素和QUANTITY元素的值必须是数字。
答案:
2、
xmlversion="1.0"?
>
schemaxmlns:
xsd="http:
//www.w3.org/2001/XMLSchema">
attributename="PRODID"type="pid"/>
simpleTypename="pid">
restrictionbase="xsd:
string">
patternvalue="[P]{1}\d{3}"/>
restriction>
simpleType>
elementname="PRODUCTDATA"type="prdata"/>
complexTypename="prdata">
sequence>
elementname="PRODUCT">
complexType