OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.

 


Help: OASIS Mailing Lists Help | MarkMail Help

ebxml-cppa message

[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]


Subject: updated CPPA samples for errata


Hi CPPA team

Based on my email [1] concerning typos in the sample CPP's and sample
CPA of the CPPA Specification version 2.0, I agreed [2] to provide
updated sample CPP's and CPA and XML files.

[1] http://lists.oasis-open.org/archives/ebxml-cppa/200312/msg00002.html
[2] http://lists.oasis-open.org/archives/ebxml-cppa/200401/msg00002.html

The current two CPP samples and CPA sample I downloaded from the
following URL's:

CPP A:
http://www.oasis-open.org/committees/download.php/238/cpp-example-companyA-2_0b.xml
CPP B:
http://www.oasis-open.org/committees/download.php/246/cpp-example-companyB-2_0b.xml
CPA:
http://www.oasis-open.org/committees/download.php/253/cpa-example-2_0b.xml

Please find attached 6 files:

- an updated sample CPP A
- an updated sample CPP B
- an updated sample CPA
- a file showing the difference between updated CPP A and original CPP A
- a file showing the difference between updated CPP B and original CPP B
- a file showing the difference between updated CPA and original CPA

In the difference files, lines beginning with "-" indicate that the line
is removed by the following line beginning with "+". The diff tool was
used to produce the difference files. I used a text editor emacs to edit
the files.

Please double check to make sure that I did not introduce another typo
while updating.

Here a quick list of changes (the diff files show the differences much
better):

1.)

cpp: from
"xlink:href="http://www.rosettanet.org/processes/3A4.xml#Buyer"; to
"xlink:href="http://www.rosettanet.org/processes/3A4.xml#buyer";
cpa: same
comment: Not a typo but now buyer and seller are lower case.

2.)

cpp: changed composite id from "RequestMsg" to "CompanyB_RequestMsg"
cpa: was fixed already

3.) 

cpp: spaces in one simplepart to make it same as others.
cpa: was fixed already

4.)

cpp: changed
from:
"tp:location="http://www.rosettanet.org/schemas/RequestPurchaseOrder.xsd";
to  :
"tp:location="http://www.rosettanet.org/schemas/PIP3A4RequestPurchaseOrder.xsd";
cpa: same

5.)

cpp: changed from "Acknowledgement" to "Acknowledgment"
cpa: same

6.) 

NOT changed:
tp:action from "ReceiptAcknowledgment" to "Receipt Acknowledgment".
comment: maybe missing space indicates signal rather business document.

7.)

cpp: changed from "draft-msg-header-05" to "msg-header-2_0"
cpa: was fixed already

8.)

cpp: changed from "PurchaseOrderConfirmation.xsd.xsd" to
"PurchaseOrderConfirmation.xsd"
cpa: same

I did not rename the updated files to express the changes.

Kind regards.

