`

W3school 之 XML摘录

    博客分类:
  • xml
xml 
阅读更多

摘录容易混淆或是不知道的XML内容,以及使用上的要求。

内容原址:http://w3school.com.cn

 

XML(EXtensible Markup Language) 指可扩展标记语言.
被设计用来传输和存储数据.具有自我描述性.

XML 与 HTML 的主要差异

1.XML 不是 HTML 的替代。XML 是对 HTML 的补充
2.XML 和 HTML 为不同的目的而设计。
3.XML 被设计为传输和存储数据,其焦点是数据的内容。
4.HTML 被设计用来显示数据,其焦点是数据的外观。
5.HTML 旨在显示信息,而 XML 旨在传输信息。
6.XML 没有预定义的标签,而 HTML 中使用预定义的标签。
7.XML 是独立于软件和硬件的信息传输工具。

/////////////////////////////////////////////////////

<?xml version="1.0" encoding="ISO-8859-1"?>
XML的第一行是 XML 声明。它定义 XML 的版本 (1.0) 和所使用的编码 (ISO-8859-1 = Latin-1/西欧字符集)。

在 XML 中,有 5 个预定义的实体引用:

1:&lt; < 小于
2:&gt; > 大于
3:&amp; & 和号
4:&apos; ' 单引号
5:&quot; " 引号

注释:在 XML 中,只有字符 "<" 和 "&" 确实是非法的。大于号是合法的,但是用实体引用来代替它是一个好习惯。

在 XML 中,空格会被保留 不删除、不合并,而 HTML 会把多个连续的空格字符裁减(合并)为一个。

在 Windows 应用程序中,XML换行通常以一对字符来存储:回车符 (CR) 和换行符 (LF)。

XML 元素必须遵循以下命名规则:

名称可以含字母、数字以及其他的字符
名称不能以数字或者标点符号开始
名称不能以字符 “xml”(或者 XML、Xml)开始
名称不能包含空格

避免 "-" 字符。如果您按照这样的方式进行命名:"first-name",一些软件会认为你需要提取第一个单词。
避免 "." 字符。如果您按照这样的方式进行命名:"first.name",一些软件会认为 "name" 是对象 "first" 的属性。
避免 ":" 字符。冒号会被转换为命名空间来使用(稍后介绍)。

XML 的优势之一,就是可以经常在不中断应用程序的情况进行扩展。(既是可以添加新元素或属性)

/////////////////////////////////////////////////////

避免使用 XML 属性
因使用属性而引起的一些问题:

属性无法包含多重的值(元素可以)
属性无法描述树结构(元素可以)
属性不易扩展(为未来的变化)
属性难以阅读和维护

////////////////////////////////////////////////////

拥有正确语法的 XML 被称为“形式良好”的 XML。

通过 DTD 验证的 XML 是“合法”的 XML。

DTD 的作用是定义 XML 文档的结构。它使用一系列合法的元素来定义文档结构:
<!DOCTYPE note [
  <!ELEMENT note (to,from,heading,body)>
  <!ELEMENT to      (#PCDATA)>
  <!ELEMENT from    (#PCDATA)>
  <!ELEMENT heading (#PCDATA)>
  <!ELEMENT body    (#PCDATA)>
]>

XML Schema
W3C 支持一种基于 XML 的 DTD 代替者,它名为 XML Schema:
<xs:element name="note">
<xs:complexType>
  <xs:sequence>
    <xs:element name="to"      type="xs:string"/>
    <xs:element name="from"    type="xs:string"/>
    <xs:element name="heading" type="xs:string"/>
    <xs:element name="body"    type="xs:string"/>
  </xs:sequence>
</xs:complexType>
</xs:element>

///////////////////////////////////////////////////

XML的显示

1.通过使用 CSS,可为 XML 文档添加显示信息。
<?xml version="1.0" encoding="ISO-8859-1"?>
<?xml-stylesheet type="text/css" href="cd_catalog.css"?>
<CATALOG>
...
</CATALOG>
使用 CSS 格式化 XML 不是常用的方法,更不能代表 XML 文档样式化的未来。W3C 推荐使用 XSLT。

2.使用 XSLT 显示 XML 是首选的 XML 样式表语言。

XSLT (eXtensible Stylesheet Language Transformations) 远比 CSS 更加完善。

使用 XSLT 的方法之一是在浏览器显示 XML 文件之前,先把它转换为 HTML,正如以下的这些例子演示的那样:
<?xml version="1.0" encoding="ISO-8859-1"?>
<?xml-stylesheet type="text/xsl" href="simple.xsl"?>
<breakfast_menu>
....
</breakfast_menu>
第二行的<?xml-stylesheet type="text/xsl" href="simple.xsl"?>,把这个 XML 文件链接到 XSL 文件。

////////////////////////////////////////////////////////////
XML 命名空间提供避免元素命名冲突的方法。
XML 命名空间属性被放置于元素的开始标签之中.
xmlns:namespace-prefix="namespaceURI"
当命名空间被定义在元素的开始标签中时,所有带有相同前缀的子元素都会与同一个命名空间相关联。

注释:用于标示命名空间的地址不会被解析器用于查找信息。其惟一的作用是赋予命名空间一个惟一的名称。
不过,很多公司常常会作为指针来使用命名空间指向实际存在的网页,这个网页包含关于命名空间的信息。

///////////////////////////////////////////////////

所有 XML 文档中的文本均会被解析器解析。

只有 CDATA 区段(CDATA section)中的文本会被解析器忽略。

术语 CDATA 指的是不应由 XML 解析器进行解析的文本数据(Unparsed Character Data)。

<![CDATA[
这中间的字符是不解析的。
]]>

CDATA 部分不能包含字符串 "]]>"。也不允许嵌套的 CDATA 部分。
标记 CDATA 部分结尾的 "]]>" 不能包含空格或折行。


PCDATA 指的是被解析的字符数据(Parsed Character Data)。

XML 解析器通常会解析 XML 文档中所有的文本。

当某个 XML 元素被解析时,其标签之间的文本也会被解析.因为 XML 元素可包含其他元素.

分享到:
评论

相关推荐

    W3school_xml

    W3school_xml W3school系列教程:xml

    w3school xml教程 飞龙整理 20141001

    W3School XML教程是飞龙在2014年10月1日整理的一个学习资源,专注于教授XML(可扩展标记语言)的基础知识。XML是一种标记语言,与HTML类似,但其主要目的是为了传输和存储数据,而非呈现数据的外观。在深入学习XML...

    w3school 5.0 w3school 5.0

    XML(Extensible Markup Language)是用于存储和传输数据的标记语言,w3school会讲解其基本语法、DTD(Document Type Definition)和XSD(XML Schema)验证,以及XPath和XSLT的使用。SQL(Structured Query Language...

    W3School(含源码)

    《W3School源码解析与学习指南》 W3School,全球知名的在线Web技术教程平台,为初学者和专业人士提供了丰富的HTML、CSS、JavaScript、PHP、SQL等Web开发语言的学习资源。其源码的开放,为我们深入理解其背后的实现...

    w3school XML网络 教程完整版

    文档中包含了W3C XML在线教程的全部内容,并包含了XML相关技术,包括SOAP web service、wsdl、 Xlink、xpath、 Xquery,内容全,容量大。 w3school XML 教程 完整版

    w3school.chm中文和英文版

    除了HTML和CSS,w3school还覆盖了其他重要的Web技术,如PHP、SQL(用于数据库管理)、XML(可扩展标记语言)和Ajax(异步JavaScript和XML)等。这些技术是构建动态网站和实现数据交换的关键。通过w3cschool的教程,...

    w3school离线完全版2012年7月18日最新版

    【标题】"w3school离线完全版2012年7月18日最新版"揭示了这个压缩包文件的主要内容,它是一个基于2012年7月18日更新的w3school在线教程的离线版本。w3school是全球知名的Web技术学习平台,提供HTML、CSS、JavaScript...

    w3school xml学习资料

    这个“w3school xml学习资料”压缩包文件包含了一个名为“xml.chm”的帮助文档,很可能是W3School关于XML的教程集合。 XML的设计目标是提高数据的可移植性和互操作性,使得不同系统间的数据交换变得简单。XML文档由...

    W3School离线手册(2015.07.17)

    W3School离线手册(2015.07.17) W3School离线手册更新: 该文档为本人于2015年7月17日下午从W3School官网下载整理制作的CHM电子书文档。 1)要是有些人碰到chm打开空白的(因为chm未解锁,通常可以打开chm但显示无法...

    W3School Canvas W3.CSS 图标教程

    在提供的三个子文件中,“W3School W3.CSS 教程.epub”可能涵盖W3.CSS框架的基础和高级用法,包括布局、样式、响应式设计和图标应用等内容;“W3School 图标教程.epub”可能专注于W3.CSS的图标系统,介绍如何选择、...

    W3School全套教程

    W3School 的XML教程讲解了XML的基本结构、命名空间、DTD与XSD验证、XPath与XSLT转换等,帮助开发者理解如何使用XML处理数据。 **SQL教程** SQL(结构化查询语言)是数据库管理的语言。W3School 的SQL教程覆盖了数据...

    w3school中文版

    w3school的XML教程将教授如何创建和解析XML文档,以及与JSON等其他数据格式的交互。 SQL(结构化查询语言)是数据库管理的语言,用于查询、更新和操作数据。在w3school,初学者可以学习如何创建数据库、执行查询、...

    w3school最新版 2018 04 06

    w3school最新版 领先的 Web 技术教程 - 全部免费 在 w3school,你可以找到你所需要的所有的网站建设教程。 从基础的 HTML 到 CSS,乃至进阶的 XML、SQL、JS、PHP 和 ASP.NET。 从左侧的菜单选择你需要的教程!

    w3school xml 教程

    W3School 提供的 XML 教程是学习这项技术的重要资源,尤其适合初学者。这个教程可能涵盖了XML的基础概念、语法规范、文档类型定义(DTD)、XML Schema、命名空间、XSLT转换、XPath表达式以及DOM解析等核心内容。 ...

    W3School离线指导.chm

    在 w3school,你可以找到你所需要的所有的网站建设教程。 从基础的 HTML 到 CSS,乃至进阶的XML、SQL、JS、PHP 和 ASP.NET。 从左侧的菜单选择你需要的教程! 完整的网站技术参考手册 完整的网站技术参考手册 ...

    w3school HTML XML Javascript 全部内容

    在w3school这个在线学习平台上,你可以找到关于HTML、XML和JavaScript的全面教程。这些教程通常会涵盖以下知识点: 1. HTML基础:包括HTML语法、元素、属性,以及如何创建简单的静态网页。 2. HTML高级:涉及表格、...

    W3School离线手册中文版(web前端)

    **W3School离线手册中文版(Web前端)** 该资源是W3School的中文离线版,专门针对Web前端开发提供详尽的技术参考和学习资料。W3School是全球知名的在线Web技术教程平台,其内容权威且全面,深受开发者喜爱。这份...

    W3School离线手册(2015.01.26)高清完整chm版

    W3School离线手册(2015.01.26) W3School离线手册更新: 该文档为本人于2015年2月26日下午从W3School官网下载整理制作的CHM电子书文档。 1)要是有些人碰到chm打开空白的(因为chm未解锁,通常可以打开chm但显示无法...

    www.w3school.com.cn完美中文教程纯HTML版

    本资源是www.w3school.com.cn的整站HTML格式的完美教程,方便离线的朋友学习... ... 声明:制作本资源是为方便网友们离线时学习与参考,无意侵犯w3school的版权。若能上网的朋友请登录http://www.w3school.com.cn进行学习

    w3school教程完全版无广告版

    【w3school教程完全版无广告版】是一个非常宝贵的在线学习资源,对于想要自我提升IT技能,特别是Web开发基础知识的人来说,这是一个不可多得的宝藏。w3school是全球知名的在线教育平台,以其全面、易懂的教程而广受...

Global site tag (gtag.js) - Google Analytics