包括web开发人员的Java面试在内的各种面试中,XML面试题在各种编程工作的面试中很常见。XML是一种成熟的技术,经常作为从一个平台到其他平台传输数据的标准。XML面试问题包括用于转换XML文件的XSLT技术,XPATH,XQuery等各种XML技术和XML基础知识,比如DTD或者Schema。

1.XML是什么 ?

答: XML 即可扩展标记语言 (Extensible Markup language),你可以根据自己的需要扩展
XML。 XML 中可以轻松定义 , 等自定义标签,而在 HTML 等其他标记语言中必须使用预定义
的标签,比如,而不能使用用户定义的标签。使用 DTD 和 XML Schema 标准化 XML 结构。
XML 主要用于从一个系统到另一系统的数据传输,比如企业级应用的客户端与服务端。XML广泛用于跨平台数据传输。尽管XML有冗余和文档体积大等缺点,但它在web服务以及带宽、速率作为次要考虑因素的系统间数据传输起很大作用。

2.什么是格式良好的XML文件?

XML文档规则
创建XML文档时,必须遵循一些基本的指导原则,这样创建出的文档才是“格式良好的”。这表示XML元素编写恰当,遵循XML规则。具体规则如下:

1.XML文档必须有一个根标记,即一个单独的元素,其起始标记和结束标记位于元素剩余部分和文档内容周围。
2.对于每个元素,XML标记必须有相匹配的起始标记和结束标记。XML区分大小写,例如,<vintage>1994</vintage>是有效的,但<vintage>1994</Vintage>则是无效的。
3.元素名称可以包括字母、数字和下划线,但不能以数字开头,不能包含空格。
空元素——没有内容的元素——只含有一个以斜线结尾的标记。例如,<image file=“branding.png”/>。
4.属性值必须用引号引起。可以使用单引号或双引号,但是建议前后使用一致。在前面的规则示例中,file是属性名称,branding.png是属性值。每个属性都有一个名值对。
5.实体字符和特殊字符必须谨慎使用。例如,XML文档内容中的特殊字符,如大于号(>),在标记中显示为一个代码或实体。大于号在XML代码中显示为>,XML分析器可以识别它并显示为恰当的字符。如果遵循了上述规则,XML文档将是格式良好的,大多数工具和浏览器都能对其完全解析。

3.XPath是什么?

XPath是用于从XML文档检索元素的XML技术。XML文档是结构化的,因此XPath可以从XML文件定位和检索元素、属性或值。从数据检索方面来说,XPath与SQL很相似,但是它有自己的语法和规则。

4.XML 命名空间是什么 ?它为什么很重要 ?

XML命名空间与Java的package类似,用来避免不同来源名称相同的标签发生冲突。XML命名空间在XML文档顶部使用xmlns属性定义,语法为xmlns:prefix=’URI’。prefix与XML文档中实际标签一起使用。下面例子为XML命名空间的使用。

<root xmlns:inst="http://instruments.com/inst"
    <inst:phone>
        <inst:number>837363223</inst:number>
    </inst:phone>
</root>