XML实用教程 北京大学出版社 丁跃潮 张涛 叶文来 刘韵华 程旭曼 丁潇 张天桥 2018/11/23
7 XML数据源对象 理解数据岛和数据源对象的概念 掌握数据绑定的方法 熟悉HTML文档中嵌入XML数据的方法 了解支持DSO的HTML元素 2018/11/23
7.1 数据岛、XML数据源对象与数据绑定 7.1.1 数据岛和XML数据源对象 XML数据岛(Data Island)是指嵌入HTML文档中的扩展标识XMI信息。 XML数据源对象XML Data Source Object允许开发人员连接到结构化XML数据,并用动态HTML的数据绑定机制将它提供给HTML页面。 DSO从一个外部XML文件或嵌入Web页面的XML中析取XML数据,然后使用JavaScript操作这些数据 2018/11/23
7.1.2 数据绑定 1.数据绑定的作用和意义 Data Binding就是将外部数据集成到HTML文件,使表格等HTML元素绑定XML文档元素,从而实现XML数据在HTML页面中的显示。 数据绑定体系结构包括四个组成部分:数据源对象(Data Source Object)、数据显示对象(Data Consumers)和两个代理器(Binding Agent与Table Repetition Agent) 2018/11/23
【例7.1】HTML表格中绑定显示XML文档内容的简单实例 2.使用表格时数据绑定的方法 1建立HTML文档 2加入<XML>标签 3建立表格 4定义数据源DATASRC 5确定被绑定的字段DATAFLD 【例7.1】HTML表格中绑定显示XML文档内容的简单实例 2018/11/23
3.只显示单条记录时数据绑定的方法 选择合适的HTML标签,每一个绑定的HTML元素都要同时确定数据源(DATASRC)和绑定的字段(DATAFLD) 2018/11/23
7.1.3 XML与HTML结合的优势 1.数据可以在本地处理 2.提供给客户端结构化数据视图 3.集成不同来源的结构化数据 4.通过粒度更新来提高性能 5.网页界面修改不易破坏数据 2018/11/23
7.2 支持数据绑定的HTML元素 将HTML元素和XML文档绑定时,有三点需注意 首先,并非每个HTML元素都能绑定 单值对象(Single-valued Consumer) 表对象(Tabular Consumer)。 2018/11/23
表7.1 支持DSO的HTML元素 HTML元素 可更新 呈现HTML a 否 applet 是 button div frame iframe img input type="button" input type="checkbox" input type="hidden" input type="password" input type="radio" input type="text" legend marquee select span table textarea 2018/11/23
7.3 将XML文件数据嵌入HTML 7.3.1内部嵌入XML 以<XML ID=“自定义ID号”>开始,以</XML>结束。嵌入的位置可以任意 7.3.2 使用外部的XML文件 以<XML ID="自定义ID号" SRC="外部XML文件路径及文件名">开始,以</XML>结束 2018/11/23
7.4 结合脚本语言的XML 7.4.1 HTML中的XML数据岛记录编辑与添加 用JavaScript操作XML DSO的方法: movePrevious():指向前一个数据项。 moveNext():指向下一个数据项。 moveFirst():指向第一个数据项。 moveLast():指向最后一个数据项。 addNew():增加一个数据项。 对于VBScript,只需要把后面括号“()”去掉 2018/11/23
指向DSO的RecordSet对象还有以下属性: EOF:这个属性用来检测是否已经到达数据记录的底部 Absoluteposition:获取目前XML元素索引编号 Recordcount:获取拥有多少个XML元素 2018/11/23
采用内嵌XML文档或“SRC”属性导入XML文件 XML标记的处理还可以用<OBJECT>标记建立DSO对象 7.4.2 HTML中的XML数据岛记录集页面管理 采用内嵌XML文档或“SRC”属性导入XML文件 XML标记的处理还可以用<OBJECT>标记建立DSO对象 <OBJECT ID=”xmlDSO” CLASSID=”CLSID:550dda30-0541-11d2-9ca9-0060b0ec3d39”></OBJECT> 2018/11/23
可以使用脚本语言加载DSO数据源(XML文件),如: <script language="JavaScript"> var xmldoc = xmlDSO.XMLDocument; xmlDSO.async=false; xmldoc.load("code7_6.xml"); </script> 加载xml文档也可以使用Java自定义函数: function loadXML() { ver xmldoc=xmlDSO.XMLDocument; } 2018/11/23
如果不使用<OBJECT>标记建立DSO,则需要作如下定义: <XML ID="xmlDSO"></XML> 有了DSO对象,JavaScript和VBScript都可以使用属性控制XML元素的显示。DSO对象的DATAPAGESIZE属性设定表格显示的XML元素数目,没有指定此属性将全部显示。 2018/11/23
7.5 综合应用实例 较完整的图书资料显示网页 2018/11/23
小结 XML文档是一个层状架构的信息体,可以用作数据源 XML数据岛(Data Island)是指嵌入HTML文档中的XML信息。 数据绑定是将XML文档或其他外部数据集成到HTML文件, 数据绑定的体系结构包括四个组成部分:Data Source Object、Data Consumers、Binding Agent和Table Repetition Agent。 用于绑定的XML文档可以是嵌入到HTML文件内部的,也可以从外部载入。 XML数据源对象可以视为ADO Recordset对象,可以结合脚本语言操作记录集,方便地编制出展现数据的界面。 2018/11/23
谢谢 2018/11/23