揭开MSXML4.0的面纱

原创 2001年05月16日 13:10:00

揭开MSXML4.0的面纱

时间:2001/05/09 11:09 作者:孙一中 中国XML联盟

 

2001年4月16日,微软发布了MSXML 解析器4.0的技术预览版本。比起3.0版本,有不少改进的地方,例如对W3C最新XML Schema推荐建议的支持。本文将为你总体介绍该版本的新特性,以及如何在新的并列(side-by-side)模式中使用MSXML 4.0。MSXML 4.0安装程序可以在 MSDN Online Downloads 中下载。

Microsoft? XML Parser (MSXML) 4.0 技术预览版(Technology Preview Release)是MSXML 4.0的先期版本。该技术预览版提供了MSXML 4.0中新的重要特性,同时修改原有的错误、提高了性能,并提供了更多的样例和文档。

该版本最显著的新特点是对2001年3月30日W3C XML Schema推荐建议的支持。其中包括:

在DOM中对XML Schema 定义(XSD)语言的校验。原来的MSXML支持的是DTD和XDR(XML-Data Reduces Version)。而随着XML Schema的成熟,MSXML中也转向了对XSD的支持。目前可以采用XMLSchema对象来自动实现对XML Schema的校验功能。除了正则表达式之外你可以使用XML Schema中的所有特性。而正则表达式将在后续的版本中支持。

在XPath和XSLT中对XSD的支持。通过XPath和XSLT中提供的扩展函数你可以检查XSD类型的结点,对字符串和时间日期数值的比较、排序,或者可以以XSD中支持的方式将字符串转换为数字类型。

目前XML Schema规范还差最后一步,从推荐建议(Proposed Recommendation)成为正式建议(Recommendation)。在2001年的年中,XML

Schema将成为W3C的最终建议(Recommendation)。MSXML 4.0也将更新对它的支持。

另外该版本中也基于SAX2通用标准对顺序化XML的处理架构进行了扩展。这些扩展包括:

集成DOM和SAX处理模型,通过 SAXXMLReader和 MXXMLWriter对象实现SAX和DOM的互相转换。你可以使用MXXMLWriter在DOM树之外对象产生SAX事件,同样可以利用SAX事件建立DOM树。

类似于XSLT中通过<xsl:output>元素从结果树中产生HTML,也可以从SAX事件流中生成HTML,它是通过MSXML4.0中新的对象MXHTMLWriter对象实现的。

提供helper对象跟踪名域(namespace)声明。其中MXNamespaceManager对象完全支持2000年12月28日的SAX修正版本。

在MSXML 4.0技术预览版本还提供新的SaxApp Wizard机制简化在Microsoft Visual Studio?中开发SAX程序。通过该Wizard,你可以迅速地开发SAX应用框架,类似于新建项目的控制台或WFC应用。

和MSXML3.0不同之处还在于,MSXML4.0的应用模式称为并列模式(Side-by-Side Mode)。安装MSXML4.0时不必单独运行xminst.exe,而且安装后还可以提供对原来的低版本的支持,而不是替代原来的MSXML 2.0, MSXML 2.6或者MSXML 3.0版本。

我们用下面的表格来说明MSXML 4.0中新增的特点:

特性
XML Schema Definition (XSD) 的支持

支持W3C 2001年3月30日 XML Schema推荐建议,但还目前还不支持正则表达式和标识约束。

 

在XSD中支持XPath语言的扩展函数

MSXML4.0提供了一些XPath中提供的扩展函数,可以支持基于数据类型的节点计算。

 

IMXNamespaceManager和 IMXNamespacePrefixes接口

这两个新接口提供了便捷的方式来管理名域、名域前缀和名域URI。

SAX 到DOM的支持

通过SAX的 IMXWriter接口,你能够将IMXWriter的output属性设置为DOMDocument对象,从而从SAX事件可以生成DOMDocument对象。

DOM到SAX的支持

从DOMDocument触发SAX事件

MXHTMLWriter

MXHTMLWriter类是对IMXWriter接口的具体实现之一,可以从SAX应用中产生HTML输出。

创建C++ SAX应用的Wizard

SAX Win32 AppWizard可以从Microsoft产品支持服务中下载。它实现了在C++中进行SAX应用的编程。

增加了IServerXMLHTTPRequest样例