Sacha Schlegel
-- 
------------------------------------------------
Sacha                                   Schlegel
------------------------------------------------
public key:            www.schlegel.li/sacha.gpg
------------------------------------------------
<?xml version="1.0"?>
<!-- Copyright UN/CEFACT and OASIS, 2001. All Rights Reserved. -->
<tp:CollaborationProtocolAgreement
  xmlns:tp="http://www.oasis-open.org/committees/ebxml-cppa/schema/cpp-cpa-2_0.xsd";
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";
  xmlns:xlink="http://www.w3.org/1999/xlink";
  xmlns:ds="http://www.w3.org/2000/09/xmldsig#";
  xmlns:xsd="http://www.w3.org/2001/XMLSchema";
  xsi:schemaLocation="http://www.oasis-open.org/committees/ebxml-cppa/schema/cpp-cpa-2_0.xsd
                      cpp-cpa-2_0b.xsd"
  tp:cpaid="uri:companyA-and-companyB-cpa" tp:version="2_0b">
  <tp:Status tp:value="proposed"/>
  <tp:Start>2001-05-20T07:21:00Z</tp:Start>
  <tp:End>2002-05-20T07:21:00Z</tp:End>
  <tp:ConversationConstraints tp:invocationLimit="100" tp:concurrentConversations="10"/>
  <!-- Party info for CompanyA -->
  <tp:PartyInfo
    tp:partyName="CompanyA"
    tp:defaultMshChannelId="asyncChannelA1"
    tp:defaultMshPackageId="CompanyA_MshSignalPackage">
    <tp:PartyId tp:type="urn:oasis:names:tc:ebxml-cppa:partyid-type:duns">123456789</tp:PartyId>
    <tp:PartyRef xlink:type="simple" xlink:href="http://CompanyA.com/about.html"/>
    <tp:CollaborationRole>
      <tp:ProcessSpecification
        tp:version="2.0"
        tp:name="PIP3A4RequestPurchaseOrder"
        xlink:type="simple"
        xlink:href="http://www.rosettanet.org/processes/3A4.xml";
        tp:uuid="urn:icann:rosettanet.org:bpid:3A4$2.0"/>
      <tp:Role
        tp:name="Buyer"
        xlink:type="simple"
        xlink:href="http://www.rosettanet.org/processes/3A4.xml#buyer"/>
      <tp:ApplicationCertificateRef tp:certId="CompanyA_AppCert"/>
      <tp:ServiceBinding>
        <tp:Service>bpid:icann:rosettanet.org:3A4$2.0</tp:Service>
        <tp:CanSend>
          <tp:ThisPartyActionBinding
            tp:id="companyA_ABID1"
            tp:action="Purchase Order Request Action"
            tp:packageId="CompanyA_RequestPackage">
            <tp:BusinessTransactionCharacteristics
              tp:isNonRepudiationRequired="true"
              tp:isNonRepudiationReceiptRequired="true"
              tp:isConfidential="transient"
              tp:isAuthenticated="persistent"
              tp:isTamperProof="persistent"
              tp:isAuthorizationRequired="true"
              tp:timeToAcknowledgeReceipt="PT2H"
              tp:timeToPerform="P1D"/>
            <tp:ActionContext
              tp:binaryCollaboration="Request Purchase Order"
              tp:businessTransactionActivity="Request Purchase Order"
              tp:requestOrResponseAction="Purchase Order Request Action"/>
            <tp:ChannelId>asyncChannelA1</tp:ChannelId>
          </tp:ThisPartyActionBinding>
          <tp:OtherPartyActionBinding>companyB_ABID4</tp:OtherPartyActionBinding>
        </tp:CanSend>
        <tp:CanSend>
          <tp:ThisPartyActionBinding
            tp:id="companyA_ABID2"
            tp:action="ReceiptAcknowledgement"
            tp:packageId="CompanyA_ReceiptAcknowledgmentPackage">
            <tp:BusinessTransactionCharacteristics
              tp:isNonRepudiationRequired="true"
              tp:isNonRepudiationReceiptRequired="true"
              tp:isConfidential="transient"
              tp:isAuthenticated="persistent"
              tp:isTamperProof="persistent"
              tp:isAuthorizationRequired="true"/>
            <tp:ChannelId>asyncChannelA1</tp:ChannelId>
          </tp:ThisPartyActionBinding>
          <tp:OtherPartyActionBinding>companyB_ABID5</tp:OtherPartyActionBinding>
        </tp:CanSend>
        <!-- The next binding uses a synchronous delivery channel -->
        <tp:CanSend>
          <tp:ThisPartyActionBinding
            tp:id="companyA_ABID6"
            tp:action="Purchase Order Request Action"
            tp:packageId="CompanyA_RequestPackage">
            <tp:BusinessTransactionCharacteristics
              tp:isNonRepudiationRequired="true"
              tp:isNonRepudiationReceiptRequired="true"
              tp:isConfidential="transient"
              tp:isAuthenticated="persistent"
              tp:isTamperProof="persistent"
              tp:isAuthorizationRequired="true"
              tp:timeToAcknowledgeReceipt="PT5M"
              tp:timeToPerform="PT5M"/>
            <tp:ActionContext
              tp:binaryCollaboration="Request Purchase Order"
              tp:businessTransactionActivity="Request Purchase Order"
              tp:requestOrResponseAction="Purchase Order Request Action"/>
            <tp:ChannelId>syncChannelA1</tp:ChannelId>
          </tp:ThisPartyActionBinding>
          <tp:OtherPartyActionBinding>companyB_ABID6</tp:OtherPartyActionBinding>
          <tp:CanReceive>
            <tp:ThisPartyActionBinding
              tp:id="companyA_ABID7"
              tp:action="Purchase Order Confirmation Action"
              tp:packageId="CompanyA_SyncReplyPackage">
              <tp:BusinessTransactionCharacteristics
                tp:isNonRepudiationRequired="true" 
                tp:isNonRepudiationReceiptRequired="true"
                tp:isConfidential="transient"
                tp:isAuthenticated="persistent"
                tp:isTamperProof="persistent"
                tp:isAuthorizationRequired="true"
                tp:timeToAcknowledgeReceipt="PT5M"/>
              <tp:ActionContext
                tp:binaryCollaboration="Request Purchase Order"
                tp:businessTransactionActivity="Request Purchase Order"
                tp:requestOrResponseAction="Purchase Order Confirmation Action"/>
              <tp:ChannelId>syncChannelA1</tp:ChannelId>
            </tp:ThisPartyActionBinding>
            <tp:OtherPartyActionBinding>companyB_ABID7</tp:OtherPartyActionBinding>
          </tp:CanReceive>
          <tp:CanReceive>
            <tp:ThisPartyActionBinding
              tp:id="companyA_ABID8"
              tp:action="Exception"
              tp:packageId="CompanyA_ExceptionPackage">
              <tp:BusinessTransactionCharacteristics
                tp:isNonRepudiationRequired="true"
                tp:isNonRepudiationReceiptRequired="true"
                tp:isConfidential="transient"
                tp:isAuthenticated="persistent"
                tp:isTamperProof="persistent"
                tp:isAuthorizationRequired="true"/>
              <tp:ChannelId>syncChannelA1</tp:ChannelId>
            </tp:ThisPartyActionBinding>
            <tp:OtherPartyActionBinding>companyB_ABID8</tp:OtherPartyActionBinding>
          </tp:CanReceive>
        </tp:CanSend>
        <tp:CanReceive>
          <tp:ThisPartyActionBinding
            tp:id="companyA_ABID3"
            tp:action="Purchase Order Confirmation Action"
            tp:packageId="CompanyA_ResponsePackage">
            <tp:BusinessTransactionCharacteristics
              tp:isNonRepudiationRequired="true"
              tp:isNonRepudiationReceiptRequired="true"
              tp:isConfidential="transient"
              tp:isAuthenticated="persistent"
              tp:isTamperProof="persistent"
              tp:isAuthorizationRequired="true"
              tp:timeToAcknowledgeReceipt="PT2H"/>
            <tp:ActionContext
              tp:binaryCollaboration="Request Purchase Order"
              tp:businessTransactionActivity="Request Purchase Order"
              tp:requestOrResponseAction="Purchase Order Confirmation Action"/>
            <tp:ChannelId>asyncChannelA1</tp:ChannelId>
          </tp:ThisPartyActionBinding>
          <tp:OtherPartyActionBinding>companyB_ABID1</tp:OtherPartyActionBinding>
        </tp:CanReceive>
        <tp:CanReceive>
          <tp:ThisPartyActionBinding
            tp:id="companyA_ABID4"
            tp:action="ReceiptAcknowledgment"
            tp:packageId="CompanyA_ReceiptAcknowledgmentPackage">
            <tp:BusinessTransactionCharacteristics
              tp:isNonRepudiationRequired="true"
              tp:isNonRepudiationReceiptRequired="true"
              tp:isConfidential="transient"
              tp:isAuthenticated="persistent"
              tp:isTamperProof="persistent"
              tp:isAuthorizationRequired="true"/>
            <tp:ChannelId>asyncChannelA1</tp:ChannelId>
          </tp:ThisPartyActionBinding>
          <tp:OtherPartyActionBinding>companyB_ABID2</tp:OtherPartyActionBinding>
        </tp:CanReceive>
        <tp:CanReceive>
          <tp:ThisPartyActionBinding
            tp:id="companyA_ABID5"
            tp:action="Exception"
            tp:packageId="CompanyA_ExceptionPackage">
            <tp:BusinessTransactionCharacteristics
              tp:isNonRepudiationRequired="true"
              tp:isNonRepudiationReceiptRequired="true"
              tp:isConfidential="transient"
              tp:isAuthenticated="persistent"
              tp:isTamperProof="persistent"
              tp:isAuthorizationRequired="true"/>
            <tp:ChannelId>asyncChannelA1</tp:ChannelId>
          </tp:ThisPartyActionBinding>
          <tp:OtherPartyActionBinding>companyB_ABID3</tp:OtherPartyActionBinding>
        </tp:CanReceive>
      </tp:ServiceBinding>
    </tp:CollaborationRole>
    <!-- Certificates used by the "Buyer" company -->
    <tp:Certificate tp:certId="CompanyA_AppCert">
      <ds:KeyInfo>
        <ds:KeyName>CompanyA_AppCert_Key</ds:KeyName>
      </ds:KeyInfo>
    </tp:Certificate>
    <tp:Certificate tp:certId="CompanyA_SigningCert">
      <ds:KeyInfo>
        <ds:KeyName>CompanyA_SigningCert_Key</ds:KeyName>
      </ds:KeyInfo>
    </tp:Certificate>
    <tp:Certificate tp:certId="CompanyA_EncryptionCert">
      <ds:KeyInfo>
        <ds:KeyName>CompanyA_EncryptionCert_Key</ds:KeyName>
      </ds:KeyInfo>
    </tp:Certificate>
    <tp:Certificate tp:certId="CompanyA_ServerCert">
      <ds:KeyInfo>
        <ds:KeyName>CompanyA_ServerCert_Key</ds:KeyName>
      </ds:KeyInfo>
    </tp:Certificate>
    <tp:Certificate tp:certId="CompanyA_ClientCert">
      <ds:KeyInfo>
        <ds:KeyName>CompanyA_ClientCert_Key</ds:KeyName>
      </ds:KeyInfo>
    </tp:Certificate>
    <tp:Certificate tp:certId="TrustedRootCertA1">
      <ds:KeyInfo>
        <ds:KeyName>TrustedRootCertA1_Key </ds:KeyName>
      </ds:KeyInfo>
    </tp:Certificate>
    <tp:Certificate tp:certId="TrustedRootCertA2">
      <ds:KeyInfo>
        <ds:KeyName>TrustedRootCertA2_Key</ds:KeyName>
      </ds:KeyInfo>
    </tp:Certificate>
    <tp:Certificate tp:certId="TrustedRootCertA3">
      <ds:KeyInfo>
        <ds:KeyName>TrustedRootCertA3_Key</ds:KeyName>
      </ds:KeyInfo>
    </tp:Certificate>
    <tp:Certificate tp:certId="TrustedRootCertA4">
      <ds:KeyInfo>
        <ds:KeyName>TrustedRootCertA4_Key</ds:KeyName>
      </ds:KeyInfo>
    </tp:Certificate>
    <tp:Certificate tp:certId="TrustedRootCertA5">
      <ds:KeyInfo>
        <ds:KeyName>TrustedRootCertA5_Key</ds:KeyName>
      </ds:KeyInfo>
    </tp:Certificate>
    <tp:SecurityDetails tp:securityId="CompanyA_TransportSecurity">
      <tp:TrustAnchors>
        <tp:AnchorCertificateRef tp:certId="TrustedRootCertA1"/>
        <tp:AnchorCertificateRef tp:certId="TrustedRootCertA2"/>
        <tp:AnchorCertificateRef tp:certId="TrustedRootCertA4"/>
      </tp:TrustAnchors>
    </tp:SecurityDetails>
    <tp:SecurityDetails tp:securityId="CompanyA_MessageSecurity">
      <tp:TrustAnchors>
        <tp:AnchorCertificateRef tp:certId="TrustedRootCertA3"/>
        <tp:AnchorCertificateRef tp:certId="TrustedRootCertA5"/>
      </tp:TrustAnchors>
    </tp:SecurityDetails>
    <tp:DeliveryChannel
      tp:channelId="asyncChannelA1"
      tp:transportId="transportA1"
      tp:docExchangeId="docExchangeA1">
      <tp:MessagingCharacteristics
        tp:syncReplyMode="none"
        tp:ackRequested="always"
        tp:ackSignatureRequested="always"
        tp:duplicateElimination="always"/>
    </tp:DeliveryChannel>
    <tp:DeliveryChannel
      tp:channelId="syncChannelA1"
      tp:transportId="transportA2"
      tp:docExchangeId="docExchangeA1">
      <tp:MessagingCharacteristics
        tp:syncReplyMode="signalsAndResponse"
        tp:ackRequested="always"
        tp:ackSignatureRequested="always"
        tp:duplicateElimination="always"/>
    </tp:DeliveryChannel>
    <tp:Transport tp:transportId="transportA1">
      <tp:TransportSender>
        <tp:TransportProtocol tp:version="1.1">HTTP</tp:TransportProtocol>
        <tp:AccessAuthentication>basic</tp:AccessAuthentication>
        <tp:TransportClientSecurity>
          <tp:TransportSecurityProtocol tp:version="3.0">SSL</tp:TransportSecurityProtocol>
          <tp:ClientCertificateRef tp:certId="CompanyA_ClientCert"/>
          <tp:ServerSecurityDetailsRef tp:securityId="CompanyA_TransportSecurity"/>
        </tp:TransportClientSecurity>
      </tp:TransportSender>
      <tp:TransportReceiver>
        <tp:TransportProtocol tp:version="1.1">HTTP</tp:TransportProtocol>
        <tp:AccessAuthentication>basic</tp:AccessAuthentication>
        <tp:Endpoint
          tp:uri="https://www.CompanyA.com/servlets/ebxmlhandler/async";
          tp:type="allPurpose"/>
        <tp:TransportServerSecurity>
          <tp:TransportSecurityProtocol tp:version="3.0">SSL</tp:TransportSecurityProtocol>
          <tp:ServerCertificateRef tp:certId="CompanyA_ServerCert"/>
          <tp:ClientSecurityDetailsRef tp:securityId="CompanyA_TransportSecurity"/>
        </tp:TransportServerSecurity>
      </tp:TransportReceiver>
    </tp:Transport>
    <tp:Transport tp:transportId="transportA2">
      <tp:TransportSender>
        <tp:TransportProtocol tp:version="1.1">HTTP</tp:TransportProtocol>
        <tp:AccessAuthentication>basic</tp:AccessAuthentication>
        <tp:TransportClientSecurity>
          <tp:TransportSecurityProtocol tp:version="3.0">SSL</tp:TransportSecurityProtocol>
          <tp:ClientCertificateRef tp:certId="CompanyA_ClientCert"/>
          <tp:ServerSecurityDetailsRef tp:securityId="CompanyA_TransportSecurity"/>
        </tp:TransportClientSecurity>
      </tp:TransportSender>
      <tp:TransportReceiver>
        <tp:TransportProtocol tp:version="1.1">HTTP</tp:TransportProtocol>
        <tp:AccessAuthentication>basic</tp:AccessAuthentication>
        <tp:Endpoint
          tp:uri="https://www.CompanyA.com/servlets/ebxmlhandler/sync";
          tp:type="allPurpose"/>
        <tp:TransportServerSecurity>
          <tp:TransportSecurityProtocol tp:version="3.0">SSL</tp:TransportSecurityProtocol>
          <tp:ServerCertificateRef tp:certId="CompanyA_ServerCert"/>
          <tp:ClientSecurityDetailsRef tp:securityId="CompanyA_TransportSecurity"/>
        </tp:TransportServerSecurity>
      </tp:TransportReceiver>
    </tp:Transport>
    <tp:DocExchange tp:docExchangeId="docExchangeA1">
      <tp:ebXMLSenderBinding tp:version="2.0">
        <tp:ReliableMessaging>
          <tp:Retries>3</tp:Retries>
          <tp:RetryInterval>PT2H</tp:RetryInterval>
          <tp:MessageOrderSemantics>Guaranteed</tp:MessageOrderSemantics>
        </tp:ReliableMessaging>
        <tp:PersistDuration>P1D</tp:PersistDuration>
        <tp:SenderNonRepudiation>
          <tp:NonRepudiationProtocol>http://www.w3.org/2000/09/xmldsig#</tp:NonRepudiationProtocol>
          <tp:HashFunction>http://www.w3.org/2000/09/xmldsig#sha1</tp:HashFunction>
          <tp:SignatureAlgorithm>http://www.w3.org/2000/09/xmldsig#dsa-sha1</tp:SignatureAlgorithm>
          <tp:SigningCertificateRef tp:certId="CompanyA_SigningCert"/>
        </tp:SenderNonRepudiation>
        <tp:SenderDigitalEnvelope>
          <tp:DigitalEnvelopeProtocol tp:version="2.0">S/MIME</tp:DigitalEnvelopeProtocol>
          <tp:EncryptionAlgorithm>DES-CBC</tp:EncryptionAlgorithm>
          <tp:EncryptionSecurityDetailsRef tp:securityId="CompanyA_MessageSecurity"/>
        </tp:SenderDigitalEnvelope>
      </tp:ebXMLSenderBinding>
      <tp:ebXMLReceiverBinding tp:version="2.0">
        <tp:ReliableMessaging>
          <tp:Retries>3</tp:Retries>
          <tp:RetryInterval>PT2H</tp:RetryInterval>
          <tp:MessageOrderSemantics>Guaranteed</tp:MessageOrderSemantics>
        </tp:ReliableMessaging>
        <tp:PersistDuration>P1D</tp:PersistDuration>
        <tp:ReceiverNonRepudiation>
          <tp:NonRepudiationProtocol>http://www.w3.org/2000/09/xmldsig#</tp:NonRepudiationProtocol>
          <tp:HashFunction>http://www.w3.org/2000/09/xmldsig#sha1</tp:HashFunction>
          <tp:SignatureAlgorithm>http://www.w3.org/2000/09/xmldsig#dsa-sha1</tp:SignatureAlgorithm>
          <tp:SigningSecurityDetailsRef tp:securityId="CompanyA_MessageSecurity"/>
        </tp:ReceiverNonRepudiation>
        <tp:ReceiverDigitalEnvelope>
          <tp:DigitalEnvelopeProtocol tp:version="2.0">S/MIME</tp:DigitalEnvelopeProtocol>
          <tp:EncryptionAlgorithm>DES-CBC</tp:EncryptionAlgorithm>
          <tp:EncryptionCertificateRef tp:certId="CompanyA_EncryptionCert"/>
        </tp:ReceiverDigitalEnvelope>
      </tp:ebXMLReceiverBinding>
    </tp:DocExchange>
  </tp:PartyInfo>
  <!-- Party info for CompanyB -->
  <tp:PartyInfo
    tp:partyName="CompanyB"
    tp:defaultMshChannelId="asyncChannelB1"
    tp:defaultMshPackageId="CompanyB_MshSignalPackage">
    <tp:PartyId tp:type="urn:oasis:names:tc:ebxml-cppa:partyid-type:duns">987654321</tp:PartyId>
    <tp:PartyRef xlink:type="simple" xlink:href="http://CompanyB.com/about.html"/>
    <tp:CollaborationRole>
      <tp:ProcessSpecification
        tp:version="2.0"
        tp:name="PIP3A4RequestPurchaseOrder"
        xlink:type="simple"
        xlink:href="http://www.rosettanet.org/processes/3A4.xml";
        tp:uuid="urn:icann:rosettanet.org:bpid:3A4$2.0"/>
      <tp:Role
        tp:name="Seller"
        xlink:type="simple"
        xlink:href="http://www.rosettanet.org/processes/3A4.xml#seller"/>
      <tp:ApplicationCertificateRef tp:certId="CompanyB_AppCert"/>
      <tp:ServiceBinding>
        <tp:Service>bpid:icann:rosettanet.org:3A4$2.0</tp:Service>
        <tp:CanSend>
          <tp:ThisPartyActionBinding
            tp:id="companyB_ABID1"
            tp:action="Purchase Order Confirmation Action"
            tp:packageId="CompanyB_ResponsePackage">
            <tp:BusinessTransactionCharacteristics
              tp:isNonRepudiationRequired="true"
              tp:isNonRepudiationReceiptRequired="true"
              tp:isConfidential="transient"
              tp:isAuthenticated="persistent"
              tp:isTamperProof="persistent"
              tp:isAuthorizationRequired="true"
              tp:timeToAcknowledgeReceipt="PT2H"/>
            <tp:ActionContext
              tp:binaryCollaboration="Request Purchase Order"
              tp:businessTransactionActivity="Request Purchase Order"
              tp:requestOrResponseAction="Purchase Order Confirmation Action"/>
            <tp:ChannelId>asyncChannelB1</tp:ChannelId>
          </tp:ThisPartyActionBinding>
          <tp:OtherPartyActionBinding>companyA_ABID3</tp:OtherPartyActionBinding>
        </tp:CanSend>
        <tp:CanSend>
          <tp:ThisPartyActionBinding
            tp:id="companyB_ABID2"
            tp:action="ReceiptAcknowledgment"
            tp:packageId="CompanyB_ReceiptAcknowledgmentPackage">
            <tp:BusinessTransactionCharacteristics
              tp:isNonRepudiationRequired="true"
              tp:isNonRepudiationReceiptRequired="true"
              tp:isConfidential="transient"
              tp:isAuthenticated="persistent"
              tp:isTamperProof="persistent"
              tp:isAuthorizationRequired="true"/>
            <tp:ChannelId>asyncChannelB1</tp:ChannelId>
          </tp:ThisPartyActionBinding>
          <tp:OtherPartyActionBinding>companyA_ABID4</tp:OtherPartyActionBinding>
        </tp:CanSend>
        <tp:CanSend>
          <tp:ThisPartyActionBinding
            tp:id="companyB_ABID3"
            tp:action="Exception"
            tp:packageId="CompanyB_ExceptionPackage">
            <tp:BusinessTransactionCharacteristics
              tp:isNonRepudiationRequired="true"
              tp:isNonRepudiationReceiptRequired="true"
              tp:isConfidential="transient"
              tp:isAuthenticated="persistent"
              tp:isTamperProof="persistent"
              tp:isAuthorizationRequired="true"/>
            <tp:ChannelId>asyncChannelB1</tp:ChannelId>
          </tp:ThisPartyActionBinding>
          <tp:OtherPartyActionBinding>companyA_ABID5</tp:OtherPartyActionBinding>
        </tp:CanSend>
        <tp:CanReceive>
          <tp:ThisPartyActionBinding
            tp:id="companyB_ABID4"
            tp:action="Purchase Order Request Action"
            tp:packageId="CompanyB_RequestPackage">
            <tp:BusinessTransactionCharacteristics
              tp:isNonRepudiationRequired="true"
              tp:isNonRepudiationReceiptRequired="true"
              tp:isConfidential="transient"
              tp:isAuthenticated="persistent"
              tp:isTamperProof="persistent"
              tp:isAuthorizationRequired="true"
              tp:timeToAcknowledgeReceipt="PT2H"
              tp:timeToPerform="P1D"/>
            <tp:ActionContext
              tp:binaryCollaboration="Request Purchase Order"
              tp:businessTransactionActivity="Request Purchase Order"
              tp:requestOrResponseAction="Purchase Order Request Action"/>
            <tp:ChannelId>asyncChannelB1</tp:ChannelId>
          </tp:ThisPartyActionBinding>
          <tp:OtherPartyActionBinding>companyA_ABID1</tp:OtherPartyActionBinding>
        </tp:CanReceive>
        <tp:CanReceive>
          <tp:ThisPartyActionBinding
            tp:id="companyB_ABID5"
            tp:action="ReceiptAcknowledgment"
            tp:packageId="CompanyB_ReceiptAcknowledgmentPackage">
            <tp:BusinessTransactionCharacteristics
              tp:isNonRepudiationRequired="true"
              tp:isNonRepudiationReceiptRequired="true"
              tp:isConfidential="transient"
              tp:isAuthenticated="persistent"
              tp:isTamperProof="persistent"
              tp:isAuthorizationRequired="true"/>
            <tp:ChannelId>asyncChannelB1</tp:ChannelId>
          </tp:ThisPartyActionBinding>
          <tp:OtherPartyActionBinding>companyA_ABID2</tp:OtherPartyActionBinding>
        </tp:CanReceive>
        <!-- The next binding uses a synchronous delivery channel -->
        <tp:CanReceive>
          <tp:ThisPartyActionBinding
            tp:id="companyB_ABID6"
            tp:action="Purchase Order Request Action"
            tp:packageId="CompanyB_RequestPackage">
            <tp:BusinessTransactionCharacteristics
              tp:isNonRepudiationRequired="true"
              tp:isNonRepudiationReceiptRequired="true"
              tp:isConfidential="transient"
              tp:isAuthenticated="persistent"
              tp:isTamperProof="persistent"
              tp:isAuthorizationRequired="true"
              tp:timeToAcknowledgeReceipt="PT5M"
              tp:timeToPerform="PT5M"/>
            <tp:ActionContext
              tp:binaryCollaboration="Request Purchase Order"
              tp:businessTransactionActivity="Request Purchase Order"
              tp:requestOrResponseAction="Purchase Order Request Action"/>
            <tp:ChannelId>syncChannelB1</tp:ChannelId>
          </tp:ThisPartyActionBinding>
          <tp:OtherPartyActionBinding>companyA_ABID6</tp:OtherPartyActionBinding>
          <tp:CanSend>
            <tp:ThisPartyActionBinding
              tp:id="companyB_ABID7"
              tp:action="Purchase Order Confirmation Action"
              tp:packageId="CompanyB_SyncReplyPackage">
              <tp:BusinessTransactionCharacteristics
                tp:isNonRepudiationRequired="true"
                tp:isNonRepudiationReceiptRequired="true"
                tp:isConfidential="transient"
                tp:isAuthenticated="persistent"
                tp:isTamperProof="persistent"
                tp:isAuthorizationRequired="true"
                tp:timeToAcknowledgeReceipt="PT5M"/>
              <tp:ActionContext
                tp:binaryCollaboration="Request Purchase Order"
                tp:businessTransactionActivity="Request Purchase Order"
                tp:requestOrResponseAction="Purchase Order Confirmation Action"/>
              <tp:ChannelId>syncChannelB1</tp:ChannelId>
            </tp:ThisPartyActionBinding>
            <tp:OtherPartyActionBinding>companyA_ABID7</tp:OtherPartyActionBinding>
          </tp:CanSend>
          <tp:CanSend>
            <tp:ThisPartyActionBinding
              tp:id="companyB_ABID8"
              tp:action="Exception"
              tp:packageId="CompanyB_ExceptionPackage">
              <tp:BusinessTransactionCharacteristics
                tp:isNonRepudiationRequired="true"
                tp:isNonRepudiationReceiptRequired="true"
                tp:isConfidential="transient"
                tp:isAuthenticated="persistent"
                tp:isTamperProof="persistent"
                tp:isAuthorizationRequired="true"/>
              <tp:ChannelId>syncChannelB1</tp:ChannelId>
            </tp:ThisPartyActionBinding>
            <tp:OtherPartyActionBinding>companyA_ABID8</tp:OtherPartyActionBinding>
          </tp:CanSend>
        </tp:CanReceive>
      </tp:ServiceBinding>
    </tp:CollaborationRole>
    <!-- Certificates used by the "Seller" company -->
    <tp:Certificate tp:certId="CompanyB_AppCert">
      <ds:KeyInfo>
        <ds:KeyName>CompanyB_AppCert_Key</ds:KeyName>
      </ds:KeyInfo>
    </tp:Certificate>
    <tp:Certificate tp:certId="CompanyB_SigningCert">
      <ds:KeyInfo>
        <ds:KeyName>CompanyB_Signingcert_Key</ds:KeyName>
      </ds:KeyInfo>
    </tp:Certificate>
    <tp:Certificate tp:certId="CompanyB_EncryptionCert">
      <ds:KeyInfo>
        <ds:KeyName>CompanyB_EncryptionCert_Key</ds:KeyName>
      </ds:KeyInfo>
    </tp:Certificate>
    <tp:Certificate tp:certId="CompanyB_ServerCert">
      <ds:KeyInfo>
        <ds:KeyName>CompanyB_ServerCert_Key</ds:KeyName>
      </ds:KeyInfo>
    </tp:Certificate>
    <tp:Certificate tp:certId="CompanyB_ClientCert">
      <ds:KeyInfo>
        <ds:KeyName>CompanyB_ClientCert_Key</ds:KeyName>
      </ds:KeyInfo>
    </tp:Certificate>
    <tp:Certificate tp:certId="TrustedRootCertB4">
      <ds:KeyInfo>
        <ds:KeyName>TrustedRootCertB4_Key</ds:KeyName>
      </ds:KeyInfo>
    </tp:Certificate>
    <tp:Certificate tp:certId="TrustedRootCertB5">
      <ds:KeyInfo>
        <ds:KeyName>TrustedRootCertB5_Key</ds:KeyName>
      </ds:KeyInfo>
    </tp:Certificate>
    <tp:Certificate tp:certId="TrustedRootCertB6">
      <ds:KeyInfo>
        <ds:KeyName>TrustedRootCertB6_Key</ds:KeyName>
      </ds:KeyInfo>
    </tp:Certificate>
    <tp:Certificate tp:certId="TrustedRootCertB7">
      <ds:KeyInfo>
        <ds:KeyName>TrustedRootCertB7_Key</ds:KeyName>
      </ds:KeyInfo>
    </tp:Certificate>
    <tp:Certificate tp:certId="TrustedRootCertB8">
      <ds:KeyInfo>
        <ds:KeyName>TrustedRootCertB8_Key</ds:KeyName>
      </ds:KeyInfo>
    </tp:Certificate>
    <tp:SecurityDetails tp:securityId="CompanyB_TransportSecurity">
      <tp:TrustAnchors>
        <tp:AnchorCertificateRef tp:certId="TrustedRootCertB5"/>
        <tp:AnchorCertificateRef tp:certId="TrustedRootCertB6"/>
        <tp:AnchorCertificateRef tp:certId="TrustedRootCertB4"/>
      </tp:TrustAnchors>
    </tp:SecurityDetails>
    <tp:SecurityDetails tp:securityId="CompanyB_MessageSecurity">
      <tp:TrustAnchors>
        <tp:AnchorCertificateRef tp:certId="TrustedRootCertB8"/>
        <tp:AnchorCertificateRef tp:certId="TrustedRootCertB7"/>
      </tp:TrustAnchors>
    </tp:SecurityDetails>
    <!-- An asynchronous delivery channel -->
    <tp:DeliveryChannel
      tp:channelId="asyncChannelB1"
      tp:transportId="transportB1"
      tp:docExchangeId="docExchangeB1">
      <tp:MessagingCharacteristics
        tp:syncReplyMode="none"
        tp:ackRequested="always"
        tp:ackSignatureRequested="always"
        tp:duplicateElimination="always"/>
    </tp:DeliveryChannel>
    <!-- A synchronous delivery channel -->
    <tp:DeliveryChannel
      tp:channelId="syncChannelB1"
      tp:transportId="transportB2"
      tp:docExchangeId="docExchangeB1">
      <tp:MessagingCharacteristics
        tp:syncReplyMode="signalsAndResponse"
        tp:ackRequested="always"
        tp:ackSignatureRequested="always"
        tp:duplicateElimination="always"/>
    </tp:DeliveryChannel>
    <tp:Transport tp:transportId="transportB1">
      <tp:TransportSender>
        <tp:TransportProtocol tp:version="1.1">HTTP</tp:TransportProtocol>
        <tp:AccessAuthentication>basic</tp:AccessAuthentication>
        <tp:TransportClientSecurity>
          <tp:TransportSecurityProtocol tp:version="3.0">SSL</tp:TransportSecurityProtocol>
          <tp:ClientCertificateRef tp:certId="CompanyB_ClientCert"/>
          <tp:ServerSecurityDetailsRef tp:securityId="CompanyB_TransportSecurity"/>
        </tp:TransportClientSecurity>
      </tp:TransportSender>
      <tp:TransportReceiver>
        <tp:TransportProtocol tp:version="1.1">HTTP</tp:TransportProtocol>
        <tp:AccessAuthentication>basic</tp:AccessAuthentication>
        <tp:Endpoint
          tp:uri="https://www.CompanyB.com/servlets/ebxmlhandler/async";
          tp:type="allPurpose"/>
        <tp:TransportServerSecurity>
          <tp:TransportSecurityProtocol tp:version="3.0">SSL</tp:TransportSecurityProtocol>
          <tp:ServerCertificateRef tp:certId="CompanyB_ServerCert"/>
          <tp:ClientSecurityDetailsRef tp:securityId="CompanyB_TransportSecurity"/>
        </tp:TransportServerSecurity>
      </tp:TransportReceiver>
    </tp:Transport>
    <tp:Transport tp:transportId="transportB2">
      <tp:TransportSender>
        <tp:TransportProtocol tp:version="1.1">HTTP</tp:TransportProtocol>
        <tp:AccessAuthentication>basic</tp:AccessAuthentication>
        <tp:TransportClientSecurity>
          <tp:TransportSecurityProtocol tp:version="3.0">SSL</tp:TransportSecurityProtocol>
          <tp:ClientCertificateRef tp:certId="CompanyB_ClientCert"/>
          <tp:ServerSecurityDetailsRef tp:securityId="CompanyB_TransportSecurity"/>
        </tp:TransportClientSecurity>
      </tp:TransportSender>
      <tp:TransportReceiver>
        <tp:TransportProtocol tp:version="1.1">HTTP</tp:TransportProtocol>
        <tp:AccessAuthentication>basic</tp:AccessAuthentication>
        <tp:Endpoint
          tp:uri="https://www.CompanyB.com/servlets/ebxmlhandler/sync";
          tp:type="allPurpose"/>
        <tp:TransportServerSecurity>
          <tp:TransportSecurityProtocol tp:version="3.0">SSL</tp:TransportSecurityProtocol>
          <tp:ServerCertificateRef tp:certId="CompanyB_ServerCert"/>
          <tp:ClientSecurityDetailsRef tp:securityId="CompanyB_TransportSecurity"/>
        </tp:TransportServerSecurity>
      </tp:TransportReceiver>
    </tp:Transport>
    <tp:DocExchange tp:docExchangeId="docExchangeB1">
      <tp:ebXMLSenderBinding tp:version="2.0">
        <tp:ReliableMessaging>
          <tp:Retries>3</tp:Retries>
          <tp:RetryInterval>PT2H</tp:RetryInterval>
          <tp:MessageOrderSemantics>Guaranteed</tp:MessageOrderSemantics>
        </tp:ReliableMessaging>
        <tp:PersistDuration>P1D</tp:PersistDuration>
        <tp:SenderNonRepudiation>
          <tp:NonRepudiationProtocol>http://www.w3.org/2000/09/xmldsig#</tp:NonRepudiationProtocol>
          <tp:HashFunction>http://www.w3.org/2000/09/xmldsig#sha1</tp:HashFunction>
          <tp:SignatureAlgorithm>http://www.w3.org/2000/09/xmldsig#dsa-sha1</tp:SignatureAlgorithm>
          <tp:SigningCertificateRef tp:certId="CompanyB_SigningCert"/>
        </tp:SenderNonRepudiation>
        <tp:SenderDigitalEnvelope>
          <tp:DigitalEnvelopeProtocol tp:version="2.0">S/MIME</tp:DigitalEnvelopeProtocol>
          <tp:EncryptionAlgorithm>DES-CBC</tp:EncryptionAlgorithm>
          <tp:EncryptionSecurityDetailsRef tp:securityId="CompanyB_MessageSecurity"/>
        </tp:SenderDigitalEnvelope>
      </tp:ebXMLSenderBinding>
      <tp:ebXMLReceiverBinding tp:version="2.0">
        <tp:ReliableMessaging>
          <tp:Retries>3</tp:Retries>
          <tp:RetryInterval>PT2H</tp:RetryInterval>
          <tp:MessageOrderSemantics>Guaranteed</tp:MessageOrderSemantics>
        </tp:ReliableMessaging>
        <tp:PersistDuration>P1D</tp:PersistDuration>
        <tp:ReceiverNonRepudiation>
          <tp:NonRepudiationProtocol>http://www.w3.org/2000/09/xmldsig#</tp:NonRepudiationProtocol>
          <tp:HashFunction>http://www.w3.org/2000/09/xmldsig#sha1</tp:HashFunction>
          <tp:SignatureAlgorithm>http://www.w3.org/2000/09/xmldsig#dsa-sha1</tp:SignatureAlgorithm>
          <tp:SigningSecurityDetailsRef tp:securityId="CompanyB_MessageSecurity"/>
        </tp:ReceiverNonRepudiation>
        <tp:ReceiverDigitalEnvelope>
          <tp:DigitalEnvelopeProtocol tp:version="2.0">S/MIME</tp:DigitalEnvelopeProtocol>
          <tp:EncryptionAlgorithm>DES-CBC</tp:EncryptionAlgorithm>
          <tp:EncryptionCertificateRef tp:certId="CompanyB_EncryptionCert"/>
        </tp:ReceiverDigitalEnvelope>
      </tp:ebXMLReceiverBinding>
    </tp:DocExchange>
  </tp:PartyInfo>
  <!-- SimplePart corresponding to the SOAP Envelope -->
  <tp:SimplePart
    tp:id="CompanyA_MsgHdr"
    tp:mimetype="text/xml">
    <tp:NamespaceSupported
      tp:location="http://www.oasis-open.org/committees/ebxml-msg/schema/msg-header-2_0.xsd";
      tp:version="2.0">
      http://www.oasis-open.org/committees/ebxml-msg/schema/msg-header-2_0.xsd
  </tp:NamespaceSupported>
  </tp:SimplePart>
  <tp:SimplePart
    tp:id="CompanyB_MsgHdr"
    tp:mimetype="text/xml">
    <tp:NamespaceSupported
      tp:location="http://www.oasis-open.org/committees/ebxml-msg/schema/msg-header-2_0.xsd";
      tp:version="2.0">
      http://www.oasis-open.org/committees/ebxml-msg/schema/msg-header-2_0.xsd
  </tp:NamespaceSupported>
  </tp:SimplePart>
  <!-- SimplePart corresponding to a Receipt Acknowledgment business signal -->
  <tp:SimplePart
    tp:id="CompanyA_ReceiptAcknowledgment"
    tp:mimetype="application/xml">
    <tp:NamespaceSupported
      tp:location="http://www.ebxml.org/bpss/ReceiptAcknowledgment.xsd";
      tp:version="2.0">http://www.ebxml.org/bpss/ReceiptAcknowledgment.xsd
    </tp:NamespaceSupported>
  </tp:SimplePart>
  <tp:SimplePart
    tp:id="CompanyB_ReceiptAcknowledgment"
    tp:mimetype="application/xml">
    <tp:NamespaceSupported
      tp:location="http://www.ebxml.org/bpss/ReceiptAcknowledgment.xsd";
      tp:version="2.0">
      http://www.ebxml.org/bpss/ReceiptAcknowledgment.xsd
    </tp:NamespaceSupported>
  </tp:SimplePart>
  <!-- SimplePart corresponding to an Exception business signal -->
  <tp:SimplePart
    tp:id="CompanyA_Exception"
    tp:mimetype="application/xml">
    <tp:NamespaceSupported
      tp:location="http://www.oasis-open.org/committees/ebxml-msg/schema/msg-header-2_0.xsd";
      tp:version="2.0">
      http://www.ebxml.org/bpss/Exception.xsd
    </tp:NamespaceSupported>
  </tp:SimplePart>
  <tp:SimplePart
    tp:id="CompanyB_Exception"
    tp:mimetype="application/xml">
    <tp:NamespaceSupported
      tp:location="http://www.oasis-open.org/committees/ebxml-msg/schema/msg-header-2_0.xsd";
      tp:version="2.0">
      http://www.ebxml.org/bpss/Exception.xsd
    </tp:NamespaceSupported>
  </tp:SimplePart>
  <!-- SimplePart corresponding to a request action -->
  <tp:SimplePart
    tp:id="CompanyA_Request"
    tp:mimetype="application/xml">
    <tp:NamespaceSupported
      tp:location="http://www.rosettanet.org/schemas/PIP3A4RequestPurchaseOrder.xsd";
      tp:version="1.0">
      http://www.rosettanet.org/schemas/PIP3A4RequestPurchaseOrder.xsd
    </tp:NamespaceSupported>
  </tp:SimplePart>
  <tp:SimplePart
    tp:id="CompanyB_Request"
    tp:mimetype="application/xml">
    <tp:NamespaceSupported
      tp:location="http://www.rosettanet.org/schemas/PIP3A4RequestPurchaseOrder.xsd";
      tp:version="1.0">
      http://www.rosettanet.org/schemas/PIP3A4RequestPurchaseOrder.xsd
    </tp:NamespaceSupported>
  </tp:SimplePart>
  <!-- SimplePart corresponding to a response action -->
  <tp:SimplePart
    tp:id="CompanyA_Response"
    tp:mimetype="application/xml">
    <tp:NamespaceSupported
      tp:location="http://www.rosettanet.org/schemas/PIP3A4PurchaseOrderConfirmation.xsd";
      tp:version="1.0">
      http://www.rosettanet.org/schemas/PIP3A4PurchaseOrderConfirmation.xsd
    </tp:NamespaceSupported>
  </tp:SimplePart>
  <tp:SimplePart
    tp:id="CompanyB_Response"
    tp:mimetype="application/xml">
    <tp:NamespaceSupported
      tp:location="http://www.rosettanet.org/schemas/PIP3A4PurchaseOrderConfirmation.xsd";
      tp:version="1.0">
      http://www.rosettanet.org/schemas/PIP3A4PurchaseOrderConfirmation.xsd
    </tp:NamespaceSupported>
  </tp:SimplePart>
  <!-- An ebXML message with a SOAP Envelope only -->
  <tp:Packaging
    tp:id="CompanyA_MshSignalPackage">
    <tp:ProcessingCapabilities
      tp:parse="true"
      tp:generate="true"/>
    <tp:CompositeList>
      <tp:Composite
        tp:id="CompanyA_MshSignal"
        tp:mimetype="multipart/related"
        tp:mimeparameters="type=text/xml">
        <tp:Constituent tp:idref="CompanyA_MsgHdr"/>
      </tp:Composite>
    </tp:CompositeList>
  </tp:Packaging>
  <tp:Packaging
    tp:id="CompanyB_MshSignalPackage">
    <tp:ProcessingCapabilities
      tp:parse="true"
      tp:generate="true"/>
    <tp:CompositeList>
      <tp:Composite
        tp:id="CompanyB_MshSignal"
        tp:mimetype="multipart/related"
        tp:mimeparameters="type=text/xml">
        <tp:Constituent tp:idref="CompanyB_MsgHdr"/>
      </tp:Composite>
    </tp:CompositeList>
  </tp:Packaging>
  <!-- An ebXML message with a SOAP Envelope plus a request action payload -->
  <tp:Packaging tp:id="CompanyA_RequestPackage">
    <tp:ProcessingCapabilities
      tp:parse="true"
      tp:generate="true"/>
    <tp:CompositeList>
      <tp:Composite
        tp:id="CompanyA_RequestMsg"
        tp:mimetype="multipart/related"
        tp:mimeparameters="type=text/xml">
        <tp:Constituent tp:idref="CompanyA_MsgHdr"/>
        <tp:Constituent tp:idref="CompanyA_Request"/>
      </tp:Composite>
    </tp:CompositeList>
  </tp:Packaging>
  <tp:Packaging tp:id="CompanyB_RequestPackage">
    <tp:ProcessingCapabilities
      tp:parse="true"
      tp:generate="true"/>
    <tp:CompositeList>
      <tp:Composite
        tp:id="CompanyB_RequestMsg"
        tp:mimetype="multipart/related"
        tp:mimeparameters="type=text/xml">
        <tp:Constituent tp:idref="CompanyB_MsgHdr"/>
        <tp:Constituent tp:idref="CompanyB_Request"/>
      </tp:Composite>
    </tp:CompositeList>
  </tp:Packaging>
  <!-- An ebXML message with a SOAP Envelope plus a response action payload -->
  <tp:Packaging tp:id="CompanyA_ResponsePackage">
    <tp:ProcessingCapabilities tp:parse="true" tp:generate="true"/>
    <tp:CompositeList>
      <tp:Composite
        tp:id="CompanyA_ResponseMsg"
        tp:mimetype="multipart/related"
        tp:mimeparameters="type=text/xml">
        <tp:Constituent tp:idref="CompanyA_MsgHdr"/>
        <tp:Constituent tp:idref="CompanyA_Response"/>
      </tp:Composite>
    </tp:CompositeList>
  </tp:Packaging>
  <tp:Packaging tp:id="CompanyB_ResponsePackage">
    <tp:ProcessingCapabilities
      tp:parse="true"
      tp:generate="true"/>
    <tp:CompositeList>
      <tp:Composite
        tp:id="CompanyB_ResponseMsg"
        tp:mimetype="multipart/related"
        tp:mimeparameters="type=text/xml">
        <tp:Constituent tp:idref="CompanyB_MsgHdr"/>
        <tp:Constituent tp:idref="CompanyB_Response"/>
      </tp:Composite>
    </tp:CompositeList>
  </tp:Packaging>
  <!-- An ebXML message with a SOAP Envelope plus a Receipt Acknowledgment payload -->
  <tp:Packaging tp:id="CompanyA_ReceiptAcknowledgmentPackage">
    <tp:ProcessingCapabilities
      tp:parse="true"
      tp:generate="true"/>
    <tp:CompositeList>
      <tp:Composite
        tp:id="CompanyA_ReceiptAcknowledgmentMsg"
        tp:mimetype="multipart/related"
        tp:mimeparameters="type=text/xml">
        <tp:Constituent tp:idref="CompanyA_MsgHdr"/>
        <tp:Constituent tp:idref="CompanyA_ReceiptAcknowledgment"/>
      </tp:Composite>
    </tp:CompositeList>
  </tp:Packaging>
  <tp:Packaging tp:id="CompanyB_ReceiptAcknowledgmentPackage">
    <tp:ProcessingCapabilities
      tp:parse="true"
      tp:generate="true"/>
    <tp:CompositeList>
      <tp:Composite
        tp:id="CompanyB_ReceiptAcknowledgmentMsg"
        tp:mimetype="multipart/related"
        tp:mimeparameters="type=text/xml">
        <tp:Constituent tp:idref="CompanyB_MsgHdr"/>
        <tp:Constituent tp:idref="CompanyB_ReceiptAcknowledgment"/>
      </tp:Composite>
    </tp:CompositeList>
  </tp:Packaging>
  <!-- An ebXML message with a SOAP Envelope plus an Exception payload -->
  <tp:Packaging tp:id="CompanyA_ExceptionPackage">
    <tp:ProcessingCapabilities
      tp:parse="true"
      tp:generate="true"/>
    <tp:CompositeList>
      <tp:Composite
        tp:id="CompanyA_ExceptionMsg"
        tp:mimetype="multipart/related"
        tp:mimeparameters="type=text/xml">
        <tp:Constituent tp:idref="CompanyA_MsgHdr"/>
        <tp:Constituent tp:idref="CompanyA_Exception"/>
      </tp:Composite>
    </tp:CompositeList>
  </tp:Packaging>
  <tp:Packaging tp:id="CompanyB_ExceptionPackage">
    <tp:ProcessingCapabilities
      tp:parse="true"
      tp:generate="true"/>
    <tp:CompositeList>
      <tp:Composite
        tp:id="CompanyB_ExceptionMsg"
        tp:mimetype="multipart/related"
        tp:mimeparameters="type=text/xml">
        <tp:Constituent tp:idref="CompanyB_MsgHdr"/>
        <tp:Constituent tp:idref="CompanyB_Exception"/>
      </tp:Composite>
    </tp:CompositeList>
  </tp:Packaging>
  <!-- An ebXML message with a Receipt Acknowledgment signal, plus a business response,
       or an ebXML message with an Exception signal -->
  <tp:Packaging tp:id="CompanyA_SyncReplyPackage">
    <tp:ProcessingCapabilities
      tp:parse="true"
      tp:generate="true"/>
    <tp:CompositeList>
      <tp:Composite
        tp:id="CompanyA_SignalAndResponseMsg"
        tp:mimetype="multipart/related"
        tp:mimeparameters="type=text/xml">
        <tp:Constituent tp:idref="CompanyA_MsgHdr"/>
        <tp:Constituent tp:idref="CompanyA_ReceiptAcknowledgment"/>
        <tp:Constituent tp:idref="CompanyA_Response"/>
      </tp:Composite>
    </tp:CompositeList>
  </tp:Packaging>
  <tp:Packaging tp:id="CompanyB_SyncReplyPackage">
    <tp:ProcessingCapabilities
      tp:parse="true"
      tp:generate="true"/>
    <tp:CompositeList>
      <tp:Composite
        tp:id="CompanyB_SignalAndResponseMsg"
        tp:mimetype="multipart/related"
        tp:mimeparameters="type=text/xml">
        <tp:Constituent tp:idref="CompanyB_MsgHdr"/>
        <tp:Constituent tp:idref="CompanyB_ReceiptAcknowledgment"/>
        <tp:Constituent tp:idref="CompanyB_Response"/>
      </tp:Composite>
    </tp:CompositeList>
  </tp:Packaging>
  <tp:Comment xml:lang="en-US">buy/sell agreement between CompanyA.com and CompanyB.com</tp:Comment>
