XML数据

课后整理 2020-12-21

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文档中每个对象都是一个节点,具体说明如下。

【示例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标准。