ebXML:什么是CPP/CPA

696人浏览 / 0人评论

协作协议配置文件(CPP)提供了关于特定交易伙伴打算如何进行电子业务的所有必要信息。CPP定义了交易伙伴的以下属性:

1. 通过业务流程定义的业务能力。
2. 他们在协作中扮演的角色(买方或保险公司)。
3. 交付渠道和传输协议(HTTP、SMTP等)。
4. 业务文档的封装方式。
5. 安全约束(SSL、数字证书)。
6. 针对业务流程规范的每个单独配置。

CPP存储在ebXML注册表中,具有全局唯一标识符(GUID),业务合作伙伴可以通过注册表找到彼此的CPP。CPP中的信息可供搜索,因此潜在的交易伙伴可以确定组织是否具备进行业务的能力。

CPP的结构

CPP在其根元素上定义了命名空间和版本,以区分任何后续更改。CPP的结构包括根协作协议配置文件元素,其中包含以下元素:

PartyInfo:PartyInfo元素提供有关组织的信息。
Packaging:Packaging元素提供有关消息实际构造方式的信息。消息被处理为SOAP消息。
Signature:可选部分的文档。
Comment:可以包括评论。

<CollaborationProtocolProfile
xmlns="http://www.ebxml.org/namespaces/tradePartner"
xmlns:ds="http://www.w3.org/2000/09/xmldsig#"
xmlns:xlink="http://www.w3.org/1999/xlink"
version="1.1">
<PartyInfo>
    ...
    <!--REQUIRED, Repeatable-->
...
</PartyInfo>
<Packaging id="ID">
    ...
    <!--REQUIRED-->
    ...
<Packaging>
<ds:Signature>
    ...
    <!--OPTIONAL-->
    ...
</ds:Signature>
<Comment>
    ...
    <!-- OPTIONAL -->
    ...
</Comment>
</CollaborationProtocolProfile>

交易伙伴协议TPA/CPA

       交易伙伴协议(TPA)是一份合同,定义了交易关系中双方的法律条款和条件以及技术规格。CPA是由交易伙伴的CPP派生而来。电子TPA规定的规则与任一方的业务流程无关。来自TPA的条款和条件的技术描述以XML文档的形式表达,该文档配置了每个IT系统以便按照协议规则运行。TPA的属性包括其名称、合作伙伴名称、开始和结束日期、角色和其他参数。通常,一方生成CPA并提供给另一方审批。一旦双方达成协议,它们各自获取同一份CPA的电子副本,并将其用于配置其系统。CPA也可以添加到注册表以供参考,但这不是标准要求。

CPA的结构

CPA在其根元素上定义了命名空间和版本,以区分任何后续更改。CPA的结构包括一个根协作协议协定元素以及以下元素:

Start and End:这些元素表示以协调世界时的方式,此CPA有效期的开始和结束。
PartyInfo:PartyInfo元素提供有关组织的信息。此处包括涉及协议的双方的PartyInfo元素。
Packaging:Packaging元素提供有关消息实际构造方式的信息。消息被处理为SOAP消息。
Signature:可选部分的文档。
Comment:可以包括评论。

<CollaborationProtocolAgreement
xmlns="http://www.ebxml.org/namespaces/tradePartner"
xmlns:ds = "http://www.w3.org/2000/09/xmldsig#"
xmlns:xlink = "http://www.w3.org/1999/xlink"
cpaid="http://www.example.com/cpas/CPAS"
version="1.7">

<Status value = "proposed"/>
<Start>1998-04-07T18:50:00</Start>
<End>1999-04-07T18:50:00</End>

<ConversationConstraints invocationLimit = "150" concurrentConversations = "10"/>

<PartyInfo>
    ...
    <!--REQUIRED, repeatable-->
    ...
</PartyInfo>

<PartyInfo>
    ...
    <!--REQUIRED, repeatable-->
    ...
</PartyInfo>

<Packaging id="N20">
    ...
    <!--REQUIRED, repeatable-->
    ...
</Packaging>

<ds:Signature>
    <!--OPTIONAL-->
</ds:Signature>

<Comment xml:lang="en-gb">
    <!--OPTIONAL-->
</Comment>
</CollaborationProtocolAgreement>

全部评论