</tp:CollaborationProtocolAgreement>
<?xml version="1.0"?>
<!-- Copyright UN/CEFACT and OASIS, 2002. All Rights Reserved. -->
<tp:CollaborationProtocolProfile
  xmlns:tp="http://www.oasis-open.org/committees/ebxml-cppa/schema/cpp-cpa-2_0.xsd";
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";
  xmlns:xlink="http://www.w3.org/1999/xlink";
  xmlns:ds="http://www.w3.org/2000/09/xmldsig#";
  xmlns:xsd="http://www.w3.org/2001/XMLSchema";
  xsi:schemaLocation="http://www.oasis-open.org/committees/ebxml-cppa/schema/cpp-cpa-2_0.xsd
                      cpp-cpa-2_0b.xsd"
  tp:cppid="uri:companyA-cpp" tp:version="2_0b">
  <!-- Party info for CompanyA-->
  <tp:PartyInfo
    tp:partyName="CompanyA"
    tp:defaultMshChannelId="asyncChannelA1"
    tp:defaultMshPackageId="CompanyA_MshSignalPackage">
    <tp:PartyId
      tp:type="urn:oasis:names:tc:ebxml-cppa:partyid-type:duns">123456789</tp:PartyId>
    <tp:PartyRef xlink:href="http://CompanyA.com/about.html"/>
    <tp:CollaborationRole>
      <tp:ProcessSpecification
        tp:version="2.0"
        tp:name="PIP3A4RequestPurchaseOrder"
        xlink:type="simple"
        xlink:href="http://www.rosettanet.org/processes/3A4.xml";
        tp:uuid="urn:icann:rosettanet.org:bpid:3A4$2.0"/>
      <tp:Role
        tp:name="Buyer"
        xlink:type="simple"
        xlink:href="http://www.rosettanet.org/processes/3A4.xml#buyer"/>
      <tp:ApplicationCertificateRef tp:certId="CompanyA_AppCert"/>
      <tp:ServiceBinding>
        <tp:Service>bpid:icann:rosettanet.org:3A4$2.0</tp:Service>
        <tp:CanSend>
          <tp:ThisPartyActionBinding
            tp:id="companyA_ABID1"
            tp:action="Purchase Order Request Action"
            tp:packageId="CompanyA_RequestPackage">
            <tp:BusinessTransactionCharacteristics
              tp:isNonRepudiationRequired="true"
              tp:isNonRepudiationReceiptRequired="true"
              tp:isConfidential="transient"
              tp:isAuthenticated="persistent"
              tp:isTamperProof="persistent"
              tp:isAuthorizationRequired="true"
              tp:timeToAcknowledgeReceipt="PT2H"
              tp:timeToPerform="P1D"/>
            <tp:ActionContext
              tp:binaryCollaboration="Request Purchase Order"
              tp:businessTransactionActivity="Request Purchase Order"
              tp:requestOrResponseAction="Purchase Order Request Action"/>
            <tp:ChannelId>asyncChannelA1</tp:ChannelId>
          </tp:ThisPartyActionBinding>
        </tp:CanSend>
        <tp:CanSend>
          <tp:ThisPartyActionBinding
            tp:id="companyA_ABID2"
            tp:action="ReceiptAcknowledgment"
            tp:packageId="CompanyA_ReceiptAcknowledgmentPackage">
            <tp:BusinessTransactionCharacteristics
              tp:isNonRepudiationRequired="true"
              tp:isNonRepudiationReceiptRequired="true"
              tp:isConfidential="transient"
              tp:isAuthenticated="persistent"
              tp:isTamperProof="persistent"
              tp:isAuthorizationRequired="true"/>
            <tp:ChannelId>asyncChannelA1</tp:ChannelId>
          </tp:ThisPartyActionBinding>
        </tp:CanSend>
        <!-- The next binding uses a synchronous delivery channel -->
        <tp:CanSend>
          <tp:ThisPartyActionBinding
            tp:id="companyA_ABID6"
            tp:action="Purchase Order Request Action"
            tp:packageId="CompanyA_RequestPackage">
            <tp:BusinessTransactionCharacteristics
              tp:isNonRepudiationRequired="true"
              tp:isNonRepudiationReceiptRequired="true"
              tp:isConfidential="transient"
              tp:isAuthenticated="persistent"
              tp:isTamperProof="persistent"
              tp:isAuthorizationRequired="true"
              tp:timeToAcknowledgeReceipt="PT5M"
              tp:timeToPerform="PT5M"/>
            <tp:ActionContext
              tp:binaryCollaboration="Request Purchase Order"
              tp:businessTransactionActivity="Request Purchase Order"
              tp:requestOrResponseAction="Purchase Order Request Action"/>
            <tp:ChannelId>syncChannelA1</tp:ChannelId>
          </tp:ThisPartyActionBinding>
          <tp:CanReceive>
            <tp:ThisPartyActionBinding
              tp:id="companyA_ABID7"
              tp:action="Purchase Order Confirmation Action"
              tp:packageId="CompanyA_SyncReplyPackage">
              <tp:BusinessTransactionCharacteristics
                tp:isNonRepudiationRequired="true"
                tp:isNonRepudiationReceiptRequired="true"
                tp:isConfidential="transient"
                tp:isAuthenticated="persistent"
                tp:isTamperProof="persistent"
                tp:isAuthorizationRequired="true"
                tp:timeToAcknowledgeReceipt="PT5M"/>
              <tp:ActionContext
                tp:binaryCollaboration="Request Purchase Order"
                tp:businessTransactionActivity="Request Purchase Order"
                tp:requestOrResponseAction="Purchase Order Confirmation Action"/>
              <tp:ChannelId>syncChannelA1</tp:ChannelId>
            </tp:ThisPartyActionBinding>
          </tp:CanReceive>
          <tp:CanReceive>
            <tp:ThisPartyActionBinding
              tp:id="companyA_ABID8"
              tp:action="Exception"
              tp:packageId="CompanyA_ExceptionPackage">
              <tp:BusinessTransactionCharacteristics
                tp:isNonRepudiationRequired="true"
                tp:isNonRepudiationReceiptRequired="true"
                tp:isConfidential="transient"
                tp:isAuthenticated="persistent"
                tp:isTamperProof="persistent"
                tp:isAuthorizationRequired="true"/>
              <tp:ChannelId>syncChannelA1</tp:ChannelId>
            </tp:ThisPartyActionBinding>
          </tp:CanReceive>
        </tp:CanSend>
        <tp:CanReceive>
          <tp:ThisPartyActionBinding
            tp:id="companyA_ABID3"
            tp:action="Purchase Order Confirmation Action"
            tp:packageId="CompanyA_ResponsePackage">
            <tp:BusinessTransactionCharacteristics
              tp:isNonRepudiationRequired="true"
              tp:isNonRepudiationReceiptRequired="true"
              tp:isConfidential="transient"
              tp:isAuthenticated="persistent"
              tp:isTamperProof="persistent"
              tp:isAuthorizationRequired="true"
              tp:timeToAcknowledgeReceipt="PT2H"/>
            <tp:ActionContext
              tp:binaryCollaboration="Request Purchase Order"
              tp:businessTransactionActivity="Request Purchase Order"
              tp:requestOrResponseAction="Purchase Order Confirmation Action"/>
            <tp:ChannelId>asyncChannelA1</tp:ChannelId>
          </tp:ThisPartyActionBinding>
        </tp:CanReceive>
        <tp:CanReceive>
          <tp:ThisPartyActionBinding
            tp:id="companyA_ABID4"
            tp:action="ReceiptAcknowledgment"
            tp:packageId="CompanyA_ReceiptAcknowledgmentPackage">
            <tp:BusinessTransactionCharacteristics
              tp:isNonRepudiationRequired="true"
              tp:isNonRepudiationReceiptRequired="true"
              tp:isConfidential="transient"
              tp:isAuthenticated="persistent" tp:isTamperProof="persistent"
              tp:isAuthorizationRequired="true"/>
            <tp:ChannelId>asyncChannelA1</tp:ChannelId>
          </tp:ThisPartyActionBinding>
        </tp:CanReceive>
        <tp:CanReceive>
          <tp:ThisPartyActionBinding
            tp:id="companyA_ABID5"
            tp:action="Exception"
            tp:packageId="CompanyA_ExceptionPackage">
            <tp:BusinessTransactionCharacteristics
              tp:isNonRepudiationRequired="true"
              tp:isNonRepudiationReceiptRequired="true"
              tp:isConfidential="transient"
              tp:isAuthenticated="persistent"
              tp:isTamperProof="persistent"
              tp:isAuthorizationRequired="true"/>
            <tp:ChannelId>asyncChannelA1</tp:ChannelId>
          </tp:ThisPartyActionBinding>
        </tp:CanReceive>
      </tp:ServiceBinding>
    </tp:CollaborationRole>
    <!-- Certificates used by the "Buyer" company -->
    <tp:Certificate tp:certId="CompanyA_AppCert">
      <ds:KeyInfo>
        <ds:KeyName>CompanyA_AppCert_Key</ds:KeyName>
      </ds:KeyInfo>
    </tp:Certificate>
    <tp:Certificate tp:certId="CompanyA_SigningCert">
      <ds:KeyInfo>
        <ds:KeyName>CompanyA_SigningCert_Key</ds:KeyName>
      </ds:KeyInfo>
    </tp:Certificate>
    <tp:Certificate tp:certId="CompanyA_EncryptionCert">
      <ds:KeyInfo>
        <ds:KeyName>CompanyA_EncryptionCert_Key</ds:KeyName>
      </ds:KeyInfo>
    </tp:Certificate>
    <tp:Certificate tp:certId="CompanyA_ServerCert">
      <ds:KeyInfo>
        <ds:KeyName>CompanyA_ServerCert_Key</ds:KeyName>
      </ds:KeyInfo>
    </tp:Certificate>
    <tp:Certificate tp:certId="CompanyA_ClientCert">
      <ds:KeyInfo>
        <ds:KeyName>CompanyA_ClientCert_Key</ds:KeyName>
      </ds:KeyInfo>
    </tp:Certificate>
    <tp:Certificate tp:certId="TrustedRootCertA1">
      <ds:KeyInfo>
        <ds:KeyName>TrustedRootCertA1_Key</ds:KeyName>
      </ds:KeyInfo>
    </tp:Certificate>
    <tp:Certificate tp:certId="TrustedRootCertA2">
      <ds:KeyInfo>
        <ds:KeyName>TrustedRootCertA2_Key</ds:KeyName>
      </ds:KeyInfo>
    </tp:Certificate>
    <tp:Certificate tp:certId="TrustedRootCertA3">
      <ds:KeyInfo>
        <ds:KeyName>TrustedRootCertA3_Key</ds:KeyName>
      </ds:KeyInfo>
    </tp:Certificate>
    <tp:Certificate tp:certId="TrustedRootCertA4">
      <ds:KeyInfo>
        <ds:KeyName>TrustedRootCertA4_Key</ds:KeyName>
      </ds:KeyInfo>
    </tp:Certificate>
    <tp:Certificate tp:certId="TrustedRootCertA5">
      <ds:KeyInfo>
        <ds:KeyName>TrustedRootCertA5_Key</ds:KeyName>
      </ds:KeyInfo>
    </tp:Certificate>
    <tp:SecurityDetails tp:securityId="CompanyA_TransportSecurity">
      <tp:TrustAnchors>
        <tp:AnchorCertificateRef tp:certId="TrustedRootCertA1"/>
        <tp:AnchorCertificateRef tp:certId="TrustedRootCertA2"/>
        <tp:AnchorCertificateRef tp:certId="TrustedRootCertA4"/>
      </tp:TrustAnchors>
    </tp:SecurityDetails>
    <tp:SecurityDetails tp:securityId="CompanyA_MessageSecurity">
      <tp:TrustAnchors>
        <tp:AnchorCertificateRef tp:certId="TrustedRootCertA3"/>
        <tp:AnchorCertificateRef tp:certId="TrustedRootCertA5"/>
      </tp:TrustAnchors>
    </tp:SecurityDetails>
    <!-- An asynchronous delivery channel -->
    <tp:DeliveryChannel
      tp:channelId="asyncChannelA1"
      tp:transportId="transportA2"
      tp:docExchangeId="docExchangeA1">
      <tp:MessagingCharacteristics
        tp:syncReplyMode="none"
        tp:ackRequested="always"
        tp:ackSignatureRequested="always"
        tp:duplicateElimination="always"/>
    </tp:DeliveryChannel>
    <!-- A synchronous delivery channel -->
    <tp:DeliveryChannel
      tp:channelId="syncChannelA1"
      tp:transportId="transportA1"
      tp:docExchangeId="docExchangeA1">
      <tp:MessagingCharacteristics
        tp:syncReplyMode="signalsAndResponse"
        tp:ackRequested="always"
        tp:ackSignatureRequested="always"
        tp:duplicateElimination="always"/>
    </tp:DeliveryChannel>
    <tp:Transport tp:transportId="transportA1">
      <tp:TransportSender>
        <tp:TransportProtocol tp:version="1.1">HTTP</tp:TransportProtocol>
        <tp:AccessAuthentication>basic</tp:AccessAuthentication>
        <tp:AccessAuthentication>digest</tp:AccessAuthentication>
        <tp:TransportClientSecurity>
          <tp:TransportSecurityProtocol tp:version="3.0">SSL</tp:TransportSecurityProtocol>
          <tp:ClientCertificateRef tp:certId="CompanyA_ClientCert"/>
          <tp:ServerSecurityDetailsRef tp:securityId="CompanyA_TransportSecurity"/>
        </tp:TransportClientSecurity>
      </tp:TransportSender>
      <tp:TransportReceiver>
        <tp:TransportProtocol tp:version="1.1">HTTP</tp:TransportProtocol>
        <tp:AccessAuthentication>basic</tp:AccessAuthentication>
        <tp:AccessAuthentication>digest</tp:AccessAuthentication>
        <tp:Endpoint
          tp:uri="https://www.CompanyA.com/servlets/ebxmlhandler/sync";
          tp:type="allPurpose"/>
        <tp:TransportServerSecurity>
          <tp:TransportSecurityProtocol tp:version="3.0">SSL</tp:TransportSecurityProtocol>
          <tp:ServerCertificateRef tp:certId="CompanyA_ServerCert"/>
          <tp:ClientSecurityDetailsRef tp:securityId="CompanyA_TransportSecurity"/>
        </tp:TransportServerSecurity>
      </tp:TransportReceiver>
    </tp:Transport>
    <tp:Transport tp:transportId="transportA2">
      <tp:TransportSender>
        <tp:TransportProtocol tp:version="1.1">HTTP</tp:TransportProtocol>
        <tp:AccessAuthentication>basic</tp:AccessAuthentication>
        <tp:AccessAuthentication>digest</tp:AccessAuthentication>
        <tp:TransportClientSecurity>
          <tp:TransportSecurityProtocol tp:version="3.0">SSL</tp:TransportSecurityProtocol>
          <tp:ClientCertificateRef tp:certId="CompanyA_ClientCert"/>
          <tp:ServerSecurityDetailsRef tp:securityId="CompanyA_TransportSecurity"/>
        </tp:TransportClientSecurity>
      </tp:TransportSender>
      <tp:TransportReceiver>
        <tp:TransportProtocol tp:version="1.1">HTTP</tp:TransportProtocol>
        <tp:AccessAuthentication>basic</tp:AccessAuthentication>
        <tp:AccessAuthentication>digest</tp:AccessAuthentication>
        <tp:Endpoint
          tp:uri="https://www.CompanyA.com/servlets/ebxmlhandler/sync";
          tp:type="allPurpose"/>
        <tp:TransportServerSecurity>
          <tp:TransportSecurityProtocol tp:version="3.0">SSL</tp:TransportSecurityProtocol>
          <tp:ServerCertificateRef tp:certId="CompanyA_ServerCert"/>
          <tp:ClientSecurityDetailsRef tp:securityId="CompanyA_TransportSecurity"/>
        </tp:TransportServerSecurity>
      </tp:TransportReceiver>
    </tp:Transport>
    <tp:DocExchange tp:docExchangeId="docExchangeA1">
      <tp:ebXMLSenderBinding tp:version="2.0">
        <tp:ReliableMessaging>
          <tp:Retries>3</tp:Retries>
          <tp:RetryInterval>PT2H</tp:RetryInterval>
          <tp:MessageOrderSemantics>Guaranteed</tp:MessageOrderSemantics>
        </tp:ReliableMessaging>
        <tp:PersistDuration>P1D</tp:PersistDuration>
        <tp:SenderNonRepudiation>
          <tp:NonRepudiationProtocol>http://www.w3.org/2000/09/xmldsig#</tp:NonRepudiationProtocol>
          <tp:HashFunction>http://www.w3.org/2000/09/xmldsig#sha1</tp:HashFunction>
          <tp:SignatureAlgorithm>http://www.w3.org/2000/09/xmldsig#dsa-sha1</tp:SignatureAlgorithm>
          <tp:SigningCertificateRef tp:certId="CompanyA_SigningCert"/>
        </tp:SenderNonRepudiation>
        <tp:SenderDigitalEnvelope>
          <tp:DigitalEnvelopeProtocol tp:version="2.0">S/MIME</tp:DigitalEnvelopeProtocol>
          <tp:EncryptionAlgorithm>DES-CBC</tp:EncryptionAlgorithm>
          <tp:EncryptionSecurityDetailsRef tp:securityId="CompanyA_MessageSecurity"/>
        </tp:SenderDigitalEnvelope>
      </tp:ebXMLSenderBinding>
      <tp:ebXMLReceiverBinding tp:version="2.0">
        <tp:ReliableMessaging>
          <tp:Retries>3</tp:Retries>
          <tp:RetryInterval>PT2H</tp:RetryInterval>
          <tp:MessageOrderSemantics>Guaranteed</tp:MessageOrderSemantics>
        </tp:ReliableMessaging>
        <tp:PersistDuration>P1D</tp:PersistDuration>
        <tp:ReceiverNonRepudiation>
          <tp:NonRepudiationProtocol>http://www.w3.org/2000/09/xmldsig#</tp:NonRepudiationProtocol>
          <tp:HashFunction>http://www.w3.org/2000/09/xmldsig#sha1</tp:HashFunction>
          <tp:SignatureAlgorithm>http://www.w3.org/2000/09/xmldsig#dsa-sha1</tp:SignatureAlgorithm>
          <tp:SigningSecurityDetailsRef tp:securityId="CompanyA_MessageSecurity"/>
        </tp:ReceiverNonRepudiation>
        <tp:ReceiverDigitalEnvelope>
          <tp:DigitalEnvelopeProtocol tp:version="2.0">S/MIME</tp:DigitalEnvelopeProtocol>
          <tp:EncryptionAlgorithm>DES-CBC</tp:EncryptionAlgorithm>
          <tp:EncryptionCertificateRef tp:certId="CompanyA_EncryptionCert"/>
        </tp:ReceiverDigitalEnvelope>
      </tp:ebXMLReceiverBinding>
    </tp:DocExchange>
  </tp:PartyInfo>
  <!-- SimplePart corresponding to the SOAP Envelope -->
  <tp:SimplePart
    tp:id="CompanyA_MsgHdr"
    tp:mimetype="text/xml">
    <tp:NamespaceSupported
      tp:location="http://www.oasis-open.org/committees/ebxml-msg/schema/msg-header-2_0.xsd";
      tp:version="2.0">
      http://www.oasis-open.org/committees/ebxml-msg/schema/msg-header-2_0.xsd
    </tp:NamespaceSupported>
  </tp:SimplePart>
  <!-- SimplePart corresponding to a Receipt Acknowledgment business signal -->
  <tp:SimplePart
    tp:id="CompanyA_ReceiptAcknowledgment"
    tp:mimetype="application/xml">
    <tp:NamespaceSupported
      tp:location="http://www.ebxml.org/bpss/ReceiptAcknowledgment.xsd";
      tp:version="2.0">
      http://www.ebxml.org/bpss/ReceiptAcknowledgment.xsd
    </tp:NamespaceSupported>
  </tp:SimplePart>
  <!-- SimplePart corresponding to an Exception business signal -->
  <tp:SimplePart
    tp:id="CompanyA_Exception"
    tp:mimetype="application/xml">
    <tp:NamespaceSupported
      tp:location="http://www.oasis-open.org/committees/ebxml-msg/schema/msg-header-2_0.xsd";
      tp:version="2.0">
      http://www.oasis-open.org/committees/ebxml-msg/schema/msg-header-2_0.xsd
    </tp:NamespaceSupported>
  </tp:SimplePart>
  <!-- SimplePart corresponding to a request action -->
  <tp:SimplePart
    tp:id="CompanyA_Request"
    tp:mimetype="application/xml">
    <tp:NamespaceSupported
      tp:location="http://www.rosettanet.org/schemas/PIP3A4RequestPurchaseOrder.xsd";
      tp:version="2.0">
      http://www.rosettanet.org/schemas/PIP3A4RequestPurchaseOrder.xsd
    </tp:NamespaceSupported>
  </tp:SimplePart>
  <!-- SimplePart corresponding to a response action -->
  <tp:SimplePart
    tp:id="CompanyA_Response"
    tp:mimetype="application/xml">
    <tp:NamespaceSupported
      tp:location="http://www.rosettanet.org/schemas/PIP3A4PurchaseOrderConfirmation.xsd";
      tp:version="2.0">
      http://www.rosettanet.org/schemas/PIP3A4PurchaseOrderConfirmation.xsd
  </tp:NamespaceSupported>
  </tp:SimplePart>
  <!-- An ebXML message with a SOAP Envelope only -->
  <tp:Packaging tp:id="CompanyA_MshSignalPackage">
    <tp:ProcessingCapabilities
      tp:parse="true"
      tp:generate="true"/>
    <tp:CompositeList>
      <tp:Composite
        tp:id="CompanyA_MshSignal"
        tp:mimetype="multipart/related"
        tp:mimeparameters="type=text/xml">
        <tp:Constituent tp:idref="CompanyA_MsgHdr"/>
      </tp:Composite>
    </tp:CompositeList>
  </tp:Packaging>
  <!-- An ebXML message with a SOAP Envelope plus a request action payload -->
  <tp:Packaging tp:id="CompanyA_RequestPackage">
    <tp:ProcessingCapabilities
      tp:parse="true"
      tp:generate="true"/>
    <tp:CompositeList>
      <tp:Composite
        tp:id="CompanyA_RequestMsg"
        tp:mimetype="multipart/related"
        tp:mimeparameters="type=text/xml">
        <tp:Constituent tp:idref="CompanyA_MsgHdr"/>
        <tp:Constituent tp:idref="CompanyA_Request"/>
      </tp:Composite>
    </tp:CompositeList>
  </tp:Packaging>
  <!-- An ebXML message with a SOAP Envelope plus a response action payload -->
  <tp:Packaging tp:id="CompanyA_ResponsePackage">
    <tp:ProcessingCapabilities
      tp:parse="true"
      tp:generate="true"/>
    <tp:CompositeList>
      <tp:Composite
        tp:id="CompanyA_ResponseMsg"
        tp:mimetype="multipart/related"
        tp:mimeparameters="type=text/xml">
        <tp:Constituent tp:idref="CompanyA_MsgHdr"/>
        <tp:Constituent tp:idref="CompanyA_Response"/>
      </tp:Composite>
    </tp:CompositeList>
  </tp:Packaging>
  <!-- An ebXML message with a Receipt Acknowledgment signal, plus a business response,
       or an ebXML message with an Exception signal -->
  <tp:Packaging tp:id="CompanyA_SyncReplyPackage">
    <tp:ProcessingCapabilities
      tp:parse="true"
      tp:generate="true"/>
    <tp:CompositeList>
      <tp:Composite
        tp:id="CompanyA_SignalAndResponseMsg"
        tp:mimetype="multipart/related"
        tp:mimeparameters="type=text/xml">
        <tp:Constituent tp:idref="CompanyA_MsgHdr"/>
        <tp:Constituent tp:idref="CompanyA_ReceiptAcknowledgment"/>
        <tp:Constituent tp:idref="CompanyA_Response"/>
      </tp:Composite>
    </tp:CompositeList>
  </tp:Packaging>
  <!-- An ebXML message with a SOAP Envelope plus a ReceiptAcknowledgment payload -->
  <tp:Packaging tp:id="CompanyA_ReceiptAcknowledgmentPackage">
    <tp:ProcessingCapabilities
      tp:parse="true"
      tp:generate="true"/>
    <tp:CompositeList>
      <tp:Composite
        tp:id="CompanyA_ReceiptAcknowledgmentMsg"
        tp:mimetype="multipart/related"
        tp:mimeparameters="type=text/xml">
        <tp:Constituent tp:idref="CompanyA_MsgHdr"/>
        <tp:Constituent tp:idref="CompanyA_ReceiptAcknowledgment"/>
      </tp:Composite>
    </tp:CompositeList>
  </tp:Packaging>
  <!-- An ebXML message with a SOAP Envelope plus an Exception payload -->
  <tp:Packaging tp:id="CompanyA_ExceptionPackage">
    <tp:ProcessingCapabilities
      tp:parse="true"
      tp:generate="true"/>
    <tp:CompositeList>
      <tp:Composite
        tp:id="CompanyA_ExceptionMsg"
        tp:mimetype="multipart/related"
        tp:mimeparameters="type=text/xml">
        <tp:Constituent tp:idref="CompanyA_MsgHdr"/>
        <tp:Constituent tp:idref="CompanyA_Exception"/>
      </tp:Composite>
    </tp:CompositeList>
  </tp:Packaging>
  <tp:Comment xml:lang="en-US">Buyer's Collaboration Protocol Profile</tp:Comment>
