第2章 规范的XML文件.ppt
第二章 XML语法规则
3
小结
软件学院
标记语言的基本概念
4
标记语言的基本特点:在表示数据内容的基础上, 插入各种具有明确含义的标记,以起到对数据内 容进行解释、说明、限制等作用。 标记的表示方法:<>,一般成对使用。 <a href=>yahoo</a> 标记的命名规则
28
软件学院
属性与子元素的有关问题
属性的表达方式:
<Student ID="100"> <Name>TOM</Name> </Student>
29
子元素的表达方式:
<Student > <id> 100</id> <Name>TOM</Name> </Student>
软件学院
属性与子元素的有关问题(续)
软件学院
25
元素(续)
XML元素的内容 : 元素内容的类型:嵌套元素/字符数据/实体引用/ CDATA节/处理指令/注释 有三类XML元素的内容:
– 混合内)
XML元素命名与Java、C的命名规则类似: – 元素名必须是以字母、下划线开始的字符串;
21
软件学院
元素(续)
那么原来的应用程序会中断或者崩溃么
22
?
不会。应用程序仍然会正确的解读<to>, <from>, 和<body> 等元素,并且产生同样 的输出。
软件学院
元素(续)
23
XML文档是可以扩展的!
软件学院
元素(续)
元素之间的关系:子元素/父元素、祖先/后代
XML基础教程(第2版)_第2章_规范的XML文件
2.3.2 非空标记_3.作用
非空标记包含的内容中既可以有文本数据也可以有子标记. 当需要用“整体-部分”关系来描述数据时,就可以使用非 空标记,XML文件中的可以有如下结构的标记: <学生> <姓名>张三</姓名> <学号>A1001</学号> </学生> 当需要使用文本来描述一个数据时,也需要使用非空标记
2.3.2 非空标记_1. 语法格式
非空标记必须由“开始标签”与“结束标签”构成,它们之 间是该标记的内容。 开始标签以“<”标识开始,用“>”标识结束,标识之间 是标记的名称和属性列表开始标签的语法格式分别为: <标记的名称 属性列表 > 或 <标记名称> 注意:在标识“<”和标记名称 之间不要含有空格,允许“>” 的前面可以有空格或回行。
以下是2个空标记(正确的空标记): <water /> <张三 age="28" sex="男" /> 错误的空标记:× <water />
< 张三 age="28" sex="男"/> < water />
2.3.1 空标记_2.作用
由于空标记不包含任何内容,因此在实际编写XML文件时, 空标记的名称主要用于抽象带有属性的数据,该数据本身并不需 要用具体文本进行描述,比如,如果XML需要描述宽12、长20 的长方形,但不准备有任何关于长方形的文字描述,那么就可以 使用如下的标记: <长方形 width="12" length=20 /> XML解析器主要关心空标记中的属性,并可以解析出这些 属性的值。
XML教程第2章 XML语法简明教程PPT课件
2.1 XML文档的序言
2.1.2
2.1.2.2
注释和处理指令
处理指令
XML的处理指令简称PI,用来给处理它的应用程 序提供信息的元素。当应用程序处理XML文档时, 如果遇到处理指令会解释这个指令,遵照它提供 的信息进行处理。 处理指令一般具有下列语法格式: <?处理指令名 处理指令信息 ?> 前面的xml声明就是一个处理指令: <?xml version="1.0" encoding="gb2312" ?>
2.1 XML文档结构
2.1.1 组成和声明
2.1.1.1 序言 XML文档以序言开始,用来表示XML数据的开始,描述字符 的编码方法,为XML解析器和应用程序提供其他一些配置线 索。序言部分包括XML文档的声明及注释,其中声明在XML 文档中是必不可少的,注释的主要目的就是便于对文档的理 解和阅读。 每个XML文档必须以一个文档声明语句开头,包括声明XML 的版本号、所使用的字符集,以及是否为独立文档等信息。 在XML声明的前面不允许再有任何其它的字符,甚至是空格, 也就是说XML声明必须是XML文档中的第一个内容。 例如: <?xml version="1.0" encoding="gb2312" standalone="yes" ?>
2.1 XML文档结构
2.1.1
2.1.1.2
组成和声明
尾部
XML文档尾部部分包括注释、处理指令和紧跟元素 树后的空白。尾部部分对于XML文档来说不起任何 作用,因为大多数的应用程序在文档根元素的结束 标记处就结束了,不再对尾部进行任何的处理。
第2章 使用DTD规范XML文档
3.2.2 各种元素的声明
1.基本字符元素的声明 2.含子元素的严格声明 3.包含任意内容的声明 4.子元素出现次数的声明 5.选择性子元素的声明 6.空元素的声明 7.混合型元素的声明 8.实体的声明
3.2.3 元素声明综合示例
1.灵活控制元素出现次数 2.元素的分组与嵌套
3.3 DTD对属性的声明
DTD主要具有下列几方面的作用: 可以验证XML文档数据的有效性。 可以为某类XML文档提供统一的格式和 相同的结构。 可以保证在一定范围内,XML文档数据 的交流和共享。 应用程序设计人员根据DTD就能够知道 对应XML文档的逻辑结构,从而编写出 相应的处理应用程序。
3.1.2 DTD的基本结构
2.外部DTD的引用
根据外部DTD性质的不同,又可将其分为 私有DTD文件和公共DTD文件。私有DTD 文件是指并未公开的DTD文件,通常属于 某个组织内部或个人所有;公共DTD文件 则是为某一应用领域或行业所制定,被国 际上的标准组织或行业组织广泛认可的、 公开的、标准的DTD文件。
引用私有DTD文件的语法格式为: <!DOCTYPE RootElementName SYSTEM DTD_URL> 引用公共DTD文件的语法格式为: <!DOCTYPE RootElementName PUBLIC DTD_name DTD_URL> 注意:在XML文档中引用外部DTD时,应该在开 头的XML声明语句中添加standalone="no" 说明。
3.3.2 属性的附加声明
1.#REQUIRED
表示在相应的XML文档中该元素的这个属 性是必须的,并必须给出一个属性值。 2.#IMPLIED 表示在XML文档中该元素的这个属性是可 有可无的。
第二章规范的xml文件.ppt.Convertor
第二章规范的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未来版本的支持。
xml教程(精)PPT课件
XML---字符数据
• 开始标记和结束标记之间的文本被定义为
“字符数据”
• 字符数据可以是“<”以外的任何合法
(Unicode) 字符
– <book>Java夜未眠</book>
20
2019/11/1
21
XML---字符数据
• 字符数据分类
– PCDATA --- 普通字符数据 • 将由解析器解析
17
根元素
• XML 文档必须包含在一个单一元素中。这个单一元素称
为根元素,它包含文档中所有文本和所有其它元素。
• 而不包含单一根元素的文档不管该文档可能包含什么信息,
XML 解析器都会拒绝它。
• 每个XML文档必须有且只有一个根元素 • 根元素是一个完全包括文档中其他所有元素的元素。 • 根元素的起始标记要放在所有其他元素的起始标记之前。 • 根元素的结束标记要放在所有其他元素的结束标记之后。
"> ]>
• 引用已定义的实体:
&实体名;
字符 & > < “ ,
实体引用 & > < " &apos
31
XML---声明实体
• 一般实体
– 可以在 XML 文档中的任何位置出现的实体
– 内部
<!DOCTYPE Book[ <!ENTITY chapter1 “玄幻小说">
• 存在于声明<]>!E它NT们ITY的c文hap档te中r2 “电影记录"> • <!ENTITY ADDRESS “要以实体表示的文本">
第2章 XML语法
XML文档-元素2-2
• 所有的XML文档必须有一个根元素 XML文档中的第一个元素就是根元素 • XML元素是相互关联的 XML元素之间是父元素和子元素的关系 • XML元素有不同的内容 XML元素内容指的是从该元素的开始标签到 结束标签之间的这部分 • XML元素可以拥有一个或更多的属性 XML属性或属性值可以是强制的或可选择的
内部实体(预定义实体)
• 一些字符有特殊含义,”<”已用作标 签使用,不能出现在XML文件中,如:
2.4 XML文档内容
XML文档-元素 (Element)
• 在层次结构的 XML 文档中,元素是最基本 的组成单元(Building Block)。 • 元素的语法格式如下所示:
<element_name> ――开始标记 ...content... ――文本内容 </element_name> ――结束标记
2.3 XML声明
• XML 文档以 XML 声明作为开始,它向 解析器提供了关于文档的基本信息 • XML声明由“<?”开始,“?>”结束。 • 例如:<?xml version="1.0" encoding="GB2312" ?>
实例1:
<?xml version="1.0" encoding="gb2312"?> <!--注释--> XML声明 <Person> 属性 根元素 <name id=“1”>张三</name> <birth>03/11/1961</birth> 文本 元素 <occupation>医生</occupation> <email>tom@</email> </Person>
XML简介 ppt课件
26
使用XML企业应用开发
总结 2-2
元素由开始标记、结束标记以及元素内容组成。 XML预定义了5种实体引用,用来代替在文档中出
现的特殊字符 CDATA中的内容不解析,原样显示 编写XML文档时从声明开始 所有非空元素都必须有闭合标记 空元素使用/>来闭合 标记区分大小写
27
使用XML企业应用开发
XML文档结构:
由一个或多个元素 组成层次数,只能
一个XML文档大体可以分为三个区域:包含唯一根元素
序言区、主体区、尾声区(可选)
序言区
主体区
尾声区可选:包含注释、处理指令等
12
使用XML企业应用开发
示例
<?xml version = "1.0“ encoding=“GB2312”?> XML 声明- 定义 XML 版本
16
使用XML企业应用开发
引用
XML为显示非ASCII码字符集中的字符提供了两 种方法:实体引用和字符引用。
①在XML中,所有的实体引用都是以&开头,以; 结尾。
②XML中5个预定义的实体引用,分别用来代替 文本中出现的& < > 双引号 单引号
实体引用
对应字符
&
&
< >
< >
<ZIP> 20056 </ZIP>
<Email> </Email>
</CONTACT>
<CONTACT>
...
</CONTACT>
</Details>
第二章 规范的XML文件
1
2
DTD
XML
mystyle.xsl <?xml version="1.0" encoding="GB2312"?> <xsl:stylesheet xmlns:xsl="/TR/WD-xsl" xmlns="/TR/REC-html40" result-ns=""> <xsl:template><xsl:apply-templates/></xsl:template> <xsl:template match = "/"> <HTML> <HEAD> <TITLE>F公司的客户联系信息</TITLE> </HEAD> <BODY> <xsl:apply-templates select="联系人列表"/> </BODY> </HTML> </xsl:template> <xsl:template match = "联系人列表"> <xsl:for-each select="联系人"> <UL> <LI><xsl:value-of select="姓名"/></LI> <UL> <LI>用户ID:<xsl:value-of select="ID"/></LI> <LI>公司: <xsl:value-of select="公司"/></LI> <LI>EMAIL: <xsl:value-of select="EMAIL"/></LI> <LI>电话: <xsl:value-of select="电话"/></LI> <LI>街道: <xsl:value-of select="地址/街道"/></LI> <LI>城市: <xsl:value-of select="地址/城市"/></LI> <LI>省份: <xsl:value-of select="地址/省份"/></LI> <LI>ZIP: <xsl:value-of select="地址/ZIP"/></LI> </UL> </UL> </xsl:for-each> </xsl:template> </xsl:stylesheet>
XML配置文件PPT课件
list\5-5.doc
14
2020/10/13
外部参数实体(续)
清单5-6:使用STUDENTDTD的有效文档
list\5-6.doc
15
2020/10/13
外部参数实体(续)
清单5-7:包含了对STUDENTDTD引用的完 整SCHOOLDTD
12
2020/10/13
外部参数实体
可用外部参数实体把较小的DTD组成大型的 DTD
将DTD分解为小的、更便于管理的组块,使得 对DTD的分析处理更加简便
描述一组元素的DTD中采用较小的、模块化的 结构,使得不同的人或组织创建的DTD之间的 组合和匹配更加简便
13
2020/10/13
外部参数实体(续)
外部实体
– 清单5-12:非ASCIIISOLatin-1字符的DTD
list\5-12.doc
21
2020/10/13
结构完整的文档中的实体和DTD(续)
外部实体
– 清单5-13:为使用ASCIIISOLatin-1字母而使用实 体引用的无效完整文档
list\5-13.doc
22
2020/10/13
list\5-7.doc
16
2020/10/13
外部参数实体(续)
清单5-8:EDUCATIONDTD list\5-8.doc
17
2020/10/13
结构完整的文档中的实体和DTD
内部实体
– 清单5-9:DTD中的ERH实体引用产生了结构完整 但不合法的文档
list\5-9.doc
18
2020/10/13
XML实用教程PPT课件
§2.4 CDATA段
CDATA段用“<![CDATA[”做为段的开始, 用“]]>”作为段的结束,段开始和段结束之 间称为CDATA段的内容,解析器不对CDATA 段的内容做分析处理 。
CDATA段中的内容可以包含任意的字符。 但是,W3C规定,CDATA段中不可以嵌套另 一个CDATA段。
§2.5 XML的优势
一个简单的XML文件_ first.xml
<?xml version="1.0" ?>
1.XML 声明
<学生>
<姓名> 薛校好
<性别> 男 </性别>
<出生日期> 1991/8/15 </出生日期>
</姓名> <姓名> 姚笔叶
<性别> 女 </性别>
2. 标记
3.根标记
<出生日期> 1992/10/31 </出生日期>
《Xቤተ መጻሕፍቲ ባይዱL实用教程》
§1.1 什么是XML
XML是eXtensible Markup Language的缩写,是 由万维网联盟(W3C)定义的一种语言,称之为可扩 展标记语言。所谓可扩展性是指XML允许用户按着 XML规则自定义标记。
XML文件是由标记以及它所包含的内容构成的文 本文件,这些标记可自由定义,其目的是使得XML文 件能够很好地体现数据的结构和含义。W3C推出XML 的主要目的是使得Internet网络上的数据相互交流 更方便,让文件的内容更加显而易懂。
<?xml version="1.0" encoding="UTF-8" ?> <!-- 简单的XML文件 --> <root>
第二章XML基础语法PPT课件
• 文本字符串中有特殊字符时,需要使用实体引用。 例如:<比较符>1+1<3</比较符>
实体名称 < >
& " '
字符 < > & “ ‘
• 正确写法:<比较符>1+1<3</比较符>
12
CDATA段
• CDATA段不被解析器解析处理,变成直接文本 • CDATA段的语法格式:
<桌子 width="300" height="600" length="1000">
吃饭用的 </桌子> </root>
10
字符数据
• 开始标记和结束标记之间的文本为字符数据 • 字符数据可以是 “<” 以外的任何合法
(Unicode) 字符
<NAME> 成龙 </NAME>
字符 数据
11
实体引用
1
整体 概述
一 请在这里输入您的主要叙述内容
二
请在这里输入您的主要 叙述内容
三 请在这里输入您的主要叙述内容
2
XML基本操作案例—— 通信录
输入XML文档内容 —>保存源文档 —>用IE浏览源文档
3
XML基本操作案例—— 通信录
4
XML声明
XML文档第一行是XML声明。
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
作用
空标记的名称主要用于抽象带有属性的数据,该数据本身并 不需要用具体文本进行描述.
例如
<长方形 长=“30” 宽=“15”/>
9
XML标记-非空标记
非空标记必须由“开始标签”与“结束标签”组成, “开始标签”与“结束标签”之间是该标记所标记的 内容。
符,不能包含空格 标记区分大小写 非空标记应该对称的嵌套
例如:
<name>李云龙</name> <Name>李云龙</Name>
11
标记“顾客”包含的文本数据:
非空标记内容
¶ □□张三丰¶
□□
<?xml version="1.0" encodi¶ng="GB2312"? >
<顾客>¶ □□张三丰¶ □□<日期>2007年3月2日¶ □□</日期>¶ □□<商品>¶ □□□□脸盆¶
语法格式
<标记的名称 属性列表 > … </标记名称>
非空标记的内容
文本数据 子标记
作用:
非空标记包含的内容中既可以有文本数据也可以有子标记, 当需要用“整体-部分”关系来描述数据时,就可以使用非 空标记
10
标记名称
命名规范:
不能以数字开头,必须是字母或下划线 标记名称可以包含数字、中文、英文、_、.、-等字
18
CDATA段
<script> function matchwo(a,b) { if (a < b && a < 0) then { return 1 } else { return 0 } } </script>
<script> <![CDATA[ function matchwo(a,b) { if (a < b && a < 0) then { return 1 } else { return 0 } } ]]> </script>
XML1.0推荐标准的语法要求。
3
XML文档结构
<?xml version="1.0" encoding="GB2312" standalone="yes"?>
<!-- 注释--> <顾客> <姓名>张三丰</姓名> <日期>2007年3月2日</日期> <商品>脸盆</商品> <售价 售价单位="人民币">20</售价> </顾客>
version是必须声明的属性,表示XML文件使用的 版本类型,目前只能使用1.0
encoding为可选项,规定XML文件编码使用的字 符集,默认为UTF-8
Standalone为可选项,表示是否有外部实体引用, 默认取no
8
XML标记-空标记
所谓空标记就是不含有任何内容的标记。由于空标记 不含有任何内容,所以空标记不需要开始标签和结束 标签,空标记以“<”标识开始,用“/>”标识结束, 根据空标记是否含有属性,空标记的语法格式分别为:
第2章 规范的XML文件
——“格式良好”的XML文档
1
学习要点与难点
要点
理解结构良好的XML文档概念 掌握XML的基本语法,熟悉元素、属性、CDATA
段的用法 理解XML名称空间 掌握建立简单正确的XML文档
难点
名称空间
2
XML文档结构
XML是元语言——自定义标记的自由性 一个格式规范的XML文档会遵守W3C的
6
处理指令
处理指令目的是告诉XML解析器处理一些信息 或执行一定的动作
格式
<?target instructions?>
注意
XML(不分大小写)在XML标准中为保留字
7
XML声明
规范的XML文档第一行必须为XML声明 声明格式
<?xml version=“1.0” encoding=“编码” standalone=“yes|no”?>
17
CDATA段
<?xml version ="1.0" ?> <员工>
<李亮> <性别>男</性别> <年龄>20</年龄> <身高>175cm</身高> <体重>60kg</体重>
</李亮> <![CDATA[
这是一个CDATA段 <职业>
<名称>售货员</名称> </职业> ]]> </员工>
19
XML属性
<?xm属l ve性rsio是n=一"1.0个" ?“> 名-值”对,即属性必须由名字 <员工和> 值组成。属性必须在非空标记的开始标签或 <<李职亮 业空性名标别称==记""男售中货" 年员声龄" /=明>"20," 身用高=“"17=5”cm为" 体属重=性"60指kg"定>in一fom个atio值n</。李亮> </员工语> 法
16
CDATA的格式
XML解析时元素内容的文本也会被解析,CDATA 标记中的内容被解析器当成纯文本解析,原封不 动将这段代码传给下一个XML应用程序
HTML标记中的<pre></pre>预定义格式标记,该 标记当中的内容将按原有格式显示,CDATA标记 与此类似
语法
<![CDATA[…]]>
序言
主体 尾部
4
规范的XML文档
5
规范性
一个规范的必须满足W3C所指定的标准。一 个规范的XML文件应当满足如下语法规则:
XML文件用“XML声明”开始 XML文件有且仅有一个根标记 XML文件的非根标记都必须封装在根标记中 非空标记必须由“开始标记”与“结束标记”组成 空标记没有“开始标记”和“结束标记” XML文件的标记必须是树型结构
& ' "
特殊字符 < > & ‘ “
意义 小于号 大于号 和或连接符 单引号 双引号
15特殊Biblioteka 符的使用(示例)<?xml version="1.0" ?> <Program>
<Script> if (a < b) then max=b
</Script> </Program>
□□ ¶ □□ ¶
标记“顾客”包含的子标记
“日期”的文本内容:
2007年3月2日¶
□□
(12个字符)
□□</商品>¶ □□<售价>20</售价>¶ </顾客>
“商品”的文本内容:
¶ □□□□脸盆¶ □□
(10个字符)
“售价”的文本内容:
20
(2个字符)
12
根标记
XML文件必须有且仅有一个根标记,其它标记都必须 封装在根标记中。XML文件的标记必须形成树型结构。
<root> <姓名> 张三 </姓名> <出生日期> 1998年12月28日 </出生日期>
</root>
13
标记的子孙关系
规范的XML文件有且仅有一个根标记,其它标 记都必须封装在根标记中,文件的标记必须是 树形结构,这样一来,标记之间就形成了“子 孙”关系。
14
特殊字符的使用
实体引用 < >