浅谈XML代码编写的编码与验证问题

所属分类: 网页制作 / XML/XSLT 阅读数: 2043
收藏 0 赞 0 分享

编码

编码就是转换 Unicode 字符为等价二进制表示的过程。XML 处理程序读取一个 XML 文档时,它依赖于编码类型来编码文档。因此,我们需要在 XML 声明中指定编码类型。

编码类型
主要有两种类型的编码:

UTF-8
UTF-16
UTF 表示 UCS 转换格式,而 UCS 本身的意义是通用字符集。编号 8 或者 16 表示呈现字符的比特数。它们是 8(一个字节)或者 16(两个字节)。对于没有编码信息的文档,默认使用 UTF-8。

语法
编码信息包含在 XML 文档的序言部分。UTF-8 编码的语法如下:

XML/HTML Code复制内容到剪贴板
  1. <?xml version="1.0" encoding="UTF-8" standalone="no" ?>  

UTF-16 编码语法如下:

XML/HTML Code复制内容到剪贴板
  1. <?xml version="1.0" encoding="UTF-16" standalone="no" ?>  

示例

下面的例子展示了编码声明:

XML/HTML Code复制内容到剪贴板
  1. <?xml version="1.0" encoding="UTF-8" standalone="no" ?>  
  2. <contact-info>  
  3.     <name>Tanmay Patil</name>  
  4.     <company>TutorialsPoint</company>  
  5.     <phone>(011) 123-4567</phone>  
  6. </contact-info>  

在上面的 encoding="UTF-8" 示例中,指定使用 8 位表示字符。要使用 16 为表示字符,可以使用 UTF-16 编码。

使用 UTF-8 编码的 XML 文件尺寸比 UTF-16 格式的文件更小。

验证

验证 就是对 XML 文档进行验证的过程。如果文档内容与元素,属性和关联的文档类型定义(DTD)匹配,以及文档符合b表达的约束则该文档被认为是有效的。通过 XML 解析器处理验证的方式有两种。分别是:

格式良好的 XML 文档
有效的 XML 文档
格式良好的 XML 文档
如果 XML 文档遵守以下规则则被认为是格式良好的。

没有 DTD 的 XML 文档必须使用预定义的字符实体处理 amp(&),apos(单引号),g(>),quot(双引号)。
必须遵循标签的顺序,比如内部标签必须在外部标签闭合之前闭合。
每个开始标签必须都有一个结束标签或者必须是一个自闭合标签(<title>...</title> 或者 <title />)。
在开始标签中必须只能有一个属性,并且需要使用引号包裹。
除了amp(&),apos(单引号),g(>),quot(双引号)实体之外其他的必须先声明再使用。
示例

下面是一个格式良好的 XML 文档示例:

XML/HTML Code复制内容到剪贴板
  1. <?xml version="1.0" encoding="UTF-8" standalone="yes" ?>  
  2. <!DOCTYPE address   
  3. [   
  4. <!ELEMENT address (name,company,phone)>  
  5.     <!ELEMENT name (#PCDATA)>  
  6.     <!ELEMENT company (#PCDATA)>  
  7.     <!ELEMENT phone (#PCDATA)>  
  8. ]>  
  9. <address>  
  10.     <name>Tanmay Patil</name>  
  11.     <company>TutorialsPoint</company>  
  12.     <phone>(011) 123-4567</phone>  
  13. </address>  

上面的示例被认为是格式良好的,因为:

它定义了文档类型。并且这里文档类型是元素类型。
包含一个名为 address 的根元素。
每个子元素 name,company 和 phone 都是一个自解释正确闭合的标签。
标签的顺序正确。

更多精彩内容其他人还在看

网页制作关于代码的18个小技巧

  1、xml文件尽量以utf-8编码,gb2312有些字是存储不了的,如?,就算能存也需要转换,比较麻烦,utf-8也符合国际规范。   2、CSS中:hover这个伪类,如果放在:visited前面则会失效。   3、<a>标签如果没有href属性,所
收藏 0 赞 0 分享

什么是XML?

XML是 EXtensible Markup Language(可扩展标识语言)的简写。 和HTML(Hypertext Markup Language 超文本标记语言)一样,同样来源于SGML. XML 不是 HTML 的替代者,只是HTML的补充,它的用途完全不同
收藏 0 赞 0 分享

数据库生成xml的简单方法

第一个示例方法: 1 SqlConnection conn = new SqlConnection(); 2 conn.ConnectionString = "Server=127.0.0.1;User ID=sa;Password=fdahgdr
收藏 0 赞 0 分享

XML教程:通过一个例子来学习XML的语法

XML的语法规则既很简单,又很严格。这些规则很容易学习,也很容易使用。 正因为如此,创建可读取及操作XML的软件不是一件难事。 一个XML文档的例子 XML使用一种可自我描述的简单的语法。 <?xml version="1.0&q
收藏 0 赞 0 分享

百度新闻开放协议XML文档制作方法简述

开放协议概述 使用此开放协议,将会为您的网站带去更多流量! 《互联网新闻开放协议》是百度新闻搜索制定的搜索引擎新闻源收录标准,网站可将发布的新闻内容制作成遵循此开放协议的XML格式的网页(独立于原有的新闻发布形式)供搜索引擎索引,将网站发布的新闻信息主动、及
收藏 0 赞 0 分享

XML教程:XML有哪些用途?

XML是被设计为存储、传输以及交换数据的。XML不是被设计为用来显示数据的。 XML可以将HTML与数据分离 通过使用XML,您的数据可存储于HTML之外。 当我们使用HTML来显示数据时,数据存储于HTML中。通过使用XML,数据可以被存储在单独的X
收藏 0 赞 0 分享

XML教程:什么是XML及XML和HTML的区别

XML被设计用来描述数据,其焦点是数据的内容。 HTML被设计用来显示数据,其焦点是数据的外观。 应该掌握的基础知识: 在您继续学习之前,需要对以下知识有基本的了解: HTML / XHTML JavaScript or
收藏 0 赞 0 分享

XML中的DTD文档类型定义完全解析

XML标签的自定义功能非常强大,比如本文将要讲解的DTD(Document Type Definition)就带给人们一种面向对象般的感觉,well,下面就来看一下XML中的DTD文件类型定义完全解析
收藏 0 赞 0 分享

了解WEB页面工具语言XML(三)支持工具

三、支持XML的公司和它们的开发工具   尽管XML还处在开发阶段,其标准正在由W3C组织制定,但是已经有许多公司表示全力支持XML,并开发了不少XML工具。Adobe公司的FrameMaker可以用来书写XML文档。Microsoft公司推出的IE 4.0已经可以显示、
收藏 0 赞 0 分享

了解WEB页面工具语言XML(四)应用分类

四、XML应用分类   总的说来的XML的应用可分为四类:   (1)应用于客户需要与不同的数据源进行交互时。数据可能来自不同的数据库,他们都有各自不同的复杂格式。但客户与这些数据库间只通过一种标准语言进行交互,那就是XML。由于XML的自定义性及可扩展性,它
收藏 0 赞 0 分享
查看更多