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

 


Help: OASIS Mailing Lists Help | MarkMail Help

ebxml-bp message

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


Subject: Re: [ebxml-bp] Revised, corrected (valid, well-formed) combinationexample


Please see attached update

All the best

Steve


Quoting "Monica J. Martin" <Monica.Martin@Sun.COM>:

> stephen.green@systml.co.uk wrote:
>
>> Plus, if we agree to Dale's suggestion about
>> the xinclude then I'dchange that in the notes
>> in this example too.
>
> Go ahead please and resend to me. Thanks.
>
>



<?xml version="1.0" encoding="UTF-8"?>
<!--

FOR ILLUSTRATION

Demonstrates combination of several modular business process definitions (here using OASIS UBL Universal Business Process 1.0 definitions, (c) OASIS 2006 ) 

Created by Stephen Green, 2006

-->
<!-- remember to add XInclude namespace if XInclude is to be used -->
<ProcessSpecification name="Custom Process UBL 1.0 Small Business Subset ReceiptAdvice Invoice" nameID="CustomProcessUBL1SBSReceiptAdviceInvoice_PS" specificationVersion="2" instanceVersion="1.0.3" uuid="bpid:myuuid:custom-process-ubl-1-sbs-receipt-advice-invoice" xmlns="http://docs.oasis-open.org/ebxml-bp/ebbp-2.0"; xmlns:xi="http://www.w3.org/2001/XInclude"; xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"; xsi:schemaLocation="http://docs.oasis-open.org/ebxml-bp/ebbp-2.0 ebbp-2.0.3.xsd">
	<!-- in this case some copying and pasting is required even if XInclude is used -->
	<!-- signals copied from either process definition -->
	<Signal nameID="ra2" name="ReceiptAcknowledgement">
		<Specification nameID="rabpss2" name="ReceiptAcknowledgement" location="http://docs.oasis-open.org/ebxml-bp/ebbp-signals-2.0"/>
	</Signal>
	<Signal nameID="rae2" name="ReceiptAcknowledgementException">
		<Specification nameID="raebpss2" name="Exception" location="http://docs.oasis-open.org/ebxml-bp/ebbp-signals-2.0"/>
	</Signal>
	<Signal nameID="aa2" name="AcceptanceAcknowledgement">
		<Specification nameID="aabpss2" name="AcceptanceAcknowledgement" location="http://docs.oasis-open.org/ebxml-bp/ebbp-signals-2.0"/>
	</Signal>
	<Signal nameID="aae2" name="AcceptanceAcknowledgementException">
		<Specification nameID="aaebpss2" name="Exception" location="http://docs.oasis-open.org/ebxml-bp/ebbp-signals-2.0"/>
	</Signal>
	<Signal nameID="ge2" name="GeneralException">
		<Specification nameID="gebpss2" name="Exception" location="http://docs.oasis-open.org/ebxml-bp/ebbp-signals-2.0"/>
	</Signal>
	<!-- business documents copied from receipt advice process definition -->
	<BusinessDocument name="UBL 1.0 SBS Receipt Advice" nameID="ReceiptAdvice_UBL1SBSReceiptAdviceNotification_BD">
		<Specification targetNamespace="urn:oasis:names:specification:ubl:schema:xsd:ReceiptAdvice-1.0" name="Receipt Advice" nameID="ReceiptAdvice_UBL1SBSReceiptAdviceNotification_SP" location="http://docs.oasis-open.org/ubl/cd-UBL-1.0/xsd/maindoc/UBL-ReceiptAdvice-1.0.xsd"; type="schema"/>
		<Specification externalDocumentDefRef="urn:oasis:names:tc:ubl:xpath:ReceiptAdvice-1.0:sbs-1.0" name="Receipt Advice SBS" nameID="ReceiptAdviceSBS_UBL1SBSReceiptAdviceNotification_SP" location="http://docs.oasis-open.org/ubl/cs-UBL-1.0-SBS-1.0/xpaths/xml/XPath/ReceiptAdvice-XPath.xml"; type="other"/>
	</BusinessDocument>
	<!-- business documents copied from invoice process definition -->
	<BusinessDocument name="UBL 1.0 SBS Invoice" nameID="Invoice_UBL1SBSInvoiceNotification_BD">
		<Specification targetNamespace="urn:oasis:names:specification:ubl:schema:xsd:Invoice-1.0" name="Invoice" nameID="Invoice_UBL1SBSInvoiceNotification_SP" location="http://docs.oasis-open.org/ubl/cd-UBL-1.0/xsd/maindoc/UBL-Invoice-1.0.xsd"; type="schema"/>
		<Specification externalDocumentDefRef="urn:oasis:names:tc:ubl:xpath:Invoice-1.0:sbs-1.0" name="Invoice SBS" nameID="InvoiceSBS_UBL1SBSInvoiceNotification_SP" location="http://docs.oasis-open.org/ubl/cs-UBL-1.0-SBS-1.0/xpaths/xml/XPath/Invoice-XPath.xml"; type="other"/>
	</BusinessDocument>
	<!--  xincludes to be used where supported by software -->
	<!-- 
  <xi:include href="http://docs.oasis-open.org/ubl/cs-UBL-1.0-SBS-1.0/universal-business-process-1.0-ebBP/ebxmlbp-2.0_ubl-1-sbs-receipt-advice-notification-1.xml";  parse="xml" xpointer="element(/1/1)"/>	
  <xi:include href="http://docs.oasis-open.org/ubl/cs-UBL-1.0-SBS-1.0/universal-business-process-1.0-ebBP/ebxmlbp-2.0_ubl-1-sbs-invoice-notification-1.xml";  parse="xml" xpointer="element(/1/1)"/>
