ebXML - CPP i CPA
Profil protokołu współpracy (CPP) zawiera wszystkie niezbędne informacje o tym, jak dany partner handlowy zamierza prowadzić biznes elektroniczny. CPP definiuje następujące atrybuty partnera handlowego:
Możliwości biznesowe poprzez proces biznesowy.
Rola (kupujący lub ubezpieczyciel), jaką odgrywają we współpracy.
Kanały dostaw i protokoły transportowe. (HTTP, SMTP itp.)
Sposób pakowania dokumentów biznesowych.
Ograniczenia bezpieczeństwa (SSL, certyfikaty cyfrowe).
Konfiguracja osobna ze specyfikacjami procesów biznesowych.
CPP jest przechowywany w rejestrze ebXML z unikatowym identyfikatorem globalnym (GUID), a partnerzy biznesowi mogą znaleźć wzajemne CPP za pośrednictwem rejestru.
Informacje w CPP są dostępne do przeszukiwania, więc potencjalny partner handlowy może określić, czy organizacja ma możliwości prowadzenia działalności.
Struktura CPP
CPP definiuje przestrzenie nazw w swoim elemencie głównym i wersję, aby rozróżnić wszelkie późniejsze zmiany. Struktura CPP składa się z głównego elementu profilu Collaboration Protocol z następującymi elementami:
PartyInfo: Element PartyInfo zawiera informacje o organizacji.
Packaging:Element Packaging dostarcza informacji o sposobie, w jaki wiadomości są faktycznie konstruowane. Komunikaty są przetwarzane jako komunikaty SOAP.
Signature: Opcjonalna część dokumentu
Comment elements: może być uwzględniony.
<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>
Umowa partnera handlowego
Umowa partnera handlowego (TPA) to umowa określająca zarówno warunki prawne, jak i specyfikacje techniczne dla obu partnerów w stosunkach handlowych. CPA pochodzi z CPP partnerów handlowych.
Zasady określone przez elektroniczny TPA są niezależne od procesów biznesowych obu stron. Opis techniczny warunków TPA jest wyrażony w dokumencie XML, który konfiguruje każdy system informatyczny do pracy na zasadach umowy.
Właściwości TPA obejmują jego nazwę, nazwy partnerów, daty rozpoczęcia i zakończenia, role i inne parametry. Zazwyczaj jedna strona generuje CPA i oferuje go drugiej stronie do zatwierdzenia. Gdy obie strony osiągną porozumienie, każda z nich pobiera elektroniczną kopię tego samego CPA i używa jej do konfiguracji swoich systemów.
CPA można również dodać do rejestru w celach informacyjnych, ale nie jest to wymóg standardowy.
Struktura CPA
CPA definiuje przestrzenie nazw w swoim elemencie głównym i wersję, aby rozróżnić wszelkie późniejsze zmiany. Struktura CPP składa się z głównego elementu Umowy o współpracy oraz z następujących elementów:
Start and End: Elementy te reprezentują, według uniwersalnego czasu koordynowanego, początek i koniec okresu, w którym CPA jest aktywny.
PartyInfo:Element PartyInfo zawiera informacje o organizacji. Tutaj elementy PartyInfo są uwzględnione dla obu stron zaangażowanych w umowę.
Packaging:Element Packaging dostarcza informacji o sposobie, w jaki wiadomości są faktycznie konstruowane. Komunikaty są przetwarzane jako komunikaty SOAP.
Signature: Opcjonalna część dokumentu.
Comment elements: może być uwzględniony.
<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>