[savara-commits] savara SVN: r684 - in branches/experimental/2.0.x/bundles: org.savara.protocol/src/test/resources/testmodels/protocol and 1 other directories.

do-not-reply at jboss.org do-not-reply at jboss.org
Thu Feb 17 11:51:31 EST 2011


Author: objectiser
Date: 2011-02-17 11:51:31 -0500 (Thu, 17 Feb 2011)
New Revision: 684

Added:
   branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/resources/testmodels/protocol/ESBBroker.spr
   branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/resources/testmodels/protocol/PolicyQuote.spr
   branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/resources/testmodels/protocol/PurchaseGoods.spr
   branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/resources/testmodels/protocol/ReqRespFault.spr
   branches/experimental/2.0.x/bundles/org.savara.protocol/src/test/resources/testmodels/protocol/ESBBroker.spr
   branches/experimental/2.0.x/bundles/org.savara.protocol/src/test/resources/testmodels/protocol/PolicyQuote.spr
   branches/experimental/2.0.x/bundles/org.savara.protocol/src/test/resources/testmodels/protocol/PurchaseGoods.spr
   branches/experimental/2.0.x/bundles/org.savara.protocol/src/test/resources/testmodels/protocol/ReqRespFault.spr
   branches/experimental/2.0.x/bundles/org.savara.wsdl/src/test/resources/testmodels/contract/ESBBroker.spr
   branches/experimental/2.0.x/bundles/org.savara.wsdl/src/test/resources/testmodels/contract/PolicyQuote.spr
   branches/experimental/2.0.x/bundles/org.savara.wsdl/src/test/resources/testmodels/contract/PurchaseGoods.spr
   branches/experimental/2.0.x/bundles/org.savara.wsdl/src/test/resources/testmodels/contract/ReqRespFault.spr
Log:
Update test models.