</tp:CollaborationProtocolProfile>
<?xml version="1.0"?>
<!-- Copyright UN/CEFACT and OASIS, 2002. All Rights Reserved. -->
<tp:CollaborationProtocolProfile
  xmlns:tp="http://www.oasis-open.org/committees/ebxml-cppa/schema/cpp-cpa-2_0.xsd";
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";
  xmlns:xlink="http://www.w3.org/1999/xlink";
  xmlns:ds="http://www.w3.org/2000/09/xmldsig#";
  xmlns:xsd="http://www.w3.org/2001/XMLSchema";
  xsi:schemaLocation="http://www.oasis-open.org/committees/ebxml-cppa/schema/cpp-cpa-2_0.xsd
                      cpp-cpa-2_0b.xsd"
  tp:cppid="uri:companyB-cpp"
  tp:version="2_0b">
  <!-- Party info for CompanyB-->
  <tp:PartyInfo
    tp:partyName="CompanyB"
    tp:defaultMshChannelId="asyncChannelB1"
    tp:defaultMshPackageId="CompanyB_MshSignalPackage">
    <tp:PartyId tp:type="urn:oasis:names:tc:ebxml-cppa:partyid-type:duns">987654321</tp:PartyId>
    <tp:PartyRef xlink:type="simple" xlink:href="http://CompanyB.com/about.html"/>
    <tp:CollaborationRole>
      <tp:ProcessSpecification
        tp:version="2.0"
        tp:name="PIP3A4RequestPurchaseOrder"
        xlink:type="simple" xlink:href="http://www.rosettanet.org/processes/3A4.xml";
        tp:uuid="urn:icann:rosettanet.org:bpid:3A4$2.0"/>
      <tp:Role
        tp:name="Seller"
        xlink:type="simple"
        xlink:href="http://www.rosettanet.org/processes/3A4.xml#seller"/>
      <tp:ApplicationCertificateRef tp:certId="CompanyB_AppCert"/>
      <tp:ServiceBinding>
        <tp:Service>bpid:icann:rosettanet.org:3A4$2.0</tp:Service>
        <tp:CanSend>
          <tp:ThisPartyActionBinding
            tp:id="companyB_ABID1"
            tp:action="Purchase Order Confirmation Action"
            tp:packageId="CompanyB_ResponsePackage">
            <tp:BusinessTransactionCharacteristics
              tp:isNonRepudiationRequired="true"
              tp:isNonRepudiationReceiptRequired="true"
              tp:isConfidential="transient"
              tp:isAuthenticated="persistent"
              tp:isTamperProof="persistent"
              tp:isAuthorizationRequired="true"
              tp:timeToAcknowledgeReceipt="PT2H"/>
            <tp:ActionContext
              tp:binaryCollaboration="Request Purchase Order"
              tp:businessTransactionActivity="Request Purchase Order"
              tp:requestOrResponseAction="Purchase Order Confirmation Action"/>
            <tp:ChannelId>asyncChannelB1</tp:ChannelId>
          </tp:ThisPartyActionBinding>
        </tp:CanSend>
        <tp:CanSend>
          <tp:ThisPartyActionBinding
            tp:id="companyB_ABID2"
            tp:action="ReceiptAcknowledgement"
            tp:packageId="CompanyB_ReceiptAcknowledgmentPackage">
            <tp:BusinessTransactionCharacteristics
              tp:isNonRepudiationRequired="true"
              tp:isNonRepudiationReceiptRequired="true"
              tp:isConfidential="transient"
              tp:isAuthenticated="persistent"
              tp:isTamperProof="persistent"
              tp:isAuthorizationRequired="true"/>
            <tp:ChannelId>asyncChannelB1</tp:ChannelId>
          </tp:ThisPartyActionBinding>
        </tp:CanSend>
        <tp:CanSend>
          <tp:ThisPartyActionBinding
            tp:id="companyB_ABID3"
            tp:action="Exception"
            tp:packageId="CompanyB_ExceptionPackage">
            <tp:BusinessTransactionCharacteristics
              tp:isNonRepudiationRequired="true"
              tp:isNonRepudiationReceiptRequired="true"
              tp:isConfidential="transient"
              tp:isAuthenticated="persistent"
              tp:isTamperProof="persistent"
              tp:isAuthorizationRequired="true"/>
            <tp:ChannelId>asyncChannelB1</tp:ChannelId>
          </tp:ThisPartyActionBinding>
        </tp:CanSend>
        <tp:CanReceive>
          <tp:ThisPartyActionBinding
            tp:id="companyB_ABID4"
            tp:action="Purchase Order Request Action"
            tp:packageId="CompanyB_RequestPackage">
            <tp:BusinessTransactionCharacteristics
              tp:isNonRepudiationRequired="true"
              tp:isNonRepudiationReceiptRequired="true"
              tp:isConfidential="transient"
              tp:isAuthenticated="persistent"
              tp:isTamperProof="persistent"
              tp:isAuthorizationRequired="true"
              tp:timeToAcknowledgeReceipt="PT2H"
              tp:timeToPerform="P1D"/>
            <tp:ActionContext
              tp:binaryCollaboration="Request Purchase Order"
              tp:businessTransactionActivity="Request Purchase Order"
              tp:requestOrResponseAction="Purchase Order Request Action"/>
            <tp:ChannelId>asyncChannelB1</tp:ChannelId>
          </tp:ThisPartyActionBinding>
        </tp:CanReceive>
        <tp:CanReceive>
          <tp:ThisPartyActionBinding
            tp:id="companyB_ABID5" 
	    tp:action="ReceiptAcknowledgment"
	    tp:packageId="CompanyB_ReceiptAcknowledgmentPackage">
            <tp:BusinessTransactionCharacteristics
              tp:isNonRepudiationRequired="true"
              tp:isNonRepudiationReceiptRequired="true"
              tp:isConfidential="transient"
              tp:isAuthenticated="persistent"
              tp:isTamperProof="persistent"
              tp:isAuthorizationRequired="true"/>
            <tp:ChannelId>asyncChannelB1</tp:ChannelId>
          </tp:ThisPartyActionBinding>
        </tp:CanReceive>
        <!-- The next binding uses a synchronous delivery channel -->
        <tp:CanReceive>
          <tp:ThisPartyActionBinding
            tp:id="companyB_ABID6"
            tp:action="Purchase Order Request Action"
            tp:packageId="CompanyB_SyncReplyPackage">
            <tp:BusinessTransactionCharacteristics
              tp:isNonRepudiationRequired="true"
              tp:isNonRepudiationReceiptRequired="true"
              tp:isConfidential="transient"
              tp:isAuthenticated="persistent"
              tp:isTamperProof="persistent"
              tp:isAuthorizationRequired="true"
              tp:timeToAcknowledgeReceipt="PT5M"
              tp:timeToPerform="PT5M"/>
            <tp:ActionContext
              tp:binaryCollaboration="Request Purchase Order"
              tp:businessTransactionActivity="Request Purchase Order"
              tp:requestOrResponseAction="Purchase Order Request Action"/>
            <tp:ChannelId>syncChannelB1</tp:ChannelId>
          </tp:ThisPartyActionBinding>
          <tp:CanSend>
            <tp:ThisPartyActionBinding
              tp:id="companyB_ABID7"
              tp:action="Purchase Order Confirmation Action"
              tp:packageId="CompanyB_ResponsePackage">
              <tp:BusinessTransactionCharacteristics
                tp:isNonRepudiationRequired="true"
                tp:isNonRepudiationReceiptRequired="true"
                tp:isConfidential="transient"
                tp:isAuthenticated="persistent"
                tp:isTamperProof="persistent"
                tp:isAuthorizationRequired="true"
                tp:timeToAcknowledgeReceipt="PT5M"/>
              <tp:ActionContext
                tp:binaryCollaboration="Request Purchase Order"
                tp:businessTransactionActivity="Request Purchase Order"
                tp:requestOrResponseAction="Purchase Order Confirmation Action"/>
              <tp:ChannelId>syncChannelB1</tp:ChannelId>
            </tp:ThisPartyActionBinding>
          </tp:CanSend>
          <tp:CanSend>
            <tp:ThisPartyActionBinding
              tp:id="companyB_ABID8"
              tp:action="Exception"
              tp:packageId="CompanyB_ExceptionPackage">
              <tp:BusinessTransactionCharacteristics
                tp:isNonRepudiationRequired="true"
                tp:isNonRepudiationReceiptRequired="true"
                tp:isConfidential="transient"
                tp:isAuthenticated="persistent"
                tp:isTamperProof="persistent"
                tp:isAuthorizationRequired="true"/>
              <tp:ChannelId>syncChannelB1</tp:ChannelId>
            </tp:ThisPartyActionBinding>
          </tp:CanSend>
        </tp:CanReceive>
      </tp:ServiceBinding>
    </tp:CollaborationRole>
    <!-- Certificates used by the "Seller" company -->
    <tp:Certificate tp:certId="CompanyB_AppCert">
      <ds:KeyInfo>
        <ds:KeyName>CompanyB_AppCert_Key</ds:KeyName>
      </ds:KeyInfo>
    </tp:Certificate>
    <tp:Certificate tp:certId="CompanyB_SigningCert">
      <ds:KeyInfo>
        <ds:KeyName>CompanyB_Signingcert_Key</ds:KeyName>
      </ds:KeyInfo>
    </tp:Certificate>
    <tp:Certificate tp:certId="CompanyB_EncryptionCert">
      <ds:KeyInfo>
        <ds:KeyName>CompanyB_EncryptionCert_Key</ds:KeyName>
      </ds:KeyInfo>
    </tp:Certificate>
    <tp:Certificate tp:certId="CompanyB_ServerCert">
      <ds:KeyInfo>
        <ds:KeyName>CompanyB_ServerCert_Key</ds:KeyName>
      </ds:KeyInfo>
    </tp:Certificate>
    <tp:Certificate tp:certId="CompanyB_ClientCert">
      <ds:KeyInfo>
        <ds:KeyName>CompanyB_ClientCert_Key</ds:KeyName>
      </ds:KeyInfo>
    </tp:Certificate>
    <tp:Certificate tp:certId="TrustedRootCertB4">
      <ds:KeyInfo>
        <ds:KeyName>TrustedRootCertB4_Key</ds:KeyName>
      </ds:KeyInfo>
    </tp:Certificate>
    <tp:Certificate tp:certId="TrustedRootCertB5">
      <ds:KeyInfo>
        <ds:KeyName>TrustedRootCertB5_Key</ds:KeyName>
      </ds:KeyInfo>
    </tp:Certificate>
    <tp:Certificate tp:certId="TrustedRootCertB6">
      <ds:KeyInfo>
        <ds:KeyName>TrustedRootCertB6_Key</ds:KeyName>
      </ds:KeyInfo>
    </tp:Certificate>
    <tp:Certificate tp:certId="TrustedRootCertB7">
      <ds:KeyInfo>
        <ds:KeyName>TrustedRootCertB7_Key</ds:KeyName>
      </ds:KeyInfo>
    </tp:Certificate>
    <tp:Certificate tp:certId="TrustedRootCertB8">
      <ds:KeyInfo>
        <ds:KeyName>TrustedRootCertB8_Key</ds:KeyName>
      </ds:KeyInfo>
    </tp:Certificate>
    <tp:SecurityDetails tp:securityId="CompanyB_TransportSecurity">
      <tp:TrustAnchors>
        <tp:AnchorCertificateRef tp:certId="TrustedRootCertB5"/>
        <tp:AnchorCertificateRef tp:certId="TrustedRootCertB6"/>
        <tp:AnchorCertificateRef tp:certId="TrustedRootCertB4"/>
      </tp:TrustAnchors>
    </tp:SecurityDetails>
    <tp:SecurityDetails tp:securityId="CompanyB_MessageSecurity">
      <tp:TrustAnchors>
        <tp:AnchorCertificateRef tp:certId="TrustedRootCertB8"/>
        <tp:AnchorCertificateRef tp:certId="TrustedRootCertB7"/>
      </tp:TrustAnchors>
    </tp:SecurityDetails>
    <!-- An asynchronous delivery channel -->
    <tp:DeliveryChannel
      tp:channelId="asyncChannelB1"
      tp:transportId="transportB1"
      tp:docExchangeId="docExchangeB1">
      <tp:MessagingCharacteristics
        tp:syncReplyMode="none"
        tp:ackRequested="always"
        tp:ackSignatureRequested="always"
        tp:duplicateElimination="always"/>
    </tp:DeliveryChannel>
    <!-- A synchronous delivery channel -->
    <tp:DeliveryChannel
      tp:channelId="syncChannelB1"
      tp:transportId="transportB2"
      tp:docExchangeId="docExchangeB1">
      <tp:MessagingCharacteristics
        tp:syncReplyMode="signalsAndResponse"
        tp:ackRequested="always"
        tp:ackSignatureRequested="always"
        tp:duplicateElimination="always"/>
    </tp:DeliveryChannel>
    <tp:Transport tp:transportId="transportB1">
      <tp:TransportSender>
        <tp:TransportProtocol tp:version="1.1">HTTP</tp:TransportProtocol>
        <tp:AccessAuthentication>basic</tp:AccessAuthentication>
        <tp:TransportClientSecurity>
          <tp:TransportSecurityProtocol tp:version="3.0">SSL</tp:TransportSecurityProtocol>
          <tp:ClientCertificateRef tp:certId="CompanyB_ClientCert"/>
          <tp:ServerSecurityDetailsRef tp:securityId="CompanyB_TransportSecurity"/>
        </tp:TransportClientSecurity>
      </tp:TransportSender>
      <tp:TransportReceiver>
        <tp:TransportProtocol tp:version="1.1">HTTP</tp:TransportProtocol>
        <tp:AccessAuthentication>basic</tp:AccessAuthentication>
        <tp:Endpoint
          tp:uri="https://www.CompanyB.com/servlets/ebxmlhandler/sync";
          tp:type="allPurpose"/>
        <tp:TransportServerSecurity>
          <tp:TransportSecurityProtocol tp:version="3.0">SSL</tp:TransportSecurityProtocol>
          <tp:ServerCertificateRef tp:certId="CompanyB_ServerCert"/>
          <tp:ClientSecurityDetailsRef tp:securityId="CompanyB_TransportSecurity"/>
        </tp:TransportServerSecurity>
      </tp:TransportReceiver>
    </tp:Transport>
    <tp:Transport tp:transportId="transportB2">
      <tp:TransportSender>
        <tp:TransportProtocol tp:version="1.1">HTTP</tp:TransportProtocol>
        <tp:AccessAuthentication>basic</tp:AccessAuthentication>
        <tp:TransportClientSecurity>
          <tp:TransportSecurityProtocol tp:version="3.0">SSL</tp:TransportSecurityProtocol>
          <tp:ClientCertificateRef tp:certId="CompanyB_ClientCert"/>
          <tp:ServerSecurityDetailsRef tp:securityId="CompanyB_TransportSecurity"/>
        </tp:TransportClientSecurity>
      </tp:TransportSender>
      <tp:TransportReceiver>
        <tp:TransportProtocol tp:version="1.1">HTTP</tp:TransportProtocol>
        <tp:AccessAuthentication>basic</tp:AccessAuthentication>
        <tp:Endpoint
          tp:uri="https://www.CompanyB.com/servlets/ebxmlhandler/async";
          tp:type="allPurpose"/>
        <tp:TransportServerSecurity>
          <tp:TransportSecurityProtocol tp:version="3.0">SSL</tp:TransportSecurityProtocol>
          <tp:ServerCertificateRef tp:certId="CompanyB_ServerCert"/>
          <tp:ClientSecurityDetailsRef tp:securityId="CompanyB_TransportSecurity"/>
        </tp:TransportServerSecurity>
      </tp:TransportReceiver>
    </tp:Transport>
    <tp:DocExchange tp:docExchangeId="docExchangeB1">
      <tp:ebXMLSenderBinding tp:version="2.0">
        <tp:ReliableMessaging>
          <tp:Retries>3</tp:Retries>
          <tp:RetryInterval>PT2H</tp:RetryInterval>
          <tp:MessageOrderSemantics>Guaranteed</tp:MessageOrderSemantics>
        </tp:ReliableMessaging>
        <tp:PersistDuration>P1D</tp:PersistDuration>
        <tp:SenderNonRepudiation>
          <tp:NonRepudiationProtocol>http://www.w3.org/2000/09/xmldsig#</tp:NonRepudiationProtocol>
          <tp:HashFunction>http://www.w3.org/2000/09/xmldsig#sha1</tp:HashFunction>
          <tp:SignatureAlgorithm>http://www.w3.org/2000/09/xmldsig#dsa-sha1</tp:SignatureAlgorithm>
          <tp:SigningCertificateRef tp:certId="CompanyB_SigningCert"/>
        </tp:SenderNonRepudiation>
        <tp:SenderDigitalEnvelope>
          <tp:DigitalEnvelopeProtocol tp:version="2.0">S/MIME</tp:DigitalEnvelopeProtocol>
          <tp:EncryptionAlgorithm>DES-CBC</tp:EncryptionAlgorithm>
          <tp:EncryptionSecurityDetailsRef tp:securityId="CompanyB_MessageSecurity"/>
        </tp:SenderDigitalEnvelope>
      </tp:ebXMLSenderBinding>
      <tp:ebXMLReceiverBinding tp:version="2.0">
        <tp:ReliableMessaging>
          <tp:Retries>3</tp:Retries>
          <tp:RetryInterval>PT2H</tp:RetryInterval>
          <tp:MessageOrderSemantics>Guaranteed</tp:MessageOrderSemantics>
        </tp:ReliableMessaging>
        <tp:PersistDuration>P1D</tp:PersistDuration>
        <tp:ReceiverNonRepudiation>
          <tp:NonRepudiationProtocol>http://www.w3.org/2000/09/xmldsig#</tp:NonRepudiationProtocol>
          <tp:HashFunction>http://www.w3.org/2000/09/xmldsig#sha1</tp:HashFunction>
          <tp:SignatureAlgorithm>http://www.w3.org/2000/09/xmldsig#dsa-sha1</tp:SignatureAlgorithm>
          <tp:SigningSecurityDetailsRef tp:securityId="CompanyB_MessageSecurity"/>
        </tp:ReceiverNonRepudiation>
        <tp:ReceiverDigitalEnvelope>
          <tp:DigitalEnvelopeProtocol tp:version="2.0">S/MIME</tp:DigitalEnvelopeProtocol>
          <tp:EncryptionAlgorithm>DES-CBC</tp:EncryptionAlgorithm>
          <tp:EncryptionCertificateRef tp:certId="CompanyB_EncryptionCert"/>
        </tp:ReceiverDigitalEnvelope>
      </tp:ebXMLReceiverBinding>
    </tp:DocExchange>
  </tp:PartyInfo>
  <!-- SimplePart corresponding to the SOAP Envelope -->
  <tp:SimplePart
    tp:id="CompanyB_MsgHdr"
    tp:mimetype="text/xml">
    <tp:NamespaceSupported
      tp:location="http://www.oasis-open.org/committees/ebxml-msg/schema/msg-header-2_0.xsd";
      tp:version="2.0">
      http://www.oasis-open.org/committees/ebxml-msg/schema/msg-header-2_0.xsd
    </tp:NamespaceSupported>
  </tp:SimplePart>
  <!-- SimplePart corresponding to a Receipt Acknowledgment business signal -->
  <tp:SimplePart
    tp:id="CompanyB_ReceiptAcknowledgment"
    tp:mimetype="application/xml">
    <tp:NamespaceSupported
      tp:location="http://www.ebxml.org/bpss/ReceiptAcknowledgment.xsd";
      tp:version="2.0">
      http://www.ebxml.org/bpss/ReceiptAcknowledgment.xsd
    </tp:NamespaceSupported>
  </tp:SimplePart>
  <!-- SimplePart corresponding to an Exception business signal -->
  <tp:SimplePart
    tp:id="CompanyB_Exception"
    tp:mimetype="application/xml">
    <tp:NamespaceSupported
      tp:location="http://www.oasis-open.org/committees/ebxml-msg/schema/msg-header-2_0.xsd";
      tp:version="2.0">
      http://www.oasis-open.org/committees/ebxml-msg/schema/msg-header-2_0.xsd
    </tp:NamespaceSupported>
  </tp:SimplePart>
  <!-- SimplePart corresponding to a request action -->
  <tp:SimplePart
    tp:id="CompanyB_Request"
    tp:mimetype="application/xml">
    <tp:NamespaceSupported
      tp:location="http://www.rosettanet.org/schemas/PIP3A4RequestPurchaseOrder.xsd";
      tp:version="2.0">
      http://www.rosettanet.org/schemas/PIP3A4RequestPurchaseOrder.xsd
    </tp:NamespaceSupported>
  </tp:SimplePart>
  <!-- SimplePart corresponding to a response action -->
  <tp:SimplePart
    tp:id="CompanyB_Response"
    tp:mimetype="application/xml">
    <tp:NamespaceSupported
      tp:location="http://www.rosettanet.org/schemas/PIP3A4PurchaseOrderConfirmation.xsd";
      tp:version="2.0">
      http://www.rosettanet.org/schemas/PIP3A4PurchaseOrderConfirmation.xsd
    </tp:NamespaceSupported>
  </tp:SimplePart>
  <!-- An ebXML message with a SOAP Envelope only -->
  <tp:Packaging tp:id="CompanyB_MshSignalPackage">
    <tp:ProcessingCapabilities
      tp:parse="true"
      tp:generate="true"/>
    <tp:CompositeList>
      <tp:Composite
        tp:id="CompanyB_MshSignal"
        tp:mimetype="multipart/related"
        tp:mimeparameters="type=text/xml">
        <tp:Constituent tp:idref="CompanyB_MsgHdr"/>
      </tp:Composite>
    </tp:CompositeList>
  </tp:Packaging>
  <!-- An ebXML message with a SOAP Envelope plus a request action payload -->
  <tp:Packaging tp:id="CompanyB_RequestPackage">
    <tp:ProcessingCapabilities
      tp:parse="true"
      tp:generate="true"/>
    <tp:CompositeList>
      <tp:Composite
        tp:id="CompanyB_RequestMsg"
        tp:mimetype="multipart/related"
        tp:mimeparameters="type=text/xml">
        <tp:Constituent tp:idref="CompanyB_MsgHdr"/>
        <tp:Constituent tp:idref="CompanyB_Request"/>
      </tp:Composite>
    </tp:CompositeList>
  </tp:Packaging>
  <!-- An ebXML message with a SOAP Envelope plus a response action payload -->
  <tp:Packaging tp:id="CompanyB_ResponsePackage">
    <tp:ProcessingCapabilities
      tp:parse="true"
      tp:generate="true"/>
    <tp:CompositeList>
      <tp:Composite
        tp:id="CompanyB_ResponseMsg"
        tp:mimetype="multipart/related"
        tp:mimeparameters="type=text/xml">
        <tp:Constituent tp:idref="CompanyB_MsgHdr"/>
        <tp:Constituent tp:idref="CompanyB_Response"/>
      </tp:Composite>
    </tp:CompositeList>
  </tp:Packaging>
  <!-- An ebXML message with a SOAP Envelope plus a Receipt Acknowledgment payload -->
  <tp:Packaging tp:id="CompanyB_ReceiptAcknowledgmentPackage">
    <tp:ProcessingCapabilities
      tp:parse="true"
      tp:generate="true"/>
    <tp:CompositeList>
      <tp:Composite
        tp:id="CompanyB_ReceiptAcknowledgmentMsg"
        tp:mimetype="multipart/related"
        tp:mimeparameters="type=text/xml">
        <tp:Constituent tp:idref="CompanyB_MsgHdr"/>
        <tp:Constituent tp:idref="CompanyB_ReceiptAcknowledgment"/>
      </tp:Composite>
    </tp:CompositeList>
  </tp:Packaging>
  <!-- An ebXML message with a SOAP Envelope plus an Exception payload -->
  <tp:Packaging tp:id="CompanyB_ExceptionPackage">
    <tp:ProcessingCapabilities
      tp:parse="true"
      tp:generate="true"/>
    <tp:CompositeList>
      <tp:Composite
        tp:id="CompanyB_ExceptionMsg"
        tp:mimetype="multipart/related"
        tp:mimeparameters="type=text/xml">
        <tp:Constituent tp:idref="CompanyB_MsgHdr"/>
        <tp:Constituent tp:idref="CompanyB_Exception"/>
      </tp:Composite>
    </tp:CompositeList>
  </tp:Packaging>
  <!-- An ebXML message with a Receipt Acknowledgment signal, plus a business response,
       or an ebXML message with an Exception signal -->
  <tp:Packaging tp:id="CompanyB_SyncReplyPackage">
    <tp:ProcessingCapabilities
      tp:parse="true"
      tp:generate="true"/>
    <tp:CompositeList>
      <tp:Composite
        tp:id="CompanyB_SignalAndResponseMsg"
        tp:mimetype="multipart/related"
        tp:mimeparameters="type=text/xml">
        <tp:Constituent tp:idref="CompanyB_MsgHdr"/>
        <tp:Constituent tp:idref="CompanyB_ReceiptAcknowledgment"/>
        <tp:Constituent tp:idref="CompanyB_Response"/>
      </tp:Composite>
    </tp:CompositeList>
    <tp:CompositeList>
      <tp:Composite
        tp:id="CompanyB_SyncExceptionMsg"
        tp:mimetype="multipart/related"
        tp:mimeparameters="type=text/xml">
        <tp:Constituent tp:idref="CompanyB_MsgHdr"/>
        <tp:Constituent tp:idref="CompanyB_Exception"/>
      </tp:Composite>
    </tp:CompositeList>
  </tp:Packaging>
  <tp:Comment xml:lang="en-US">Seller's Collaboration Protocol Profile</tp:Comment>
