ebXML - CPP e CPA
Um Perfil de Protocolo de Colaboração (CPP) fornece todas as informações necessárias sobre como um determinado parceiro comercial pretende fazer negócios eletrônicos. Um CPP define os seguintes atributos de um parceiro comercial:
Capacidades de negócios por meio de processos de negócios.
A função (comprador ou seguradora) que desempenham em uma colaboração.
Canais de entrega e protocolos de transporte. (HTTP, SMTP, etc.)
Forma de embalagem de documentos comerciais.
Restrições de segurança (SSL, Certificados Digitais).
Configuração por parte para especificações do processo de negócios.
Um CPP é armazenado no registro ebXML com um Globally Unique Identifier (GUID) e os parceiros de negócios podem encontrar o CPP uns dos outros por meio do registro.
As informações no CPP estão disponíveis para serem pesquisadas, portanto, um potencial parceiro comercial pode determinar se a organização tem capacidade para fazer negócios.
Estrutura de um CPP
CPP define namespaces em seu elemento raiz e uma versão para distinguir quaisquer alterações subsequentes. A estrutura de um CPP consiste em um elemento raiz do Perfil de Protocolo de Colaboração com os seguintes elementos:
PartyInfo: O elemento PartyInfo fornece informações sobre a organização.
Packaging:O elemento Packaging fornece informações sobre a maneira como as mensagens são realmente construídas. As mensagens são processadas como mensagens SOAP.
Signature: Parte opcional do documento
Comment elements: pode ser incluído.
<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>
Acordo de Parceiro Comercial
Um Acordo de Parceiro Comercial (TPA) é um contrato que define os termos e condições legais e as especificações técnicas para ambos os parceiros na relação comercial. Um CPA é derivado de CPPs de parceiros comerciais.
As regras especificadas pelo TPA eletrônico são independentes dos processos de negócios em qualquer uma das partes. A descrição técnica dos termos e condições do TPA está expressa em documento XML, que configura cada sistema de TI para operar de acordo com as regras do contrato.
As propriedades TPA incluem seu nome, nomes de parceiros, datas de início e término, funções e outros parâmetros. Normalmente, uma parte gera um CPA e o oferece à outra parte para aprovação. Uma vez que ambos os lados tenham chegado a um acordo, cada um pega uma cópia eletrônica do mesmo CPA e a usa para configurar seus sistemas.
O CPA também pode ser adicionado ao registro para referência, mas este não é um requisito padrão.
Estrutura de um CPA
CPA define namespaces em seu elemento raiz e uma versão para distinguir quaisquer alterações subsequentes. A estrutura de um CPP consiste em um elemento raiz do Acordo de Protocolo de Colaboração junto com os seguintes elementos:
Start and End: Esses elementos representam, em tempo universal coordenado, o início e o fim do período de vigência deste CPA.
PartyInfo:O elemento PartyInfo fornece informações sobre a organização. Aqui, os elementos PartyInfo são incluídos para ambas as partes envolvidas no contrato.
Packaging:O elemento Packaging fornece informações sobre a maneira como as mensagens são realmente construídas. As mensagens são processadas como mensagens SOAP.
Signature: Parte opcional do documento.
Comment elements: pode ser incluído.
<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>