JSON

对比分析json及XML【站长博客网】

字号+ 作者:H5之家 来源:H5之家 2017-05-12 13:06 我要评论( )

本文是根据自己对json、xml的了解,参考了部分资料,结合网上的一些视频教程总结出来的一篇个人对于json和XML的感悟,以及他们之间在使用的时候的优劣,这里推荐

相关推荐:    

  • Jquery $.getJSON 在IE下的缓存问题解决方法
  •     
  • Jquery解析Json格式数据过程代码
  •     
  • js读取json的两种常用方法示例介绍
  •     
  • 利用a标签自动解析URL分析网址实例
  •     
  • JS中FRAME的操作问题实例分析
  •     
  • form.submit()不能提交表单的原因分析
  •  

      随着移动互联网时代的大潮,越来越多的App不光是需要和网络服务器进行数据传输和交互,也需要和其他 App 进行数据传递。承担App与网络来进行传输和存储数据的一般是XML或者JSON。在移动互联网时代,XML和JSON很重要。

      最近一段时间,个人综合了之前对XML、JSON的一些了解,参考了相关资料,再结合视频的代码,把自己的一些思考融入了这篇总结文档中,同时尝试用通俗诙谐的语言风格来阐述,期望能给感兴趣的读者带来帮助。

      为了不和时代落伍,我们必须要学习 XML 和 JSON,但同时它们也很容易学习,Let's start:–)

     一、XML

      XML即可扩展标记语言(eXtensible Markup Language)。标记是指计算机所能理解的信息符号,通过此种标记,计算机之间可以处理包含各种信息的文章等。如何定义这些标记,既可以选择国际通用的标记语言,比如HTML,也可以使用象XML这样由相关人士自由决定的标记语言,这就是语言的可扩展性。XML是从SGML中简化修改出来的。它主要用到的有XML、XSL和XPath等。

      上面这段是对XML的一个基本定义,一个被广泛接受的说明。简单说,XML就是一种数据的描述语言,虽然它是语言,但是通常情况下,它并不具备常见语言的基本功能——被计算机识别并运行。只有依靠另一种语言,来解释它,使它达到你想要的效果或被计算机所接受。

      记住以下几点就行了:

    XML是一种标记语言,很类似HTML
    XML的设计宗旨是传输数据,而非显示数据
    XML标签没有被预定义。您需要自行定义标签。
    XML被设计为具有自我描述性。
    XML是W3C的推荐标准
      总结:

      XML是独立于软件和硬件的信息传输工具。 目前,XML在Web中起到的作用不会亚于一直作为 Web 基石的 HTML。 XML无所不在。XML是各种应用程序之间进行数据传输的最常用的工具,并且在信息存储和描述领域变得越来越流行。

     1.1 XML属性

      1.1.1 XML与HTML的主要差异

    XML不是HTML的替代。
    XML和HTML为不同的目的而设计。
    XML被设计为传输和存储数据,其焦点是数据的内容。
    HTML被设计用来显示数据,其焦点是数据的外观。
    HTML旨在显示信息,而 XML 旨在传输信息
      1.1.2 XML是不作为的。

      也许这有点难以理解,但是XML不会做任何事情。XML被设计用来结构化、存储以及传输信息。

      下面是John写给George的便签,存储为XML:

    复制代码 代码如下:


    <note>
    <to>George</to>
    <from>John</from>
    <heading>Reminder</heading>
    <body>Don't forget the meeting!</body>
    </note>

      上面的这条便签具有自我描述性。它拥有标题以及留言,同时包含了发送者和接受者的信息。但是,这个 XML 文档仍然没有做任何事情。它仅仅是包装在XML标签中的纯粹的信息。我们需要编写软件或者程序,才能传送、接收和显示出这个文档。

      1.1.3 XML仅仅是纯文本

      XML没什么特别的。它仅仅是纯文本而已。有能力处理纯文本的软件都可以处理XML。 不过,能够读懂 XML 的应用程序可以有针对性地处理 XML 的标签。标签的功能性意义依赖于应用程序的特性。

      1.1.4 XML允许自定义标签

      上例中的标签没有在任何XML标准中定义过(比如和)。这些标签是由文档的创作者发明的。这是因为XML没有预定义的标签。

      在HTML中使用的标签(以及HTML的结构)是预定义的。HTML文档只使用在HTML标准中定义过的标签(比如<p>,<h1> 等等)。

      XML允许创作者定义自己的标签和自己的文档结构。

      1.1.5 XML不是对HTML的替代

      XML是对HTML的补充。

      XML不会替代HTML,理解这一点很重要。在大多数 web 应用程序中,XML用于传输数据,而HTML用于格式化并显示数据。

     1.2 XML的语法

      XML的语法规则很简单,且很有逻辑。这些规则很容易学习,也很容易使用。

      1.2.1 所有元素都必须有关闭标签

      在XML中,省略关闭标签是非法的。所有元素都必须有关闭标签。 在HTML,经常会看到没有关闭标签的元素:

    复制代码 代码如下:


    <p>This is a paragraph
    <p>This is another paragraph

      在XML中,省略关闭标签是非法的。所有元素都必须有关闭标签:

    复制代码 代码如下:


    <p>This is a paragraph</p>
    <p>This is another paragraph</p>

      注释:您也许已经注意到XML声明没有关闭标签。这不是错误。声明不属于XML本身的组成部分。它不是XML元素,也不需要关闭标签。

      1.2.2 XML标签对大小写敏感

      XML元素使用XML标签进行定义。

      XML标签对大小写敏感。在XML中,标签与标签是不同的。

      必须使用相同的大小写来编写打开标签和关闭标签:

    复制代码 代码如下:


    <Message>这是错误的。</message>
    <message>这是正确的。</message>

      1.2.3 XML标签对大小写敏感

      在 HTML 中,常会看到没有正确嵌套的元素:

    复制代码 代码如下:


    <b><i>This text is bold and italic</b></i>

      在 XML中,所有元素都必须彼此正确地嵌套:

    复制代码 代码如下:


    <b><i>This text is bold and italic</i></b>

      在上例中,正确嵌套的意思是:由于<i>元素是在<b>元素内打开的,那么它必须在<b>元素内关闭。

      1.2.4 XML文档必须有根元素

      XML文档必须有一个元素是所有其他元素的父元素。该元素称为根元素。

    复制代码 代码如下:


    <root>
      <child>
        <subchild>.....</subchild>
      </child>
    </root>

      1.2.5 XML的属性值须加引号

      与 HTML 类似,XML 也可拥有属性(名称/值的对)。 在 XML 中,XML 的属性值须加引号。请研究下面的两个 XML 文档。第一个是错误的,第二个是正确的:

    复制代码 代码如下:

     

    1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。

    相关文章
    • json对日期的处置

      json对日期的处置

      2017-05-12 14:05

    • Python学习笔记之解析json的方法分析【站长博客网】

      Python学习笔记之解析json的方法分析【站长博客网】

      2017-05-10 17:07

    • iis支持json 配置iis支持json格式的文件教材

      iis支持json 配置iis支持json格式的文件教材

      2017-05-10 12:00

    • 如何解析DELPHI XE5服务器返回的JSON数据(翻译)及中文乱码

      如何解析DELPHI XE5服务器返回的JSON数据(翻译)及中文乱码

      2017-05-10 11:15

    网友点评