Added: branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/resources/testmodels/protocol/ESBBroker.spr
===================================================================
--- branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/resources/testmodels/protocol/ESBBroker.spr	                        (rev 0)
+++ branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/resources/testmodels/protocol/ESBBroker.spr	2011-02-17 16:51:31 UTC (rev 684)
@@ -0,0 +1,136 @@
+[[ XSDElement ]]
+import xsd "bookingReference" as BookingReference, "buy" as Buy, "cancel" as Cancel, "CreditCheckRequest" as CreditInformation, "CreditCheckInvalid" as CreditInvalid, "CreditCheckOk" as CreditValid, "enquiry" as Enquiry, "orderConfirmed" as OrderConfirmed, "orderRejected" as OrderRejected, "quote" as Quote, "quoteList" as QuoteList, "requestForQuote" as RequestForQuote;
+[[ SourceComponent(id=//@choreographies.0) ]]
+[[ Namespace(name=http://www.pi4soa.org/ESBBroker/Broker,role=Broker) ]]
+[[ Namespace(name=http://www.pi4soa.org/ESBBroker/Buyer,role=Buyer) ]]
+[[ Namespace(name=http://www.pi4soa.org/ESBBroker/CreditAgency,role=CreditAgency) ]]
+[[ Namespace(name=http://www.pi4soa.org/ESBBroker/Supplier,role=Supplier) ]]
+[[ Type(prefix=tns,namespace=http://www.pi4soa.org/ESBBroker) ]]
+[[ Type(prefix=xsd,namespace=http://www.w3.org/2001/XMLSchema) ]]
+[[ Type(prefix=brk,namespace=http://www.pi4soa.org/ESBBroker/Broker) ]]
+[[ Type(prefix=byr,namespace=http://www.pi4soa.org/ESBBroker/Buyer) ]]
+[[ Type(prefix=cay,namespace=http://www.pi4soa.org/ESBBroker/CreditAgency) ]]
+[[ Type(prefix=spr,namespace=http://www.pi4soa.org/ESBBroker/Supplier) ]]
+[[ Namespace(name=http://www.pi4soa.org/ESBBroker/Supplier,role=SupplierTxnProcessor) ]]
+[[ Namespace(name=http://www.pi4soa.org/ESBBroker/Supplier,role=SupplierQuoteEngine) ]]
+protocol ESBBrokerProcess {
+	role Broker, Buyer, CreditAgency, Supplier;
+	[[ SourceComponent(id=//@choreographies.0/@activities.0/@exchangeDetails.0) ]]
+	[[ Interface(name={http://www.pi4soa.org/ESBBroker/Broker}BrokerBehavior) ]]
+	[[ Correlation(request=makeEnquiry) ]]
+	makeEnquiry(Enquiry) from Buyer to Broker;
+	[[ SourceComponent(id=//@choreographies.0/@activities.1) ]]
+	repeat {
+		[[ SourceComponent(id=//@choreographies.0/@activities.1/@activities.0) ]]
+		run RequestForQuote(Broker);
+	}
+	[[ SourceComponent(id=//@choreographies.0/@activities.2/@activities.0/@exchangeDetails.0) ]]
+	[[ Interface(name={http://www.pi4soa.org/ESBBroker/Broker}BrokerBehavior) ]]
+	[[ Correlation(replyTo=makeEnquiry) ]]
+	makeEnquiry(QuoteList) from Broker to Buyer;
+	[[ SourceComponent(id=//@choreographies.0/@activities.3) ]]
+	choice from Buyer to Broker {
+		[[ Correlation(request=buy) ]]
+		[[ SourceComponent(id=//@choreographies.0/@enclosedChoreographies.0/@activities.0/@exchangeDetails.0) ]]
+		[[ Interface(name={http://www.pi4soa.org/ESBBroker/Broker}BrokerBehavior) ]]
+		buy(Buy):
+			role SupplierTxnProcessor;
+			[[ SourceComponent(id=//@choreographies.0/@enclosedChoreographies.0/@activities.1/@exchangeDetails.0) ]]
+			[[ Interface(name={http://www.pi4soa.org/ESBBroker/CreditAgency}CreditAgencyBehavior) ]]
+			[[ Correlation(request=checkCredit) ]]
+			checkCredit(CreditInformation) from Broker to CreditAgency;
+			[[ SourceComponent(id=//@choreographies.0/@enclosedChoreographies.0/@activities.2) ]]
+			choice from CreditAgency to Broker {
+				[[ Correlation(replyTo=checkCredit) ]]
+				[[ SourceComponent(id=//@choreographies.0/@enclosedChoreographies.0/@activities.2/@activities.0/@activities.0/@exchangeDetails.0) ]]
+				[[ Interface(name={http://www.pi4soa.org/ESBBroker/CreditAgency}CreditAgencyBehavior) ]]
+				checkCredit(CreditValid):
+					[[ SourceComponent(id=//@choreographies.0/@enclosedChoreographies.0/@activities.2/@activities.0/@activities.1/@exchangeDetails.0) ]]
+					[[ Interface(name={http://www.pi4soa.org/ESBBroker/Supplier}SupplierBehavior) ]]
+					[[ Correlation(request=confirm) ]]
+					confirm(OrderConfirmed) from Broker to SupplierTxnProcessor;
+					[[ SourceComponent(id=//@choreographies.0/@enclosedChoreographies.0/@activities.2/@activities.0/@activities.1/@exchangeDetails.1) ]]
+					[[ Interface(name={http://www.pi4soa.org/ESBBroker/Supplier}SupplierBehavior) ]]
+					[[ Correlation(replyTo=confirm) ]]
+					confirm(BookingReference) from SupplierTxnProcessor to Broker;
+					[[ SourceComponent(id=//@choreographies.0/@enclosedChoreographies.0/@activities.2/@activities.0/@activities.2/@exchangeDetails.0) ]]
+					[[ Interface(name={http://www.pi4soa.org/ESBBroker/Broker}BrokerBehavior) ]]
+					[[ Correlation(replyTo=buy) ]]
+					buy(BookingReference) from Broker to Buyer;
+
+				[[ Fault(name=invalidCredit) ]]
+				[[ Correlation(replyTo=checkCredit) ]]
+				[[ SourceComponent(id=//@choreographies.0/@enclosedChoreographies.0/@activities.2/@activities.1/@activities.0/@exchangeDetails.0) ]]
+				[[ Interface(name={http://www.pi4soa.org/ESBBroker/CreditAgency}CreditAgencyBehavior) ]]
+				checkCredit(CreditInvalid):
+					[[ SourceComponent(id=//@choreographies.0/@enclosedChoreographies.0/@activities.2/@activities.1/@activities.1/@exchangeDetails.0) ]]
+					[[ Fault(name=rejected) ]]
+					[[ Interface(name={http://www.pi4soa.org/ESBBroker/Broker}BrokerBehavior) ]]
+					[[ Correlation(replyTo=buy) ]]
+					buy(OrderRejected) from Broker to Buyer;
+
+			}
+
+		[[ SourceComponent(id=//@choreographies.0/@activities.3/@activities.1/@activities.0/@exchangeDetails.0) ]]
+		[[ Interface(name={http://www.pi4soa.org/ESBBroker/Broker}BrokerBehavior) ]]
+		cancel(Cancel):
+
+	}
+	[[ SourceComponent(id=//@choreographies.0/@enclosedChoreographies.0) ]]
+	[[ Namespace(name=http://www.pi4soa.org/ESBBroker/Supplier,role=SupplierTxnProcessor) ]]
+	protocol CompleteTransaction(role Buyer, role Broker, role CreditAgency) {
+		role SupplierTxnProcessor;
+		[[ SourceComponent(id=//@choreographies.0/@enclosedChoreographies.0/@activities.0/@exchangeDetails.0) ]]
+		[[ Interface(name={http://www.pi4soa.org/ESBBroker/Broker}BrokerBehavior) ]]
+		[[ Correlation(request=buy) ]]
+		buy(Buy) from Buyer to Broker;
+		[[ SourceComponent(id=//@choreographies.0/@enclosedChoreographies.0/@activities.1/@exchangeDetails.0) ]]
+		[[ Interface(name={http://www.pi4soa.org/ESBBroker/CreditAgency}CreditAgencyBehavior) ]]
+		[[ Correlation(request=checkCredit) ]]
+		checkCredit(CreditInformation) from Broker to CreditAgency;
+		[[ SourceComponent(id=//@choreographies.0/@enclosedChoreographies.0/@activities.2) ]]
+		choice from CreditAgency to Broker {
+			[[ Correlation(replyTo=checkCredit) ]]
+			[[ SourceComponent(id=//@choreographies.0/@enclosedChoreographies.0/@activities.2/@activities.0/@activities.0/@exchangeDetails.0) ]]
+			[[ Interface(name={http://www.pi4soa.org/ESBBroker/CreditAgency}CreditAgencyBehavior) ]]
+			checkCredit(CreditValid):
+				[[ SourceComponent(id=//@choreographies.0/@enclosedChoreographies.0/@activities.2/@activities.0/@activities.1/@exchangeDetails.0) ]]
+				[[ Interface(name={http://www.pi4soa.org/ESBBroker/Supplier}SupplierBehavior) ]]
+				[[ Correlation(request=confirm) ]]
+				confirm(OrderConfirmed) from Broker to SupplierTxnProcessor;
+				[[ SourceComponent(id=//@choreographies.0/@enclosedChoreographies.0/@activities.2/@activities.0/@activities.1/@exchangeDetails.1) ]]
+				[[ Interface(name={http://www.pi4soa.org/ESBBroker/Supplier}SupplierBehavior) ]]
+				[[ Correlation(replyTo=confirm) ]]
+				confirm(BookingReference) from SupplierTxnProcessor to Broker;
+				[[ SourceComponent(id=//@choreographies.0/@enclosedChoreographies.0/@activities.2/@activities.0/@activities.2/@exchangeDetails.0) ]]
+				[[ Interface(name={http://www.pi4soa.org/ESBBroker/Broker}BrokerBehavior) ]]
+				[[ Correlation(replyTo=buy) ]]
+				buy(BookingReference) from Broker to Buyer;
+
+			[[ Fault(name=invalidCredit) ]]
+			[[ Correlation(replyTo=checkCredit) ]]
+			[[ SourceComponent(id=//@choreographies.0/@enclosedChoreographies.0/@activities.2/@activities.1/@activities.0/@exchangeDetails.0) ]]
+			[[ Interface(name={http://www.pi4soa.org/ESBBroker/CreditAgency}CreditAgencyBehavior) ]]
+			checkCredit(CreditInvalid):
+				[[ SourceComponent(id=//@choreographies.0/@enclosedChoreographies.0/@activities.2/@activities.1/@activities.1/@exchangeDetails.0) ]]
+				[[ Fault(name=rejected) ]]
+				[[ Interface(name={http://www.pi4soa.org/ESBBroker/Broker}BrokerBehavior) ]]
+				[[ Correlation(replyTo=buy) ]]
+				buy(OrderRejected) from Broker to Buyer;
+
+		}
+	}
+	[[ SourceComponent(id=//@choreographies.0/@enclosedChoreographies.1) ]]
+	[[ Namespace(name=http://www.pi4soa.org/ESBBroker/Supplier,role=SupplierQuoteEngine) ]]
+	protocol RequestForQuote(role Broker) {
+		role SupplierQuoteEngine;
+		[[ SourceComponent(id=//@choreographies.0/@enclosedChoreographies.1/@activities.0/@exchangeDetails.0) ]]
+		[[ Interface(name={http://www.pi4soa.org/ESBBroker/Supplier}SupplierBehavior) ]]
+		[[ Correlation(request=getQuote) ]]
+		getQuote(RequestForQuote) from Broker to SupplierQuoteEngine;
+		[[ SourceComponent(id=//@choreographies.0/@enclosedChoreographies.1/@activities.0/@exchangeDetails.1) ]]
+		[[ Interface(name={http://www.pi4soa.org/ESBBroker/Supplier}SupplierBehavior) ]]
+		[[ Correlation(replyTo=getQuote) ]]
+		getQuote(Quote) from SupplierQuoteEngine to Broker;
+	}
+}

Added: branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/resources/testmodels/protocol/PolicyQuote.spr
===================================================================
--- branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/resources/testmodels/protocol/PolicyQuote.spr	                        (rev 0)
+++ branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/resources/testmodels/protocol/PolicyQuote.spr	2011-02-17 16:51:31 UTC (rev 684)
@@ -0,0 +1,76 @@
+[[ XSDElement ]]
+import xsd "{http://creditagency.com/creditCheck}creditCheckRequest" as CreditCheckRequest, "{http://creditagency.com/creditCheck}creditCheckResponse" as CreditCheckResponse from "http://creditagency.com/creditCheck";
+[[ XSDElement ]]
+import xsd "{http://dmv.com/drivingRecord}drivingRecordRequest" as DrivingRecordRequest, "{http://dmv.com/drivingRecord}drivingRecordResponse" as DrivingRecordResponse from "http://dmv.com/drivingRecord";
+[[ XSDType ]]
+import xsd "{http://www.w3.org/2001/XMLSchema}string" as IDSSNType from "http://www.w3.org/2001/XMLSchema";
+[[ XSDElement ]]
+import xsd "{http://www.example.org/policyQuote}policyQuote" as PolicyQuote, "{http://www.example.org/policyQuote}policyQuoteFault" as PolicyQuoteFault, "{http://www.example.org/policyQuote}policyQuoteReply" as PolicyQuoteReply from "http://www.example.org/policyQuote";
+[[ XSDElement ]]
+import xsd "{http://www.w3.org/2001/XMLSchema}anyURI" as URITokenType from "http://www.w3.org/2001/XMLSchema";
+[[ SourceComponent(id=//@choreographies.0) ]]
+[[ Namespace(name=http://www.pi4soa.org/PolicyQuote,role=Driver) ]]
+[[ Namespace(name=http://creditagency.com/creditCheckService,role=CreditCheckService) ]]
+[[ Namespace(name=http://dmv.com/drivingRecordService,role=DrivingRecordService) ]]
+[[ Namespace(name=http://www.example.org/policyQuoteCalculationService,role=PolicyQuoteCalculationService) ]]
+[[ Namespace(name=http://www.example.org/policyQuoteEntityService,role=PolicyQuoteEntityService) ]]
+[[ Namespace(name=http://www.example.org/policyQuoteProcessService,role=PolicyQuoteProcessService) ]]
+[[ Type(prefix=tns,namespace=http://www.pi4soa.org/PolicyQuote) ]]
+[[ Type(prefix=xsd,namespace=http://www.w3.org/2001/XMLSchema) ]]
+[[ Type(location=schema/policyQuote.xsd,prefix=pol,namespace=http://www.example.org/policyQuote) ]]
+[[ Type(location=schema/drivingRecord.xsd,prefix=drv,namespace=http://dmv.com/drivingRecord) ]]
+[[ Type(location=schema/creditCheck.xsd,prefix=cred,namespace=http://creditagency.com/creditCheck) ]]
+[[ Type(prefix=pps,namespace=http://www.example.org/policyQuoteProcessService) ]]
+[[ Type(prefix=pcs,namespace=http://www.example.org/policyQuoteCalculationService) ]]
+[[ Type(prefix=pes,namespace=http://www.example.org/policyQuoteEntityService) ]]
+[[ Type(prefix=dmv,namespace=http://dmv.com/drivingRecordService) ]]
+[[ Type(prefix=ca,namespace=http://creditagency.com/creditCheckService) ]]
+protocol PolicyQuoteProcess {
+	role Driver, CreditCheckService, DrivingRecordService, PolicyQuoteCalculationService, PolicyQuoteEntityService, PolicyQuoteProcessService;
+	[[ SourceComponent(id=//@choreographies.0/@activities.0/@exchangeDetails.0) ]]
+	[[ Interface(name={http://www.example.org/policyQuoteProcessService}PolicyQuoteProcessService) ]]
+	[[ Correlation(request=receivePolicyQuote) ]]
+	receivePolicyQuote(PolicyQuote) from Driver to PolicyQuoteProcessService;
+	[[ SourceComponent(id=//@choreographies.0/@activities.1/@exchangeDetails.0) ]]
+	[[ Interface(name={http://dmv.com/drivingRecordService}DrivingRecordService) ]]
+	checkDrivingRecord(DrivingRecordRequest) from PolicyQuoteProcessService to DrivingRecordService;
+	[[ SourceComponent(id=//@choreographies.0/@activities.2/@exchangeDetails.0) ]]
+	[[ Interface(name={http://www.example.org/policyQuoteProcessService}DrivingRecordCallbackService) ]]
+	receiveDrivingRecord(DrivingRecordResponse) from DrivingRecordService to PolicyQuoteProcessService;
+	[[ SourceComponent(id=//@choreographies.0/@activities.3) ]]
+	choice {
+		label0():
+			[[ Correlation(request=checkCredit) ]]
+			checkCredit(CreditCheckRequest) from PolicyQuoteProcessService to CreditCheckService;
+			[[ SourceComponent(id=//@choreographies.0/@activities.3/@activities.0/@activities.0/@activities.0/@exchangeDetails.1) ]]
+			[[ Interface(name={http://creditagency.com/creditCheckService}CreditCheckService) ]]
+			[[ Correlation(replyTo=checkCredit) ]]
+			checkCredit(CreditCheckResponse) from CreditCheckService to PolicyQuoteProcessService;
+			[[ SourceComponent(id=//@choreographies.0/@activities.3/@activities.0/@activities.0/@activities.1/@exchangeDetails.0) ]]
+			[[ Interface(name={http://www.example.org/policyQuoteCalculationService}PolicyQuoteCalculationService) ]]
+			[[ Correlation(request=calculatePolicyQuote) ]]
+			calculatePolicyQuote(PolicyQuote) from PolicyQuoteProcessService to PolicyQuoteCalculationService;
+			[[ SourceComponent(id=//@choreographies.0/@activities.3/@activities.0/@activities.0/@activities.1/@exchangeDetails.1) ]]
+			[[ Interface(name={http://www.example.org/policyQuoteCalculationService}PolicyQuoteCalculationService) ]]
+			[[ Correlation(replyTo=calculatePolicyQuote) ]]
+			calculatePolicyQuote(PolicyQuoteReply) from PolicyQuoteCalculationService to PolicyQuoteProcessService;
+			[[ SourceComponent(id=//@choreographies.0/@activities.3/@activities.0/@activities.0/@activities.2/@exchangeDetails.0) ]]
+			[[ Interface(name={http://www.example.org/policyQuoteEntityService}PolicyQuoteEntityService) ]]
+			[[ Correlation(request=createPolicyQuote) ]]
+			createPolicyQuote(PolicyQuote) from PolicyQuoteProcessService to PolicyQuoteEntityService;
+			[[ SourceComponent(id=//@choreographies.0/@activities.3/@activities.0/@activities.0/@activities.2/@exchangeDetails.1) ]]
+			[[ Interface(name={http://www.example.org/policyQuoteEntityService}PolicyQuoteEntityService) ]]
+			[[ Correlation(replyTo=createPolicyQuote) ]]
+			createPolicyQuote(PolicyQuoteReply) from PolicyQuoteEntityService to PolicyQuoteProcessService;
+			[[ SourceComponent(id=//@choreographies.0/@activities.3/@activities.0/@activities.0/@activities.3/@exchangeDetails.0) ]]
+			[[ Interface(name={http://www.example.org/policyQuoteProcessService}PolicyQuoteProcessService) ]]
+			[[ Correlation(replyTo=receivePolicyQuote) ]]
+			receivePolicyQuote(PolicyQuoteReply) from PolicyQuoteProcessService to Driver;
+
+		label1():
+			[[ Fault(name=policyQuoteFault) ]]
+			[[ Correlation(replyTo=receivePolicyQuote) ]]
+			receivePolicyQuote(PolicyQuoteFault) from PolicyQuoteProcessService to Driver;
+
+	}
+}

Added: branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/resources/testmodels/protocol/PurchaseGoods.spr
===================================================================
--- branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/resources/testmodels/protocol/PurchaseGoods.spr	                        (rev 0)
+++ branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/resources/testmodels/protocol/PurchaseGoods.spr	2011-02-17 16:51:31 UTC (rev 684)
@@ -0,0 +1,48 @@
+[[ XSDType ]]
+import xsd "{http://www.jboss.org/examples/store}BuyConfirmed" as BuyConfirmed, "{http://www.jboss.org/examples/store}BuyFailed" as BuyFailed, "{http://www.jboss.org/examples/store}BuyRequest" as BuyRequest from "http://www.jboss.org/examples/store";
+[[ XSDType ]]
+import xsd "{java:org.jboss.savara.examples.purchasing}CreditCheckInvalid" as CreditCheckInvalid, "{java:org.jboss.savara.examples.purchasing}CreditCheckOk" as CreditCheckOk, "{java:org.jboss.savara.examples.purchasing}CreditCheckRequest" as CreditCheckRequest from "java:org.jboss.savara.examples.purchasing";
+[[ XSDType ]]
+import xsd "{http://www.w3.org/2001/XMLSchema}string" as IDType, "{http://www.w3.org/2001/XMLSchema}anyURI" as URITokenType from "http://www.w3.org/2001/XMLSchema";
+[[ SourceComponent(id=//@choreographies.0) ]]
+[[ Namespace(name=http://www.jboss.org/savara/examples,role=Buyer) ]]
+[[ Namespace(name=java:org.jboss.savara.examples.purchasing,role=CreditAgency) ]]
+[[ Namespace(name=http://www.jboss.org/examples/store,role=Store) ]]
+[[ Type(prefix=tns,namespace=http://www.jboss.org/savara/examples) ]]
+[[ Type(prefix=xsd,namespace=http://www.w3.org/2001/XMLSchema) ]]
+[[ Type(prefix=pur,namespace=java:org.jboss.savara.examples.purchasing) ]]
+[[ Type(prefix=sto,namespace=http://www.jboss.org/examples/store) ]]
+protocol PurchaseGoodsProcess {
+	role Buyer, CreditAgency, Store;
+	[[ SourceComponent(id=//@choreographies.0/@activities.0/@exchangeDetails.0) ]]
+	[[ Interface(name={http://www.jboss.org/examples/store}StoreInterface) ]]
+	[[ Correlation(request=buy) ]]
+	buy(BuyRequest) from Buyer to Store;
+	[[ SourceComponent(id=//@choreographies.0/@activities.1/@exchangeDetails.0) ]]
+	[[ Interface(name={java:org.jboss.savara.examples.purchasing}CreditAgencyInterface) ]]
+	[[ Correlation(request=checkCredit) ]]
+	checkCredit(CreditCheckRequest) from Store to CreditAgency;
+	[[ SourceComponent(id=//@choreographies.0/@activities.2) ]]
+	choice from CreditAgency to Store {
+		[[ Correlation(replyTo=checkCredit) ]]
+		[[ SourceComponent(id=//@choreographies.0/@activities.2/@activities.0/@activities.0/@exchangeDetails.0) ]]
+		[[ Interface(name={java:org.jboss.savara.examples.purchasing}CreditAgencyInterface) ]]
+		checkCredit(CreditCheckOk):
+			[[ SourceComponent(id=//@choreographies.0/@activities.2/@activities.0/@activities.1/@exchangeDetails.0) ]]
+			[[ Interface(name={http://www.jboss.org/examples/store}StoreInterface) ]]
+			[[ Correlation(replyTo=buy) ]]
+			buy(BuyConfirmed) from Store to Buyer;
+
+		[[ Fault(name=CreditCheckFailed) ]]
+		[[ Correlation(replyTo=checkCredit) ]]
+		[[ SourceComponent(id=//@choreographies.0/@activities.2/@activities.1/@activities.0/@exchangeDetails.0) ]]
+		[[ Interface(name={java:org.jboss.savara.examples.purchasing}CreditAgencyInterface) ]]
+		checkCredit(CreditCheckInvalid):
+			[[ SourceComponent(id=//@choreographies.0/@activities.2/@activities.1/@activities.1/@exchangeDetails.0) ]]
+			[[ Fault(name=BuyFailed) ]]
+			[[ Interface(name={http://www.jboss.org/examples/store}StoreInterface) ]]
+			[[ Correlation(replyTo=buy) ]]
+			buy(BuyFailed) from Store to Buyer;
+
+	}
+}

Added: branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/resources/testmodels/protocol/ReqRespFault.spr
===================================================================
--- branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/resources/testmodels/protocol/ReqRespFault.spr	                        (rev 0)
+++ branches/experimental/2.0.x/bundles/org.savara.bpel/src/test/resources/testmodels/protocol/ReqRespFault.spr	2011-02-17 16:51:31 UTC (rev 684)
@@ -0,0 +1,30 @@
+[[ XSDElement ]]
+import xsd "CreditCheckRequest" as CreditInformation, "CreditCheckInvalid" as CreditInvalid, "CreditCheckOk" as CreditValid;
+[[ SourceComponent(id=//@choreographies.0) ]]
+[[ Namespace(name=http://www.pi4soa.org/ReqRespFault/Buyer,role=Buyer) ]]
+[[ Namespace(name=http://www.pi4soa.org/ReqRespFault/Seller,role=Seller) ]]
+[[ Type(prefix=tns,namespace=http://www.pi4soa.org/ReqRespFault) ]]
+[[ Type(prefix=xsd,namespace=http://www.w3.org/2001/XMLSchema) ]]
+[[ Type(prefix=byr,namespace=http://www.pi4soa.org/ReqRespFault/Buyer) ]]
+[[ Type(prefix=slr,namespace=http://www.pi4soa.org/ReqRespFault/Seller) ]]
+protocol ReqRespFaultProcess {
+	role Buyer, Seller;
+	[[ SourceComponent(id=//@choreographies.0/@activities.0/@exchangeDetails.0) ]]
+	[[ Interface(name={http://www.pi4soa.org/ReqRespFault/Seller}SellerBehavior) ]]
+	[[ Correlation(request=checkCredit) ]]
+	checkCredit(CreditInformation) from Buyer to Seller;
+	[[ SourceComponent(id=//@choreographies.0/@activities.1) ]]
+	choice from Seller to Buyer {
+		[[ Correlation(replyTo=checkCredit) ]]
+		[[ SourceComponent(id=//@choreographies.0/@activities.1/@activities.0/@activities.0/@exchangeDetails.0) ]]
+		[[ Interface(name={http://www.pi4soa.org/ReqRespFault/Seller}SellerBehavior) ]]
+		checkCredit(CreditValid):
+
+		[[ Fault(name=insufficientCredit) ]]
+		[[ Correlation(replyTo=checkCredit) ]]
+		[[ SourceComponent(id=//@choreographies.0/@activities.1/@activities.1/@activities.0/@exchangeDetails.0) ]]
+		[[ Interface(name={http://www.pi4soa.org/ReqRespFault/Seller}SellerBehavior) ]]
+		checkCredit(CreditInvalid):
+
+	}
+}

Added: branches/experimental/2.0.x/bundles/org.savara.protocol/src/test/resources/testmodels/protocol/ESBBroker.spr
===================================================================
--- branches/experimental/2.0.x/bundles/org.savara.protocol/src/test/resources/testmodels/protocol/ESBBroker.spr	                        (rev 0)
+++ branches/experimental/2.0.x/bundles/org.savara.protocol/src/test/resources/testmodels/protocol/ESBBroker.spr	2011-02-17 16:51:31 UTC (rev 684)
@@ -0,0 +1,136 @@
+[[ XSDElement ]]
+import xsd "bookingReference" as BookingReference, "buy" as Buy, "cancel" as Cancel, "CreditCheckRequest" as CreditInformation, "CreditCheckInvalid" as CreditInvalid, "CreditCheckOk" as CreditValid, "enquiry" as Enquiry, "orderConfirmed" as OrderConfirmed, "orderRejected" as OrderRejected, "quote" as Quote, "quoteList" as QuoteList, "requestForQuote" as RequestForQuote;
+[[ SourceComponent(id=//@choreographies.0) ]]
+[[ Namespace(name=http://www.pi4soa.org/ESBBroker/Broker,role=Broker) ]]
+[[ Namespace(name=http://www.pi4soa.org/ESBBroker/Buyer,role=Buyer) ]]
+[[ Namespace(name=http://www.pi4soa.org/ESBBroker/CreditAgency,role=CreditAgency) ]]
+[[ Namespace(name=http://www.pi4soa.org/ESBBroker/Supplier,role=Supplier) ]]
+[[ Type(prefix=tns,namespace=http://www.pi4soa.org/ESBBroker) ]]
+[[ Type(prefix=xsd,namespace=http://www.w3.org/2001/XMLSchema) ]]
+[[ Type(prefix=brk,namespace=http://www.pi4soa.org/ESBBroker/Broker) ]]
+[[ Type(prefix=byr,namespace=http://www.pi4soa.org/ESBBroker/Buyer) ]]
+[[ Type(prefix=cay,namespace=http://www.pi4soa.org/ESBBroker/CreditAgency) ]]
+[[ Type(prefix=spr,namespace=http://www.pi4soa.org/ESBBroker/Supplier) ]]
+[[ Namespace(name=http://www.pi4soa.org/ESBBroker/Supplier,role=SupplierTxnProcessor) ]]
+[[ Namespace(name=http://www.pi4soa.org/ESBBroker/Supplier,role=SupplierQuoteEngine) ]]
+protocol ESBBrokerProcess {
+	role Broker, Buyer, CreditAgency, Supplier;
+	[[ SourceComponent(id=//@choreographies.0/@activities.0/@exchangeDetails.0) ]]
+	[[ Interface(name={http://www.pi4soa.org/ESBBroker/Broker}BrokerBehavior) ]]
+	[[ Correlation(request=makeEnquiry) ]]
+	makeEnquiry(Enquiry) from Buyer to Broker;
+	[[ SourceComponent(id=//@choreographies.0/@activities.1) ]]
+	repeat {
+		[[ SourceComponent(id=//@choreographies.0/@activities.1/@activities.0) ]]
+		run RequestForQuote(Broker);
+	}
+	[[ SourceComponent(id=//@choreographies.0/@activities.2/@activities.0/@exchangeDetails.0) ]]
+	[[ Interface(name={http://www.pi4soa.org/ESBBroker/Broker}BrokerBehavior) ]]
+	[[ Correlation(replyTo=makeEnquiry) ]]
+	makeEnquiry(QuoteList) from Broker to Buyer;
+	[[ SourceComponent(id=//@choreographies.0/@activities.3) ]]
+	choice from Buyer to Broker {
+		[[ Correlation(request=buy) ]]
+		[[ SourceComponent(id=//@choreographies.0/@enclosedChoreographies.0/@activities.0/@exchangeDetails.0) ]]
+		[[ Interface(name={http://www.pi4soa.org/ESBBroker/Broker}BrokerBehavior) ]]
+		buy(Buy):
+			role SupplierTxnProcessor;
+			[[ SourceComponent(id=//@choreographies.0/@enclosedChoreographies.0/@activities.1/@exchangeDetails.0) ]]
+			[[ Interface(name={http://www.pi4soa.org/ESBBroker/CreditAgency}CreditAgencyBehavior) ]]
+			[[ Correlation(request=checkCredit) ]]
+			checkCredit(CreditInformation) from Broker to CreditAgency;
+			[[ SourceComponent(id=//@choreographies.0/@enclosedChoreographies.0/@activities.2) ]]
+			choice from CreditAgency to Broker {
+				[[ Correlation(replyTo=checkCredit) ]]
+				[[ SourceComponent(id=//@choreographies.0/@enclosedChoreographies.0/@activities.2/@activities.0/@activities.0/@exchangeDetails.0) ]]
+				[[ Interface(name={http://www.pi4soa.org/ESBBroker/CreditAgency}CreditAgencyBehavior) ]]
+				checkCredit(CreditValid):
+					[[ SourceComponent(id=//@choreographies.0/@enclosedChoreographies.0/@activities.2/@activities.0/@activities.1/@exchangeDetails.0) ]]
+					[[ Interface(name={http://www.pi4soa.org/ESBBroker/Supplier}SupplierBehavior) ]]
+					[[ Correlation(request=confirm) ]]
+					confirm(OrderConfirmed) from Broker to SupplierTxnProcessor;
+					[[ SourceComponent(id=//@choreographies.0/@enclosedChoreographies.0/@activities.2/@activities.0/@activities.1/@exchangeDetails.1) ]]
+					[[ Interface(name={http://www.pi4soa.org/ESBBroker/Supplier}SupplierBehavior) ]]
+					[[ Correlation(replyTo=confirm) ]]
+					confirm(BookingReference) from SupplierTxnProcessor to Broker;
+					[[ SourceComponent(id=//@choreographies.0/@enclosedChoreographies.0/@activities.2/@activities.0/@activities.2/@exchangeDetails.0) ]]
+					[[ Interface(name={http://www.pi4soa.org/ESBBroker/Broker}BrokerBehavior) ]]
+					[[ Correlation(replyTo=buy) ]]
+					buy(BookingReference) from Broker to Buyer;
+
+				[[ Fault(name=invalidCredit) ]]
+				[[ Correlation(replyTo=checkCredit) ]]
+				[[ SourceComponent(id=//@choreographies.0/@enclosedChoreographies.0/@activities.2/@activities.1/@activities.0/@exchangeDetails.0) ]]
+				[[ Interface(name={http://www.pi4soa.org/ESBBroker/CreditAgency}CreditAgencyBehavior) ]]
+				checkCredit(CreditInvalid):
+					[[ SourceComponent(id=//@choreographies.0/@enclosedChoreographies.0/@activities.2/@activities.1/@activities.1/@exchangeDetails.0) ]]
+					[[ Fault(name=rejected) ]]
+					[[ Interface(name={http://www.pi4soa.org/ESBBroker/Broker}BrokerBehavior) ]]
+					[[ Correlation(replyTo=buy) ]]
+					buy(OrderRejected) from Broker to Buyer;
+
+			}
+
+		[[ SourceComponent(id=//@choreographies.0/@activities.3/@activities.1/@activities.0/@exchangeDetails.0) ]]
+		[[ Interface(name={http://www.pi4soa.org/ESBBroker/Broker}BrokerBehavior) ]]
+		cancel(Cancel):
+
+	}
+	[[ SourceComponent(id=//@choreographies.0/@enclosedChoreographies.0) ]]
+	[[ Namespace(name=http://www.pi4soa.org/ESBBroker/Supplier,role=SupplierTxnProcessor) ]]
+	protocol CompleteTransaction(role Buyer, role Broker, role CreditAgency) {
+		role SupplierTxnProcessor;
+		[[ SourceComponent(id=//@choreographies.0/@enclosedChoreographies.0/@activities.0/@exchangeDetails.0) ]]
+		[[ Interface(name={http://www.pi4soa.org/ESBBroker/Broker}BrokerBehavior) ]]
+		[[ Correlation(request=buy) ]]
+		buy(Buy) from Buyer to Broker;
+		[[ SourceComponent(id=//@choreographies.0/@enclosedChoreographies.0/@activities.1/@exchangeDetails.0) ]]
+		[[ Interface(name={http://www.pi4soa.org/ESBBroker/CreditAgency}CreditAgencyBehavior) ]]
+		[[ Correlation(request=checkCredit) ]]
+		checkCredit(CreditInformation) from Broker to CreditAgency;
+		[[ SourceComponent(id=//@choreographies.0/@enclosedChoreographies.0/@activities.2) ]]
+		choice from CreditAgency to Broker {
+			[[ Correlation(replyTo=checkCredit) ]]
+			[[ SourceComponent(id=//@choreographies.0/@enclosedChoreographies.0/@activities.2/@activities.0/@activities.0/@exchangeDetails.0) ]]
+			[[ Interface(name={http://www.pi4soa.org/ESBBroker/CreditAgency}CreditAgencyBehavior) ]]
+			checkCredit(CreditValid):
+				[[ SourceComponent(id=//@choreographies.0/@enclosedChoreographies.0/@activities.2/@activities.0/@activities.1/@exchangeDetails.0) ]]
+				[[ Interface(name={http://www.pi4soa.org/ESBBroker/Supplier}SupplierBehavior) ]]
+				[[ Correlation(request=confirm) ]]
+				confirm(OrderConfirmed) from Broker to SupplierTxnProcessor;
+				[[ SourceComponent(id=//@choreographies.0/@enclosedChoreographies.0/@activities.2/@activities.0/@activities.1/@exchangeDetails.1) ]]
+				[[ Interface(name={http://www.pi4soa.org/ESBBroker/Supplier}SupplierBehavior) ]]
+				[[ Correlation(replyTo=confirm) ]]
+				confirm(BookingReference) from SupplierTxnProcessor to Broker;
+				[[ SourceComponent(id=//@choreographies.0/@enclosedChoreographies.0/@activities.2/@activities.0/@activities.2/@exchangeDetails.0) ]]
+				[[ Interface(name={http://www.pi4soa.org/ESBBroker/Broker}BrokerBehavior) ]]
+				[[ Correlation(replyTo=buy) ]]
+				buy(BookingReference) from Broker to Buyer;
+
+			[[ Fault(name=invalidCredit) ]]
+			[[ Correlation(replyTo=checkCredit) ]]
+			[[ SourceComponent(id=//@choreographies.0/@enclosedChoreographies.0/@activities.2/@activities.1/@activities.0/@exchangeDetails.0) ]]
+			[[ Interface(name={http://www.pi4soa.org/ESBBroker/CreditAgency}CreditAgencyBehavior) ]]
+			checkCredit(CreditInvalid):
+				[[ SourceComponent(id=//@choreographies.0/@enclosedChoreographies.0/@activities.2/@activities.1/@activities.1/@exchangeDetails.0) ]]
+				[[ Fault(name=rejected) ]]
+				[[ Interface(name={http://www.pi4soa.org/ESBBroker/Broker}BrokerBehavior) ]]
+				[[ Correlation(replyTo=buy) ]]
+				buy(OrderRejected) from Broker to Buyer;
+
+		}
+	}
+	[[ SourceComponent(id=//@choreographies.0/@enclosedChoreographies.1) ]]
+	[[ Namespace(name=http://www.pi4soa.org/ESBBroker/Supplier,role=SupplierQuoteEngine) ]]
+	protocol RequestForQuote(role Broker) {
+		role SupplierQuoteEngine;
+		[[ SourceComponent(id=//@choreographies.0/@enclosedChoreographies.1/@activities.0/@exchangeDetails.0) ]]
+		[[ Interface(name={http://www.pi4soa.org/ESBBroker/Supplier}SupplierBehavior) ]]
+		[[ Correlation(request=getQuote) ]]
+		getQuote(RequestForQuote) from Broker to SupplierQuoteEngine;
+		[[ SourceComponent(id=//@choreographies.0/@enclosedChoreographies.1/@activities.0/@exchangeDetails.1) ]]
+		[[ Interface(name={http://www.pi4soa.org/ESBBroker/Supplier}SupplierBehavior) ]]
+		[[ Correlation(replyTo=getQuote) ]]
+		getQuote(Quote) from SupplierQuoteEngine to Broker;
+	}
+}

Added: branches/experimental/2.0.x/bundles/org.savara.protocol/src/test/resources/testmodels/protocol/PolicyQuote.spr
===================================================================
--- branches/experimental/2.0.x/bundles/org.savara.protocol/src/test/resources/testmodels/protocol/PolicyQuote.spr	                        (rev 0)
+++ branches/experimental/2.0.x/bundles/org.savara.protocol/src/test/resources/testmodels/protocol/PolicyQuote.spr	2011-02-17 16:51:31 UTC (rev 684)
@@ -0,0 +1,76 @@
+[[ XSDElement ]]
+import xsd "{http://creditagency.com/creditCheck}creditCheckRequest" as CreditCheckRequest, "{http://creditagency.com/creditCheck}creditCheckResponse" as CreditCheckResponse from "http://creditagency.com/creditCheck";
+[[ XSDElement ]]
+import xsd "{http://dmv.com/drivingRecord}drivingRecordRequest" as DrivingRecordRequest, "{http://dmv.com/drivingRecord}drivingRecordResponse" as DrivingRecordResponse from "http://dmv.com/drivingRecord";
+[[ XSDType ]]
+import xsd "{http://www.w3.org/2001/XMLSchema}string" as IDSSNType from "http://www.w3.org/2001/XMLSchema";
+[[ XSDElement ]]
+import xsd "{http://www.example.org/policyQuote}policyQuote" as PolicyQuote, "{http://www.example.org/policyQuote}policyQuoteFault" as PolicyQuoteFault, "{http://www.example.org/policyQuote}policyQuoteReply" as PolicyQuoteReply from "http://www.example.org/policyQuote";
+[[ XSDElement ]]
+import xsd "{http://www.w3.org/2001/XMLSchema}anyURI" as URITokenType from "http://www.w3.org/2001/XMLSchema";
+[[ SourceComponent(id=//@choreographies.0) ]]
+[[ Namespace(name=http://www.pi4soa.org/PolicyQuote,role=Driver) ]]
+[[ Namespace(name=http://creditagency.com/creditCheckService,role=CreditCheckService) ]]
+[[ Namespace(name=http://dmv.com/drivingRecordService,role=DrivingRecordService) ]]
+[[ Namespace(name=http://www.example.org/policyQuoteCalculationService,role=PolicyQuoteCalculationService) ]]
+[[ Namespace(name=http://www.example.org/policyQuoteEntityService,role=PolicyQuoteEntityService) ]]
+[[ Namespace(name=http://www.example.org/policyQuoteProcessService,role=PolicyQuoteProcessService) ]]
+[[ Type(prefix=tns,namespace=http://www.pi4soa.org/PolicyQuote) ]]
+[[ Type(prefix=xsd,namespace=http://www.w3.org/2001/XMLSchema) ]]
+[[ Type(location=schema/policyQuote.xsd,prefix=pol,namespace=http://www.example.org/policyQuote) ]]
+[[ Type(location=schema/drivingRecord.xsd,prefix=drv,namespace=http://dmv.com/drivingRecord) ]]
+[[ Type(location=schema/creditCheck.xsd,prefix=cred,namespace=http://creditagency.com/creditCheck) ]]
+[[ Type(prefix=pps,namespace=http://www.example.org/policyQuoteProcessService) ]]
+[[ Type(prefix=pcs,namespace=http://www.example.org/policyQuoteCalculationService) ]]
+[[ Type(prefix=pes,namespace=http://www.example.org/policyQuoteEntityService) ]]
+[[ Type(prefix=dmv,namespace=http://dmv.com/drivingRecordService) ]]
+[[ Type(prefix=ca,namespace=http://creditagency.com/creditCheckService) ]]
+protocol PolicyQuoteProcess {
+	role Driver, CreditCheckService, DrivingRecordService, PolicyQuoteCalculationService, PolicyQuoteEntityService, PolicyQuoteProcessService;
+	[[ SourceComponent(id=//@choreographies.0/@activities.0/@exchangeDetails.0) ]]
+	[[ Interface(name={http://www.example.org/policyQuoteProcessService}PolicyQuoteProcessService) ]]
+	[[ Correlation(request=receivePolicyQuote) ]]
+	receivePolicyQuote(PolicyQuote) from Driver to PolicyQuoteProcessService;
+	[[ SourceComponent(id=//@choreographies.0/@activities.1/@exchangeDetails.0) ]]
+	[[ Interface(name={http://dmv.com/drivingRecordService}DrivingRecordService) ]]
+	checkDrivingRecord(DrivingRecordRequest) from PolicyQuoteProcessService to DrivingRecordService;
+	[[ SourceComponent(id=//@choreographies.0/@activities.2/@exchangeDetails.0) ]]
+	[[ Interface(name={http://www.example.org/policyQuoteProcessService}DrivingRecordCallbackService) ]]
+	receiveDrivingRecord(DrivingRecordResponse) from DrivingRecordService to PolicyQuoteProcessService;
+	[[ SourceComponent(id=//@choreographies.0/@activities.3) ]]
+	choice {
+		label0():
+			[[ Correlation(request=checkCredit) ]]
+			checkCredit(CreditCheckRequest) from PolicyQuoteProcessService to CreditCheckService;
+			[[ SourceComponent(id=//@choreographies.0/@activities.3/@activities.0/@activities.0/@activities.0/@exchangeDetails.1) ]]
+			[[ Interface(name={http://creditagency.com/creditCheckService}CreditCheckService) ]]
+			[[ Correlation(replyTo=checkCredit) ]]
+			checkCredit(CreditCheckResponse) from CreditCheckService to PolicyQuoteProcessService;
+			[[ SourceComponent(id=//@choreographies.0/@activities.3/@activities.0/@activities.0/@activities.1/@exchangeDetails.0) ]]
+			[[ Interface(name={http://www.example.org/policyQuoteCalculationService}PolicyQuoteCalculationService) ]]
+			[[ Correlation(request=calculatePolicyQuote) ]]
+			calculatePolicyQuote(PolicyQuote) from PolicyQuoteProcessService to PolicyQuoteCalculationService;
+			[[ SourceComponent(id=//@choreographies.0/@activities.3/@activities.0/@activities.0/@activities.1/@exchangeDetails.1) ]]
+			[[ Interface(name={http://www.example.org/policyQuoteCalculationService}PolicyQuoteCalculationService) ]]
+			[[ Correlation(replyTo=calculatePolicyQuote) ]]
+			calculatePolicyQuote(PolicyQuoteReply) from PolicyQuoteCalculationService to PolicyQuoteProcessService;
+			[[ SourceComponent(id=//@choreographies.0/@activities.3/@activities.0/@activities.0/@activities.2/@exchangeDetails.0) ]]
+			[[ Interface(name={http://www.example.org/policyQuoteEntityService}PolicyQuoteEntityService) ]]
+			[[ Correlation(request=createPolicyQuote) ]]
+			createPolicyQuote(PolicyQuote) from PolicyQuoteProcessService to PolicyQuoteEntityService;
+			[[ SourceComponent(id=//@choreographies.0/@activities.3/@activities.0/@activities.0/@activities.2/@exchangeDetails.1) ]]
+			[[ Interface(name={http://www.example.org/policyQuoteEntityService}PolicyQuoteEntityService) ]]
+			[[ Correlation(replyTo=createPolicyQuote) ]]
+			createPolicyQuote(PolicyQuoteReply) from PolicyQuoteEntityService to PolicyQuoteProcessService;
+			[[ SourceComponent(id=//@choreographies.0/@activities.3/@activities.0/@activities.0/@activities.3/@exchangeDetails.0) ]]
+			[[ Interface(name={http://www.example.org/policyQuoteProcessService}PolicyQuoteProcessService) ]]
+			[[ Correlation(replyTo=receivePolicyQuote) ]]
+			receivePolicyQuote(PolicyQuoteReply) from PolicyQuoteProcessService to Driver;
+
+		label1():
+			[[ Fault(name=policyQuoteFault) ]]
+			[[ Correlation(replyTo=receivePolicyQuote) ]]
+			receivePolicyQuote(PolicyQuoteFault) from PolicyQuoteProcessService to Driver;
+
+	}
+}

Added: branches/experimental/2.0.x/bundles/org.savara.protocol/src/test/resources/testmodels/protocol/PurchaseGoods.spr
===================================================================
--- branches/experimental/2.0.x/bundles/org.savara.protocol/src/test/resources/testmodels/protocol/PurchaseGoods.spr	                        (rev 0)
+++ branches/experimental/2.0.x/bundles/org.savara.protocol/src/test/resources/testmodels/protocol/PurchaseGoods.spr	2011-02-17 16:51:31 UTC (rev 684)
@@ -0,0 +1,48 @@
+[[ XSDType ]]
+import xsd "{http://www.jboss.org/examples/store}BuyConfirmed" as BuyConfirmed, "{http://www.jboss.org/examples/store}BuyFailed" as BuyFailed, "{http://www.jboss.org/examples/store}BuyRequest" as BuyRequest from "http://www.jboss.org/examples/store";
+[[ XSDType ]]
+import xsd "{java:org.jboss.savara.examples.purchasing}CreditCheckInvalid" as CreditCheckInvalid, "{java:org.jboss.savara.examples.purchasing}CreditCheckOk" as CreditCheckOk, "{java:org.jboss.savara.examples.purchasing}CreditCheckRequest" as CreditCheckRequest from "java:org.jboss.savara.examples.purchasing";
+[[ XSDType ]]
+import xsd "{http://www.w3.org/2001/XMLSchema}string" as IDType, "{http://www.w3.org/2001/XMLSchema}anyURI" as URITokenType from "http://www.w3.org/2001/XMLSchema";
+[[ SourceComponent(id=//@choreographies.0) ]]
+[[ Namespace(name=http://www.jboss.org/savara/examples,role=Buyer) ]]
+[[ Namespace(name=java:org.jboss.savara.examples.purchasing,role=CreditAgency) ]]
+[[ Namespace(name=http://www.jboss.org/examples/store,role=Store) ]]
+[[ Type(prefix=tns,namespace=http://www.jboss.org/savara/examples) ]]
+[[ Type(prefix=xsd,namespace=http://www.w3.org/2001/XMLSchema) ]]
+[[ Type(prefix=pur,namespace=java:org.jboss.savara.examples.purchasing) ]]
+[[ Type(prefix=sto,namespace=http://www.jboss.org/examples/store) ]]
+protocol PurchaseGoodsProcess {
+	role Buyer, CreditAgency, Store;
+	[[ SourceComponent(id=//@choreographies.0/@activities.0/@exchangeDetails.0) ]]
+	[[ Interface(name={http://www.jboss.org/examples/store}StoreInterface) ]]
+	[[ Correlation(request=buy) ]]
+	buy(BuyRequest) from Buyer to Store;
+	[[ SourceComponent(id=//@choreographies.0/@activities.1/@exchangeDetails.0) ]]
+	[[ Interface(name={java:org.jboss.savara.examples.purchasing}CreditAgencyInterface) ]]
+	[[ Correlation(request=checkCredit) ]]
+	checkCredit(CreditCheckRequest) from Store to CreditAgency;
+	[[ SourceComponent(id=//@choreographies.0/@activities.2) ]]
+	choice from CreditAgency to Store {
+		[[ Correlation(replyTo=checkCredit) ]]
+		[[ SourceComponent(id=//@choreographies.0/@activities.2/@activities.0/@activities.0/@exchangeDetails.0) ]]
+		[[ Interface(name={java:org.jboss.savara.examples.purchasing}CreditAgencyInterface) ]]
+		checkCredit(CreditCheckOk):
+			[[ SourceComponent(id=//@choreographies.0/@activities.2/@activities.0/@activities.1/@exchangeDetails.0) ]]
+			[[ Interface(name={http://www.jboss.org/examples/store}StoreInterface) ]]
+			[[ Correlation(replyTo=buy) ]]
+			buy(BuyConfirmed) from Store to Buyer;
+
+		[[ Fault(name=CreditCheckFailed) ]]
+		[[ Correlation(replyTo=checkCredit) ]]
+		[[ SourceComponent(id=//@choreographies.0/@activities.2/@activities.1/@activities.0/@exchangeDetails.0) ]]
+		[[ Interface(name={java:org.jboss.savara.examples.purchasing}CreditAgencyInterface) ]]
+		checkCredit(CreditCheckInvalid):
+			[[ SourceComponent(id=//@choreographies.0/@activities.2/@activities.1/@activities.1/@exchangeDetails.0) ]]
+			[[ Fault(name=BuyFailed) ]]
+			[[ Interface(name={http://www.jboss.org/examples/store}StoreInterface) ]]
+			[[ Correlation(replyTo=buy) ]]
+			buy(BuyFailed) from Store to Buyer;
+
+	}
+}

Added: branches/experimental/2.0.x/bundles/org.savara.protocol/src/test/resources/testmodels/protocol/ReqRespFault.spr
===================================================================
--- branches/experimental/2.0.x/bundles/org.savara.protocol/src/test/resources/testmodels/protocol/ReqRespFault.spr	                        (rev 0)
+++ branches/experimental/2.0.x/bundles/org.savara.protocol/src/test/resources/testmodels/protocol/ReqRespFault.spr	2011-02-17 16:51:31 UTC (rev 684)
@@ -0,0 +1,30 @@
+[[ XSDElement ]]
+import xsd "CreditCheckRequest" as CreditInformation, "CreditCheckInvalid" as CreditInvalid, "CreditCheckOk" as CreditValid;
+[[ SourceComponent(id=//@choreographies.0) ]]
+[[ Namespace(name=http://www.pi4soa.org/ReqRespFault/Buyer,role=Buyer) ]]
+[[ Namespace(name=http://www.pi4soa.org/ReqRespFault/Seller,role=Seller) ]]
+[[ Type(prefix=tns,namespace=http://www.pi4soa.org/ReqRespFault) ]]
+[[ Type(prefix=xsd,namespace=http://www.w3.org/2001/XMLSchema) ]]
+[[ Type(prefix=byr,namespace=http://www.pi4soa.org/ReqRespFault/Buyer) ]]
+[[ Type(prefix=slr,namespace=http://www.pi4soa.org/ReqRespFault/Seller) ]]
+protocol ReqRespFaultProcess {
+	role Buyer, Seller;
+	[[ SourceComponent(id=//@choreographies.0/@activities.0/@exchangeDetails.0) ]]
+	[[ Interface(name={http://www.pi4soa.org/ReqRespFault/Seller}SellerBehavior) ]]
+	[[ Correlation(request=checkCredit) ]]
+	checkCredit(CreditInformation) from Buyer to Seller;
+	[[ SourceComponent(id=//@choreographies.0/@activities.1) ]]
+	choice from Seller to Buyer {
+		[[ Correlation(replyTo=checkCredit) ]]
+		[[ SourceComponent(id=//@choreographies.0/@activities.1/@activities.0/@activities.0/@exchangeDetails.0) ]]
+		[[ Interface(name={http://www.pi4soa.org/ReqRespFault/Seller}SellerBehavior) ]]
+		checkCredit(CreditValid):
+
+		[[ Fault(name=insufficientCredit) ]]
+		[[ Correlation(replyTo=checkCredit) ]]
+		[[ SourceComponent(id=//@choreographies.0/@activities.1/@activities.1/@activities.0/@exchangeDetails.0) ]]
+		[[ Interface(name={http://www.pi4soa.org/ReqRespFault/Seller}SellerBehavior) ]]
+		checkCredit(CreditInvalid):
+
+	}
+}

Added: branches/experimental/2.0.x/bundles/org.savara.wsdl/src/test/resources/testmodels/contract/ESBBroker.spr
===================================================================
--- branches/experimental/2.0.x/bundles/org.savara.wsdl/src/test/resources/testmodels/contract/ESBBroker.spr	                        (rev 0)
+++ branches/experimental/2.0.x/bundles/org.savara.wsdl/src/test/resources/testmodels/contract/ESBBroker.spr	2011-02-17 16:51:31 UTC (rev 684)
@@ -0,0 +1,136 @@
+[[ XSDElement ]]
+import xsd "bookingReference" as BookingReference, "buy" as Buy, "cancel" as Cancel, "CreditCheckRequest" as CreditInformation, "CreditCheckInvalid" as CreditInvalid, "CreditCheckOk" as CreditValid, "enquiry" as Enquiry, "orderConfirmed" as OrderConfirmed, "orderRejected" as OrderRejected, "quote" as Quote, "quoteList" as QuoteList, "requestForQuote" as RequestForQuote;
+[[ SourceComponent(id=//@choreographies.0) ]]
+[[ Namespace(name=http://www.pi4soa.org/ESBBroker/Broker,role=Broker) ]]
+[[ Namespace(name=http://www.pi4soa.org/ESBBroker/Buyer,role=Buyer) ]]
+[[ Namespace(name=http://www.pi4soa.org/ESBBroker/CreditAgency,role=CreditAgency) ]]
+[[ Namespace(name=http://www.pi4soa.org/ESBBroker/Supplier,role=Supplier) ]]
+[[ Type(prefix=tns,namespace=http://www.pi4soa.org/ESBBroker) ]]
+[[ Type(prefix=xsd,namespace=http://www.w3.org/2001/XMLSchema) ]]
+[[ Type(prefix=brk,namespace=http://www.pi4soa.org/ESBBroker/Broker) ]]
+[[ Type(prefix=byr,namespace=http://www.pi4soa.org/ESBBroker/Buyer) ]]
+[[ Type(prefix=cay,namespace=http://www.pi4soa.org/ESBBroker/CreditAgency) ]]
+[[ Type(prefix=spr,namespace=http://www.pi4soa.org/ESBBroker/Supplier) ]]
+[[ Namespace(name=http://www.pi4soa.org/ESBBroker/Supplier,role=SupplierTxnProcessor) ]]
+[[ Namespace(name=http://www.pi4soa.org/ESBBroker/Supplier,role=SupplierQuoteEngine) ]]
+protocol ESBBrokerProcess {
+	role Broker, Buyer, CreditAgency, Supplier;
+	[[ SourceComponent(id=//@choreographies.0/@activities.0/@exchangeDetails.0) ]]
+	[[ Interface(name={http://www.pi4soa.org/ESBBroker/Broker}BrokerBehavior) ]]
+	[[ Correlation(request=makeEnquiry) ]]
+	makeEnquiry(Enquiry) from Buyer to Broker;
+	[[ SourceComponent(id=//@choreographies.0/@activities.1) ]]
+	repeat {
+		[[ SourceComponent(id=//@choreographies.0/@activities.1/@activities.0) ]]
+		run RequestForQuote(Broker);
+	}
+	[[ SourceComponent(id=//@choreographies.0/@activities.2/@activities.0/@exchangeDetails.0) ]]
+	[[ Interface(name={http://www.pi4soa.org/ESBBroker/Broker}BrokerBehavior) ]]
+	[[ Correlation(replyTo=makeEnquiry) ]]
+	makeEnquiry(QuoteList) from Broker to Buyer;
+	[[ SourceComponent(id=//@choreographies.0/@activities.3) ]]
+	choice from Buyer to Broker {
+		[[ Correlation(request=buy) ]]
+		[[ SourceComponent(id=//@choreographies.0/@enclosedChoreographies.0/@activities.0/@exchangeDetails.0) ]]
+		[[ Interface(name={http://www.pi4soa.org/ESBBroker/Broker}BrokerBehavior) ]]
+		buy(Buy):
+			role SupplierTxnProcessor;
+			[[ SourceComponent(id=//@choreographies.0/@enclosedChoreographies.0/@activities.1/@exchangeDetails.0) ]]
+			[[ Interface(name={http://www.pi4soa.org/ESBBroker/CreditAgency}CreditAgencyBehavior) ]]
+			[[ Correlation(request=checkCredit) ]]
+			checkCredit(CreditInformation) from Broker to CreditAgency;
+			[[ SourceComponent(id=//@choreographies.0/@enclosedChoreographies.0/@activities.2) ]]
+			choice from CreditAgency to Broker {
+				[[ Correlation(replyTo=checkCredit) ]]
+				[[ SourceComponent(id=//@choreographies.0/@enclosedChoreographies.0/@activities.2/@activities.0/@activities.0/@exchangeDetails.0) ]]
+				[[ Interface(name={http://www.pi4soa.org/ESBBroker/CreditAgency}CreditAgencyBehavior) ]]
+				checkCredit(CreditValid):
+					[[ SourceComponent(id=//@choreographies.0/@enclosedChoreographies.0/@activities.2/@activities.0/@activities.1/@exchangeDetails.0) ]]
+					[[ Interface(name={http://www.pi4soa.org/ESBBroker/Supplier}SupplierBehavior) ]]
+					[[ Correlation(request=confirm) ]]
+					confirm(OrderConfirmed) from Broker to SupplierTxnProcessor;
+					[[ SourceComponent(id=//@choreographies.0/@enclosedChoreographies.0/@activities.2/@activities.0/@activities.1/@exchangeDetails.1) ]]
+					[[ Interface(name={http://www.pi4soa.org/ESBBroker/Supplier}SupplierBehavior) ]]
+					[[ Correlation(replyTo=confirm) ]]
+					confirm(BookingReference) from SupplierTxnProcessor to Broker;
+					[[ SourceComponent(id=//@choreographies.0/@enclosedChoreographies.0/@activities.2/@activities.0/@activities.2/@exchangeDetails.0) ]]
+					[[ Interface(name={http://www.pi4soa.org/ESBBroker/Broker}BrokerBehavior) ]]
+					[[ Correlation(replyTo=buy) ]]
+					buy(BookingReference) from Broker to Buyer;
+
+				[[ Fault(name=invalidCredit) ]]
+				[[ Correlation(replyTo=checkCredit) ]]
+				[[ SourceComponent(id=//@choreographies.0/@enclosedChoreographies.0/@activities.2/@activities.1/@activities.0/@exchangeDetails.0) ]]
+				[[ Interface(name={http://www.pi4soa.org/ESBBroker/CreditAgency}CreditAgencyBehavior) ]]
+				checkCredit(CreditInvalid):
+					[[ SourceComponent(id=//@choreographies.0/@enclosedChoreographies.0/@activities.2/@activities.1/@activities.1/@exchangeDetails.0) ]]
+					[[ Fault(name=rejected) ]]
+					[[ Interface(name={http://www.pi4soa.org/ESBBroker/Broker}BrokerBehavior) ]]
+					[[ Correlation(replyTo=buy) ]]
+					buy(OrderRejected) from Broker to Buyer;
+
+			}
+
+		[[ SourceComponent(id=//@choreographies.0/@activities.3/@activities.1/@activities.0/@exchangeDetails.0) ]]
+		[[ Interface(name={http://www.pi4soa.org/ESBBroker/Broker}BrokerBehavior) ]]
+		cancel(Cancel):
+
+	}
+	[[ SourceComponent(id=//@choreographies.0/@enclosedChoreographies.0) ]]
+	[[ Namespace(name=http://www.pi4soa.org/ESBBroker/Supplier,role=SupplierTxnProcessor) ]]
+	protocol CompleteTransaction(role Buyer, role Broker, role CreditAgency) {
+		role SupplierTxnProcessor;
+		[[ SourceComponent(id=//@choreographies.0/@enclosedChoreographies.0/@activities.0/@exchangeDetails.0) ]]
+		[[ Interface(name={http://www.pi4soa.org/ESBBroker/Broker}BrokerBehavior) ]]
+		[[ Correlation(request=buy) ]]
+		buy(Buy) from Buyer to Broker;
+		[[ SourceComponent(id=//@choreographies.0/@enclosedChoreographies.0/@activities.1/@exchangeDetails.0) ]]
+		[[ Interface(name={http://www.pi4soa.org/ESBBroker/CreditAgency}CreditAgencyBehavior) ]]
+		[[ Correlation(request=checkCredit) ]]
+		checkCredit(CreditInformation) from Broker to CreditAgency;
+		[[ SourceComponent(id=//@choreographies.0/@enclosedChoreographies.0/@activities.2) ]]
+		choice from CreditAgency to Broker {
+			[[ Correlation(replyTo=checkCredit) ]]
+			[[ SourceComponent(id=//@choreographies.0/@enclosedChoreographies.0/@activities.2/@activities.0/@activities.0/@exchangeDetails.0) ]]
+			[[ Interface(name={http://www.pi4soa.org/ESBBroker/CreditAgency}CreditAgencyBehavior) ]]
+			checkCredit(CreditValid):
+				[[ SourceComponent(id=//@choreographies.0/@enclosedChoreographies.0/@activities.2/@activities.0/@activities.1/@exchangeDetails.0) ]]
+				[[ Interface(name={http://www.pi4soa.org/ESBBroker/Supplier}SupplierBehavior) ]]
+				[[ Correlation(request=confirm) ]]
+				confirm(OrderConfirmed) from Broker to SupplierTxnProcessor;
+				[[ SourceComponent(id=//@choreographies.0/@enclosedChoreographies.0/@activities.2/@activities.0/@activities.1/@exchangeDetails.1) ]]
+				[[ Interface(name={http://www.pi4soa.org/ESBBroker/Supplier}SupplierBehavior) ]]
+				[[ Correlation(replyTo=confirm) ]]
+				confirm(BookingReference) from SupplierTxnProcessor to Broker;
+				[[ SourceComponent(id=//@choreographies.0/@enclosedChoreographies.0/@activities.2/@activities.0/@activities.2/@exchangeDetails.0) ]]
+				[[ Interface(name={http://www.pi4soa.org/ESBBroker/Broker}BrokerBehavior) ]]
+				[[ Correlation(replyTo=buy) ]]
+				buy(BookingReference) from Broker to Buyer;
+
+			[[ Fault(name=invalidCredit) ]]
+			[[ Correlation(replyTo=checkCredit) ]]
+			[[ SourceComponent(id=//@choreographies.0/@enclosedChoreographies.0/@activities.2/@activities.1/@activities.0/@exchangeDetails.0) ]]
+			[[ Interface(name={http://www.pi4soa.org/ESBBroker/CreditAgency}CreditAgencyBehavior) ]]
+			checkCredit(CreditInvalid):
+				[[ SourceComponent(id=//@choreographies.0/@enclosedChoreographies.0/@activities.2/@activities.1/@activities.1/@exchangeDetails.0) ]]
+				[[ Fault(name=rejected) ]]
+				[[ Interface(name={http://www.pi4soa.org/ESBBroker/Broker}BrokerBehavior) ]]
+				[[ Correlation(replyTo=buy) ]]
+				buy(OrderRejected) from Broker to Buyer;
+
+		}
+	}
+	[[ SourceComponent(id=//@choreographies.0/@enclosedChoreographies.1) ]]
+	[[ Namespace(name=http://www.pi4soa.org/ESBBroker/Supplier,role=SupplierQuoteEngine) ]]
+	protocol RequestForQuote(role Broker) {
+		role SupplierQuoteEngine;
+		[[ SourceComponent(id=//@choreographies.0/@enclosedChoreographies.1/@activities.0/@exchangeDetails.0) ]]
+		[[ Interface(name={http://www.pi4soa.org/ESBBroker/Supplier}SupplierBehavior) ]]
+		[[ Correlation(request=getQuote) ]]
+		getQuote(RequestForQuote) from Broker to SupplierQuoteEngine;
+		[[ SourceComponent(id=//@choreographies.0/@enclosedChoreographies.1/@activities.0/@exchangeDetails.1) ]]
+		[[ Interface(name={http://www.pi4soa.org/ESBBroker/Supplier}SupplierBehavior) ]]
+		[[ Correlation(replyTo=getQuote) ]]
+		getQuote(Quote) from SupplierQuoteEngine to Broker;
+	}
+}

Added: branches/experimental/2.0.x/bundles/org.savara.wsdl/src/test/resources/testmodels/contract/PolicyQuote.spr
===================================================================
--- branches/experimental/2.0.x/bundles/org.savara.wsdl/src/test/resources/testmodels/contract/PolicyQuote.spr	                        (rev 0)
+++ branches/experimental/2.0.x/bundles/org.savara.wsdl/src/test/resources/testmodels/contract/PolicyQuote.spr	2011-02-17 16:51:31 UTC (rev 684)
@@ -0,0 +1,76 @@
+[[ XSDElement ]]
+import xsd "{http://creditagency.com/creditCheck}creditCheckRequest" as CreditCheckRequest, "{http://creditagency.com/creditCheck}creditCheckResponse" as CreditCheckResponse from "http://creditagency.com/creditCheck";
+[[ XSDElement ]]
+import xsd "{http://dmv.com/drivingRecord}drivingRecordRequest" as DrivingRecordRequest, "{http://dmv.com/drivingRecord}drivingRecordResponse" as DrivingRecordResponse from "http://dmv.com/drivingRecord";
+[[ XSDType ]]
+import xsd "{http://www.w3.org/2001/XMLSchema}string" as IDSSNType from "http://www.w3.org/2001/XMLSchema";
+[[ XSDElement ]]
+import xsd "{http://www.example.org/policyQuote}policyQuote" as PolicyQuote, "{http://www.example.org/policyQuote}policyQuoteFault" as PolicyQuoteFault, "{http://www.example.org/policyQuote}policyQuoteReply" as PolicyQuoteReply from "http://www.example.org/policyQuote";
+[[ XSDElement ]]
+import xsd "{http://www.w3.org/2001/XMLSchema}anyURI" as URITokenType from "http://www.w3.org/2001/XMLSchema";
+[[ SourceComponent(id=//@choreographies.0) ]]
+[[ Namespace(name=http://www.pi4soa.org/PolicyQuote,role=Driver) ]]
+[[ Namespace(name=http://creditagency.com/creditCheckService,role=CreditCheckService) ]]
+[[ Namespace(name=http://dmv.com/drivingRecordService,role=DrivingRecordService) ]]
+[[ Namespace(name=http://www.example.org/policyQuoteCalculationService,role=PolicyQuoteCalculationService) ]]
+[[ Namespace(name=http://www.example.org/policyQuoteEntityService,role=PolicyQuoteEntityService) ]]
+[[ Namespace(name=http://www.example.org/policyQuoteProcessService,role=PolicyQuoteProcessService) ]]
+[[ Type(prefix=tns,namespace=http://www.pi4soa.org/PolicyQuote) ]]
+[[ Type(prefix=xsd,namespace=http://www.w3.org/2001/XMLSchema) ]]
+[[ Type(location=schema/policyQuote.xsd,prefix=pol,namespace=http://www.example.org/policyQuote) ]]
+[[ Type(location=schema/drivingRecord.xsd,prefix=drv,namespace=http://dmv.com/drivingRecord) ]]
+[[ Type(location=schema/creditCheck.xsd,prefix=cred,namespace=http://creditagency.com/creditCheck) ]]
+[[ Type(prefix=pps,namespace=http://www.example.org/policyQuoteProcessService) ]]
+[[ Type(prefix=pcs,namespace=http://www.example.org/policyQuoteCalculationService) ]]
+[[ Type(prefix=pes,namespace=http://www.example.org/policyQuoteEntityService) ]]
+[[ Type(prefix=dmv,namespace=http://dmv.com/drivingRecordService) ]]
+[[ Type(prefix=ca,namespace=http://creditagency.com/creditCheckService) ]]
+protocol PolicyQuoteProcess {
+	role Driver, CreditCheckService, DrivingRecordService, PolicyQuoteCalculationService, PolicyQuoteEntityService, PolicyQuoteProcessService;
+	[[ SourceComponent(id=//@choreographies.0/@activities.0/@exchangeDetails.0) ]]
+	[[ Interface(name={http://www.example.org/policyQuoteProcessService}PolicyQuoteProcessService) ]]
+	[[ Correlation(request=receivePolicyQuote) ]]
+	receivePolicyQuote(PolicyQuote) from Driver to PolicyQuoteProcessService;
+	[[ SourceComponent(id=//@choreographies.0/@activities.1/@exchangeDetails.0) ]]
+	[[ Interface(name={http://dmv.com/drivingRecordService}DrivingRecordService) ]]
+	checkDrivingRecord(DrivingRecordRequest) from PolicyQuoteProcessService to DrivingRecordService;
+	[[ SourceComponent(id=//@choreographies.0/@activities.2/@exchangeDetails.0) ]]
+	[[ Interface(name={http://www.example.org/policyQuoteProcessService}DrivingRecordCallbackService) ]]
+	receiveDrivingRecord(DrivingRecordResponse) from DrivingRecordService to PolicyQuoteProcessService;
+	[[ SourceComponent(id=//@choreographies.0/@activities.3) ]]
+	choice {
+		label0():
+			[[ Correlation(request=checkCredit) ]]
+			checkCredit(CreditCheckRequest) from PolicyQuoteProcessService to CreditCheckService;
+			[[ SourceComponent(id=//@choreographies.0/@activities.3/@activities.0/@activities.0/@activities.0/@exchangeDetails.1) ]]
+			[[ Interface(name={http://creditagency.com/creditCheckService}CreditCheckService) ]]
+			[[ Correlation(replyTo=checkCredit) ]]
+			checkCredit(CreditCheckResponse) from CreditCheckService to PolicyQuoteProcessService;
+			[[ SourceComponent(id=//@choreographies.0/@activities.3/@activities.0/@activities.0/@activities.1/@exchangeDetails.0) ]]
+			[[ Interface(name={http://www.example.org/policyQuoteCalculationService}PolicyQuoteCalculationService) ]]
+			[[ Correlation(request=calculatePolicyQuote) ]]
+			calculatePolicyQuote(PolicyQuote) from PolicyQuoteProcessService to PolicyQuoteCalculationService;
+			[[ SourceComponent(id=//@choreographies.0/@activities.3/@activities.0/@activities.0/@activities.1/@exchangeDetails.1) ]]
+			[[ Interface(name={http://www.example.org/policyQuoteCalculationService}PolicyQuoteCalculationService) ]]
+			[[ Correlation(replyTo=calculatePolicyQuote) ]]
+			calculatePolicyQuote(PolicyQuoteReply) from PolicyQuoteCalculationService to PolicyQuoteProcessService;
+			[[ SourceComponent(id=//@choreographies.0/@activities.3/@activities.0/@activities.0/@activities.2/@exchangeDetails.0) ]]
+			[[ Interface(name={http://www.example.org/policyQuoteEntityService}PolicyQuoteEntityService) ]]
+			[[ Correlation(request=createPolicyQuote) ]]
+			createPolicyQuote(PolicyQuote) from PolicyQuoteProcessService to PolicyQuoteEntityService;
+			[[ SourceComponent(id=//@choreographies.0/@activities.3/@activities.0/@activities.0/@activities.2/@exchangeDetails.1) ]]
+			[[ Interface(name={http://www.example.org/policyQuoteEntityService}PolicyQuoteEntityService) ]]
+			[[ Correlation(replyTo=createPolicyQuote) ]]
+			createPolicyQuote(PolicyQuoteReply) from PolicyQuoteEntityService to PolicyQuoteProcessService;
+			[[ SourceComponent(id=//@choreographies.0/@activities.3/@activities.0/@activities.0/@activities.3/@exchangeDetails.0) ]]
+			[[ Interface(name={http://www.example.org/policyQuoteProcessService}PolicyQuoteProcessService) ]]
+			[[ Correlation(replyTo=receivePolicyQuote) ]]
+			receivePolicyQuote(PolicyQuoteReply) from PolicyQuoteProcessService to Driver;
+
+		label1():
+			[[ Fault(name=policyQuoteFault) ]]
+			[[ Correlation(replyTo=receivePolicyQuote) ]]
+			receivePolicyQuote(PolicyQuoteFault) from PolicyQuoteProcessService to Driver;
+
+	}
+}

Added: branches/experimental/2.0.x/bundles/org.savara.wsdl/src/test/resources/testmodels/contract/PurchaseGoods.spr
===================================================================
--- branches/experimental/2.0.x/bundles/org.savara.wsdl/src/test/resources/testmodels/contract/PurchaseGoods.spr	                        (rev 0)
+++ branches/experimental/2.0.x/bundles/org.savara.wsdl/src/test/resources/testmodels/contract/PurchaseGoods.spr	2011-02-17 16:51:31 UTC (rev 684)
@@ -0,0 +1,48 @@
+[[ XSDType ]]
+import xsd "{http://www.jboss.org/examples/store}BuyConfirmed" as BuyConfirmed, "{http://www.jboss.org/examples/store}BuyFailed" as BuyFailed, "{http://www.jboss.org/examples/store}BuyRequest" as BuyRequest from "http://www.jboss.org/examples/store";
+[[ XSDType ]]
+import xsd "{java:org.jboss.savara.examples.purchasing}CreditCheckInvalid" as CreditCheckInvalid, "{java:org.jboss.savara.examples.purchasing}CreditCheckOk" as CreditCheckOk, "{java:org.jboss.savara.examples.purchasing}CreditCheckRequest" as CreditCheckRequest from "java:org.jboss.savara.examples.purchasing";
+[[ XSDType ]]
+import xsd "{http://www.w3.org/2001/XMLSchema}string" as IDType, "{http://www.w3.org/2001/XMLSchema}anyURI" as URITokenType from "http://www.w3.org/2001/XMLSchema";
+[[ SourceComponent(id=//@choreographies.0) ]]
+[[ Namespace(name=http://www.jboss.org/savara/examples,role=Buyer) ]]
+[[ Namespace(name=java:org.jboss.savara.examples.purchasing,role=CreditAgency) ]]
+[[ Namespace(name=http://www.jboss.org/examples/store,role=Store) ]]
+[[ Type(prefix=tns,namespace=http://www.jboss.org/savara/examples) ]]
+[[ Type(prefix=xsd,namespace=http://www.w3.org/2001/XMLSchema) ]]
+[[ Type(prefix=pur,namespace=java:org.jboss.savara.examples.purchasing) ]]
+[[ Type(prefix=sto,namespace=http://www.jboss.org/examples/store) ]]
+protocol PurchaseGoodsProcess {
+	role Buyer, CreditAgency, Store;
+	[[ SourceComponent(id=//@choreographies.0/@activities.0/@exchangeDetails.0) ]]
+	[[ Interface(name={http://www.jboss.org/examples/store}StoreInterface) ]]
+	[[ Correlation(request=buy) ]]
+	buy(BuyRequest) from Buyer to Store;
+	[[ SourceComponent(id=//@choreographies.0/@activities.1/@exchangeDetails.0) ]]
+	[[ Interface(name={java:org.jboss.savara.examples.purchasing}CreditAgencyInterface) ]]
+	[[ Correlation(request=checkCredit) ]]
+	checkCredit(CreditCheckRequest) from Store to CreditAgency;
+	[[ SourceComponent(id=//@choreographies.0/@activities.2) ]]
+	choice from CreditAgency to Store {
+		[[ Correlation(replyTo=checkCredit) ]]
+		[[ SourceComponent(id=//@choreographies.0/@activities.2/@activities.0/@activities.0/@exchangeDetails.0) ]]
+		[[ Interface(name={java:org.jboss.savara.examples.purchasing}CreditAgencyInterface) ]]
+		checkCredit(CreditCheckOk):
+			[[ SourceComponent(id=//@choreographies.0/@activities.2/@activities.0/@activities.1/@exchangeDetails.0) ]]
+			[[ Interface(name={http://www.jboss.org/examples/store}StoreInterface) ]]
+			[[ Correlation(replyTo=buy) ]]
+			buy(BuyConfirmed) from Store to Buyer;
+
+		[[ Fault(name=CreditCheckFailed) ]]
+		[[ Correlation(replyTo=checkCredit) ]]
+		[[ SourceComponent(id=//@choreographies.0/@activities.2/@activities.1/@activities.0/@exchangeDetails.0) ]]
+		[[ Interface(name={java:org.jboss.savara.examples.purchasing}CreditAgencyInterface) ]]
+		checkCredit(CreditCheckInvalid):
+			[[ SourceComponent(id=//@choreographies.0/@activities.2/@activities.1/@activities.1/@exchangeDetails.0) ]]
+			[[ Fault(name=BuyFailed) ]]
+			[[ Interface(name={http://www.jboss.org/examples/store}StoreInterface) ]]
+			[[ Correlation(replyTo=buy) ]]
+			buy(BuyFailed) from Store to Buyer;
+
+	}
+}

Added: branches/experimental/2.0.x/bundles/org.savara.wsdl/src/test/resources/testmodels/contract/ReqRespFault.spr
===================================================================
--- branches/experimental/2.0.x/bundles/org.savara.wsdl/src/test/resources/testmodels/contract/ReqRespFault.spr	                        (rev 0)
+++ branches/experimental/2.0.x/bundles/org.savara.wsdl/src/test/resources/testmodels/contract/ReqRespFault.spr	2011-02-17 16:51:31 UTC (rev 684)
@@ -0,0 +1,30 @@
+[[ XSDElement ]]
+import xsd "CreditCheckRequest" as CreditInformation, "CreditCheckInvalid" as CreditInvalid, "CreditCheckOk" as CreditValid;
+[[ SourceComponent(id=//@choreographies.0) ]]
+[[ Namespace(name=http://www.pi4soa.org/ReqRespFault/Buyer,role=Buyer) ]]
+[[ Namespace(name=http://www.pi4soa.org/ReqRespFault/Seller,role=Seller) ]]
+[[ Type(prefix=tns,namespace=http://www.pi4soa.org/ReqRespFault) ]]
+[[ Type(prefix=xsd,namespace=http://www.w3.org/2001/XMLSchema) ]]
+[[ Type(prefix=byr,namespace=http://www.pi4soa.org/ReqRespFault/Buyer) ]]
+[[ Type(prefix=slr,namespace=http://www.pi4soa.org/ReqRespFault/Seller) ]]
+protocol ReqRespFaultProcess {
+	role Buyer, Seller;
+	[[ SourceComponent(id=//@choreographies.0/@activities.0/@exchangeDetails.0) ]]
+	[[ Interface(name={http://www.pi4soa.org/ReqRespFault/Seller}SellerBehavior) ]]
+	[[ Correlation(request=checkCredit) ]]
+	checkCredit(CreditInformation) from Buyer to Seller;
+	[[ SourceComponent(id=//@choreographies.0/@activities.1) ]]
+	choice from Seller to Buyer {
+		[[ Correlation(replyTo=checkCredit) ]]
+		[[ SourceComponent(id=//@choreographies.0/@activities.1/@activities.0/@activities.0/@exchangeDetails.0) ]]
+		[[ Interface(name={http://www.pi4soa.org/ReqRespFault/Seller}SellerBehavior) ]]
+		checkCredit(CreditValid):
+
+		[[ Fault(name=insufficientCredit) ]]
+		[[ Correlation(replyTo=checkCredit) ]]
+		[[ SourceComponent(id=//@choreographies.0/@activities.1/@activities.1/@activities.0/@exchangeDetails.0) ]]
+		[[ Interface(name={http://www.pi4soa.org/ReqRespFault/Seller}SellerBehavior) ]]
+		checkCredit(CreditInvalid):
+
+	}
+}



More information about the savara-commits mailing list