</tp:CollaborationProtocolProfile>
--- orignal/cpa-example-2_0b.xml	2004-01-19 16:21:24.000000000 +0800
+++ cpa-example-2_0b.xml	2004-01-19 17:10:17.000000000 +0800
@@ -20,5 +20,5 @@
     tp:defaultMshPackageId="CompanyA_MshSignalPackage">
     <tp:PartyId tp:type="urn:oasis:names:tc:ebxml-cppa:partyid-type:duns">123456789</tp:PartyId>
-    <tp:PartyRef xlink:href="http://CompanyA.com/about.html"/>
+    <tp:PartyRef xlink:type="simple" xlink:href="http://CompanyA.com/about.html"/>
     <tp:CollaborationRole>
       <tp:ProcessSpecification
@@ -31,5 +31,5 @@
         tp:name="Buyer"
         xlink:type="simple"
-        xlink:href="http://www.rosettanet.org/processes/3A4.xml#Buyer"/>
+        xlink:href="http://www.rosettanet.org/processes/3A4.xml#buyer"/>
       <tp:ApplicationCertificateRef tp:certId="CompanyA_AppCert"/>
       <tp:ServiceBinding>
@@ -404,5 +404,5 @@
           <tp:ThisPartyActionBinding
             tp:id="companyB_ABID2"