-->
	<!-- package with transaction copied from receipt advice process definition (equivalent to using XInclude) -->
	<Package name="UBL1SBSReceiptAdviceNotification" nameID="UBL1SBSReceiptAdviceNotification">
		<Documentation/>
		<Notification name="Notify Receipt Advice" nameID="NotifyReceiptAdvice_UBL1SBSReceiptAdviceNotification_N" isGuaranteedDeliveryRequired="true">
			<RequestingRole name="InitiatorUBL1SBSReceiptAdviceNotification" nameID="Initiator_UBL1SBSReceiptAdviceNotification"/>
			<RespondingRole name="ResponderUBL1SBSReceiptAdviceNotification" nameID="Responder_UBL1SBSReceiptAdviceNotification"/>
			<RequestingBusinessActivity name="Send Receipt Advice" nameID="SendReceiptAdvice_UBL1SBSReceiptAdviceNotification_ReqBA">
				<DocumentEnvelope name="UBL 1.0 SBS Receipt Advice" nameID="ReceiptAdvice_UBL1SBSReceiptAdviceNotification_DE" businessDocumentRef="ReceiptAdvice_UBL1SBSReceiptAdviceNotification_BD" isAuthenticated="transient" isConfidential="transient" isTamperDetectable="transient"/>
				<ReceiptAcknowledgement signalDefinitionRef="ra2" nameID="RA2_UBL1SBSReceiptAdviceNotification" name="RA2"/>
				<ReceiptAcknowledgementException signalDefinitionRef="rae2" nameID="RAE2_UBL1SBSReceiptAdviceNotification" name="RAE2"/>
				<AcceptanceAcknowledgement signalDefinitionRef="aa2" nameID="AA2_UBL1SBSReceiptAdviceNotification" name="AA2"/>
				<AcceptanceAcknowledgementException signalDefinitionRef="aae2" nameID="AAE2_UBL1SBSReceiptAdviceNotification" name="AAE2"/>
			</RequestingBusinessActivity>
			<RespondingBusinessActivity name="Receive Receipt Advice" nameID="ReceiveReceiptAdvice_UBL1SBSReceiptAdviceNotification_ResBA"/>
		</Notification>
		<BusinessCollaboration name="Notify Receipt Advice" nameID="NotifyReceiptAdvice_UBL1SBSReceiptAdviceNotification_BC" pattern="Notification">
			<Documentation/>
			<Role name="Delivery" nameID="Delivery_UBL1SBSReceiptAdviceNotification"/>
			<Role name="Despatch" nameID="Despatch_UBL1SBSReceiptAdviceNotification"/>
			<TimeToPerform/>
			<Start name="Start Forward Receipt Advice" nameID="NotifyReceiptAdvice_UBL1SBSReceiptAdviceNotification_ST">
				<ToLink toBusinessStateRef="NotifyReceiptAdvice_UBL1SBSReceiptAdviceNotification_BTA"/>
			</Start>
			<BusinessTransactionActivity name="Notify Receipt Advice" nameID="NotifyReceiptAdvice_UBL1SBSReceiptAdviceNotification_BTA" businessTransactionRef="NotifyReceiptAdvice_UBL1SBSReceiptAdviceNotification_N" hasLegalIntent="true" isConcurrent="false">
				<TimeToPerform/>
				<Performs currentRoleRef="Delivery_UBL1SBSReceiptAdviceNotification" performsRoleRef="Initiator_UBL1SBSReceiptAdviceNotification"/>
				<Performs currentRoleRef="Despatch_UBL1SBSReceiptAdviceNotification" performsRoleRef="Responder_UBL1SBSReceiptAdviceNotification"/>
			</BusinessTransactionActivity>
			<Success name="Success" nameID="NotifyReceiptAdvice_UBL1SBSReceiptAdviceNotification_Success">
				<FromLink fromBusinessStateRef="NotifyReceiptAdvice_UBL1SBSReceiptAdviceNotification_BTA">
					<ConditionExpression expressionLanguage="ConditionGuardValue" expression="Success"/>
				</FromLink>
			</Success>
			<Failure name="Failure" nameID="NotifyReceiptAdvice_UBL1SBSReceiptAdviceNotification_Failure">
				<FromLink fromBusinessStateRef="NotifyReceiptAdvice_UBL1SBSReceiptAdviceNotification_BTA">
					<ConditionExpression expressionLanguage="ConditionGuardValue" expression="Failure"/>
				</FromLink>
			</Failure>
		</BusinessCollaboration>
	</Package>
	<!-- package with transaction copied from invoice process definition (equivalent to using XInclude) -->
	<Package name="UBL1SBSInvoiceNotification" nameID="UBL1SBSInvoiceNotification">
		<Documentation/>
		<Notification name="Present Invoice" nameID="PresentInvoice_UBL1SBSInvoiceNotification_N" isGuaranteedDeliveryRequired="true">
			<RequestingRole name="InitiatorUBL1SBSInvoiceNotification" nameID="Initiator_UBL1SBSInvoiceNotification"/>
			<RespondingRole name="ResponderUBL1SBSInvoiceNotification" nameID="Responder_UBL1SBSInvoiceNotification"/>
			<RequestingBusinessActivity name="Send Invoice" nameID="SendInvoice_UBL1SBSInvoiceNotification_ReqBA">
				<DocumentEnvelope name="UBL 1.0 SBS Invoice" nameID="Invoice_UBL1SBSInvoiceNotification_DE" businessDocumentRef="Invoice_UBL1SBSInvoiceNotification_BD" isAuthenticated="transient" isConfidential="transient" isTamperDetectable="transient"/>
				<ReceiptAcknowledgement signalDefinitionRef="ra2" nameID="RA2_UBL1SBSInvoiceNotification" name="RA2"/>
				<ReceiptAcknowledgementException signalDefinitionRef="rae2" nameID="RAE2_UBL1SBSInvoiceNotification" name="RAE2"/>
				<AcceptanceAcknowledgement signalDefinitionRef="aa2" nameID="AA2_UBL1SBSInvoiceNotification" name="AA2"/>
				<AcceptanceAcknowledgementException signalDefinitionRef="aae2" nameID="AAE2_UBL1SBSInvoiceNotification" name="AAE2"/>
			</RequestingBusinessActivity>
			<RespondingBusinessActivity name="Receive Invoice" nameID="ReceiveInvoice_UBL1SBSInvoiceNotification_ResBA"/>
		</Notification>
		<BusinessCollaboration name="Present Invoice" nameID="PresentInvoice_UBL1SBSInvoiceNotification_BC" pattern="Notification">
			<Documentation/>
			<Role name="Invoice Initiator" nameID="InvoiceInitiator_UBL1SBSInvoiceNotification"/>
			<Role name="Invoice Receiver" nameID="InvoiceReceiver_UBL1SBSInvoiceNotification"/>
			<TimeToPerform/>
			<Start name="Start Present Invoice" nameID="PresentInvoice_UBL1SBSInvoiceNotification_ST">
				<ToLink toBusinessStateRef="PresentInvoice_UBL1SBSInvoiceNotification_BTA"/>
			</Start>
			<BusinessTransactionActivity name="Present Invoice" nameID="PresentInvoice_UBL1SBSInvoiceNotification_BTA" businessTransactionRef="PresentInvoice_UBL1SBSInvoiceNotification_N" hasLegalIntent="true" isConcurrent="false">
				<TimeToPerform/>
				<Performs currentRoleRef="InvoiceInitiator_UBL1SBSInvoiceNotification" performsRoleRef="Initiator_UBL1SBSInvoiceNotification"/>
				<Performs currentRoleRef="InvoiceReceiver_UBL1SBSInvoiceNotification" performsRoleRef="Responder_UBL1SBSInvoiceNotification"/>
			</BusinessTransactionActivity>
			<Success name="Success" nameID="PresentInvoice_UBL1SBSInvoiceNotification_Success">
				<FromLink fromBusinessStateRef="PresentInvoice_UBL1SBSInvoiceNotification_BTA">
					<ConditionExpression expressionLanguage="ConditionGuardValue" expression="Success"/>
				</FromLink>
			</Success>
			<Failure name="Failure" nameID="PresentInvoice_UBL1SBSInvoiceNotification_Failure">
				<FromLink fromBusinessStateRef="PresentInvoice_UBL1SBSInvoiceNotification_BTA">
					<ConditionExpression expressionLanguage="ConditionGuardValue" expression="Failure"/>
				</FromLink>
			</Failure>
		</BusinessCollaboration>
	</Package>
	<!-- new combined collaboration, the purpose of this custom, combination process definition  -->
	<!-- NOTE: there has to be careful use of nameID values to avoid id clashes -->
	<!--  (the id values in the UBP definitions were chosen with such inclusions in mind)  -->
	<Package name="Custom Receipt Advice Invoice" nameID="CustomReceiptAdviceInvoice">
		<BusinessCollaboration name="Custom Receipt Advice Invoice" nameID="CustomReceiptAdviceInvoice_CustomProcessUBL1SBSReceiptAdviceInvoice_BC" pattern="Notification">
			<Documentation/>
			<Role name="Delivery" nameID="Delivery_CustomProcessUBL1SBSReceiptAdviceInvoice"/>
			<Role name="Despatch" nameID="Despatch_CustomProcessUBL1SBSReceiptAdviceInvoice"/>
			<Role name="Invoice Initiator" nameID="InvoiceInitiator_CustomProcessUBL1SBSReceiptAdviceInvoice"/>
			<Role name="Invoice Receiver" nameID="InvoiceReceiver_CustomProcessUBL1SBSReceiptAdviceInvoice"/>
			<TimeToPerform/>
			<Start name="Start Forward Receipt Advice" nameID="NotifyReceiptAdvice_CustomProcessUBL1SBSReceiptAdviceInvoice_ST">
				<ToLink toBusinessStateRef="NotifyReceiptAdvice_CustomProcessUBL1SBSReceiptAdviceInvoice_BTA"/>
			</Start>
			<BusinessTransactionActivity name="Notify Receipt Advice" nameID="NotifyReceiptAdvice_CustomProcessUBL1SBSReceiptAdviceInvoice_BTA" businessTransactionRef="NotifyReceiptAdvice_UBL1SBSReceiptAdviceNotification_N" hasLegalIntent="true" isConcurrent="false">
				<TimeToPerform/>
				<Performs currentRoleRef="Delivery_CustomProcessUBL1SBSReceiptAdviceInvoice" performsRoleRef="Initiator_UBL1SBSReceiptAdviceNotification"/>
				<Performs currentRoleRef="Despatch_CustomProcessUBL1SBSReceiptAdviceInvoice" performsRoleRef="Responder_UBL1SBSReceiptAdviceNotification"/>
			</BusinessTransactionActivity>
			<Transition name="Forward Receipt To Present Invoice" nameID="CustomReceiptAdviceInvoice_CustomProcessUBL1SBSReceiptAdviceInvoice_ST">
				<FromLink fromBusinessStateRef="NotifyReceiptAdvice_CustomProcessUBL1SBSReceiptAdviceInvoice_ST" />
				<ToLink toBusinessStateRef="CustomReceiptAdviceInvoice_CustomProcessUBL1SBSReceiptAdviceInvoice_BTA"/>
			</Transition>
			<BusinessTransactionActivity name="Present Invoice" nameID="CustomReceiptAdviceInvoice_CustomProcessUBL1SBSReceiptAdviceInvoice_BTA" businessTransactionRef="PresentInvoice_UBL1SBSInvoiceNotification_N" hasLegalIntent="true" isConcurrent="false">
				<TimeToPerform/>
				<Performs currentRoleRef="InvoiceInitiator_CustomProcessUBL1SBSReceiptAdviceInvoice" performsRoleRef="Initiator_UBL1SBSInvoiceNotification"/>
				<Performs currentRoleRef="InvoiceReceiver_CustomProcessUBL1SBSReceiptAdviceInvoice" performsRoleRef="Responder_UBL1SBSInvoiceNotification"/>
			</BusinessTransactionActivity>
			<Success name="Success" nameID="CustomReceiptAdviceInvoice_CustomProcessUBL1SBSReceiptAdviceInvoice_Success">
				<FromLink fromBusinessStateRef="CustomReceiptAdviceInvoice_CustomProcessUBL1SBSReceiptAdviceInvoice_BTA">
					<ConditionExpression expressionLanguage="ConditionGuardValue" expression="Success"/>
				</FromLink>
			</Success>
			<Failure name="Failure" nameID="CustomReceiptAdviceInvoice_CustomProcessUBL1SBSReceiptAdviceInvoice_Failure">
				<FromLink fromBusinessStateRef="CustomReceiptAdviceInvoice_CustomProcessUBL1SBSReceiptAdviceInvoice_BTA">
					<ConditionExpression expressionLanguage="ConditionGuardValue" expression="Failure"/>
				</FromLink>
			</Failure>
		</BusinessCollaboration>
	</Package>
</ProcessSpecification>


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