XML学习(1)------初识XML

今天开始更新一些关于XML的学习内容,之前有接触过XML的东西,相对来说感觉还是比较简单的,但在最近学习中,发现XML还是要掌握得牢靠一点才能够更快更好地进步, 当然要想走投入实战的高速路,可以移步Json:-D。 因此决定从头开始系统地学习一下XML,也希望给来人提供一些经验。笔者是也是一位初出茅庐的新手,限于水平,多有错漏之处请各位指正。

-----------------------------------------------------------------------------------------------------------------------------------------

一、那么什么是XML?这里我们先列出XML的几个特性:

1、XML是指可扩展标记语言(EXtensible Markup Language);

2、XML是一种标记语言,标记语言不用于向计算机发出指令,是没有逻辑和行为能力的,常用于格式化和链接;

3、XML设计的宗旨是传输数据,而非显示数据,其核心是数据的内容,而HTML被设计用来显示数据,其核心是数据的外观;

4、XML标签没有被预定义,需要自行定义标签;

5、XML被设计为具有自我描述性。

对于第二点,这里做个解释,其没有行为能力是什么意思,结课其描述性来理解,XML实际上是一种包含数据以及数据说明的文本格式规范。此前看到一个栗子很形象,举来给大家看看,因为不记得在哪里看到的了,侵删:

比如我们需要传输的数据为:“too young,too simple,sometimes naive”,我们人可以自动按照属性拆分成三个数据段,即年龄too young 经历too simple 结果 sometimes naive,但是程序不会拆分,我们要想办法替它拆分。比如可以按照两个逗号划分,第一部分是年龄,第二部分是经历,第三部分是结果,但是明显的通用性不好,也容易出现数据本身有‘,’需要转义的情况出现,基于这种情况,就出现了XML的数据格式,以上数据用XML来表示的话可以是这样的:

<person age="too young" experience="too simple" result="sometimes naive"/>

或者

<person>
    <age value="too young"/>
    <experience value="too simple"/>
    <result value="sometimes naive"/>
</person>
可以很明显地看出来XML描述了数据,并且包含了数据本身,但XML并没有发出任何传输的行为,具体行为需要通过编程等方式来实现。这里注意区分,虽然它没有行为,但这种封装方式的确是为了方便传输而设计的。

上栗中<age>等标签均是自己创立的标签,并没有在XML中进行预定义。

二、XML的用途

XML应用于Web开发的许多方面,常用于简化数据的存储和共享。

1、很多人可能觉得XML和HTML十分相近甚至是HTML的替换,当然这是不对的,XML很大程度上从HTML中分离出了数据。

我们假设你需要在HTML中显示动态数据,那么一旦数据改变时,你将要花费大量的时间来对HTML进行修改,但是通过XML,数据被独立地存储在了XML中,你可以用HTML更加专注于数据的部署和显示,当底层数据修改时,只需要几行简单的JS代码就可以读取XML并更新HTML中的数据。

2、XML为数据的共享和传输打开了一扇门。XML实际上是一种纯文本格式的东西,是脱离了软件和硬件的独立存在,因此XML以纯文本的格式存储,让不同的应用程序能够更容易地共享数据;在数据传输方面,XML可以再不兼容的系统之间轻松交换数据,大大方便了开发人员。总之XML的纯文本特性让XML具有强大的独立性和共享性。

对于XML的初识暂时介绍到这里。

猜你喜欢

转载自blog.csdn.net/cambridgewoo/article/details/58586779
xml
今日推荐