XML for Analysis 规范[20]

[入库:2005年8月18日] [更新:2007年3月25日]

本文简介:选择自 angelgavin 的 blog

  • (i) 返回数据集后,提供程序将它打包成 xml,并将它发送回提出请求的客户端应用程序,如以下示例所示:
    <?xml version="1.0"?>
    <soap-env:envelope
     xmlns:soap-env="http://schemas.xmlsoap.org/soap/envelope/"
     soap-env:encodingstyle="http://schemas.xmlsoap.org/soap/encoding/">
     <soap-env:body>
      <executeresponse xmlns="urn:schemas-microsoft-com:xml-analysis">
       <return>
        <root>
         <xsd:schema xmlns:xsd="http://www.w3.org/2001/xmlschema">
          <!-- 结果的 xml 架构定义出现在这里 -->
          ...
         </xsd:schema>
         <olapinfo>
          <!—  此处是维信息 -->
         </olapinfo>
         <axes>
          <!—  此处是 mddataset 结果坐标轴的轴信息  -->
         </axes>
         <celldata>
          <!—  此处是单元格数据值和属性  -->
         </celldata> 
        </root>
       </return>
      </executeresponse>
     </soap-env:body>
    </soap-env:envelope>
    
  • (i) 客户端接收结果集,并执行用户所要求的所有其它任务。例如,客户端应用程序可以将结果集格式化为 xsl,并且将数据显示为用户可在 web 页上浏览的表。客户端应用程序也可以将结果集写入本地缓存,以尽量减少用户刷新所显示数据时的往返次数。
  • xml for analysis 和非 web 应用程序

    xml for analysis api 是为 web 应用程序优化的。但是,这并不妨碍面向局域网的应用程序利用此方法。以下应用程序就可以利用这一基于 xml 的 api:

    • 要求在客户端和服务器之间具有技术灵活性的客户端/服务器应用程序

    • 以多个操作系统为目标的客户端/服务器应用程序

    • 不需要有效状态即可增加服务器容量的客户端

    附录 b:soap 速查词汇表

    简单对象访问协议 (soap) 是一种使用 xml 以可扩展方式来表示数据和命令的行业标准。鉴于 soap 是此规范不可分割的一部分,本部分将提供背景信息并定义 soap 术语。

    web 服务

    从广泛的意义来说,web 服务是这样一种应用程序:它作为可与其它使用 internet 标准的 web 服务进行集成的服务来提供。它是可通过 url 寻址的资源,并且可以按编程的方式将信息返回给需要使用该信息的客户端。

    web 服务具有黑箱功能,无需专门处理某一服务的实现方式即可重复使用此功能。web 服务提供了定义完善的接口,这些接口称为合同,用于描述所提供的服务。web 服务可以使用 soap 来指定其消息的格式。

    soap

    soap 是一种用于在分散的分布式环境中交换信息的轻量协议。作为一种基于 xml 的协议,它由三个部分构成:

    • 定义架构(用于说明消息的内容及处理方式)的信封

    • 一组编码规则,用于表达应用程序定义的数据类型的实例

    • 表示远程过程调用和响应的约定

    下面是一个 soap 请求示例:

    点击此出浏览

    相应的数据响应可能如下所示:

    点击此出浏览

    web 服务描述语言 (web services description language, wsdl)

    随着通信协议和消息格式在 web 社区中的标准化,以结构化方式来描述通信的可能性和重要性也在日益增加。web 服务描述语言 (wsdl) 通过定义 xml 语法将网络服务描述成具有消息交换功能的通信端点的集合,从而满足了这种需要。wsdl 服务定义为分布式系统提供了文档,并且可以用作应用程序通信中所涉及的详细信息的自动化方法。

    wsdl 文档将服务定义为网络端点或网络端口的集合。在 wsdl 中,端点和消息的抽象定义已从它们的具体网络部署或数据格式绑定中分离出来。这样就可以重复使用抽象定义:

    • 消息 - 对所交换数据的抽象描述

    • 端口类型 - 操作的抽象集合

    一种特定端口类型的具体协议和数据格式规范构成了一个可重复使用的绑定。一个端口是通过将一个网络地址和一个可重复使用的绑定相关联来定义的;一个端口集合定义一种服务。

    要获得 wsdl 完整信息的链接,请参见附录 e

    附录 c: 从 xml for analysis 到 ole db 的映射

    由于 xml for analysis 是根据 ole db 中的定义来构建的,您可以通过参考所述领域的 ole db 规范来获得详细信息。

    函数映射

    下表将 ole db 和 ole db for olap 映射到等价的 xml for analysis 操作。由于有些操作不适用,所以并非所有 ole db 函数都具有 xml for analysis 映射。例如,以导航方法(它们用于处理已收到的行集)为目标的方法将不适用,因为客户端将处理此操作。

    ole db 接口和命令 xml 实现
    icolumnsinfo::getcolumninfo execute 方法:

    properties:

    content = schema

    icommandprepare::prepare execute 方法:

    properties:

    content = none

    (以便仅验证命令)

    icommandproperties::getproperties discover 方法:

    requesttype:

    discover_properties

    icommandproperties::setproperties execute 方法:

    properties:

    <指定要更新的属性>

    注意:属性必须具有读/写权限。

    icommandtext::setcommandtext execute 方法:

    command 参数。

    idbinfo::getkeywords discover 方法:

    requesttype:

    discover_keywords

    idbinfo::getliteralinfo discover 方法:

    requesttype:

    discover_literals

    本文关键:XML for Analysis 规范
     

    本站最佳浏览方式为 分辨率 1024x768 IE 6.0(或更高版本的 IE浏览器)

    go top