xml一些基础知识

来源:互联网 发布:光棍节 知乎 编辑:程序博客网 时间:2024/05/16 20:27

节知识点 :

1:优点
2:与DotNet的关系
3:写一个简单的XML文档
4:基本概念简介
5:语法

XML的全称是eXtensible Markup Language (我也是现在才知道的具体咋写的,以前只知道叫  差妹儿),或者中文的说法叫可扩展标记语言。他的好处挺多,不过我就知道一点,他不局限与任何语言,任何操作平台,其实只需要这一点都足够让所有的程序员都必须学习他了。

其次我们还要知道他的优点是,是,是。。。组织语言ing.......1's .....2's......3's......4's....5's......6's......有了

我们大多数人应该都知道HTML吧?不管了,就算不知道我也当你知道。我们使用HTML的时候就必须记住固定的标记语言,比如DIV  TABLE  BODY  TR  TD等等,好多啊,但是这个 差妹儿 就不需要了,他没有固定的标记,你想用啥字符组合就用啥,甚至用中文都可以,但是一样需要闭合才能是一句完整的哦。

不过这样说并不代表XML可以代替HTML了,因为XML只能描述数据内容的形式和结构,但是不能描塑网页的具体外观,样式和
内容。

下面清理了几点他的特点(我想去粘贴,可,可我没找到那里有给我粘贴的对象,所以只能搜肠刮肚的总结了,如果不对和不全的还望大家原谅)

1.可以直接在网络上使用.
2.支持不同的应用方式
3.与SGML(标准通用标记语言)兼容
4.容易编写
5.结构清晰,可读性强
6.数据的结构和内容有明确的意义
7.可以跨平台
8.结构开放,容易扩展
9.数据之间的关系得到强化
10.....不知道了,其实能够写出9点,我已经很佩服我自己了,哈哈
补充: 可移植性强,哈哈

其实说了这么多,还没有说到大家最关心的,那就是和DotNet到底有什么关系? 就好像一个美女,但她是别人的老婆,你出了用眼睛猥亵之外根本没有办法,那也是没用的(别指望她帮你完成你老妈的愿望,啥愿望?传宗接代呗),不要急,下面我们就说说XML与 DotNet有啥关系.

我们在DotNet中可以使用XmlDocument这个类实现 DOM接口,而对于SAX接口呢,我们是用到了 XMLReader 和 XMLwrite两个类获得一个类似于SAX的接口,为啥说是类似于呢,因为这两个类形成的接口的数据访问方式也是基于流的。不同是方向问题,SAX使用了 推 数据的模式,而这个接口采用了 拉 数据的模式。

最重要还有个东西,我们很多人都知道的  XPath,他在DOM和XSLT中完成精确定位。



那看这个吧:
我们在这个演示中其实还有一个standalone属性没有说到,这个属性是说明这个文档是使用DTD文档类型定义,如果是的话standalone=no,如果没有,这个属性是可以忽略的.

那么我们上面说XML很随意,其实也不尽其然(那是先给你小子吃个定心丸,哈哈),他呢也有一些基本概念.说起概念很让人头疼的,因为软件世界的群雄割据,每个土地主们都提出自己的标准,让我们这些初学者是一个脑袋三个大.(上面为还说得很轻松,怎么话锋一转就变成这样了,哈哈,别偷偷骂我翻脸比翻书还快哈.我也不想的)

那么这么多标准,我们何去何从呢?不管了,这个asp.net毕竟还是比尔这个大地主的地盘,那咱们就说微软的标准吧,以后各位修为进步了,功夫升级了,再考虑把其他的都学了吧.

Element : 他的中文名字叫 元素 (等咱们中国成为世界霸主的时候,那些外国人肯定也会夸张的起中文名字的,哈哈,无聊YY一下)元素是构成XML文档最小的单位,简言之,他就是XML文档所表示的单个数据例如 <名字> <名字>天轰穿</名字>

Tag:
俗称 标签 用来定义元素,标签必须成对的出现.

Attribute : 俗称 属性 :啊?啥叫属性?? 居然这样问,我代表全家人 BS 你!!哈哈
                     打个比方: 西瓜刀, 长60cm ,重  1 kg ,杀伤力80(游戏玩少了,不知道这个单位是啥)
                    上面说的长,重,杀伤力就是属性,这个属性可以是一个也可以是多个。
                    那我们这个的属性是如何表示的呢:

                  <西瓜刀 长="60cm" 重="1kg">
                        <优点一>可以切西瓜</优点一>
                       <优点二>惹火了可以砍人</优点二>
                 </西瓜刀>

                 其实呢,大部分时间是不推荐使用属性的,因为属性可能导致其他的程序读起来郁闷,而且他也一样可以被表示为子元素,所以我们也可以像下面这样改造上面这段

                  <西瓜刀>
                        <优点一>可以切西瓜</优点一>
                       <优点二>惹火了可以砍人</优点二>
                       <长>60cm</长>
                       <重>1kg</重>
                 </西瓜刀>

Declaration :传送中的 声明 ,也就是我们XML文档中的第一行.

Parent Element :   父元素 :其实还有个根元素,但是我一下忘记了他的洋名字是啥,郁闷
Child Element: 子元素

DTD : 文档类型定义
这个有必要解释一下,他就是用来定义XML文档中元素,属性以及元素之间的关系的.通过DTD文件可以检测使用了该定义的XML文档结构是否正确.但他不是必须的.

Schema : 规划 : 他是数据规划的描述,主要完成两件事,其实DTD也就是关于XML文档的一个schema
1.定义元素数据和元素之间的关系.
2.定义元素所能包含的内容类型.

Document Tree 文档树 : 他可算是文档元素分级结构的形象描述


语法介绍

上面说XML很随意,其实也不是(不好意思,又一次忽悠了大家,奸笑几声先。。。。。。)
XML的标签虽然可以自定义,但是必须遵从XML标准规范,而且是严格的遵从,不允许有任何的错误。(恐怖吧)
下面我会把他的标准列出来(这个没敢大意,我翻出好多年没用的书来搬的)

1:必须有声明
2:注意大小写
3:属性必须加上引号
4:标签必须关闭
5:元素中不能有空格,保留字(XML,xml)和 “:” 等,如果出现 会怎么样呢?出现了的后果就是你自己去试下了。如果出现了保留字他会解释为 声明。
6:不能以 “_”   开头。

XMl中dtd是什么?

DTD 即文档类型定义(Documnet Type Definition)

DTD 是一套关于标记符的语法规则。它是XML1.0版规格得一部分,是XML文件的验证机制,属于XML文件组成的一部分。

DTD 是一种保证XML文档格式正确的有效方法,可以通过比较XML文档和DTD文件来看文档是否符合规范,元素和标签使用是否正确。一个DTD文档包含:元素的定义规则,元素间关系的定义规则,元素可使用的属性,可使用的实体或符号规则。

XML文件提供应用程序一个数据交换的格式,DTD正是让XML文件能够成为数据交换的标准,因为不同的公司只需定义好标准的DTD,各公司都能够依照DTD建立XML文件,并且进行验证,如此就可以轻易的建立标准和交换数据,这样满足了网络共享和数据交互。

DTD文件是一个ASCII的文本文件,后缀名为.dtd。
原创粉丝点击