-            tp:action="ReceiptAcknowledgement"
+            tp:action="ReceiptAcknowledgment"
             tp:packageId="CompanyB_ReceiptAcknowledgmentPackage">
             <tp:BusinessTransactionCharacteristics
@@ -786,5 +786,5 @@
     tp:mimetype="application/xml">
     <tp:NamespaceSupported
-      tp:location="http://www.rosettanet.org/schemas/PurchaseOrderConfirmation.xsd";
+      tp:location="http://www.rosettanet.org/schemas/PIP3A4PurchaseOrderConfirmation.xsd";
       tp:version="1.0">
       http://www.rosettanet.org/schemas/PIP3A4PurchaseOrderConfirmation.xsd
@@ -795,5 +795,5 @@
     tp:mimetype="application/xml">
     <tp:NamespaceSupported
-      tp:location="http://www.rosettanet.org/schemas/PurchaseOrderConfirmation.xsd";
+      tp:location="http://www.rosettanet.org/schemas/PIP3A4PurchaseOrderConfirmation.xsd";
       tp:version="1.0">
       http://www.rosettanet.org/schemas/PIP3A4PurchaseOrderConfirmation.xsd
--- orignal/cpp-example-companyA-2_0b.xml	2004-01-19 16:21:24.000000000 +0800
+++ cpp-example-companyA-2_0b.xml	2004-01-19 17:07:35.000000000 +0800
@@ -28,5 +28,5 @@
         tp:name="Buyer"
         xlink:type="simple"
