XML全套详细笔记(心血放出).doc_第1页
XML全套详细笔记(心血放出).doc_第2页
XML全套详细笔记(心血放出).doc_第3页
XML全套详细笔记(心血放出).doc_第4页
XML全套详细笔记(心血放出).doc_第5页
已阅读5页,还剩4页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

目录一、 什么是XML1二、 XML声明1三、 XML 中的注释1四、 XML 语法规则1五、 XML 命名规则2六、 XML元素(ELEMENT)2七、 XML属性(Attribute)2(一) 什么是XML属性2(二) XML属性必须加引号2八、 XML元素vs属性3(一) 避免XML属性(尽量使用元素)3(二) 针对元数据的XML属性(有关数据的数据)3九、 实体引用(”&)4十、 CDATA5十一、 PCDATA5十二、 XML命名空间(Namespaces)6(一) XML Namespace(xmlns)属性6(二) 默认的命名空间(Default Namespaces)7十三、 XML的解析71、 什么是XML标记语言(Markup Language)是有一些码或控制标记所组成的,这些码或控制标记本身若单独存在是无意义的,他们必须结合文件信息后才能形成一份有用的电子文件。目前所使用的标记语言可分为特殊用途的标记语言与一般通用的标记语言两类。XML指可扩展标记语言(EXtensible Markup Language);XML是一种标记语言,很类似HTML;XML的设计宗旨是传输数据和存储数据,而非显示数据;XML标签没有被预定义,您需要自行定义标签;XML被设计为具有自我描述性;XML没有预定义的标签;XML的最好的描述是:XML是独立于软件和硬件的信息传输工具。2、 XML声明其中standalone:定义文档是独立的还是需要装入其他元素才能正确分析如果XML文档没有外部实体或DTD,则可以设置为no,否则设置为yes可用该值提高性能:如果为no,则可提高处理速度;如果设置为yes,则首先要分析文档,确定需要其他哪些文件,然后才能完全分析文档。3、 XML 中的注释注释可以出现在除标签内部以外的任意位置。 4、 XML 语法规则 根元素; 子元素; 头标签; 尾标签; 打开标签和关闭标签通常被称为开始标签和结束标签(或头标签和尾标签); XML文档必须有且只有一个根元素,该元素是所有其他元素的父元素; 所有XML元素都须有关闭标签; XML标签对大小写敏感; XML必须正确地嵌套; XML文档必须有根元素; XML的属性值须加引号; XML中的空格会被保留。5、 XML 命名规则 名称可以含字母、数字以及其他的字符; 名称不能以数字或者标点符号开始; 名称不能以字符“xml”(或者XML、Xml)开始; 名称不能包含空格; 可使用任何名称,没有保留的字词。6、 XML元素(ELEMENT) XML文档包含XML元素; XML元素指的是从(且包括)开始标签直到(且包括)结束标签的部分; 元素可包含其他元素、文本或者两者的混合物,元素也可以拥有属性; XML元素是可扩展,以携带更多的信息。7、 XML属性(Attribute)(1) 什么是XML属性XML属性(Attribute)提供关于元素的额外信息;属性必须有值;属性通常提供不属于数据组成部分的信息。在下面的例子中,文件类型与数据无关,但是对需要处理这个元素的软件来说却很重要:computer.gif(2) XML属性必须加引号单/双引号,如果属性值本身包含双引号,那么使用实体引用,或者可以使用单引号包围它。属性值必须被引号包围,不过单引号和双引号均可使用。比如一个人的性别,person标签可以这样写:或者这样也可以:注释:如果属性值本身包含双引号,那么有必要使用单引号包围它,就像这个例子:或者可以使用实体引用:8、 XML元素vs属性没有什么规矩可以告诉我们什么时候该使用属性,而什么时候该使用子元素。我的经验是在HTML中,属性用起来很便利,但是在XML中,您应该尽量避免使用属性。(1) 避免XML属性(尽量使用元素)因使用属性而引起的一些问题: 属性无法包含多个值(子元素可以); 属性无法描述树结构(子元素可以); 属性不易扩展(为未来的变化); 属性难以阅读和维护。请尽量使用元素来描述数据,而仅仅使用属性来提供与数据无关的信息。(2) 针对元数据的XML属性(有关数据的数据)有时候会向元素分配ID引用。这些ID索引可用于标识XML元素,它起作用的方式与HTML中ID属性是一样的。这个例子向我们演示了这种情况: George John Reminder Dont forget the meeting! John George Re: Reminder I will not 上面的ID仅仅是一个标识符,用于标识不同的便签,它并不是便签数据的组成部分。在此我们极力向您传递的理念是:元数据(有关数据的数据)应当存储为属性,而数据本身应当存储为元素。9、 实体引用(”&)在XML中,一些字符拥有特殊的意义。如果你把字符放在XML元素中,会发生错误,这是因为解析器会把它当作新元素的开始。这样会产生XML错误:if salary 1000 then为了避免这个错误,请用一个实体引用来代替 字符:if salary < 1000 then 在XML中,有5个预定义的实体引用:<大于greater than&&和号ampersand'单引号apostrophe"双引号quotation mark注释:在XML中,只有字符和&确实是非法的。大于号是合法的,但是用实体引用来代替它是一个好习惯。我们也可用ENTITY自定义实体:这样我们可用&linux;来调用。另外:实体可以用来替代XML文档中的字符串。例如:短语”XML and the Data Revolution”当文档中重复出现,就可在DTD中定义一个快捷实体声明。这样,当要是用整个短语时,就可使用&xdr;而他在XML文档中会被替换。使用实体就可以避免拼写错误以及反复输入同一件事的繁琐。我们可以把Entity看做是一个常量,它有一定的值。10、 CDATA全名:character dataCDATA是不会被解析器解析的文本,在这些文本中的标签不会被当作标记来对待,其中的实体也不会被展开。使用预定义实体实在是难以看懂而且繁琐,而在标记CDATA下,所有的标记、实体引用都被忽略,而被XML处理程序一视同仁地当做字符数据看待。CDATA的形式如下:CDATA的文本内容中不能出现字符串“”,另外,CDATA不能嵌套。<<笑傲江湖>>金50!CDATA 一本好书比好看, 没有好看 11、 PCDATAPCDATA的意思是被解析的字符数据(parsed character data)。可把字符数据想象为XML元素的开始标签与结束标签之间的文本。PDATA是会被解析器解析的文本。这些文本将被解析器检查实体以及标记。文本中的标签会被当作标记来处理,而实体会被展开。12、 XML命名空间(Namespaces)XML命名空间可提供避免元素命名冲突的方法。这个XML文档携带着某个表格中的信息: Apples Bananas 此XML文档携带着有关一件家具的信息: African Coffee Table 80 120我们为标签添加了一个xmlns属性,这样就为前缀赋予了一个与某个命名空间相关联的限定名称。(1) XML Namespace(xmlns)属性XML命名空间属性被放置于某个元素的开始标签之中。并使用以下的语法:xmlns:namespace-prefix=namespaceURI当一个命名空间被定义在某个元素的开始标签中时,所有带有相同前缀的子元素都会与同一个命名空间相关联。注释:用于标示命名空间的地址不会被解析器用于查找信息,其惟一的作用是赋予命名空间一个惟一的名称。不过,很多公司常常会作为指针来使用命名空间指向某个实存的网页,这个网页包含着有关命名空间的信息。区别两个命名空间是否一样的唯一标准就是URI,就算前缀名不一样,只要URI是一样的,我们就认为是同一个命名空间。例如:xmlns:abc=/TR/html4/xmlns:def=/TR/html4/abc和def其实是同一个命名空间。统一资源标示符(Uniform Resource Identifier (URI))统一资源标示符是一串可以标示因特网资源的字符。最常用的URI是用来标示因特网域名地址的统一资源定位器(URL)。另一个不那么常用的URI是统一资源命名(URN)。在我们的例子中,我们仅使用URL。(2) 默认的命名空间(Default Namespaces)为某个元素定义默认的命名空间可以让我们省去在所有的子元素中使用前缀的工作。但是这种默认的命名空间只能作用于元素,而不能作用于元素中的属性。请使用下面的语法:xmlns=namespaceURI这个XML文档携带着某个表格中的信息: Apples Bananas 此XML文档携带着有关一件家具的信息: African Coffee Table 80 12013、 XML的解析DOMDocument Object Model文档对象模型n关键字:树(Document)n优点:把xml文件在内存中构造树形结构,可以遍历和修改节点

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论