admin 管理员组

文章数量: 1087139


2024年4月19日发(作者:英文翻译在线转换)

一、选择题

1. XML采用以下哪种数据组织结构?( C )

A 星状结构 B 线状结构 C树状结构 D网状结构

2.

下列关于XML文档中根元素的说法不正确的是( D )

A每一个结构完整的XML文档中有且只有一个根元素

B 根元素完全包括了文档中其他所有元素

C 根元素的起始标记要放在其他所有元素的起始标记之前,而根元素的结束标记要放

在其他所有元素的结束标记之后

D 根元素不能包含属性节点

3. 下面哪个公司或组织制定了XML:( C )

A ISO B Oracle C W3C D Micrsoft

4. >、<、&等在XML文档中被赋予了特殊的意义,所以在XML文档中不能直接包

含这些字符,而是对这些字符采用了特殊编码,< 对应的特殊编码是:( B )

A & B < C &lgt; D &quto;

5. 以下说法不符合XML语法规则的是( C )

A)标记头和标记末的大小写一致

B)元素之间要正确的嵌套

C)结束标记可有可无

D)每个XML文档只能有一个根元素

6. 以下XML片段写法正确的是 ( D )

A

B

C

D

E

7. 用于修饰属性的缺省值不包含哪一项( C )

A #FIXED B #REQUIRED

C #PCDATA D #IMPLIED

8. 以下关于SAX的说法正确的是( B )

A)使用SAX可修改XML

B)SAX是事件驱动型XML解析器

C)SAX是对象模型XML解析器

D)以上答案都不对

9. DOM解析中,下面( A )方法可以获得XML文档节点树的根元素节点。

A.getDocumentElement() B. getEntities()

C. getPublicID() D. getWholeText()

10. 下列标记定义不合法的是( C )。

A. B. <_author>

C. <2title> D. <>

11. 解析下面XML文档时,下列说法正确的是( A )。

耿祥义

9787302206491

A. “耿祥义”是文本对象

B. “耿祥义”是元素对象

C. 是元素对象,同样也是文本对象

D. 是元素对象,同样也是文本对象

12. 关于DOM的描述错误的是( C )。

A. DOM使开发者能够以编程方式读取、操作和修改XML文档

B. W3C组织公布了DOM模型的规范,然后各个软件厂商(比如微软)再根据W3C

的规范开发DOM解析器,并且提供一系列的编程API,这些API都是遵守W3C规范的

C. DOM模型是W3C组织开发出来的一个在内存中表示XML数据的线性模型

D. 能使用JavaScript进行DOM开发,也能使用Java、C#

13. XML名称空间名是指( C )。

A. W3C制定的一个技术规范 B. 一个可以访问到的URI

C. 任何URI D. 紧跟在xmlns:后面的前缀名称

14. 当SAX解析器解析到文档中元素的开始标记时,会调用( A )方法。

A.public void startElement()

B.public void startDocument()

C.public void startPrefixMapping()

D.public void startDocumentLocator()

15. 以下事件处理函数哪一个不是SAX实现会产生的( C )

A void startDocument()

B void characters(char[] ch, int start, int length)

C void startElement(String uri, String localName, String qName)

D void endElement(String uri, String localName, String qName)

16. SAX的默认基类DefaultHandler类实现了那些接口( A )

A)Attributes接口

B)DTDHandler接口

C)ErrorHandler接口

D)ContentHandler接口

17. 在XML文档的第一条声明语句中,不能使用的属性是( D )

A、version B、encoding C、standalone D、 name

18. 不符合格式良好的XML文档要求的是( A )

A、文档可以有一个以上的根元素; B、有符合规范的声明语句;

C、每个元素有正确的起始、结束标记; D、元素正确嵌套,没有交叉现象出现;

19. 在进行属性声明时,错误的是( B )

A 标记中可以使用多个属性

B 属性可以出现在起始标记或结束标记中;

C 属性名是大小写敏感的;

D 属性值必须用引号引上;

20. 以下不属于XML语法规定的是( B )

A、元素必须正确嵌套

B、标记任意大小写

C、所有的属性值必须放在双引号或单引号中;

D、若文档没有DTD,属性值的默认类型是“CDATA”;

21. 在XML中,下列关于DOM的叙述不正确的。D

