第2章 格式良好的XML文档
- 格式:ppt
- 大小:227.00 KB
- 文档页数:35
XML文件格式的特点1. 具有良好的格式XML 文档格式属于良好格式的文件。
HTML 文件中的标记,有些是不需要结尾标记的,如<br>,有些网页缺少若干结尾标记,照样能正确显示。
而XML 的标记一定要拥有结尾标记,例如:<name>张三</name>即,XML 标记一定是成双成对的。
如果没有结尾标记,那么在结束的“>”前,需要有“/”,表示开头和结尾是在同一标记内,例如:<book sales="yes"/>2. 具有验证机制XML 的标记是程序员自己定义的,标记的定义和使用是否符合语法,需要验证。
XML有两种验证方法。
一种是DTD,它是一个专门的文件,用来定义和检验XML 文档中的标记。
另一种是XML Schema,用XML 语法描述。
它比DTD 更优越,多个Schema 可以复合使用XML 名称空间,可以详细定义元素的内容及属性值的数据类型。
3. 灵活的Web 应用在 XML 中数据和显示格式是分开设计的,XML 元数据文件就是纯数据的文件,可以作为数据源,向HTML 提供显示的内容,显示样式可以随HTML 的变化而丰富多彩。
也就是说,HTML 描述数据的外观,而XML 描述数据本身,是文本化的小型数据库表达语言。
HTML 数据和显示格式混在一起,显示出一种样式。
XML 采用的标记是自己定义的,这样数据文件的可读性就能大大提高,也不再局限于HTML 文件中的那些标准标记了。
由于XML 是一个开放的基于文本的格式,它可以和HTML 一样使用HTTP 进行传送,不需要对现存的网络进行改变。
数据一旦建立,XML 就能被发送到其他应用软件、对象或者中间层服务器中做进一步的处理,或者可以被发送到桌面用浏览器浏览。
XML 和HTML、脚本、公共对象模式一起为灵活的3 层Web 应用软件的开发提供了所需的技术。
4. 丰富的显示样式XML 数据定义打印、显示排版信息主要有3 种方法:用CSS(Cascading Style Sheet)定义打印和显示排版信息,用XSLT 转换到HTML 进行显示和打印,用XSLT 转换成XSL(eXtensible Stylesheet Language)的FO(Formatter Object) 进行显示和打印。
第2章创建并显示第一个X M L文档本章对创建并在We b浏览器中显示X M L文档的全过程有一个总体介绍。
首先,将创建一个简单的X M L文档,了解文档的结构,并且学习创建一个格式正确的X M L文档的基本规则。
接着,将通过创建并附带一个告诉浏览器怎样格式化文档中元素的简单样式表来了解怎样在M i c r o s o f tInternet Explorer 5 We b浏览器中显示文档。
本章提供了这些主题的简要内容,本书其余部分将深入讨论这些主题。
2.1 创建一个X M L文档因为X M L文档是用纯文本写成的,所以可以使用你最喜欢的文本编辑器来创建它。
例如,可以使用Microsoft Wi n d o w s附带的写字板编辑器。
或者,使用一种可使源代码输入更方便的编程编辑器,例如Microsoft Visual Studio文本编辑器(与Microsoft Visual C++、Microsoft Vi s u a lI n t e r D e v、Microsoft Visual J++和其他Visual Studio应用程序一起发行的文本编辑器)。
2.1.1 创建X M L文档1) 在文本编辑器中打开一个新的空文本文件,并输入程序清单2 - 1中所示的X M L文档。
(你将在本书附带的光盘上文件名为I n v e n t o r y. x m l的文件中发现该程序清单的拷贝)。
如果你愿意,则可以忽略一些B O O K元素。
你无需输入全部8个B O O K元素—输入三或四个即可。
(B O O K元素由< B O O K >和< / B O O K >标签加上它们之间的所有文本组成。
)2) 使用文本编辑器的“保存(S a v e)”命令把文档保存在硬盘上,并赋予文件名I n v e n t o r y. x m l。
程序清单2 - 1I n v e n t o r y. x m l<?xml version="1.0"?><!--File Name:Inventory.xml -->< I N V E N T O R Y >< B O O K ><TITLE>The Adventures of Huckleberry Finn</TITLE><AUTHOR>Mark Twain</AUTHOR><BINDING>mass market paperback</BINDING>< P A G E S > 2 9 8 < / P A G E S >< P R I C E > $ 5 . 4 9 < / P R I C E >< / B O O K >< B O O K ><TITLE>Leaves of Grass</TITLE><AUTHOR>Walt Whitman</AUTHOR>< B I N D I N G > h a r d c o v e r < / B I N D I N G >< P A G E S > 4 6 2 < / P A G E S >< P R I C E > $ 7 . 7 5 < / P R I C E >< / B O O K >< B O O K ><TITLE>The Legend of Sleepy Hollow</TITLE><AUTHOR>Washington Irving</AUTHOR><BINDING>mass market paperback</BINDING>< P A G E S > 9 8 < / P A G E S >< P R I C E > $ 2 . 9 5 < / P R I C E >< / B O O K >< B O O K ><TITLE>The Marble Faun</TITLE><AUTHOR>Nathaniel Hawthorne</AUTHOR><BINDING>trade paperback</BINDING>< P A G E S > 4 7 3 < / P A G E S >< P R I C E > $ 1 0 . 9 5 < / P R I C E >< / B O O K >< B O O K >< T I T L E > M o b y - D i c k < / T I T L E ><AUTHOR>Herman Melville</AUTHOR>< B I N D I N G > h a r d c o v e r < / B I N D I N G >< P A G E S > 7 2 4 < / P A G E S >< P R I C E > $ 9 . 9 5 < / P R I C E >< / B O O K >< B O O K ><TITLE>The Portrait of a Lady</TITLE><AUTHOR>Henry James</AUTHOR><BINDING>mass market paperback</BINDING>< P A G E S > 2 5 6 < / P A G E S >< P R I C E > $ 4 . 9 5 < / P R I C E >< / B O O K >< B O O K ><TITLE>The Scarlet Letter</TITLE><AUTHOR>Nathaniel Hawthorne</AUTHOR><BINDING>trade paperback</BINDING>< P A G E S > 2 5 3 < / P A G E S >< P R I C E > $ 4 . 2 5 < / P R I C E >< / B O O K >< B O O K ><TITLE>The Turn of the Screw</TITLE><AUTHOR>Henry James</AUTHOR><BINDING>trade paperback</BINDING>< P A G E S > 3 8 4 < / P A G E S >< P R I C E > $ 3 . 3 5 < / P R I C E >< / B O O K >< / I N V E N T O R Y >2.1.2 XML文档剖析一个X M L文档,例如刚才输入的示例文档有两个主要组成部分:序言(p r o l o g)和文档元素(document element)(文档元素也就是众所周知的根元素),如图2 - 1所示。
XML2——XML⽂档的元素、属性、实体对于XML⽂档来说,<?处理指令必须要顶格写,前⾯不能有任何的空⽩。
XML元素可以具有属性,属性的形式为“属性名="属性值",⽐如gender="male"。
属性值需要使⽤单引号或双引号括起来。
多个属性之间使⽤空格分开。
通过样式,我们可以实现XML内容与展现形式的分离。
XML的注释:<!-- comments -->,注释不允许嵌套。
在⼀个元素上相同的属性值只能出现⼀次。
格式正规( well formed)的XML⽂档就是符合XML语法要求的XML⽂档就是格式正规的XML⽂档。
第⼀⾏是XML声明,以下是XML处理指令的例⼦。
处理指令以<?开始,⽽以?>结束。
在?后的第⼀个单词是处理指令名,在本例中是xml。
<?xml version="1.0" encoding="utf-8" standalone="yes"?>XML声明有version和standalone两个特性。
特性是由等号分开的“名称-数值对”。
位于等号左边的是特性名,⽽其值位于等号的右边,并⽤双引号或单引号括起来。
每⼀个XML⽂档都以⼀个XML声明开始,⽤以指明所⽤的XML的版本。
在上例中,version特性表明这个⽂档符合XML 1.0规范。
XML声明还有standalone特性,这告诉我们⽂档是否在这⼀个⽂件⾥还是需要从外部导⼊⽂件。
在本例中,所有的⽂档都在⼀个⽂件⾥完成,因⽽standalone特性的值要设置为yes。
<?xml version="1.0" encoding="utf-8" standalone="yes"?><GREETING>Hello world!</GREETING>总体上说,这三⾏组成了GREETING元素。
实验1 创建格式良好的XML文档【开发语言及实现平台或实验环境】配置有windows记事本、写字板 或 XMLSpy 2006开发环境的计算机设备【实验目的】(1)通过本实验,使学生能够熟悉XML文档编辑、解析、浏览工具。
(2)掌握XML文档的基本语法。
(3)能够得到格式良好、有效的XML文档。
【实验要求】(1)能熟练进行XMLSpy下载,安装(2)能在写字板、XMLSpy中创建“个人信息”XML文件(3)能在XMLSpy中验证XML文件格式的正确性、有效性(4)能在浏览器中打开XML文件,体会其结构的严格性【实验原理】一 XML名字空间是说明XML文件中的所有标记定义的来源说明二 XML元素定义不能交叉,必须完全嵌套或不完全不嵌套三 XML元素标记最好使用与内容相关的定义【实验步骤】1.熟悉了解xml(1)创建一个名为“个人信息”的记事本文件,并在其中输入要求的源文件,结束输入后存为后缀名为.xml的文件。
(2)(3)检查是否良好(xml-Check Well-Formedness)2、设想有这样一本书:书名:xml指南第一章 xml入门简介1.1节什么是html1.2节什么是xml第二章 xml语法2.1节 xml元素必须有结束标签2.2节 xml元素必须正确地嵌套试使用xml文档进行描述,并上机实现过程如下:<?xml version="1.0" encoding="UTF-8"?><book name="xml指南"><章><章号>第一章</章号><名字>xml入门简介</名字><b1.1>什么是html</b1.1><b1.2>什么是xml</b1.2><章号>第二章</章号><名字>xml语法规则</名字><b2.1>xml元素必须有结束标签</b2.1><b2.2>xml元素必须正确地嵌套</b2.2></章></book>2. 创建一个格式良好的xml文档,存储学生成绩的信息,包括:学号number、姓名name、成绩score上机实现并在浏览器中进行查看用浏览器浏览:思考题:(1)如果允许XML中的元素相互交叉,其缺点是什么?a文档不规范b容易造成内容与现实混合c.结构不够清晰(2) XML文件中的名字空间有什么用处?名字空间的英文名字是namespace,顾名思义也就是允许你通过一个网址指向来识别你的标签。
标准的xml文件格式XML(可扩展标记语言)是一种用于标记电子文档结构和数据的标准格式。
它被广泛应用于Web开发、数据交换和配置文件等领域。
标准的XML文件格式对于确保文档的正确性和可读性至关重要。
本文将介绍标准的XML文件格式,包括其基本结构、常见元素和属性,以及一些最佳实践。
XML文件由标签、元素、属性和数据组成。
标签是XML文档的基本构建块,用于定义元素和属性。
元素是标签的实例,用于表示文档中的数据结构。
属性是元素的附加信息,用于提供关于元素的额外描述。
数据则是元素或属性中的实际内容。
在标准的XML文件格式中,一个合法的XML文档必须包含一个根元素。
根元素是XML文档的顶层元素,所有其他元素都必须包含在根元素内部。
根元素还必须是唯一的,不能有多个根元素存在于同一个XML文档中。
除了根元素外,XML文档还可以包含注释、处理指令和空白字符。
注释用于向文档中添加说明性的文字,可以帮助他人理解文档的内容和结构。
处理指令用于指示解析器如何处理文档中的特定部分。
空白字符(如空格、制表符和换行符)用于格式化文档,但在某些情况下也可以影响文档的解析和处理。
在XML文件中,元素和属性的命名必须遵循一定的规则。
它们必须以字母、下划线或冒号开头,后面可以跟随任意数量的字母、数字、下划线、连字符或句点。
此外,元素和属性的命名是区分大小写的,因此<book>和<Book>被视为两个不同的元素。
另外,XML文件中还可以包含实体引用和CDATA部分。
实体引用用于表示一些特殊字符,如<表示小于号,&表示和号等。
CDATA部分用于包含文本块,其中的内容不会被解析器解析,而是作为原始数据处理。
在编写XML文件时,应该尽量遵循一些最佳实践,以确保文档的可读性和可维护性。
例如,应该使用缩进和换行来组织文档的结构,使其更易于理解和修改。
此外,应该为元素和属性选择描述性的名称,以便他人能够理解其含义和用途。
第二章规范的XML文件XML的特点:1、是一种能够应用在各个领域进行设计的元标记语言。
2、XML的标记是可自由定义,使得XML文件能够很好地体现数据结构和含义。
3、XML文件必须符合一定的语法规则。
XML文件规范的XML文件(Well-Formed XML):符合W3C指定的基本语法规则。
有效的XML文件(Validated XML):规范的XML文件再符合额外的一些约束。
规范的XML文件有效的XML文件什么是规范的XML文件呢?符合W3C指定的基本语法规则的XML文件称为有效的XML文件. W3C指定的基本语法规则是指比如,文件用”XML声明”开始,文件有且仅有一个根标记,其他标记必须都封装在根标记中,文件的标记必须是树状结构,非空标记必须由”开始标记”与”结束标记”组成,空标记没有”开始标记”和”结束标记”,等等.什么是有效的XML文件规范的XML文件再符合额外的一些约束就称为有效的XML文件.通常人们认为不规范的XML文件是没有价值的文件,甚至是不能叫做一个XML文件.我们所说的XML文件都是W3C所指定的规范标准.也就是规范的XML文件.规范的XML的组成:可选的序言:声明及注释文档的主体由一个或多个元素组成,其形式为一个可能包含字符数据的文档树可选的尾部:注释、处理指令和紧跟元素树后的空白。
主要内容XML声明XML标记CDATA区段标记的属性名称空间XML声明一个规范的XML文档通常以XML声明开始,通过XML元素来组织XML数据。
XML声明是处理指令的一种,它告诉浏览器或其他处理程序这个文档是XML文档。
声明必须放在第一行,前面不能有空白、注释或其它处理命令。
XML声明XML声明中的版本属性XML声明中的编码属性XML声明中的独立属性其格式如下:<?xml 版本信息[编码信息] [文档独立性信息] ?>例子:<?xml version=“1.0” encoding=“UTF-8” standalone=“yes” ?>一对中括号([ ])中的部分表示是可选信息XML声明中的版本属性一个最基本的XML声明:<?xml version="1.0" ?>注:V ersion属性不能省略且必须在属性列表的第一位,指明所采用的XML的版本号,用来保证对XML未来版本的支持。
北京xx有限公司XML标准文件说明1. 绪论 (2)1.1 开发者和开发目标 (2)1.2 术语 (3)2. 文档 (4)2.1 格式良好的(Well-Formed)XML文档 (4)2.2 字符 (5)2.3 通用句法成分 (5)2.4 字符数据和标记 (6)2.5 注释 (7)2.6 处理指令 (7)2.7 CDATA段 (8)2.8 序言(prolog)和文档类型声明 (8)2.9 独立文档声明 (10)2.10 空白域处理 (11)2.11 行尾处理 (11)2.12 语言标识 (12)2.13字符集错误 (13)2.14标签分类 (13)2.15标签要求 (13)2.16 xml嵌套子元素 (13)2.17 xml嵌套子元素 (14)2.18 整体结构 (15)3. 逻辑结构 (15)3.1 起始标记,结束标记和空元素标记 (16)3.2 元素类型声明 (17)3.2.1 元素内容 (18)3.2.2 混合型内容(Mixed Content) (19)3.3 属性表声明 (19)3.3.1 属性类型 (20)3.3.2 属性缺省值 (21)3.3.3 属性-值对的规范化(Attribute-Value Normalization) (22)3.4 条件段(Conditional Sections) (22)5. 一致性(Conformance) (23)5.1 进行验证和不进行验证的处理器(Validating and Non-Validating Processors) (23)5.2 使用XML处理器 (24)6. 符号(Notation) (24)7 完整的XML DEMO (25)1. 绪论可扩展标记语言,缩写为XML,描述了一类称为XML文档的数据对象,同时也部分地描述了处理这些数据对象的计算机程序的行为。
XML是SGML(标准通用标记语言[ISO 8879])针对应用的一个子集,或者说是SGML的一种受限形式。
10个方面描写XML文件格式的特点1. 具有良好的格式XML 文档格式属于良好格式的文件。
HTML 文件中的标记,有些是不需要结尾标记的,如<br>,有些网页缺少若干结尾标记,照样能正确显示。
而XML 的标记一定要拥有结尾标记,例如:<name>张三</name>即,XML 标记一定1. 具有良好的格式XML 文档格式属于良好格式的文件。
HTML 文件中的标记,有些是不需要结尾标记的,如<br>,有些网页缺少若干结尾标记,照样能正确显示。
而XML 的标记一定要拥有结尾标记,例如:<name>张三</name>即,XML 标记一定是成双成对的。
如果没有结尾标记,那么在结束的“>”前,需要有“/”,表示开头和结尾是在同一标记内,例如:<book sales="yes"/>2. 具有验证机制XML 的标记是程序员自己定义的,标记的定义和使用是否符合语法,需要验证。
XML有两种验证方法。
一种是DTD,它是一个专门的文件,用来定义和检验XML 文档中的标记。
另一种是XML Schema,用XML 语法描述。
它比DTD 更优越,多个Schema 可以复合使用XML 名称空间,可以详细定义元素的内容及属性值的数据类型。
3. 灵活的Web 应用在XML 中数据和显示格式是分开设计的,XML 元数据文件就是纯数据的文件,可以作为数据源,向HTML 提供显示的内容,显示样式可以随HTML 的变化而丰富多彩。
也就是说,HTML 描述数据的外观,而XML 描述数据本身,是文本化的小型数据库表达语言。
HTML 数据和显示格式混在一起,显示出一种样式。
XML 采用的标记是自己定义的,这样数据文件的可读性就能大大提高,也不再局限于HTML 文件中的那些标准标记了。
由于XML 是一个开放的基于文本的格式,它可以和HTML 一样使用HTTP 进行传送,不需要对现存的网络进行改变。
xml文档格式整理XML(可扩展标记语言)是一种用于存储和传输数据的标记语言,它具有自我描述性和可扩展性的特点。
在整理XML文档格式时,我们可以考虑以下几个方面:1. 声明,XML文档的开头通常包含一个声明,用于指定XML版本和字符编码。
示例,<?xml version="1.0" encoding="UTF-8"?>。
2. 根元素,XML文档必须有一个根元素,它包含了整个文档的内容。
根元素应该有一个有意义的名称,并且应该在开始和结束标签之间包含其他所有元素。
3. 元素,XML文档中的元素用标签表示,标签由开始标签和结束标签组成。
元素可以包含文本内容、属性和子元素。
4. 属性,元素可以拥有属性,属性提供有关元素的额外信息。
属性通常以键值对的形式出现在开始标签中。
示例, <bookid="001" category="fiction">。
5. 命名空间,如果XML文档中使用了命名空间,应该在根元素中声明命名空间。
命名空间可以避免元素和属性名称的冲突,并允许在文档中引用外部定义的元素和属性。
6. 注释,XML文档中可以包含注释,注释用于提供对文档内容的说明和备注。
注释以<!--开始,以-->结束。
示例,<!-这是一个注释 -->。
7. CDATA节,如果XML文档中包含特殊字符(如<、>、&),可以使用CDATA节来表示这些字符,以避免解析错误。
CDATA节以<![CDATA[开始,以]]>结束。
8. 文档类型定义(DTD)或XML模式定义(XSD),XML文档可以使用DTD或XSD定义其结构和约束。
这些定义可以确保文档符合特定的规则和要求。
9. 缩进和换行,为了增加XML文档的可读性,可以使用缩进和换行符。
缩进和换行可以按照层次结构来表示元素的嵌套关系,使文档更易于阅读和理解。
xml文档正确格式符合语法的XML文档称为结构良好的XML文档。
通过DTD验证的XML文档称为有效的XML文档。
--------------------------------------------------------------------------------"结构良好的" XML文档一个结构良好的XML文档应该使用正确的语法。
一个结构良好的XML文档应该遵守XML语法规则,前面一章给出的例子就是一个结构良好的XML文档:<?xml version="1.0" encoding="ISO-8859-1"?><note><to>Tove</to><from>Jani</from><heading>Reminder</heading><body>Don't forget me this weekend!</body></note>--------------------------------------------------------------------------------"有效的" XML文档一个有效的XML文档应该遵守DTD的描述。
一个有效的XML文档也是一个结构良好的XML文档,同时还必须符合DTD的规则。
<?xml version="1.0" encoding="ISO-8859-1"?><!DOCTYPE note SYSTEM "InternalNote.dtd"><note><to>Tove</to><from>Jani</from><heading>Reminder</heading><body>Don't forget me this weekend!</body></note>--------------------------------------------------------------------------------XML DTDDTD定义了XML文档中可用的合法元素。