-        xlink:href="http://www.rosettanet.org/processes/3A4.xml#Buyer"/>
+        xlink:href="http://www.rosettanet.org/processes/3A4.xml#buyer"/>
       <tp:ApplicationCertificateRef tp:certId="CompanyA_AppCert"/>
       <tp:ServiceBinding>
@@ -56,5 +56,5 @@
           <tp:ThisPartyActionBinding
             tp:id="companyA_ABID2"
-            tp:action="ReceiptAcknowledgement"
+            tp:action="ReceiptAcknowledgment"
             tp:packageId="CompanyA_ReceiptAcknowledgmentPackage">
             <tp:BusinessTransactionCharacteristics
@@ -398,7 +398,7 @@
     tp:mimetype="application/xml">
     <tp:NamespaceSupported
-      tp:location="http://www.rosettanet.org/schemas/PurchaseOrderConfirmation.xsd";
+      tp:location="http://www.rosettanet.org/schemas/PIP3A4PurchaseOrderConfirmation.xsd";
       tp:version="2.0">
-    http://www.rosettanet.org/schemas/PIP3A4PurchaseOrderConfirmation.xsd
+      http://www.rosettanet.org/schemas/PIP3A4PurchaseOrderConfirmation.xsd
   </tp:NamespaceSupported>
   </tp:SimplePart>
