免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
12下一页
最近访问板块 发新帖
查看: 7473 | 回复: 10
打印 上一主题 下一主题

XML技术预览 z [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2003-08-21 22:38 |只看该作者 |倒序浏览
一起学习XML  :wink:

一、显示XML
  XML文档本身只描述数据内容,它的显示功能由样式单来完成。利用样式单技术时,输出平台不局限于显示器,可以是打印机、绘图仪或者是多媒体播放器。使用独立的样式单文件制定显示格式的一大优势在于:对同一份数据文件可以制定不同的样式风格,应用在不同的场合,使数据能够更合理、更有针对性地表现出来,提高了数据的重用性。
  目前,W3C正式推荐的样式单标准有两种: 一种是层叠样式单CSS(Cascading Style Sheets);另一种是可扩展样式单语言XSL。
  CSS最初是用于制定HTML文档显示格式的,现在也可用来对XML文档进行简单的样式规划。CSS在HTML中的应用极为广泛,但它在文本置换、依据文本内容而决定显示方式、对数据进行排序等智能化的显示功能上略显不足。
  而XSL则较好地解决了CSS的这些问题,它最常用的功能是将XML的置标转换成为HTML的置标并显示输出。而且XSL还可以将XML文档向任何其他格式的结构文档进行转换。这种功能在B2B的商务模式中有着很好的应用前景。
  XSL利用模式匹配的方法,选择XML文档中需要处理的元素/属性,再针对这些特定的对象制定相应的转换规则。借助XSL,我们还可以添加新的元素/属性,对所有元素/属性进行重新排序、循环处理、条件判断等程序化的控制,使其适应各种复杂的需求。
  在XML文档中引用XSL的格式如下:
  <?xml-stylesheet type=“text/xsl” href=“Employees.xsl” ?>;
  一个XML文档只能引用一个XSL样式单。XML解析器在处理XML文档时,遇到处理指令后,会载入指定的XSL样式单,然后根据其中的规则进行相应的转换处理。

论坛徽章:
0
2 [报告]
发表于 2003-08-21 22:38 |只看该作者

XML技术预览 z

二、绑定XML
  Web服务器与客户机之间的数据传递方式有三种: HTML页面、XML文档以及XML数据岛。其中,XML数据岛通过特定的标签把XML数据直接嵌入到HTML文档中。采用数据岛作为交互手段,不仅可以使数据具备一定的语义信息,同时还能保持HTML原有的一些特色,如利用用户端脚本程序实现动态信息交换等。
  XML数据岛的实现方法是在HTML文档中使用<XML>;标签。代码的嵌入方式有两种: 直接嵌入(如例1)和外部引用(如例2)。
  例1:
  <XML ID=“MyXMLData”>;
  <?xml version=“1.0” ?>;
  ……XML definitions……
  </XML>;
  例2:
  <XML ID=“MyXMLData” SRC=“http://www.microsoft.com/MyXMLData.xml”>;
  </XML>;
  在插入数据岛之后,就可以把XML中的元素同HTML元素链接在一起,利用HTML的表现手法显示XML数据,这种链接关系被称为绑定。绑定的方式按照HTML元素的性质可以分为两种:单值对象和表格对象。
  单值对象的数据绑定需要在HTML元素中设置DATASRC属性和DATAFLD属性。DATASRC属性是区分XML数据岛对象的唯一标识,并且必须加上前缀“#”;DATAFLD属性则标识了数据岛中的元素对象。例3就是把一个HTML文本输入框与<salary>;元素进行了绑定。
  例3:
  <INPUT TYPE=“TEXT”
  DATASRC=“#MyXMLData”
  DATAFLD=“salary”>;
  至于表格对象,主要是与HTML中的<TABLE>;标签绑定。一般地,可以借助DSO(Data Source Object,数据源对象)等ActiveX控件更方便、有效地处理表格数据。具体使用方法在以后的内容中将做详细介绍。

论坛徽章:
0
3 [报告]
发表于 2003-08-21 22:39 |只看该作者

XML技术预览 z

三、访问XML
  Document Object Model(文档对象模型)简称为DOM,是对Web文档进行应用开发、编程的应用程序接口(API),是W3C公布的一种跨平台的、与语言无关的接口规范。
  DOM采用对象模型和一系列的接口来描述XML文档的内容和结构,即利用对象把文档模型化。这种对象模型实现的基本功能包括:
  ● 描述文档表示和操作的接口;
  ● 接口的行为和属性;
  ● 接口之间的关系以及互操作。
  DOM对结构化的XML文档进行解析,文档中的指令、元素、实体、属性等所有个体都可以用对象模型表示。整个文档的逻辑结构类似一棵树,生成的对象模型就是树的节点,每个对象同时包含了方法和属性。
  利用DOM,开发人员可以进行动态地创建XML文档、遍历结构、添加/修改/删除内容等操作。DOM面向对象的特性,使人们在处理和XML解析相关的事务时节省大量精力,是一种符合代码重用思想的强有力编程工具。

论坛徽章:
0
4 [报告]
发表于 2003-08-21 22:39 |只看该作者

XML技术预览 z

四、验证XML
  XML文档必须严格遵守语法规范,即都必须是“格式良好的”。同时,XML文档还应当符合语义方面的规范,即是“有效的”。对XML文档有效性的检查称为对XML的“验证”(Validation)。
  “格式良好的”是对XML文档最基本的要求。凡是“格式良好的”XML文档都可以被XML解析器解析,进而生成对象树,以便接受进一步的处理。而且“有效的” XML必定是“格式良好的”。在此基础上,还要遵守DTD或XML Schema的语法规定,只有这样才能保证XML文档的易读性,同时还能充分地体现数据信息之间的关系,从而更好地描述数据。
  DTD可以定义XML文档的词汇和语法。利用正则表达式,DTD除了可以说明XML文件中哪些元素是必需的、哪些是可选的、元素所能包含的属性等元素本身信息外,还可以描绘元素之间的结构信息。比如,某个元素可以嵌套哪些子元素、子元素的个数以及出现次序、是否可选等等。
  典型的DTD格式如下:
  ● 以DOCTYPE声明为起始标志,告诉解析器以下内容属于DTD;
  ● 位于DOCTYPE后的DTD名称,必须与XML文档中的根元素完全一致,后面再跟着一个“[”号,接下来才是DTD正文。
  DTD有两种使用方式: 内嵌式(如例4)和引用式(如例5)。它们在XML文档中的位置都必须位于根元素出现之前。
  例4:
  <?xml version=“1.0”?>;
  <!DOCTYPE employees [
  ……ELEMENT and ATTLIST definitions……
  ]>;
  <employees>;
  ……XML data……
  </employees>;
  例5:
  <?xml version=“1.0”?>;
  <!DOCTYPE employees SYSTEM “Employees.dtd”>;
  <employees>;
  ……XML data……
  </employees>;
  目前,DTD是W3C推荐的验证XML文档有效性的唯一正式规范,但它也有着许多不足:
  ● DTD过于复杂,要熟悉它的语法、标记集合需要一定的时间和精力,而且DTD采用的是非XML语法规则,不能用XML工具进行操作处理;
  ● DTD对数据类型定义支持不够,所定义的数据类型有限,并且都是针对属性而设立,无法满足电子商务等Web应用所需要的丰富数据类型;
  ● 扩展机制复杂,也很脆弱,最大的弊病在于不能表达元素之间的相互关系;
  ● DTD不支持名称空间的机制。
  以上种种缺陷,促使W3C组织致力于寻求一种新的机制来取代DTD。在众多的标准之中, Microsoft公司为主提出的XML Schema较为引人注目。它具有完全符合XML语法、丰富的数据类型、良好的可扩展性以及易被DOM等XML解析器处理等优点。
  最后介绍一个用于XML验证的小工具:xmlint.exe。它可以用来验证XML文档是“格式良好的”以及“有效的”,用法如下:
  xmlint c:\my_xml\*.xml
  <!--验证所有XML文档是否是“有效的”-->;
  xmlint -w c:\my_xml\*.xml
  <!--仅验证是否是“格式良好的”-->;
  可以访问下面的网址下载该软件:
  http://msdn.microsoft.com/downloads/tools/xmlint/xmlint.asp

论坛徽章:
0
5 [报告]
发表于 2003-08-22 00:36 |只看该作者

XML技术预览 z

介绍XML验证,最好不要从DTD开始,用XML  Schema要好一些的。W3的规范啊。

论坛徽章:
0
6 [报告]
发表于 2003-08-22 00:38 |只看该作者

XML技术预览 z

我也是刚开始学习

看了看这篇觉得比较简单就转过来了

论坛徽章:
0
7 [报告]
发表于 2003-08-22 00:50 |只看该作者

XML技术预览 z

我手中有很多这方面的电子文档,可惜我家里的主机学校没给我做路由,外面无法访问,否则给你开一个帐号.很多UNIX、JAVA、Oracle、XML和软工的东东。

论坛徽章:
0
8 [报告]
发表于 2003-08-22 00:53 |只看该作者

XML技术预览 z

等考完试再好好看看吧!

论坛徽章:
0
9 [报告]
发表于 2003-08-22 12:12 |只看该作者

XML技术预览 z

做软件要是有项目练习的比较好
做不懂了就看资料
在这里希望大家能通过在这里的讨论明白很多软件技术的

并能一起做点东西的设计

论坛徽章:
0
10 [报告]
发表于 2006-07-19 01:33 |只看该作者
能把复杂问题讲的简单明了,就是高手。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP