《ASPWeb程序设计》第七章ASP与XML编程.ppt
《《ASPWeb程序设计》第七章ASP与XML编程.ppt》由会员分享,可在线阅读,更多相关《《ASPWeb程序设计》第七章ASP与XML编程.ppt(51页珍藏版)》请在三一办公上搜索。
1、第7章 ASP.NET与XML编程,近年来,XML由于适于异构应用系统间的数据共享,优越的数据存储机制,强大的数据检索能力等优点而被广泛应用。在实际的应用系统中,合理广泛地应用XML能给解决实际的应用难题提供极大的便利,因此,掌握XML的使用是很有必要的。通过对本章内容的学习以使读者快速掌握XML的优点、用途和使用方法。,本章要点,XML基本结构标记使用XMLReader读取XML数据使用XMLWriter写入XML数据XML数据验证XML数据显示,近年来,XML由于适于异构应用系统间的数据共享,优越的数据存储机制,强大的数据检索能力等优点而被广泛应用。在实际的应用系统中,合理广泛地应用XML
2、能给解决实际的应用难题提供极大的便利,因此学习、理解、掌握XML的使用是很有必要的,本章内容意在让读者通过本章的学习,快速掌握XML的优点、用途和使用方法。,7.1 XML基本概念,XML基本结构文档的声明与处理指令标记,XML基本结构,XML文件由序言码、处理指令、根元素、元素、属性、CDATA和注解等几部分组成。1序言码序言码是XML文档的第一部分。序言码包括:XML声明、处理指令和架构声明,例如:。2处理指令处理指令是用来给处理XML文档的应用程序提供信息的,XML分析器把这些信息原封不动地,传给应用程序,有应用程序来解释这个指令,遵照它所提供的信息进行处理。格式如下:如:。根元素是XM
3、L文档的主要部分,它包含文档的数据以及描述数据结构的信息。例如:,3根元素根元素中的信息存储在两种类型的XML结构中:元素和属性。XML文档中使用的所有元素和属性都嵌套在根元素中。4元素元素是XML文档的基本构成单元,它用于表示XML文档的结构和XML文档中包含数据。元素包含开始标记、内容、和结束标记。由于XML区分大小写,所以开始标记和结束标记必须完全匹配。5属性属性是使用与特定元素关联的对应“名称值”的XML构造。例如:,6CDATA 在CDATA标记下,所有的标记、实体引用都被忽略,而被XML处理程序当作字符数看待。CDATA的形式如下:CDATA的文本内容不能出现字符串“”,另外,CD
4、ATA不能嵌套。,7注释XML文档可以包含注释,也可以没有。注释并不是由XML分析程序进行处理,但用于在文档的XML源代码中提供必要的说明。注释以“”结束。,文档的声明与处理指令,XML文档结构包含以下3个部分:(1)声明部分。声明该文档是一个XML文档。(2)定义部分。定义XML数据的类型以及所使用的DTD(可选)。(3)内容部分。用XML标签和注释标注过的文档类容。,XML文档以XML声明开头,声明本文档是一个XML文档。一般这样书写:定义符“”表示这是一条给XML解析器的处理指令。虽然声明这条语句是可有可无的,但考虑到以后的兼容,建议读者还是写上为好。随着语言的进一步发展,以后的浏览器如
5、果知道文档所用的XML版本的话,将是有好处的。这些语句必须全部用小写。,在上面的声明中version表示的XML的标准版本号。encoding表示的是文档所用的编码。standalone用来指定在XML文档被解析之前,是否使用外部或内部DTD,它的值只能是yes或no。如果为no,表示使用外部DTD;如果为yes表示使用内部DTD;如果不使用DTD,则不使用这个属性。看下面的例子:,在XML声明之后,紧接着是类型定义部分,定义XML文档中数据的类型。DTD是用来定义XML文档内容的结构的,以便按统一的格式存储信息。DTD规定了XML文档中可以出现哪些元素,这些元素是必须的还是可选的,这些元素有
6、什么属性;以及它们之间的相互位置关系等等。XML允许用户为自己的应用程序定义专用的DTD,这样用户就可以完全检查文档结构和内容的过程了。这一检验过程称为有效化,严格依从一个DTD的XML文档被称作有效文档。,创建DTD的过程与在数据库里创建数据表是类似的。在DTD中,用户定义用来表示数据的元素,然后规定数据的结构,并规定这个元素是可选的还是必须的,这就好比创建数据表的列;然后把数据存入XML文档,就好比添加数据表的记录。XML文档使用的元素可以在内部DTD中定义,也可以在外部DTD中定义。1.内部DTDDTD可以作为文档的一部分直接放到文档里面,这样的DTD只能用于包含它的这个文档,别的文档就
7、不能使用了。创建内部DTD的语法如下:,!DOCTYPE标识文档类型定义的开始,属性rootelement指明跟元素名字。2.外部DTD外部DTD是一个单独的文件,存放XML文档中可以使用的全部元素及属性的定义。你可以在多个文档中同时使用同一个DTD,以便保持多个文档之间数据结构的一致性。在XML文档中引用外部DTD的语法如下:,其中,DOCTYPE标识这是文档类型定义部分;rootelement代表根元素;PUBLIC表示这个DTD是存放在公用服务器上的;SYSTEM表示这个DTD是存放在本地计算机系统上的;Name-of-file是被引用的DTD文件的名称。3.DTD字符DTD中使用的部分
8、专用字符及其含义见表7-1。,4在DTD中定义元素元素是XML文件的基本组成部分。每个元素都是用标签标识的一小段数据。标签包括了元素的名字和属性。XML允许用于创建自己的元素集。因此,元素名应该取得容易记忆,并且最好有一定的含义,让人一看到它,便对里面的数据有个大概的了解。XML是大小写敏感的,所以要么你全用大写,要么就一律用小写。定义元素的语法如下:,5处理指令处理指令必须以称为目标的标识符开头,遵循的规则与元素名和属性名类似。处理指令目标区分大小写,并且必须以字母或下划线开头。目标的其他部分可以包含字母、数字、连字符、下划线、句点和冒号。任何有效的 XML 文本字符均可以出现在该目标之后。
9、6样式表处理指令样式页处理指令的语法如下所示:,标记,标记的名称 标记的说明 标记的分类,1标记的名称票房的名称必须满足一定的规则,规则是:名称可以由字母数字、下划线(“_”)、点(“.”)或连字符(“-”)组成,但必须以字母或下划线开关。如果XML文件使用UTF-8编码,字母不仅包含通常的拉丁字母a、b、c等。也包括汉字、日文片假名、平假名、朝鲜文以及其他许多语言中的文字。票房名称区分大小字,例如:Hunter与Hunter是完全不同的标记。,2标记的说明XML文件必须有且仅能有一个根标记,其他标记都必须封装在根标记中。XML文件的标记必须形成树状结构。以下是一个不规范的XML文件,标记未形
10、成树状结构,“性别”标记与“出生日期”标记有交叉。下面这个示例是错误的。男1983年2月6日,3标记的分类XML文件中的标记分为非空标记和空标记两种。(1)空标记所谓空标记就是不标记任何内容的标记。由于空标记不标记任何内容,所以空标记不需要开始标记和结束标记,空标记以“”标识结束,根据空标记是否含有属性,空标记的语法格式分别为:或,(2)非空标记非空标记必须由“开始标记”与“结束标记”组成,“开始标记”与“结束标记”之间是该标记所标记的内容。开始标记以“”标识结束,“”标识之间是标记的名称和属性列表,根据非空标记是否含有属性,开始标记的语法格式分别为:或需要注意的是,在标识“”的前面可以有空格
11、和回车符。结束标记以“”标识结束,“”标识之间是标记的名称。需要注意的是,在标识“”的前面可以有空格和回车符。,7.2.NET中的XML类,使用XmlReader读取XML数据使用XmlWriter写入XML数据,使用XmlReader读取XML数据,XMLReader简介 XMLReader应用,1.XMLReader简介XmlReader是一种快速、无缓冲、向前并只读的游标,用于读取XML文档,并且隐藏了底层数据交换的复杂性。XmlReader作为一种“拉模型”,较“推模型”的SAX有了多种优势,最主要的一个就是它更易使用,其次性能更为提高、并减少了编程的难度。XmlReader类是一个抽
12、象类,XmlTextReader,XmlValidatingReader,和XmlNodeReader类都继承自XmlReader类。XmlReader类有很多方法和属性用来读取XML文件的内容、查找XML元素的深度、判断当前元素的内容是否为空,以及导航XML的属性等。,2.XMLReader应用在.NET构架中,XML类均被定义在System.Xml名称空间中,如:XmlReader、XmlTextReader、XmlValidatingReader、XmlNodeReader、XmlWriter、和XmlTextWriter,因此使用XmlReader时应该引入System.Xml。.NE
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- ASPWeb程序设计 ASPWeb 程序设计 第七 ASP XML 编程

链接地址:https://www.31ppt.com/p-6234872.html