XML格式是互联网数据传输的事实标准,传统Web服务大都建立在XML数据之上。不过XML数据结构过于烦琐、冗长,数据访问过程复杂,浏览器兼容问题严重,导致它在Web应用开发中逐步被JSON格式数据取代。
XML是可扩展的标识语言,用户根据需要可以自定义标记,实现数据格式的自由定义与传输。
【示例1】下面示例创建一个简单的XML文档,模拟留言板结构,包括编号、标题、时间和内容等,简单了解XML文档构成。
<?xml version="1.0" encoding="gb2312"?> <blog> <item> <id>1</id> <title>标题1</title> <time>发布时间</time> <content>日志内容</content> <word> <user>昵称</user> <time>留言时间</time> <text>留言内容</text> </word> </item> </blog>
与HTML文档一样,XML文档也是由各种标签组成,文档内容由一个根节点包含(如blog),由开始标记<blog >和结束标记</blog>组成。但XML标签能够自己命名,标记数据的语义,标签不承当显示效果。在浏览器中预览。
XML文档一般包含三部分:XML声明、处理指令和XML结构数据,其中处理指令是可选部分。
每个XML文档都必须有声明,声明信息是正确解析XML数据的基础,它必须是XML文档中的第一行内容,前面不能够包含任何字符,包括空格。
在XML声明中必须指定version属性值,指明文档所采用的XML版本号,同时定义文档字符集,上面代码中的encoding="gb2312"表示该文档使用的是GB2312字符集。
XML DOM定义了访问和操作XML文档的标准方法。根据XML DOM规范,XML文档中每个对象都是一个节点,具体说明如下。
- 整个文档是一个文档节点。
- 每个XML标签是一个元素节点。
- 包含在XML元素中的文本是文本节点。
- 每一个XML属性是一个属性节点。
- 注释属于注释节点。
【示例2】在XML文档中,其文档对象模型类似一棵树。例如,针对下面XML文档结构,对应DOM结构。
<?xml version="1.0" encoding="gb2312"?> <!-- DOM文档对象模型 --> <bbs> <item> <user sex="男",QQ="66666666",Email="zhangsan@263.net">张三</user> <content>这里是张三的帖子</content> <time>2017-5-5 16:39:26</time> </item> <item> <user sex="女",QQ="88888888",Email="lishi@sohu.com">李四</user> <content>这里是李四的帖子</content> <time>2017-5-6 16:39:26</time> </item> </bbs>
DOM 2明确了XML DOM规范,DOM 3进一步增强了XML DOM,新增了解析和序列化等特性。IE9+、Firefox、Opera、Chrome和Safari等现代主流浏览器都支持XML DOM标准。