尽管不能将多个元素映射到相同的单元格位置,但是可以将多个架构映射到一个工作薄。通常您会使用一个架构导入数据,使用另一个架构导出数据。Excel 使您很容易就可以将 XML 数据导入或导出架构映射。如果在 Excel 中打开未引用架构的 XML 文件,Excel 可以根据 XML 数据和结构推断出一种架构。如果将工作薄保存为 SpreadsheetML,Excel 将在文件格式中保存详细的映射信息,还将保存各个架构的完整副本。
尽管 Excel 没有为 Web 服务提供本地支持,但由于工作表中的 XML 映射的作用类似于显示变换,所以很容易在 Microsoft Visual Studio .NET 中使用代码接收 Web 服务中的数据,然后使用 Excel 对象模型通过某种方法将数据直接放到映射中。与以前的数据处理方法相比,这显著提高了工作效率。
Microsoft Office InfoPath 2003。自定义 XML 架构是每个 InfoPath 窗体解决方案的核心。InfoPath 窗体上的控件与架构所定义的 XML 元素一一对应,而 InfoPath 也强制根据架构对捕获的信息进行验证。在 InfoPath 中捕获的最终信息以自定义 XML 架构的格式保存在一个 XML 文件中,InfoPath 没有任何特殊的文件格式。您只能将一个架构用作一个窗体的基础。
当 InfoPath 窗体将捕获的信息另存为 XML 时,会在文档顶部包含一个 PI(XML 处理指令)以标识相应的模板解决方案,使文档总是与该特定的窗体模板相关联。同样,您可以打开具有该 InfoPath 窗体模板和该命名空间的任何 XML。
有关详细信息,请参阅 InfoPath 2003。
Microsoft Office Access 2003。Access 主要使用自定义 XML 架构导入和导出数据,以便于与其他系统交换数据。您还可以在导入或导出过程中应用 XSL 变换,从而更灵活地决定可以使用的 XML 格式。
导入 XML 数据时,如果 XML 引用了附带的架构,Access 将根据架构定义识别数据类型。但是,将 XML 数据导入 Access 时不需要架构。如果未引用架构,Access 将根据传入数据推断出一种结构。
在以 XML 格式导出数据方面,Access 2003 也比以前的 Access 版本提供了更大的灵活性。您可以根据当前“筛选器”和“排序”视图将导出限制为只导出选中的数据。Access 还可以按照 XML 格式导出相关的表格。这样,您可以在一个标准 XML 文件中包括分层数据,以便于在其他系统中使用。
您可以使用新机制部署智能文档解决方案,用户只要打开通过电子邮件获得的文档或从 Web 服务器或文件服务器下载的文档就可以进行安装。这些解决方案实现了高度的安全性,符合 Office 的安全设置,在部署站点时需要使用受信任的服务器,并要求对所有解决方案代码进行签名。智能文档还可以从受信任的服务器上自动进行更新,从而使解决方案的升级更加容易。您无需直接安装或管理客户端代码。
2楼 紫薇 发表于:2006-6-22 23:32:04 智能文档技术
您可以使用现有的文档,也可以从头开始构建智能文档解决方案。为此,必须将文档附着到一个基础 XML 架构上。有关详细信息,请参阅 Custom-defined XML Schema Support。然后,解决方案将以此架构为基础,用相应的 XML 元素标记出解决方案。您可以编写代码,以响应当用户的插入点进入映射到 XML 元素的文档区域时触发的事件。自定义代码应在任务窗格中为用户提供专用的 UI。
创建智能文档的方法有多种,包括使用 ISmartDocument 接口、Visual Studio Tools for Office 2005 (Beta 1) 和 Information Bridge Framework。每种方法都提供不同特色的技术,适用于不同类型的解决方案的需要。请注意,不能使用 Microsoft Visual Studio Tools for the Microsoft Office System 2003 创建智能文档解决方案,因为该软件不支持通过编程方式访问任务窗格。下表提供了每种技术的主要决定因素,后面的段落介绍了基础技术。
表 1:智能文档开发技术选项
解决方案
解决方案的预计实现时间
技术
其他注意事项
"Visual Studio Tools for Office, version 2005 Beta 1"
2005
基于 .NET
最灵活
ISmartDocument 接口
2004 +
基于 COM
基于 .NET,且带有 PIA 或 Vertigo 托管智能文件包装程序
Information Bridge Framework
2004 +
基于 .NET 且带有声明编程模型,需要进行基础结构投资
有助于减少文档交互,重点在于提供业务系统数据/功能,适于多种解决方案
ISmartDocument 接口。如前文所述,智能文档解决方案需要文档具有基础 XML 结构。然后,您可以使用基于 COM 的 ISmartDocument 接口生成驱动解决方案的自动机制。您编写的代码可以直接处理文档、在任务窗格中显示信息并与服务器端进程进行交互,例如检索数据、将文档或文档内容路由到业务系统中以完成解决方案。
Visual Studio Tools for Office 2005 (Beta 1)。除了其他用途外,这些工具还为 XML 元素提供了基于 .NET 的事件、到 XML 结构的数据绑定以及通过允许在任务窗格中使用自定义的 Windows 窗体用户控件而提供的更大灵活性,从而改进了实现智能文档解决方案的方式。最终的解决方案将从 .NET Framework 安全模型中受益。Visual Studio Tools for Office 2005 (Beta 1) 计划于 2005 年在 Visual Studio 2005 问世前后发布。
有关 Visual Studio Tools for Office 2005 (Beta 1) 的详细信息,请参阅 Visual Studio Tools for the Microsoft Office System。
Information Bridge Framework。您也可以使用 Information Bridge Framework 来生成智能文档。然而,使用 Information Bridge Framework 生成的解决方案需要在企业 Web 服务和元数据设计方面进行大量的前期投资。鉴于此,如果组织 (1) 正在进行 Information Bridge Framework 基础结构投资,以便将来自多个后端系统的信息集成在一起;(2) 考虑可以使用 Information Bridge Framework 基础结构的多个解决方案;和/或 (3) 打算使用声明编程模型,那么就可以使用 Information Bridge Framework 技术。
有关 Information Bridge Framework 的详细信息,请参阅 Information Bridge Framework。
开发人员和组织也受益匪浅,因为通过实现一个直观的、符合行业标准的 Web 服务,通过该服务提供企业信息,可以在任务窗格中轻松地将企业信息提供给所有(或选定的)用户。可以从服务器上或通过策略来配置和更新提供给用户的服务。
“搜索”任务窗格技术
Word、Excel、Microsoft Office Outlook 2003、Microsoft Office PowerPoint 2003、Microsoft Office Publisher 2003、Microsoft Office OneNote 2003、Microsoft Office Visio 2003 和 Internet Explorer(如果安装了 Office 程序)中都可以使用“搜索”任务窗格。Office 2003 Edition 提供的搜索选项包括基本资源,例如多种语言的辞典和字典、语言翻译、联机百科全书和 Web 搜索。还有一个简单的 Web 服务 URL,可以通过激活该 URL 来启动 SharePoint 站点搜索。
要在“搜索”任务窗格中提供信息,需要使用“搜索”任务窗格所需的方法名称和架构来实现符合行业标准的 Web 服务。架构用于描述所需的查询和结果 XML 流。您可以设置搜索以访问本地和远程数据源,这些数据源既可以位于公司防火墙后,也可以位于 Internet 上。可以使用 Windows 身份验证或 Internet 密码来确保安全性。“搜索”任务窗格与 Internet Explorer 共享 Cookie 和缓存。管理员可以从企业级别控制“搜索”任务窗格,使用搜索服务的 Discovery Web 服务自动提供服务或通知服务的可用性。
智能标记是从 Office XP 中开始引入的,根据用户和开发人员的反馈,在 Office 2003 Edition 中做了改进。在 Office 2003 Edition 中,Word、Excel、Outlook(将 Word 2003 作为电子邮件编辑器时)、Access 和 PowerPoint 都提供了智能标记功能。您也可以将智能标记与人名(使用 Outlook 中的“联系人”菜单)、Office 2003 Edition 中的所有任务窗格以及 Microsoft SharePoint 产品和技术一起使用。在 Microsoft Internet Explorer 中,您也可以为网页中嵌入的智能标记使用智能标记操作。
实现智能标记涉及到两个主要接口,一个是 ISmartTagRecognizer,用于识别和标记文本;另一个是 ISmartTagAction,用于执行操作。Office 2003 Edition 通过使用扩展接口 ISmartTagRecognizer2 和 ISmartTagAction2 来提供新功能。尽管可以借助 PIA 使用 Visual Studio .NET 来实现智能标记,但通常还是通过生成 COM DLL 来实现这些接口。Visual Studio Tools for Office 2005 (Beta 1) 也提供了创建托管智能标记的功能,尽管此功能特定于基于 Word 和 Excel 文档的解决方案。另一种方法是使用 Microsoft Office 智能标记列表 (MOSTL),通过 XML 文件实现更简单的智能标记。识别器和操作通过类型标识符连接在一起,您甚至可以结合使用这些技术来实现它们。
下载并开始使用 Office 2003 智能标记 SDK:Office 2003:Smart Tag Software Development Kit (SDK)
·
了解如何在智能标记列表中使用常规表达式:Regular Expression Support in Microsoft Office System Smart Tags
·
了解如何在 Access 2003 中使用智能标记:Developing Smart Tag Solutions with Microsoft Office Access 2003
·
了解如何在搜索服务中使用智能标记:Using Smart Tags with Research Services for the Microsoft Office System
·
学习在 Excel 中使用智能标记深入分析数据的示例:Use Smart Tags to Enable Data Drill-Down in Excel
Web 服务支持
Web 服务是实现数据交换和远程应用程序逻辑调用的行业标准,通过使用 XML 消息传送和 Internet 技术在防火墙和不同的系统之间传输数据。尽管远程访问数据和应用程序逻辑并不是一个新概念,但以松散耦合的 Internet 协议方式完成这些操作却是史无前例的。客户端和 Web 服务之间需要满足的唯一条件是接收者能理解所收到的消息。这样,不管程序是使用何种语言编写的、不管使用哪种组件模型,也不管运行在哪种操作系统上,都可以访问 Web 服务。
Web 服务支持的优点
Web 服务使您可以更容易地将传统系统中的数据提供给公司内的授权用户。这些目标用户通常是以前需要这些数据,但在使用 Web 服务的解决方案出现之前很难实现这一愿望的用户。
Web 服务支持技术
建议使用 Visual Studio .NET 将 Office 2003 Edition 中的程序与 Web 服务连接起来。使用 Visual Studio,您可以通过很少的代码更轻松地利用最新的 Web 服务标准,还可以获得大量功能全面的对象,用于处理 XML 有效负载。然后,您可以将 Web 服务中的 XML 集成到 Office 程序的自定义架构功能中,反之亦然。
Visual Studio Tools for Office 是将 Word 和 Excel 文档解决方案与 Web 服务集成的最佳开发工具。此外,Information Bridge Framework 可以帮助您使用 Web 服务和关联的元数据在多个业务系统之间建立关系,然后可以将其并入到 Office 解决方案中。
如果需要从 VBA(或 Visual Basic 6)中访问 Web 服务,您可以下载免费的 Microsoft Office 2003 Edition Web 服务工具包,它可以帮助您创建与基本 Web 服务进行交互所需的代码。请注意,此工具包按原样提供,并且只能通过对等新闻组获得支持。其他开发人员可以通过手动解释 SOAP 消息,在任何环境中与 Web 服务进行互操作。