--- orignal/cpp-example-companyB-2_0b.xml	2004-01-19 16:21:24.000000000 +0800
+++ cpp-example-companyB-2_0b.xml	2004-01-19 17:08:21.000000000 +0800
@@ -104,6 +104,7 @@
         <tp:CanReceive>
           <tp:ThisPartyActionBinding
-            tp:id="companyB_ABID5" tp:action="ReceiptAcknowledgment"
-            tp:packageId="CompanyB_ReceiptAcknowledgmentPackage">
+            tp:id="companyB_ABID5" 
+	    tp:action="ReceiptAcknowledgment"
+	    tp:packageId="CompanyB_ReceiptAcknowledgmentPackage">
             <tp:BusinessTransactionCharacteristics
               tp:isNonRepudiationRequired="true"
@@ -353,7 +354,7 @@
     tp:mimetype="text/xml">
     <tp:NamespaceSupported
-      tp:location="http://www.oasis-open.org/committees/ebxml-msg/schema/draft-msg-header-05.xsd";
+      tp:location="http://www.oasis-open.org/committees/ebxml-msg/schema/msg-header-2_0.xsd";
       tp:version="2.0">
-      http://www.oasis-open.org/committees/ebxml-msg/schema/draft-msg-header-05.xsd
+      http://www.oasis-open.org/committees/ebxml-msg/schema/msg-header-2_0.xsd
     </tp:NamespaceSupported>
   </tp:SimplePart>
@@ -373,7 +374,7 @@
     tp:mimetype="application/xml">
     <tp:NamespaceSupported
-      tp:location="http://www.oasis-open.org/committees/ebxml-msg/schema/draft-msg-header-05.xsd";
+      tp:location="http://www.oasis-open.org/committees/ebxml-msg/schema/msg-header-2_0.xsd";
       tp:version="2.0">
-      http://www.oasis-open.org/committees/ebxml-msg/schema/draft-msg-header-05.xsd
+      http://www.oasis-open.org/committees/ebxml-msg/schema/msg-header-2_0.xsd
     </tp:NamespaceSupported>
   </tp:SimplePart>
@@ -393,5 +394,5 @@
     tp:mimetype="application/xml">
     <tp:NamespaceSupported
-      tp:location="http://www.rosettanet.org/schemas/PurchaseOrderConfirmation.xsd.xsd";
+      tp:location="http://www.rosettanet.org/schemas/PIP3A4PurchaseOrderConfirmation.xsd";
       tp:version="2.0">
       http://www.rosettanet.org/schemas/PIP3A4PurchaseOrderConfirmation.xsd
@@ -419,5 +420,5 @@
     <tp:CompositeList>
       <tp:Composite
-        tp:id="RequestMsg"
+        tp:id="CompanyB_RequestMsg"
         tp:mimetype="multipart/related"
         tp:mimeparameters="type=text/xml">


[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]