XML随笔:语法快速入门及当下流行的RSS简析
Posted wangyinhang
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了XML随笔:语法快速入门及当下流行的RSS简析相关的知识,希望对你有一定的参考价值。
今天是本人第一次写博客,之前闭门造车闹出过很多笑话,恰巧这几天刚刚重温了一遍XML的知识,决定把XML的知识再来从头到尾的理一遍,感触颇多,今天分享给大家。希望大家能多多注意其中的要点。
1、定义
首先,可能现在问一句博友,XML是什么。相信很多博友都可以回答的很好,官方解释是一种可扩展标记语言。但是,再问大家一句,什么是标志语言,什么是又叫做扩展性,相信基础不是很牢固的博友就可能有点懵圈。
当然如果您了解html这门语言的话,相信对标记型语言这个词肯定不陌生。这门语言含有很多的标签,类似于<html>、<input>等等,这些标签呢,都是在HTML自己的规范里面定义好的,而XML则是自己可以定义这些标签。故可扩展型一词由此而来,其实他俩的区别并不仅仅是这么简单。千万不要混淆的是,XML并不是标记语言,他是创建标记语言的源语言(如HTML),另外他还有很多重要的用途。
下面是一个XML的简单事例:
<note>
<to>XIAOBENDAN</to>
<from>BANK</from>
<heading>Reminder</heading>
<body>我想你了</body>
</note>
抛开语法不谈,其实是很浅显的一个note信息,存储了这段信息的制作者以及收件人。
heading这个标签中存放的是这段信息的内容,body这个标签则是正文主题,即想要表达的内容。但是,其实这段文本根本没有做什么功能,仅仅的只是纯文本而已,可以处理文本文件的程序都可以毫不费力的去处理这个XML文件。
2、XML的作用
当初设计XML这门语言是用作web数据传输和交互的工具,说白了就是实现信息交互的一个媒介,可能有人又要问了,既然有了HTML语言,为什么还需要再设置一个XML语言呢。HTML和XML都含有标签,有着相似的语法,都是用标记来描述网页中的内容。
其实,最大的不同是:HTML语言作为构成网页的一部分,他把数据和显示混在一起,既当爹又当妈。而XML则是仅仅只有存储数据的功能,他不能描述网页具体的外观和内容,他只是描述数据的数据形式和结构,他把数据和显示分开,这也是本质的区别!
而正是这种区别,让XML在网络应用和信息传输上面具有高兼容性,方便并且可扩展。
3、XML需要格式最重要的部分
借鉴了HTML格式不严谨带来的诸多问题之后,XML有自己编写的严格的规范(当然也不是很多。。)。
首先我们来看一段HTML的语句:
<html>
<BOdy>
<p>hr 标签定义水平线:</p>
<hr />
<p>这是段落。</p>
<HR />
<p>这是段落。</p>
<hr />
<font color = red>sss</font>
</bodY>
</html>
在XML文档中,代码基本都是错误的,因为XML编写有很严格的规定:
1、所有的标记都有一个相应的合理的结束标记。
2、所有的XML标记都必须合理的嵌套。
3、所有的XML标记都是区分大小写的。
4、所有的标记的属性必须以" "括起来。
所以,上列语句在XML中应该这样编写:
<html>
<BOdy>
<p>hr 标签定义水平线:</p>
<hr />
<p>这是段落。</p>
<HR />
<p>这是段落。</p>
<hr />
<font color = red>sss</font>
</bodY>
</html>
另外,XML的标记也必须遵循下列规则:
1、名字中可以包含数字字母及其他字符。
2、名字不能以数字或者下划线(_)开头。
3、名字中不能以XML开头。
4、名字中不能包含空格。
4、结语
XML这门语言是web中最重要的几门语言之一,想要精通webservices和网络传输协议,这是必须要攻克的一道门槛。今天暂时给博友们介绍一下XML这门语言是什么以及他的作用,然后又介绍了他的标签的命名规范以及与HTML语言的几点不同之处。谢谢大家的阅读,希望有不对的地方,在下面评论区帮小生指出来,下一篇将会介绍RSS阅读器的知识,鄙人打算做一个自己的RSS阅读器,是用C#做的,会把每天遇到的问题以及思路分享给大家。
本人王银行,现在在程序员的路上算是刚刚起步,最近由于公司需要,慢慢接触到webservices和socket这两方面,之前一直没有细细的认真去钻研。当我从键盘上敲下每一个字的时候,都感觉在与读者亲密的交谈,今天是生平第一次写属于自己的博客,发表自己的看法。以后会时常把自己平时所犯的错误及吸取的教训写到博客园上,希望可以与博友们一起进步,谢谢!!
转载请声明,谢谢!
以上是关于XML随笔:语法快速入门及当下流行的RSS简析的主要内容,如果未能解决你的问题,请参考以下文章