WEB开发技术 第六章
6.1 ASP操作 XML文件
From,吴教育
Email,wujiaoyu@21cn.com
Q Q,188128997
本章内容与教学安排
理论,2学时
实验,2学时
6.1 ASP操作 XML文件
课程引入与回顾
? ADO对象
? Connection,RecordSet,Command对
象
? 连接数据库的方法
目标
? 了解 XML文件
? 在 ASP中应用 XML文件
什么是 XML
? eXtensible Markup Language
? 可扩展 标记语言
? 可扩展标记语言 XML是 SGML的子
集,其目标是允许普通的 SGML在
Web上以目前 HTML的方式被服务、
接受和处理。 XML被设计成易于实
现,且可在 SGML和 HTML之间互相
操作( W3C XML工作组对 XML的定
义)。
XML1.0语法
? XML是自描述数据
? 使用现有的国际标准
? 格式正规的 XML(本章主要介绍格式正规
的 XML的语法规则)
? 有效的 XML
XML文档实例分析
<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="show_book.xsl"?>
<!DOCTYPE catalog SYSTEM "catalog.dtd">
<!- - catalog last updated 2000-11-01 - ->
<catalog xmlns="http://www.example.com/catalog/">
<book id="bk101">
<author>Abercrombie,Kim</author>
<title>XML Developer's Guide</title>
<genre>Computer</genre>
<price>44.95</price>
<publish_date>2000-10-01</publish_date>
<description><![CDATA[An in-depth look at
creating applications with XML,using <,>,]]> and
&.</description>
</book>
<book id="bk109">
<author>Kress,Peter</author>
<title>Paradox Lost</title>
<genre>Science Fiction</genre>
<price>6.95</price>
<publish_date>2000-11-02</publish_date>
<description>After an inadvertent trip through a
Heisenberg,.....................</description>
</book>
</catalog>
序言
文档
元素
根元素 属性
元素
注释
文档
类型
定义
XML声明
文本
XML文档- XML声明
<?xml version="1.0" encoding="UTF-8"
standalone="yes"?>
XML声明一般是 XML文档的第一行
XML声明由以下几个部分组成:
version - -文档符合 XML1.0规范,现在只有 1.0
encoding - -文档字符编码,默认为 "UTF-8"
standalone - -文档定义是否在一个文件内
standalone="yes"
standalone="no"
返回
XML文档- 根元素
? 每个 XML文档必须有且只有一个根元素。
? 根元素是一个完全包括文档中其他所有元素的元
素。
? 根元素的起始标记要放在所有其他元素的起始标
记之前。
? 根元素的结束标记要放在所有其他元素的结束标
记之后。
返回
XML文档- 元素
<TITLE> APTech
Ltd.</TITLE>
元素 TITLE
开始标记
结束标记
内容
<TITLE/>
空元素 TITLE
<TITLE ID="101"/>
空元素 TITLE
返回
元素之间的关系:子元素 /父元素、祖先 /后代
元素内容的类型,嵌套元素 /字符数据 /实体引用 /
CDATA节 /处理指令 /注释
XML文档- 属性
<Student ID="100">
<Name>TOM</Name>
</Student>
? 属性值用双引号( ")或单引号( ')分隔(如果属性值中
有 ',用 "分隔;有 ",用 '分隔)
? 一个元素可以有多个属性,它的基本格式为:
<元素名 属性名 ="属性值 ">
? 特定的属性名称在同一个元素标记中只能出现一次
? 属性值不能包括 <,>,&
返回
实体
? 作用:避免重复输入 -- (宏、变量)
? XML中五个预定义实体
? 自定义实体语法:
<!DOCTYPE 根元素 [
<!ENTITY 实体名 "实体内容 ">
]>
? 引用已定义的实体:
&实体名 ;
实体 符号
< <
> >
& &
" "
&apo
s; '
实例
返回
格式正规的 XML文档
遵循如下规则的 XML文档称为格式正规的 XML
文档:
?语法规范
– 必须有 XML声明语句
<?xml version="1.0" encoding="gb2312"?>
– 必须有且仅有一个根元素
– 标记大小写敏感
– 属性值用引号
– 标记成对
– 空标记关闭
– 元素正确嵌套
格式正规的 XML文档 (续 )
?元素语法
– 名称中可以包含字母、数字或者其它字符
– 名称不能以数字开头
– 名称中不能含空格
– 名称中不能含冒号 (注:冒号留给命名空间使用 )
格式正规的 XML文档 语法总结
1,XML文档结构
文档,XML声明、根元素、
2,XML文档专用标记
注释、处理指令 PI,CDATA节
3,元素和属性
元素、属性的表示
4,字符和实体引用
6.2 XML组件
利用 XML组件来操作 XML文件
1、创建 COMDocument对象
? 语法
– Set 对象名 =server.createobject(“msxml.domdocument”)
2、读取 XML文件
<%
set objxml=server.createobject(“microsoft.xmldom”)
objxml.async=false
objxml.load(server.mappath(“data/6-1.xml”))
set objlst=objxml.getelementsbytagname(“site”)
intlines=objlst.length
response.write intlines
%>
3、向 XML文件输出数据? <%
? dim xmldoc,flag,filename
? filename=server.mappath("6-1.XML")
? set xmldoc=server.createobject("microsoft.xmldom")
? xmldoc.async=false
? flag=xmldoc.load(filename)
? if flag then
? dim element,e2
? set element=xmldoc.createElement("student")
? set e2=xmldoc.createElement("no")
? e2.text="10"
? element.appendchild e2
? set e2=xmldoc.createElement("name")
? e2.text="zhangshan"
? element.appendchild e2
? set e2=xmldoc.createElement("gre")
? e2.text="110"
? element.appendchild e2
? set e2=xmldoc.createElement("TOEFL")
? e2.text="410"
? element.appendchild e2
? set e2=xmldoc.createElement("TSE")
? e2.text="410"
? element.appendchild e2
? xmldoc.documentElement.appendchild element
? xmldoc.save filename
? end if
? %>
网站导航系统的实现
? 案例二十六
6.2 数据岛技术
参看案例二十九
参考资料
? XML程序设计 清华大学出版社
总结
? 了解基本 XML语法知识
? 在 ASP中应用 XML文件
6.1 ASP操作 XML文件
From,吴教育
Email,wujiaoyu@21cn.com
Q Q,188128997
本章内容与教学安排
理论,2学时
实验,2学时
6.1 ASP操作 XML文件
课程引入与回顾
? ADO对象
? Connection,RecordSet,Command对
象
? 连接数据库的方法
目标
? 了解 XML文件
? 在 ASP中应用 XML文件
什么是 XML
? eXtensible Markup Language
? 可扩展 标记语言
? 可扩展标记语言 XML是 SGML的子
集,其目标是允许普通的 SGML在
Web上以目前 HTML的方式被服务、
接受和处理。 XML被设计成易于实
现,且可在 SGML和 HTML之间互相
操作( W3C XML工作组对 XML的定
义)。
XML1.0语法
? XML是自描述数据
? 使用现有的国际标准
? 格式正规的 XML(本章主要介绍格式正规
的 XML的语法规则)
? 有效的 XML
XML文档实例分析
<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="show_book.xsl"?>
<!DOCTYPE catalog SYSTEM "catalog.dtd">
<!- - catalog last updated 2000-11-01 - ->
<catalog xmlns="http://www.example.com/catalog/">
<book id="bk101">
<author>Abercrombie,Kim</author>
<title>XML Developer's Guide</title>
<genre>Computer</genre>
<price>44.95</price>
<publish_date>2000-10-01</publish_date>
<description><![CDATA[An in-depth look at
creating applications with XML,using <,>,]]> and
&.</description>
</book>
<book id="bk109">
<author>Kress,Peter</author>
<title>Paradox Lost</title>
<genre>Science Fiction</genre>
<price>6.95</price>
<publish_date>2000-11-02</publish_date>
<description>After an inadvertent trip through a
Heisenberg,.....................</description>
</book>
</catalog>
序言
文档
元素
根元素 属性
元素
注释
文档
类型
定义
XML声明
文本
XML文档- XML声明
<?xml version="1.0" encoding="UTF-8"
standalone="yes"?>
XML声明一般是 XML文档的第一行
XML声明由以下几个部分组成:
version - -文档符合 XML1.0规范,现在只有 1.0
encoding - -文档字符编码,默认为 "UTF-8"
standalone - -文档定义是否在一个文件内
standalone="yes"
standalone="no"
返回
XML文档- 根元素
? 每个 XML文档必须有且只有一个根元素。
? 根元素是一个完全包括文档中其他所有元素的元
素。
? 根元素的起始标记要放在所有其他元素的起始标
记之前。
? 根元素的结束标记要放在所有其他元素的结束标
记之后。
返回
XML文档- 元素
<TITLE> APTech
Ltd.</TITLE>
元素 TITLE
开始标记
结束标记
内容
<TITLE/>
空元素 TITLE
<TITLE ID="101"/>
空元素 TITLE
返回
元素之间的关系:子元素 /父元素、祖先 /后代
元素内容的类型,嵌套元素 /字符数据 /实体引用 /
CDATA节 /处理指令 /注释
XML文档- 属性
<Student ID="100">
<Name>TOM</Name>
</Student>
? 属性值用双引号( ")或单引号( ')分隔(如果属性值中
有 ',用 "分隔;有 ",用 '分隔)
? 一个元素可以有多个属性,它的基本格式为:
<元素名 属性名 ="属性值 ">
? 特定的属性名称在同一个元素标记中只能出现一次
? 属性值不能包括 <,>,&
返回
实体
? 作用:避免重复输入 -- (宏、变量)
? XML中五个预定义实体
? 自定义实体语法:
<!DOCTYPE 根元素 [
<!ENTITY 实体名 "实体内容 ">
]>
? 引用已定义的实体:
&实体名 ;
实体 符号
< <
> >
& &
" "
&apo
s; '
实例
返回
格式正规的 XML文档
遵循如下规则的 XML文档称为格式正规的 XML
文档:
?语法规范
– 必须有 XML声明语句
<?xml version="1.0" encoding="gb2312"?>
– 必须有且仅有一个根元素
– 标记大小写敏感
– 属性值用引号
– 标记成对
– 空标记关闭
– 元素正确嵌套
格式正规的 XML文档 (续 )
?元素语法
– 名称中可以包含字母、数字或者其它字符
– 名称不能以数字开头
– 名称中不能含空格
– 名称中不能含冒号 (注:冒号留给命名空间使用 )
格式正规的 XML文档 语法总结
1,XML文档结构
文档,XML声明、根元素、
2,XML文档专用标记
注释、处理指令 PI,CDATA节
3,元素和属性
元素、属性的表示
4,字符和实体引用
6.2 XML组件
利用 XML组件来操作 XML文件
1、创建 COMDocument对象
? 语法
– Set 对象名 =server.createobject(“msxml.domdocument”)
2、读取 XML文件
<%
set objxml=server.createobject(“microsoft.xmldom”)
objxml.async=false
objxml.load(server.mappath(“data/6-1.xml”))
set objlst=objxml.getelementsbytagname(“site”)
intlines=objlst.length
response.write intlines
%>
3、向 XML文件输出数据? <%
? dim xmldoc,flag,filename
? filename=server.mappath("6-1.XML")
? set xmldoc=server.createobject("microsoft.xmldom")
? xmldoc.async=false
? flag=xmldoc.load(filename)
? if flag then
? dim element,e2
? set element=xmldoc.createElement("student")
? set e2=xmldoc.createElement("no")
? e2.text="10"
? element.appendchild e2
? set e2=xmldoc.createElement("name")
? e2.text="zhangshan"
? element.appendchild e2
? set e2=xmldoc.createElement("gre")
? e2.text="110"
? element.appendchild e2
? set e2=xmldoc.createElement("TOEFL")
? e2.text="410"
? element.appendchild e2
? set e2=xmldoc.createElement("TSE")
? e2.text="410"
? element.appendchild e2
? xmldoc.documentElement.appendchild element
? xmldoc.save filename
? end if
? %>
网站导航系统的实现
? 案例二十六
6.2 数据岛技术
参看案例二十九
参考资料
? XML程序设计 清华大学出版社
总结
? 了解基本 XML语法知识
? 在 ASP中应用 XML文件