a) DOM是独立于开发语言和平台的,因此使用Visnal Basic、Java、Visual C++等

开发工具使用的DOM编程API是一致的

b) XML文档通过load方法被装载进内存后,在内存中形成一个DOM文档对象模型

c) 通过DOM API,软件开发人员可以控制XML文档的结构和内容

d)通过DOM在XML文档中只能按照顺序方式导航

22. XML中,(B)是文档对象模型DOM中的基本对象,元素、属性、注释、处理

指令等都可以认为是它。

A Document

B Node

C NodeList

D Element

23. 阅读下面XML文档,然后判断下列说法正确的是。C

tom

12

a) 是元素对象,同样也是文本对象

b) 是元素对象,同样也是文本对象

c) tom是文本对象

d) tom是元素对象

24.

]>

jack

&location;

关于上述Xml文档,以下描述正确的是( B )。

a) 该Xml文档中使用了外部DTD。

b) 通过浏览器打开上述Xml文档时,字符串jianwai street代替了&

location;

c) 该Xml文档不是有效的XML文档。

25. 以下关于XML文档的声明的语句正确的是 。D

A)

B)

C)

D)

二、填空题

1. ____名称空间__________是解决XML元素多义性和名字冲突问题的方案。

2. XML元素由___开始标记__________、结束标记和两者之间的内容三部分组成。

3. DOM全称为_Document Object Model__,DOM解析采用文档驱动,SAX解析

使用__事件__驱动。

4. SAX解析器是否报告XML声明给事件处理器?_____否______(填“是”或“否”)

5. 是__xml声明_________。

6. 属性类型设为ID,表明该属性的取值____必须唯一__________________。

三、简答题

1. 什么是XML?

2. 什么是SAX?简述SAX的工作原理。

3. SAX与DOM在解析器的核心分别是什么,他们的优缺点是什么,分别使用在处理

什么问题!

4. 标签根据嵌入的子标签决定执行哪个内容。如果没有一个条

件成立,如果有子标签,就执行其中的标签体中的内容。

标签可以用于实现if-else语句的功能。

标签只能作为的子标签,不能单独使用;

标签体中必须有标签,但可以没有标签。如果有

标签,则标签必须在之前。

5. 如果要实现Tag接口,可以通过扩展TagSupport这个类,来写自己需要的方法,

而不需要把Tag接口中的所有方法实现。

6. 用 JAXB将XML数据转化为java对象的步骤

7. Tld文件的功能及相应标签处理类的tld文件的配置

四、程序填空题

1. 使用DOM解析XML文件代码如下,读程序完成填空。

代码如下:

李华

12

92

代码如下:

import .*;

import s.*;

import .*;

public class ExamTest {

public static void main(String args[]) throws Exception{

DocumentBuilderFactory factory =

tance();

DocumentBuilder builder = umentBuilder();

//DOM解析返回文档对象

①_Document__ doc = (new File(""));

//获得文档根元素节点

②_Element__ root = umentElement();

//获得根节点下元素标记名为student的所有的元素节点的集合

③_Nodelist_ nl = mentsByTagName("student");

for (int i = 0; i < nl. getLength(); i++) {

//获取nl集合中的第i个节点对象

Element stu = (Element)(i);

//获得元素student属性的集合

④_NamedNodeMap__ map = ributes();

//循环输出map中所有的属性

for (int k = 0; k < gth(); k++) {

⑤_Attr_ attrNode = (⑤_Attr_)(k);

(e() + "="

+ ue() + " ");

}

//获得student标记下所有子节点集合

NodeList eNl = ldNodes();

//遍历所有子节点

for (int j = 0; j < gth(); j++) {

⑥_Nodelist_ child = (j);

if (eType() == T_NODE) {

Element eNode = (Element)child;

}

if (eType() == _NODE) {

⑦_Text__ tNode = (⑦_Text_)child;

}} }}}

2. 例如jsp中要求取出request中保存的一个属性username,以前习惯的方式:

<%

String username=(String)ribute("user");

n(username);

%>

或者

<%

String username=(String)ribute("user");

%>

<%=user%>

在使用jstl后,则可以直接书写为:

(

或者直接

${user}) 或

${param.[ " user " ]}


本文标签: 文档 元素 属性 标记 对象