根据可户客户的要求,在IServerXMLHTTPRequest文档中添加了新的样李。

增强了XSLT开发指南

新增添了一些新的主题

新的GUIDs和PROGIDs

MSXML 4.0要安装三个DLL文件到你的系统目录:msxml4.dll, msxml4a.dll和msxml4r.dll。不过头文件(msxml2.h)、 .lib文件msxml2.lib)和.idl文件(msxml2.idl.)的名称都没有变化。

带你一步一步揭开Rxjava2.0的神秘面纱(7)

前言 上一节里我们学习了只使用Observable如何去解决上下游流速不均衡的问题, 之所以学习这个是因为Observable还是有很多它使用的场景, 有些朋友自从听说了Flowable之后就觉得...
  • jungle_pig
  • jungle_pig
  • 2017年02月15日 08:36
  • 542

了解黑客的关键工具---揭开Shellcode的神秘面纱

了解黑客的关键工具---揭开Shellcode的神秘面纱 2008-02-01 14:01:57 标签:黑客 Shellcode 入侵 休闲 网络安全 原创作品,允许转载,转载时请务必以超链...
  • Together_CZ
  • Together_CZ
  • 2017年05月29日 15:17
  • 164

零基础汇编揭开CPU的神秘面纱(堆栈、CPU保护模式)

汇编语言是所有编程语言中难度最大最不容易理解的一种编程语言,每个同学对它都是敬而远之。但是它对真正掌握计算核心原理、理解操作系统真正奥妙有着不可替代的作用。    本视频讲师应用深入浅出的语言来...
  • maochengtao
  • maochengtao
  • 2014年09月21日 21:50
  • 1339

零基础汇编揭开CPU的神秘面纱

《零基础汇编揭开CPU的神秘面纱(堆栈、CPU保护模式)》 课程讲师:大灰狼  课程分类:嵌入式\硬件 适合人群:初级 课时数量:19课时 用到技术:CPU保护模式 涉及项目:CPU ...
  • u013789665
  • u013789665
  • 2014年04月03日 09:16
  • 690

带你一步一步揭开Rxjava2.0的神秘面纱(4)

前言 在上一节中, 我们提到了Flowable 和Backpressure背压, 本来这一节的确是想讲这两个东西的,可是写到一半感觉还是差点火候,感觉时机未到, 因此,这里先来做个准备工作, 先带...
  • jungle_pig
  • jungle_pig
  • 2017年02月06日 16:58
  • 556

带你一步一步揭开Rxjava2.0的神秘面纱(8)

前言 在上一节中, 我们学习了FLowable的一些基本知识, 同时也挖了许多坑, 这一节就让我们来填坑吧. 正题 在上一节中最后我们有个例子, 当上游一次性发送128个事件的时候是没有任何问题...
  • jungle_pig
  • jungle_pig
  • 2017年02月17日 09:06
  • 1148

揭开J2EE的面纱

对于最初开始学习java的初学者来说首先应该知道java的版本,java开始推出了三个版本:J2SE,J2EE,J2ME.J2SE包含原始的核心类库。J2EE功能非常全面,用于数据处理和服务器端应用,...
  • u010858791
  • u010858791
  • 2015年05月29日 22:05
  • 873

揭开Socket面纱

Socket是什么?Socket是应用层与TCP/IP协议通信的中间软件抽象层,其实Socket就是一组接口。其实Socket就是把TCP/IP协议族隐藏在Socket接口后面,对程序员来说,可能你不...
  • u012194332
  • u012194332
  • 2015年08月31日 00:15
  • 254

揭开Socket编程的面纱

对TCP/IP、UDP、Socket编程这些词你不会很陌生吧?随着网络技术的发展,这些词充斥着我们的耳朵。那么我想问: 1.         什么是TCP/IP、UDP? 2.        ...
  • ab599100347
  • ab599100347
  • 2015年12月11日 14:05
  • 195

揭开SOKCET编程面纱

转载: http://blog.csdn.net/lizhifeng2009/article/details/8820228 1.         什么是TCP/IP、UDP? 2.     ...
  • liuling_8008
  • liuling_8008
  • 2013年10月15日 18:03
  • 536
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:揭开MSXML4.0的面纱
举报原因:
原因补充:

(最多只允许输入30个字)