cXML 支持概述

WebSphere Business Integration Connect 文档管理器通过 XML 文档的根元素名称(cXML)标识 cXML 文档,并通过 cXML DOCTYPE(DTD)标识版本。例如,下面的 DOCTYPE 针对 cXML V1.2.009:

<!DOCTYPE cXML SYSTEM "http://xml.cXML.org/schemas/cXML/1.2.009/cXML.dtd">

文档管理器对 cXML 文档执行 DTD 验证;然而,Business Integration Connect 不提供 cXML DTD。 您可以从 www.cxml.org 下载它们;然后通过社区控制台中的验证映射模块将它们上载到 Business Integration Connect。上载 DTD 之后,将它与 cXML 文档流关联起来。请参 阅配置中心以获取将 DTD 与 cXML 文档流关联的更多信息。

文档管理器使用了 cXML 根元素的 payloadID 和 timestamp 两个属性来进行文档管理。cXML payloadID 和 timestamp 用作文档的标识号和文档的时间戳记。 可以在社区控制台上查看这两个属性,以便进行文档管理。

cXML 头中的 From 和 To 元素包含用于文档路由和认证的 Credential 元素。下面的示例显示了 分别作为 cXML 文档的源和目的地的 From 和 To 元素:

<Header>
 <From>
  
             <Credential domain="AcmeUserId">
                 <Identity>admin@acme.com</Identity>
             </Credential>
             <Credential domain="DUNS">
                 <Identity>130313038</Identity>
             </Credential>
 </From
 <To>
             <Credential domain="DUNS">
                 <Identity>987654321</Identity>
             </Credential>
             <Credential domain="IBMUserId">
                 <Identity>test@ibm.com</Identity>
             </Credential>
 </To>
 

如果使用多个 credential 元素,则文档管理器将以 DUNS 编号作为企业标识来进行路由和认证。在没有给出 DUNS 编号的情况下,则使用第一个 Credential。

Business Integration Connect 不使用 Sender 元素中的信息。

在同步事务中,cXML 响应文档不使用 From 和 To 头。 响应文档通过请求文档建立的同一 HTTP 连接发送。

cXML 文档类型

cXML 文档有三种类型:请求、响应或消息。

请求

cXML 请求有多种类型。cXML 文档中的请求元素与 Business Integration Connect 中的文档流定义对应。典型的请求元素有:

下表显示了 cXML 请求文档中的元素和 Business Integration Connect 中的文档流定义之间的关系:

cXML 元素
文档流定义

cXML DOCTYPE
协议

DTD 版本
协议版本

请求(类型)

例如,OrderRequest

文档流

响应

目标参与者发送 cXML 响应以通知源参与者 cXML 请求结果。因为有些请求的结果可能不包含任何数据,所以 Response 元素可以选择只包含 Status 元素。Response 元素也可以包含任何应用程序级数据。例如,在 PunchOut 过程中,在 PunchOutSetupResponse 元素中包含了应用程序级数据。 典型的 Response 元素有:

下表显示了 cXML 请求文档中的元素和 Business Integration Connect 中的文档流定义之间的关系:

cXML 元素
文档流定义

cXML DOCTYPE
协议

DTD 版本
协议版本

响应(类型)

例如,ProfileResponse

文档流

消息

cXML 消息在 cXML Message 元素中包含了 Business Integration Connect 文档流信息。它可以包含可选的 status 元素(与 Response 元素中的相同)。 它将用于响应请求消息的消息中。

消息的内容是根据用户的业务需求定制的。在 <Message> 元素正下方的元素与在 Business Integration Connect 中创建的文档对应。在下面的示例中,SubscriptionChangeMessage 就是文档流:

<Message>
 <SubscriptionChangeMessage type="new">
            <Subscription>
                 <InternalID>1234</InternalID>
                 <Name xml:lang="en-US">Q2 Prices</Name>
                 <Changetime>1999-03-12T18:39:09-08:00</Changetime>
                 <SupplierID domain="DUNS">942888711</SupplierID>
                 <Format version="2.1">CIF</Format>
             </Subscription>
 </SubscriptionChangeMessage>
 </Message>
 

下表显示了 cXML 消息中的元素和 Business Integration Connect 中的文档流定义之间的关系:

cXML 元素
文档流定义

cXML DOCTYPE
协议

DTD 版本
协议版本

消息
文档流

区分单向消息与请求-响应文档的最简单方法是查看 Message 元素的内容,而不是 Request 或 Response 元素。

Message 可以包含下列属性:

Content-type 头和附加文档

所有的 cXML 文档必须包含 Content-type 头。 对于没有附件的 cXML 文档,将使用下列 Content-type 头:

cXML 协议利用 MIME 支持附加外部文件。例如,采购人员经常要用相关的备忘录、图或传真来阐明采购 请求。对于包含附件的 cXML 文档,必须使用下面列出的 Content-type 头之一:

边界元素是任何单独的文本,用于分开主体和 MIME 消息的有效负载部分。请参阅 www.cxml.org 上的“cXML 用户指南”以获取更多信息。

有效的 cXML 交互

Business Integration Connect 支持下列 cXML 文档流定义交互:


目标 源包 目标包 源协议 目标协议 通过 验证 转换

参与者

管理者



cXML

cXML

x

x


管理者

参与者



cXML

cXML

x

x


管理者

参与者



XML

cXML

x

x

x

Copyright IBM Corp. 1997, 2004