550
ebXML Test Framework Committee Specification Version 1.1 DRAFT OASIS ebXML Implementation, Interoperability and Conformance Technical Committee 11 2 3 9 October September August , 2004 Copyright (C) The Organization for the Advancement of Structured Information Standards [OASIS] April 2002. All Rights Reserved. 1 1 2 3 4 5 6 7 8 9 10 11 2 3

ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

  • Upload
    others

  • View
    0

  • Download
    0

Embed Size (px)

Citation preview

Page 1: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

ebXML Test FrameworkCommittee Specification Version 1.1 DRAFT

OASIS ebXML Implementation, Interoperability and Conformance Technical Committee

11239 OctoberSeptemberAugust, 2004

Copyright (C) The Organization for the Advancement of Structured Information Standards [OASIS] April 2002. All Rights Reserved.

1

123

4

5

6

7

8

9

10

23

Page 2: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

Document identifier:ebxml-iic-test-framework-11

Location: http://www.oasis-open.org/committees/documents.php?wg_abbrev=ebxml-iic

Authors/Editors:

Michael Kass, NIST <[email protected]>Jacques Durand, Fujitsu <[email protected]>

Contributors:Steven Yung, Sun Microsystems <[email protected]>Prakash Sinha, IONA <[email protected]>Matthew MacKenzie, Individual <[email protected]>Hatem El Sebaaly, IPNet Solutions <[email protected]>Monica Martin, Sun Microsystems <[email protected]> Jacques Durand, Fujitsu <[email protected]>Christopher Frank < [email protected]>Eric VanLydegraf, Kinzan <[email protected]>Jeff Turpin, CycloneCommerce <[email protected]>Serm Kulvatunyou, NIST <[email protected]>Tim Sakach, Drake Certivo, Inc. [email protected] Cho, Postech [email protected] Kim Ngo, NIST [email protected] Wenzel, SeeBeyond <[email protected]>

Abstract:This document specifies ebXML interoperability testing specification for the eBusiness community.

Status:This document has been approved as a committee specification, and is updated periodically on no particular schedule.Committee members should send comments on this specification to the [email protected] list. Others should subscribe to and send comments to the [email protected] list. To subscribe, send an email message to [email protected] with the word "subscribe" as the body of the message.For more information about this work, including any errata and related efforts by this committee, please refer to our home page at http://www.oasis-open.org/committees/ebxml-iic.

Errata to this version:None

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 2 of 447

1

12

34

56789

1011

121314151617181920212223242526

272829

303132333435363738

39

404142

4344454647484950

23

Page 3: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

Table of Contents1Introduction .............................................................................................................................................. 14

1.1Summary of Contents of this Document ...........................................................................................141.2Document Conventions .................................................................................................................... 141.3Audience ........................................................................................................................................... 151.4Caveats and Assumptions ................................................................................................................151.5Related Documents .......................................................................................................................... 151.6Minimal Requirements for Conformance ..........................................................................................16

2Principles and Methodology of Operations ..............................................................................................172.1Objectives ......................................................................................................................................... 17

2.1.1General ..................................................................................................................................... 172.2General Methodology ....................................................................................................................... 182.3Changes from version 1.0 of this specification .................................................................................20

2.4.1Test Service Changes ...............................................................................................................202.4.2Test Requirements Schema Changes: .....................................................................................202.4.3Test Driver Scripting Changes: .................................................................................................202.4.4Modified MessageStore Schema ..............................................................................................222.4.5Modified Test Report Schema ...................................................................................................22

3The Test Framework Components ...........................................................................................................233.1The Test Driver ................................................................................................................................ 23

3.1.1Functions ................................................................................................................................... 233.1.2Using the Test Driver in Connection Mode ................................................................................263.1.3Using the Test Driver in Service Mode ......................................................................................28

3.2The Test Service ............................................................................................................................. 303.3.1The ebXML Messaging Services Test Service ..........................................................................303.3.2Modes of Operation of the Test Service ....................................................................................323.3.3Configuration Parameters of the Test Service ...........................................................................343.3.4The Messaging Actions of the Messaging Services Test Service ............................................35

Common Functions .........................................................................................................................................35Test Service Actions .......................................................................................................................................35

Mute action .................................................................................................................................................35Dummy action ............................................................................................................................................36Reflector ....................................................................................................................................................36 Initiator action ............................................................................................................................................37PayloadVerify action ...................................................................................................................................37

Integration of the Test Service with an MSH Implementation .........................................................................383.3.5Interfaces for Test Driver and Test Service ...............................................................................38

Abstract Test Service “Send” Interface ...........................................................................................................39WSDL representation of the initiator RPC method ..........................................................................................40Abstract Test Service “Configuration” Interface ..............................................................................................41

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 3 of 447

1

1234

5

6789

10111213141516171819202122232425262728293031323334353637383940

41424344

23

Page 4: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

WSDL representation of the configurator SOAP method ...........................................................................41Abstract Test Driver “Receive” Interface ........................................................................................................42

WSDL representation of the Test Driver notify SOAP method ...................................................................453.3.6Test Service Configurator, Initiator and Notification Message formats ......................................45

4The Test Case Script ............................................................................................................................... 544.1Executing Test Cases .......................................................................................................................54

4.1.1 A Typical Execution Scenario ...................................................................................................544.1.2Test Case as a Workflow of Threads .......................................................................................554.1.3Message Declarations ...............................................................................................................564.1.4Testing Configuration Data .......................................................................................................56

4.2An Abstract View of Test Scripts ......................................................................................................574.2.1Test Case #1: Basic Transaction Send/Receive within specified TimeToAcknowledge and TimeToPerform ................................................................................................................................ 58

Semantics of Execution for this test case: ......................................................................................................594.2.2Test Case #2: Basic Error Handling Test .................................................................................59

Semantics of Execution for this test case: ......................................................................................................604.2.3Test Case #3: Conditional Branching Scenario ........................................................................61

Semantics of Execution for this Test Case: ....................................................................................................634.2.4Final Test Case Result Rules ....................................................................................................64

5Test Suite ................................................................................................................................................. 685.1Conformance vs. Interoperability Test Suite ....................................................................................685.2The Test Suite Document .................................................................................................................69

5.2.1 Test Suite Metadata .................................................................................................................725.2.2The ConfigurationGroup ...........................................................................................................73

Precedence Rules for Test Driver/MSH configuration parameters ................................................................77Test Driver Exception Conditions ...............................................................................................................79

5.2.3The ThreadGroup ...................................................................................................................... 795.2.4The TestServiceConfigurator Test Operation ............................................................................79

TestServiceConfigurator behavior in Connection and Service mode ..............................................................815.2.5“Inlined” Message Content ........................................................................................................81

6Test Requirements .................................................................................................................................. 836.1Purpose and Structure ..................................................................................................................... 836.2The Test Requirements Document ...................................................................................................836.3Specification Coverage ..................................................................................................................... 856.4Test Requirements Coverage (or Test Run-Time Coverage) ...........................................................87

7Test Profiles ............................................................................................................................................ 897.1The Test Profile Document ...............................................................................................................897.2Relationships between Profiles, Requirements and Test Cases ......................................................90

8Test Cases .............................................................................................................................................. 938.3Detailed Structure of a Test Case .....................................................................................................96

1.1Individual Test Instruction definitions ............................................................................................99Test Threads ...................................................................................................................................................99SetParameter: Setting Parameter values .....................................................................................................102SetXPathParameter: Setting Parameter values using retrieved message content .......................................103LockParameter: Synchronizing concurrent Thread access to parameters ...................................................104UnlockParameter: Synchronizing concurrent Thread access to parameters ................................................105

Scope of a parameter ...............................................................................................................................106

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 4 of 447

1

123

456789

1011121314

1516

1718

1920212223242526

272829

303132333435363738394041424344454647

23

Page 5: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

Referencing/Dereferencing parameters in PutMessage Filter and TestAssertion operations ................106PutMessage: Message Construction and Transmission ...............................................................................107

The SetMessage test operation: ..............................................................................................................111The Packaging test operation: ..................................................................................................................111The Declaration ........................................................................................................................................112Mutator: Turning a Declaration into an actual Message ...........................................................................113DSignEnvelope and DSignPayload: Applying an XML Signature to the message ...................................114

Initiator: Passing message construction directives to the Test Service ........................................................117GetMessage: Message Retrieval ..................................................................................................................120The GetMessage Test Operation ..................................................................................................................123

Semantics of the GetMessage test operation ..........................................................................................1248.3.2 The Message Store ...............................................................................................................125

Semantics of the Message Store ..................................................................................................................128Filter Result Structure ...................................................................................................................................128SetXPathParameter: Defining variables using content from a Filter result ...................................................129The TestAssertion Operation ........................................................................................................................131

Semantics of TestAssertion .....................................................................................................................132The WhenTrue and WhenFalse operations ..................................................................................................134

9Test Material .......................................................................................................................................... 1389.1.1Testing Profile Document ........................................................................................................1389.1.2Test Requirements Document .................................................................................................1389.1.3Test Suite Document ...............................................................................................................1389.1.4Mutator documents .................................................................................................................. 1399.1.5CPAs ....................................................................................................................................... 1399.1.6 Test Report Document ...........................................................................................................139

10Testing Components and Scenarios ....................................................................................................14110.1 Base features running ebXML Test Suites ..................................................................................14110.3 Test Driver: Feature Profiles and Test Suites ..............................................................................14110.4 Test Service : Feature Profiles and Test Suites ...........................................................................14210.6 Test Material: Minimally Required Documents ............................................................................143

11 Sample Scenarios and Test Material .................................................................................................14511.2 MS Testing: ebXML Messaging Service Test Material Samples ...............................................145

11.2.1Example Test Requirements .................................................................................................14511.2.2Conformance Test Requirements ..........................................................................................14511.2.3Interoperability Test Requirements ........................................................................................14711.2.4Example Test Profiles ...........................................................................................................14811.2.5Conformance Test Profile Example .......................................................................................14811.2.6 Interoperability Test Profile ...................................................................................................14911.2.7Conformance Test Suite .......................................................................................................14911.2.8Interoperability Test Suite .....................................................................................................151

Appendix ATest Profile Schema ..............................................................................................................161Appendix ATest Profile Schema..............................................................................................................1611Introduction .............................................................................................................................................. 14

1.1Summary of Contents of this Document ...........................................................................................141.2Document Conventions .................................................................................................................... 141.3Audience ........................................................................................................................................... 151.4Caveats and Assumptions ................................................................................................................15

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 5 of 447

1

123456789

1011

12131415161718

1920212223242526272829303132333435363738394041424344454647

23

Page 6: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

1.5Related Documents .......................................................................................................................... 151.6Minimal Requirements for Conformance ..........................................................................................16

2Principles and Methodology of Operations ..............................................................................................172.1Objectives ......................................................................................................................................... 17

2.1.1General ..................................................................................................................................... 172.2General Methodology ....................................................................................................................... 182.3Changes from version 1.0 of this specification .................................................................................20

2.4.1Test Service Changes ...............................................................................................................202.4.2Test Requirements Schema Changes: .....................................................................................202.4.3Test Driver Scripting Changes: .................................................................................................202.4.4Modified MessageStore Schema ..............................................................................................222.4.5Modified Test Report Schema ...................................................................................................22

3The Test Framework Components ...........................................................................................................233.1The Test Driver ................................................................................................................................ 23

3.1.1Functions ................................................................................................................................... 233.1.2Using the Test Driver in Connection Mode ................................................................................263.1.3Using the Test Driver in Service Mode ......................................................................................28

3.2The Test Service ............................................................................................................................. 303.3.1The ebXML Messaging Services Test Service ..........................................................................303.3.2Modes of Operation of the Test Service ....................................................................................323.3.3Configuration Parameters of the Test Service ...........................................................................343.3.4The Messaging Actions of the Messaging Services Test Service ............................................35

Common Functions .........................................................................................................................................35Test Service Actions .......................................................................................................................................35

Mute action .................................................................................................................................................35Dummy action ............................................................................................................................................36Reflector ....................................................................................................................................................36 Initiator action ............................................................................................................................................37PayloadVerify action ...................................................................................................................................37

Integration of the Test Service with an MSH Implementation .........................................................................383.3.5Interfaces for Test Driver and Test Service ...............................................................................38

Abstract Test Service “Send” Interface ...........................................................................................................39WSDL representation of the initiator RPC method ..........................................................................................40Abstract Test Service “Configuration” Interface ..............................................................................................41

WSDL representation of the configurator SOAP method ...........................................................................41Abstract Test Driver “Receive” Interface ........................................................................................................42

WSDL representation of the Test Driver notify SOAP method ...................................................................453.3.6Test Service Configurator, Initiator and Notification Message formats ......................................45

4The Test Case Script ............................................................................................................................... 544.1Executing Test Cases .......................................................................................................................54

4.1.1 A Typical Execution Scenario ...................................................................................................544.1.2Test Case as a Workflow of Threads .......................................................................................554.1.3Message Declarations ...............................................................................................................564.1.4Testing Configuration Data .......................................................................................................56

4.2An Abstract View of Test Scripts ......................................................................................................574.2.1Test Case #1: Basic Transaction Send/Receive within specified TimeToAcknowledge and TimeToPerform ................................................................................................................................ 58

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 6 of 447

1

123456789

101112131415161718192021222324252627282930

31323334353637

38394041424344454647

23

Page 7: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

Semantics of Execution for this test case: ......................................................................................................594.2.2Test Case #2: Basic Error Handling Test .................................................................................59

Semantics of Execution for this test case: ......................................................................................................604.2.3Test Case #3: Conditional Branching Scenario ........................................................................61

Semantics of Execution for this Test Case: ....................................................................................................634.2.4Final Test Case Result Rules ....................................................................................................64

5Test Suite ................................................................................................................................................. 685.1Conformance vs. Interoperability Test Suite ....................................................................................685.2The Test Suite Document .................................................................................................................69

5.2.1 Test Suite Metadata .................................................................................................................725.2.2The ConfigurationGroup ...........................................................................................................73

Precedence Rules for Test Driver/MSH configuration parameters ................................................................77Test Driver Exception Conditions ...............................................................................................................79

5.2.3The ThreadGroup ...................................................................................................................... 795.2.4The TestServiceConfigurator Test Operation ............................................................................79

TestServiceConfigurator behavior in Connection and Service mode ..............................................................815.2.5“Inlined” Message Content ........................................................................................................81

6Test Requirements .................................................................................................................................. 836.1Purpose and Structure ..................................................................................................................... 836.2The Test Requirements Document ...................................................................................................836.3Specification Coverage ..................................................................................................................... 856.4Test Requirements Coverage (or Test Run-Time Coverage) ...........................................................87

7Test Profiles ............................................................................................................................................ 897.1The Test Profile Document ...............................................................................................................897.2Relationships between Profiles, Requirements and Test Cases ......................................................90

8Test Cases .............................................................................................................................................. 938.3Detailed Structure of a Test Case .....................................................................................................96

1.1Individual Test Instruction definitions ............................................................................................99Test Threads ...................................................................................................................................................99SetParameter: Setting Parameter values .....................................................................................................102SetXPathParameter: Setting Parameter values using retrieved message content .......................................103LockParameter: Synchronizing concurrent Thread access to parameters ...................................................104UnlockParameter: Synchronizing concurrent Thread access to parameters ................................................105

Scope of a parameter ...............................................................................................................................106Referencing/Dereferencing parameters in PutMessage Filter and TestAssertion operations ................106

PutMessage: Message Construction and Transmission ...............................................................................107The SetMessage test operation: ..............................................................................................................111The Packaging test operation: ..................................................................................................................111The Declaration ........................................................................................................................................112Mutator: Turning a Declaration into an actual Message ...........................................................................113DSignEnvelope and DSignPayload: Applying an XML Signature to the message ...................................114

Initiator: Passing message construction directives to the Test Service ........................................................117GetMessage: Message Retrieval ..................................................................................................................120The GetMessage Test Operation ..................................................................................................................123

Semantics of the GetMessage test operation ..........................................................................................1248.3.2 The Message Store ...............................................................................................................125

Semantics of the Message Store ..................................................................................................................128

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 7 of 447

1

1

23

45

6789

10111213

141516

1718192021222324252627282930313233343536373839404142434445

4647

23

Page 8: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

Filter Result Structure ...................................................................................................................................128SetXPathParameter: Defining variables using content from a Filter result ...................................................129The TestAssertion Operation ........................................................................................................................131

Semantics of TestAssertion .....................................................................................................................132The WhenTrue and WhenFalse operations ..................................................................................................134

9Test Material .......................................................................................................................................... 1389.1.1Testing Profile Document ........................................................................................................1389.1.2Test Requirements Document .................................................................................................1389.1.3Test Suite Document ...............................................................................................................1389.1.4Mutator documents .................................................................................................................. 1399.1.5CPAs ....................................................................................................................................... 1399.1.6 Test Report Document ...........................................................................................................139

10Testing Components and Scenarios ....................................................................................................14110.1 Base features running ebXML Test Suites ..................................................................................14110.3 Test Driver: Feature Profiles and Test Suites ..............................................................................14110.4 Test Service : Feature Profiles and Test Suites ...........................................................................14210.6 Test Material: Minimally Required Documents ............................................................................143

11 Sample Scenarios and Test Material .................................................................................................14511.2 MS Testing: ebXML Messaging Service Test Material Samples ...............................................145

11.2.1Example Test Requirements .................................................................................................14511.2.2Conformance Test Requirements ..........................................................................................14511.2.3Interoperability Test Requirements ........................................................................................14711.2.4Example Test Profiles ...........................................................................................................14811.2.5Conformance Test Profile Example .......................................................................................14811.2.6 Interoperability Test Profile ...................................................................................................14911.2.7Conformance Test Suite .......................................................................................................14911.2.8Interoperability Test Suite .....................................................................................................151

Appendix ATest Profile Schema..............................................................................................................1611 Introduction ....................................................................................................................................... 111.1 Summary of Contents of this Document ............................................................................................111.2 Document Conventions ..................................................................................................................... 111.3 Audience ........................................................................................................................................... 121.4 Caveats and Assumptions ................................................................................................................121.5 Related Documents ........................................................................................................................... 121.6 Minimal Requirements for Conformance ...........................................................................................122 Principles and Methodology of Operations ........................................................................................142.1 Objectives ......................................................................................................................................... 142.1.1 General ............................................................................................................................................. 142.2 General Methodology ........................................................................................................................ 152.3 162.4 Changes from version 1.0 of this specification ..................................................................................162.5 162.5.1 Test Service Changes .......................................................................................................................162.5.2 Test Requirements Schema Changes: .............................................................................................172.5.3 Test Driver Scripting Changes: .........................................................................................................172.5.4 Modified MessageStore Schema ......................................................................................................18

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 8 of 447

1

12345

6789

10111213141516171819202122232425262728293031323334353637383940414243444546

23

Page 9: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

2.5.5 Modified Test Report Schema ...........................................................................................................183 The Test Framework Components ....................................................................................................193.1 The Test Driver ................................................................................................................................. 193.1.1 Functions .......................................................................................................................................... 193.1.2 Using the Test Driver in Connection Mode ........................................................................................213.1.3 Using the Test Driver in Service Mode ..............................................................................................233.2 The Test Service ............................................................................................................................... 253.3 253.3.1 The ebXML Messaging Services Test Service ..................................................................................253.3.2 Modes of Operation of the Test Service ............................................................................................273.3.3 Configuration Parameters of the Test Service ..................................................................................283.3.4 The Messaging Actions of the Messaging Services Test Service .....................................................293.3.4.1 ....................................................................................................................Common Functions 293.3.4.2 ...................................................................................................................Test Service Actions 303.3.4.2.1 .............................................................................................................................Mute action 303.3.4.2.2 .........................................................................................................................Dummy action 303.3.4.2.3 .................................................................................................................................Reflector 313.3.4.2.4 ..........................................................................................................................Initiator action 313.3.4.2.5 ................................................................................................................PayloadVerify action 313.3.4.3 .........................................................Integration of the Test Service with an MSH Implementation 323.3.5 Interfaces for Test Driver and Test Service .......................................................................................323.3.5.1 .........................................................................................Abstract Test Service “Send” Interface 333.3.5.2 ........................................................................WSDL representation of the initiator RPC method 343.3.5.3 .............................................................................Abstract Test Service “Configuration” Interface 343.3.5.3.1 .............................................................WSDL representation of the configurator SOAP method 353.3.5.4 .......................................................................................Abstract Test Driver “Receive” Interface 353.3.5.4.1 .....................................................WSDL representation of the Test Driver notify SOAP method 383.3.6 Test Service Configurator, Initiator and Notification Message formats ..............................................384 The Test Case Script ........................................................................................................................ 464.1 Executing Test Cases .......................................................................................................................464.1.1 A Typical Execution Scenario ...........................................................................................................464.1.2 Test Case as a Workflow of Threads ................................................................................................474.1.3 Message Declarations ....................................................................................................................... 484.1.4 Testing Configuration Data ...............................................................................................................48

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 9 of 447

1

123456789

101112131415161718192021222324252627282930313233343536373839404142434445464748

23

Page 10: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

4.2 An Abstract View of Test Scripts .......................................................................................................494.2.1 Test Case #1: Basic Transaction Send/Receive within specified TimeToAcknowledge and TimeToPerform .......................................................................................................................................... 504.2.1.1 ....................................................................................Semantics of Execution for this test case: 514.2.2 Test Case #2: Basic Error Handling Test ..........................................................................................514.2.2.1 ....................................................................................Semantics of Execution for this test case: 524.2.3 Test Case #3: Conditional Branching Scenario .................................................................................524.2.3.1 ..................................................................................Semantics of Execution for this Test Case: 544.2.4 Final Test Case Result Rules ............................................................................................................555 Test Suite .......................................................................................................................................... 595.1 Conformance vs. Interoperability Test Suite .....................................................................................595.2 The Test Suite Document .................................................................................................................605.2.1 Test Suite Metadata ..........................................................................................................................625.2.2 The ConfigurationGroup ....................................................................................................................645.2.2.1 ..................................................Precedence Rules for Test Driver/MSH configuration parameters 685.2.2.1.1 ..............................................................................................Test Driver Exception Conditions 695.2.3 The ThreadGroup .............................................................................................................................. 695.2.4 The TestServiceConfigurator Test Operation ....................................................................................695.2.4.1 ..............................................TestServiceConfigurator behavior in Connection and Service mode 715.2.5 “Inlined” Message Content ................................................................................................................715.2.6 71 Table 15 - Message element content description ..............................................................................725.2.7 725.2.8 726 Test Requirements ............................................................................................................................ 746.1 Purpose and Structure ...................................................................................................................... 746.2 The Test Requirements Document ...................................................................................................746.3 Specification Coverage ..................................................................................................................... 766.4 Test Requirements Coverage (or Test Run-Time Coverage) ............................................................787 Test Profiles ...................................................................................................................................... 807.1 The Test Profile Document ...............................................................................................................807.2 Relationships between Profiles, Requirements and Test Cases .......................................................818 Test Cases ........................................................................................................................................ 838.1 848.2 Detailed Structure of a Test Case .....................................................................................................848.2.1 841.1 Individual Test Instruction definitions ................................................................................................878.2.1.1 ..............................................................................................................................Test Threads 878.2.1.2 ........................................................................................................................................................ 87

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 10 of 447

1

123456789

10111213141516171819202122232425262728293031323334353637383940414243444546

23

Page 11: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

8.2.1.3 .....................................................................................SetParameter: Setting Parameter values 898.2.1.4 ...........................SetXPathParameter: Setting Parameter values using retrieved message content 908.2.1.5 .......................................LockParameter: Synchronizing concurrent Thread access to parameters 918.2.1.6 ....................................UnlockParameter: Synchronizing concurrent Thread access to parameters 928.2.1.6.1 ..............................................................................................................Scope of a parameter 938.2.1.6.2 .......Referencing/Dereferencing parameters in PutMessage Filter and TestAssertion operations 938.2.1.7 ................................................................PutMessage: Message Construction and Transmission 948.2.1.8 ........................................................................................................................................................ 958.2.1.9 ........................................................................................................................................................ 968.2.1.9.1 ...............................................................................................The SetMessage test operation: 988.2.1.9.2 ..................................................................................................The Packaging test operation: 988.2.1.9.3 .......................................................................................................................The Declaration 998.2.1.9.4 ..............................................................Mutator: Turning a Declaration into an actual Message 1008.2.1.9.5 .........................DSignEnvelope and DSignPayload: Applying an XML Signature to the message 1008.2.1.10 ..........................................Initiator: Passing message construction directives to the Test Service 1038.2.1.11 ...............................................................................................GetMessage: Message Retrieval 1068.2.1.12 ...............................................................................................The GetMessage Test Operation 1078.2.1.12.1 ...........................................................................Semantics of the GetMessage test operation 1088.2.2 The Message Store .........................................................................................................................1098.2.2.1 .................................................................................................Semantics of the Message Store 1118.2.2.2 .................................................................................................................Filter Result Structure 1128.2.2.3 .......................................SetXPathParameter: Defining variables using content from a Filter result 1128.2.2.4 ...................................................................................................................................................... 1148.2.2.5 ...................................................................................................................................................... 1148.2.2.6 ...................................................................................................................................................... 1148.2.2.7 .......................................................................................................The TestAssertion Operation 1148.2.2.7.1 ......................................................................................................Semantics of TestAssertion 1168.2.2.8 ..................................................................................The WhenTrue and WhenFalse operations 118

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 11 of 447

1

123456789

1011121314151617181920212223242526272829303132333435363738394041424344454647484950

23

Page 12: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

1.2 1188.2.2.9 ...................................................................................................................................................... 1199 Test Material ................................................................................................................................... 1219.1.1 Testing Profile Document ................................................................................................................1219.1.2 Test Requirements Document .........................................................................................................1219.1.3 Test Suite Document .......................................................................................................................1219.1.4 Mutator documents .........................................................................................................................1229.1.5 CPAs ............................................................................................................................................... 1229.1.6 Test Report Document ....................................................................................................................12210 Testing Components and Scenarios ...............................................................................................12310.1 Base features running ebXML Test Suites ......................................................................................12310.2 12310.3 Test Driver: Feature Profiles and Test Suites .................................................................................12310.4 Test Service : Feature Profiles and Test Suites ..............................................................................12410.5 12410.6 Test Material: Minimally Required Documents ................................................................................12510.7 12510.8 12511 Sample Scenarios and Test Material .............................................................................................12611.1 MS Testing: ebXML Messaging Service Test Material Samples .....................................................12611.1.1 ........................................................................................................Example Test Requirements 12611.1.2 .................................................................................................Conformance Test Requirements 12611.1.3 ...............................................................................................Interoperability Test Requirements 12811.1.4 ..................................................................................................................Example Test Profiles 12911.1.5 ..............................................................................................Conformance Test Profile Example 12911.1.6 ..........................................................................................................Interoperability Test Profile 13011.1.7 ..............................................................................................................Conformance Test Suite 13011.1.8 ............................................................................................................Interoperability Test Suite 132Appendix A ........................................................................(Normative) (Normative) Test Profile Schema 136Appendix B ............................................................(Normative) (Normative) Test Requirements Schema 138Appendix C .........................................................................(Normative) (Normative) Test Suite Schema 142Appendix D ................................................................(Normative) ebXML Message Declaration Schema 15511.1.9 ................................................................Interpreting the SOAP portion of the ebXML Declaration 16011.1.10 .....................................................Interpreting the SOAP Header Extension Element Declaration 161

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 12 of 447

1

123456789

101112131415161718192021222324252627282930313233343536373839404142434445464748

23

Page 13: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

Appendix E ...........................................................(Normative) Message Store and Filter Result Schema 188Appendix F ..........................................................................................(Normative) Test Report Schema 193Appendix G ..........................................................................(Normative) WSDL Test Service Definitions 206Appendix H ...........................................................................................(Normative) Sample Test Cases 210Appendix I .........................................................................................................................Terminology 219Appendix J ..........................................................................................................................References 221Normative References ............................................................................................................................. 221Non-Normative References .....................................................................................................................222Appendix K ...............................................................................................................Acknowledgments 223IIC Committee Members ..........................................................................................................................223Appendix L ...................................................................................................................Revision History 224

1 Introduction ......................................................................................................................................... 81.1 Summary of Contents of this Document .....................................................................................81.2 Document Conventions ..............................................................................................................81.3 Audience .................................................................................................................................... 91.4 Caveats and Assumptions ..........................................................................................................91.5 Related Documents .................................................................................................................... 91.6 Minimal Requirements for Conformance ..................................................................................10

2 Principles and Methodology of Operations ........................................................................................112.1 Objectives ................................................................................................................................. 11

2.1.1 General ................................................................................................................................ 112.2 General Methodology ...............................................................................................................12 Changes from version 1.0 of this specification ..............................................................................132.3 ......................................................................................................................................................... 13

2.3.1 Test Service Changes ..........................................................................................................132.3.2 Test Requirements Schema Changes: .................................................................................132.3.3 Test Driver Scripting Changes: ............................................................................................142.3.4 Modified MessageStore Schema .........................................................................................152.3.5 Modified Test Report Schema ..............................................................................................15

3 The Test Framework Components ....................................................................................................163.1 The Test Driver ......................................................................................................................... 16

3.1.1 Functions .............................................................................................................................. 163.1.2 Using the Test Driver in Connection Mode ...........................................................................183.1.3 Using the Test Driver in Service Mode .................................................................................20

3.2 The Test Service ......................................................................................................................223.2.1 The ebXML Messaging Services Test Service .....................................................................223.2.2 Modes of Operation of the Test Service ...............................................................................243.2.3 Configuration Parameters of the Test Service ......................................................................25

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 13 of 447

1

123456789

10111213141516171819

20212223242526272829303132333435363738394041424344454647

23

Page 14: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

3.2.4 The Messaging Actions of the Messaging Services Test Service ........................................263.2.4.1 Common Functions ......................................................................................................................263.2.4.2 Test Service Actions ....................................................................................................................26

3.2.4.2.1 Mute action .............................................................................................................................273.2.4.2.2 Dummy action .........................................................................................................................273.2.4.2.3 Reflector ..................................................................................................................................273.2.4.2.4 Initiator action ..........................................................................................................................283.2.4.2.5 PayloadVerify action ...............................................................................................................28

3.2.4.3 Integration of the Test Service with an MSH Implementation ......................................................283.2.5 Interfaces for Test Driver and Test Service ..........................................................................29

3.2.5.1 Abstract Test Service “Send” Interface ........................................................................................303.2.5.2 WSDL representation of the initiator RPC method ......................................................................303.2.5.3 Abstract Test Service “Configuration” Interface ...........................................................................31

3.2.5.3.1 WSDL representation of the configurator SOAP method ........................................................313.2.5.4 Abstract Test Driver “Receive” Interface ......................................................................................32

3.2.5.4.1 WSDL representation of the Test Driver notify SOAP method ...............................................343.2.6 Test Service Configurator, Initiator and Notification Message formats .................................34

4 The Test Case Script ........................................................................................................................ 424.1 Executing Test Cases ...............................................................................................................42

4.1.1 A Typical Execution Scenario ...............................................................................................424.1.2 Test Case as a Workflow of Threads ...................................................................................434.1.3 Message Declarations ..........................................................................................................444.1.4 Testing Configuration Data ...................................................................................................44

4.2 An Abstract View of Test Scripts ..............................................................................................454.2.1 Test Case #1: Basic Transaction Send/Receive within specified TimeToAcknowledge and TimeToPerform ................................................................................................................................. 46

4.2.1.1 Semantics of Execution for this test case: ...................................................................................474.2.2 Test Case #2: Basic Error Handling Test .............................................................................47

4.2.2.1 Semantics of Execution for this test case: ...................................................................................484.2.3 Test Case #3: Conditional Branching Scenario ....................................................................48

4.2.3.1 Semantics of Execution for this Test Case: .................................................................................504.2.4 Final Test Case Result Rules ...............................................................................................51

5 Test Suite .......................................................................................................................................... 535.1 Conformance vs. Interoperability Test Suite .............................................................................53 The Test Suite Document .............................................................................................................545.2 ......................................................................................................................................................... 54

5.2.1 Test Suite Metadata .............................................................................................................565.2.2 The ConfigurationGroup .......................................................................................................57

5.2.2.1 Precedence Rules for Test Driver/MSH configuration parameters ..............................................615.2.2.1.1 Test Driver Parameter Exception Conditions ..........................................................................62

5.2.3 The ThreadGroup .................................................................................................................635.2.4 The TestServiceConfigurator Test Operation .......................................................................63

5.2.4.1 TestServiceConfigurator behavior in Connection and Service mode ..........................................64 “Inlined” Message Content .......................................................................................................655.2.5 .................................................................................................................................................. 655.2.6 Test Cases ........................................................................................................................... 66

6 Test Requirements ............................................................................................................................ 67

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 14 of 447

1

123456789

10111213141516

1718192021222324252627

2829

3031

323334353637383940

414243

44454647

23

Page 15: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

6.1 Purpose and Structure ..............................................................................................................676.2 The Test Requirements Document ...........................................................................................676.3 Specification Coverage .............................................................................................................706.4 Test Requirements Coverage (or Test Run-Time Coverage) ...................................................71

7 Test Profiles ...................................................................................................................................... 737.1 The Test Profile Document .......................................................................................................737.2 Relationships between Profiles, Requirements and Test Cases ..............................................74

8 Test Cases ........................................................................................................................................ 768.1 Detailed Structure of a Test Case .............................................................................................76

8.1.1 Individual TestCase Instructions ..........................................................................................79 Test Threads .........................................................................................................................................798.1.1.1 .............................................................................................................................................................798.1.1.2 SetParameter: Setting Parameter values ....................................................................................818.1.1.3 SetXPathParameter: Setting Parameter values using retrieved message content .....................828.1.1.4 LockParameter: Synchronizing concurrent Thread access to parameters ..................................838.1.1.5 UnlockParameter: Synchronizing concurrent Thread access to parameters ...............................84

8.1.1.5.1 Scope of a parameter .............................................................................................................848.1.1.5.2 Referencing/Dereferencing parameters in PutMessage Filter and TestAssertion operations 85

8.1.1.6 PutMessage: Message Construction and Transmission ..............................................................858.1.1.6.1 The SetMessage test operation: .............................................................................................898.1.1.6.2 The Packaging test operation: ................................................................................................898.1.1.6.3 The Declaration .......................................................................................................................908.1.1.6.4 Mutator: Turning a Declaration into an actual Message .........................................................918.1.1.6.5 DSignEnvelope and DSignPayload: Applying an XML Signature to the message .................91

8.1.1.7 Initiator: Passing message construction directives to the Test Service .......................................938.1.1.8 GetMessage: Message Retrieval .................................................................................................968.1.1.9 The GetMessage Test Operation ................................................................................................97

Semantics .........................................................................................................................................978.1.1.9.1 of the GetMessage test operation ...........................................................................................97

8.1.2 The Message Store ..............................................................................................................998.1.2.1 Semantics of the Message Store ...............................................................................................1018.1.2.2 Filter Result Structure ................................................................................................................1018.1.2.3 SetXPathParameter: Defining variables using content from a Filter result ................................1028.1.2.4 The TestAssertion Operation .....................................................................................................103

8.1.2.4.1 Semantics of TestAssertion ..................................................................................................106 The WhenTrue and WhenFalse operations ........................................................................................1078.1.2.5 ........................................................................................................................................................... 107

9 Test Material ................................................................................................................................... 1109.1.1 Testing Profile Document ...................................................................................................1109.1.2 Test Requirements Document ............................................................................................1109.1.3 Test Suite Document ..........................................................................................................1109.1.4 Mutator documents .............................................................................................................1119.1.5 CPAs .................................................................................................................................. 1119.1.6 Test Report Document .......................................................................................................111

10 Testing Components and Scenarios ...............................................................................................112 Base features running ebXML Test Suites ..................................................................................11210.1 ..................................................................................................................................................... 112

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 15 of 447

1

123456789

101112131415161718192021222324252627282930

3132333435363738

39404142434445464748

23

Page 16: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

10.2 Test Driver: Feature Profiles and Test Suites .........................................................................112 Test Service : Feature Profiles and Test Suites ..........................................................................11310.3 ..................................................................................................................................................... 11310.4 Test Material: Minimally Required Documents .......................................................................114

11 Sample Scenarios and Test Material .............................................................................................11511.1 MS Testing: ebXML Messaging Service Test Material Samples ............................................115

11.1.1 Example Test Requirements ..........................................................................................11511.1.2 Conformance Test Requirements ..................................................................................11511.1.3 Interoperability Test Requirements ................................................................................11711.1.4 Example Test Profiles ....................................................................................................11811.1.5 Conformance Test Profile Example ...............................................................................11811.1.6 Interoperability Test Profile ............................................................................................11911.1.7 Conformance Test Suite ................................................................................................11911.1.8 Interoperability Test Suite ..............................................................................................121

Appendix A (Normative) (Normative) Test Profile Schema ...............................................................125Appendix B (Normative) (Normative) Test Requirements Schema ...................................................127Appendix C (Normative) (Normative) Test Suite Schema .................................................................131Appendix D (Normative) ebXML Message Declaration Schema .......................................................144

11.1.9 Interpreting the SOAP portion of the ebXML Declaration .....................................................14911.1.10 Interpreting the SOAP Header Extension Element Declaration ............................................150

Appendix E (Normative) Message Store and Filter Result Schema ..................................................177Appendix F (Normative) Test Report Schema ..................................................................................182Appendix G (Normative) WSDL Test Service Definitions ..................................................................195Appendix H (Normative) Sample Test Cases ....................................................................................199Appendix I Terminology ....................................................................................................................... 208Appendix J References .....................................................................................................................210Normative References ............................................................................................................................. 210Non-Normative References .....................................................................................................................211Appendix K Acknowledgments ..........................................................................................................212IIC Committee Members ..........................................................................................................................212Appendix L Revision History .............................................................................................................213

1Introduction .............................................................................................................................................. 141.1Summary of Contents of this Document ...........................................................................................141.2Document Conventions .................................................................................................................... 141.3Audience ........................................................................................................................................... 151.4Caveats and Assumptions ................................................................................................................151.5Related Documents .......................................................................................................................... 151.6Minimal Requirements for Conformance ..........................................................................................16

2Principles and Methodology of Operations ..............................................................................................172.1Objectives ......................................................................................................................................... 17

2.1.1General ..................................................................................................................................... 172.2General Methodology ....................................................................................................................... 182.3Changes from version 1.0 of this specification .................................................................................20

2.4.1Test Service Changes ...............................................................................................................20

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 16 of 447

1

123456789

1011121314151617181920

2122232425262728293031

323334353637383940414243444546

23

Page 17: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

2.4.2Test Requirements Schema Changes: .....................................................................................202.4.3Test Driver Scripting Changes: .................................................................................................202.4.4Modified MessageStore Schema ..............................................................................................222.4.5Modified Test Report Schema ...................................................................................................22

3The Test Framework Components ...........................................................................................................233.1The Test Driver ................................................................................................................................ 23

3.1.1Functions ................................................................................................................................... 233.1.2Using the Test Driver in Connection Mode ................................................................................263.1.3Using the Test Driver in Service Mode ......................................................................................28

3.2The Test Service ............................................................................................................................. 303.3.1The ebXML Messaging Services Test Service ..........................................................................303.3.2Modes of Operation of the Test Service ....................................................................................323.3.3Configuration Parameters of the Test Service ...........................................................................343.3.4The Messaging Actions of the Messaging Services Test Service ............................................35

Common Functions .........................................................................................................................................35Test Service Actions .......................................................................................................................................35

Mute action .................................................................................................................................................35Dummy action ............................................................................................................................................36Reflector ....................................................................................................................................................36 Initiator action ............................................................................................................................................37PayloadVerify action ...................................................................................................................................37

Integration of the Test Service with an MSH Implementation .........................................................................383.3.5Interfaces for Test Driver and Test Service ...............................................................................38

Abstract Test Service “Send” Interface ...........................................................................................................39WSDL representation of the initiator RPC method ..........................................................................................40Abstract Test Service “Configuration” Interface ..............................................................................................41

WSDL representation of the configurator SOAP method ...........................................................................41Abstract Test Driver “Receive” Interface ........................................................................................................42

WSDL representation of the Test Driver notify SOAP method ...................................................................453.3.6Test Service Configurator, Initiator and Notification Message formats ......................................45

4The Test Case Script ............................................................................................................................... 544.1Executing Test Cases .......................................................................................................................54

4.1.1 A Typical Execution Scenario ...................................................................................................544.1.2Test Case as a Workflow of Threads .......................................................................................554.1.3Message Declarations ...............................................................................................................564.1.4Testing Configuration Data .......................................................................................................56

4.2An Abstract View of Test Scripts ......................................................................................................574.2.1Test Case #1: Basic Transaction Send/Receive within specified TimeToAcknowledge and TimeToPerform ................................................................................................................................ 58

Semantics of Execution for this test case: ......................................................................................................594.2.2Test Case #2: Basic Error Handling Test .................................................................................59

Semantics of Execution for this test case: ......................................................................................................604.2.3Test Case #3: Conditional Branching Scenario ........................................................................61

Semantics of Execution for this Test Case: ....................................................................................................634.2.4Final Test Case Result Rules ....................................................................................................64

Part II: Test Suite Representation ..............................................................................................................675Test Suite ................................................................................................................................................. 68

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 17 of 447

1

123456789

10111213141516171819202122

23242526272829

3031323334353637383940

4142

4344

454647

23

Page 18: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

5.1Conformance vs. Interoperability Test Suite ....................................................................................685.2The Test Suite Document .................................................................................................................69

5.2.1 Test Suite Metadata .................................................................................................................725.2.2The ConfigurationGroup ...........................................................................................................73

Precedence Rules for Test Driver/MSH configuration parameters ................................................................77Test Driver Exception Conditions ...............................................................................................................79

5.2.3The ThreadGroup ...................................................................................................................... 795.2.4The TestServiceConfigurator Test Operation ............................................................................79

TestServiceConfigurator behavior in Connection and Service mode ..............................................................815.2.5“Inlined” Message Content ........................................................................................................81

6Test Requirements .................................................................................................................................. 836.1Purpose and Structure ..................................................................................................................... 836.2The Test Requirements Document ...................................................................................................836.3Specification Coverage ..................................................................................................................... 856.4Test Requirements Coverage (or Test Run-Time Coverage) ...........................................................87

7Test Profiles ............................................................................................................................................ 897.1The Test Profile Document ...............................................................................................................897.2Relationships between Profiles, Requirements and Test Cases ......................................................90

8Test Cases .............................................................................................................................................. 938.3Detailed Structure of a Test Case .....................................................................................................96

1.1Individual Test Instruction definitions ............................................................................................99Test Threads ...................................................................................................................................................99SetParameter: Setting Parameter values .....................................................................................................102SetXPathParameter: Setting Parameter values using retrieved message content .......................................103LockParameter: Synchronizing concurrent Thread access to parameters ...................................................104UnlockParameter: Synchronizing concurrent Thread access to parameters ................................................105

Scope of a parameter ...............................................................................................................................106Referencing/Dereferencing parameters in PutMessage Filter and TestAssertion operations ................106

PutMessage: Message Construction and Transmission ...............................................................................107The SetMessage test operation: ..............................................................................................................111The Packaging test operation: ..................................................................................................................111The Declaration ........................................................................................................................................112Mutator: Turning a Declaration into an actual Message ...........................................................................113DSignEnvelope and DSignPayload: Applying an XML Signature to the message ...................................114

Initiator: Passing message construction directives to the Test Service ........................................................117GetMessage: Message Retrieval ..................................................................................................................120The GetMessage Test Operation ..................................................................................................................123

Semantics of the GetMessage test operation ..........................................................................................1248.3.2 The Message Store ...............................................................................................................125

Semantics of the Message Store ..................................................................................................................128Filter Result Structure ...................................................................................................................................128SetXPathParameter: Defining variables using content from a Filter result ...................................................129The TestAssertion Operation ........................................................................................................................131

Semantics of TestAssertion .....................................................................................................................132The WhenTrue and WhenFalse operations ..................................................................................................134

9Test Material .......................................................................................................................................... 1389.1.1Testing Profile Document ........................................................................................................1389.1.2Test Requirements Document .................................................................................................138

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 18 of 447

1

123456

789

1011121314151617181920212223242526272829303132333435363738

39404142434445

464748

23

Page 19: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

9.1.3Test Suite Document ...............................................................................................................1389.1.4Mutator documents .................................................................................................................. 1399.1.5CPAs ....................................................................................................................................... 1399.1.6 Test Report Document ...........................................................................................................139

10Testing Components and Scenarios ....................................................................................................14110.1 Base features running ebXML Test Suites ..................................................................................14110.3 Test Driver: Feature Profiles and Test Suites ..............................................................................14110.4 Test Service : Feature Profiles and Test Suites ...........................................................................14210.6 Test Material: Minimally Required Documents ............................................................................143

11 Sample Scenarios and Test Material .................................................................................................14511.2 MS Testing: ebXML Messaging Service Test Material Samples ...............................................145

11.2.1Example Test Requirements .................................................................................................14511.2.2Conformance Test Requirements ..........................................................................................14511.2.3Interoperability Test Requirements ........................................................................................14711.2.4Example Test Profiles ...........................................................................................................14811.2.5Conformance Test Profile Example .......................................................................................14811.2.6 Interoperability Test Profile ...................................................................................................14911.2.7Conformance Test Suite .......................................................................................................14911.2.8Interoperability Test Suite .....................................................................................................151

Appendix ATest Profile Schema ..............................................................................................................161Appendix ATest Profile Schema ..............................................................................................................161Appendix ATest Profile Schema ..............................................................................................................161Appendix ATest Profile Schema..............................................................................................................161

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 19 of 447

1

123456789

1011121314151617181920212223

242526272829303132333435363738394041424344

23

Page 20: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 20 of 447

1

123456789

10111213141516171819202122232425262728293031323334353637383940414243

23

Page 21: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 21 of 447

1

123456789

10111213141516171819

23

Page 22: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

1 Introduction

1.1 Summary of Contents of this Document"This document describes a test framework for automatically running test suites for - but not limited to - ebXML specifications. The framework includes an architecture design based on components that can be combined and distributed in different ways, to accommodate different test harnesses. It also includes an extensible test scripting language for coding test suites in an executable way. It can accommodate third-party plug-ins, that would perform advanced verifications for example on message material (e.g. semantic verification using rule engine), or that would help build testing material (e.g. digital signature)."

This specification is organized around the following topics:

Test Framework ComponentsTesteTest Suite Representation using XMLTest Execution using Workflow PrinciplesTest Scenarios and Test Framework ProfilesSample Instance files of Test MaterialNormative Schemas for Test Material

1.2 Document ConventionsTerms in Italics are defined in the Definition of Terms in Appendix JH. Terms listed in Bold Italics represent the element and/or attribute content. Terms listed in Courier font relate to test data. Notes are listed in Times New Roman font and are informative (non-normative). Attribute names begin with lowercase. Element names begin with Uppercase.

The keywords MUST, MUST NOT, REQUIRED, SHALL, SHALL NOT, SHOULD, SHOULD NOT, RECOMMENDED, MAY and OPTIONAL, when they appear in this document, are to be interpreted as described in [RFC2119] as quoted here:

MUST: This word, or the terms "REQUIRED" or "SHALL", means that the definition is an absolute requirement of the specification.

MUST NOT: This phrase, or the phrase "SHALL NOT", means that the definition is an absolute prohibition of the specification.

SHOULD: This word, or the adjective "RECOMMENDED", means that there may exist valid reasons in particular circumstances to ignore a particular item, but the full implications MUST be understood and carefully weighed before choosing a different course.

SHOULD NOT: This phrase, or the phrase "NOT RECOMMENDED", means that there may exist valid reasons in particular circumstances when the particular behavior is acceptable or even useful, but the full implications should be understood and the case carefully weighed before implementing any behavior described with this label.

MAY: This word, or the adjective "OPTIONAL", means that an item is truly optional. One vendor may choose to include the item because a particular marketplace requires it or because the vendor feels that it enhances the product while another vendor may omit the same item. An implementation that does not include a particular option MUST be prepared to interoperate with another implementation which does include the option, though perhaps with reduced functionality. In the same vein an implementation that does include a particular option MUST be prepared to interoperate with another implementation which does not include the option (except, of course, for the feature the option provides).

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 22 of 447

1

1

2

3456789

10

111213141516

17

1819202122

232425

2627

2829

303132

33343536

37383940414243

44

23

Page 23: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

1.3 AudienceThe target audience for this specification is:

· The community of software developers who implement and/or deploy the ebXML Messaging Service (ebMS) or use other ebXML technologies such a s Registry/Repository (RegRep), Collaboration Profile Protocol/Agreement (CPPA) or Business Process Specification Schema (BPSS)

· The testing or verification authority, which will implement and deploy conformance or interoperability testing for ebXML implementations.

1.4 Caveats and AssumptionsIt is assumed the reader has an understanding of communications protocols, MIME, XML, SOAP, SOAP Messages with Attachments and security technologies.

1.5 Related DocumentsThe following set of related specifications areset of related specifications is developed independent of this specification as part of the ebXML initiative, they can be found on the OASIS web site (http://www.oasis-open.org).

· ebXML Collaboration Protocol Profile and Agreement Specification [ebCPP] – CPP defines one business partner's technical capabilities to engage in electronic business collaborations with other partners by exchanging electronic messages. A CPA documents the technical agreement between two (or more) partners to engage in electronic business collaboration. The MS Test Requirements and Test Cases will refer to CPA documents or data as part of their material, or context of verification.

· ebXML Messaging Service Specification [ebMS] – defines the messaging protocol and service for ebXML, which provide a secure and reliable method for exchanging electronic business transactions using the Internet.

· ebXML Test Framework [ebTestFramework]– describes the test architecture, procedures and material that are used to implement the MS Interoperability Test Suite, as well as the test harness for this suite.

· ebXML MS Conformance Test Suite [ebMSConfTestSuite]– describes the Conformance test suite and material for Messaging Services.

· ebXML Registry Specification [ebRS] – defines how one party can discover and/or agree upon the information the party needs to know about another party prior to sending them a message that complies with this specification. The Test Framework is also designed to support the testing of a registry implementation.

· ebXML Business Process Specification Schema [BPSS] – defines how two parties can cooperate through message-based collaborations, which follow particular message choreographies. The Test Framework is also designed to support the testing of a business process implementation.

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 23 of 447

1

12

3456

7

89

10

111213

14

15161718

192021222324

252627

282930

3132

33343536

37383940

414243

23

Page 24: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

1.6 Minimal Requirements for ConformanceAn implementation of the Test Framework specified in this document MUST satisfy ALL of the following conditions to be considered a conforming implementation:

It supports all the mandatory syntax; features and behavior (as identified by the [RFC2119] key words MUST, MUST NOT, REQUIRED, SHALL and SHALL NOT) defined in Part 1.1.1 – Document Conventions.

It supports all the mandatory syntax, features and behavior defined for each of the components of the Test Framework.

It complies with the following interpretation of the keywords OPTIONAL and MAY: When these keywords apply to the behavior of the implementation, the implementation is free to support these behaviors or not, as meant in [RFC2119]. When these keywords apply to data and configuration material used by an implementation of the Test Framework, a conforming implementation of the Test Framework MUST be capable of processing these optional materials according to the described semantics.

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 24 of 447

1

123

45

67

89

101112

131415161718192021

23

Page 25: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

2 Principles and Methodology of Operations

2.1 Objectives

2.1.1 General

The OASIS IIC ebXML Test Framework is intended to support conformance and interoperability testing for ebXML (as well as other eBusiness) specifications. It describes a testbed architecture and its software components, how these can be combined to create a test harness forvariousfor various types of testing. It also describes the test material to be processed by this architecture, a mark-up language and format for representing test requirements, and test suites (a set of Test Cases).

The Test Framework described here has been designed to achieve the following objectives:

The Test Framework is a foundation for testing all ebXML architectural components such as Messaging, Registry, BPSS, CPA, and Core Components

Although designed to support testing implementations of current and future ebXML specifications , the Test Framework is flexible enough to permit testing beyond ebXML message format, to include any message envelope and payload testing of XML-based e-Business messaging services.

Additionally, the IIC Test Framework can be employed for XML-based A2A ( Application to Application) conformance and interoperability testing.

Regardless of the type of testing that is employed however, all testing MUST follow the same procedural steps, and employ the same XML format as defined by the XML schemas defined in the Appendix of this specification. By following the formalized guidelines in this specification, conformance and interoperability test suites can be used by any IIC Test Framework Specification compliant implementation.

The harnessing of an ebXML implementation (or possibly several implementations, in case of interoperability testing) with the Test Framework requires a moderate effort. It generally requires some interfacing work specific to an implementation, in the case no standard interface (API) has been specified. For example, the Test Service (a component of the Test Framework) defines Actions that will need to be called by a particular MSH implementation for ebXML Messaging Services conformance testing. Additionally, MS interoperability testing would require the interfaces defined in section 3.2.6.

Operating the Test Framework - or one of the test harnesses that can be derived from it – in order to execute a test suite, does not require advanced expertise in the framework internals, once the test suites

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 25 of 447

1

1

2

3

4

5

6789

1011

12131415

161718

19202122

232425

2627282930

3132333435363738

3940414243

23

Page 26: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

have been designed. The tests should be easy to operate and to repeat with moderate effort or overhead, by users of the ebXML implementation(s) and IT staff responsible for maintaining the B2B infrastructure, without expertise in testing activity.

Users can define new Test Suites and Test Cases to be run on the framework. For this, they will script their tests using the proposed test suite definition language or mark-up (XML-based) for Test Cases.

A Test Suite (either for conformance or for interoperability) can be run entirely and validated from one component of the framework: the Test Driver. This means that all test outputs will be generated - and test conditions verified - by one component, even if the test harness involves several – possibly remote – components of the framework.The verification of each Test Case is done by the Test Driver at run-time, as soon as the Test Case execution is completed. The outcome of the verification can be obtained as the Test Suite has completed, and a verification report is generated.

2.2 General Methodology

This specification only addresses the technical aspect of ebXML testing, and this section describes the portion of testing methodology that relates directly to the usage of the Test Framework. A more general test program for ebXML, describing a comprehensive methodology oriented toward certification, is promoted by the OASIS Conformance TC and is described in [ConfCertTestFrmk] (NIST). When conformance certification is the objective, the ebXML Test Framework should be used in a way that is compliant with a conformance certification model as described in [ConfCertModelNIST]. More general resources on Testing methodology and terminology can be found on the OASIS site (www.oasis-open.org), as well as at NIST (http://www.itl.nist.gov/div897/.)

This specification adopts the terminology and guidelines published by the OASIS Conformance Committee [ConfReqOASIS].

The Test Framework is intended for the following mode of operation, when testing for conformance or for interoperability. In order for a testing process (or validation process) to conform to this specification, the following phases need to be implemented:

· Phase 1: Test Plan (RECOMMENDED). An overall test plan is defined, which includes a validation program and its objectives, the conditions of operations of the testing, levels or profiles of conformance or of interoperability, and the requirements for Candidate Implementations to be tested (context of deployment, configuration).

· Phase 2: Test Requirements Design (MANDATORY). A list of Test Requirements is established for the tested specification, and for the profile/level of conformance/interoperability that is targeted. These Test Requirements MUST refer to the specification document. Jointly to this list, it is RECOMMENDED that Specification Coverage be reported. This document shows, for each

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 26 of 447

1

123

456

789

1011121314

151617

18

19

2021222324252627

2829

30

313233

34

35363738

39

40414243

23

Page 27: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

feature in the original specification, the Test Requirements items that address this feature. It also estimates to which degree the feature is validated by these Test Requirements items.

· Phase 3: Test Harness Design (MANDATORY). A Test Harness is defined for a particular test plan. It describes an architecture built from components of the Test Framework, along with test operation instructions and conditions. In order to conform to this specification, a test harness MUST be described as a system that includes a Test Driver as specified in this document, and MUST be able to interpret conforming test suites.

· Phase 4: Test Suite Design (MANDATORY). Each Test Requirement from Phase 2 is translated into one or more Test Cases. A Test Case is defined as a sequence of test operations over the Test Harness. Each Test Case includes: configuration material (CPA data), message material associated with eachoperationeach operation and test verification conditions that define criteria for passing this test. All this material, along with any particular test operation directives, defines a Test Suite. In order to be conforming to this specification, a test suite needs to be described as a document (XML) conforming to part II of this specification.

· Phase 5: Validation Conditions (RECOMMENDED). Validation criteria are defined for the profile or level being tested, and expressed as a general condition over the set of results from the verification report of each Test Case of the suite. These validation criteria define the certification or “badging” for this profile/level.

· Phase 6: Test Suite Execution (MANDATORY). The Test Suite is interpreted and executed by the test Driver component of the Test Harness.

2.3 Changes from version 1.0 of this specification

2.4

This specification introduces some minor and major changes to the execution model of the Test Framework. These changes will require a transformation of a version 1.0 XML test suite document to a test suite document that validates to the normative test suite schema found in Appendix C.

Below is a list of changes to the Test Framework architecture, and a reference to the specification section describing the changes:

2.4.1 Test Service Changes

Test Service Changes: Initiator, Configurator, ErrorAppNotify, ErrorURLNotify are now defined via RPC methods (no longer Test Service Actions)

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 27 of 447

1

12

3

45678

9

10111213141516

17

18192021

22

2324

25

26

27

28293031

323334

35

36

373839

23

Page 28: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

2.4.2 Test Requirements Schema Changes:

· Nested Test Requirements is now permitted

2.4.3 Test Driver Scripting Changes:

New Features:· New Test Driver ConfigurationGroup Parameters – StoreAttachments, ValidationType,

MutatorType, XMLDSIG, SetParameter (replaces ConfigurationItem), StepDuration (replaces StepDelay)

· Optional TestServiceConfigurator instruction exists at top of TestSuite document· Message replaces MessagePayload element for referring to “inlined” message or payload

declaration content· Optional ThreadGroup container for Thread definitions (concurrent processes) may be

defined at beginning of Test Suite document (for global reference) or within individual Test Cases (for local reference)

· SetParameter can now set a value using the value of another referenced parameter· PutMesssage now has “repeatWithSameContext” and “repeatWithNewContext” attributes· Packaging (i.e. message packaging API) instructions are now separate from the

Message Declaration content· Message Declaration can now be any well-formed XML content to be interpreted by a

Mutator transformation · Mutator (either XSLT or XUpdate) replaces internal “API driven” method of constructing

message, so that any message envelope can be created by Test Driver via XSLT or XUpdate

· DSign changed to DSignEnvelope and DSignPayload, with a simplified instruction set for creating/manipulating a digital signature

· GetMessage now has a “mask” attribute for removing Filtered messages from the Message Store

· TestPreCondition no longer exists (semantically replaced with workflow “exit/undetermined” instruction)

· TestAssertion has additional sub-operation called VerifyTimeDifference (for comparing time difference between two parameters with a time duration value

· TestAssertion now has additional sub-operation called VerifyParameter (for doing a string comparison of parameter with a string value or another parameter’s string value

· SetXPathParameter (creating parameter using received message content) instruction has been added

· WhenTrue and WhenFalse conditional branching operators have been added to TestAssertion

· Split instruction (for forking Threads) has been added · ThreadRef (reference to Thread definition to be executed) has been added· Join instruction (for synchronizing scripting based upon completion of a Split) has been

added · Sleep (instruction for Test Driver to wait for a specified time interval) has been added

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 28 of 447

1

1

2

34

5

6

789

101112131415161718192021222324252627282930313233343536373839404142434445

23

Page 29: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

· Return (instruction for Test Driver to exit the currently executing Thread, and continue execution) has been added

· Initiator instruction (for passing message construction directives to Test Service via local call or RPC) is added to script language

· LockParameter instruction (used to synchronize access of multiple Threads to a common parameter)

· UnlockParameter instruction (used to synchronize access of multiple Threads to a common parameter)

· SetParameter “lock” attribute (also used to synchronize access of multiple Threads to a common parameter)

· SetXPathParameter “lock” attribute (also used to synchronize access of multiple Threads to a common parameter)

· Namespaces MUST be declared in the main ConfigurationGroup to permit the same XPath queries to resolve correctly for any implementation tested

Removed Test Script Features

· Test Step has been removed · GetMessage no longer has “getMultiple” (not necessary, since this can be handled via

XPath Filter operation) or “testStepContext” attribute (this is now handled by parameter references)

· GetPayload has been removed (message payloads (if XML) are automatically stored in Message Store for query. Non-XML payloads are not stored.

2.4.4 Modified MessageStore Schema

· MessageStore schema is now “agnostic” to what type of XML content is stored in it. Also, message packaging (e.g. MIME packaging) is no longer a normative part of the Message Store schema. Instead, a generic “packaging” schema is used to represent other types of message packaging attributes.

2.4.5 Modified Test Report Schema

· Schema is a full trace of the new test script instructions, with an optional “Result” tag assigned to each test instruction, providing a “pass|fail|undtermined” result with a “description” attribute to indicate the reason for the result.

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 29 of 447

1

123456789

1011121314

1516

17181920212223

24

25

2627282930

31

32

33343536

3738

39

23

Page 30: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

3 The Test Framework Components

The components of the framework are designed so that they can be combined in different configurations, or Test Harnesses.

We describe here two components that are central to the Test Framework:

The Test Driver, which interprets Test Case data and drives Test Case execution. The Test Service, which implements some test operations (actions) that can be triggered by received messages. These actions support and automate the execution of Test Cases.

These components interface with the ebXML Message Service Handler (MSH), but are not restricted to testing an MSH implementation.

3.1 The Test Driver

The Test Driver is the component that drives the execution of each step of a Test Case. Depending on the test harness, the Test Driver may drive the Test Case by interacting with other components in connection modeormode or in service mode. In connection mode, the Test Driver directly generates ebXML messages at transport protocol level – e.g. by using an appropriate transport adapter. In service mode, the Test Driver does not operate at transport level, but at application level, by invoking actions in the Test Service, which is another component of the framework. These actions will in turn send or receive messages to and from the MSH.

3.1.1 Functions

The primary function of the Test Driver is to parse and interpret the Test Case definitions that are part of a Test Suite, as described in the Test Framework mark-up language. Even when these Test Cases involve several components of the Test Framework, the interpretation of the Test Cases is under control of the Test Driver.

The Test Driver component of the ebXML Test Framework MUST have the following capabilities:

· Self-Configuration - Based upon supplied configuration parameters specified in the ebXML TestSuite.xsd schema (Appendix C), Test Driver configuration is done at startup, and MAY be modified at the TestCase and Thread levels as well.

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 30 of 447

1

1

234

56789

10

111213

14

15

161718192021222324

25

26

2728293031

323334

35363738

39

23

Page 31: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

· Test Service Configuration – Based upon supplied configuration parameters, Test Service configuration may be done at startup via remote procedure call.

· ebXML (or other type) Message Construction – Includes any portion of the message, including message envelope and optional message payloads

· Persistence of (received) Messages –received messages MUST persist for the life of a Test Case.

· Persistent messages MUST validate to the ebXMLMessageStore.xsd schema in Appendix ED.

· Parse and query persistent messages – Test Driver MUST use XPath query syntax to query persistent message content

· Parse and query message payloads – Test Driver MUST support XPath query syntax to query XML message payloads of persistent messages.

· Control the execution and workflow of the steps of a Test Case. Some steps may be executed by other components, but their initiation is under control of the Test Driver.

· Repeat previously executed Test operations– Test Driver MUST be capable of repeating previously executed message requests for the current Test Case.

· Send messages through the Test Driver - Directly at transport layer (e.g. by opening an HTTP connection).

· Send messages through the Test Service – Locally (if coupled with the Test Service) or via remote procedure call (if not directly interfacewinterfaced with the Test Service)

· Receive messages - Either directly at transport layer, or by notification from Test Service actions.

· Perform discreet message content validation – Test Driver MUST be capable of performing discreet validation of Time, URI, Signature and the entire XML message

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 31 of 447

1

12

3456

789

10

1112

13141516

17181920

21222324

25262728

29303132

33343536

373839

40414243

4445

23

Page 32: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

· Perform discreet payload content validation – Test Driver MUST be capable of performing discreet validation of Time, URI, Signature and an XML payload

· Report Test Results – Test Driver MUST generate an XML test report for all executed tests in the profile. Reports MUST validate to the ebXMLTestReport.xsd schema in Appendix E.

A possible design that supports these functions is illustrated in Figure 1.

Figure 1- The Test Driver: Functions and Data Flows

Figure 1 : Test Driver Function and Data Flows

3.1.2 Using the Test Driver in Connection Mode

The Test Driver MUST be able to control the inputs and outputs of an MSH at transport level. This can be achieved by using an embedded transport adapter. This adapter has transport knowledge, and can format message material into the right transport envelope. Independently from the way to achieve this, the Test Driver MUST be able to:

· Create a message envelope, and generate fully formed messages for this transport.

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 32 of 447

1

12

3456

789

1011

1213

14

151617

18

19

20212223

2425

23

Page 33: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

· Parse a message envelope and extract header data from a message, as well as from the message payload in case it is an XML document.

· Open a message communication channel (connection) with a remote message handler. In that case the Test Driver is said to operate in connection mode.

When used in connection mode, the Test Driver is acting as a transport end-point that can receive or send messages with an envelope consistent with the transport protocol (e.g. HTTP,SMTP, or FTP). The interaction between the MSH and the Test Service is of the same nature as the interaction between the MSH and an application (as the Test Service simulates an application), i.e. it involves the MSH API, and/or a callback mechanism. Figure 2 illustrates how the Test Driver operates in connection mode.

Figure 2- Test Driver: Connection Mode

Figure 2 – Test Driver in Connection Mode

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 33 of 447

1

123

456

789

101112

13

1415

16

1718

19

23

Page 34: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

Figure 3 – Test Driver: Remote Connection ModeFigure 3 – Test Driver in Remote Connection Mode

3.1.3 Using the Test Driver in Service Mode

In this configuration, the Test Driver directly interacts with the Service/Actions of the Test Service component, without involving the transport layer, e.g. by invoking these actions via a software interface, in the same process space. This allows for controlling the Test Cases execution from the application layer (as opposed to the transport layer). Such a configuration is appropriate when doing interoperability testing - for example between two MSH implementations – and in particular, in situations where the transport layer should not be tampered with, or interfered with. The interactions with the Test Service must consist of:

· Sending: One method of the Test Service(represented by the the “Initiator” scripting element) , instructs the MSH it has been interfaced with to construct and send a message. This method also MUST interface with the Test Service at application level. When invoked by a call that contains message data, the method generates a sending request using that MSH’s API.

· Receiving: As all actions of the Test Service may participate in the execution of a Test Case (i.e. of its Threads), the Test Driver needs to be aware of their invocation by incoming notification messages provided by the Test Service. Each of these actions notify the Test Driver through its “Receive” interface, passing received message data, as well as response data. In this way, the Test Driver builds an internal trace (or state) for the Test Case execution, and is able to verify the test based on this data.

The Test Driver MUST support the above communication operations with the Test Service when in Service Mode. This may be achieved by using an embedded Service Adapter to bridge the sending and

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 34 of 447

1

12

3

4

56789

1011

1213141516

17181920212223

242526

23

Page 35: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

receiving functions of the Test Driver, with the Service/Action calls of the Test Service. Figure 4 illustrates how the Test Driver operates with a Service Adapter. Alternately, the Test Service MAY notify the Test Driver of receive messages and errors via RPC.

Figure 4 – Test Driver: Service ModeFigure 4 – Test Driver in Service Mode

This design allows for a minimal exposure of the MSH-specific API, to the components of the Test Framework. The integration code that needs to be written for connecting the MSH implementation is then restricted to an interface with the Service/Actions defined by the framework. Neither the Test Driver, nor the Service Adapter, need to be aware of the MSH-specific interface. An example of test harness using the Test Driver in Service Mode is shown in Figure 5.

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 35 of 447

1

123

4

56

789

101112

1314

23

Page 36: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

Figure 5 – Test Driver in Service Mode: Point-to-Point Interoperability Testing of Message HandlersFigure 5 - Test Driver in Service Mode: Point to Point MSH Interop Testing

3.2 The Test Service

Functions and Interactions

The Test Service defines a set of Actions that are useful for executing Test Cases. Depending upon the type of testing being performed, a Test Service MAY NOT be a required component of the Test Framework. For example, ebXML Registry Services conformance testing does not require a Test Service, and can be treated solely as a “black box” testing environment.

3.2.1 The ebXML Messaging Services Test Service

For conformance and interoperability testing of an ebXML Messaging Service implementation however, a Test Service is a REQUIRED Test Framework component. The Test Service represents the application layer for a message handler. It receives message content and error notifications from the MSH, and also generates requests to the MSH, which normally are translated into messagestomessages to be transmitted. The Test Actions are predefined, and are part of the Test Framework). For ebXML Messaging Services testing, Service and Actions will map to the Service and Action header attributes of ebXML messages generated during the testing.

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 36 of 447

1

1

23

4

5

6

7

89

101112

13

14

1516171819202122

23

Page 37: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

For ebXML Messaging Services testing, the Test Service name MUST be: urn:ebXML:iic:test.

Figure 6 shows the details of the Test Service and its interfaces.

Figure 6 – The Test Service and its InterfacesFigure 6 - Test Service and its Interfaces

The functions of the Test Service are:

· To implement the actions which map to Service / Action fields in a message header. The set of test actions which are pre-defined in the Test Service will perform diverse functions, which are enumerated below:

· To notify the Test Driver of incoming messages. This only occurs when the Test Service is deployed in reporting mode, which assumes it is coupled with a Test Driver either locally, or via RPC.

· To perform some message processing, e.g. compare a received message payload with a reference payload (or their digests).

· To send back a response to the MSH. Depending on the action invoked, the response may range from a pre-defined acknowledgment to a specific message as previously specified.

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 37 of 447

1

1234

56

78

910

11121314

15161718

192021

222324

23

Page 38: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

· Optionally, to generate a trace of its test operations, in order to help trouble-shooting, or for reporting purpose.

Although the Test Service simulates an application, it is part of the Test Framework, and does not vary from one test harness to the other. However, in order to connect to the Test Service, a developer will have to write wrapper code to the Test Service/Actions that is specific to the MSH implementation that needs to be integrated. This proprietary code is expected to require a minor effort, but is necessary as the API and callback interfaces of each MSH are not specified in the [ebMS] standard and is implementation-dependent.

3.2.2 Modes of Operation of the Test Service

The Test Service operates in two modes: Reporting or Loop mode

Reporting mode: in that mode, the actions of the Test Service instance, when invoked, will send a notification to the Test Driver. The Test Driver will then be aware of the workflow of the test case. There are two “sub-modes” of behavior:

Local Reporting Mode: The Test Driver is installed on the same host as the Test Service, and executes in the same process space. The notification uses the Receive interface of the Test Driver, which is operating in service mode.

Remote Reporting Mode: The Test Driver is installed on a different host than the Test Service. The notification is done via messages to the Test Driver, which is operating in connection mode.

Loop mode: in this mode, the actions of the Test Service instance, when invoked, will NOT send a notification to the Test Driver. The only interaction of the Test Service with external parties, is by sending back messages via the message handler

The Test Service actions operate similarly in both reporting and loop modes. In other words, the mode of Test Service operation does not normally affect the logic of the action. The action may send a response message, to the requesting party via the “ResponseURL”. In general, the ResponseURL is the same as the requestor URL.

Figure 7 shows a test harness with a Test Driver in connection mode, controlling a Test Service (Host 1) in remote reporting mode. The other Test Service (Host 3) is operating in loop mode. This configuration is used when the test cases are controlled from a third party test center, when doing interoperability testing. The test center may also act as a Hub, and be involved in monitoring the traffic between the

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 38 of 447

1

123

456789

1011

121314

15

1617

18

192021

22232425

262728

29303132

3334353637

38

39404142

23

Page 39: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

interoperating parties.

Figure 7 – Example of Remote Reporting Mode : The Interoperability Test Center Model

Figure 7- Example of Remote Reporting Mode : The Interoperability Test Center Model

3.2.3 Configuration Parameters of the Test Service

Test Service configuration is initially performed when the Test Driver reads the executable Test Suite XML document, and sends the TestServiceConfigurator element content referenced (using the configurationGroupRef attribute) at the beginning of the TestSuite document to the Test Service via its Configuration interface. If the TestServiceConfigurator element is absent from the Test Case, then it is assumed that the Test Service has been “manually” configured for testing. If the TestServiceConfigurator instruction is present in the TestSuite document, and the Test Driver is unable to configure the Test Service, then the Test Driver MUST generate an exception and end execution of the Test Suite, with a final state of “undetermined” for the Test Suite.

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 39 of 447

1

1

2

3

4

5

6

789

10111213

14

151617181920212223

24

23

Page 40: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

Test Service configuration parameters are defined as content within the TestServiceConfiguratorion element. There are four parameters that MUST be present to configure the Test Service, and one “optional” parameter type. The three REQUIRED parameters are:

ConfigurationURL (RPC endpoint for passing Test Service configuration information)OperationMode (either local-reporting, remote-reporting or loop mode)ResponseURL (destination for response messages in any mode)NotificationURL (destination for notification messages, if in local or remote reporting mode)

Additionally, the content of the PayloadDigests element MAY be passed to the Test Service. These values are used by the PayloadVerify Test Service action to assert whether a received message payload is unchanged when received by the MSH.

Outside of these threefour parameters, the Test Service is considered “stateless”.

Test Service configuration MAY be performed locally, if in the same program space as the Test Service via the Configuration interface. Test Service configuration MUST be performed via RPC to the Test Service Configuration interface’s “configurator” method if it is in “loop” mode.

In a test harness where an interoperability test suite involves two parties, the test suite (and Test Service Configuration) will need to be executed twice - alternatively driven from each party. In that case, each Test Service instance will alternatively be set to a reporting mode (local or remote), while the other will be set to loop mode.

3.2.4 The Messaging Actions of the Messaging Services Test Service

The actions described here are required of the Test Service when performing messaging services testing, and should suffice in supporting most messaging Test Cases. In the case of ebXML Messaging Services testing, these actions map to the Service/Action field of a message, and will be triggered on reception of messages containing these service/action names. However, these actions are generic enough to be used for any business messaging service.

3.2.4.1 Common Functions

Some functions are common to several actions, in addition to the specific functions they fulfill. These common functions are:

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 40 of 447

1

123

45678

9101112

131415

16171819

202122232425

262728293031

32

333435363738

39

40

414243

44

23

Page 41: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

· Generate a response message. Response messages are destined to the ResponseURL . They also specify a Service/Action, as they are usually intended for another Test Service although in case the ResponseURL directly points to the Test Driver in connection mode, Service/Action will not have the regular MSH semantics.

· Notify the Test Driver. This assumes the Test Service is coupled with a Test Driver. In that configuration, the Test Service is in reporting mode. The reporting is done by a message (sent to the Notification URL) when in remote reporting mode, or by a call to the Receive interface when in local reporting mode.

3.2.4.2 Test Service Actions

The Test Service actions defined below are “generic” types of actions that can be implemented for any type of messaging service. Specific details regarding Service, Action, MessageId and other elements are requirements specific to testing ebXML MS. In order to implement these actions for other types of messaging services the “equivalent” message content would require manipulation. The ebXML test actions are:

3.2.4.2.1 Mute action

Reporting/Loop Mode Action Description : This is an action that does not generate any response message back. Such an action is used for messages that do not require any effect, except possibly to cause some side effect in the MSH, for example generating an error.

Response Destination: None

In Reporting Mode: The action will notify the associated Test Driver. The notification containing the received header and payload(s) material, will be done via the Receive interface, if in local reporting mode, or with a message with Service / Action fields set to “urn:ebXML:iic:test”/ “Notify”, if in remote reporting mode. The notification will report the action name (“Mute”) and the instance ID of the Test Service.

3.2.4.2.2 Dummy action

Reporting/Loop Mode Action Description: This is an action that generates a simple response. On invocation, this action will generate a canned response message back (no payload, simplest header with minimally required message content), with no dependency on the received message, except for the previous MessageIdD (for correlation) in the RefToMessageId header attribute.

Response Destination: A message with a Mute action element is sent to the Test Component (Test Driver or Service) associated with the ResponseURL. This notice serves as proof that the message has been received, although no assumption can be made on the integrity of its content.

In Reporting Mode: The action will also notify the associated Test Driver. The notification containing the received header and payload(s) material, will be done via the Receive interface, if in local reporting mode, or with a message with Service / Action fields set to “urn:ebXML:iic:test”/ “Notify”, if in remote reporting mode. The notification will report the action name (“Dummy”) and the instance ID of the Test Service.

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 41 of 447

1

12345678

910

11

121314151617

18

19

20212223

24

2526272829

30

31

3233343536

373839

4041424344

45

23

Page 42: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

3.2.4.2.3 Reflector

Reporting/Loop Mode Action Description : : On invocation, this action generates a response to a received message, by using the same message material, with minimal changes in the header:

Swapping of the to/from parties so that the “to” is now the initial sender. Setting RefToMessageId to the ID of the received message. Removing AckRequested or SyncReply elements if any.All other header elements (except for time stamps) are unchanged. The conversation ID remains unchanged, as

well as the CPAId. The payload is the same as in the received message, i.e. same attachment(s).

Response Destination: a message with a Mute action element is sent to the Test Component (Test Driver or Service) associated with the ResponseURL. This action acts as a Reflector for the initial sending party

In Reporting Mode: The action also notifies the associated Test Driver. The notification containing the received header and payload(s) material, will be done via the Receive interface, if in local reporting mode, or with a message with Service / Action fields set to “urn:ebXML:iic:test”/ “Notify”, if in remote reporting mode. The notification will report the action name (“Reflector”) and the instance ID of the Test Service.

3.2.4.2.4 Initiator action

Reporting/Loop Mode Action Description: This Test Service action is not invoked through reception of a request message. Instead, it is invoked via a local method call to the Test Services “Send” interface. This action may be initiated by a locally interfaced Test Driver, or (via RPC) by a remote Test Driver.

On invocation, this action generates a new message. This message may be the first message of a totally new conversation, or it may be part of an existing conversation (depending upon the message declaration provided by the Test Driver. The header of the new message can be anything that is specified by the Test Driver. For example, this action would be used to generate a "first" message of a new conversation, different from the conversation ID specified in the invoking message.

Response Destination: Any party defined by the Test Driver.

In Reporting mode: Not Applicable, since this action is invoked directly by the Test Driver only (i.e. no incoming message is received via MSH).

3.2.4.2.5 PayloadVerify action

Reporting/Loop Mode Action Description: On invocation, this action will compare the payload(s) of the received message, with the expected payload. Instead of using real payloads, to be pre-installed on the site of the Test Service, it is RECOMMENDED that a digest (or signature) of the reference payloads (files) be pre-installed on the Test Service host using TestServiceConfiguratorion parameters supplied by the Test Driver. The PayloadVerify action will then calculate the digest of each received payload and compare with the reference digest parameter values. This action will test the service contract between application and MSH, as errors may originate either on the wire, or at every level of message processing in the MSH until message data is passed to the application. The action reports to the Test Driver the outcome of the comparison. This is done via an alternate communication channel to ensure that the same system being tested is not used to report the reliability of its own MSH. A “notification” message is sent via RPC to the Test Driver. The previous MessageIdD is reported (for correlation) in the RefToMessageId header attribute of the response. The previous ConversationId is also reported. The payload message will contain a verification status notification for each verified payload, as specified in Appendix F.

The XML format used by the response message is described in the section 7.1.12 (“Service Messages”).

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 42 of 447

1

1

234

5

6

78

910

1112131415

16

17

18

192021

2223242526

27

2829

30

31

32

33343536373839404142434445

46

47

23

Page 43: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

Response Destination: a notification message is sent with a Mute action element to the Test Component (Test Driver or Service) via its “Receive” interface

In both loop and reporting mode: Action will also notify the associated Test Driver. The notification containing the received header and payload(s) material, will be done via the Receive interface, if in local reporting mode, or with a message with Service / Action fields set to “urn:ebXML:iic:test" / “Notify”, if in remote reporting mode.

3.2.4.3 Integration of the Test Service with an MSH Implementation

As previously mentioned, the actions above are predefined and are a required part of the Test Framework for messaging services testing, and will require some integration code with the MSH implementation, in form of three adapters, to be provided by the MSH development (or user) team. These adapters are:

(1) Reception adapter, which is specific to the MSH callback interface. This code allows for invocation of the actions of the Test Service, on reception of a message.

(2)

(3) MSH control adapter, which will be invoked by some Test Service actions, and will invoke in turn the MSH-specific Message Service Interface (or API). Examples of such invocations are for sending messages (e.g. by actions which send response messages), and MSH configuration changes

(4)

(5) Error URL adapter, which is actually independent from the candidate MSH. This adapter will catch error messages, and invoke the report method of the Test Service. The report method notifies the Test Driver of the error message.

[(6)]

3.2.5 Interfaces for Test Driver and Test Service

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 43 of 447

1

12

3456

7

8

9

10

11

12

13

14

15

161718

19

2021

22

23242526

27

282930

31

32

33

34

35

36

23

Page 44: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

Not all Test Harness communication occurs at the messaging level (i.e. through Test Service actions). Certain Test Harness functionality can only be safely and reliably guaranteed by decoupling it from the actual messaging protocol being tested. This is the case for Test Service message initiation, configuration and notification. . If the same protocol under test were also used as the infrastructure for the actions above, then failure of that protocol would result in undetermined/ambiguous Test Case results.

Three interfaces (2 Test Service, 1 Test Driver) are defined to provide a “decoupled” relationship between the system under test, and the test harness.

The threetwo interfaces on the Test Service component are:

Send – consists of one method (initiator) that accepts a message declaration, builds the message envelope, attaches any referenced payloads, and sends the message. The method returns an XML notification document with a “true/false” Success element.

Configuration – Consists of one method, (configurator) which accepts a Configuration Group list of parameters and their corresponding values. This includes three “required” parameters, and additional optionalpayloadoptional payload digest name/value parameters. The method returns an XML notification document with a “true/false” Success element.

These two interfaces can be accessed either locally (if the Test Driver and Test Service are running in the same program space), or remotely (if the Test Driver and Test Service are not local). In the case of remote communication, these methods MUST be accessible via RPC call.

The interface on the Test Driver component is:

Receive – Its “notify” method accepts incoming notification messages from the Test Service and passes them to the Test Driver for storage in its Message Store. Notification messages include messages received by the Test Service (when the Test Service is in “reporting mode”) and MSH and application error messages generated by the Test Service

3.2.5.1 Abstract Test Service “Send” Interface

The abstract interface is defined as:

· An interface that must be supported by the Test Service· An initiator method that must be supported by that interface· The parameters and responses that must be supported by that method

This abstract Test Service interface does not specify any particular implementation of a MSH, nor does it specify a particular language binding.

Method Return Type Method Name Test Driver Exception Condition

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 44 of 447

1

12345

678

910

11121314

1516171819

2021222324

2526

2728293031

32

3334

35363738

394041

42

23

Page 45: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

InitiatorResponse (an XML document , returning a synchronous response message containing a boolean Success element)

initiator (MessageDeclaration declaration MessagePayloadList payloads)Passes the constructed message “declaration” to the Test Service initiator action Additionally, any message payloads are passed as an encapsulated list.

Failed to construct or send message

InitiatorResponse (an XML document , returning a synchronous response message containing a boolean SuccesselementSuccess element)

initiator (MessageDeclaration declaration MessagePayloadList payloads)Passes the constructed message “declaration” to the Test Service initiator action Additionally, any message payloads are passed as an encapsulated list.

Failed to construct or send message

Table 1 – Initiator method descriptionTable 1- Initiator method description

Semantic Description: The Initiator call instructs the Test Service to generate a new message. The new message content is provided as an argument to the initiator call. Any payload content is provided as attachments in the SOAP message, and have the same content-Id as defined in the message Declaration. The declaration of the new message can be any of the XML formats agreed to by testing communities as a normative declarative syntax to be interpreted by the Test Service for a particular messaging system (e.g. ebXML or RNIF). This action may be used to generate a "first" message of a new conversation (if no ConversationId is present in the Declaration) .

The method is of return-type InitiatorResponse, meaning the method returns a response XML message document containing a status message describing the success/failure of the Initiator method call. This is returned to the Test Driver. A return value of “false” stops execution of the Test Case with a final result of “undetermined”. A return value of “true” signals the Test Driver to proceed with the testing workflow.

3.2.5.2 WSDL representation of the initiator RPC method

If the Test Driver is “remote” to the Test Service (i.e. resides outside of the program space of the Test Service), messages may still be initiated by the Test Driver on the remote Test Service via RPC. The WSDL document in Appendix IG describes the Service, Operation, Port and (example SOAP) bindings that MUST be implemented in the Test Service in order to perform remote message initiation via SOAP v1.2 Other RPC bindings may be implemented, as long as the operations and documents described in this WSDL definition are used, and both the Test Service and Test Driver are using the same RPC methods and definitions.

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 45 of 447

1

1

2

3

456789

10

11

12131415

16

17

1819202122232425

2627

23

Page 46: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

Figure 8 – WSDL diagram of the Initiator SOAP methodFigure 8 – WSDL diagram of the Initiator SOAP method

3.2.5.3 Abstract Test Service “Configuration” Interface

The abstract interface is defined as:

1. An interface that must be supported by the Test Service2. A configurator method that must be supported by that interface3. The parameters and responses that must be supported by that method

This abstract MSH interface does not specify any particular implementation of a MSH, nor does it specify a particular language binding.

Method Return Type Method Name Test Driver Test Driver Exception Condition

ConfiguratorResponse (an XML document containing a boolean “Success” result element)

configurator (ConfigurationList list)Passes the configuration parameters to the Test Service

Test Service fails to configure properly

ConfiguratorResponse (an XML document containing a boolean “Success” result element)

configurator (ConfigurationList list)Passes the configuration parameters to the Test Service

Test Service fails to configure properly

Table 2 – Configurator methodTable 2 – Configurator method

Semantic Description: The configurator call passes configuration data from the Test Driver to the Test Service. This includes the three REQUIRED configuration items (ResponseURL, NotificationURL, ServiceMode), plus additional optional parameters that may be used in payload verification payload integrity verification.

The method is of type ConfiguratorResponse, meaning the method returns a response XML message document containing a status message describing the success/failure of the configurator method call to the Test Driver. A Success element return value of “false” stops execution of the Test Case with a final

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 46 of 447

1

123

456

7

89

10111213

141516

17

18

19

20212223

242526

23

Page 47: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

result of “undetermined”. A return value of “true” signals the Test Driver to proceed with the testing workflow.

3.2.5.3.1 WSDL representation of the configurator SOAP method

If the Test Driver is “remote” to the Test Service (i.e. resides outside of the program space of the Test Service), messages may still be initiated by the Test Driver on the remote Test Service via RPC. The WSDL document in Appendix IG describes the Service, Operation, Port and bindings that MUST be implemented in the Test Service in order to perform remote Test Service configuration via SOAP v1.2 Other RPC bindings may be implemented, as long as the operations and documents described definition are used, and the same RPC mechanism is implemented for both Test Driver and Test Service..

Figure 9 – WSDL diagram of the configurator SOAP methodFigure 9 – WSDL diagram of the configurator SOAP method

3.2.5.4 Abstract Test Driver “Receive” Interface

The Test Driver MUST also have an interface available for communication with the Test Service. The abstract interface is defined as:

1. An interface that must be supported by the Test Driver2. An notify method that must be supported by that interface3. The parameters and responses that must be supported by that method

This abstract MSH interface does not specify any particular implementation of a MSH, nor does it specify a particular language binding.

Method Return Type Method Name Test Driver Test Driver Exception Condition

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 47 of 447

1

12

3

4

5

6789

101112

1314

151617

18192021

22

232425

26272829

303132

33

23

Page 48: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

NotificationResponse notify (NotificationMessage message, MessagePayloadList messagePayloads)

Test Driver fails to accept the notification message

NotificationResponse notify (NotificationMessage message, MessagePayloadList messagePayloads)

Passes the received notification message envelope and any encapsulated message payloads to the Test Driver

Test Driver fails to accept the notification message

Table 3 – WSDL diagram of the notify SOAP methodTable 3 – WSDL diagram of the notify SOAP method

Semantic Description: The notify method instructs the Test Driver to add the received or generated message content to the Message Store, along with accompanying service instance id, service action and other data provided by the Test Service.

The method is of type NotificationResponse, meaning the method returns a response XML message document containing a status message describing the success/failure of the notify method call back to the Test Service.

The types of notifications that a Test Service may pass to a Test Driver include:

An application error notification message captures specific error notifications from the MSH to its using application. It is not triggered by reception of an error message, but it is directly triggered by the internal error module of the MSH local to this Test Service. If the MSH implementation does not support such direct notification of the application (e.g. instead, it writes such notifications to a log), then an adapter needs to be written to read this log and invoke this method whenever such an error is notified.

Such errors fall into two categories:

MSH errors that need to be directly communicated to its application – and not to any remote party, e.g. failure to send a message (no Acknowledgmentss received after maximum retries).

In the case (for example) of ebXML Messaging Services, if an MSH generates regular errors with a severity level set to “Error” – as opposed to “Warning” – the MSH is supposed to (SHOULD) also notify its application. The notify method is intended to support both types of notifications.

Application Error Notification Message Format:

Error notification messages have the same characteristics a normal error message (i.e. have a MessageHeader with refToMessageId, ConversationId, CPAId corresponding to that of the incoming “offending” message that generated the error). In addition, the message will contain an Error List conforming to that normally generated by the MSH. This message will be identified as “different” from a received message by the presence of a “Notification” root element, which contains reporting test service name, reporting test service instance id, reporting Action name , synch type (synchronous or asynchronous), and a unique id.

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 48 of 447

1

12

3

456

7

89

10

11

12

13

1415161718

19

2021

222324

2526

27282930313233

34

23

Page 49: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

An MSH Error notification message captures “normal” error notifications from the MSH (i.e. errors normally returned to the sending MSH). This method is specified to handle cases where the MSH cannot resolve the error reporting location (not present in CPA) and does not return the error to the sending MSH. In this case the Test Service Notification interface is utilized to report the error to the Test Driver.

MSH Error Notification Message Format:

Error notification messages will have the same characteristics a normal error message (i.e. have a MessageHeader with refToMessageId, ConversationId, CPAId corresponding to that of the incoming “offending” message that generated the error). In addition, the message will contain an Error List conforming to that normally generated by the MSH. This message will be identified as “different” from a received message by the presence of a “Notification” root element, which contains reporting test service name, reporting test service instance id, reporting method name (errorURLNotify), synch type (synchronous or asynchronous), and id.

Received Message notifications capture messages received by the Test Service. This method is specified to handle testing scenarios where the Test Service is in “local-reporting” or “remote reporting” mode. A notification message generated by the messageNotify method is a “copy” of the received message envelope and an encapsulated list of any attachments provided with the message. The message contains.

Received Message Notification Format:

All notification messages generated by the messageNotify method will have the same characteristics a normal message (i.e. have a MessageHeader with refToMessageId, ConversationId, CPAId). Additionally, an encapsulated list of message attachments that were a part of the received message is passed to the Test Driver. The message will be identified as “different” from a received message by the presence of a “Notification” root element, which contains reporting test service name, reporting test service instance id, reporting method name (notify), synch type (synchronous or asynchronous), and id.

Payload verification notification messages inform the Test Driver of the result of the PayloadVerify action of the Test Service. A notification message consists of a message envelope with the same characteristics a normal response message (i.e. have a MessageHeader with refToMessageId, ConversationId, CPAId corresponding to that of the incoming message). This message will be identified as “different” from a received message by the presence of a “Notification” root element, which contains reporting test service name, reporting test service instance id, reporting method name (payloadVerify), synch type (synchronous or asynchronous), and id.

Received Payload Verification Format:

All payload verification messages will have the same characteristics a normal message (i.e. have a MessageHeader with refToMessageId, ConversationId, CPAId). Additionally, the notify method will pass to the Test Driver an XML document describing the result of the payload verification. This message will be identified as “different” from a received message by the presence of a “Notification” root element, which contains reporting test service name, reporting test service instance id, reporting method name (messageNotify), synch type (synchronous or asynchronous), and id.

The payload verification notification message will also contain a single XML document as an attachment, listing the “success/fail” results of the payload verification for each individual message payload verified by the Test Service. The format of that XML document is specified in Appendix H.

The XML format used use for all of the above notification messages is described in the section 7.3(“Test Service Messages”).

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 49 of 447

1

1234

5

6

789

10111213

14

1516171819

20

21

222324252627

28

29303132333435

36

37

383940414243

444546

47

4849

23

Page 50: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

Additional note:

Notification messages do not contain any artifacts pertaining to the protocol that carried them. For example, no MIME or SOAP header content is passed along with the notification message; becasebecause the Test Service does not normally have access to this message content at the application level. Only message content, and accompanying message payloads are passed on to the Test Driver’s “Receive” interface.

3.2.5.4.1 WSDL representation of the Test Driver notify SOAP method

If the Test Driver is “remote” to the Test Service (i.e. resides outside of the program space of the Test Service), messages may still be initiated by the Test Service via RPC. ThThe WSDL document in Appendix G describes the Service, Operation, Port and (example) Bindings that MUST be implemented in the Test Service in order to perform remote Test Service configuration via SOAP v1.2 Other RPC methods may be implemented, as long as the operations and documents described in the WSDL definition are used, and the same RPC mechanism is used by both Test Driver and Test Service implementer.

Figure 10 – WSDL diagram of the Test Driver notify SOAP methodFigure 10 – WSDL diagram of the Test Driver notify SOAP method

3.2.6 Test Service Configurator, Initiator and Notification Message formats

The Test Service Message Schema (Appendix GF) describes an XML syntax that MUST be followed for passing Test Service configuration, message initiation and message notification data between the Test Driver to the Test Service when the Test Driver is either interfaced with the Test Service, or is remote to the Test Service but is receiving notification messages from the Test Service via RPC.

If the Test Service is in “local reporting mode”, configuration and message initiation information is passed from the Test Driver to the Test Service via the Test Service “Send” and “Configuration” interfaces respectively .

The Send interface provides the “initiator” method to start a new conversation or to construct a message with the conversationId already provided by the Test Driver.

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 50 of 447

1

1

2

34567

8

9

10

1112131415161718

1920

212223

2425

26

2728293031

32333435

363738

39

23

Page 51: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

The Configuration interface provides the “configurator” method, which provides the the fundamental parameters for setting the state of the Test Service (ResponseURL, NotificationURL ,ServiceMode and PayloadDigests).

The message initiation and Test Service configuration use the same methods if the Test Service is in “remote reporting mode”. The only difference is that the messages are passed between the two test components via a Remote Procedure Call (RPC) instead of via local calls to respective interfaces. This communication MUST be performed synchronously.

Using an alternate channel for Test Service configuration, message initiation and message reporting separates the implementation under test from the actual testing infrastructure. This helps to isolate failures in conformance and interoperability from failures in the test harness.

The particular alternate communication binding that a test driver and test service implement is not mandated in this specification, however (as an example) an abstract definition and WSDL definition with a SOAP binding is provided in section 3.2.5.The list below describes each of the alternate channel messages defined in Appendix G.

InitiatorRequest – XML message content to be interpreted by the Test Service initiator method to construct an ebXML Message (or any other message envelope). This XML request is passed to a candidate MSH Test Service via the Send interface (if the Test Driver is in service mode) or via a remote procedure call to the Test Service (if the Test Driver is in connection mode). The first argument carries the message envelope construction declarations. The second argument is a list of message payloads to be added to the message. If the Test Driver is in “service” mode, the configuration parameters are passed to the Send interface via the initiator method call. If the Test Driver is in “loop” mode, the parameters are passed to the Test Service via RPC call to the initiator method.

Figure 33 – Initiator request content

Figure 11 – Initiator request content

Definition of Content

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 51 of 447

1

123

456789

10111213

1415161718

19202122232425262728293031

3233

34

353637

38

39

40414243

23

Page 52: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

NameDescription Default Value Schema

Required or Optional

Test ServiceDriver Exception Condition

InitiatorRequestContainer for message declaration

Required

DeclarationSetPart

Container for instructions to Test Service to construct a messageContainer for message component declarations

Required Invalid declaration syntax

Declaration XML message declaration to be interpreted by Test Service into its API calls to construct a message

Required Not a well-formed XML document, or document not found.

#wildcardDSign Any XML content that can be interpreted by the Test Service to construct a messageInstruction to Test Service to digitally sign (using [XMLDSIG] the appropriate part of the message

Optional Failed to generate digital signature

#wildCard Any XML content to be interpreted by the Test Service to construct a message

Required Cannot construct/send message

Table 19 – Describes the content of the InitiatorRequest elementTable 4 – Description of InitiatorRequest content

InitiatorResponse – XML message content to be interpreted by the Test Driver, with a Success element result of “true” or “false” returned by the Test Service. The response is passed to Test Driver through its Receive interface (if Test Driver is in Service mode) or sent to the getMessage method of the Test Driver Receive RPC Service (if Test Driver is in Loop mode). In both casesthe response message is added to the Message Store by appending its content to a Message Store “Message” element. .The Test Driver will automatically evaluate the result of the response message, and exit the Test Case with a final status of “undetermined” if the initiator Success element result is “false”. Otherwise, the Test Case will proceed to the next test operation. Response message content is appended to a Message Store Message element “as is”, with appropriate service instance, reporting action and other information provided as

Figure 34 – Graphical representation of the InitiatorResponse schemaFigure 12 - Graphical representation of the InitiatorResponse schema

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 52 of 447

1

1

23

456789

1011121314

15

1617

1819

23

Page 53: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

Definition of Content

NameDescription Default Value

From Test Service

Schema Required or Optional

Test Driver Exception Condition

InitiatorResponseContainer for response from Test Service

Required

SuccessBoolean result (true | false) for conversation initiation from Test Service

Required Test Service failed to

Table 20 – Describes the content of the InitiatorResponse elementTable 5 – Description of the content of the InitiatorResponse element

TestServiceConfiguratorRequest – XML message content passed to a candidate MSH Test Service, to be interpreted by the configurator method call. Content consists of three required parameter names and their corresponding values and types. If the Test Driver is in “service” mode, the configuration parameters are passed to the Test Service Configuration interface via the configurator method call. If the Test Driver is in “loop” mode, the parameters are passed to the Test Service via RPC call to the configurator method. RPC communication MUST be performed on a synchrons channel.

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 53 of 447

1

1

2

3

4

5

67

89

1011121314151617181920

21

23

Page 54: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

Figure 35 – A Graphical representation of the ConfiguratorRequest content schemaFigure 13 - A Graphical representation of the TestServiceConfiguratorRequest content schema

Definition of Content

NameDescription Default

ValueRequired/Optional Test Driver Exception

Condition

NameConfigurationURL

DescriptionRPC endpoint for configuration of Test Service

Default Value

Required/OptionalRequired

Test Service Exception ConditionUnable to connect to Test Service

ServiceModeToggle Test Service between “loop” , “local-reporting” and “remote-reporting” modes

Required Unable to configure Test Service in this mode

ResponseURLNormal destination for response messages from Test Service

Required

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 54 of 447

1

1

23

45

678

9

23

Page 55: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

NotificationURLRPC endpoint for notification messages from Test Service

Required

PayloadDigestsContainer for message payload digest values to be used by Test Service “PayloadVerify” action

Required

PayloadIndividual payload data container

Required

IdIdentifier of the payload

Required

DigestMD5 digest value of the payload

Required

Table 21 – Describes the content of the ConfigurationRequest elementTable 6 – Description of the content of the TestServiceConfiguratorRequest element

TestServiceConfiguratorResponse – XML message content to be interpreted by the getMessage method of the Test Driver Receive interface. The response is passed to Test Driver through its Receive interface (if Test Driver is in Service mode) or sent to the Test Driver Receive RPC Service (if Test Driver is in Loop mode). In both cases, the getMessage method is invoked on the Test Driver. The Test Driver will automatically evaluate the result of the response message, and exit the Test Case with a final status of “undetermined” if the XML content in the response message indicates “failure” to configure the Test Service. Otherwise, the Test Case will proceed to the next test operation.

Figure 36 - A graphical representation of the ConfiguratorResponse content schemaFigure 14 - A graphical representation of the ConfiguratorResponse content schema

Definition of Content

NameDeclaration Default Value

From Test Service

Schema Required or Optional

Test Driver Exception Condition

TestServiceConfiguratorResponse

Container for response from Test Service

Required

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 55 of 447

1

12

3456789

10

1112

1314

15161718

19

23

Page 56: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

SuccessBoolean result (true | false) for Test Service configuration

Required Failed to configure Test Service

Table 7 Definition of content for TestServiceConfiguratorResponseTable 22 – Description of content for the ConfiguratoreResponse element

Notification – XML message envelope and payloads passed from the Test Service to the Test Driver. This includes MSH error errorURL notifications, errorAppapplication error notifications or and any messages received by the Test Service while operating in “reporting” mode. Notifications are passed to Test Driver through its Receive interface (if Test Driver is in service mode) or sent to the Test Driver via RPC to the Test Driver notify method. In both cases, the Test Driver will automatically append the received Notification element and content the root element of the Message Store. Additional XML message payloads associated with the message MUST be stored by the Test Driver for examination by a GetMessage test operation if necessary.

Although the Notification message format is stored the same way in the MessageStore, there are important differences for each type of notification.

A Notification message with a notificationType attribute of “message”, looks in many ways like a message received directly by a Test Driver, with the exception that some information may not be present (such as MIME header content), since this portion of the message may not be exposed to the methods of the Test Service Notification interface.

A Notification message with a notificationType attribute value of “errorURL” is similar to a generic “message” notification, with the exception that the message was passed to the Test Driver in response to an erroneous message received by the candidate MSH. The content of the notification is the error message that the candidate MSH would normally send to the requesting party or to an identified error reporting URI if one were defined.

A Notification message with a notificationType attribute value of “errorApp” is identical to an “errorURL” notification , with the exception that error list provided in the notification contains “application-level” errors that are not normally returned to the sending party, but are handled internally by the candidate implementation under test.

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 56 of 447

1

1

2

3456789

101112

131415

1617181920

212223242526

2728293031

32333435363738

23

Page 57: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

Figure 37 – Graphical representation of the Notification element content schema

Figure 15 - Graphical representation of the Notification element content schema

Definition of Content

NameDescription Default

ValueSchema Required or Optional

TestDriver Exception

NotificationContainer for reported message content

Optional Invalid notification message

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 57 of 447

1

1

234

5

6789

1011121314

23

Page 58: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

notificationTypeType of notification (errorApp|errorURL|message)

Required

synchTypeDescriptor of type of how message was received by Test Service

Required

idTest Service provided unique identifier of received message

Required

serviceInstanceIdUnique identifier of the Test Service that generated the notification

Optional

serviceNameName of the Service that generated the notification

Optional

reportingActionName of the action that generated the notification

Optional

notificationTypeType of notification message. (ErrorURL | ErrorApp | Message)

Required

Container Portion of the message received by the Test Service

Required

Content Container for any XML representation of message content for this part of the message

Optional

Content Optional

Table 23 – Description of MessageNotification element contentTable 8 - Description of MessageNotification element content

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 58 of 447

1

12

345

23

Page 59: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

NotificationResponse – XML message content to be interpreted by the Test Service. The response is returned by the notify method of the Test Driver or sent to the Test Service as an RPC response.

Figure 38 - A graphical representation of the NotificationResponse content schemaDefinition of Content

Figure 16 Graphical representatnio of NotificationResponse content

PayloadVerifyResponse – XML message content to be interpreted by the “notify” method of the Test Driver’s “Receive” interface. This message content is an attachment to the notification message.

Figure 39 - A graphical representation of the PayloadVerifyResponse content schemaFigure 17 – A graphical representation of the PayloadVerifyResponse content schema

Definition of Content

Definition of Content

NameDescription Default

ValueSchema Required or Optional

Test Driver Exception

PayloadVerifyResponseContainer for results of comparison of message payload received by candidate MSH with their MD5 digest values

Required

PayloadContainer for individual payload verification result

Required

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 59 of 447

1

12

3

456

7

8

910

11121314

15

1617

1819

2021

222324

25

23

Page 60: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

IdID of the payload Required

SuccessBoolean comparison result for an individual payload

Required

Table 24 – Description of PayloadVerifyResponse contentTable 9 - Description of PayloadVerifyResponse content

3.3 Executing Test Cases

A Test Suite document contains a collection of Test Cases. Each Test Case is an XML script, intended to be interpreted by a Test Driver. Using the Test Suite document, the Test Driver MUST be able to:

Configure Itself – Define necessary parameters that permit the Test Driver to send messages and verify and/or validate received message contentConfigure the Test Service – Define necessary parameters that permit the Test Service to set its mode of operation, and send notification messages to the Test Driver (if required).Access all necessary testing material – Test Requirements documents, message content, payload contentExecute Test Cases – Interpret a formalized and valid XML scripting language that permits unambiguous, repeatable results each time it is interpreted and executedGenerate a Test Report – After executing the Test Cases, a Test Driver MUST is able to generate a Test Report using the material provided in the Test Suite, and collateral test material that is part of the Test Suite.

3.3.1 A Typical Execution Scenario

In order to get an idea of how the Test Framework operates, a brief description of how a Test Driver would typically execute a Test Suite is described below. This is an “overview” description of how the Test Framework executes. In order to fully understand the details and requirements of implementing this specification, the remaining portion of this specification must be examined.

A typical execution model for the Test Harness would be:

A Test Driver is installed on a networked computer. An implementer wishing to test an ebXML (or other) implementation invokes the Test Driver executable.

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 60 of 447

1

12

3

4

5

6

789

10

111213141516171819202122

232425

26

2728293031

3233

343536

23

Page 61: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

The Test Driver asks the tester for fundamental information (e.g. mode of testing to be used by the Test Driver, message and error reporting URL for the candidate implementation) The Test Driver “self configures” based upon user preferences.The Test Driver performs any local or remote configuration of the candidate implementation if necessary.The Test Driver presents the tester with a list of conformance or interoperability testing profiles that he/she may select from for testing the candidate implementation.The tester chooses a testing requirements profile, which identifies particular testing requirements ( and subsequently their matching Test Casees).Execution of Test Cases against the specified testing requirements profile begins.A standard Test Report Document is generated by the Test Driver, providing a trace of all testing operations performed for each Test Case, with accompanying Test Case results, indicating a final result of “pass”, “fail” or “undetermined” for each Test Case, based upon detailed results of each test operation within each Test Case.If a candidate implementation passes all Test Cases in the Test Suite, it can be considered conformant or interoperable for that particular testing profile.If a candidate implementation fails some Test Cases, but the Test Requirement that they tested against were “OPTIONAL”, “HIGHLY RECOMMENDED” or “RECOMMENDED”, then that implementation may still be conformant for all REQUIRED features tested. If the optional features tested were actually implemented on the candidate, and it failed any Test Cases that test against those features then the candidate would be considered “non-conformant” for those optional features.

If any Test Case results were “undetermined” (due to network problems, or due to missing prerequisite candidate features that are not under the control of the Test Harness) then ultimate conformance/interoperability of the candidate implementation is deemed “undetermined” for that testing profile. In such cases, resolution of the underlying system issue must be resolved or the Testing Profile must be redefined to test only those features that are truly supported by the candidate implementation.

The above list represents an “overall” view of how a Test Harness operates. Detailed descriptions of the testing material that drives the Test Harness, and implementation requirements for the Test Driver and Test Service follow.

3.3.2 Test Case as a Workflow of Threads

A Test Case is a workflow of Test Threads. A Thread can be executed either in a synchronous or asynchronous manner. If a particular test operation consists of a logically grouped sequence of message “send” and “receive” test operations, then a Thread is a logical container to group those test operations. In addition, a Thread may test an assertion of expected message content from a received message. A Thread may also include conditional actions (testing preconditions) that are a basis for proceeding to the execution of the assertion test. A Test Case Instance is the execution of a particular sequence of test operations,Two instances of the same Test Case will be distinguished by distinct ConversationId and MessageId values in the generated messages (referred to as the message “context”). An example of a sequence of Threads associated with an MS Conformance Test Case is: Thread 1: Test driver sends a sample message to the Reflector action of the Test Service. Message header data is obtained from message header declaration, and message payload from the received file.

Thread 2: Test driver receives the response message and adds it to the stored messages received for this Test Case instance Mressage Correlation is done based on the ConversationId attribute, which

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 61 of 447

1

123456789

101112131415161718192021

222324252627

28293031

32

33

3435363738394041424344454647

4849

23

Page 62: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

should be identical to the MessageId of the sent messsage Test driver verifies the test condition on response message, for example that the SOAP envelope and extensions are valid.

3.3.3 Message Declarations

All cases require the construction of message data. Outgoinhg message data MUST be specified using a Declaration (see Section 7). A Declaration is an XML-based script interpreted by the Test Driver (or Test Service if doing interoperability testing) to construct a message envelope and its content. Payload material is not included in the messages declaration, but may be referenced by it (for example, in the case of ebXML Messaging, via the Manifest element).

Declaration content can be any well-formed XML content. That content can be inserted “as is” and sent over the wire by the Test Service (if no Mutator XSL stylesheet is employed to transform the Declaration content into a valid message). In that case, the Declaration is assumed to already be a valid XML message.

More typically however, the Declaration content would be transformed by a Mutator XSL stylesheet into a valid message. The presence of a Mutator element following a Declaration indicates that the Declaration content MUST be mutated (or transformed) into a valid message.

3.3.4 Testing Configuration Data

Test Cases MAY be executed under a pre-defined collaboration agreement. For example, when testing ebXML Messaging Services, this agreement is a CPA [ebCPP]. This agreement will configure the ebXML Candidate Implementations involved in the testing, and define the collaborations that execute on these implementations.

Test Driver Configuration data (found in the Test Suite XML document) parameters define the operational mode of the test driver itself. The Test Driver is agnostic to any type of collaboration agreement, but does have its own set of configuration parameters and requirements. This information is provided (or referenced via URI) in the Test Suite document..

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 62 of 447

1

12

3

4

56789

1011

1213141516

17181920

21

2223242526

2728293031

323334

23

Page 63: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

Figure 11 – Test Case Document and Database

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 63 of 447

1

12

3

4

23

Page 64: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

4 The Test Case Script

4.1 Executing Test Cases

A Test Suite document contains a collection of Test Cases. Each Test Case is an XML script, intended to be interpreted by a Test Driver. Using the Test Suite document, the Test Driver MUST be able to:

Configure Itself – Define necessary parameters that permit the Test Driver to send messages and verify and/or validate received message contentConfigure the Test Service – Define necessary parameters that permit the Test Service to set its mode of operation, and send notification messages to the Test Driver (if required).Access all necessary testing material – Test Requirements documents, message content, payload contentExecute Test Cases – Interpret a formalized and valid XML scripting language that permits unambiguous, repeatable results each time it is interpreted and executedGenerate a Test Report – After executing the Test Cases, a Test Driver MUST is able to generate a Test Report using the material provided in the Test Suite, and collateral test material that is part of the Test Suite.

4.1.1 A Typical Execution Scenario

In order to get an idea of how the Test Framework operates, a brief description of how a Test Driver would typically execute a Test Suite is described below. This is an “overview” description of how the Test Framework executes. In order to fully understand the details and requirements of implementing this specification, the remaining portion of this specification must be examined.

A typical execution model for the Test Harness would be:

A Test Driver is installed on a networked computer. An implementer wishing to test an ebXML (or other) implementation invokes the Test Driver executable.The Test Driver asks the tester for fundamental information (e.g. mode of testing to be used by the Test Driver, message and error reporting URL for the candidate implementation) The Test Driver “self configures” based upon user preferences.The Test Driver performs any local or remote configuration of the candidate implementation if necessary.The Test Driver presents the tester with a list of conformance or interoperability testing profiles that he/she may select from for testing the candidate implementation.The tester chooses a testing requirements profile, which identifies particular testing requirements ( and subsequently their matching Test Cases).Execution of Test Cases against the specified testing requirements profile begins.

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 64 of 447

1

1

2

3

4567

89

10111213141516171819

20

21

2223242526

2728

293031323334353637383940

23

Page 65: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

A standard Test Report Document is generated by the Test Driver, providing a trace of all testing operations performed for each Test Case, with accompanying Test Case results, indicating a final result of “pass”, “fail” or “undetermined” for each Test Case, based upon detailed results of each test operation within each Test Case.If a candidate implementation passes all Test Cases in the Test Suite, it can be considered conformant or interoperable for that particular testing profile.If a candidate implementation fails some Test Cases, but the Test Requirement that they tested against were “OPTIONAL”, “HIGHLY RECOMMENDED” or “RECOMMENDED”, then that implementation may still be conformant for all REQUIRED features tested. If the optional features tested were actually implemented on the candidate, and it failed any Test Cases that test against those features then the candidate would be considered “non-conformant” for those optional features.

If any Test Case results were “undetermined” (due to network problems, or due to missing prerequisite candidate features that are not under the control of the Test Harness) then ultimate conformance/interoperability of the candidate implementation is deemed “undetermined” for that testing profile. In such cases, resolution of the underlying system issue must be resolved or the Testing Profile must be redefined to test only those features that are truly supported by the candidate implementation.

The above list represents an “overall” view of how a Test Harness operates. Detailed descriptions of the testing material that drives the Test Harness, and implementation requirements for the Test Driver and Test Service follow.

4.1.2 Test Case as a Workflow of Threads

A Test Case is a workflow of Test Threads. A Thread can be executed either in a synchronous or asynchronous manner. If a particular test operation consists of a logically grouped sequence of message “send” and “receive” test operations (described using the “PutMessage” and “GetMessage” operators), then a Thread is a logical container to group those test operations. In addition, a Thread may test an assertion of expected message content from a received message (using the “TestAssertion” operator). A Test Case Instance is the execution of a particular sequence of test operations. Two instances of the same Test Case will be distinguished by distinct ConversationId and MessageId values in the generated messages (referred to as the message “context”). An example of a sequence of Threads associated with an MS Conformance Test Case is: Thread 1: Test driver sends a sample message to the Reflector action of the Test Service. Message header data is obtained from message header declaration, and message payload from the received file.

Thread 2: Test driver receives the response message and adds it to the stored messages received for this Test Case instance Message Correlation is done based on the ConversationId attribute, which should be identical to the MessageId of the sent message Test driver verifies the test condition on response message, for example that the SOAP envelope and extensions are valid.

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 65 of 447

1

123456789

101112

131415161718

19202122

23

24

2526272829303132333435363738

39404142

43

44

45

46

23

Page 66: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

4.1.3 Message Declarations

All cases require the construction of message data. Outgoing message data MUST be specified using a Declaration (see Section 7). A Declaration is an XML-based script interpreted by the Test Driver (or Test Service if doing interoperability testing) to construct a message envelope and its content. Payload material is not included in the messages declaration, but may be referenced by it (for example, in the case of ebXML Messaging, via the Manifest element).

Declaration content can be any well-formed XML content. That content can be inserted “as is” and sent over the wire by the Test Service (if no Mutator XSL stylesheet is employed to transform the Declaration content into a valid message). In that case, the Declaration is assumed to already be a valid XML message.

More typically however, the Declaration content would be transformed by a Mutator XSL stylesheet into a valid message. The presence of a Mutator element following a Declaration indicates that the Declaration content MUST be mutated (or transformed) into a valid message.

4.1.4 Testing Configuration Data

Test Cases MAY be executed under a pre-defined collaboration agreement. For example, when testing ebXML Messaging Services, this agreement is a CPA [ebCPP]. This agreement will configure the ebXML Candidate Implementations involved in the testing, and define the collaborations that execute on these implementations.

Test Driver Configuration data (found in the Test Suite XML document) parameters define the operational mode of the test driver itself. The Test Driver is agnostic to any type of collaboration agreement, but does have its own set of configuration parameters and requirements. This information is provided (or referenced via URI) in the Test Suite document..

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 66 of 447

1

1

234567

89

101112

13141516

17

1819202122

2324252627

282930

23

Page 67: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

Figure 18 - Test Case Document and Database

4.2 An overviewAabstract Vview of Test Scripts A Test Case is a workflow of Test Threads. Test Threads can be thought of as containers of test operations used to perform some specific testing function. These operations are typically executed in sequence within a thread. Concurrency of operations typically involve several (concurrent) threads. For example, a Thread may be used to send a message, receive a response and evaluate the content of that message response (to test a single “business transaction activity”. Or, a Thread may be used as a container of other Threads (performing a higher-level role in testing “binary collaboration activity” between two parties. If two conversations must be controlled by the Test Driver, without clear indication on which one will occur first or whether they may be interleaved, then two concurrent threads can be used, each one taking care of a conversation.

Threads may contain a number of test operations, including message construction and transmission, message reception and evaluation, assertion testing and logic control operations. Section 8 7 provides the syntactic rules and semantic meaning of the XML schema used to define Test Cases and their Threads.

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 67 of 447

1

12

3

4

5678

910111213141516171819

2021222324

25

23

Page 68: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

However, before introducing the technical details of the IIC Test Framework scripting language, it would be helpful to understand how Threads can be used in 3 sample Test Cases. The 3 sample Abstract Test Cases below use common Test Driver instructions that include:

PutMessage() :an operation that will send a message to the remote party. The message material is built or modified by the Test Driver, based on previous messages or based on message material that is part of the test case definition.

GetMessage() : an operation that will wait for incoming messages, and only select those that satisfy a filter condition. In fact, all re-ceived messages are stored in a queue. and GetMessage() will select any message (including previously received messages) from the Message Store . As soon as the XPath filter is satisfied, GetMessage() us complete. . A timeout is always be speci-fied (via a Test Driver “StepDuration” configuration parameter) so that GetMessage() does not hang query the Message Store indefinitely

TestAssertion () : a verification operation that evaluates a condition on messages retrieved via the GetMessage operation. It then may determine the action to follow, such as continue or test case termination (as failure, success, or undetermined outcome).

Split() and Jjoin() are typical workflow operators. Split()forks one or more threads concurrently within the parent Thread. Join() is by default an and-join operator that will wait for the completion of its argument threads before proceeding further.

4.2.1 Test Case #1: Basic Transaction Send/Receive within specified TimeToAcknowledge and Time-ToPerform (the normative version of this Test Case can be found in Appendix I)

This Test Case illustrates a typical “send/receive” testing scenario, in which time plays a critical role in determining whether the candidate business application “passes” or “fails”. The Test Driver (acting in the role of the “Buyer”) sends a Purchase Order document to the candidate business application (the “Seller”). The Seller must respond with a “business Acknowledgment message” within 120 seconds. Lastly, either a Confirmation or Rejection (but not both) message must be received by the Test Driver within 180 seconds of sending the Purchase Order message.Test Driver then sends a Receipt AcknoledgmentAcknowledgment for the confirmation/rejection

Below is an abstract script representation of the test case, showing how threads are combined and what operations they execute (the normative version of this Test Case can be found in Appendix I):

Test Case Begin “main” execution ThreadPutMessage() Send a message containing a Purchase Order attachmentSplit (thread_01) Thread Sleep(180) Fork a “sleep” Thread that waits for 3 minutes.End ThreadGetMessage() Concurrently check for a business Acknowledgment response. Filter any ReceiptAcknowledgment response message with same ConversationId as PurchaseOrder. TestAssertion Verify that a filtered message is present in the filtered result. If the TestAssertion operation returns a Boolean result of “false”, exit the Test Case with a final result of “fail”, stating that a ReceiptAcknowledgment was not present.

TestAssertion Verify that Receipt Acknowledgment occuredoccurred within specified 'TimeToAcknowledgeReceipt' period of 120 seconds (comparing the Receipt Acknowledgment Timestamp against the Timestamp of the request message (generated by the Test Driver at runtime). If

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 68 of 447

1

123

456

789

1011

1213

1415

1617

1819

202122232425262728

293031

32333435363738394041424344

45464748

23

Page 69: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

the TestAssertion operation returns a Boolean result of “false”, exit the Test Case with a final result of “fail”.Join (thread_01) Synchronize script execution, proceeding if both Threads successfully complete. GetMessage() Retrieve Response message(s). Filter any business response message (either Confirmation or Rejection)” with same ConversationId as PurchaseOrder.TestAssertion Verify that result contains either a single Confirmation or Rejection (but not both). If the TestAssertion operation returns a Boolean result of “false”, exit the Test Case with a final result of “fail”.PutMessage() Send a business Receipt AcknowledgmentEnd Test Case End “main” execution Thread

4.2.1.1 Semantics of Execution for this test case:

When the above Test Case is executed, a “main” Thread is started (even if not explicitly defined in the Test Case). This main Thread will spawn other threads, such as thread_01 in our example. The first step in the main Thread above is a “PutMessage” operation which sends a Purchase Order request to a candidate business application. Also within this main Thread, a sub-thread (thread_01) is invoked “in parallel” using the Split operation. This thread simply “sleeps” for 3 minutes, while the main thread proceeds concurrently.

4.2.2 Test Case #2: Basic Error Handling Test (the normative version of this Test Case can be found in Appendix I)

This Test Case illustrates a scenario where an error message must be caught, no matter when it occurs during the test case execution. The “Buyer” (Test Driver) sends a Purchase Order document to the candidate business application (the “Seller”). The Seller responds with an Acceptance or Rejection message (but not both). An error may occur at any point within 5 minutes of the initial Purchase Order request (either before, during or after receiving the Acceptance or Rejection response). If that is the case, the test case must fail.

Below is an abstract script representation of the test case, showing how threads are combined and what operations they execute (the normative version of this Test Case can be found in Appendix I):

Test Case Begin “main” execution ThreadPutMessage() Send a message containing a Purchase Order attachmentSplit (thread_01) Fork “sleep” Thread that waits for 3 minutes Thread

Sleep(180) End ThreadSplit (thread_02) Fork “sleep” Thread that waits for 5 minutes then checks for an Error message Thread

Sleep(300) GetMessage() Check for any received Error Messages. Filter a specific Error message referring to this PurchaseOrder ID.

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 69 of 447

1

123456789

10

11

12131415161718

19

2021

222324252627

28293031

3233343536373839404142434445

23

Page 70: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

TestAssertion() Verify an Error message was received. If the verification condition returns a boolean result of “true”, exit the Test Case with a final result of “fail”. If the value is “false”, the test case is instructed to continue its execution.

End ThreadJoin (thread_01) Synchronize script execution, proceeding after thread_02 completes successfully (i.ei.e. 3 minutest have passed since the request message was sent). GetMessage() Retrieve Response message(s). Filter any business response message with same ConversationId as PurchaseOrder.TestAssertion() Verify that result contains either a single Confirmation or Rejection(but not both). If the TestAssertion operation returns a Boolean result of “false”, exit the Test Case with a final result of “fail”.Join (thread_02) Synchronize script execution, proceeding after thread_01 completes successfully.End Test Case End “main” execution Thread

4.2.2.1 Semantics of Execution for this test case:

The main Thread starts by executing a “PutMessage” operation to send a Purchase Order request to a candidate business application. After this, two threads are forked:

Tthread_01 (a Thread that sleeps for 3 minutes, is executed via the Split operation. The role of this thread is the same as in use case #1.

Tthread_02 is forked and sleeps for 5 minutes. then tests for any received Error messages

Continued execution of the Test Case is predicated upon the completion of thread 01 Assuming thread_01 completes successfully, Test Case execution continues with a retrieval of the response message. Like in Use Case #1, a TestAssertion operation verifies that either a single Confirmation or Rejection (but not both) message is received by the Test Driver. If neither is received, the Test Case ends with a final result of “fail”.Lastly, thread_02 ( the Error checking Thread) is Joined as the final determinant of success/failure of the Test Case. If thread_02 completes its execution (meaning it has failed to detect an error message), the final Test Case result is “pass”. .

4.2.3 Test Case #3: Conditional Branching Scenario (the normative version of this Test Case can be found in Appendix I)

This Test Case illustrates a scenario in branching of Test Case logic, which is dependent upon the outcome of a TestAssertion operation. The Test Driver (acting in the role of the “Buyer”) sends a Request for Quote document to the candidate business application (the “Seller”). The Seller responds with an Approval or Rejection message. An error may occur at any point after the initial of the initial Request for Quote, and must be caught by the Test Driver.

Below is an abstract script representation of the test case, showing how threads are combined and what operations they execute (the normative version of this Test Case can be found in Appendix I):

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 70 of 447

1

123456789

10111213

1415

16

171819

20212223

242526272829303132

33

3435

363738394041

424344

454647

23

Page 71: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

Test Case Begin “main” execution ThreadPutMessage() Send a message containing a Request For QuoteSplit (thread_01)

ThreadSleep(300) GetMessage() Check for any received Error Messages. Filter a specific Error message referring to this PurchaseOrder ID. TestAssertion() Verify an Error message was received. If the verification condition returns a boolean result of “true”, exit the Test Case with a final result of “fail”. If the value is “false”, the test case is instructed to continue its execution.

End Thread

GetMessage() Retrieve Response message(s). Filter any business response message with same ConversationId as Request For Quote.TestAssertion() Verify that result contains an “Approval” or “Rejection” document. If the TestAssertion operation returns a Boolean result of “false”, exit the Test Case with a final result of “fail”.TestAssertion() Verify that result contains an “Approval” document.

WhenTrue Split (thread_02) Process the Approval document by forking the “Approval” Thread (02)

ThreadTestAssertion () Validate the Approval document. If the TestAssertion operation returns a Boolean result of “false”, exit the Test Case with a final result of “fail”.GetMessage () Retrieve a Quote message with corresponding, filtering messages of type “Quote and having the same ConversationId as the Approval document.PutMessage () Send an AppprovalApproval of Quote message response. Message created reuses the same ConversationId. Message created reuses the same ConversationId as the Approval document.

End Thread

WhenFalse Continue()“Continue” to next Test Operation. Explicitly continue execution if the TestAssertion operation fails (i.e. do not abort the Test Case), because the response is a “Rejection”.

TestAssertion() Verify that result contains a “Rejection” document.

WhenTrue Process the Rejection document by forking the “Rejection” Thread (03)Split (thread_03) Process the Rejection document by forking the “Rejection” Thread (03)

ThreadTestAssertion () Verify that this is a Rejection document. TestAssertion operation returns a Boolean result of “false”, exit the Test Case with a final result of “fail”.

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 71 of 447

1

123

456789

101112

13141516171819202122232425262728293031

3233343536

3738

3940414243444546

23

Page 72: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

GetMessage () Retrieve the “alternative” message , filtering messages of type with same corresponding ConversationId as the Rejection document.TestAssertion () Verify that it is not a ‘Quote’ message.. exit Test Case with a result of “fail” if it is. . If the TestAssertion operation returns a Boolean result of “false”, exit the Test Case with a final result of “fail”.

End Thread

WhenFalse Not a RejectionContinue ()“Continue” to next Test Operation. Explicitly continue execution if the TestAssertion operation fails (i.e. do not exit the Test Case), because the response is an “Approval”.

OrJoin(thread_02, thread_03) Synchronize script execution to make sure that either an Approval or Rejection was successfully processed before doing proceeding to a final synchronization of the “Error Checking” thread.Join (thread_01) Synchronize script execution, proceeding after thread_01 completes, signifying that no Errors were generated. If thread_01 does not complete, exit the Test Case with a final state of “undetermined”, since test execution cannot proceed for an unknown reason.End Test Case End “main” execution Thread

4.2.3.1 Semantics of Execution for this Test Case:

The main Thread executes a simple Request for Quote request to the candidate business application.

Following the PutMessage test operation one sub-thread (thread_01) is invoked “in parallel” using the Split operation. This thread will check for any received error message over the 5 minutes that follow the start of the execution.

Next, the main Thread does a GetMessage test operation to retrieve any response message having the same ConversationId as the initial request..

Continued execution of the Test Case is predicated upon the successful retrieval of either an Approval or a Rejection message from the candidate application.

This can be expressed as two boolean expressions, whose true result causes the execution of a sub-thread of test operations (either Acceptance thread_02 or Rejection thread_03). Continued Test Case script execution is predicated upon the completion of thread_02 OR thread_03 ( via the OrJoin instruction). If one or the other completes, then script execution continues. Otherwise, the Test Driver exits with a final Test Case result of “undetermined”.

Lastly, a final Join operation verifies that thread_01 (the “error checking Thread”) completes. If thread_01 runs to completion, then the entire Test Case script has run to completion, and the final Test Case state is “pass”, since no further execution is possible.

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 72 of 447

1

1234567

89

1011121314151617181920

21

22

232425

26272829

303132

333435

363738394041

42434445

4647

23

Page 73: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

4.2.4 Final Test Case Result Rules

A Test Assertion may specify a particular action to be taken by the Test Driver, based upon its “true” or “false” result value. Such an action could be (1) exit test case on either “fail”, “pass”, or “undetermined”, (2) return from this thread (complete it), (3) continue to the next step in this thread. In case no action statement is specified for either boolean value of the Test Assertion, the following default rules apply:

The default action for a boolean value of “true” is “continue”.The default action for a boolean value of “false” is exit test case with a final result of “fail”)

The final outcome of a Test Case follows these rules:

   A final Test Case state of "pass" occurs when:

The Test Driver encounters an explicit "exit/pass" instruction from within a TestAssertionLogical Test Case execution proceeds from beginning to end without the Test Driver encountering:1) An explicit "exit/fail" or "exit/undetermined" instruction2) A system "exception" condition occurs (such as an HTTP timeout, network protocol error, or improper test scripting (e.g. an invalid XPath expression in a TestAssertion operation) that precludes continuation of Test Case execution.

   A final Test Case state of "fail" is given to a TestCase when:

a) A TestAssertion boolean operation returns a result of "false"  (default behavior) (i.e. it is assumed by default that a TestAssertion is a meaningful condition of conformance/interoperability that must pass. * Note however, that this default behavior can overridenoverridden by the test writer in such cases where a different meaning is given to the TestAssertion, such as when a TestAssertion verifies a "precondition" to further testing, in which case the test writer may wish to "exit" the Test Case with a final state of "undetermined".  Additionally, the test writer may wish to "continue" if the failed result of the TestAssertion is used to alter the flow of Test Case execution.

b) The Test Driver encounters an explicit "exit/fail" instruction within a TestAssertion operation.

   A final Test Case state of "undetermined" occurs when: a) The Test Driver encounters an explicit "exit/undetermined" instruction within a TestAssertion operation.b) A system "exception" condition occurs (such as an HTTP timeout, network protocol error, or improper test scripting (e.g. an invalid XPath expression in a TestAssertion operation) that precludes continuation of Test Case execution.

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 73 of 447

1

12345

6

789

1011

121314

1516

1718

19202122232425

2627

2829303132333435

3637

38394041424344

45

23

Page 74: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

4.3 The Test Script A Test Case is a workflow of Test Threads. Test Threads can be thought of as containers of test operations used to perform some specific testing function. For example, a Thread MAY be used to send a message, receive a response and evaluate the content of that message response (to test a single “business transaction activity”. Or, a Thread MAY be used as a container of other Threads (performing a higher-level role in testing “binary collaboration activity” between two parties.

Threads MAY contain a number of test operations, including message construction and transmission, message reception and evaluation, assertion testing and logic control operations. Section 8 provides the syntactic rules and semantic meaning of the XML schema used to define Test Cases and their Threads.

However, before introducing the technical details of the IIC Test Framework scripting language, it would be helpful to understand how Threads can be used in an abstract sense in 3 sample Test Cases:

4.3.1 Test Case #1: Basic Transaction Send/Receive within specified TimeToAcknowledge and TimeToPerform

This Test Case illustrates a typical “send/receive” testing scenario, in which time plays a critical role in determining whether the candidate business application “passes” or “fails”.

- The Test Driver (acting in the role of the “Buyer”) sends a Purchase Order document to the candidate business application (the “Seller”).

- The Seller MUST respond with a “business Acknowledgment message” within 120 seconds. - Lastly, either a Confirmation or Rejection message must be received by the Test Driver within

180 seconds of sending the Purchase Order message.- Test Driver then sends a Receipt Ack for the confirmation/rejection

Below is an abstract representation of how test Threads would be constructed and executed in a test script:

Test Case Begin “main” execution Thread

PutMessage() Send a message containing a Purchase Order attachment

Split (thread_01)

Sleep(180) Fork a “sleep” Thread that waits for 3 minutes …

Split (thread_02)

GetMessage() Concurrently check for a business Acknowledgment response

TestAssertion Verify that message is an 'ReceiptAcknowledgment with a Purchase order Reference corresponding to the ConversationId'. If the TestAssertion operation returns a Boolean result of “false”, exit the Test Case with a final result of “fail”.

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 74 of 447

1

1234567

89

1011

121314

15

1617

181920212223242526

272829

303132

33

34

35

36

37

3839

40

41

42

43

44

45

4647

23

Page 75: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

4.3.2

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 75 of 447

1

123

4

5678

9

1011

12

13141516171819202122232425262728

29303132

23

Page 76: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

Part II: Test Suite Representation

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 76 of 447

1

1

2

23

Page 77: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

5 Test Suite

5.1 Conformance vs. Interoperability Test Suite

We distinguish two types of test suites, which share similar document schemas and architecture components, but serve different purposes:

Conformance Test Suite. The objective is to verify the adherence or non-adherence of a Candidate Implementation to the target specification. The test harness and Test Cases will be designed around a single (candidate) implementation. The suite material emphasizes the target specification, by including a comprehensive set of Test Requirements, as well as a clear mapping of these to the original specification (e.g. in form of an annotated version of this specification).

Interoperability Test Suite. The objective is to verify that two implementations (or more) of the same specification, or that an implementation and its operational environment, can interoperate according to an agreement or contract (which is compliant with the specification, but usually restricts further the requirements). These implementations are assumed to be conforming (i.e. have passed conformance tests or have achieved the level of function of such tests), so the reference to the specification is not as important as in conformance. Such a test suite involves two or more Candidate Implementations of the target specification. The test harness and Test Cases will be designed in order to drive and monitor these implementations.

A conformance test suite is composed of:

One or more Test Profile documents (XML). Such documents represent the level or profile of conformance to the specification, as verified by this Test Suite.Design of a Test Harness for the Candidate Implementation that is based on components of the ebXML IIC Test Framework.A Test Requirements document. This document contains a list of conformance test assertions that are associated with the test profile to be tested.An annotation of the target specification, that indicates the degree of Specification Coverage for each specification feature or section, that this set of Test Requirements provides.A Test Suite document. This document implements the Test Requirements, described using the Test Framework material (XML mark-up, etc.)

An Interoperability Test Suite is composed of:

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 77 of 447

1

1

2

3

4

56

7

89

101112

131415161718192021

222324

2526272829303132333435

363738

3940

23

Page 78: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

One or more Test Profile documents (XML). Such documents represent a set of features specific to a particular functionality, represented in a Test Suite through Test Cases that only test those particular features, and hence, that profile.Design of a Test Harness for two or more interoperating implementations of the specification that is based on components of the ebXML Test Framework.A Test Requirements document. This document contains a list of test assertions associated with this profile (or level) of interoperability.A Test Suite document. This document implements the Test Requirements, described using the Test Framework material (XML mark-up, etc.)

5.2 The Test Suite Document

5.3

The Test Suite XML document is a collection of Test Driver configuration data, documentation and executable Test Cases. Test Suite Metadata provides documentation used by the Test Driver to generate a Test Report for all

executed Test Cases.Test Driver Configuration data provide basic Test Driver parameters used to modify the configuration of

the Test Driver to accurately perform and evaluate test results. It also contains configuration data for the candidate ebXML implementation(s).

Message data is a collection of pre-defined XML payload messages that can be referenced for inclusion in an ebXML test message.

Test Cases are a collection of discrete Threads. Each Thread can execute any number of test Operations (including sending, receiving, and examining returned messages). An ebXML Test Suite document MUST validate against the ebTest.xsd file in Appendix C.

Message Payloads provide XML and non-XML content for use as material for test messages, as well as message data for Test Services linked to the Test Driver.

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 78 of 447

1

123456789

1011

12

13

14

1516171819202122232425262728

29

30

31

32

23

Page 79: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

Figure 12 – Graphic representation of basic view of TestSuite schema

Figure 19 - Graphic representation of basic view of TestSuite schema

Definition of Content

Below is one of themanythe many similar tables found throughout this document to describe the XML content represented by the graphical schemas like the one above. The meaning of each column in the tables is described below:Namebelow: Name: The name of the XML element or attribute

Description: A semantic description of that XML element or attribute

Default Value: What the “default” value is for any XML content supplied by the Test Driver

Schema Required or Optional: Whether or not the content MUST be supplied by the test writer (i.e. to validate against the Test Suite XML schema), or is optional

Test Driver Exception Condition: REQUIRED exception that must be thrown by the Test Driver if XML content prohibits execution

Name Description Default Value

Schema Required or Optional

Test Driver Exception Condition

TestSuite Container for all configuration, documentation and tests

Required

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 79 of 447

1

1

3

4

5

6

789

10

11

1213

1415

16

23

Page 80: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

configurationGroupRef Reference ID of the ConfigurationGroup data used to configure theTestthe Test Driver (in connection mode) or Test Service/MSH ( when in service mode)

Required ConfigurationGroup not found

Metadata Container for general documentation of the entire Test Suite

Required

ConfigurationGroup Container for Test Driver configuration instance data

Optional

ThreadGroup Container for “global” Threads that MAY be referenced by any Test Case in thsthe Test Suite

Optional

TestServiceConfigurator Container for Test Service configuration instance data

Required Unable to configure Test Service (non-fatal)

Message Container element for “wildcard” message content (i.e. any well-formed XML content)

Optional

TestCase Container for an individual Test Case

Required

Table 4 provides a list of TestSuite element and attribute contentTable 10 – A list of TestSuite element and attribute content

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 80 of 447

1

12

3

4

5

6

23

Page 81: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

5.3.1 Test Suite Metadata

Documentation for the ebXML MS Test Suite is done through the Metadata element. It is a container element for general documentation.

Figure 13 – Graphic representation of expanded view of the Metadata elementFigure 20 - Graphic representation of expanded view of the Metadata element

Definition of Content

NameDescription Default

ValueSchema Required or Optional

Test Driver Exception Conditions

TitleBrief title of the Test Suite Required

DescriptionGeneral description of the Test Suite

Required

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 81 of 447

1

1

2

34

5

6

78

910

11

12

13

14

15

23

Page 82: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

VersionVersion identifier for Test Suite

Required

MaintainerName of person(s) maintaining the Test Suite

Required

Location URL or filename of this test suite

Required

PublishDate Date of publication Required

Status Status of this test suite Required

Table 5 provides a list of Metadata element and attribute contentTable 11 - A list of Metadata element and attribute content

5.3.2 The ConfigurationGroup

The ConfigurationGroup element contains configuration data for both the Test Driver as well as modifying the content of test messages constructed by the Test Driver (when in “connection” mode) or message declarations passed to the Test Service (when in “service” mode).

ConfigurationGroups may be referenced throughout a Test Suite, in a hierarchical fashion. By default, a “global” ConfigurationGroup is required for the entire Test Suite, and MUST be referenced by the TestSuite element in the Executable Test Suite document. This established a “base” configuration for the Test Driver.

Subsequent re-configurations of the Test Driver may be done at the Test Case and Thread levels of the test object hierarchy. At each level, a reference to a ConfigurationGroup via the “configurationGroupRef” attribute takes precedence and defines the Test Driver configuration for the current test object and any “descendent” test objects (e.g. any Test Cases and sub-Threads will inherit the Test Driver configuration defined by their parent Thread). Logically, when workflow control of the Test Case returns to a higher level in the object hierarchy, then the ConfigurationGroup defined at that level again takes precedence over any defined at a lower level by a descendent test object.

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 82 of 447

1

12

3

4

5

678

9101112

13141516171819

20

21

22

23

23

Page 83: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 83 of 447

1

1

223

Page 84: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

Figure 21 - Graphic representation of expanded view of the ConfigurationGroup element

Figure 14 – Graphic representation of expanded view of the ConfigurationGroup element

Definition of Content

NameDescription Default

ValueSchema Required or Optional

Test Driver Exception Condition

ConfigurationGroupContainer Test Driver/MSH configuration data

Required

idUnique URI used to identify this set of configuration data

Required

ModeOne of two types for the Test Driver, (service | connection)

Required

StepDuration Timeout (in seconds) of a message send or receive operation

Required

Transport Directs the Test Driver as to which transport protocol to use to carry messages.

Required Transport not supported

Envelope Directs the Test Driver as to which Messaging envelope type it is constructing

Required Envelope type not supported

StoreAttachments Toggle switch directing Test Driver to ignore (false) or store (true) incoming message attachments

Required

ValidationType Default type of message (or payload) validation (XMLSchema or Schematron)

Required

XMLDSIG Boolean flag indicating whether Test Suite employs XML Digital SiContainer for Test Driver digital signature configurationgnatures

OptionalRequired

XMLDSIG not supported

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 84 of 447

1

1

2

3

4

5

6

7

23

Page 85: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

KeystoreFileURI Location of keystore file to be used by all Test Cases (unless explicitly overridden for that operation)

Required

KeystoreType Type of keystore (jks | pkcs12) to be used for all DSignEnvelope and DSignPayload operations (unless explicitly overridden for that operation)

Required

KeystorePassword

To be used for all DSignEnvelope and DSignPayload operations (unless explicitly overridden for that operation)

Required

KeystoreAlias To be used for all DSignEnvelope and DSignPayload operations (unless explicitly overridden for that operation)

Required

KeystoreAliasPassword

To be used for all DSignEnvelope and DSignPayload operations (unless explicitly overridden for that operation)

Optional

MutatorType Default type of message (or payload) mutation to be used with this Test Suite (XSLT or XUpdate)

Required

SetParameterContainer for ”ad-hoc” name/value pair used by the Test Driver for configuration or possibly for message payload content construction

Optional

Name Name for the ConfigurationItem Required

ValueValue of the ConfigurationItem Optional

NamespacesContainer for namespace name/value pairs used to define namespaces used in XPath queries of message filter operations. All namespaces used in XPath queries MUST be defined in this configuration group.

Optional

NamespaceName/value pair container Required

NameThe namespace prefix (without colon) Required

ValueThe URI of the namespace Required

ParameterRefName of previously defined parameter, whose value is substituted for the value of this parameter

Optional

Table 6 provides a list of ConfigurationGroup element and attribute contentTable 12 - A list of ConfigurationGroup element and attribute content

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 85 of 447

1

12

23

Page 86: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 86 of 447

1

1

23456

23

Page 87: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 87 of 447

1

1

23

Page 88: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

Figure 15 – Graphic representation of hierarchical use of the ConfigurationGroup via reference at TestSuite, TestCase and ThreadRef Thread levels in the test object hierarchyFigure 22 - Graphic representation of hierarchical use of the ConfigurationGroup via reference at TestSuite, TestCase and ThreadRef Thread levels in the test object hierarchy

5.3.2.1 Precedence Rules for Test Driver/MSH configuration parameters used in message construction

In order to generate messages correctly, the Test Driver MUST follow the precedence rules for interpreting a Configuration Group parameter reference. The precedence rules are:

Certain portions of a message are auto-generated by the Test Driver (or MSH) at run-time

This includes the following run time generated parameters:

ConversationId – Unique to each new Test CaseMessageId – Unique to each message generated by the PutMessage instructionTimestamp - Unique to each message generated by the PutMessage instruction

These run time parameters MUST have the names specified above (case sensitive).

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 88 of 447

1

12

3456

78

9

101112

1314

1516

1718192021

2223

23

Page 89: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

Additional message content MAY be provided through parameter definitions in the current ConfigurationGroup, or through a SetParameter or SetXPathParameter test operation within a Thread. This includes message content such as:

CPA IdServiceActionSender Party IdReceiver Party Id

The parameters listed above can be given any parameter name the test writer chooses. However, the test writer MUST reference the parameter in XSLT mutator stylesheets, or in XPath expressions using the identical name (case sensitive) with which it was defined using the SetParameter instruction.

The following rule describes how a Test Driver MUST interpret parameter values and their precedence of assignment within a Test Suite.

The TestSuite element’s “configurationGroupRef” attribute points to the global parameter definition for the entire Test Suite. This acts as the “base” parameter definition before Test Suite execution begins.Parameters MAY be used by an XSL stylesheet or XUpdate document to “mutate” a Declaration into a valid message. They are passed to the XSL or XUpdate processor via name reference.Parameters MAY be used by the VerifyContent test operation through reference in an XPath expression. Parameter names are referenced in XPath expressions with a preceding “$” character. The Test Driver MUST dereference the parameter prior to performing an XPath query on a FilterResult document object.If a parameter is defined in a ConfigurationGroup or via a SetParameter test operation, the parameter definition takes precedence over any “auto-generated” definition of that parameter by the Test Driver. Care should be taken to only “override” such values at the TestCase or Thread Thread level, so that “side effects” are not passed on through the Test Suite object hierarchy (i.e. influencing message construction beyond the scope of the Thread that is intended).Any descendent Thread element with a “configurationGroupRef” attribute “redefines” a parameters value for itself and any of its descendent Threads (i.e. it limits the scope of the parameter definition to all of its descendents only).Any “SetParameter” instruction within a TestCase or Thread element supersedes its current definition within the currently defined ConfigurationGroup. The scope of the parameter definition is limited to the current Thread and any descendent Threads. .

5.3.2.1.1 Test Driver Parameter Exception Conditions

A Test Driver MUST generate an exception and terminate the Test Case with a result of “undetermined” if it cannot mutate a message due to an undefined parameter.

A Test Driver MUST generate an exception and terminate the Test Case with a result of “undetermined” if it cannot verify a message due to an undefined parameter in an XPath query.

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 89 of 447

1

12345

6789

1011

12131415

161718

19202122232425262728293031323334353637

38

39

40414243

444546

47

23

Page 90: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

5.3.3 The ThreadGroup

The ThreadGroup element contains “global” Thread declarations (useable by all Test Cases in the Test Suite). Such a group permits reusabliltyreusability of common testing operations, such as a commonly used conversation initiation message request and response. Threads are explained in detail in section 7.1.1.

Figure 16 – Graphic representation of ThreadGroup contentFigure 23 - Graphic representation of ThreadGroup content

NameDescription Default

ValueSchema Required or Optional

Test Driver Exception Condition

ThreadGroupContainer for Thread declarations available for use by any Test Case via reference call

ThreadIndividual container of a Thread declaration

ThreadGroupestServiceConfigurator Container for Thread script

definitions, available globally (via name reference) to Test Suite

Optional

Table 7 – ThreadGroup content descriptionTable 13 - ThreadGroup content description

5.3.4 The TestServiceConfigurator Test Operation

The TestServiceConfiguratorion element instructs the Test Driver to configure the Test Service. A Test Service MUST provide both a Configuration interface to the Test Driver, with a “configurator” method, like that specified in section 3.2.5. The Test Driver MAY access the Configuration interface either locally or remotely (via RPC), depending upon the mode of the Test Driver

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 90 of 447

1

1

23456

7

89

1011

1213

14

15

16

1718192021

2223

23

Page 91: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

Figure 16 – Graphic representation of the TestServiceConfigurator contentFigure 24 - Graphic representation of the TestServiceConfigurator content

NameDescription Default

ValueSchema Required or Optional

Test Driver Exception Condition

TestServiceConfigurator Container for Test Service

configuration dataRequired (as a child of a TestSuite element only), optional elsewhere

Unable to configure Test ServiceTest Service Configuration Failed

ServiceModeSwitch to set to one of three modes (loop | local-reporting | remote-reporting)

Required

ResponseURLEndpoint to send response messages

Required

NotificationURLEndpoint to send message and error notifications (typically the Test Driver URL)

Required

PayloadDigestsContainer for one or more payload identifiers and corresponding MD5 digest value

Optional

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 91 of 447

1

12

34

56

23

Page 92: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

PayloadContainer for individual payload information

Required

IdId of the message payload Required

DigestMD5 digest value of the payload

Required

Table 8 – ConfigurationGroup content descriptionTable 14 - ConfigurationGroup content description

5.3.4.1 TestServiceConfigurator behavior in Connection and Service mode

In Connection Mode: The “TestServiceConfigurator” test operation instructs the Test Driver to pass configuration parameters to a remote Test Service Configuration interface, using its “configurator” method. The Test Service MUST respond with a success status of “true” or “false”.

In Service Mode: The “TestServiceConfigurator” test operation instructs the Test Driver to pass configuration parameters to the local Test Service via its Configuration interface, and its “configurator” method. The Test Service MUST respond with a success status of “true” or “false”.

5.3.5 “Inlined” Message Content

5.3.6

XML Message content MAY be included in the Test Suite document, and referenced via ID. This is particularly useful for message content that is used repeatedly throughout the Test Suite. Message content is stored as a child of the TestSuite element, and is represented below:

Figure 25 - Graphic view of Message element content

NameDescription Default

ValueSchema Required or Optional

Test Driver Exception Condition

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 92 of 447

1

12

3

4

5678

910111213

14

15

16

17181920

21

2223

24

23

Page 93: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

MessageContainer for Test Service configuration data

Optional

idUnique identifier of this message content, to be referred to by Test Cases wishing to re-use this content

Required

#wildcardAny XML content is acceptable to declare a message

#wildCardAny well-formed XML content that can be used to define a message

Required

Table 9 – Message element content description

Table 15 Content description for message content

Test Cases

5.3.7 Test Cases

The majority of the Test Suite content will consist of actual Test Cases. Each Test Case contains the instructions to the Test Driver to construct, send, receive and evaluate messages. The choreograph of this exchange may also involve forking concurrent Threads of test operations and conditional branching . The details of all possible Test Case operations is explained in section 8.

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 93 of 447

1

1

2

3

4

5678

9

10

1112131415

16

23

Page 94: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

Figure 26 - Graphical representation of the TestCase element content

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 94 of 447

1

12

345

23

Page 95: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

6 Test Requirements

6.1 Purpose and Structure

The firstnext step in designing a test suite is to define Test Requirements. This material, when used in a conformance-testing context, is also called Test Assertions in NIST and OASIS terminology (see definition in glossary in Appendix). When used for conformance testing, each Test Requirement defines a test item to be performed, that covers a particular requirement of the target specification. It rewords the specification element into a “testable form”, closer to the final corresponding Test Case, but unlike the latter, independently from the test harness specifics. In the ebXML Test Framework, a Test Requirement will be made of three parts:

Pre-condition The pre-condition defines the context or situation under which this test item applies. It should help a reader understand in which case the corresponding specification requirement applies. In order to verify this Test Requirement, the test harness will attempt to create such a situation, or at the very least to identify when it occurs. If for some reason the pre-condition is not satisfied when doing testing, then it does not mean that the outcome of this test is negative – only that the situation in which it applies did not occur. In that case, the corresponding specification requirement could simply not be validated, and the subsequent Assertion will not be tested.

Assertion The assertion actually defines the specification requirement, as usually qualified by a MUST or SHALL keyword. In the test harness, the verification of an assertion will be attempted only if the pre-condition is itself satisfied. When doing testing, if the assertion cannot be verified while the pre-condition was, then the outcome of this test item is negative.

Requirement Level Qualifies the degree of requirement in the specification, as indicated by such keywords as RECOMMENDED, SHOULD, MUST, and MAY. Three levels can be distinguished: (1) “required” (MUST, SHALL), (2) “recommended” ([HIGHLY] RECOMMENDED, SHOULD), (3) “optional” (MAY, OPTIONAL). Any level lower than “required” qualifies a Test Requirement that is not mandatory for Conformance testing. Yet, lower requirement degrees may be critical to interoperability tests. The test requirement level can be override by explicit declaration in the Test Profile document, in case a lower or higher level is required.

6.2 The Test Requirements Document

The Test Requirements XML document provides metadata describing the Testing Requirements, their location in the specification, and their requirement type (REQUIRED, HIGHLY RECOMMENDED, RECOMMENDED, or OPTIONAL). A Test Requirements XML document MUST validate against the ebXMLTestRequirements.xsd file found in Appendix B. The ebXML MS Conformance Test Requirements instance file can be found in Appendix E.

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 95 of 447

1

1

2

3

456789

1011

1213141516171819

2021222324

2526272829303132

33

34

353637383940

41

23

Page 96: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 96 of 447

1

1

2

23

Page 97: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

Figure 17 – Graphic representation of ebXMLTestRequirements.xsd schemaFigure 27 - Graphic representation of ebXMLTestRequirements.xsd schema

Definition of Content

Name Description Default Value

Schema Required or Optional

Test Driver Exception Condition

Requirements Container for all test requirements Required

MetaData Container for requirements metadata, including Description, Version, Maintainer, Location, Publish Date and Status

Required

TestRequirement Container for all testable sub-requirements (FunctionalRequirements) of a single generalized Test Requirement. A TestRequirement may also contain other TestRequirement elements as children

Required

description Description of requirement Required

idUnique identifier for each Test Requirement

Required

name Name of test requirement Required

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 97 of 447

1

123

456

7

23

Page 98: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

specRef Pointer to location in specification where requirement is found

Required

functionalTypeGeneric classification of function to be tested

Required

dependencyRefID of “prerequisite” TestRequirement or FunctionalRequirement that must be successfully tested prior to testing this requirement

Optional

FunctionalRequirementSub-requirement for the main Test Requirement. This is an actual testable requirement, not a “container” of requirements.

Required

id Unique ID for the sub-requirement Required

name Short descriptor of Functional Requirement

Required

specRef Pointer to location in specification where sub-requirement is found

Required

dependencyRefID of “prerequisite” TestRequirement or FunctionalRequirement that must be successfully tested first prior to testing this requirement

Optional

TestCaseId Identifier of Test Case(s) that test this requirement

Optional

Clause Grouping element for Condition expression(s)

Optional

Condition Textual description of test precondition Required

ConditionRef Reference (via id attribute) to existing Condition element already defined in the Test Requirements document

Optional

And/Or Union/Intersection operators for Conditions

Optional

Assertion Axiom expressing expected behavior of an implementation under conditions specified by any Clause

Required

reuirementType One of the enumerated types: (required | strongly recommended | recommended | optional)

id Unique ID of the Assertion within the test requirements document

AssertionRef Reference (via id attribute) to existing Assertion element already defined in the Test Requirements document

Optional

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 98 of 447

1

23

Page 99: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

requirementTypeEnumerated Assertion descriptor (REQUIRED, OPTIONAL…etc.)

Required

Table 7 provides a list of the testing Requirements element and attribute contentTable 16 - A list of the testing Requirements element and attribute content

6.3 Specification Coverage

A Test Requirement is a formalized way to express a requirement of the target specification. The reference to the specification is included in each Test Requirement, and is made of one or more section numbers. There is no one-to-one mapping between sections of a specification document and the Test Requirement items listed in the test material for this specification:

A specification section may map to several Test Requirements.A Test Requirement item may also cover (partially or not) more than one section or sub-section.

A Test Requirement item may then cover a subset of the requirements that are specified in a section.For these reasons, it is important to determine to which degree the requirements of each section of a specification, are fully satisfied by the set of Test Requirements listed in the test suite document. Establishing the Specification Coverage by the Test Requirements does this.

The Specification Coverage document is a separate document containing a list of all sections and subsections of a specification document, each annotated with:

· A coverage qualifier.· A list of Test Requirements that map to this section.

The coverage qualifier may have values:

· Full: The requirements included in the specification document section are fully covered by the associated set of Test Requirements. This means that if each one of these Test Requirements is satisfied by an implementation, then the requirements of the corresponding document section are fulfilled. When the tests requirements are about conformance: The associated set of test requirement(s) are a clear indicator of conformance to the specification item, i.e. if a Candidate Implementation passes a Test Case that implements this test requirement(s) in a verifiable manner, there is a strong indication that it will behave similarly in all situations identified by the spec item.

· None: This section of the specification is not covered at all. Either there is no associated set of Test Requirements, or it is known that the test requirements cannot be tested even partially, at least with the Test Framework on which the test suite is to be implemented, and under the test conditions that are defined.

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 99 of 447

1

12

3

4

5

6

7

89

101112

131415

1617181920

212223

242526

2728

293031323334353637

3839404142

43

23

Page 100: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

· Partial: The requirements included in this document section are only partially covered by the associated (set of) Test Requirement(s). This means that if each one of these Test Requirements is satisfied by an implementation, then it cannot be asserted that all the requirements of the corresponding document section are fulfilled: only a subset of all situations identified by the specification item are addressed. Reasons may be:

o (1) The pre-condition(s) of the test requirement(s) ignores on purpose a subset of situations that cannot be reasonably tested under the Test Framework.

o (2) The occurrence of situations that match the pre-condition of a Test Requirement is known to be under control of the implementation (e.g. implementation-dependent) or of external factors, and out of the control of the testbed. (See contingent run-time coverage definition, Section 7).

When the tests requirements are about conformance: The associated set of test requirement(s) are a weak indicator of conformance to the specification item. A negative test result will indicate non-conformance of the implementation.

6.4 Test Requirements Coverage (or Test Run-Time Coverage)

In a same way as Test Requirements may not be fully equivalent to the specification items they represent (see Specification Coverage, Section 5.3), the Test Cases that implement these Test Requirements may not fully verify them, for practical reasons.

Some Test Requirements may be difficult or impossible to verify in a satisfactory manner. The reason for this generally resides in an inability to satisfy the pre-condition. When processing a Test Case, the Test Harness will attempt to generate an operational context or situation that intends to satisfy the pre-condition, and that is supposed to be representative enough of real operational situations. The set of such real-world situations that is generally covered by the pre-condition of the Test Requirement is called the test requirements (or test run-time) coverage of this test Requirement. This happens in the following cases:

Partial run-time coverage: It is in general impossible to generate all the situations that should verify a test. It is however expected that the small subset of run-time situations generated by the Test Harness, is representative enough of all real-world situations that are relevant to the pre-condition. However, it is in some cases obvious that the Test Case definition (and its processing) will not generate a representative-enough (set of) situation(s). It could be that a significant subset of situations identified by the pre-condition of a Test Requirement cannot be practically set-up and verified. For example, this is the case when some combinations of events or of configurations of the implementation will not be tested due to the impracticality to address the combinatorial nature of their aggregation. Or, some time-related situations cannot be tested under expected time constraints.

Contingent run-time coverage: It may happen that the test harness has no complete control in producing the situation that satisfies the pre-condition of a Test Requirement. This is the case for Test Requirements that only concern optional features that an implementation may or may not decide to exhibit, depending on factors under its own control and that are not understood or not easy to control by the test developers. An example is: “ IF the implementation chooses to bundle together messages [e.g. under some stressed operation conditions left to the appreciation of this implementation] THEN the bundling must satisfy condition XYZ”.

When a set of Test Cases is written for a particular set of Test Requirements, the degree of coverage of these Test Requirements by these Test Cases SHOULD be assessed. The Test Requirements coverage

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 100 of 447

1

12345

6789

101112131415

16

17

18192021

2223242526272829

30313233343536373839

4041424344454647

484950

23

Page 101: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

– not to be confused with the Specification Coverage - is represented by a list of the Test Requirements Ids, which associates with each Test Requirement:

The Test Case (or set of Test Cases) that cover it, The coverage qualifier, which indicates the degree to which the Test Requirement is covered.

The coverage qualifier may have values:

· Full: the Test Requirement item is fully verified by the set of Test Cases. · Contingent: The run-time coverage is contingent (see definition).· Partial: the Test Requirement item is only partially verified by the associated set of Test

Cases. The run-time coverage is partial (see definition).· None: the Test Requirement item is not verified at all: there is no relevant Test Case.

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 101 of 447

1

12

345

6789

10

111213141516

17

23

Page 102: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

7 Test Profiles

7.1 The Test Profile Document

The Test Profile document points to a subset of Test Requirements (in the Test Requirements document), that is relevant to the conformance or interoperability profile to be tested. The document drives the Test Harness by providing the Test Driver with a list of unique reference IDs of Test Requirements for a particular Test Profile. The Test Driver reads this document, and executes all Test Cases (located in the Test Suite document) that contain a reference to each of the test requirements. A Test Profile driver file MUST validate against the ebXMLTestProfile.xsd file found in Appendix A. A Test Profile example file can be found in section 10.2.

Figure 18 – Graphic representation of ebXMLTestProfile.xsd schemaFigure 28 - Graphic representation of ebXMLTestProfile.xsd schema

Definition of Content

Name Description Default Value

Schema Required or Optional

Test Driver Exception Condition

TestProfile Container for all references to test requirements

Required

requirementsLocation URI of test requirements XML file Required Requirements document not found

name Name of profile Required

description Short description of profile Required

Dependency Prerequisite profile reference container

Optional

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 102 of 447

1

1

2

3

456789

1011

12

13

1415

161718

19

23

Page 103: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

name Name of the required prerequisite profile

Required

profileRef Identifier of prerequisite profile to be loaded by Test Driver before executing this one

Required Profile document not found

TestRequirementRef Test Requirement reference Required

idUnique Identifier of Test Requirement, as defined in the Test Requirements document

Required

requirementType Override existing requirement type with enumerated type of (REQUIRED, OPTIONAL, STRONGLY RECOMMENDED or RECOMMENDED)

Optional

Comment Profile author’s comment for a particular requirement

Optional

Table 8 provides a list of TestProfile element and attribute contentTable 17 - A list of TestProfile element and attribute content

7.2 Relationships between Profiles, Requirements and Test Cases

Creation of a testing profile requires selection of a group of Test Requirement references that fulfill a particular testing profile. For example, to create a testing profile for a Core Profile would require the creation of an XML document referencing Test Requirements 1,2,3,4,5 and 8.

The Test Driver would read this list, and select (from the Test Requirements Document) the corresponding Test Requirements (and their “sub” Functional Requirements). The Test Driver then searches the Executable Test Suite document to find all Test Cases that “point to” the selected Functional Requirements. If more than one Test Case is necessary to satisfactorily test a single Functional Requirement (as is the case for Functional Requirement #1) there may be more than one Test Case pointing to it. The Test Driver would then execute Test Cases #1, #2 and #3 in order to fully test an ebXML application against Functional Requirement #1.

The only test material outside of the three documents below that MAY require an external file reference from within a Test Case are large, or non-XML message Payloads

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 103 of 447

1

12

3

4

5678

910111213141516

171819

2021222324252627

23

Page 104: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

Figure 19 – Test Framework documents and their relationshipsFigure 29 - Test Framework documents and their relationships

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 104 of 447

Test Profile XML Document

TestRequirementRef #1 (Validation)TestRequirementRef #2 (Packaging)TestRequirementRef #3 (Core Extension Elements)TestRequirementRef #4 (Error Handling)TestRequirementRef #5 (SyncReply)

Test Requirements XML Document

Test Requirement #1 (Validation)Functional Requirement #1 ( Valid

MessageHeader content )Functional Requirement #2 ( Valid

Acknowledgment content )Functional Requirement #3 ( Valid Signature

content )

Test Requirement #2 (Packaging)Functional Requirement #4 ( SOAP message

in root of MME doc )Functional Requirement #5 ( MIME message

type is “text/xml” )Functional Requirement #6 ( MIME ‘start’

header is present )…

Test Requirement #3 (Core Extension Elements)Test Suite XML Document

Test Driver Configuration Data

XML Payloads

Test CasesTest Case #1 (Test Valid “To content)Test Case #2 (Test Valid “From content)Test Case #3 (Teset Valid ‘MessageData” content) …

Message

1

123456789

10

111213

14

15

16

17

18

19

20

21

22

23

24

252627

28

29

3031323334353637

38

39

40

41

42

4344

23

Page 105: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 105 of 447

1

123

4

23

Page 106: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

8 Test Cases

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 106 of 447

1

1

23

23

Page 107: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

8.1 XML Test Cases provide the instructions to the Test Driver to execute conformance or interoperability testing against candidate implementations. Test Cases provide the context for constructing, sending, receiving and evaluating message content. The final outcome of the Test Case is based upon the logical outcome of these operations (and is described in section 4.2.4 of this document).Execution of a Test Case and Test Case Results

8.2

8.3 A Test Case is a workflow of Test Threads. Test Threads can be thought of as containers of test operations used to perform some specific testing function. For example, a Thread MAY be used to send a message, receive a response and evaluate the content of that message response (to test a single “business transaction activity”. Or, a Thread MAY be used as a container of other Threads (performing a higher-level role in testing “binary collaboration activity” between two parties.

8.4

8.5 Threads MAY contain a number of test operations, including message construction and transmission, message reception and evaluation, assertion testing and logic control operations. Section 8 provides the syntactic rules and semantic meaning of the XML schema used to define Test Cases and their Threads.

8.6

8.7 However, before introducing the technical details of the IIC Test Framework scripting language, it would be helpful to understand how Threads can be used in an abstract sense in 3 sample Test Cases:

8.8

8.9 Test Case #1: Basic Transaction Send/Receive within specified TimeToAcknowledge and TimeToPerform

8.10

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 107 of 447

1

12345678

9

1011121314151617

18

1920212223

24

25262728

29

3031

32

23

Page 108: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

8.11 This Test Case illustrates a typical “send/receive” testing scenario, in which time plays a critical role in determining whether the candidate business application “passes” or “fails”. The Test Driver (acting in the role of the “Buyer”) sends a Purchase Order document to the candidate business application (the “Seller”). The Seller MUST respond with an Acknowledgment signal message within 60 seconds of receiving the Purchase Order message. Additionally, the Seller MUST respond with a “business Acknowledgment message” within 120 seconds. Lastly, either a Confirmation or Rejection message must be received by the Test Driver within 180 seconds of sending the Purchase Order message.

8.12

8.13Below is a table illustrating (in an abstract way) how test Threads would be constructed and executed:

8.14Test Operation Argument(s) Description

Thread name='main'

PutMessage Send a message containing a Purchase Order attachment

Test Operation Argument(s) Description

Thread name='main'

PutMessage Send a message containing a Purchase Order attachment

Split Fork a “sleep” Thread that waits for 3 minutes

Thread name='thread_01'

Sleep time=’180’ Sleep for 180 seconds

End Thread

End Split

Split Concurrently check for a signal Acknowledgment

Thread name='thread_02'

GetMessage Retrieve ebXML MS Acknowledgment

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 108 of 447

1

123456789

101112

13

1415

16

23

Page 109: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

Assertion Verify that Receipt Acknowledgment occured within specified 'TimeToAcknowledge of 60 seconds'

End Thread

End Split

Split Concurrently check for a business Acknowledgment

Thread name='thread_03'

GetMessage Retrieve business Acknowledgment

Assertion

Verify that message is an 'ReceiptAcknowledgment with a Purchase order Reference corresponding to the ConversationId'

Assertion

Verify that Receipt Acknowledgment occured within specified 'TimeToAcknowledgeReceipt'Period of 120 seconds

End Thread

End Split

Join name=’thread_01’name=’thread_02’name=’thread_03’

Make sure that both messaging and business Acknowledgments were received, and that 180 seconds have passed since the Purchase Order message was sent

GetMessage Retrieve Response message(s)

Assertion Verify that result contains either a single Confirmation or Rejection

Assertion Verify that the Confirmation/Rejection message was sent

PutMessage Send a signal Acknowledgment

End Thread

Table 9 – Abstract representation of Test Case Thread execution flow

Semantics of Thread Execution:

A “main” Thread is invoked, which contains two sub-threads and their test operations. It is a RECOMMENDED practice that a “main” Thread be used to control execution of the entire Test Case. Within this main Thread, a “PutMessage” operation sends a Purchawe Order request to a candidate business applkcations. Also within this main Thread, three sub-threads (thread_01, 02 and 03) are

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 109 of 447

1

12

345

6789

10

23

Page 110: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

invoked “in parallel” using the Split operation. The first thread simply sleeps for 3 minutes, the second thread checks for the return of a messaging-level Acknowledgment message (which MUST be returned within 60 seconds of the Puchase Order Timestamp value). The Second Thread simultaneously checks for a business-level Acknowledgment message (which MUST be received within 120 seconds of the initial Purchase Order request Timestamp value)

Continued execution of the Test Case is predicated upon the successful completion of thread 01, 02 and 03 (which is determined by a successful “Join” teste operation). Any exception conditions, or TestAssertion operation failures in any of those Threads results in an immediate end to the Test Case, with a final Test Case state of “undetermined” or “fail” (respectively).

Assuming that Threads 01, 02 and 03 complete successfully, the Join (by default an “and join”) operation will continue Test Case exection. A final TestAssertion operationn is done to determine if a Confirmation or Rejection message was received by the Test Driver. If one or the other was received, then a final Acknowledgment signal is sent back to the “Seller” application and Test Case execution is complete.

Ultimately, The Test Case MUST evaluate to a value of “pass, fail, or undetermined”.

The Test Case has a final state of “pass” if:

The workflow executes to a normal conclusion. This normal conclusion can occur in 3 ways.The Test Case workflow executes to a successful conclusion without any system exceptions. In this case, that would mean i completing the final PutMessage operation (which sends a signal Acknowledgment message to the candidate business application) without generating any exceptions.An explicit “exit” statement is included with a TestAssertion operation, telling the Test Driver to exit with a final state of “pass” if either a boolean “true” or (possibly) a “false” result isreturned by that operation.

The Test Case has a final state of “fail” if:

(1) A TestAssertion result is “false”, and no explicit instruction to continue, or explicit exit instruction with a result of “pass” or “undetermined” is with that TestAssertion operation(i.e. this is the “default” behavior for a TestAssertion operation).l(2) The Test Driver is explicitly instructed to exit Test Case execution with a final Test Case result of “fail”, based upon the result of a TestAssertion operation. For example, if neither a “Confirmation” or “Rejection” message was received by the Test Driver, it would (by default) set the final Test Case state to “fail”, and immediately cease execution.

The Test Case has a final state of “undetermined” if:

A Test Driver exception condition (as defined for a particular individual test operation) occurs in the workflow. For example, a protocol error occurring in a PutMessage or GetMessage test operation will generate such an exception.

OR

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 110 of 447

1

12345

6789

10

1112131415

161718

1920

21222324252627

2829

3031323334353637

38394041

42434445

4647

48

23

Page 111: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

The last executed TestAssertion operation in the workflow explicitly sets the Test Case state to “undetermined”, at which point the Test Driver automatically ceases execution of the Test Case. A test writer MAY wish to set this type of exit condition if the TestAssertion operation is being used to determine if some “precondition” must be present prior to performing another Test Assertion that will ultimately determine the final Test Case result.

For example, if sending Acknowledgment signals was an “optional” feature of the Seller application, and no Acknowledgment was received by the Test Driver, it could set the final Test Case result to “undetermined”, since it was undetermined whether reliable messagingwas actually implemented by the Seller application, therefore no conclusive Test Case result could be made.

Test Case #2: Basic Error Error Handling Test Scenario

This Test Case illustrates a scenario in which an error message may be generated at any time in the business transaction. The Test Driver (acting in the role of the “Buyer”) sends a Purchase Order document to the candidate business application (the “Seller”). The Seller responds with an Acceptance or Rejection message. An error MAY occur at any point within 5 minutes of the initial Purchase Order request (either before, during or after receiving the Acceptance or Rejection response).

Below is a table illustrating (in an abstract way) how test Threads would be constructed and executed:

Test Operation Argument(s) Description

Thread name='main' Create main Thread

PutMessage Send a Purchase Order message

End Thread

Split

Thread name='thread_01'

GetMessage Get any received error messages

TestAssertion Verify no error message is present

End Thread

End Split

Thread name='thread_03'

GetMessage Retrieve response message

TestAssertion Verify Acceptance or Rejection message was returned

End Thread

Join name=’thread_01’

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 111 of 447

1

12345

6789

10

1112

13141516171819

2021

2223

23

Page 112: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

End Thread

Table 9 – Abstract representation of Test Case Thread execution flow

Semantics of Thread Execution:

A “main” Thread is invoked, which contains two sub-threads (01, 02 and 03) and their test operations. It is a RECOMMENDED practice that a “main” Thread be used to control execution of the entire Test Case. Within this main Thread, two sub-threads (thread_01_ and thread_02) are invoked “in parallel” using the Split operation. Thread_01 sends the Purchase Order message to the candidate application. Thread_02 “listens” for any incoming error messages.

Continued execution of the Test Case is predicated upon the successful finish of Thread_01 (no explicit exits or system exceptions). The Join test operation determines if thread_01 has completed. If it has, then execution continues with thread_03 (a GetMessage test operation which retrieves a business Acceptance or Rejection message).

Logical execution of the Test Case would continue based upon the result of this TestAssertion operation in thread_03. Generally, if a TestAssertion operation fails, Test Case execution ceases, and the Test Case final result is “fail”.

Assuming that thread_03’s TestAssertion operation “passes” (a business Acceptance or Rejection message is received), the next Join operation will hold execution of the Test Case until “thread_02” (which has been constantly checking for any error messages during execution of threads 01 and 03) completes. If that TestAssertion is true, then workflow will run to its logical conclusion, setting the final Test Case state to “pass”.

The Test Case has a final state of “pass” if:

The workflow executes to a normal conclusion. This normal conclusion can occur in 2 ways:

The Test Case workflow executes to a successful conclusion without any system exceptions or explicit TestAssertion operation exits. In this case, that would mean that thread_03 (verify Acceptance or Rejection) logically completed.A TestAssertion operation prematurely exits the workflow with an explicit exit statement, setting the final Test Case state to “pass”. This can be done from any TestAssertion operation, if the result of the TestAssertion determines the Test Case final result. That is not done in this particular Test Case.

the Test Case has a final state of “fail” if:

(1) A TestAssertion result is “false”, and no explicit instruction to continue, or explicit exit instruction with a result of “pass” or “undetermined” is provided in the Test Case script (i.e. this is the “default” behavior for a TestAssertion operation).l(1) The Test Driver is instructed to “exit” with a final Test Case result of “fail”, based upon the result of a TestAssertion operation. For example, if an error message was received by the Test Driver at any time in thread_03, it would set the final Test Case state to “fail”, and cease execution, regardless of whether thread_02 (check for Acceptance/Rejection message) had completed.

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 112 of 447

1

12

34

56789

10

1112131415

16171819

202122232425

262728

2930

31323334353637

3839

4041424344454647

23

Page 113: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

The Test Case has a final state of “undetermined” if:

A Test Driver exception condition (as defined for a particular individual test operation) occurs in the workflow. For example, a protocol error occurring in a PutMessage or GetMessage test operation will generate such an exception.

OR

The result of a TestAssertion operation is set to “undetermined”, at which point the Test Driver automatically ceases execution of the Test Case. A test writer MAY wish to set this exit condition if the TestAssertion operation is being used to determine if some “precondition” is present prior to performing another TestAssertion that will determine the final Test Case result. If such a precondition is not present, then there is no way to conduct the test with confidence in the result, therefore the final state of the Test Case is set to “undetermined”

Test Case #3: Conditional Branching Scenario

This Test Case illustrates a scenario in branching of Test Case logic is dependent upon the outcome of a TestAssertion operation. The Test Driver (acting in the role of the “Buyer”) sends a Request for Quote document to the candidate business application (the “Seller”). The Seller responds with an Approval or Rejection message. An error MAY occur at any point after the initial of the initial Request for Quote, and must be caught by the Test Driver.

Below is a table illustrating (in an abstract way) how test Threads would be constructed and executed:

Table 11 – Abstract representation of Test Case Thread execution flow

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 113 of 447

1

123

4567

89

10111213141516

17181920212223242526272829303132

33343536373839

4041

42434445

23

Page 114: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

Test Operation Argument(s) Description

Thread name='main'

PutMessage Construct a basic message header with a Request for Quote

Split Run this Thread concurrently while all other test processing occurs

Thread name='thread_01'

GetMessage stepDuration=’300’ Get all received messages from the MessageStore

TestAssertion Verify No Error is present

End Thread name=’thread_01’

End Split

GetMessage Retrieve Response message

TestAssertion Verify that message is an 'Approval' message

WhenTrue If it is

Thread name='thread_02' Execute the Approval processing Thread

TestAssertion Validate approval document'

GetMessage Retrieve Quote message

TestAssertion Validate that message is a 'Quote'

PutMessage Send Approval of Quote message

End Thread name='thread_02'

End WhenTrue

TestAssertion Test if message is a Rejection message

WhenTrue If it is

Thread name='thread_03' Execute the Rejection processing Thread

GetMessage Retrieve response message

TestAssertion Verify that message is an 'alternative' to Acceptance or Rejection message

End Thread name='thread_03'

End WhenTrue

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 114 of 447

1

1

23

Page 115: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

Join name=thread_01 Make sure no errors have occurred during the transaction

End Thread name='main'

8.14.1.1 Semantics of Thread Execution:

A “main” Thread is invoked, which contains three sub-threads (01, 02 and 03) and their test operations. It is a RECOMMENDED practice that a “main” Thread be used to control execution of the entire Test Case

The main Thread executes a simple Request for Quote request to the candidate business application.

Following the PutMessage test operation one sub-thread (thread_01) is invoked “in parallel” using the Split operation. This thread constantly checks for any received messages throughout the execution of the entire Test Case.

Next, the main Thread does a GetMessage test operation to retrieve any response messages from the Test Driver Message Store.

Continued execution of the Test Case is predicated upon the successful retrieval of either an Approval or a Rejection message from the candidate application.

This can be expressed as two boolean expressions, whose true result causes the execution of a sub-thread of test operations (either Acceptance thread_02 or Rejection thread_03). Again, continued execution of the Test Case is predicated on the results of the TestAssertion operations within each Thread.

Lastly, execution completes by passing control back to the main via the Join operation, which ends the “error checking thread_01”, then ends Test Case execution.

The Test Case has a final state of “pass” if:

The workflow executes to a normal conclusion. This normal conclusion can occur in 2 ways:

(1) The Test Case workflow executes to a successful conclusion without any system exceptions or any explicit TestAssertion operation exits. In this case, that would mean that thread_02 (Acceptance) or thread_03 (Rejection) logically completed.

(2) A TestAssertion operation prematurely exits, setting the final Test Case state to “pass”. This can be done from any TestAssertion operation, if the result of the TestAssertion determines the Test Case final result. However, for this Test Case, any “early exit” with a result of “pass” would not be appropriate.

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 115 of 447

1

1234

5

6789

1011

12131415

161718

192021

2223242526

272829

303132

3334

3536373839404142

23

Page 116: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

The Test Case has a final state of “fail” if:

(1) A TestAssertion result is “false”, and no explicit instruction to continue, or explicit exit instruction with a result of “pass” or “undetermined” is provided in the Test Case script (i.e. this is the “default” behavior for a TestAssertion operation).l

(2) The Test Driver is instructed to “exit” with a final Test Case result of “fail”, based upon the result of a TestAssertion operation. For example, if an error message was received by the Test Driver at any time in thread_03, it would set the final Test Case state to “fail”, and cease execution, regardless of whether thread_02 (check for Acceptance/Rejection message) had completed.

The Test Case has a final state of “undetermined” if:

A Test Driver exception condition (as defined for a particular individual test operation) occurs in the workflow. For example, a protocol error occurring in a PutMessage or GetMessage test operation will generate such an exception.

OR

A TestAssertion operation explicitly sets the exit state to “undetermined”, at which point the Test Driver automatically ceases execution of the Test Case and sets the final state to “undetermined”. A test writer MAY wish to set this exit condition if the TestAssertion operation is being used to determine if some “precondition” is be present prior to performing another Test Assertion that will determine the final Test Case result. If such a precondition is not present, then there is no way to conduct the test with confidence in the result, therefore the final state of the Test Case is set to “undetermined”

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 116 of 447

1

12

3456

789

1011

121314

15161718

1920

21222324252627

282930313233343536373839404142

43

44

23

Page 117: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

8.15Detailed Structure of a Test Case

All IIC Test Framework Executable Test Cases MUST conform to the XML schema defined in Appendix C. The schema is represented in a graphical fashion below. A semantic description of the meaning of all XML elements and attributes in the schema is provided in the “Definition of Content” tables that follow:

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 117 of 447

1

1

23456

789

1011

12

13

23

Page 118: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 118 of 447

1

1

2

23

Page 119: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

Figure 20 – Graphic representation of expanded view of the TestCase elementFigure 30 - Graphic representation of expanded view of the TestCase element

Definition of Content

NameDescription Default Value Schema

Required or Optional

Test Driver Exception Condition

TestCaseContainer element for all test case content

Optional

idUnique identifier for this Test Case

Required

description Short description of TestCase

Optional

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 119 of 447

1

12

34

5

6

7

8

9

23

Page 120: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

authorName of person(s) creating the Test Case

Optional

version Version number of Test Case

Optional

requirementReferenceId Pointer to the unique ID of the FunctionalRequirement

Required Test Requirement not found

configurationGroupRef URI pointing to a ConfigurationGroup instance used to reconfigure Test Driver

Optional Configuration Group not found

ThreadGroup Container for all Threads declared for this Test Case

Optional

Thread Definition of a subprocesssub process of test operations and/or Threads that may be forked synchronously or asynchronously

Required

SetParameter Contains name/value pair to be used by subsequent Threads in this Test Case

Optional

SetXPathParameter Instruction to Test Driver to extract the content of an XPath expression on the Filter Result and store it in a parameter

Optional Invalid XPath expression

LockParameter Instruction for Test Driver to lock a parameter with either “readOnly” or “readWrite” lock, making it unavailable to other Threads

Optional Parameter not found

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 120 of 447

1

23

Page 121: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

UnlockParameter Instruction to Test Driver to release a parameter lock, making that parameter available for read or read/write to other Threads

Optional Parameter not found

PutMessage InstructioInstruction to Test Driver to construct and send a message

Optional Unable to construct or unable to send message

Initiator InstructioInstruction to Test Driver to pass a message DeclrarationDeclaration to the Test Service

Optional Unable to pass message to Test Service. Test Service was not able to construct/send messagaemessage.

GetMessage Instruction to Test Driver to retrieve a message(s) from the MessageStore based upon an XPath query filter

Optional Invalid XPath expression

TestAssertion Instruction to Test Driver to verify/validate message content or verify a parameters’sparameter’s value

Optional

TestServiceConfigurator Container of configuration content for Test Service when Test Driver is in “service” mode

Optional Unable to configure Test Service

ThreadRef Name of the Thread to be executed in this TestCase

Optional Thread not found

Split Parallel execution of referenced sub-threads inside of the Split element

Optional Thread not found

Join Evaluation of results of named threads ( as “andjoin” or “orjoin” ) permits execution of test operations that follow the Join element

Optional Thread not found

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 121 of 447

1

23

Page 122: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

Sleep Instruction to the Test Driver to “wait” for the specified time interval (in seconds). May be invoked anywhere in the script

Optional

Table 9 provides a list of TestCase element and attribute contentTable 18 - A list of TestCase element and attribute content

8.15.1 Individual TestCase Instructions

1.1 Individual Test Instruction definitions

1.2 Test Threads

eads

Test Threads are a workflow of test operations and/or other sub-threads. One can think of a Thread as a collection of relatedof related test operations (such as a sequences of test operations performing message transmissions and receptions for a common business process)as a message send/receive sequence).. Test operations andoperations and sub-threads contained in a Test Thread are executed sequentially as they appear in that Thread script. The TestCase itself can be considered the “main thread” for execution of all operations and sub-threads.

The Test Driver interprets a ThreadRef element as an instruction to execute the Thread instance whose name matches that defined in the ThreadRef. Sub-threads MUSTbeMUST be executed in parallel if they are the child of a Split element. A Thread MUST be executed serially if its ThreadRef is not the child of a Split element.

A Join test operation synchronizes“synchs” the execution of the Test Case, waiting until one (orjJoin) or all ( andjJoin) Threads defined as children within the Join complete execution Concurrent Threads MUST be “joined” anywhere in the scripting AFTER the Split but within the same Thread in which they were invoked. Split Threads that are not Joined MUST generate an error message from the Test Driver and cause execution of the Test Case to cease, with a final Test Case result status of “undetermined”.A Join operation is by default an “andjJoin”, unless specifically set otherwise by the “type” attribute of the Join element.

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 122 of 447

1

12

3

456

7

8

9

10

11

12

13

141516171819

2021222324

2526272829303132333435

363738

23

Page 123: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

Figure 21 – The Thread content diagramFigure 31 - The Thread content diagram

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 123 of 447

1

1

23

4

56789

10

23

Page 124: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

NameDescription Default Value Schema

Required or Optional

Test Driver Exception Condition

ThreadContainer for test driver instructions to be executed within a forked process

Optional

nameShort name for the Thread Optional

descriptionDescription of the Thread Optional

SetParameterSet name/value pair to be used by subsequent test operations

Optional

SetXPathParameter

Instruction to create or modify a parameter using the value returned by an XPath query to the current Filter Result

Optional Invalid XPath expression

LockParameterInstruction to Test Driver to “lock” a parameter with either “readOnly” or “readWrite” locking enabled

Optional Parameter not found

UnlockParameter

Instruction to Test Driver to “unlock” a parameter

Optional Parameter not found

PutMessageInstruction to Test Driver to send a message

Optional Message could not be sent

InitiatorInstruction to Test Driver to pass a message declaration to the Test Service for sending

Optional Message could not be initiated by Test Service

GetMessageInstruction to Test Driver to retrieve message(s) from the Message SToreStore

Optional Protocol error occuredoccurred

TestAssertionInstruction to the Test Driver to perform an evaluation

Optional

ThreadRefReference via name to Thread to execute serially

Optional Thread not found

SplitDirective to run the referenced Thread(s) enclosed in the Split element in parallel

Optional Thread not found

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 124 of 447

1

23

Page 125: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

JoinDirective to evaluate the boolean result of the enclosed referenced Thread(s) in a previous Split

Optional Thread not found

SleepInstrutcionInstruction to “wait” (specified in integer seconds) a period of time before executing the next test operation in the script

Optional

SetXPathParameter

Instruction to create or modify a parameter using the value returned by an XPath query to the current Filter Result

Optional Invalid XPath expression

Table 10 – Thread Content Description

Table 19 - Thread Content Description

Test Operations

These test operations may be performed by the Test Driver in one of two modes: connection (Test Driver is remote from Test Service) or service (Test Driver is interfaced with Test Service). The section below describes these test operations and their behavior in various modes (if applicable) in more detail.

8.15.1.1 SetParameter: Setting Parameter values

The “SetParameter” operation instructs the Test Driver to create (or modify if the parameter has already been defined at a higher level in the Thread hierarchy) a name/value pair that can be used via reference by any subsequent test operation in the current Thread, as well as any test operation in any descendent Threads. Parameter names can be included in XSL stylesheets of message Mutators, or they may be referenced in XPath expressions to verify message content.

A note on parameter “locking”: If a SetParameter operation attempts to lock a parameter that already is currently locked by an another Thread, then the current Thread MUST wait until that parameter is “unlocked” by that Thread before proceeding to modify its value.

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 125 of 447

1

1

2

3

4

5

6789

1011121314151617

18

192021222324

25262728

29

23

Page 126: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

Figure 22 – Graphic representatin of expanded view of SetParameter elementFigure 32 - Graphic representation of expanded view of SetParameter elementThread

Definition of Content

NameDescription Default Value Schema

Required or Optional

Test Driver Exception Condition

SetParameterInstruction for Test Driver to store a name/value pair

Optional

scopeAttribute to control visibility of parameter to other Threads (selfAndDescendents | self | parent)

selfAndDescendents

Optional

lockAttribute to instruct Test Driver to lock this parameter with either “readOnly” or “readWrite” lock for concurrent Threads

Optional

NameParameter Name Required Not a valid name

ValueString representation of parameter value

Optional Not a valid value

ParameterRefName of another parameter whose value you wish to store in this parameter

Optional Parameter not found | Parameter is read locked

Table 20 – List of content for the SetParameter element

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 126 of 447

1

12

34

5

678

910

11

12

13

23

Page 127: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

Semantics of the SetParameter operation:

Parameters that could be used to manipulate sent message content, or to evaluate received message content, can be assigned for use by Thread test operations in three ways:

Through assignment as a parameter name/value pair within the current ConfigurationGroup.Using SetParameter at the beginning of a ThreadUsing SetXPathParameter operation in a GetMessage operation (to extract a message content value via XPath and assign it to a parameter)

8.15.1.2 SetXPathParameter: Setting Parameter values using retrieved message content

The “SetXPathParameter” operation instructs the Test Driver to create (or modify if the parameter has already been defined at a higher level in the Thread hierarchy) a name/value pair that can be used via reference by any subsequent test operation in the current Thread, as well as any test operation in any descendent Threads. The content for the parameter value is the string result returned by an XPath query on a Filter Result object returned by a GetMessage operation (see section below for an in-depth description of GetMessage). Parameter names can be included in XSL stylesheets of message Mutators, or they may be referenced in XPath expressions to verify message content.

A note on parameter “locking”: If a SetXPathParameter operation attempts to lock a parameter that is is currently locked by an another Thread, then the current Thread MUST wait until that parameter is “unlocked” before proceeding to modify its value.

Figure 33 - Graphic representation of expanded view of SetXPathParameter element

NameDescription Default Value Schema

Required or Optional

Test Driver Exception Condition

SetXPathParameter

Instruction for Test Driver to store a name/value pair using content retrieved from retrieved message

Optional

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 127 of 447

1

1

234

56789

10

11

1213141516171819

20212223

242526

2728

2930313233

23

Page 128: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

scopeAttribute to control visibility of parameter (selfAndDescendents | self | parent)

selfAndDescendents

Optional

lockAttribute to instruct Test Driver to lock this parameter with either “readOnly” or “readWrite” lock for concurrent Threads

Optional

NameParameter Name Required Not a valid name

ValueString representation of parameter value

Required Not a valid value

ExpressionXPath expression whose result is used as the value for the parameter

Required Invalid XPath expression

Table 21 Definition of content for SetXPathParameter instruction

8.15.1.3 LockParameter: Synchronizing concurrent Thread access to parameters

The “LockParameter” operation instructs the Test Driver to “lock” a parameter (similar to the database equivalent) so that it may not be read or modified by a concurrently executing Thread). Each LockParameter instruction MUST have an accompanying “UnlockParameter” instruction in a Thread.The modes of locking are either “readOnly” or “readWrite”. If another Thread has already locked a parameter, then the current Thread MUST wait until the parameter has bee “unlocked” prior to examining or modifying that parameter’s value.

Figure 34 - Graphic representation of expanded view of LockParameter element

NameDescription Default Value Schema

Required or Optional

Test Driver Exception Condition

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 128 of 447

1

1

23

4

56789

1011

12

1314

15

16

17

1819

23

Page 129: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

LockParameterInstruction for Test Driver to lock a parameter

Optional

lockAttribute to instruct Test Driver to lock this parameter with either “readOnly” or “readWrite” lock

readOnly Required

NameParameter Name Required Parameter not

found

Table 22 Definition of content for LockParameter instruction

8.15.1.4 UnlockParameter: Synchronizing concurrent Thread access to parameters

The “UnlockParameter” operation instructs the Test Driver to “unlock” a parameter (similar to the database equivalent) so that it may be read or modified by a concurrently executing Thread). A note on parameter “unlocking”: If an UnlockParameter operation attempts to lock a parameter that already exists, and is currently locked by another Thread, then the current Thread MUST wait until that parameter is “unlocked” before proceeding to modify its value.

Figure 35 - Graphic representation of expanded view of UnlockParameter element

NameDescription Default Value Schema

Required or Optional

Test Driver Exception Condition

UnlockParameter

Instruction for Test Driver to lock a parameter

Optional

NameParameter Name Required Parameter not

found

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 129 of 447

1

1

2

3

456789

1011

1213

14

15

161718

19

20

23

Page 130: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

Table 23 – List of content for UnlockParameter element

8.15.1.4.1 Scope of a parameter

These same semantic rules apply to parameters referenced via ConfigurationGroup. The “configurationGroupRef” attribute is available for use at the TestSuite, TestCase, and Thread levels. A hierarchical relationship exists for any parameters defined in the ConfigurationGroup. A configurationGroupRef at the TestSuite level is “global”, meaning any parameter definitions defined at the TestSuite level are exposed to descendent TestCase or Thread. If a parameter is “redefined” at any of those “lower levels” in the object hierarchy, then that definition takes precedence for that object and any “descendent” objects, until the logical workflow of the TestCase moves back to the current level in the object hierarchy. When that occurs, whichever previous definition of a parameter (via a configurationGroupRef or SetParameter test operation) takes precedence.

The SetParameter operation dynamically creates (or redefines) a single parameter whose value is available to the current Test Object (TestCase or Thread) it is defined in. For example, if it is defined within a Thread, then it is available to any test operation in that Thread, as well as any descendent Threads..... If it is defined within a Thread, then itsthen its definition exists for the lifecycle of that Thread. When the workflow execution moves to a “higher” level (i.e. to the parent Thread) then that parameter a) ceases to exist if it was not already defined at a higher level in the workflow hierarchy or b) if defined at a higher level, takes the previously value defined at the next highest level in the workflow hierarchy.

A parameter’s scope MAY be restricted using the “scope” attribute of the SetParameter instruction. By default, a parameter is visible to all operations within the Thread in which it is defined, and any descendent Threads. This is represented by the “selfAndDescendents” enumeration value (the default) for scope. A parameter’s scope MAY be restricted to the current Thread only if the scope attribute of the SetParameter (or SetXPathParameter) instruction is set to “self”. A parameter’s scope MAY be set to a more “global” visibility if the scope attribute is set to “parent”. This means that the parameter’s value is set at the “parent thread” level, and is visible to all “sibling” Threads of the current Thread.

8.15.1.4.2 Referencing/Dereferencing parameters in PutMessage PutMessage and GetMessage Filter and TestAssertion test operations

In the case of a PutMessage operation (see below) , a parameter defined with the ConfigurationGroup and/or the SetParameter operation can be passed to an XSL or XUpdate processor and referenced within an XSL stylesheet or XUpdate “mutator” document (via its name) and used to provide/mutate message content of the newly constructed message. A Test Driver MUST make pass these parameters to the XSL or XUpdate processors for use in mutating a Declaration.

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 130 of 447

1

1

2

3

45

6

7

89

1011121314151617

1819202122232425

2627282930313233

343536373839

4041

424344454647

23

Page 131: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

In the case of a GetMessage operation, a parameter defined with the ConfigurationGroup and/or the SetParameter operation can be passed to the XPath processor used for the Filter or VerifyContent operations. Within the XPath expression, the parameter MUST be referenced with the same name (case sensitive) with which it has been assigned, and MUST be preceededpreceded by a ‘$’ character. The Test Driver MUST recognize the parameter within the XPath expression, and substitute its value prior to evaluating the XPath expression How parameters are stored and retrieved by the Test Driver is an implementation detail.

8.15.1.5 7.1.2.1 PutMessage: MPutMessage: Message Construction and Transmission

The “PutMessage” directive instructs the Test Driver to construct a message and transmit it to the designated party. The PutMessage element contains one or more SetPart “SetMessage” and zero or more “SetPayload” test operation instructions. Each SetPart operation will construct a portion of the final message. A SetPart test operation consists of up to 4 sub-part construction directives. They are: Both SetMessage and SetPayload have four “sub-operations”. They are:

Packaging: An optional XML fragment, that if present, requires the Test Driver to make the appropriate API calls (MIME, JMS or other) to modify the message packaging. By default, the Test Driver will construct a package with minimal default attributes. Because there are many different types of message packaging APIs, the XML syntax for instructing a Test Driver to modify a particulary type of message package MUST be defined in an XML schema and be included as a normative reference in appendix H of this specification (Message Packaging API Schemas).

Declaration: A required XML fragment that abstractly defines the content of the actual message envelope

Mutator: An optional reference to an XSL stylesheet or XUpdate document that will mutate the Declaration into a valid message. If a Mutator element is absent, the Test Driver assumes that the message Declaration does not need mutation, or that the message is not an XML document, and simply appends it as another message part.

DSign: An instruction for the Test Driver to create and insert an XML Digital Signature [XMLDSIG] in the content of the final message part.

Each of these four instructions is explained in detail below:

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 131 of 447

1

1234567

89

10

1112131415161718

19202122232425

262728

2930313233

343536

3738

39

4041

4243

4445

23

Page 132: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 132 of 447

1

1234

23

Page 133: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 133 of 447

1

1

23

Page 134: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

Figure 23 – Graphic representation of expanded view of the PutMessage elementFigure 36 – Graphic representation of PutMessage element content

Definition of Content

NameDescription Default

ValueSchema Required or Optional

Test Driver Exception Condition

PutMessageContainer element for message construction and sending operation directives

Optional Protocol error prevented message transmission

descriptionDMetadata describing the nature of the PutMessage operation

Required

repeatWithSameContextInteger looping parameter, using same message context ( MessageId and Timestamp )

Optional

repeatWithNewContextInteger looping parameter, using new message context ( MessageId and Timestamp )

Optional

SetMessageContainer for instructions to construction of a message envelope a message envelope

Required

SetPayloadContainer for instructions to construct and attach a message payload

Optional

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 134 of 447

1

12

34

5

6789

10

1112

13

23

Page 135: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

descriptionDescription of the message part being added

Required

PackagingContainer for XML scripting of API commands to alter the default packaging of this message part

Optional

idIdentifier to be given to the message envelope (interpreted by the packaging API as appropriate…e.g a MIME Content-ID)

Required

HeaderContainer for optional packaging instructions to the Test Driver

OpPtional

NameName of packaging header to be added (if it does not exist) or modified

Required

ValueIf present, create or replace this packaging header value. If not present, assume creation/modification of AttributeHeader value to be inserted

Optional

AttributeDefinition or modification (if it does not exist) of an attribute of this particular Header

Optional

NameAttribute name Required

ValueAttribute value to be inserted Required

ContentContainer for one of three instructions to the Test Driver on where to retrieve the message content

Required

DeclarationXML content defines message envelope to be created (or mutated) by Test Driver

Optional

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 135 of 447

1

23

Page 136: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

FileURIReference to message declaration (or attachment) contained in a file

Optional File not found

MessageRefReference to an ID in the Test Suite whose parent is a Message element

Optional Invalid referenceId

MutatorContainer element for a reference to either an XSL stylesheet or XUpdate document that will mutate this part of the message

Optional

FileURIReference to message declaration (or attachment) contained in a file

Optional File not found

DSignEnvelope Container element for XML Digital Signature declaration for this message envelope.Instruction for Test Driver to sign the message envelope (dependent upon “Envelope” type defined in ConfigurationGroup)

Optional

DSignPayload Instruction for Test Driver to sign the message payload (dependent upon “Envelope” type defined in ConfigurationGroup)

Optional

Table 11 defines the content of the PutMessage elementTable 24 – List of content of the PutMessage element

Semantics of the PutMessage test operation:

A message may be composed of one or more “parts”. Normally, if a message contains only one part, it is a “message envelope”, containing a message identifier, from/to party identifiers, a timestamp and other details. It also MAY contain the actual business message.If a message contains more than one part, then the additional parts are typically “attachments” ( ancillary documents passed along with the business message ). In order to accommodate both types of messages, the Test Framework incorporates the concept of a “message” and a “payload” part in directing the Test Driver to construct the message. The scripting within the SetMessage and SetPayload element permits modification of the packaging of the message part, the addition of both XML and non-XML content, optional mutation of an XML part, and optional XML Digital Signature application to that part.

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 136 of 447

1

12

3456789

10111213

1415161718192021222324

23

Page 137: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

8.15.1.5.1 The Set Message Part test operation:

Figure 37 – Graphic representation of the SetMessage element content

A message may be composed of one or more “parts”. Normally, if a message contains only one part, it is a “message envelope”, containing a message identifier, from/to party identifiers, a timestamp and other details. It also MAY contain the actual business message.If a message contains more than one part, then the additional parts are typically “attachments” ( ancillary documents passed along with the business message ). In order to accommodate both types of messages, the Test Framework incorporates the concept of “parts” in directing the Test Driver to construct the message. The scripting within the SetPart element permits modification of the packaging of the message part, the addition of both XML and non-XML content, optional mutation of an XML part, and optional XML Digital Signature application to that XML part.

8.15.1.5.2 The Packaging test operation:

Figure 38 – Graphic representation of content for the Packaging element

Packaging is an optional XML fragment, that if present, requires the Test Driver to make the appropriate API calls (MIME or otherwise) to modify the message packaging. By default, the Test Driver will construct a package with minimal default attributes. Because there are many different types of message packaging APIs, a generic XML syntax for describing a packaging “header” and its attributes is provided. This test operation manipulates the packaging of a message envelope. For example, in the case of testing SOAP messaging, a test writer MAY manipulate its MIME packaging by using the XML syntax

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 137 of 447

1

12

3

4

56

789

1011121314151617

18

19

20

2122

23242526272829

23

Page 138: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

defined in Appendix H of this document. MIME headers MAY be modified, or introduced into the message package using the XML syntax described by the normative schema.

By default, a test writer MUST supply an “id” in a message or payload packaging declaration, to be interpreted by the underlying packaging API as the identifier for this portion of the message. For example, a MIME packaging API would interpret this as the “Content-Id” header value.

8.15.1.5.3 The Declaration

Figure 39 - Graphic representation of content for the Declaration element

The IIC Test Framework is a generalized testing framework, agnostic to any particular messaging protocol (ebXML, RNIF, EDI). To achieve this goal, it is designed in a very flexibly way. Any type of message can be expressed inside an XML Declaration element. As long as a “mutator” XSL styleesheetstyle sheet or XUpdate document is used to interpret that declaration and generate a valid message, it is at the discretion of the test writer how they wish to express their message declaration.

As a best practice however, it is HIGHLY RECOMMENDED that a testing community agree to a common Declaration syntax to provide ease of understanding, and minimize duplication of effort in constructing Test Suites. The XML content necessary to describe a basic message declaration should be minimal, relying on default parameter values supplied by the Test Driver for most common and reuseablereusable message content (such as ConversationoinId, CPAId, Sending Party Id..etc) . If the test developer wishes to “override” the default element and attribute values, they may do so by explicitly declaring those values in the XML Declaration markup. A standard Declaration format for ebXML Messaging Services v2.0 was created by the OASIS IIC to facilitate the writing of Test Cases for the ebXML MS v2.0 Conformance Test Suite [ebMSConfTestSuite]. An XML schema is defined in Appendix D describing the minimum markup necessary to construct a SOAP and ebXML message.

Accompanying the schema in Appendix D is an XSL “mutator” stylesheet, that transforms ebXML message Declaration XML content into a valid ebXML message envelope, complete with runtime parameters such as ConversationId, Timestamp, Service, Action…etc..

Other messaging declarations (such as RNIF) would require their own declaration syntax, and corresponding Mutator stylesheet. Additionally, message payloads can be created via the same Declaration and Mutator stylesheet method by defining an XML syntax to construct the message payload, and an accompanying Mutator stylesheet to transform it into a final payload format..

Default values for mutating message content (such as ConversationId, FromPartyId..etc.) are typically set using the Test Suite ConfigurationGroup parameters. Setting parameter values at the Test Suite level makes them “global” for use by any Test Case in the Test Suite. Parameters such as (in ebXML Messaging Services testing) CPAId, ConversationId, Service, Action, ToPartyId and FromPartyId (or their equivalent) would typically be set globally for a messaging Test Suite. They could be optionally “overridden” locally within each Test Case by use of an individual “SetParameter” instruction in the Test Case scripting.

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 138 of 447

1

12

3456

7

8

9

1011

121314151617

1819202122232425262728

29303132

3334353637

38394041424344454647

23

Page 139: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

A test writer may additionally override any Test Driver parameter value by explicitly specifiyingspecifying a value in the Declaration itself. For example, explicitly providing a ConversationId in the Declaration can be used as a way to override the Test Driver supplying it in its mutator transformation if the mutator is designed to allow it.

Two parameters (using the exact names specified below) are generated by the Test Driver, and CAN NOT be overridden using parameter definition. They are MessageId and Timestamp. These two values can however, be explicitly defined in a Declaration if the test writer wishes to subsitutesubstitute an explicit value for that supplied by the Test Driver in their mutator transformation.

NOTE: If the Declaration is not “inlined” as content in the Test Case script, it MAY be included via the FileURI element content, or via the MessageRef (an IDREF pointing to a static Declaration already defined in the Test Suite document). Also not that, in the absence of a Mutator element, the Test Driver MUST assume that no mutation is necessary, and the message declaration (or payload) is inserted into the document “as is”.

8.15.1.5.4 Mutator: Turning a Declaration into an actual Message

Figure 40 - Graphic representation of content for the Mutator element

The message portion of a Declaration is transformed into a valid XML message document using the Mutator test operation ..document. Additional information such as a message timestamp, message identifier and other “run time” can be added by the Mutator operation in order to provide all the necessary “runtime” information needed to complete a message. The Mutator test operation transforms the Declaration content into a valid message using either an XSL processor and stylesheet or an XUpdate processor and document. The location of the Mutator document is defined in the “FileURI” content of the Mutator element. If a Mutator element is absent, the Test Driver assumes that the message Declaration does not need mutation, or that the message is not an XML document, and simply appends it to the message package “as is”. The “FileURI” child element of the Mutator specifies the location of the XSL stylesheet or XUpdate document used to modify the Declaration.It MUST be a relative path description of the XSL or XUpdate document file used to mutate the message Declaration content.

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 139 of 447

1

12345

6789

10

11121314151617

1819

20

21

2223

24252627282930313233343536

3738394041424344

23

Page 140: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

8.15.1.5.5 DSign Envelope and DSignPayload : Applying an XML Signature to the message

Figure 41 - Graphic representation of content for the DSignEnvelope element

DSignEnvelope: Is an instruction for the Test Driver to create and insert an XML Digital Signature [XMLDSIG] in the content of the message envelope. Depending upon the envelope type defined in the ConfigurationGroup element of the Test Suite, the Test Driver will sign each part accordingly. For example, for SOAP envelope types, the XML Signature is inserted as the first child element found in the SOAP Header.

Name Description Default Value Schema Required or Optional

Test Driver Exception Condition

DSignEnvelope Container for variable XMLDSIG signing parameters

Ooptional

URI URI pointing to message content to be signed

Dependent upon envelope type: ebXML=“” SOAP = “#Body”

Optional Unable to resolve URI

CanonicalizationMethodAlgorithm

As defined by name

http://www.w3.org/TR/2001/REC-xml-c14n-20010315

Optional CanonnicalizationMethod Not supported

SignatureMethod http://www.w3.org/2000/09/xmldsig#dsa-sha1"

Optional Signature method Not supported

DigestMethod http://www.w3.org/2000/09/xmldsig#sha1”

Optional Digest method Not supported

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 140 of 447

1

1

23

45

6789

1011

1213

23

Page 141: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

Transform Algorithm http://www.w3.org/2000/09/xmldsig#enveloped-signature

Optional Transform algorithm Not supported

Figure 42 Definition of content for DSignEnvelope element

DSignPayload: An instruction for the Test Driver to create and insert an XML Digital Signature [XMLDSIG] in the message package. Depending upon the envelope type defined in the ConfigurationGroup element of the Test Suite, the Test Driver will sign each payload accordingly. For example, for SOAP/ebXML envelope types, the payload XML Signature is inserted after the first Signature element (i.e. the message envelope signature) found in the SOAP Header.

Figure 43 - Graphic representation of content for the DSignPayload element

The DSign instruction tells the Test Driver (or Test Service if doing interoperability testing) to create and include an XML Signature element with the XML message envelope( or XML payload) after it is constructed. Where the DSign test operation places the actual XML ds:Signature element and its content in the message is determined by the ConfigurationGroup “Envelope” parameter. For example, if the envelope is of type “ebXML” or type “SOAP”, then the ds:Signature element is place inside the SOAP Header element. If the Envelope is of type “MIME”, the the XML Digital Signature is placed inside the MIME container as its content.

If the DSign operation is used in a SetPayload operation, then the ds:Signature element and its content is simply added as the content of the payload.

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 141 of 447

1

1

2

3

456789

10

11

1213

14

1516171819202122

232425

23

Page 142: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

Figure 24 – Graphic representation of expanded view of the DSign element

Definition of Content

NameDescription Default Value Schema Required

or OptionalTest Driver Exception Condition

DSignContainer for Signature declaration content

Optional

ds:SignatureSignature root element, as defined in [XMLDSIG]

Required

IdUnique identifier for Signature

Optional

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 142 of 447

1

12

345

6

23

Page 143: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

SignedInfo Create container for Canonicalizatoin and Signature algorithms and References

Required

CanonicalizationMethod Modify default

container element

Container auto-generated by Test Driver

Optional Method not supported by Test Driver

AlgorithmModify default attribute and value

http://www.w3.org/TR/2001/REC-xml-c14n-20010315

Required Algorithm not supported by Test Driver

#wildCardGenerate content “inline”

Optional

SignatureMethodCreate container element Required

AlgorithmCreate attribute and value

Required

Algorithm not supported by Test Driver

HMACOutputLengthGenerate Element and its value

Optional

#wildcardGenerate content “inline”

Optional

ds:ReferenceGenerate container element and all default content

Optional

IdGenerate attribute and its value

Optional

URIModify default attribute value

“” Optional

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 143 of 447

1

23

Page 144: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

typeGenerate attribute and its value

Optional

TransformsGenerate container relement

Optional

TransformGenerate element with its value

Optional

AlgorithmModify default attribute value

http://www.w3.org/TR/2001/REC-xml-c14n-20010315

Required Algorithm not supported by Test Driver

#wildCardGenerate content “inline”

Optional

XPathGenerate element with its value

Optional Invalid XPath expression

DigestMethodGenerate element with its value

Required Method not supported by Test Driver

Algorithm Generate attribute and value

Required Algorithm not supported by Test Driver

#wildCardGenerate content “inline”

Optional

DigestValueGenerate element with its value

Set by Test Driver, based upon URI Optional

#wildCardGenerate content “inline”

Optional

SignatureValueGenerate element and its value

Set by Test Driver at run time Optional

IdGenerate attribute and its value

Optional

KeyInfoGenerate container Element

All required and optional content, as described in [XMLDSIG] MUST be explicitly declared (no auto-generation by Test Driver)

Optional Invalid Key data

ObjectGenerate container element

Optional

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 144 of 447

1

23

Page 145: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

Name Description Default Value Schema Required or Optional

Test Driver Exception Condition

DSignPayload Container for variable XMLDSIG signing parameters

URI URI pointing to message content to be signed

Content id of payload to be signed

Optional Unable to resolve URI

CanonicalizationMethodAlgorithm

As defined by name http://www.w3.org/TR/2001/

REC-xml-c14n-20010315

Optional Not supported

SignatureMethod As defined by name http://www.w3.org/2000/09/

xmldsig#dsa-sha1"

Optional Not supported

DigestMethod As defined by name http://www.w3.org/2000/09/

xmldsig#sha1”

Optional Not supported

Transform Algorithm As defined by name

None Optional Not supported

Table 12 - Content of the Dsign element

8.15.1.6 Initiator: Passing message construction directives to the Test Service

Unlike the “PutMessage” operation, in which the Test Driver constructs and sends a message, the “Initiator” operation instructs the Test Driver to instead pass an (optionally “mutated”) Declaration (and any associated message payloads) to the Test Service Initiation interface, via its “initiator” method. The initiator method of the Test Service must successfully interpret the Declaration; construct the message (using its internal messaginmessaging building API) and send the message through its host messaging service. The Test Service initiator method must return a synchronous response message (defined in Appendix F) to the Test Driver indicating success or failure.

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 145 of 447

1

1

23456

789

10

11

1213141516171819

20

23

Page 146: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

Message payloads ARE constructed and optionally mutated (via Mutator) by the Test Driver, andbut are then passed to the Test Service for it to include in the message that it constructsi, using the same ID that are supplied by the Test Driver.ts constructed message.XML Digital Signatures are declared in the Test Script, but those declarations are also passed to the Test Service, which interprets that declaration and generates an actual digital signature. Any digital signatures are assumed to be applied by the Test Service when it generates the message.

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 146 of 447

1

1234567

89

10

23

Page 147: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 147 of 447

1

1

2

23

Page 148: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

Figure 25 – Graphic representation of expanded view of the Initiator elementFigure 44 - Graphic representation of content for the Initiator element

Definition of Content

NameDescription Default

ValueSchema Required or Optional

Test Driver Exception Condition

InitiatorContainer element for message construction and sending operation directives

Optional Protocol error prevented message transmission

descriptionMetadata describing the nature of the PutMessage operation

Required

InitiateSetMessage Container for Test Service instructions to

const a messageruction of the message envelope

Required

descriptionDescriptionofDescription of the portion of the message being added

Optional

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 148 of 447

1

12

3

45

67

8

23

Page 149: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

Packaging Container for Test Service instruction to generate a message with an id

Required

id Identifier for the message Required

Content Container for one of three representations of message content (file reference, reference to XML text, or “inline” XML content)

Required

Declaration

XML content defines message envelope to be created by Test Service

Optional

FileURIReference to message declaration contained in a file

Optional File not found

MessageRef

Reference to an ID in the Test Suite whose parent is a MessageelementMessage element

Optional Message not found

Mutator Container for reference to mutating document to be applied to message declaration before passing it to the Test Service

Optional

FileURILocation of the mutator document Required

MutatorContainer element for a reference to either an XSL stylesheet or XUpdate document to mutate the Declaration, prior to passing it to the Test Service

Optional

XSLURI to an XSL stylesheet Optional

FileURIXUpdate

URI to an XSL or XUpdate declaration mutator document

OprionalOptional

XUpdate script not found

DSign Container element for XML Digital Signature declaration(s) for this message, passed to direct the Test Service as an instruction to insert an XML Digital Signature into the envelope

Optional

InitiateSetPayload Container for construction of a message

payload to be passed to Test ServiceRequired

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 149 of 447

1

23

Page 150: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

descriptionDescriptionofDescription of the portion of the payload being added

Optional

Content Container for one of three representations of payload content (file reference, reference to XML text, or “inline” XML content)

Required

Declaration

XML content defines message payload content to be passed to Test Service

Optional

FileURIReference to message declaration contained in a file

Optional File not found

MessageRef

Reference to an ID in the Test Suite whose parent is a Message element

Optional Message not found

Packaging Container for Test Service instruction to generate a payload with an idgenerate packaging header/attribute to be passed to Test Service

OptionalRequired

id Identifier for the message Required

MutatorContent

Container for reference to mutating document to be applied to message payload prior to passing it to the Teset Serviceone of three representations of message content (file reference, reference to payload content)

OptionalRequired

FileURI Location of mutator document Required

Declaration

XML content defines payload to be created by Test Service

Optional

FileURIReference to payload contained in a file Optional File not found

MessageRef

Reference to an ID in the Test Suite whose parent is a Message element

Optional

Mutator Container element for a reference to either an XSL stylesheet or XUpdate document to mutate the payload declaration into its final form

Optional

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 150 of 447

1

23

Page 151: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

DSign Container element for XML Digital Signature declaration(s) for this message, passed to the Test Service to construct an XML digital signature as the message payload

Optional

Table 13 defines the content of the Initiator elementTable 25 – List of content for the Initiator element

.

8.15.1.7 GetMessage: Message Retrieval

The “GetMessage” test operation is used by the Test Driver to retrieve incoming messages (when the Test Driver is in Connection mode) and message notifications (when the Test Driver is in Service mode). Incoming messages for a Test Case are maintained in a persistent Message Store for the life of a Test Case.

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 151 of 447

1

12

345

678

910

1112

13

1415161718

192021222324

25

26

23

Page 152: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

Figure 26 – Graphic representation of expanded view of the GetMessage elementFigure 45 - Graphic representation of expanded view of the GetMessage element

Definition of Content

NameDescription Default Value Schema

Required or Optional

Test Driver Exception Condition

GetMessageContainer for instructions to retrieve a message(s) from the Message Store

descriptionMetadata describing the nature of the SetPayload operation

Required

maskInstruction to hide any Filtered message content from subsequent Filter XPath queries (true | false)

false Optional Masking not supported

FilterContainer for XPath query that is used to retrieve message content from Message Store

Required Invalid XPath expression

OR

Filter result is not a nodelist of TEST:Message elements

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 152 of 447

1

12

3456789

10

11

23

Page 153: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

stepDurationManual override of global “timeout” ( in seconds ) for the Filter operation to poll the Message Store against the XPath filter specified

The value specified in the Test Suite ConfigurationGroup

SetXPathParameterInstruction directint the Test Driver to extract message content and store it in a parameter that is available (by default) to the current Thread and its descendent Threads

Optional

scopeVisibility of parameter to current and descendent Threads (selfAndDescendents | self)

selfAndDescendents Optional

NameName of new parameter Required

ExpressionXPath expression that returns message content to be used as the value of the parameter

Required

Table 14 defines the content of the GetMessage element Table 26 – List of content for the GetMessage element

8.15.1.8 The Initiator Test Operation

The Initiator operation provides a means to initiate a conversation from the candidate MSH. The Test Driver through the “Send” interface of the Test Service performs the Initiator operation. This is accomplished programmatically if the Test Driver is “local” to the Test Service. If this is not the case, then this is accomplished through a remote procedure call (RPC), described in section 3.2.4. The Test Driver passes on the XML content illustrated and described below to the Test Service “initiator” RPC method to construct a message. The type of content in the Declaration element will vary with the message envelope type (e.g. ebXML, RNIF..etc.). Also, because it is the Test Service that is actually constructing the message (not the Test Driver), message declarations MUST only contain directives that the MSH API can execute. For example MIME and SOAP content is generally not available for manipulation by an ebXML MSH API. Therefore, MIME and SOAP message construction directives SHOULD NOT be present as Declaration content, or if present, MUST be ignored by the initiator method of the Send interface.

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 153 of 447

1

12

3

456789

10

11

12131415161718192021222324

25

23

Page 154: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

The schema illustrating the normative Declaration content for ebXML Messaging Services v2.0 testing can be found in Appendix C.

Figure 27 – Graphic representation of expanded view of the generic Initiator element

Definition of Content

NameDescription Default

ValueSchema Required or Optional

Test Driver Exception Condition

InitiatorContainer element for message construction directives and message payloads to be passed to MSH via RPC

Optional Protocol error prevented message transmission

descriptionMetadata describing the nature of the Initiator operation

Required

SetMessage

Content defines message envelope to be created (or mutated) by Test Driver

Optional

PackagingContainer for message envelope packaging identifier

Required

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 154 of 447

1

12

3

45

678

9

23

Page 155: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

idIdentifier to be passed to Test Service to include in message package

Required

ContentContainer for message declaration instructions to be passed to Test Service

Required

Declaration

Message construction directives to be passed to MSH for interpretation and message generation

Optional

FileURIReference to message declaration contained in a file

Optional File not found

MessageRef

Reference to an ID in the Test Suite whose parent is a Message element

Optional

MutatorReferemce to XSL or XUpdate document that transformes message declaration into a modified declaration to be passed to Test SErvice

Optional

DSign Container element for XML Digital Signature declaration(s) for this message to be passed to Test Service as instructions to insert valid digital signature(s) inside message envelope

Optional

SetPayloadContent defines message payload to be created (or mutated) by Test Driver

Optional

PackagingContainer for message payiload packaging identifier

Required

idIdentifier to be passed to Test Service to include in payload packaging

Required

ContentContainer for payload declaration instructions to be passed to Test Service

Required

Declaration

Payload construction directives to be passed to MSH for interpretation and message generation

Optional

FileURIReference to payload declaration contained in a file

Optional File not found

MessageRef

Reference to an ID in the Test Suite whose parent is a Message element, to be inserted as a payload declaration

Optional

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 155 of 447

1

23

Page 156: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

MutatorReference to XSL or XUpdate document to mutate payload declaration before passing it to Test Service

Optional

DSign Container element for XML Digital Signature declaration(s) for this message to be passed to Test Service as instructions to insert valid digital signature(s) inside message envelope

Optional

Table 15 – Content of the Initiator test operation

8.15.1.9 The GetMessage Test Operation

The GetMessage operation, using its child XPath Filter instruction, retrieves a node-list of messages (or fragments of messages) from the Message Store of the Test Driver. The content of the node-list is dependent upon the XPath Filter provided. The resulting node-list MAY then be queried for adherence to a particular Test Assertion. Additionally, parameter values that may be used later in the Test Case script can be assigned using the SetXPathParameter instruction.

Figure - Graphical representation of GetMessage element content

Semantics

Figure - Graphical representation of GetMessage element content

Figure 28 – Graphic representation of expanded view of the GetMessage element

Table 16 defines the content of the GetMessage element

Semantics of the GetMessage test operation

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 156 of 447

NameDescription Default Value

GetMessageContainer element for filtering, verifying and validating message and payload content

descriptionDescription the nature of the GetMessage operation

maskBoolean attribute, when set to “true” will “mask” ( hide) the message(s) which satisfy the XPath expression. When “false”,

false

1

1

2

3

456789

1011

1213

1415

161718

19

20

21

22232425262728293031

3233

23

Page 157: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

A fundamental aspect of the GetMessage operation is its behavior and effect on the Message Store.  The Message Store is an XML document object created by the Test Driver that contains an XML representation of all synchronous and asynchronously received messages for a Test Case. The received messages for a particular Test Case MUST persist in the Message Store for the life of the Test Case. Messages in the Message Store MAY contain an XML representation of MIME, SOAP, ebXML or other types of message content, represented as an XML document (the MessgeMessage Store schema permits any type of XML representation of a messaging envelope, with each representation specified in a “best practice” document for a particular testing community).  If the messages being stored are ebXML messages using HTTP transport and a SOAP envelope, the XML format of the Message Store document MUST validate against the ebXMLMessageStore.xsd schema in appendix D. The scope of message content stored in the Message Store is “global”, meaning its content is accessible at any time by any Thread (even concurrently executing Threads) during the execution of a Test Case. Message Store content changes dynamically with each received message or notification.

The GetMessage “Filter” operation queries the Message Store document object, and retrieves the XML content that satisfies the XPath expression specified in its Filter child element.  As the MessageStore is updated every time a new message comes in, a GetMessage operation will automatically execute as often as needed, until either (1) its XPath Filter is satisfied (evaluates to “true”), or (2) the timeout (stepDuration) expires.

The XPath query used as content for a Filter operation MUST yield a node-list of 0 or more XML elements. Although the content of a message may vary (e.g. ebXML, RNIF, SOAP), all node-list results from a Filter operation MUST contain XML elements in order to permit the creation of a FilterResult document object, which can then be examined by the TestAssertion operation The required structure of the FilterResult document object is defined in the Filter Result schema in Appendix D.

Message Masking:

        All the message items available for querying are children of the MessageStore document object. The XPpath expression in the Filter will select Message Store content that satisfies the filter. Such content MUST be a node list of XML elements. If they are not, the Test Driver MUST generate an exception and terminate the Test Case with a final result of “undetermined”. The elements returned by the XPath query are appended as children of a FilterResult element, available for further querying, by the TestAssertion operation.        When the mask attribute is set to “true”, the messages ( or XML elements) that have been selected by a GetMetmessage test operation are "invisible" to future GetMmessage operations in the same test case. By default, filtering is not performed by the Test Driver.

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 157 of 447

1

123456789

10111213

141516171819

202122232425

2627

2829303132333435363738

3940414243444546474849

23

Page 158: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

8.15.2 The Message Store

The Generic Message Store schema (Appendix D) describes the XML document format required for a Test Driver implementation. The schema facilitates a standard XPath query syntax to be used for retrieval and evaluation of received messages, notifications and (optionally) parameter names and values by the Test Driver. The “generic” schema design of the Message Store document object permits virtually any type of XML format for messages and notifications to be stored and queried via XPath.

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 158 of 447

1

123456789

101112131415161718192021222324

25

262728293031

23

Page 159: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

Figure 46 – Graphic representation of MessageStore element content

NameDescription Default

ValueSchema Required or Optional

Test Driver Exception Condition

MessageStoreContainer for all message, notification and possibly parameter values for a Test Case instance

Required

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 159 of 447

1

12

3

456789

23

Page 160: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

MessageContainer for a received message, along with some overhead attributes describing the type of message, its origin etc

Optional

synchTypeDescriptor of type of how message was received (synchronous|asynchronous)

Required

idTest driver provided unique identifier of received message

Required

serviceInstanceIdUnique identifier of the Test Service that generated the received message

Optional

serviceNameName of the Service that generated the received message

Optional

reportingActionName of the action that generated the received message

Optional

PartContainer for content of a single portion of entire message

Required

HeaderContainer of any name/value attribute associated with this particular message part

NameContainer for actual message part attribute name

Required

ValueContainer for actual message part attribute value

Required

ContentContainer for actual XML message. If message part is not XML, then no Content element is present

Optional

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 160 of 447

1

23

Page 161: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

#wildcardAny XML representation of message content (typically conforming to specified schemas)

Required

NotificationContainer for any type of message received by a Test Service and reported to the Test Driver

Optional

notificationTypeType of notification (message, errorURL, errorApp)

Required

Table 27 – List of content for MessageStore element

8.15.2.1 Semantics of the Message Store

The Message schema permits any type of message representation. Messages are required to have a unique ID within the Message Store, and a “synchType” attribute, identifying the message as received either synchronously or asynchronously. Messages (unlike Notifications) are received directly by the Test Driver (i.e. the Test Driver is in “connection” mode). Hence message content is more complete , since it was received “over the wire”, and all content is accessible to the Test Driver.

Notification messages are received via an interface from the Test Service. Because the messaging system under test cannot be trusted to provide the notifications, they are either passed locally (via the Test Service Notification interface) or remotely (via RPC) between Test Service and Test Driver via the Test Driver “Receive” interface. As a result, message content is restricted to what part of the message was exposed to the Test Service application layer. Therefore the representation or received messages passed via notification is less complete than message content directly received by the Test Driver (for example, MIME content may not be exposed to a Test Service application, therefore MIME headers are not represented in the Notification message). For all other purposes however, the format of the Notification message content is identical to that of a message directly received by the Test Driver.

8.15.2.2 Filter Result Structure

Like the Message Store, the Filter Result is a document object that can be queried for content testing and verification. Unlike the MessageStore, the FilterResult document object only needs to exist for the lifecycle of a single Thread. Any TestAssertion operation in a Thread queries the “current” FilterResult; meaning that each time a new Filter operation occurs, a new FilterResult object is created, replacing the previous one in the current Thread. The Filter Result document is identical (in structure) to the MessageStore document, with one exception. The root node of the Filter Result document is a FilterResult element, not a MessageStore element. The content of the Filter Result MUST be a node list object whose node(s) are XML elements. This means that any Filter XPath expression MUST always query for elements within the Message Store. Doing so means that the Test Driver will be able to

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 161 of 447

1

1

2

3

4

56789

1011

12131415161718192021

2223

24

25262728293031323334

23

Page 162: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

construct a document object from the Filter node list, and use it for subsequent VerifyContent and ValidateContent operations.

Figure 47 – Graphic representation of FilterResult element content

NameDeclaration Default Value Schema Required or

Optional

FilterResultContainer for XML representation of all messages received by Test Driver for a given Test Case

Required

#wildcardAny XML message content Optional ( “empty”

FilterResults are permitted)

#wildcardAny Message Store element content Optional

Table 18 defines the content of the FilterResult elementTable 28 – List of content for the FilterResult element

8.15.2.3 SetXPathParameter: Defining variables using content from a Filter result

Setting Parameters using user-defined or received Message Content:

In addition to storing message content, the Message Store MAY also store parameter values to be used in the evaluation of subsequent received messages. This is not an implementation requirement however, and how parameters are stored in the Message Store is implementation specific.

As in the case of the SetParameter test operation described in 4.2.2.1 , parameters may also be defined/redefined through the SetXPathParameter test operation. This operation extracts message content from the Message Store and stores it as a parameter value. Whether it is a message header, or an XML message payload being examined, the test writer may assign a parameter name, and an XPath pointing to the content to be stored as a parameter. Each parameter value is a string representation of the nodelist content retrieved by the XPath query.

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 162 of 447

1

12

3

45

67

89

10

1112

13

14

1516

17181920

21222324252627

282930

23

Page 163: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

Figure 48 – Graphical representation of the SetXPathParameter element

NameDescription Default

ValueSchema Required or Optional

Test Driver Exception Condition

SetXPathParameterContainer element for instructions to define and store a parameter, whose value is the result of an XPath query on a GetMessage Filter result

Optional Invalid XPath expression

scopeAttribute defines the “visibility” of the parameter. Enumerated values are (self | selfAndDescendents| parent)

selfAndDescendents

Optional

NameParameter name (either new, or replaces current parameter value)

Required

ExpressionXPath expression used to extract a string value from the Filter result

Required Invalid XPath expression

OR

Result is not a string

Table 29 – List of content for the SetXPathParameter element

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 163 of 447

1

12

3456

7

8

9

10

1112

23

Page 164: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

8.15.2.4 The TestAssertion Test Operation

The TestAssertion operation verifies a Test Requirement through one of three possible sub-operations. These sub-operations are: VerifyContent (compare message content to expected values), ValidateContent (validate the structure of a document, or a single item in the document) and VerifyTimeDifference (compare a computed time difference between two parameters against an expected value).

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 164 of 447

1

1

2

3

4

56789

10

23

Page 165: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 165 of 447

1

1

23

23

Page 166: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

Figure 29 – Graphic representation of expanded view of the TestAssertion elementFigure 49 - Graphic representation of expanded view of the TestAssertion element

Definition of Content

NameDescription Default Value Required/

OptionalTest Driver Exception Condition

TestAssertionContainer for directives to perform a test assertion operation

Optional

descriptionMetadata describing the nature of the test operation

Required

VerifyContent XPath expression to evaluate content of message(s)

Optional Invalid XPath expression

ValidateContentEmpty if entire XML document is to be validated or XPath expression to “point to” content to be validated for correct format if type is URI, dateTime or Signature

Optional Invalid XPath expression

contentTypeAn enumerated list of XML, URI, dateTime, or signature validation descriptors

Optional

schemaLocationURI describing location of validating XML schema, as defined in [XMLSCHEMA] or a URI of a Schematron schema

Optional Schema not found

VerifyTimeDifferenceInstruction to Test Driver to compute the time difference between two parameters and determine if the difference is less than equal or greater to an expected value

Optional

ParamNameParameter used in computation of time difference

Required Parameter not found

Operator(lessThen|lessThanOrEqual|equal|greaterThan|greaterThanOrEqual)

Required

DifferenceExpected value Required Not a valid

duration

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 166 of 447

1

12

3

45

6

23

Page 167: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

VerifyParameterContainer for instructions to verify a string value of a parameter against either a particular value, or the value of another Parameter

Optional

NameName of parameter to be evaluated Required Parameter

not found

ValueUser supplied value to compare Optional

ParameterRefUser supplied parameter reference (via Name)

Optional Parameter not found

WhenTrue/WhenFalse

Branching instruction based upon boolean result of the TestAssertion operation

Optional

WhenFalseBranching instruction based upon boolean result of the TestAssertion operation

Optional

Table 17 defines the content of the TestAssertion elementTable 30 – Content list of the TestAssertion element

8.15.2.4.1 Semantics of TestAssertion

The TestAssertion test operation MUST return either a true or false result (or semantically a pass/fail result) to the Test Driver.

If TestAssertion includes a VerifyContent sub-operation, the VerifyContent operation MUST yield a boolean value of true/false. If the verification is an XPath operation, the VerifyContent XPath expression may yield a node-set, boolean, number or string object. All of these resulting objects MUST be evaluated using the “boolean” function described in [XPath]. Those evaluation rules are:

· a returned node-set object evaluates to true if and only if it is non-empty

· a returned boolean object evaluates to true if it evaluates to “true” and false if it evaluates to “false”

· a returned number object evaluates to true if and only if it is neither positive or negative zero nor NaN

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 167 of 447

1

12

345678

9

101112

1314151617

18

19

2021

2223

23

Page 168: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

· a returned string object evaluates to true if and only if its length is non-zero

·

·

·

If the TestAssertion sub-operation is ValidateContent, then the content pointed to by the XPath expression contained in the text content MUST validate according to its contentType attribute . The ValidateContent operation MUST yield a boolean value of true/false. Rules for determining the resulting Boolean value are:

· if the contentType attribute value is XMLSchema, as defined in [XML] , the operation evaluates to true if the content at the specified XPath validates according to the schema defined in the “schemaLocation” attribute

· if the contentType is URI, as defined in [XMLSCHEMA], the operation evaluates to true if the content at the specified XPath is a valid URI

· if the contentType is dateTime, as defined in [XMLSCHEMA], the operation evaluates to true if the content afof the specified XPath is a valid dateTime

· if the contentType is signature, as defined in [XMLDSIG], the operation evaluates to true if the content at the specified XPath is a valid signature.

If the TestAssertion sub-operation is VerifyTimeDifference, then two dateTime parameter values are compared, with an operator of “lessThen, lessThenOrEqual, equal, greaterThan, greaterThanOrEqual”. The TestAssertion operation evaluates to “true” if the equation is satisfied, otherwise it returns a value of “false” to the Test Driver. The Test Driver MUST generate an exception and exit the Test Case if any of the parameters used in VerifyTimeDifference operation are not a dateTime type.

8.15.2.5 The WhenTrue and WhenFalse operations

8.15.2.6

Conditional branching can be done based upon the Boolean result of a TestAssertion operation. The WhenTrue and WhenFalse instructions redirect workflow to any number of a list of operations, including the execution of a child Threads within the current Thread.

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 168 of 447

1

1

2

3

4

5678

9

101112

1314

1516

1718

1920212223

2425262728

29

30

31323334

35363738

23

Page 169: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

Figure 50 Graphic representation of WhenTrue/WhenFalse instruction content

NameDescription Default Value Schema

Required or Optional

Test Driver Exception Condition

WhenTrueContainer for instructions if the parent TestAssertion returns a Boolean result of “true”

Optional

WhenFalseContainer for instructions if the parent TestAssertion returns a Boolean result of “false”

Optional

SetParameterSet name/value pair to be used by subsequent test operations

Optional

SetXPathParameter

Instruction to create or modify a parameter using the value returned by an XPath query to the current Filter Result

Optional Invalid XPath expression

PutMessageInstruction to Test Driver to send a message

Optional Message could not be sent

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 169 of 447

1

12

345

23

Page 170: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

InitiatorInstruction to Test Driver to pass a message declaration to the Test Service for sending

Optional Message could not be initiated by Test Service

GetMessageInstruction to Test Driver to retrieve message(s) from the Message Store

Optional Protocol error occurred

TestAssertionInstruction to the Test Driver to perform an evaluation

Optional

ContinueInstruction to “continue” execution, regardless of boolean outcome of the TestAssertion

Optional

ThreadRefReference via name to Thread to execute serially

Optional Thread not found

SplitDirective to run the referenced Thread(s) enclosed in the Split element in parallel

Optional Thread not found

JoinDirective to evaluate the boolean result of the enclosed referenced Thread(s) in a previous Split

Optional Thread not found

SleepInstruction to “wait” (specified in integer seconds) a period of time before executing the next test operation in the script

Optional

ExitInstruction to exit the Test Case, with one of three possible final result states (pass|fail|undetermined)

Optional

Table 31 – List of content for the WhenTrue and WhenFalse elements

8.15.3 Message Store Schema

The Generic Message Store schema (Appendix D) describes the XML document format required for a Test Driver implementation. The schema facilitates a standard XPath query syntax to be used for retrieval and evaluation of received messages, notifications and (optionally) parameter names and values by the Test Driver. The “generic” schema design of the Message Store document object permits virtually any type of XML format for messages and notifications to be stored and queried via XPath.

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 170 of 447

1

1

2

3

4

5

6

789

101112

23

Page 171: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

8.15.3.1

8.15.3.2

8.15.3.3

8.15.3.4

8.15.3.5

8.15.3.6

8.15.3.7 Figure 30 – Graphic representation of expanded view of the generic Test Driver MessageStore schema

8.15.3.8

8.15.3.9

8.15.3.10 Description of Content

8.15.3.11

NameDescription Default

ValueSchema Required or Optional

Test Driver Exception Condition

MessageStoreContainer for all message, notification and possibly parameter values for a Test Case instance

Required

MessageContainer for a received message, along with some overhead attributes describing the type of message, its origin etc

Optional

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 171 of 447

1

1

2

3

4

5

6

7

89

10

11

12

13

23

Page 172: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

synchTypeDescriptor of type of how message was received (synchronous|asynchronous)

Required

idTest driver provided unique identifier of received message

Required

serviceInstanceIdUnique identifier of the Test Service that generated the received message

Optional

serviceNameName of the Service that generated the received message

Optional

reportingActionName of the action that generated the received message

Optional

PartContainer for content of a single portion of entire messagae

Required

HeaderContainer of any name/value attribute associated with this particular message part

NameContainer for actual message part attribute name

Required

ValueContainer for actual message part attribute value

Required

ContentContainer for actual XML message. If message part is not XML, then no Content element is present

Optional

#wildcardAny XML representation of message content (typically conforming to specified schemas)

Required

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 172 of 447

1

23

Page 173: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

NotificationContainer for any type of message received by a Test Servce and reported to the Test Driver

Optional

notificationTypeType of notification (message, errorURL, errorApp)

Required

8.15.3.12 Semantics of the Message Store

The Message schema permits any type of message representation. Messages are required to have a unique ID within the Message Store, and a “synchType” attribute, identifying the message as received either synchronously or asynchronously. Messsages (unlike Notifications) are received directly by the Test Driver (i.e. the Test Driver is in “connection” mode). Hence message content is more complete , since it was received “over the wire”, and all content is accessible to the Test Driver.

Notification messages are received via an interface from the Test Service. Because the messaging system under test cannot be trusted to provide the notifications, they are either passed locally (via the Test Service Notification interface) or remotely (via RPC) between Test Service and Test Driver via the Test Driver “Receive” interface. As a result, message content is restricted to what part of the message was exposed to the Test Service application layer. Therefore the representation or received messages passed via notification is less complete than message content directly received by the Test Driver (for example, MIME content may not be exposed to a Test Service application, therefore MIME headers are not represented in the Notifcation message). For all other purposes however, the format of the Notification message content is identical to that of a message directly received by the Test Driver.

8.15.3.13 ebXML Specific Message Store Schema

The ebXML MS v2.0 Message Store Schema (Appendix D) defines the structure of an individual ebXML MS version 2.0 message received over HTTP. This schema MUST be used to define the message structure for ebXML MS V2.0 messages and notifications received by a Test Driver.

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 173 of 447

1

123

4

56789

1011

12131415161718192021

22

23

24252627

23

Page 174: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

Figure 31 – Graphic representation of expanded view of Message Store content model, specifically for ebXML/SOAP messaging services

Definition of Content

The content represented in the figure 31 above is that defined for a Message Store containing ebXML message content received directly by the Test Driver (in connection mode) and message notification content received by the Test Service (with the Test Driver in service mode). All SOAP and ebXML

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 174 of 447

1

123

456789

10111213

23

Page 175: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

Messaging Services message content validates to the schemas defined in their respective [SOAP] and [ebMS] specifications.

The normative schema describing Message Store content for ebXML MS v2.0 testing can be found in Appendix D.

8.15.3.14 Filter Result Schema

Like the Message Store, the Filter Result is a document object that can be queried for content testing and verification. Unlike the MessageStore, the FilterResult document object only needs to exist for the lifecycle of a single Thread. Any TestAssertion operation in a Thread queries the “current” FilterResult; meaning that each time a new Filter operation occurs, a new FilterResult object is created, replacing the previous one in the current Thread. The Filter Result document is identical (in structure) to the MessageStore document, with one exception. The root node of the Filter Result document is a FilterResult element, not a MessageStore element. The content of the Filter Result MUST be a node list object whose node(s) are XML elements. This means that any Filter XPath expression MUST always query for elements within the Message Store. Doing so means that the Test Driver will be able to construct a document object from the Filter node list, and use it for subsequent VerifyContent and ValidateContent operations.

Figure 32 – Generic Filter Result schema, permitting any Message Store element content

Definition of Content

NameDeclaration Default Value Schema Required or

Optional

FilterResultContainer for XML representation of all messages received by Test Driver for a given Test Case

Required

#wildcardAny Message Store element content Optional

Table 18 defines the content of the FilterResult element

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 175 of 447

1

12

345

6

7

89

101112131415161718192021

22

2324

252627282930

31

32

3334

23

Page 176: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

8.15.4

8.15.5 Test Report Schema

The Test Report schema (Appendix E ) describes the XML report document format required for Test Driver implementations. The schema uses a standard XML syntax for reporting results of Test Cases and their Threads. The Test Report is a “full trace” of the Test Case. All XML content in the XML Test Case is available in the Test Report. Additionally, a “result” element is appended to certain test operation elements in the trace, to provide diagnostic information. The “result” attribute MUST have a value of “pass”, “fail” or “undetermined”. The Test Report schema is too large to graphically display on this page. Please consult Appendix E if you wish to examine the normative schema.

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 176 of 447

1

1

2

3

456789

101112

131415

161718

23

Page 177: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

9 Test Material

Test material to support the ebXML Testing Framework includes: A Testing Profile XML documentA Test Requirements XML documentA Test Suite XML documentMessage Declaration Mutator documentCollaboration Agreement document (if needed to configure an MSH)A Test Report Document

9.1.1 Testing Profile Document

Both conformance and interoperability testing require the creation of a Testing Profile XML document, which lists the Test Requirements against which Test Cases will be executed. A Test Profile document MUST be included in an interoperability of conformance test suite. The Testing Profile document MUST validate against the ebProfile.xsd schema in Appendix A.

9.1.2 Test Requirements Document

Both conformance and interoperability testing require the existence of a Test Requirements document. While Test Requirements for conformance testing are specific and detailed against an ebXML specification, interoperability Test Requirements may be more generic, and less rigorous in their description and in their reference to a particular portion of an ebXML specification. However, both types of testing MUST provide a Test Requirements XML document that validates against the ebXMLTestRequirements.xsd schema in Appendix B.

9.1.3 Test Suite Document

Both conformance and interoperability testing require the existence of a Test Suite XML document that validates against the ebTest.xsd schema in Appendix C. It is important to note that test case scripting inside the Test Suite document MUST take into account the test harness architecture. Although a Test Driver in Connection Mode can manipulate low-level message content (such as HTTP or MIME header content) such content may not be accessible by a Test Driver in Service Mode, as the MSH does not communicate this data to the application layer. Therefore, the following test scripting rules SHOULD be followed when designing Test Cases:Message content described in a Message Declaration MUST be restricted to the business envelope and its content, and not include references to the transport protocol content. Transport level content MAY be described via the Header (name/value pair) child element of the message Part.

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 177 of 447

1

1

23456789

10

111213

14

1516171819

20

21

22232425262728

29

30

3132333435363738394041

42

23

Page 178: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

9.1.4 Mutator documents

When the Test Driver is in “connection mode”, a message declaration content MAY be “mutated” via an XSL or XUpdate processor into a valid message for transmission by the Test Driver. Likewise, when a Test Driver is in “service mode”, a message declaration content MAY be “mutated” in to a format suitable for interpretation by the Test Service Receive interface, and its message “initiator” method. Because a message Declaration element content can be any well-formed XML content, message Mutator content can also be any valid XSLT or XUpdate document that will mutate its corresponding Declaration content. It is HIGHLY RECOMMENDED that a particular testing community agree to a common message Declaration and Mutator content schema in order to provide understandability and minimize the duplication of effort in constructing conformance and interoperability test suites within that community.The OASIS IIC has adopted a message declaration schema for ebXML Messaging Services v2.0 conformance and interoperability testing. It has also defined an XSL stylesheet to mutate that declaration into an ebXML message. The schema and stylesheet are available in Appendix C.

Likewise, communities wishing to test other messaging services, or other web applications SHOULD devise a schema and stylesheet for their particular testing purpose. These documents SHOULD be published as a “recommended practice” for that particular testing community, to minimize the work involved in creating test suites that can be used with any IIC Test Framework implementation.

9.1.5 CPAs

For ebXML Messaging Services (MS) testing), both conformance and interoperability testing require the existence of a “base” CPA configuration that describes the “bootstrap” configuration of the candidate MSH for conformance and interoperability testing. Additional CPAs MAY be needed if testing requires different configurations of the candidate MSH. All CPA configurations MUST be uniquely defined (via a CPA ID) and documented in the Conformance or Interoperability Test Suite Specification document accompanying the Executable Test Suite. How the CPA configuration is presented to the candidate MSH imiplementationimplementation isnotis not defined in this specification.

9.1.6 Test Report Document

The Test Report is a “full trace” of the Test Case. All XML content in the XML Test Case is available in the Test Report. Additionally, a “result” element is appended to certain test operation elements in the trace, to provide diagnostic information. The “result” attribute MUST have a value of “pass”, “fail” or “undetermined”. The Test Report schema is too large to graphically display on this page. Please consult Appendix E if you wish to examine the normative schema.The Test Report schema (Appendix E ) describes the XML report document format required for Test Driver implementations. The schema uses a standard XML syntax for reporting results of Test Cases and their Threads.

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 178 of 447

1

123

4

56789

10111213141516

1718192021

22

23

2425262728293031

32

33

343536373839404142

4344

23

Page 179: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

10Testing Components and Scenarios

Because the Test Framework can be employed for more than one type of testing, not all testing components are necessary for each type of testing. And depending upon the type of testing, particular features within a Test Component may not be required to successfully execute the Test Suite.

10.1 Base features running ebXML Test Suites

10.2

10.3

"In order to support conformance and interoperability test suites for ebXML ( for Messaging and Registry), an implementation of Test Driver must support the following features:"

Feature Value

Transport HTTP 1.1

Envelope ebXML

ValidationType XMLSchema

MutatorType XSLT

XMLDSIGN Yes

Table 32 – List of required features for a minimally conformant Test Driver

10.4 Test Driver: Feature Profiles and Test Suites

Below are the features the MAY be implemented for an IIC Test Driver to be compliant with this specification and can be used as a “feature profile” to define the capabilities of a Test Driver. These features are also represented as Test Driver “configuration parameters” in the XML Executable Test Suite document described in section XX and normatively represented in Appendix XX. In order for a Test Driver to execute a Test Suite, it MUST be able to “match” the profile of features described in the bootstrap ConfigurationGroup of the Executable Test Suite document with its own capabilities. A Test Driver MUST verify that the bootstrap ConfigurationGroup content of an Executable Test Suite matches the capability features of the Test Driver. If a Test Driver does not implement one of the enumerated types defined in the Executable Test Suite ConfigurationGroup content, then the Test Driver MUST NOT MAY cease begin execution the Test Suite and MUST return a final result status of “undetermined” for the Test Suite. Alternately, the Test Driver MAY execute the Test Suite, but MUST set the final state of any Test Case requiring a particular feature that is not implemented to “undetermined”.

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 179 of 447

1

1

2345

6

7

8

9

1011

1213

14

15

16

1718192021222324252627282930

23

Page 180: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

Feature Value ebXML MS 2.0 Conformance Test Suite

ebXML RS V3.0 Conformance Test Suite

ebXML BPSS V1.05 Conformance Test Suite

Transport HTTP 1.1 HTTP 1.1 HTTP 1.1 HTTP 1.1

Envelope SWA

MIME

ebXML ebXML ebXML ebXML

ValidationType XMLSchema XMLSchema XMLSchema XMLSchema

Schematron

MutatorType XSLT XSLT XSLT XSLT

XUpdate

XMLDSIGN Yes/No Yes Yes Yes

Table 33 –Feature Requirement List for ebXML Conformance Test Suites

10.5 Test Service : Feature Profiles and Test Suites

10.6

10.7

Below are the optional features that an IIC compliant Test Service MAY implement in order to support conformance and interoperability testing. Note that a Test Service is not necessary in “black box” testing (i.e. testing that does not involeinvolve an interface with the internals of the implementation under test). Such is the case with remote application testing (such as ebXML Registry conformance testing).

However, in cases where testing requires an interface with the implementation under test (such as

Feature ebXML MS 2.0 Conformance Test Suite

ebXML MS 2.0 Basic Interoperability Profile Test Suite

ebXMLBPSS 1.05 Conformance Test Suite

IIC ebXML MS 2.0 Test Actions

Yes Yes No

IIC BPSS 1.05 Test Actions

No No Yes

Configuration Interface

No No No

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 180 of 447

1

12

3

4

5

6

7

8

910111213

1415

16

23

Page 181: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

Notification Interface

Yes Yes No

Initiation Interface Yes Yes No

Table 34 –Required Test Framework Components for ebXML Conformance Test Suites

10.8 Test Material: Minimally Required Documents

Testing scenarios can be as simple as A2A “debug” testing, to B2B conformance and interoperability testing. Documents required depend upon the type of testing being performed.

Test Document ebXML MS V2.0 Conformance Test Suite

ebXML MS V2.0 Basic Interoperability Profile Test Suite

ebXML Registry Services V3.0 Conformance Test Suite

ebXML BPSS V3.0 Conformance Test Suite

Test Profile Document

Yes Yes Yes Yes

Test Requirements Document

Yes Yes Yes Yes

Executable Test Suite Document

Yes Yes Yes Yes

Externally Referenced message declaration documents

Yes Yes Yes Yes

Externally referenced message mutator documents

Yes Yes Yes Yes

Externally referenced message payloads

Yes Yes Yes Yes

Table 35 –Document Requirements for ebXML Conformance Test Suites

:

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 181 of 447

1

1

2

34

5

678

910

11

12

13

14

1516

17

23

Page 182: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 182 of 447

1

1

23

Page 183: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

11 Sample Scenarios and Test Material

11.1 ebXML Registry Services Test Material Samples

The IIC Test Framework can be used in a variety of conformance and interoperability testing scenarios. At its simplest, it can be a “black box” conformance testing tool. This is the scenario for ebXML Registry Services testing. The requirements for ebXML Registry Services V3.0 conformance and interoperability testing include a Test Driver component, with Test Material that includes Test Requirements, Testing Requirement Profiles, and an Executable Test Suite. No Test Service is required in this scenario.

Below is a small sample of test material that could be used for ebXML RS V3.0 conformance testing:

…. To be written..\

11.2 MS Testing: ebXML Messaging Service Test Material Samples Testing a message service handler requires both a Test Driver and a Test Service component. The Test Service MUST have the actions specified in section xx of this specification. The IIC has written test material to support both interoperability and conformance testing of ebXML Messaging Services V2.0 impelementationsimplementations. This includes Test Profile, Test Requirements and Executable Test Suites. Below is a small sample of this material:

11.2.1 Example Test Requirements

Below are two XML documents illustrating how Test Requirements are constructed, in this case for an ebXML MS 2.0 implementation. In this particular case, the two documents represent Conformance and Interoperability Test Requirements for an ebXML Messaging Services V2.0 implementation. The example XML documents below include a subset of testing requirements defined for implementations of the ebXML Messaging Services v2.0 Specification. Each Test Requirement may have one or more Functional Requirements that together must be satisfied in order for an implementation to fully meet that Test Requirement.

11.2.2 Conformance Test Requirements

In the example below, a “packaging” TestRequirement element contains two FunctionalRequirement elements. The first Functional Requirement states that the primary SOAP message MUST be the first MIME part of the message. The second packaging Functional Requirement states that the Content-Type MIME header of the Message Package MUST be “text/xml”. If all Test Cases having a requirement reference to these two Functional Requirements “pass”, then an ebXML MS v2.0 implementation would be deemed “conformant” to the specification for the “Packaging” of ebXML messages. Of course, this is a limited set of Test Requirements for illustrative purposes only.

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 183 of 447

1

1

2

3

456789

1011

121314

15

161718192021

22

23

2425262728293031

3233

34

3536373839404142

23

Page 184: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

<?xml version="1.0" encoding="UTF-8" ?><Requirements xmlns="http://www.oasis-open.org/tc/ebxml-iic/conformance/reqs" xmlns:xsi="http://www.w3.org/2000/10/XMLSchema-instance" xsi:schemaLocation="http://www.oasis-open.org/tc/ebxml-iic/conformance/reqs/ ebXMLTestRequirements.xsd"><MetaData> <Title>ebMS 2.0 Conformance Test Requirements</Title>  <Description>Master Requirements File: ebXML Messaging Services 2.0</Description>   <Version>1.0</Version>   <Maintainer>Michael Kass<[email protected]></Maintainer>   <Location>http://www.oasis-open.org/commitees/ebxml-iic/ebmsg/requirements1.0.xml</Location>   <PublishDate>20 Feb 2003</PublishDate>   <Status>DRAFT</Status>   </MetaData><!—Main Test Requirement, for message packaging<TestRequirement id="req_id_2" name="PackagingSpecification" specRef="ebMS-2#2.1" functionalType="packaging"><!—Define first sub-requirement to fulfill packaging testing<FunctionalRequirement id="funreq_id_2" name="GenerateConformantSOAPWithAttachMIMEHeaders" specRef="ebMS-2#2.1.2"><Clause><!—Set first condition of the message is of type “multipart-mime”   <Condition id="condition_id_2" requirementType="required">For each generated mesage, if it is multipart MIME</Condition>   <Or /> <!—Set alternate condition that the message is not “text/xml”   <Condition id="condition_id_305" requirementType="required">if it is not text/xml</Condition>   </Clause><!—Define the Assertion that the first part of message is a SOAP message   <Assertion id="assert_id_2" requirementType="required">The primary SOAP message is carried in the root body part of the message.</Assertion>   </FunctionalRequirement><!—Define a second sub-requirement to fulfill packaging testing<FunctionalRequirement id="funreq_id_4" name="GenerateCorrectMessagePackageContent-Type" specRef="ebMS-2#2.1.2"><Clause><!—Define condition that the candidate MSH generates a message   <Condition id="condition_id_4" requirementType="required">For each generated message</Condition>   </Clause><!—Define the Assertion that the Content-Type of MIME header of that message is “text/xml”   <Assertion id="assert_id_4" requirementType="required">The Content-Type MIME header in the Message Package contains a type attribute of "text/xml".</Assertion>   </FunctionalRequirement></TestRequirement><!—Define a new Test Requirement, for the Core Extension Elements of messaging<TestRequirement id="req_id_3" name="CoreExtensionElements" specRef="ebMS-2#3.1.1" functionalType="packaging"><!—Define a sub-requirement to test the CPAId extension element<FunctionalRequirement id="funreq_id_35" name="ReportFailedCPAIDResolution" specRef="ebMS-2#3.1.2"><Clause><!—First , set condition of a candidate MSH receiving a message with an unresolvable CPAId  <Condition id="condition_id_40" requirementType="required">For each received message, if value of the CPAId element on an inbound message cannot be resolved</Condition>   </Clause><!—Next , define the Assertion that the candidate MSH MUST ( since requirementType is “required”) respond with an Error  <Assertion id="assert_id_35" requirementType="required">The MSH responds with an error (ValueNotRecognized/Error).</Assertion>   </FunctionalRequirement><!—Define a sub-requirement to test continuity in message ConversationId<FunctionalRequirement id="funreq_id_36" name="ProvideConversationIdIntegrity" specRef="ebMS-2#3.1.3">

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 184 of 447

1

123456789

101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869

23

Page 185: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

<!—First , set condition of all messages generated by a Candidate Implementation pertaining to a single CPAId  <Condition id="condition_id_41" requirementType="required">For each generated message within the context of the specified CPAId</Condition>   </Clause><!—Next , define the Assertion that a ConversationId element is always present  <Assertion id="assert_id_36" requirementType="required">The generated ConversationId will be present in all messages pertaining to the given conversation.</Assertion>   </FunctionalRequirement>

</TestRequirement></Requirements>

11.2.3 Interoperability Test Requirements

In the example below, a “basic interoperability profile” TestRequirement element contains two FunctionalRequirement elements. The first Functional Requirement states that ebXML MS implementation MUST be able to receive and send a basic ebXML message without a payload. The second packaging Functional Requirement states that an ebXML MS implementation MUST be able to process and return a simple ebXML message with one payload. If all Test Cases having a requirement reference to these two Functional Requirements “pass”, then an ebXML MS v2.0 implementation would be deemed “interoperable” to the Basic Interoperability Profile Specification for ebXML Messaging. Of course, this is a limited set of Test Requirements for illustrative purposes only.

<?xml version="1.0" encoding="UTF-8" ?><Requirements xmlns="http://www.oasis-open.org/tc/ebxml-iic/interop/reqs" xmlns:xsi="http://www.w3.org/2000/10/XMLSchema-instance" xsi:schemaLocation="http://www.oasis-open.org/tc/ebxml-iic/interop/reqs ebXMLTestRequirements.xsd"><MetaData> <Title>ebMS Interop Test Requirements</Title>  <Description>Interoperability Requirements File: ebXML Messaging Services 2.0</Description>   <Version>1.0</Version>   <Maintainer>Michael Kass <[email protected]></Maintainer>   <Location>http://www.oasis-open.org/commitees/ebxml-iic/ebmsg/ms_2.0_interop_requirements1.0.xml</Location>   <PublishDate>11 Feb 2003</PublishDate>   <Status>DRAFT</Status>   </MetaData><!—Main Test Requirement, for basic interoperability testing<TestRequirement id="req_id_1" name="Basic Interoperability Profile" specRef="MS 2.0 BIP 0.8" functionalType="basic interoperability"><!—Define first sub-requirement to fulfill basic testing, sending a “no payload” message<FunctionalRequirement id="funreq_id_1" name="BasicExchangeNoPayload" specRef="ebMS 2.0 BIP#3.2.1"><Clause><!—First , set condition of a candidate MSH receiving a message with no payload  <Condition id="condition_id_1" requirementType="required">For each received ebXML message with no payload, received by the “Dummy” action</Condition>   </Clause><!—Next , define the Assertion of expected behavior for the Dummy Action  <Assertion id="assert_id_1" requirementType="required">The message is received and processed, and a simple response message is returned</Assertion>   </FunctionalRequirement><!—Define second sub-requirement to fulfill basic testing, sending a “one payload” message

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 185 of 447

1

123456789

101112

13

14

15

161718192021222324

25262728293031323334353637383940414243444546474849505152535455565758596061

23

Page 186: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

<Clause><!—Set condition of a candidate MSH receiving a message with one payload  <Condition id="condition_id_2" requirementType="required">For each received ebXML message with one payload, received by the “Reflector” action </Condition>   </Clause><!—Define the Assertion of expected behavior for the Reflector Action  <Assertion id="assert_id_2" requirementType="required">The message is received and processed, and a simple response message with the identical payload is returned</Assertion>   </FunctionalRequirement><!—Define third sub-requirement to fulfill basic testing, sending a “three payload” message<FunctionalRequirement id="funreq_id_3" name="BasicExchangeThreePayloads" specRef="ebMS 2.0 BIP#3.2.3"><Clause><!—Set condition of a candidate MSH receiving a message with three payloads  <Condition id="condition_id_3" requirementType="required">For each received ebXML message with three payloads, received by the “Reflector” action</Condition>   </Clause><!—Define the Assertion of expected behavior for the Reflector Action  <Assertion id="assert_id_3" requirementType="required">The message is received and processed, and a simple response message with the identical three payloads are returned</Assertion>   </FunctionalRequirement><!—Define third sub-requirement to fulfill basic testing, generating Error messages<FunctionalRequirement id="funreq_id_4" name="BasicExchangeGenerateError" specRef="ebMS 2.0 BIP#3.2.4"><Clause><!—Set condition of a candidate MSH receiving an erroneous message  <Condition id="condition_id_4" requirementType="required">For each received basic ebXML message that should generate an Error </Condition>   </Clause><!—Define the Assertion of expected behavior for the candidate MSH   <Assertion id="assert_id_4" requirementType="required">The message is received and, the MSH returns a message to the originating party with an ErrorList and appropriate Error message </Assertion>   </FunctionalRequirement></TestRequirement></Requirements>

11.2.4 Example Test Profiles

Below are two XML documents illustrating how a Test Profile document is constructed, in this case for an ebXML MS v2.0 implementation. The example XML documents below represent a subset of test requirements to be exercised. The Test Profile document provides a list of ID references (pointers) to Test Requirements or Functional Requirements in an external Test Requirements document (see above). A Test Harness would read this document, resolve the location of the Test Requirements document, and then execute all Test Cases in the Test Suite document that point to (via ID reference) the Test Requirements listed below. Note that a Test Driver can execute Test Cases pointing to a Functional Requirement (discreet requirement) or a Test Requirement (a container of a group of Functional Requirements). If the TestRequirementRef id attribute value points to a Test Requirement, then all Test Cases for all child Functional Requirements will be executed by the Test Harness (This is a way to conveniently execute a cluster of Test Cases by specifying a single Test Requirement.). This method is used for both conformance and interoperability testing.

11.2.5 Conformance Test Profile Example

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 186 of 447

1

123456789

101112131415161718192021222324252627282930313233343536373839

40

41

42

43444546474849505152535455

56

57

58

23

Page 187: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

The Test Profile document below would be used to drive a Test Harness, by executing all Test Cases that point (via ID) to the listed Test Requirement references (including individual Functional Requirements and a single Test Requirement listed in the above example Conformance Test Requirements document.

<?xml version="1.0" encoding="UTF-8" ?> <TestProfile xmlns="http://www.oasis-open.org/tc/ebxml-iic/test-profile" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.oasis-open.org/tc/ebxml-iic/test-profile http://www.oasis-open.org/tc/ebxml-iic/test-profile/test-profile.xsd" requirementsLocation="ebxml-iic-msg-v20-conformance_reqs.xml" name="ebXML MS v2.0 Conformance Test Requirements" description="Core conformance testing profile for ebXML MS v2.0 implementations”>  <TestRequirementRef id="funreq_id_2" /> <!—Execute all Test Casses that reference the Basic SOAP message structure Functional Requirement  <TestRequirementRef id="funreq_id_4" /> <!—Execute all Test Cases that reference Message Packaeg Content Type Functional Requirement  <TestRequirementRef id="req_id_2" /> <!—Execut all Test Cases that reference all Functional Requirements within the Core Extension Elements Test Requirement  </TestProfile>

11.2.6 Interoperability Test Profile

The Test Profile document below would be used to drive a Test Harness, by executing all Test Cases that point ( via ID ) to the listed Test Requirement references ( including individual Functional Requirements and a single Test Requirement listed in the above example Interoperability Test Requirements document.

<?xml version="1.0" encoding="UTF-8" ?> <TestProfile xmlns="http://www.oasis-open.org/tc/ebxml-iic/test-profile" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.oasis-open.org/tc/ebxml-iic/test-profile http://www.oasis-open.org/tc/ebxml-iic/test-profile/test-profile.xsd" requirementsLocation="ebxml-iic-msg-v20-conformance_reqs.xml" name="ebXML MS v2.0 Conformance Test Requirements" description="Core conformance testing profile for ebXML MS v2.0 implementations”>  <TestRequirementRef id="funreq_id_1.1" /> <!—Execute all Test Casses that reference the “Basic Exchange, No Payload” Functional Requirement  <TestRequirementRef id="funreq_id_1.2" /> <!—Execute all Test Casses that reference the “Basic Exchange, One Payload” Functional Requirement  </TestProfile>

11.2.7 Conformance Test Suite

For brevity, only one Test Case is included in the Test Suite below. The complete ebXML MS v2.0 Conformance Test Suite is available at the OASIS IIC Technical Committee web site.A Test Driver executing conformance Test Cases operates in “connection” mode, meaning it is not interfaced to any MSH, and is acting on its own. The Test Case exercises a Functional Requirement listed in section 10.1 The Test Case below verifies that a ConversationId element is present in an ebXML response message

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 187 of 447

1

123

456789

10111213141516171819

20

21

22232425

2627282930313233343536373839

40

4142

43

4445464748495051

52

23

Page 188: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

<?xml version = "1.0" encoding = "UTF-8"?><?xml-stylesheet type="text/xsl" href="xslt\ebXMLTestsuite.xsl"?>

<!-- Copyright (C) The Organization for the Advancement of Structured Information Standards [OASIS] January 2002. All Rights Reserved.This document and translations of it may be copied and furnished to others, and derivative works that comment on or otherwise explain it or assist in its implementation may be prepared, copied, published and distributed, in whole or in part, without restriction of any kind, provided that the above copyright notice and this paragraph are included on all such copies and derivative works. However, this document itself may not be modified in any way, such as by removing the copyright notice or references to OASIS, except as needed for the purpose of developing OASIS specifications, in which case the procedures for copyrights defined in the OASIS Intellectual Property Rights document MUST be followed, or as required to translate it into languages other than English.The limited permissions granted above are perpetual and will not be revoked by OASIS or its successors or assigns.--><ebTest:TestSuite xmlns:ebTest = "http://www.oasis-open.org/tc/ebxml-iic/tests" configurationGroupRef = "mshc_basic" xmlns:ds = "http://www.oasis-open.org/tc/ebxml-iic/tests/xmldsig" xmlns:xlink = "http://www.w3.org/1999/xlink" xmlns:xsi = "http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation = "http://www.oasis-open.org/tc/ebxml-iic/tests schemas\ebTest.xsd"> <ebTest:MetaData> <ebTest:Title>ebMS 2.0 Conformance Test Suite</ebTest:Title> <ebTest:Description> Test for presence of ConversationId in ebXML MessageHeader element</ebTest:Description> <ebTest:Version>0.1</ebTest:Version> <ebTest:Maintainer>Michael Kass</ebTest:Maintainer> <ebTest:Location>ScriptingTestSuite.xml</ebTest:Location> <ebTest:PublishDate>05/20/2004</ebTest:PublishDate> <ebTest:Status>DRAFT</ebTest:Status> </ebTest:MetaData> <ebTest:ConfigurationGroup id = "mshc_basic"> <ebTest:Mode>connection</ebTest:Mode> <ebTest:StepDuration>300</ebTest:StepDuration> <ebTest:Transport>HTTP</ebTest:Transport> <ebTest:Envelope>ebXML</ebTest:Envelope> <ebTest:StoreAttachments>false</ebTest:StoreAttachments> <ebTest:ValidationType>XMLSchema</ebTest:ValidationType> <ebTest:MutatorType>XSLT</ebTest:MutatorType> <ebTest:SetParameter> <ebTest:Name>SenderParty</ebTest:Name> <ebTest:Value>TestDriver</ebTest:Value> </ebTest:SetParameter> <ebTest:SetParameter> <ebTest:Name>ReceiverParty</ebTest:Name> <ebTest:Value>TestService</ebTest:Value> </ebTest:SetParameter> <ebTest:SetParameter> <ebTest:Name>Service</ebTest:Name> <ebTest:Value>urn:ebxml:iic:test</ebTest:Value> </ebTest:SetParameter> <ebTest:SetParameter> <ebTest:Name>Action</ebTest:Name> <ebTest:Value>Dummy</ebTest:Value> </ebTest:SetParameter> <ebTest:Namespaces> <ebTest:SetNamespace> <ebTest:Name>eb</ebTest:Name> <ebTest:Value>http://www.oasis-open.org/committees/ebxml-msg/schema/msg-header-2_0.xsd</ebTest:Value> </ebTest:SetNamespace> <ebTest:SetNamespace> <ebTest:Name>soap</ebTest:Name>

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 188 of 447

1

12

3456789

101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960

6162646566

23

Page 189: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

<ebTest:Value>http://schemas.xmlsoap.org/soap/envelope/</ebTest:Value> </ebTest:SetNamespace> <ebTest:SetNamespace> <ebTest:Name>TEST</ebTest:Name> <ebTest:Value>http://www.oasis-open.org/tc/ebxml-iic/testing/messageStore</ebTest:Value> </ebTest:SetNamespace> </ebTest:Namespaces> </ebTest:ConfigurationGroup> <ebTest:TestCase id = "testcase_1" description = "ConversationId is present in message" requirementReferenceId = "funreq_id_36"> <ebTest:ThreadGroup> <ebTest:Thread name = "main"> <ebTest:ThreadRef nameRef = "thread_01"/> </ebTest:Thread> <ebTest:Thread name = "thread_01"> <ebTest:PutMessage description = "Send a message to the Dummy action"> <ebTest:SetMessage> <ebTest:Content> <ebTest:Declaration> <soap:Envelope xmlns:soap = "http://www.oasis-open.org/tc/ebxml-iic/tests/soap" xmlns:eb = "http://www.oasis-open.org/tc/ebxml-iic/tests/eb" xmlns:xlink = "http://www.w3.org/1999/xlink"> <soap:Header> <eb:MessageHeader> <eb:Action>Dummy</eb:Action> </eb:MessageHeader> </soap:Header> </soap:Envelope> </ebTest:Declaration> </ebTest:Content> <ebTest:Mutator> <ebTest:FileURI>ebXMLEnvelope.xsl</ebTest:FileURI> </ebTest:Mutator> </ebTest:SetMessage> </ebTest:PutMessage> <ebTest:GetMessage description = "Retrieve response message "> <ebTest:Filter>/TEST:MessageStore/mime:Message[mime:Container[1]/soap:Envelope/soap:Header/eb:MessageHeader[eb:CPAId='mshc_Basic' and eb:MessageData/eb:RefToMessageId=$MessageId and eb:Action='Mute']]</ebTest:Filter> </ebTest:GetMessage> <ebTest:TestAssertion description = "Verify that a ConversationId element is present in response'"> <ebTest:VerifyContent>/FilterResult/Message/soap:Envelope/soap:Header/eb:MessgeHeader/eb:ConversationId</ebTest:VerifyContent> </ebTest:TestAssertion> </ebTest:Thread> </ebTest:ThreadGroup> <ebTest:ThreadRef nameRef = "main"/> </ebTest:TestCase></ebTest:TestSuite><?xml version = "1.0" encoding = "UTF-8"?><?xml-stylesheet type="text/xsl" href="xslt\ebXMLTestsuite.xsl"?>

<!-- Copyright (C) The Organization for the Advancement of Structured Information Standards [OASIS] January 2002. All Rights Reserved.

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 189 of 447

1

1345

689

1011121314151617181920212223242526

27

29

313334353637

3840414243

444546484950

51525455565758596061626364

23

Page 190: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

This document and translations of it may be copied and furnished to others, and derivative works that comment on or otherwise explain it or assist in its implementation may be prepared, copied, published and distributed, in whole or in part, without restriction of any kind, provided that the above copyright notice and this paragraph are included on all such copies and derivative works. However, this document itself may not be modified in any way, such as by removing the copyright notice or references to OASIS, except as needed for the purpose of developing OASIS specifications, in which case the procedures for copyrights defined in the OASIS Intellectual Property Rights document MUST be followed, or as required to translate it into languages other than English.The limited permissions granted above are perpetual and will not be revoked by OASIS or its successors or assigns.--><ebTest:TestSuite xmlns:ebTest = "http://www.oasis-open.org/tc/ebxml-iic/tests" configurationGroupRef = "mshc_basic" xmlns:ds = "http://www.oasis-open.org/tc/ebxml-iic/tests/xmldsig" xmlns:xlink = "http://www.w3.org/1999/xlink" xmlns:xsi = "http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation = "http://www.oasis-open.org/tc/ebxml-iic/tests schemas\ebTest.xsd"> <ebTest:MetaData> <ebTest:Title>ebMS 2.0 Conformance Test Suite</ebTest:Title> <ebTest:Description> Test for presence of ConversationId in ebXML MessageHeader element</ebTest:Description> <ebTest:Version>0.1</ebTest:Version> <ebTest:Maintainer>Michael Kass</ebTest:Maintainer> <ebTest:Location>ScriptingTestSuite.xml</ebTest:Location> <ebTest:PublishDate>05/20/2004</ebTest:PublishDate> <ebTest:Status>DRAFT</ebTest:Status> </ebTest:MetaData> <ebTest:ConfigurationGroup id = "mshc_basic"> <ebTest:Mode>connection</ebTest:Mode> <ebTest:StepDuration>300</ebTest:StepDuration> <ebTest:Transport>HTTP</ebTest:Transport> <ebTest:Envelope>ebXML</ebTest:Envelope> <ebTest:StoreAttachments>false</ebTest:StoreAttachments> <ebTest:ValidationType>XMLSchema</ebTest:ValidationType> <ebTest:MutatorType>XSLT</ebTest:MutatorType> <ebTest:SetParameter> <ebTest:Name>SenderParty</ebTest:Name> <ebTest:Value>TestDriver</ebTest:Value> </ebTest:SetParameter> <ebTest:SetParameter> <ebTest:Name>ReceiverParty</ebTest:Name> <ebTest:Value>TestService</ebTest:Value> </ebTest:SetParameter> <ebTest:SetParameter> <ebTest:Name>Service</ebTest:Name> <ebTest:Value>urn:ebxml:iic:test</ebTest:Value> </ebTest:SetParameter> <ebTest:SetParameter> <ebTest:Name>Action</ebTest:Name> <ebTest:Value>Dummy</ebTest:Value> </ebTest:SetParameter> </ebTest:ConfigurationGroup> <ebTest:TestCase id = "testcase_1" description = "ConversationId is present in message" requirementReferenceId = "funreq_id_36"> <ebTest:ThreadGroup> <ebTest:Thread name = "main"> <ebTest:ThreadRef nameRef = "thread_01"/> </ebTest:Thread> <ebTest:Thread name = "thread_01"> <ebTest:PutMessage description = "Send a message to the Dummy action"> <ebTest:SetMessage> <ebTest:Content> <ebTest:Declaration> <soap:Envelope xmlns:soap = "http://www.oasis-open.org/tc/ebxml-iic/tests/soap" xmlns:eb = "http://www.oasis-open.org/tc/ebxml-iic/tests/eb" xmlns:xlink = "http://www.w3.org/1999/xlink"> <soap:Header> <eb:MessageHeader>

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 190 of 447

1

123456789

101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566

67

23

Page 191: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

<eb:Action>Dummy</eb:Action> </eb:MessageHeader> </soap:Header> </soap:Envelope> </ebTest:Declaration> </ebTest:Content> <ebTest:Mutator> <ebTest:FileURI>ebXMLEnvelope.xsl</ebTest:FileURI> </ebTest:Mutator> </ebTest:SetMessage> </ebTest:PutMessage> <ebTest:GetMessage description = "Retrieve response message "> <ebTest:Filter>/TEST:MessageStore/mime:Message[mime:Container[1]/soap:Envelope/soap:Header/eb:MessageHeader[eb:CPAId='mshc_Basic' and eb:MessageData/eb:RefToMessageId=$MessageId and eb:Action='Mute']]</ebTest:Filter> </ebTest:GetMessage> <ebTest:TestAssertion description = "Verify that a ConversationId element is present in response'"> <ebTest:VerifyContent>/FilterResult/Message/soap:Envelope/soap:Header/eb:MessgeHeader/eb:ConversationId</ebTest:VerifyContent> </ebTest:TestAssertion> </ebTest:Thread> </ebTest:ThreadGroup> <ebTest:ThreadRef nameRef = "main"/> </ebTest:TestCase></ebTest:TestSuite><?xml version="1.0" encoding="UTF-8"?><?xml-stylesheet type="text/xsl" href="xslt\ebXMLTestsuite.xsl"?><!-- Copyright (C) The Organization for the Advancement of Structured Information Standards [OASIS] January 2002. All Rights Reserved.This document and translations of it may be copied and furnished to others, and derivative works that comment on or otherwise explain it or assist in its implementation may be prepared, copied, published and distributed, in whole or in part, without restriction of any kind, provided that the above copyright notice and this paragraph are included on all such copies and derivative works. However, this document itself may not be modified in any way, such as by removing the copyright notice or references to OASIS, except as needed for the purpose of developing OASIS specifications, in which case the procedures for copyrights defined in the OASIS Intellectual Property Rights document MUST be followed, or as required to translate it into languages other than English.The limited permissions granted above are perpetual and will not be revoked by OASIS or its successors or assigns.--><ebTest:TestSuite xmlns:ebTest="http://www.oasis-open.org/tc/ebxml-iic/tests" configurationGroupRef="base" xmlns:ds="http://www.oasis-open.org/tc/ebxml-iic/tests/xmldsig" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.oasis-open.org/tc/ebxml-iic/tests schemas\ebTest.xsd"> <ebTest:MetaData> <ebTest:Description> Test for presence of ConversationId in ebXML MessageHeader element</ebTest:Description> <ebTest:Version>0.1</ebTest:Version> <ebTest:Maintainer>Michael Kass</ebTest:Maintainer> <ebTest:Location>ScriptingTestSuite.xml</ebTest:Location> <ebTest:PublishDate>05/20/2004</ebTest:PublishDate> <ebTest:Status>DRAFT</ebTest:Status> </ebTest:MetaData> <ebTest:ConfigurationGroup id="mshc_basic"> <ebTest:Mode>connection</ebTest:Mode> <ebTest:StepDuration>300</ebTest:StepDuration> <ebTest:Transport>HTTP</ebTest:Transport> <ebTest:Envelope>ebXML</ebTest:Envelope> <ebTest:StoreAttachments>false</ebTest:StoreAttachments> <ebTest:ValidationType>XMLSchema</ebTest:ValidationType> <ebTest:MutatorType>XSLT</ebTest:MutatorType> <ebTest:SetParameter>

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 191 of 447

1

1

356789

1012131415

161718202122

232426272829303132333435363738394041424344454647484950515253545556575859606162636465666768

23

Page 192: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

<ebTest:Value>TestDriver</ebTest:Value> </ebTest:SetParameter> <ebTest:SetParameter> <ebTest:Name>ReceiverParty</ebTest:Name> <ebTest:Value>TestService</ebTest:Value> </ebTest:SetParameter> <ebTest:SetParameter> <ebTest:Name>Service</ebTest:Name> <ebTest:Value>urn:ebxml:iic:test</ebTest:Value> </ebTest:SetParameter> <ebTest:SetParameter> <ebTest:Name>Action</ebTest:Name> <ebTest:Value>Dummy</ebTest:Value> </ebTest:SetParameter> </ebTest:ConfigurationGroup> <ebTest:TestCase id="testcase_1" description="ConversationId is present in message" requirementReferenceId="funreq_id_36"> <ebTest:ThreadGroup> <ebTest:Thread name="main"> <ebTest:ThreadRef nameRef="thread_01"/> </ebTest:Thread> <ebTest:Thread name="thread_01"> <ebTest:PutMessage description="Send a message to the Dummy action"> <ebTest:SetMessage> <ebTest:Packaging id="cid:message_envelope"/> <ebTest:Content> <ebTest:Declaration> <soap:Envelope xmlns:soap="http://www.oasis-open.org/tc/ebxml-iic/tests/soap" xmlns:eb="http://www.oasis-open.org/tc/ebxml-iic/tests/eb" xmlns:xlink="http://www.w3.org/1999/xlink"> <soap:Header> <eb:MessageHeader> <eb:Action>Dummy</eb:Action> </eb:MessageHeader> </soap:Header> </soap:Envelope> </ebTest:Declaration> </ebTest:Content> <ebTest:Mutator> <ebTest:FileURI> ebXMLEnvelope.xsl </ebTest:FileURI> </ebTest:Mutator> </ebTest:SetMessage> </ebTest:PutMessage> <ebTest:GetMessage description="Retrieve response message "> <ebTest:Filter>/TEST:MessageStore/mime:Message[mime:Container[1]/soap:Envelope/soap:Header/eb:MessageHeader[eb:CPAId='mshc_Basic' and eb:MessageData/eb:RefToMessageId=$MessageId and eb:Action='Mute']]</ebTest:Filter> </ebTest:GetMessage> <ebTest:TestAssertion description="Verify that a ConversationId element is present in response'"> <ebTest:VerifyContent>/FilterResult/Message/soap:Envelope/soap:Header/eb:MessgeHeader/eb:ConversationId</ebTest:VerifyContent> </ebTest:TestAssertion> </ebTest:Thread> </ebTest:ThreadGroup> <ebTest:ThreadRef nameRef="main"/> </ebTest:TestCase>

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 192 of 447

1

123456789

101112131415161718192021222324252627282930313233

34

36

38404142434445

46

4850515253

545556585960

61626465666768

23

Page 193: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

</ebTest:TestSuite>

11.2.8 Interoperability Test Suite

In the example below, a series of four Test Cases make up an Interoperability Test Suite. A Test Driver executing conformance Test Cases operates in “service” mode, meaning it is interfaced to a MSH. The Test Case exercises a Functional Interoperability Requirement. The Test Case below performs a basic message exchange with no message payload. The complete ebXML Basic Interoperability Profile Test Suite is available online at the OASIS IIC Technical CommiteCommittee web site.

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

<!-- Copyright (C) The Organization for the Advancement of Structured Information Standards [OASIS] January 2002. All Rights Reserved.This document and translations of it may be copied and furnished to others, and derivative works that comment on or otherwise explain it or assist in its implementation may be prepared, copied, published and distributed, in whole or in part, without restriction of any kind, provided that the above copyright notice and this paragraph are included on all such copies and derivative works. However, this document itself may not be modified in any way, such as by removing the copyright notice or references to OASIS, except as needed for the purpose of developing OASIS specifications, in which case the procedures for copyrights defined in the OASIS Intellectual Property Rights document MUST be followed, or as required to translate it into languages other than English.The limited permissions granted above are perpetual and will not be revoked by OASIS or its successors or assigns.--><ebTest:TestSuite xmlns:ebTest = "http://www.oasis-open.org/tc/ebxml-iic/tests" configurationGroupRef = "mshc_basic" xmlns:ds = "http://www.oasis-open.org/tc/ebxml-iic/tests/xmldsig" xmlns:xlink = "http://www.w3.org/1999/xlink" xmlns:xsi = "http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation = "http://www.oasis-open.org/tc/ebxml-iic/tests schemas\ebTest.xsd"> <ebTest:MetaData> <ebTest:Title>ebMS 2.0 Interop Test Suite</ebTest:Title> <ebTest:Description>ebXML MS Interoperabilty Test Suite </ebTest:Description> <ebTest:Version>1.1</ebTest:Version> <ebTest:Maintainer>Michael Kass</ebTest:Maintainer> <ebTest:Location>ScriptingTestSuite.xml</ebTest:Location> <ebTest:PublishDate>10/10/2004</ebTest:PublishDate> <ebTest:Status>DRAFT</ebTest:Status> </ebTest:MetaData> <ebTest:ConfigurationGroup id = "mshc_basic"> <ebTest:Mode>remote-service</ebTest:Mode> <ebTest:StepDuration>300</ebTest:StepDuration> <ebTest:Transport>HTTP</ebTest:Transport> <ebTest:Envelope>ebXML</ebTest:Envelope> <ebTest:StoreAttachments>false</ebTest:StoreAttachments> <ebTest:ValidationType>XMLSchema</ebTest:ValidationType> <ebTest:MutatorType>XSLT</ebTest:MutatorType> <ebTest:SetParameter> <ebTest:Name>SenderParty</ebTest:Name> <ebTest:Value>TestService1</ebTest:Value> </ebTest:SetParameter> <ebTest:SetParameter> <ebTest:Name>ReceiverParty</ebTest:Name> <ebTest:Value>TestService2</ebTest:Value> </ebTest:SetParameter> <ebTest:SetParameter> <ebTest:Name>Service</ebTest:Name> <ebTest:Value>urn:ebxml:iic:test</ebTest:Value> </ebTest:SetParameter> <ebTest:SetParameter> <ebTest:Name>Action</ebTest:Name> <ebTest:Value>Dummy</ebTest:Value> </ebTest:SetParameter>

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 193 of 447

1

1

2

345678

91011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465

23

Page 194: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

<ebTest:Namespaces> <ebTest:SetNamespace> <ebTest:Name>eb</ebTest:Name> <ebTest:Value>http://www.oasis-open.org/committees/ebxml-msg/schema/msg-header-2_0.xsd</ebTest:Value> </ebTest:SetNamespace> <ebTest:SetNamespace> <ebTest:Name>soap</ebTest:Name> <ebTest:Value>http://schemas.xmlsoap.org/soap/envelope/</ebTest:Value> </ebTest:SetNamespace> <ebTest:SetNamespace> <ebTest:Name>TEST</ebTest:Name> <ebTest:Value>http://www.oasis-open.org/tc/ebxml-iic/testing/messageStore</ebTest:Value> </ebTest:SetNamespace> </ebTest:Namespaces> </ebTest:ConfigurationGroup> <ebTest:TestCase id = "testcase_1" description = "Basic request/response test" requirementReferenceId = " funreq_id_1.1"> <ebTest:ThreadGroup> <ebTest:Thread name = "main"> <ebTest:ThreadRef nameRef = "thread_01"/> </ebTest:Thread> <ebTest:Thread name = "thread_01"> <ebTest:Initiator description = "Send a message to the Dummy action"> <ebTest:InitiateMessage> <ebTest:Content> <ebTest:Declaration> <soap:Envelope xmlns:soap = "http://www.oasis-open.org/tc/ebxml-iic/tests/soap" xmlns:eb = "http://www.oasis-open.org/tc/ebxml-iic/tests/eb"> <soap:Header> <eb:MessageHeader> <eb:Action>Dummy</eb:Action> </eb:MessageHeader> </soap:Header> </soap:Envelope> </ebTest:Declaration> </ebTest:Content> <ebTest:Mutator> <ebTest:FileURI>ebXMLEnvelope.xsl</ebTest:FileURI> </ebTest:Mutator> </ebTest:InitiateMessage> </ebTest:Initiator> <ebTest:GetMessage description = "Retrieve response message "> <ebTest:Filter>/TEST:MessageStore/Test:Notification[TEST:Part[1]/soap:Envelope/soap:Header/eb:MessageHeader[eb:CPAId='mshc_Basic' and eb:MessageData/eb:RefToMessageId=$MessageId and eb:Action='Mute']]</ebTest:Filter> </ebTest:GetMessage> <ebTest:TestAssertion description = "Verify that an ebXML Message notifcdation was received"> <ebTest:VerifyContent>/TEST:FilterResult/TEST:Notification </ebTest:VerifyContent> </ebTest:TestAssertion> </ebTest:Thread> </ebTest:ThreadGroup> <ebTest:ThreadRef nameRef = "main"/> </ebTest:TestCase></ebTest:TestSuite><?xml version="1.0" encoding="UTF-8"?><!-- Copyright (C) The Organization for the Advancement of Structured Information Standards [OASIS]

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 194 of 447

1

123

45789

10121314

15161819202122232425262728293031323334353637

38

404243444546

4749505152

535455575859

60626364656667686970

23

Page 195: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

January 2002. All Rights Reserved.This document and translations of it may be copied and furnished to others, and derivative works that comment on or otherwise explain it or assist in its implementation may be prepared, copied, published and distributed, in whole or in part, without restriction of any kind, provided that the above copyright notice and this paragraph are included on all such copies and derivative works. However, this document itself may not be modified in any way, such as by removing the copyright notice or references to OASIS, except as needed for the purpose of developing OASIS specifications, in which case the procedures for copyrights defined in the OASIS Intellectual Property Rights document MUST be followed, or as required to translate it into languages other than English.The limited permissions granted above are perpetual and will not be revoked by OASIS or its successors or assigns.--><ebTest:TestSuite xmlns:ebTest="http://www.oasis-open.org/tc/ebxml-iic/tests" configurationGroupRef="base" xmlns:ds="http://www.oasis-open.org/tc/ebxml-iic/tests/xmldsig" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.oasis-open.org/tc/ebxml-iic/tests schemas\ebTest.xsd"> <ebTest:MetaData> <ebTest:Description>ebXML MS Interoperabilty Test Suite </ebTest:Description> <ebTest:Version>0.1</ebTest:Version> <ebTest:Maintainer>Michael Kass</ebTest:Maintainer> <ebTest:Location>ScriptingTestSuite.xml</ebTest:Location> <ebTest:PublishDate>05/20/2004</ebTest:PublishDate> <ebTest:Status>DRAFT</ebTest:Status> </ebTest:MetaData> <ebTest:ConfigurationGroup id="mshc_basic"> <ebTest:Mode>connection</ebTest:Mode> <ebTest:StepDuration>300</ebTest:StepDuration> <ebTest:Transport>HTTP</ebTest:Transport> <ebTest:Envelope>ebXML</ebTest:Envelope> <ebTest:StoreAttachments>false</ebTest:StoreAttachments> <ebTest:ValidationType>XMLSchema</ebTest:ValidationType> <ebTest:MutatorType>XSLT</ebTest:MutatorType> <ebTest:SetParameter> <ebTest:Name>SenderParty</ebTest:Name> <ebTest:Value>TestDriver</ebTest:Value> </ebTest:SetParameter> <ebTest:SetParameter> <ebTest:Name>ReceiverParty</ebTest:Name> <ebTest:Value>TestService</ebTest:Value> </ebTest:SetParameter> <ebTest:SetParameter> <ebTest:Name>Service</ebTest:Name> <ebTest:Value>urn:ebxml:iic:test</ebTest:Value> </ebTest:SetParameter> <ebTest:SetParameter> <ebTest:Name>Action</ebTest:Name> <ebTest:Value>Dummy</ebTest:Value> </ebTest:SetParameter> </ebTest:ConfigurationGroup> <ebTest:TestCase id="testcase_1" description="Basic request/response test" requirementReferenceId=" funreq_id_1.1"> <ebTest:ThreadGroup> <ebTest:Thread name="main"> <ebTest:ThreadRef nameRef="thread_01"/> </ebTest:Thread> <ebTest:Thread name="thread_01"> <ebTest:PutMessage description="Send a message to the Dummy action"> <ebTest:SetMessage> <ebTest:Packaging id="cid:message_envelope"/> <ebTest:Content> <ebTest:Declaration> <soap:Envelope xmlns:soap="http://www.oasis-open.org/tc/ebxml-iic/tests/soap" xmlns:eb="http://www.oasis-open.org/tc/ebxml-iic/tests/eb"> <soap:Header> <eb:MessageHeader>

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 195 of 447

1

123456789

10111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970

23

Page 196: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

<eb:Action>Dummy</eb:Action> </eb:MessageHeader> </soap:Header> </soap:Envelope> </ebTest:Declaration> </ebTest:Content> <ebTest:Mutator> <ebTest:FileURI>ebXMLEnvelope.xsl</ebTest:FileURI> </ebTest:Mutator> </ebTest:SetMessage> </ebTest:PutMessage> <ebTest:GetMessage description="Retrieve response message "> <ebTest:Filter>/TEST:MessageStore/mime:Message[mime:Container[1]/soap:Envelope/soap:Header/eb:MessageHeader[eb:CPAId='mshc_Basic' and eb:MessageData/eb:RefToMessageId=$MessageId and eb:Action='Mute']]</ebTest:Filter> </ebTest:GetMessage> <ebTest:TestAssertion description="Verify that an ebXML Message was received"> <ebTest:VerifyContent>/FilterResult/Message/soap:Envelope/soap:Header/eb:MessgeHeader </ebTest:VerifyContent> </ebTest:TestAssertion> </ebTest:Thread> </ebTest:ThreadGroup> <ebTest:ThreadRef nameRef="main"/> </ebTest:TestCase></ebTest:TestSuite><?xml version = "1.0" encoding = "UTF-8"?>

<!-- Copyright (C) The Organization for the Advancement of Structured Information Standards [OASIS] January 2002. All Rights Reserved.This document and translations of it may be copied and furnished to others, and derivative works that comment on or otherwise explain it or assist in its implementation may be prepared, copied, published and distributed, in whole or in part, without restriction of any kind, provided that the above copyright notice and this paragraph are included on all such copies and derivative works. However, this document itself may not be modified in any way, such as by removing the copyright notice or references to OASIS, except as needed for the purpose of developing OASIS specifications, in which case the procedures for copyrights defined in the OASIS Intellectual Property Rights document MUST be followed, or as required to translate it into languages other than English.The limited permissions granted above are perpetual and will not be revoked by OASIS or its successors or assigns.--><ebTest:TestSuite xmlns:ebTest = "http://www.oasis-open.org/tc/ebxml-iic/tests" configurationGroupRef = "mshc_basic" xmlns:ds = "http://www.oasis-open.org/tc/ebxml-iic/tests/xmldsig" xmlns:xlink = "http://www.w3.org/1999/xlink" xmlns:xsi = "http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation = "http://www.oasis-open.org/tc/ebxml-iic/tests schemas\ebTest.xsd"> <ebTest:MetaData> <ebTest:Title>ebMS 2.0 Interop Test Suite</ebTest:Title> <ebTest:Description>ebXML MS Interoperabilty Test Suite </ebTest:Description> <ebTest:Version>0.1</ebTest:Version> <ebTest:Maintainer>Michael Kass</ebTest:Maintainer> <ebTest:Location>ScriptingTestSuite.xml</ebTest:Location> <ebTest:PublishDate>05/20/2004</ebTest:PublishDate> <ebTest:Status>DRAFT</ebTest:Status> </ebTest:MetaData> <ebTest:ConfigurationGroup id = "mshc_basic"> <ebTest:Mode>connection</ebTest:Mode> <ebTest:StepDuration>300</ebTest:StepDuration> <ebTest:Transport>HTTP</ebTest:Transport> <ebTest:Envelope>ebXML</ebTest:Envelope> <ebTest:StoreAttachments>false</ebTest:StoreAttachments> <ebTest:ValidationType>XMLSchema</ebTest:ValidationType>

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 196 of 447

1

1

356789

1012131415

161718202122

232426272829303132

3334353637383940414243444546474849505152535455565758596061626364656667686970

23

Page 197: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

<ebTest:MutatorType>XSLT</ebTest:MutatorType> <ebTest:SetParameter> <ebTest:Name>SenderParty</ebTest:Name> <ebTest:Value>TestDriver</ebTest:Value> </ebTest:SetParameter> <ebTest:SetParameter> <ebTest:Name>ReceiverParty</ebTest:Name> <ebTest:Value>TestService</ebTest:Value> </ebTest:SetParameter> <ebTest:SetParameter> <ebTest:Name>Service</ebTest:Name> <ebTest:Value>urn:ebxml:iic:test</ebTest:Value> </ebTest:SetParameter> <ebTest:SetParameter> <ebTest:Name>Action</ebTest:Name> <ebTest:Value>Dummy</ebTest:Value> </ebTest:SetParameter> </ebTest:ConfigurationGroup> <ebTest:TestCase id = "testcase_1" description = "Basic request/response test" requirementReferenceId = " funreq_id_1.1"> <ebTest:ThreadGroup> <ebTest:Thread name = "main"> <ebTest:ThreadRef nameRef = "thread_01"/> </ebTest:Thread> <ebTest:Thread name = "thread_01"> <ebTest:PutMessage description = "Send a message to the Dummy action"> <ebTest:SetMessage> <ebTest:Content> <ebTest:Declaration> <soap:Envelope xmlns:soap = "http://www.oasis-open.org/tc/ebxml-iic/tests/soap" xmlns:eb = "http://www.oasis-open.org/tc/ebxml-iic/tests/eb"> <soap:Header> <eb:MessageHeader> <eb:Action>Dummy</eb:Action> </eb:MessageHeader> </soap:Header> </soap:Envelope> </ebTest:Declaration> </ebTest:Content> <ebTest:Mutator> <ebTest:FileURI>ebXMLEnvelope.xsl</ebTest:FileURI> </ebTest:Mutator> </ebTest:SetMessage> </ebTest:PutMessage> <ebTest:GetMessage description = "Retrieve response message "> <ebTest:Filter>/TEST:MessageStore/mime:Message[mime:Container[1]/soap:Envelope/soap:Header/eb:MessageHeader[eb:CPAId='mshc_Basic' and eb:MessageData/eb:RefToMessageId=$MessageId and eb:Action='Mute']]</ebTest:Filter> </ebTest:GetMessage> <ebTest:TestAssertion description = "Verify that an ebXML Message was received"> <ebTest:VerifyContent>/FilterResult/Message/soap:Envelope/soap:Header/eb:MessgeHeader </ebTest:VerifyContent> </ebTest:TestAssertion> </ebTest:Thread> </ebTest:ThreadGroup> <ebTest:ThreadRef nameRef = "main"/> </ebTest:TestCase></ebTest:TestSuite>

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 197 of 447

1

123456789

1011121314151617181920212223242526272829303132333435

36

384041424344

4547484950

515253555657

5859616263646566

67

23

Page 198: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

11.2.9

11.3 ebXML Business Process Testing Sample Test Material

11.4 …. To be written..

(Normative) The Test Profile SchemaThe OASIS ebXML Implementation and Interoperability Committee has provided a version of the ebXML Test Profile schema using the schema vocabulary that conforms to the W3C XML Schema Recommendation specification [XMLSchema].<?xml version = "1.0" encoding = "UTF-8"?><!--Generated by XML Authority. Conforms to w3c http://www.w3.org/2001/XMLSchema--><schema xmlns = "http://www.w3.org/2001/XMLSchema" targetNamespace = "http://www.oasis-open.org/tc/ebxml-iic/test-profile" xmlns:tns = "http://www.oasis-open.org/tc/ebxml-iic/test-profile" > <!-- Generated by XML Authority. Conforms to w3c http://www.w3.org/2001/XMLSchema --> <!-- $Id: TestProfile.xsd,v 1.2 2002/07/02 15:28:27 matt Exp $ --> <element name = "TestProfile"> <complexType> <sequence> <element ref = "tns:Dependency" minOccurs = "0" maxOccurs = "unbounded"/> <element ref = "tns:TestRequirementRef" maxOccurs = "unbounded"/> </sequence> <attribute name = "requirementsLocation" use = "required" type = "anyURI"/> <attribute name = "name" use = "required" type = "string"/> <attribute name = "description" use = "required" type = "string"/> </complexType> </element> <element name = "Dependency"> <complexType> <attribute name = "name" use = "required" type = "string"/> <attribute name = "profileRef" use = "required" type = "anyURI"/> </complexType> </element>

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 198 of 447

1

1

2

3

456789

101112131415161718192021222324252627282930313233343536373839404142

23

Page 199: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

<element name = "TestRequirementRef"> <!-- To overide the conformance type of the underlying requirement ... --> <complexType> <sequence> <element name = "Comment" type = "string" minOccurs = "0" maxOccurs = "unbounded"/> </sequence> <attribute name = "id" use = "required" type = "string"/> <attribute name = "requirementType" use = "optional" type = "tns:requirement.type"/> </complexType> </element> <simpleType name = "requirement.type"> <restriction base = "string"> <enumeration value = "required"/> <enumeration value = "strongly recommended"/> <enumeration value = "recommended"/> <enumeration value = "optional"/> </restriction> </simpleType></schema>

(Normative) The Test Requirements SchemaThe OASIS ebXML Implementation and Interoperability Committee has provided a version of the ebXML Test Requirements schema using the schema vocabulary that conforms to the W3C XML Schema Recommendation specification [XMLSchema].

<?xml version = "1.0" encoding = "UTF-8"?><!--Generated by XML Authority. Conforms to w3c http://www.w3.org/2001/XMLSchema--><schema xmlns = "http://www.w3.org/2001/XMLSchema" targetNamespace = "http://www.oasis-open.org/tc/ebxml-iic/conformance/reqs" xmlns:tns = "http://www.oasis-open.org/tc/ebxml-iic/conformance/reqs" > <group name = "FunctionalRequirementGroup"> <sequence> <element ref = "tns:FunctionalRequirement"/> </sequence> </group> <!--

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 199 of 447

1

123456789

1011121314151617181920212223

242526272829

303132333435363738394041424344

23

Page 200: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

Copyright (C) The Organization for the Advancement of Structured Information Standards [OASIS] January 2002. All Rights Reserved.This document and translations of it may be copied and furnished to others, and derivative works that comment on or otherwise explain it or assist in its implementation may be prepared, copied, published and distributed, in whole or in part, without restriction of any kind, provided that the above copyright notice and this paragraph are included on all such copies and derivative works. However, this document itself may not be modified in any way, such as by removing the copyright notice or references to OASIS, except as needed for the purpose of developing OASIS specifications, in which case the procedures for copyrights defined in the OASIS Intellectual Property Rights document MUST be followed, or as required to translate it into languages other than English.The limited permissions granted above are perpetual and will not be revoked by OASIS or its successors or assigns.--> <!--Generated by XML Authority. Conforms to w3c http://www.w3.org/2000/10/XMLSchema--> <!-- OASIS/ebXML Test Suite Framework Description: Schema used to define ebXML Test Requirements instance document Author: Michael Kass Organization: NIST Author: Matthew MacKenzie Organization: XML Global

Date: 03/31/2002 Version 1.0 --> <!-- CHANGES: Version 1.0 (Matt): - added attributes requirementType and name to Level. - added other to functional.type enumeration. --> <element name = "TestRequirement"> <complexType> <sequence> <element ref = "tns:Clause" minOccurs = "0"/> <choice maxOccurs = "unbounded"> <element ref = "tns:Assertion"/> <element ref = "tns:AssertionRef"/>

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 200 of 447

1

123456789

1011121314151617181920212223242526

27282930313233343536373839404142434445

23

Page 201: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

</choice> <choice minOccurs = "0" maxOccurs = "unbounded"> <element ref = "tns:FunctionalRequirement"/> <element ref = "tns:TestRequirement"/> </choice> </sequence> <attribute name = "id" use = "required" type = "ID"/> <attribute name = "name" use = "required" type = "string"/> <attribute name = "specRef" use = "required" type = "string"/> <attribute name = "functionalType" use = "required" type = "string"/> <attribute name = "dependencyRef" use = "optional" type = "anyURI"/> </complexType> </element> <element name = "FunctionalRequirement"> <complexType> <sequence> <element ref = "tns:Clause" minOccurs = "0"/> <choice maxOccurs = "unbounded"> <element ref = "tns:Assertion"/> <element ref = "tns:AssertionRef"/> </choice> <choice minOccurs = "0" maxOccurs = "unbounded"> <element ref = "tns:FunctionalRequirement"/> <element ref = "tns:TestRequirement"/> </choice> </sequence> <attribute name = "id" use = "required" type = "ID"/> <attribute name = "name" use = "required" type = "string"/> <attribute name = "specRef" use = "required" type = "string"/> <attribute name = "testCaseRef" use = "optional" type = "anyURI"/> <attribute name = "dependencyRef" use = "optional" type = "anyURI"/> </complexType> </element> <element name = "Clause"> <complexType> <sequence> <choice> <element ref = "tns:Clause"/> <choice> <element ref = "tns:Condition"/> <element ref = "tns:ConditionRef"/> </choice> </choice>

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 201 of 447

1

123456789

10111213141516171819202122232425262728293031323334353637383940414243

23

Page 202: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

<sequence minOccurs = "0" maxOccurs = "unbounded"> <choice> <element ref = "tns:And"/> <element ref = "tns:Or"/> </choice> <choice> <element ref = "tns:Clause"/> <choice> <element ref = "tns:Condition"/> <element ref = "tns:ConditionRef"/> </choice> </choice> </sequence> </sequence> </complexType> </element> <element name = "Condition"> <complexType> <simpleContent> <extension base = "string"> <attribute name = "id" use = "required" type = "ID"/> <attribute name = "requirementType" use = "optional" type = "tns:requirement.type"/> </extension> </simpleContent> </complexType> </element> <element name = "ConditionRef"> <complexType> <attribute name = "id" use = "required" type = "IDREF"/> </complexType> </element> <element name = "And" type = "string"/> <element name = "Or" type = "string"/> <element name = "Assertion"> <complexType> <simpleContent> <extension base = "string"> <attribute name = "requirementType" use = "required" type = "tns:requirement.type"/> <attribute name = "id" use = "required" type = "ID"/> </extension> </simpleContent>

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 202 of 447

1

123456789

10111213141516171819202122232425262728293031323334353637383940414243

23

Page 203: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

</complexType> </element> <element name = "MetaData"> <complexType> <sequence> <element ref = "tns:Description"/> <element ref = "tns:Version"/> <element ref = "tns:Maintainer"/> <element ref = "tns:Location"/> <element ref = "tns:PublishDate"/> <element ref = "tns:Status"/> </sequence> </complexType> </element> <element name = "Description" type = "string"/> <element name = "Version" type = "string"/> <element name = "SourceControlInfo" type = "string"/> <element name = "Maintainer" type = "string"/> <element name = "Location" type = "anyURI"/> <element name = "PublishDate" type = "string"/> <element name = "Status" type = "tns:pubStatus.type"/> <simpleType name = "pubStatus.type"> <restriction base = "string"> <enumeration value = "DRAFT"/> <enumeration value = "FINAL"/> <enumeration value = "RETIRED"/> </restriction> </simpleType> <simpleType name = "requirement.type"> <restriction base = "string"> <enumeration value = "required"/> <enumeration value = "strongly recommended"/> <enumeration value = "recommended"/> <enumeration value = "optional"/> </restriction> </simpleType> <simpleType name = "testLevel.type"> <restriction base = "string"> <enumeration value = "full"/> <enumeration value = "most"/> <enumeration value = "partial"/> <enumeration value = "none"/> </restriction>

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 203 of 447

1

123456789

10111213141516171819202122232425262728293031323334353637383940414243

23

Page 204: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

</simpleType> <simpleType name = "functional.type"> <restriction base = "string"> <enumeration value = "security"/> <enumeration value = "reliable messaging"/> <enumeration value = "packaging"/> <enumeration value = "other"/> </restriction> </simpleType> <simpleType name = "layerList"> <list itemType = "string"/> </simpleType> <element name = "Requirements"> <complexType> <sequence> <element ref = "tns:MetaData"/> <element ref = "tns:TestRequirement" maxOccurs = "unbounded"/> </sequence> </complexType> </element> <element name = "AssertionRef"> <complexType> <attribute name = "id" use = "required" type = "IDREF"/> </complexType> </element></schema>

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 204 of 447

1

123456789

1011121314151617181920212223242526

2728293031323334353637383940414243

23

Page 205: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

(Normative) Test Suite SchemaThis schema defines the syntax for scripting Test Cases to be used by the IIC Test Framework.

<?xml version = "1.0" encoding = "UTF-8"?><!--Generated by XML Authority. Conforms to w3c http://www.w3.org/2001/XMLSchema--><schema xmlns = "http://www.w3.org/2001/XMLSchema" targetNamespace = "http://www.oasis-open.org/tc/ebxml-iic/tests" xmlns:ebTest = "http://www.oasis-open.org/tc/ebxml-iic/tests" xmlns:ds = "http://www.oasis-open.org/tc/ebxml-iic/tests/xmldsig" version = "1.0" elementFormDefault = "unqualified" attributeFormDefault = "unqualified"> <import namespace = "http://www.oasis-open.org/tc/ebxml-iic/tests/xmldsig" schemaLocation = "xmldsig.xsd"/> <!--<import namespace="http://www.oasis-open.org/tc/ebxml-iic/tests/xmldsig" schemaLocation="xmldsig.xsd"/> --> <!-- <import namespace = "http://www.oasis-open.org/tc/ebxml-iic/tests/xmldsig" schemaLocation = "xmldsig.xsd"/> --> <!-- <import namespace = "http://www.oasis-open.org/tc/ebxml-iic/tests/mime" schemaLocation = "file:///C:/scripting_poc_06_27_04/schemas/mime.xsd"/> --> <!-- edited with XML Spy v4.3 U (http://www.xmlspy.com) by Michael Kass (NIST) --> <!-- edited with XML Spy v4.3 U (http://www.xmlspy.com) by Michael Kass (NIST) -->

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 205 of 447

1

123456789

1011121314

151617181920212223242526272829303132333435363738394041424344

23

Page 206: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

<!-- edited with XML Spy v4.3 U (http://www.xmlspy.com) by Michael Kass (NIST) --> <!-- Copyright (C) The Organization for the Advancement of Structured Information Standards [OASIS] January 2002. All Rights Reserved.This document and translations of it may be copied and furnished to others, and derivative works that comment on or otherwise explain it or assist in its implementation may be prepared, copied, published and distributed, in whole or in part, without restriction of any kind, provided that the above copyright notice and this paragraph are included on all such copies and derivative works. However, this document itself may not be modified in any way, such as by removing the copyright notice or references to OASIS, except as needed for the purpose of developing OASIS specifications, in which case the procedures for copyrights defined in the OASIS Intellectual Property Rights document MUST be followed, or as required to translate it into languages other than English.The limited permissions granted above are perpetual and will not be revoked by OASIS or its successors or assigns.--> <element name = "TestSuite"> <complexType> <sequence> <element ref = "ebTest:MetaData"/> <element ref = "ebTest:ConfigurationGroup" maxOccurs = "unbounded"/> <element ref = "ebTest:ThreadGroup" minOccurs = "0"/> <element ref = "ebTest:TestServiceConfigurator" minOccurs = "0"/> <element ref = "ebTest:Message" minOccurs = "0" maxOccurs = "unbounded"/> <element ref = "ebTest:TestCase" maxOccurs = "unbounded"/> </sequence> <attribute name = "configurationGroupRef" use = "required" type = "anyURI"/> </complexType> </element> <element name = "MetaData"> <complexType> <sequence> <element ref = "ebTest:Description"/> <element ref = "ebTest:Version"/> <element ref = "ebTest:Maintainer"/> <element ref = "ebTest:Location"/> <element ref = "ebTest:PublishDate"/> <element ref = "ebTest:Status"/> </sequence> </complexType> </element>

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 206 of 447

1

123456789

101112131415161718192021222324252627282930313233343536373839404142434445

23

Page 207: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

<element name = "Description" type = "ebTest:non-empty-string"/> <element name = "Version" type = "ebTest:non-empty-string"/> <element name = "Maintainer" type = "ebTest:non-empty-string"/> <element name = "Location" type = "anyURI"/> <element name = "PublishDate" type = "ebTest:non-empty-string"/> <element name = "Status" type = "ebTest:non-empty-string"/> <element name = "TestCase"> <complexType> <sequence> <element ref = "ebTest:ThreadGroup" minOccurs = "0"/> <element ref = "ebTest:SetParameter" minOccurs = "0" maxOccurs = "unbounded"/> <choice maxOccurs = "unbounded"> <element ref = "ebTest:Thread"/> <element ref = "ebTest:ThreadRef"/> <element ref = "ebTest:Split"/> <element ref = "ebTest:Join"/> <element ref = "ebTest:Sleep"/> </choice> </sequence> <attribute name = "id" use = "required" type = "ID"/> <attribute name = "description" use = "required" type = "string"/> <attribute name = "author" use = "optional" type = "string"/> <attribute name = "version" use = "optional" type = "string"/> <attribute name = "requirementReferenceId" use = "required" type = "anyURI"/> <attribute name = "configurationGroupRef" use = "optional" type = "anyURI"/> </complexType> </element> <element name = "ConfigurationGroup"> <complexType> <sequence> <element ref = "ebTest:Mode"/> <element ref = "ebTest:StepDuration"/> <element ref = "ebTest:Transport"/> <element ref = "ebTest:Envelope"/> <element ref = "ebTest:StoreAttachments"/> <element ref = "ebTest:ValidationType"/> <element ref = "ebTest:MutatorType"/> <element ref = "ebTest:SetParameter" minOccurs = "0" maxOccurs = "unbounded"/> </sequence> <attribute name = "id" use = "required" type = "ID"/> </complexType>

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 207 of 447

1

123456789

10111213141516171819202122232425262728293031323334353637383940414243

23

Page 208: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

</element> <element name = "CPAId" type = "ebTest:non-empty-string"/> <element name = "Mode" type = "ebTest:mode.type"/> <element name = "SenderParty" type = "anyURI"/> <element name = "ReceiverParty" type = "anyURI"/> <element name = "Service" type = "anyURI"/> <element name = "Action" type = "ebTest:non-empty-string"/> <element name = "StepDuration" type = "integer"/> <element name = "Transport" type = "ebTest:transport.type"/> <element name = "Envelope" type = "ebTest:non-empty-string"/> <simpleType name = "mode.type"> <restriction base = "NMTOKEN"> <enumeration value = "local-service"/> <enumeration value = "remote-service"/> <enumeration value = "connection"/> </restriction> </simpleType> <simpleType name = "mimeHeader.type"> <restriction base = "NMTOKEN"> <enumeration value = "MIMEMessageContent-Type"/> <enumeration value = "MIMEMessageStart"/> <enumeration value = "Content-Type"/> <enumeration value = "start"/> <enumeration value = "charset"/> <enumeration value = "type"/> <enumeration value = "wildcard"/> </restriction> </simpleType> <simpleType name = "content.type"> <restriction base = "NMTOKEN"> <enumeration value = "XML"/> <enumeration value = "date"/> <enumeration value = "URI"/> <enumeration value = "signature"/> <enumeration value = "XPointer"/> </restriction> </simpleType> <simpleType name = "method.type"> <restriction base = "NMTOKEN"> <enumeration value = "xpath"/> <enumeration value = "md5"/> </restriction> </simpleType>

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 208 of 447

1

123456789

10111213141516171819202122232425262728293031323334353637383940414243

23

Page 209: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

<simpleType name = "messageContext.type"> <restriction base = "NMTOKEN"> <enumeration value = "true"/> <enumeration value = "false"/> </restriction> </simpleType> <simpleType name = "requirement.type"> <restriction base = "NMTOKEN"> <enumeration value = "required"/> <enumeration value = "stronglyrecommended"/> <enumeration value = "recommended"/> <enumeration value = "optional"/> </restriction> </simpleType> <simpleType name = "non-empty-string"> <restriction base = "string"> <minLength value = "1"/> </restriction> </simpleType> <simpleType name = "configAction.type"> <restriction base = "NMTOKEN"> <enumeration value = "query"/> <enumeration value = "replace"/> </restriction> </simpleType> <simpleType name = "action.type"> <restriction base = "NMTOKEN"> <enumeration value = "reset"/> <enumeration value = "modify"/> </restriction> </simpleType> <simpleType name = "configItem.type"> <restriction base = "NMTOKEN"/> </simpleType> <simpleType name = "parameter.type"> <restriction base = "NMTOKEN"> <enumeration value = "string"/> <enumeration value = "parameter"/> </restriction> </simpleType> <simpleType name = "connectivePredicate.type"> <restriction base = "NMTOKEN"> <enumeration value = "and"/>

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 209 of 447

1

123456789

10111213141516171819202122232425262728293031323334353637383940414243

23

Page 210: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

<enumeration value = "or"/> </restriction> </simpleType> <simpleType name = "thread.type"> <restriction base = "NMTOKEN"> <enumeration value = "synchronous"/> <enumeration value = "asynchronous"/> </restriction> </simpleType> <simpleType name = "matchResult.type"> <restriction base = "NMTOKEN"> <enumeration value = "pass"/> <enumeration value = "fail"/> </restriction> </simpleType> <simpleType name = "if.type"> <restriction base = "NMTOKEN"> <enumeration value = "andif"/> <enumeration value = "orif"/> </restriction> </simpleType> <simpleType name = "split.type"> <restriction base = "NMTOKEN"> <enumeration value = "andsplit"/> <enumeration value = "orsplit"/> </restriction> </simpleType> <simpleType name = "join.type"> <restriction base = "NMTOKEN"> <enumeration value = "andjoin"/> <enumeration value = "orjoin"/> </restriction> </simpleType> <simpleType name = "serviceMode.type"> <restriction base = "NMTOKEN"> <enumeration value = "loop"/> <enumeration value = "local-reporting"/> <enumeration value = "remote-reporting"/> </restriction> </simpleType> <simpleType name = "time.type"> <restriction base = "NMTOKEN"> <enumeration value = "timeToAcknowlegeReceipt"/>

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 210 of 447

1

123456789

10111213141516171819202122232425262728293031323334353637383940414243

23

Page 211: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

<enumeration value = "timeToAcknowledgeAcceptance"/> <enumeration value = "timeToPerform"/> <enumeration value = "other"/> </restriction> </simpleType> <simpleType name = "operator.type"> <restriction base = "NMTOKEN"> <enumeration value = "equal"/> <enumeration value = "lessThanl"/> <enumeration value = "lessThanOrEqual"/> <enumeration value = "greaterThan"/> <enumeration value = "greaterThanOrEqual"/> </restriction> </simpleType> <simpleType name = "assertionExit.type"> <restriction base = "NMTOKEN"> <enumeration value = "pass"/> <enumeration value = "fail"/> <enumeration value = "undetermined"/> </restriction> </simpleType> <simpleType name = "preconditionExit.type"> <restriction base = "NMTOKEN"> <enumeration value = "undetermined"/> </restriction> </simpleType> <simpleType name = "scope.type"> <restriction base = "NMTOKEN"> <enumeration value = "self"/> <enumeration value = "selfAndDescendents"/> </restriction> </simpleType> <simpleType name = "transport.type"> <restriction base = "NMTOKEN"> <enumeration value = "FTP"/> <enumeration value = "SMTP"/> <enumeration value = "HTTP"/> <enumeration value = "JMS"/> </restriction> </simpleType> <simpleType name = "envelope.type"> <restriction base = "NMTOKEN"> <enumeration value = "SOAP"/>

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 211 of 447

1

123456789

10111213141516171819202122232425262728293031323334353637383940414243

23

Page 212: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

<enumeration value = "ebXML"/> <enumeration value = "RNIF"/> <enumeration value = "JMS"/> </restriction> </simpleType> <simpleType name = "exception.type"> <restriction base = "NMTOKEN"> <enumeration value = "undetermined"/> </restriction> </simpleType> <simpleType name = "exitResult.type"> <restriction base = "NMTOKEN"> <enumeration value = "pass"/> <enumeration value = "fail"/> </restriction> </simpleType> <simpleType name = "validation.type"> <restriction base = "NMTOKEN"> <enumeration value = "XMLSchema"/> <enumeration value = "Schematron"/> </restriction> </simpleType> <simpleType name = "mutator.type"> <restriction base = "NMTOKEN"> <enumeration value = "XSLT"/> <enumeration value = "XUpdate"/> </restriction> </simpleType> <element name = "MessageExpression"> <complexType> <sequence> <element ref = "ebTest:ErrorMessage"/> </sequence> </complexType> </element> <element name = "ErrorMessage" type = "ebTest:non-empty-string"/> <element name = "PutMessage"> <complexType> <sequence> <element ref = "ebTest:SetMessage"/> <element ref = "ebTest:SetPayload" minOccurs = "0" maxOccurs = "unbounded"/> </sequence>

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 212 of 447

1

123456789

10111213141516171819202122232425262728293031323334353637383940414243

23

Page 213: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

<attribute name = "description" use = "required" type = "string"/> <attribute name = "repeatWithSameContext" use = "optional" type = "integer"/> <attribute name = "repeatWithNewContext" use = "optional" type = "integer"/> </complexType> </element> <element name = "GetPayload"> <complexType> <sequence> <choice> <element ref = "ebTest:Content-ID"/> <element ref = "ebTest:Content-Location"/> <element ref = "ebTest:Index"/> </choice> <element ref = "ebTest:SetXPathParameter" minOccurs = "0" maxOccurs = "unbounded"/> </sequence> <attribute name = "description" use = "required" type = "string"/> </complexType> </element> <element name = "GetMessage"> <complexType> <sequence maxOccurs = "unbounded"> <element ref = "ebTest:Filter"/> <element ref = "ebTest:SetXPathParameter" minOccurs = "0" maxOccurs = "unbounded"/> </sequence> <attribute name = "description" use = "required" type = "string"/> <attribute name = "mask" use = "optional" type = "boolean"/> </complexType> </element> <element name = "Filter"> <complexType> <simpleContent> <extension base = "ebTest:non-empty-string"> <attribute name = "stepDuration" use = "optional" type = "integer"/> </extension> </simpleContent> </complexType> </element> <element name = "SetMessage"> <complexType> <sequence>

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 213 of 447

1

123456789

10111213141516171819202122232425262728293031323334353637383940414243

23

Page 214: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

<element ref = "ebTest:Packaging" minOccurs = "0"/> <element ref = "ebTest:Content"/> <element ref = "ebTest:Mutator" minOccurs = "0"/> <element ref = "ebTest:DSign" minOccurs = "0" maxOccurs = "unbounded"/> </sequence> <attribute name = "description" use = "optional" type = "string"/> <attribute name = "id" use = "optional" type = "ebTest:non-empty-string"/> </complexType> </element> <element name = "SetPayload"> <complexType> <sequence> <element ref = "ebTest:Packaging" minOccurs = "0"/> <choice> <element ref = "ebTest:Content"/> <element ref = "ebTest:DSign"/> </choice> <element ref = "ebTest:Mutator" minOccurs = "0"/> </sequence> <attribute name = "description" use = "optional" type = "string"/> <attribute name = "id" use = "required" type = "ebTest:non-empty-string"/> </complexType> </element> <element name = "TestAssertion"> <complexType> <sequence> <choice> <element ref = "ebTest:VerifyContent"/> <element ref = "ebTest:ValidateContent"/> <element ref = "ebTest:VerifyTimeDifference"/> </choice> <element name = "WhenTrue" minOccurs = "0"> <complexType> <choice> <element ref = "ebTest:Continue"/> <element ref = "ebTest:ThreadRef"/> <element ref = "ebTest:Split"/> <element name = "Exit" type = "ebTest:assertionExit.type"/> </choice> </complexType> </element>

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 214 of 447

1

123456789

10111213141516171819202122232425262728293031323334353637383940414243

23

Page 215: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

<element name = "WhenFalse" minOccurs = "0"> <complexType> <choice> <element ref = "ebTest:Continue"/> <element ref = "ebTest:ThreadRef"/> <element ref = "ebTest:Split"/> <element name = "Exit" type = "ebTest:assertionExit.type"/> </choice> </complexType> </element> </sequence> <attribute name = "description" use = "required" type = "string"/> </complexType> </element> <element name = "MimeHeader" type = "ebTest:mimeHeader.type"/> <element name = "MimeHeaderValue" type = "ebTest:non-empty-string"/> <element name = "Content-Location" type = "ebTest:non-empty-string"/> <element name = "Index" type = "integer"/> <element name = "FileURI" type = "anyURI"/> <element name = "PayloadRef" type = "ebTest:non-empty-string"/> <element name = "Signature" type = "base64Binary"/> <element name = "Content-ID" type = "ebTest:non-empty-string"/> <element name = "MessageDeclaration"> <complexType> <sequence> <any namespace = "##other" processContents = "lax" minOccurs = "0" maxOccurs = "unbounded"/> </sequence> </complexType> </element> <element name = "ValidateContent"> <complexType> <simpleContent> <extension base = "ebTest:validation.type"> <attribute name = "contentType" use = "required" type = "ebTest:content.type"/> <attribute name = "schemaLocation" use = "optional" type = "anyURI"/> </extension> </simpleContent> </complexType> </element> <element name = "VerifyContent" type = "ebTest:non-empty-string"/>

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 215 of 447

1

123456789

1011121314151617181920212223242526272829303132333435363738394041424344

23

Page 216: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

<element name = "Message"> <complexType> <sequence> <any namespace = "##other" processContents = "lax" minOccurs = "0" maxOccurs = "unbounded"/> </sequence> <attribute name = "id" use = "required" type = "ID"/> </complexType> </element> <element name = "SetParameter"> <complexType> <sequence> <element name = "Name" type = "ebTest:non-empty-string"/> <choice> <element name = "Value" type = "ebTest:non-empty-string"/> <element name = "ParameterRef" type = "ebTest:non-empty-string"/> </choice> </sequence> <attribute name = "scope" use = "optional" type = "ebTest:scope.type"/> </complexType> </element> <element name = "Mutator"> <complexType> <choice> <element ref = "ebTest:XSL"/> <element ref = "ebTest:XUpdate"/> </choice> </complexType> </element> <element name = "XSL" type = "ebTest:non-empty-string"/> <element name = "XUpdate" type = "ebTest:non-empty-string"/> <element name = "BooleanClause"> <complexType> <attribute name = "booleanPredicate" use = "required" type = "boolean"/> </complexType> </element> <element name = "DSign"> <complexType> <sequence> <element ref = "ds:Signature"/> </sequence> </complexType>

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 216 of 447

1

123456789

10111213141516171819202122232425262728293031323334353637383940414243

23

Page 217: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

</element> <element name = "Declaration"> <complexType> <sequence> <any namespace = "##other" processContents = "lax" minOccurs = "0" maxOccurs = "unbounded"/> </sequence> </complexType> </element> <element name = "Thread"> <complexType> <choice maxOccurs = "unbounded"> <element ref = "ebTest:SetParameter"/> <element ref = "ebTest:PutMessage"/> <element ref = "ebTest:Initiator"/> <element ref = "ebTest:GetMessage"/> <element ref = "ebTest:TestAssertion"/> <element ref = "ebTest:ThreadRef"/> <element ref = "ebTest:Split"/> <element ref = "ebTest:Join"/> <element ref = "ebTest:Sleep"/> </choice> <attribute name = "name" use = "required" type = "ID"/> <attribute name = "description" use = "optional" type = "string"/> </complexType> </element> <element name = "ThreadRef"> <complexType> <attribute name = "nameRef" use = "required" type = "IDREF"/> <attribute name = "configurationGroupRef" use = "optional" type = "anyURI"/> <attribute name = "loop" use = "optional" type = "integer"/> <attribute name = "instanceId" use = "optional" type = "string"/> </complexType> </element> <element name = "Pass"> <complexType/> </element> <element name = "Fail"> <complexType/> </element> <element name = "ThreadGroup"> <complexType> <sequence>

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 217 of 447

1

123456789

10111213141516171819202122232425262728293031323334353637383940414243

23

Page 218: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

<element ref = "ebTest:Thread" maxOccurs = "unbounded"/> </sequence> </complexType> </element> <element name = "Sleep" type = "integer"/> <element name = "Split"> <complexType> <sequence maxOccurs = "unbounded"> <element ref = "ebTest:ThreadRef"/> </sequence> </complexType> </element> <element name = "Join"> <complexType> <sequence maxOccurs = "unbounded"> <element ref = "ebTest:ThreadRef"/> </sequence> <attribute name = "joinType" use = "optional" type = "ebTest:join.type"/> </complexType> </element> <element name = "Initiator"> <complexType> <sequence> <element name = "SetMessage"> <complexType> <sequence> <element ref = "ebTest:Content"/> <element ref = "ebTest:Mutator" minOccurs = "0"/> <element ref = "ebTest:DSign" minOccurs = "0" maxOccurs = "unbounded"/> </sequence> </complexType> </element> <element name = "SetPayload" maxOccurs = "unbounded"> <complexType> <sequence> <element ref = "ebTest:Content" minOccurs = "0"/> <element ref = "ebTest:Mutator" minOccurs = "0"/> <element ref = "ebTest:DSign" minOccurs = "0" maxOccurs = "unbounded"/> </sequence>

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 218 of 447

1

123456789

1011121314151617181920212223242526272829303132333435363738394041424344

23

Page 219: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

<attribute name = "id" use = "required" type = "ebTest:non-empty-string"/> </complexType> </element> </sequence> <attribute name = "description" use = "required" type = "string"/> </complexType> </element> <element name = "TestServiceConfigurator"> <complexType> <sequence> <element ref = "ebTest:ServiceMode"/> <element ref = "ebTest:ResponseURL"/> <element ref = "ebTest:NotificationURL"/> <element ref = "ebTest:PayloadDigests" minOccurs = "0"/> </sequence> </complexType> </element> <element name = "MessageRef" type = "IDREF"/> <element name = "ConfigurationItem"> <complexType> <sequence> <element name = "Name" type = "ebTest:non-empty-string"/> <element name = "Value" type = "ebTest:non-empty-string"/> </sequence> </complexType> </element> <element name = "ErrorURL" type = "anyURI"/> <element name = "NotificationURL" type = "anyURI"/> <element name = "SetXPathParameter"> <complexType> <sequence> <element name = "Name" type = "ebTest:non-empty-string"/> <element name = "Expression" type = "ebTest:non-empty-string"/> </sequence> <attribute name = "scope" use = "optional" type = "ebTest:scope.type"/> </complexType> </element> <element name = "ResponseURL" type = "anyURI"/> <element name = "StoreAttachments" type = "boolean"/> <element name = "OperationMode" type = "string"/> <element name = "PayloadDigests"> <complexType>

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 219 of 447

1

123456789

10111213141516171819202122232425262728293031323334353637383940414243

23

Page 220: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

<sequence> <element name = "Payload" maxOccurs = "unbounded"> <complexType> <sequence> <element name = "Id" type = "anyURI"/> <element name = "Digest" type = "base64Binary"/> </sequence> </complexType> </element> </sequence> </complexType> </element> <element name = "ServiceMode" type = "ebTest:serviceMode.type"/> <element name = "Transaction"> <complexType> <sequence maxOccurs = "unbounded"> <choice maxOccurs = "unbounded"> <element ref = "ebTest:PutMessage"/> <element ref = "ebTest:Initiator"/> </choice> <element ref = "ebTest:GetMessage" minOccurs = "0" maxOccurs = "unbounded"/> </sequence> <attribute name = "timeToPerform" use = "optional" type = "duration"/> </complexType> </element> <element name = "VerifyTimeDifference"> <complexType> <sequence> <element ref = "ebTest:ParamName"/> <element ref = "ebTest:ParamName"/> <element ref = "ebTest:Operator"/> <element ref = "ebTest:Difference"/> </sequence> </complexType> </element> <element name = "TimeToAcknowledgeReceipt"> <complexType> <sequence> <element ref = "ebTest:XPathExpression"/> </sequence> </complexType>

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 220 of 447

1

123456789

10111213141516171819202122232425262728293031323334353637383940414243

23

Page 221: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

</element> <element name = "TimeToAcknowledgeAcceptance"> <complexType> <sequence> <element ref = "ebTest:XPathExpression"/> </sequence> </complexType> </element> <element name = "Difference" type = "duration"/> <element name = "Operator" type = "ebTest:operator.type"/> <element name = "XPathExpression" type = "ebTest:non-empty-string"/> <element name = "Continue"> <complexType/> </element> <element name = "ParamName" type = "ebTest:non-empty-string"/> <element name = "VerifyTimeToPerform"> <complexType> <sequence> <element ref = "ebTest:ThreadName" maxOccurs = "unbounded"/> </sequence> <attribute name = "maxTime" use = "required" type = "duration"/> </complexType> </element> <element name = "ThreadName" type = "IDREF"/> <element name = "Header"> <complexType> <sequence> <element ref = "ebTest:Name"/> <element ref = "ebTest:Value" minOccurs = "0"/> <element ref = "ebTest:Attribute"/> </sequence> </complexType> </element> <element name = "Name" type = "ebTest:non-empty-string"/> <element name = "Value" type = "ebTest:non-empty-string"/> <element name = "Packaging"> <complexType> <sequence> <element ref = "ebTest:Header" minOccurs = "0"/> </sequence> </complexType> </element> <element name = "PackagingAPI" type = "string"/>

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 221 of 447

1

123456789

10111213141516171819202122232425262728293031323334353637383940414243

23

Page 222: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

<element name = "Content"> <complexType> <choice> <element ref = "ebTest:Declaration"/> <element ref = "ebTest:FileURI"/> <element ref = "ebTest:MessageRef"/> </choice> </complexType> </element> <element name = "Attribute"> <complexType> <sequence> <element ref = "ebTest:Name"/> <element ref = "ebTest:Value"/> </sequence> </complexType> </element> <element name = "ExitResult" type = "string"/> <element name = "ValidationType" type = "ebTest:validation.type"/> <element name = "MutatorType" type = "ebTest:mutator.type"/></schema>(Normative) ebXML Message Declaration Schema and supporting XSL StylesheetThe OASIS ebXML Implementation and Interoperability Committee has developed a version of the ebXML message packaging and message declaration schemas that conform to the W3C XML Schema Recommendation specification [XMLSchema]. It is HIGHLY RECOMMENDED that test writers use this format to describe message envelope construction.. Doing so minimizes duplication of effort and promotes a common declarative syntax for describing ebXML message envelope onstruction. However, because an XSL or XUpdate Mutatator can parse and generate an ebXML message envelope from any syntax defined in a Declaration, this is not Mandatory.

The purpose of this message Declaration schema is to provide a Test Driver, with the necessary declarative information to construct an ebXML message (when in “connection” mode) or to construct a modified ebXML message declaration (when in “service” mode) for conformance or interoperability testing respectively. When in connection mode, the Test Driver accomplishes this by transforming (or “mutating”) a basic message declaration into an actual ebXML message or a modified declaration using XSLT or XUpdate to perform the transformation. The resulting message can then be sent by the Test Driver.

If the Test Driver is in “service mode”, the resulting ebXML message declaration is passed to the Test Service via its “initiator” method.The Test Service must interpret the message declaration produced by the Test Driver and (using its own MSH API ) construct the equivalent message, adding its own unique message Timestamp, ConversationId and message TimeToLive values to the resulting message.Below is an illustration of the schema used to define the syntax necessary to instruct a Test Driver to build an ebXML message (or modify the declaration to include “run-time” messaging content). The semantic meaning of this schema is explained below:

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 222 of 447

1

123456789

1011121314151617181920212223242526272829

3031323334353637

3839404142434445

23

Page 223: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

Figure 40 – Graphical representation of declarative syntax for Test Driver to construct an ebXML Message (when in “connection” mode) or generate a modified ebXML Message Declaration (when in “service” mode)

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 223 of 447

1

123456

789

1011121314151617181920

23

Page 224: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

Message Envelope Packaging:

Message envelope packaging is done by the Test Driver, normally in a transparent manner. However, if a test writer wishes to manipulate the packaging of a message, they may do so by declaring those packaging changes using one of the IIC schemas in this document that represent a generic, declarative format for modifying a message package. In this particular case, the schema illustrated and defined MUST be used to define MIME packaging changes to the message. A Test Driver MUST be able to interpret the packaging declaration into the appropriate API calls necessary to modify package content.NOTE: Message packaging is NOT performed by the Test Service, since packaging features are not exposed at the application level. Therefore packaging declarations MUST NOT appear in Test Cases where the Test Driver is in “service” mode. If a packaging declaration is present when a Test Driver is in “service” mode, an exception MUST be generated by the Test Driver.

Figure 41 – Graphical representation of Packaging declaration structure for ebXML Messaging

Name Description Default Value Required/Optional

Exception Condition

Packaging Container for declaration to be interpreted by Test Driver into message packaging API calls

Optional Test Driver is in “service” mode

mime:Header Instruction to Test Driver to create a new MIME header, or if it already exists, modify the existing one

Required

Name MIME header name RequiredValue Mime header value. If not present,

this indicates header by this Name is to be modified, not replaced.

Required

Attribute Instruction to Test Driver to create a new attribute for this MIME header, or if it already exists, modify the existing one

Optional

Name Header attribute name RequiredValue Header attribute value Required

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 224 of 447

1

1

23456789

101112

13

1415

16

171819202122

23

Page 225: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

The semantic meaning of the message envelop declaration is identical to both the Test Driver and the Test Service. Both MUST interpret its content and generate a valide ebXML message. In the case of the Test Driver, this is accomplished using a Mutator XSL or XUpdate document to generate the final message envelope. In the case of the Test Service, the declaration is parsed, and the appropriate Messaging Service API calls are mde to construct the message.

Below is a sample ebXML Declaration. When the Test Driver is in “connection” mode, it mutates the Declaration (using an XSL stylesheet), inserting element and attribute content wherever it knows default content should be, and declaring, or overriding default values where they are explicitly defined in the Declaration. The result is a valid ebXML message to be sent to a candidate MSH.

When the Test Driver is in “service” mode, the Test Driver mutates the declaration into a “modified” declaration (not an actual message). The modified declaration contains additional information (FromParty/Id, Service, Action) to be passed to the Test Service for interpretation into its own MS API calls for message construction.. Certain run-time message content (such as message Timestamp and message ConversationId) MUST be automatically generated by the Test Service “initiator” method. However, these message content parameter values MAY be overridden if their values are explicitly defined in the message Declaration.

Below is a minimal message Declaration that can be transformed by the IIC Mutator stylesheet into a valid ebXML message envelope for conformance testing, or a modified message declaration for interoperability testing:

<ebTest:PutMessage xmlns:ebTest= "http://www.oasis-open.org/tc/ebxml-iic/tests ><ebTest:Declaration "> <soap:Envelope xmlns:soap= "http://www.oasis-open.org/tc/ebxml-iic/tests/soap"> <soap:Header> <eb:MessageHeader xmlns:eb= "http://www.oasis-open.org/tc/ebxml-iic/tests/eb"/>  </soap:Header>  <soap:Body />

  </soap:Envelope></ebTest:Declaration><ebTest:Mutator>ebXML.xsl</ebTest:Mutator></ebTest:PutMessage>

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 225 of 447

1

123456789

10111213141516

1718192021

2223242526272829

30313233

34353637383940414243444546

23

Page 226: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

The resulting “mutated” message can be represented by the example message below. The Test Driver, after constructing a default MIME multipart package, would parse the simple Declaration above, and mutate it through an XSL stylesheet. It would then generate the following MIME message with enclosed SOAP/ebXML content.

Content-Type: multipart/related; type="text/xml"; boundary="boundaryText";[email protected]

--boundaryText

Content-ID: <[email protected]>Content-Type: text/xml; charset="UTF-8"

<soap:Envelope xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:SOAP="http://schemas.xmlsoap.org/soap/envelope/" xmlns:eb="http://www.oasis-open.org/committees/ebxml-msg/schema/msg-header-2_0.xsd" xsi:schemaLocation="http://schemas.xmlsoap.org/soap/envelope/ http://www.oasis-open.org/committees/ebxml-msg/schema/envelope.xsd http://www.oasis-open.org/committees/ebxml-msg/schema/msg-header-2_0.xsd http://www.oasis-open.org/committees/ebxml-msg/schema/msg-header-2_0.xsd"><soap:Header> <eb:MessageHeader soap:mustUnderstand="1" eb:version="2.0"> <eb:From> <eb:PartyId>urn:oasis:iic:testdriver</eb:PartyId> </eb:From> <eb:To> <eb:PartyId>urn:oasis:iic:testservice</eb:PartyId> </eb:To> <eb:CPAId> mshc_basic</eb:CPAId> <eb:ConversationId> 987654321</eb:ConversationId> <eb:Service>urn:ebXML:iic:test</eb:Service> <eb:Action>Dummy</eb:Action> <eb:MessageData> <eb:MessageId>0123456789</eb:MessageId> <eb:Timestamp>2000-07-25T12:19:05</eb:Timestamp> MessageData> </eb:MessageHeader></soap:Header></soap:Envelope>

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 226 of 447

1

12345

6789

1011

121314151617181920

21

232425272829303132333435363738394041424344

45

23

Page 227: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

Likewise, if the Test Driver is in “service mode”, the message envelope Declaration content would be mutated into a “nearly complete” ebXML message declaration (not message) to be passed to the Test Service “initiator” action. The Test Service would then make the appropriate API calls based upon this declaration, and provide a valid MessageId and Timestamp ( since none is has been explicitly provided in the original Declaration content ). Below is an example of a mutated ebXML message declaration to be passed on to the Test Service “initiator” method.

<soap:Envelope xmlns:soap= "http://www.oasis-open.org/tc/ebxml-iic/tests/soap"> <soap:Header> <eb:MessageHeader xmlns:eb= "http://www.oasis-open.org/tc/ebxml-iic/tests/eb" soap:mustUnderstand="1" eb:version="2.0"> <eb:From> <eb:PartyId>urn:oasis:iic:testdriver</eb:PartyId> </eb:From> <eb:To> <eb:PartyId>urn:oasis:iic:testservice</eb:PartyId> </eb:To> <eb:CPAId> mshc_basic</eb:CPAId> <eb:Service>urn:ebXML:iic:test</eb:Service> <eb:Action>Dummy</eb:Action> </eb:MessageHeader></soap:Header></soap:Envelope>

As illustrated above, dynamic ebXML message content values (highlighted above) are supplied by the Mutator stylesheet

a Mutator XSL stylesheet is also provided in this appendix that “fills in” the remaining required content to create a valid ebXML message.The following sections describe the semantic rules for how a the Test Driver (for conformance testing) or the Test Service (for interoperability testing) MUST interpret the ebXML Declaration content in order generate a valid ebXML message.

Interpreting the SOAP portion of the ebXML Declaration

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 227 of 447

1

123456789

1011

121314151617181920212223242526272829

3031323334

353637383940

414243

44

23

Page 228: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

The XML syntax interpreted by the Test Driver to construct the SOAP message content (or a modified declaration if in “service” ‘mode) consists of the declaration of a SOAP Envelope element, which in turn is a container for the SOAP Header, Body and non-SOAP XML content. Note: SOAP declarations MAY be ignored by the Test Service initiator method, since SOAP message content is unlikely to be exposed at the application of the Test Service. Construction of the SOAP Header and Body content is simple for the Test Driver, requiring only the creation of the two container elements with their namespace properly declared, and valid according to the [SOAP].

Figure 43 – Graphic representation of expanded view of the soap:Envelope element declaration

Definition of Content

Name Declaration Default Value Schema Required or Optional

soap:Envelope Generate container element with its proper namespace for SOAP Header and Body elements and their content

Required

soap:Header Generate SOAP Header extension element

Required

soap:Body Generate the default Body element Required#wildCard Generate “inline” wildcard XML content

inside SOAP EnvelopeOptional

Table 25 defines the SOAP message content of the Declaration element in a message declaration

An Example of Minimal SOAP Declaration Content

The following XML represents all the information necessary to permit a Test Driver to construct a minimal SOAP message. The Test Service “initiator” method MUST ignore SOAP content declarations, since it is unlikely that SOAP manipulation will be possible at the application level of the Test Service.

<soap:Envelope>  <soap:Header/>   <soap:Body/>

 </soap:Envelope>

Interpreting the SOAP Header Extension Element Declaration

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 228 of 447

1

1234567

8

910

111213

1415

16

17

18192021

22232425

26272829303132

33

23

Page 229: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

The declarative syntax interpreted by the Test Driver to construct the ebXML Header extension element content consists of the declaration of ebXML element and attribute content. The only extension element that is required in the Declaration is the eb:MessageHeader element, which directs the Test Driver Mutator to construct an actual ebXML MessageHeader element, along with its proper namespace declaration, as defined in [EBMS].

Figure 44 – Graphic representation of expanded view of the soap:Header element declaration

Definition of Content

Name Description Default Value

Schema Required or Optional

Header SOAP Header declaration and container for ebXML ebXML Header Extension Element declarations

Required

eb:MessageHeader Create an ebXML MessageHeader element with namespace declaration

Required

eb:ErrorList Create an ebXML ErrorList element Optionaleb:SyncReply Create an ebXML SyncReply element Optionaleb:MessageOrder Create an ebXML MessageOrder

elementOptional

eb:AckRequested Create an ebXML AckRequested element

Optional

eb:Acknowledgment Create an ebXML Acknowledgment element

Optional

Table 26 defines the MIME message content of the SOAP Header element in a message declaration

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 229 of 447

1

12345

6789

10

111213

141516

1718

1920

21

22

23

Page 230: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

Interpreting the ebXML MessageHeader Element Declaration

The XML syntax interpreted by the Test Driver to construct the ebXML MessageHeader extension content consists of the declaration of a MessageHeader element. This is the ”minimum” declaration aTest Driver needs to generate an ebXML Message Header. All other required message content, as defined in the schema in the ebXML MS v2.0 Specification, is provided by the Test Driver “Mutator” operation (to generate mandatory messagecontent) or by explicit declaration of content by the test writer in the Declaration itself. The figure below illustrates the schema for an ebXML Message Header declaration to be interpreted by the Test Driver.

Likewise, when the Test Driver is in “service” mode, the Test Driver will constructe a “complete” MessageHeader declaration (containing required From/PartyId, To/PartyId and other values). However, certain message values (Timestamp, MessageId, TimeToLive and ConversationId) are “optional” parts of the declaration. Their values MUST NOT be generated by the Mutator when in “service” mode. It is assumed that the Test Service “initiator” method will (by default) provide these values when it interprets the declaration into its own MS API calls.

Figure 45 – Graphic representation of expanded view of the ebXML MessageHeader element declaration Definition of Content

Name Description Default Value Mutator

Schema Required or Optional

Test Driver Exception Condition

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 230 of 447

1

12

3456789

10

11121314151617

181920

21222324

25

23

Page 231: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

eb:MessageHeader

Generate MessageHeader element and all of its default element/attribute content

Required

id Generate attribute with declared value

Optional

version Modify default attribute value

2.0 Optional

soap:mustUnderstand

Modify default attribute value

true Optional

From Modify default From message element generated by Test Driver

Generated at run time

Optional

PartyId Replace default element value with new value

Generated at run time, using Test Driver config value,

Required

type Generate a type attribute with value

Optional

Role Generates a Role element with its value

Optional

To Modify default To message element generated by Test Driver

Generated by Test Driver at run time

Optional

PartyId Replace default element value with new value Generated at run

time, using Test Driver config value

Required

type Generate type attribute with value

Optional

Role Generates a Role element with its value

Optional

CPAId Generate element with its value

Generated at run time, using Test Driver config value

Optional

ConversationId Modify default value provided by Test Driver

Generated by Mutator in “connection mode” only

Optional

Service Modify default value generated by Test Driver

Generated Mutator using config value

Optional

Action Replace default value with specified Action name

Generated by Mutatorusing config value

Optional

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 231 of 447

1

23

Page 232: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

MessageData Modify default container generated by Test Driver

Generated run time

Optional

MessageId Modify default value generated by Test Driver

Generated by Mutator in “connection mode” only

Optional

Timestamp Modify default value generated by Test Driver

Generated or Mutator in “connection mode” only

Optional

RefToMessageId Generate element and its value

Optional

TimeToLive Generate element and its value

Generated by Mutator in “connection mode” only

Optional

DuplicateElimination

Generate element Optional

Description Generate element with value

Optional

#wildcard Generate content inline OptionalTable 27 defines the content of the ebXML MessageHeader element in a message declaration

An Example of a Minimal ebXML MessageHeader Content Declaration

The following XML instance represents all the information necessary to permit a Test Driver (in “connection” mode) to construct an ebXML MessageHeader element with all necessary content to validate against the ebXML MS V2.0 schema. Alternatively, if the Test Driver is in “service mode”, the resulting ebXML message envelope is passed to the Test Service “initiator” method so that it may build the “actual” message, with the additional reqirement that the Test Service provide its own generated ConversationId, MessageId, TimeToLive and Timestamp to the message.<eb:MessageHeader xmlns:eb= "http://www.oasis-open.org/tc/ebxml-iic/tests/eb" /> Interpreting the ebXML ErrorList Element Declaration

The XML syntax interpreted by the Test Driver to construct the ebXML ErrorList extension content consists of the declaration of an ErrorList element, and a required declaration of one or more Error elements within it. All required content, as defined in the schema in the ebXML MS V2.0 Specification, is provided through either default parameters defined in the Mutator XSL stylesheet or by explicit declaration by the test writer.

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 232 of 447

1

1

234

56789

1011121314

151617181920

2122

23

Page 233: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

Figure 46 - Graphic representation of expanded view of the ebXML ErrorList element declaration

Definition of Content

Name Description Default ValueMutator

Schema Required or Optional

Test Driver Exception Condition

eb:ErrorList Generate container element

Optional

id Generate attribute and its value

Optional

version Modify default value 2.0 Optionalsoap:mustUnderstand

Modify default value true Optional

highestSeverity Generate required attribute and value

Required

Error Generate new Error container

Required

id Generate attribute with declared value

Optional

codeContext Generate element with declared value

Optional

errorCode Generate required attribute and value

Required

severity Generate required attribute and value

Required

location Generate attribute with declared value

Optional

Description Generate element with declared value

Optional

#wildCard Generate content “inline” into message

Optional

Table 288 defines the content of the ErrorList element in a message declaration

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 233 of 447

1

123

45

6

7

89

10

23

Page 234: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

An Example of a Mmnimal ebXML ErrorList Content Declaration

The following XML represents all the information necessary to permit a Test Driver (using the IIC ebXML Mutator stylesheet) to construct an ebXML ErrorList element with all necessary content to validate against the ebXML MS v2.0 schema. All required content not visible in the example would be generated by the Mutator. Alternately, if the Test Driver is in “service mode”, the resulting ErrorList message declaration could be passed to the Test Service “initiator” method to instruct the Test Service to build an ErrorList with the same information.

<eb:ErrorList eb:highestSeverity=Error"> <eb:Error eb:errorCode=”Inconsistent” eb:severity=”Error”/></eb:ErrorList>

Interpreting the ebXML SyncReply Element Declaration

The XML syntax interpreted by the Test Driver to construct the ebXML SyncReply extension content consists of the declaration of a SyncReply element. All required content, as defined in the schema in [EBMS], is provided through either default parameters provided by the Test Driver Mutator or through explicit declaration by the test writer.

Figure 47 – Graphic representation of expanded view of the ebXML SyncReply element declaration

Definition of Content

Name Description Default ValueMutator

Schema Required or Optional

Test Driver Exception Condition

eb:SyncReply Generate container element and all default content

Optional

id Generate attribute and its value

Optional

version Modify default attribute value

2.0 Optional

soap:mustUnderstand

Modify default attribute value

true Optional

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 234 of 447

1

1

2345678

9101112

131415

1617181920

2122

2324

25

26

27

28

2930

31

23

Page 235: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

soap:actor Modify default attribute value

http://schemas.xmlsoap.org/soap/actor/next

Optional

#wildCard Generate content “inline” OptionalTable 29 defines the content of the SyncReply element in a message declaration

An Example of a Minimal ebXML SyncReply Content Declaration

The following XML represents all the information necessary to permit a Test Driver to construct an ebXML AckRequested element with all necessary content to validate against the [EBMS] schema schema. Alternately, the same declaration will be “mutated” into a modified declaration that will be passed to the Test Service if the Test Driver is in “service” mode.

<eb:SyncReply/> Interpreting the ebXML AckRequested Element Declaration

The XML syntax interpreted by the Test Driver to construct the ebXML AckRequested extension content consists of the declaration of an AckRequested element. All required content as defined in the [EBMS] schema, is provided by the Test Driver or by explicit declaration.

Figure 48 – Graphic representation of expanded view of the ebXML AckRequested element declaration

Definition of Content

Name Declaration Default Value From Mutator

Schema Required or Optional

Test Driver Exception Condition

eb:AckRequested Generate container element and all default content

Optional

id Generate attribute and its value

Optional

version Modify default value 2.0 Optionalsoap:mustUnderstand

Modify default value true Optional

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 235 of 447

1

1

23456

789

1011

121314

15161718

1920

2122

232425

26

23

Page 236: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

soap:actor Modify default attribute value with new value

urn:oasis:names:tc:ebxml-msg:actor:toPartyMSH

Optional

signed Modify default attribute value

false Optional

#wildCard Generate content “inline”

Optional

Table 30 defines the content of the AckRequested element in a message declaration

An Example of a Minimal ebXML AckRequested Content Declaration

The following XML represents all the information necessary to permit a Test Driver to construct an ebXML AckRequested element with all necessary content to validate against the [EBMS] schema. Alternately, the same declaration will be “mutated” into a modified declaration that will be passed to the Test Service if the Test Driver is in “service” mode.

<eb:AckRequested/>

Interpreting the ebXML Acknowledgment Element Declaration

The XML syntax interpreted by the Test Driver to construct the ebXML Acknowledgment extension content consists of the declaration of an Acknowledgment element. All required content, as defined in the [EBMS] schema, is provided by the Test Driver Mutator or through explicit declaration.

Figure 49 – Graphic representation of expanded view of the ebXML Acknowledgment element declaration

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 236 of 447

1

1

234

56789

1011

1213

14151617

1819

2021

23

Page 237: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

Definition of Content

Name Description Default Value From Mutator

Schema Required or Optional

Test Driver Exception Condition

eb:Acknowledgment

Generate container element and all default content

Optional

id Generate attribute and its value

Optional

version Modify default attribute value

2.0 Optional

soap:mustUnderstand

Modify default attribute value

true Optional

soap:actor Modify default attribute value

urn:oasis:names:tc:ebxml-msg:actor:toPartyMSH

Optional

Timestamp Modify default element value

Generated by Mutator at run time, or by the Test Service “initiator” if in “service” ‘mode

Optional

RefToMessageId Modify default element value

Optional

From Modify default container Generated by Mutator at run time using config value

Optional

PartyId Modify default value urn:ebxml:iic:testdriver

Required

type Generate type attribute with value

Optional

Role Generates a Role element with its value

Optional

ds:Reference Generate container element and all default content

Optional

Id Generate attribute and its value

Optional

URI Modify default attribute value

“” Required

type Generate attribute and its value

Optional

Transforms Generate container relement

Optional

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 237 of 447

1

123

4

23

Page 238: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

Transform Generate element with its value

Optional

Algorithm Modify default attribute value

http://www.w3.org/TR/2001/REC-xml-c14n-20010315

Required

#wildCard Generate content “inline” Optional

XPath Generate element with its value

Optional

DigestMethod Generate element with its value

Required

Algorithm Modify default attribute value

Generated by Mutator using config value

Required

#wildCard Generate content “inline” Optional

DigestValue Generate element with its value

Computed by Provided by Mutator at run time

Required

#wildCard Generate content “inline” OptionalTable 31 defines the content of the Acknowledgment element in a message declaration

An Example of a Minimal “unsigned” ebXML Acknowledgment Content Declaration

The following XML represents the minimum information necessary to permit a Test Driver to construct an ebXML Acknowledgment element. Alternately, the same declaration will be “mutated” into a modified declaration that will be passed to the Test Service if the Test Driver is in “service” mode.

<eb:Acknowledgment/>

Interpreting the ebXML MessageOrder Element Declaration

The XML syntax interpreted by the Test Driver Mutator to construct the ebXML MessageOrder extension content consists of the declaration of a MessageOrder element. All required content, as defined in the [EBMS] schema, is provided by the Test Driver Mutator or through explicit declaration.

Figure 50 – Graphic representation of expanded view of the ebXML MessageOrder element declaration

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 238 of 447

1

1

234

5678

910

111213

14151617

18

1920

2122

23

Page 239: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

Definition of Content

Name Description Default Value From Mutator

Schema Required or Optional

Test Driver Exception Condition

eb:MessageOrder Generate container element and all default content

Optional

id Generate attribute and its value

Optional

version Modify default attribute value

2.0 Optional

soap:mustUnderstand

Modify default attribute value

true Optional

SequenceNumber Generate element with declared value

Required

status Generate attribute with declared value

Optional

#wildCard Generate content “inline” OptionalTable 32 defines the content of the MessageOrder element in a message declaration

An Example of a Minimal ebXML MessageOrder Content Declaration

The following XML represents all the information necessary to permit a Test Driver to construct an ebXML MessageOrder element. Alternately, the same declaration will be “mutated” into a modified declaration that will be passed to the Test Service if the Test Driver is in “service” mode.

<eb:MessageOrder><eb:SequenceNumber>1</eb:SequenceNumber></eb:MessageOrder>

Interpreting the SOAP Body Extension Element Declaration

The XML syntax used by the Test Driver to construct the ebXML Body extension message content consists of the declaration of a SOAP Body element, which in turn is a container for the ebXML Manifest, StatusRequest or StatusResponse elements.The Test Driver Mutator does not construct any of these SOAP Body extension elements unless they are explicitly declared as content in the SOAP Body Declaration.

Figure 51 – Graphic representation of expanded view of the soap:Body element declaration

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 239 of 447

1

1

2

3

45

6789

10111213

1415

161718192021

2223

2425

26

23

Page 240: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

Interpreting the ebXML Manifest Element Declaration

The XML syntax interpreted by the Mutator to construct the ebXML Manifest extension content consists of the declaration of a Manifest element. All required content, as defined in the [EBMS] schema, is provided by the Test Driver Mutator or through explicit declaration

Figure 52 – Graphic representation of expanded view of the ebXML Manifest element declaration

Definition of Content

Name Description Default Value From Mutator

Schema Required or Optional

Test Driver Exception Condition

eb:Manifest Generate container element and all default content

Optional

id Generate attribute and its value

Optional

version Modify default attribute value

2.0 Optional

id Modify default attribute value

true Optional

xlink:type Generate element with declared value

Optional

xlink:href Generate attribute with declared value

Required

xlink:role Generate attribute with declared value

Optional

contentId Modify the Content-ID MIME header of the payload

Optional

contentType Set the the Content-Type MIME header of the payload

Optional

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 240 of 447

1

1

2345

67

89

101112

13

23

Page 241: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

contentLocation Set the the Content-Location MIME header of the payload

Optional

Schema Generate schema container element

Optional

location Generate URI attribute and value of schema location

Required

version Generate schema version attribute and value

Optional

Description Generate description element and value

Optional

xml:lang Generate description language attribute and value

Required

Table 33 defines the content of the Manifest element in a message declaration

An Example of a Minimal ebXML Manifest Content Declaration

The following XML represents the minimum information necessary to permit a Test Driver Mutator to construct an ebXML Manifest element with all necessary content to validate against the ebXML MS v2.0 schema. Alternately, the same declaration will be “mutated” into a modified declaration that will be passed to the Test Service if the Test Driver is in “service” mode.<eb:Manifest><eb:Reference xlink:href=”cid:payload_1”/></eb:Manifest>

Interpreting the ebXML StatusRequest Element Declaration

The XML syntax interpreted by the Test Driver to construct the ebXML StatusRequest extension content consists of the declaration of a StatusRequest element. All required content, as defined in the [EBMS] schema, is provided by the Test Driver Mutator or through explicit declaration

Figure 53 – Graphic representation of expanded view of the ebXML StatusRequest element declaration

Definition of Content

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 241 of 447

1

1

23

456789

1011

121314

15161718

19

2021

222324

25

23

Page 242: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

Name Description Default ValueMutator

Schema Required or Optional

Test Driver Exception Condition

eb:StatusRequest Generate container element and all default content

Optional

id Generate attribute and its value

Optional

version Modify default value 2.0 OptionalRefToMessageId Generate element and

its valueRequired

#wildCard Generate content “inline”

Optional

Table 34 defines the content of the StatusRequest element in a message declaration

An Example of a Minimal ebXML StatusRequest Content Declaration

The following XML represents all the minimum information necessary to permit a Test Driver to construct an ebXML StatusRequest element with all necessary content to validate against the [EBMS] schema. Alternately, the same declaration will be “mutated” into a modified declaration that will be passed to the Test Service if the Test Driver is in “service” mode.

<eb:StatusRequest><eb:RefToMessageId>[email protected]</eb:RefToMessageId></eb:StatusRequest>

Interpreting the ebXML StatusResponse Element Declaration

The XML syntax used by the Test Driver to construct the ebXML StatusResponse extension content consists of the declaration of a StatusResponse element with required and optional element/attribute content.

Figure 54 – Graphic representation of expanded view of the ebXML StatusResponse element declaration

Definition of Content

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 242 of 447

1

1

23

45678

9101112

131415

16171819

20

2122

232425

26

23

Page 243: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

Name Description Default Value Schema Required or Optional

Test Driver Exception Condition

eb:StatusResponse

Generate container element and all default content

Optional

id Generate attribute and its value

Optional

version Modify default attribute value

2.0 Optional

messageStatus Generate attribute and its value

Optional

RefToMessageId Generate element and its value

Required

Timestamp Modify default value Generated by Test Driver at run time

Optional

#wildCard Generate content “inline” OptionalTable 35 defines the content of the StatusResponse element in a message declaration

An Example of a Minimal ebXML StatusResponse Content Declaration

The following XML represents all the information necessary to permit a Test Driver to construct an ebXML StatusResponse element with all necessary content to validate against the [EBMX] schema. Alternately, the same declaration will be “mutated” into a modified declaration that will be passed to the Test Service if the Test Driver is in “service” mode.

<eb:StatusResponse messageStatus=”Processed”/>

SOAP Portion of the ebXML Declaration Schema (Normative)

<?xml version = "1.0" encoding = "UTF-8"?><!--Generated by XML Authority. Conforms to w3c http://www.w3.org/2001/XMLSchema--><schema xmlns = "http://www.w3.org/2001/XMLSchema" targetNamespace = "http://www.oasis-open.org/tc/ebxml-iic/tests/soap" xmlns:tns = "http://www.oasis-open.org/tc/ebxml-iic/tests/soap" xmlns:xs = "http://www.w3.org/2001/XMLSchema" xmlns:eb = "http://www.oasis-open.org/tc/ebxml-iic/tests/eb"> <import namespace = "http://www.oasis-open.org/tc/ebxml-iic/tests/eb" schemaLocation = "eb.xsd"/>

<group name = "optionElements"> <all minOccurs = "0">

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 243 of 447

1

1

23

45678

91011

121314

1516171819202122232425

262728

23

Page 244: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

<element ref = "eb:SyncReply" minOccurs = "0"/> <element ref = "eb:MessageOrder" minOccurs = "0"/> <element ref = "eb:AckRequested" minOccurs = "0"/> <element ref = "eb:Acknowledgment" minOccurs = "0"/> <element ref = "eb:ErrorList" minOccurs = "0"/> </all> </group> <attributeGroup name = "encodingStyle"> <attribute name = "encodingStyle" type = "tns:encodingStyle"/> </attributeGroup> <!-- Schema for the SOAP/1.1 envelope

This schema has been produced using W3C's SOAP Version 1.2 schema found at:

http://www.w3.org/2001/06/soap-envelope

Copyright 2001 Martin Gudgin, Developmentor.

Changes made are the following: - reverted namespace to http://schemas.xmlsoap.org/soap/envelope/ - reverted mustUnderstand to only allow 0 and 1 as lexical values

Copyright 2003 OASIS

Changes made are the following: - SOAP Header and Body element content models constrained to include ebXML content

Original copyright: Copyright 2001 W3C (Massachusetts Institute of Technology, Institut National de Recherche en Informatique et en Automatique, Keio University). All Rights Reserved. http://www.w3.org/Consortium/Legal/

This document is governed by the W3C Software License [1] as described in the FAQ [2].

[1] http://www.w3.org/Consortium/Legal/copyright-software-19980720 [2] http://www.w3.org/Consortium/Legal/IPR-FAQ-20000620.html#DTD

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 244 of 447

1

123456789

101112

131415

1617

1819

20212223

242526

272829

3031323334353637

383940

414243

23

Page 245: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

--> <!-- Envelope, header and body --> <element name = "Envelope" type = "tns:Envelope"/> <complexType name = "Envelope"> <sequence> <element ref = "tns:Header"/> <element ref = "tns:Body"/> <any namespace = "##other" processContents = "lax" minOccurs = "0" maxOccurs = "unbounded"/> </sequence> <anyAttribute namespace = "##other" processContents = "lax"/> </complexType> <element name = "Header"> <complexType> <sequence> <element ref = "eb:MessageHeader"/> <group ref = "tns:optionElements"/> </sequence> </complexType> </element> <complexType name = "Header"> <sequence> <any namespace = "##other" processContents = "lax" minOccurs = "0" maxOccurs = "unbounded"/> </sequence> <anyAttribute namespace = "##other" processContents = "lax"/> </complexType> <element name = "Body"> <complexType> <choice minOccurs = "0"> <element ref = "eb:Manifest"/> <element ref = "eb:StatusRequest"/> <element ref = "eb:StatusResponse"/> </choice> </complexType> </element> <complexType name = "Body"> <annotation> <documentation> Prose in the spec does not specify that attributes are allowed on the Body element

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 245 of 447

1

123456789

10111213141516171819202122232425262728293031323334353637383940414243

23

Page 246: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

</documentation> </annotation> <sequence> <any namespace = "##any" processContents = "lax" minOccurs = "0" maxOccurs = "unbounded"/> </sequence> <anyAttribute namespace = "##any" processContents = "lax"/> </complexType> <!-- Global Attributes. The following attributes are intended to be usable via qualified attribute names on any complex type referencing them. --> <attribute name = "mustUnderstand" default = "0"> <simpleType> <restriction base = "boolean"> <pattern value = "0|1"/> </restriction> </simpleType> </attribute> <attribute name = "actor" type = "anyURI"/> <simpleType name = "encodingStyle"> <annotation> <documentation> 'encodingStyle' indicates any canonicalization conventions followed in the contents of the containing element. For example, the value 'http://schemas.xmlsoap.org/soap/encoding/' indicates the pattern described in SOAP specification </documentation> </annotation> <list itemType = "anyURI"/> </simpleType> <complexType name = "Fault" final = "extension"> <annotation> <documentation> Fault reporting structure </documentation> </annotation> <sequence> <element name = "faultcode" type = "QName"/> <element name = "faultstring" type = "string"/> <element name = "faultactor" type = "anyURI" minOccurs = "0"/> <element name = "detail" type = "tns:detail" minOccurs = "0"/> </sequence> </complexType>

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 246 of 447

1

123456789

1011121314151617181920212223242526272829303132333435363738394041424344

23

Page 247: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

<complexType name = "detail"> <sequence> <any namespace = "##any" processContents = "lax" minOccurs = "0" maxOccurs = "unbounded"/> </sequence> <anyAttribute namespace = "##any" processContents = "lax"/> </complexType></schema>

Schema for ebXML portion of Messge Declaration content

?xml version = "1.0" encoding = "UTF-8"?><!--Generated by XML Authority. Conforms to w3c http://www.w3.org/2001/XMLSchema--><schema xmlns = "http://www.w3.org/2001/XMLSchema" targetNamespace = "http://www.oasis-open.org/tc/ebxml-iic/tests/eb" xmlns:tns = "http://www.oasis-open.org/tc/ebxml-iic/tests/eb" xmlns:xlink = "http://www.w3.org/1999/xlink" xmlns:ds = "http://www.oasis-open.org/tc/ebxml-iic/tests/xmldsig" xmlns:soap = "http://www.oasis-open.org/tc/ebxml-iic/tests/soap" version = "1.0" elementFormDefault = "qualified" attributeFormDefault = "qualified"> <import namespace = "http://www.w3.org/1999/xlink" schemaLocation = "http://www.oasis-open.org/committees/ebxml-msg/schema/xlink.xsd"/> <import namespace = "http://www.oasis-open.org/tc/ebxml-iic/tests/xmldsig" schemaLocation = "xmldsig.xsd"/> <import namespace = "http://www.oasis-open.org/tc/ebxml-iic/tests/soap" schemaLocation = "soap.xsd"/> <import namespace = "http://www.w3.org/XML/1998/namespace" schemaLocation = "http://www.oasis-open.org/committees/ebxml-msg/schema/xml_lang.xsd"/> <attributeGroup name = "headerExtension.grp"> <attribute ref = "tns:id"/> <attribute ref = "tns:version" use = "optional"/> <attribute ref = "soap:mustUnderstand" use = "optional"/> </attributeGroup> <attributeGroup name = "bodyExtension.grp"> <attribute ref = "tns:id"/> <attribute ref = "tns:version" use = "optional"/> </attributeGroup> <!-- Copyright (C) The Organization for the Advancement of Structured Information Standards [OASIS]

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 247 of 447

1

12345678

9101112

1314151617181920212223242526272829303132333435363738394041424344

23

Page 248: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

January 2002. All Rights Reserved.This document and translations of it may be copied and furnished to others, and derivative works that comment on or otherwise explain it or assist in its implementation may be prepared, copied, published and distributed, in whole or in part, without restriction of any kind, provided that the above copyright notice and this paragraph are included on all such copies and derivative works. However, this document itself may not be modified in any way, such as by removing the copyright notice or references to OASIS, except as needed for the purpose of developing OASIS specifications, in which case the procedures for copyrights defined in the OASIS Intellectual Property Rights document MUST be followed, or as required to translate it into languages other than English.The limited permissions granted above are perpetual and will not be revoked by OASIS or its successors or assigns.--> <!-- MANIFEST, for use in soap:Body element --> <element name = "Manifest"> <complexType> <sequence> <element ref = "tns:Reference" maxOccurs = "unbounded"/> <any namespace = "##other" processContents = "lax" minOccurs = "0" maxOccurs = "unbounded"/> </sequence> <attributeGroup ref = "tns:bodyExtension.grp"/> </complexType> </element> <element name = "Reference"> <complexType> <sequence> <element ref = "tns:Schema" minOccurs = "0" maxOccurs = "unbounded"/> <element ref = "tns:Description" minOccurs = "0" maxOccurs = "unbounded"/> </sequence> <attribute ref = "tns:id"/> <attribute ref = "xlink:type" fixed = "simple"/> <attribute ref = "xlink:href" use = "required"/> <attribute ref = "xlink:role"/> <attribute name = "contentId" use = "optional" type = "string"/> <attribute name = "contentType" use = "optional" type = "string"/> <attribute name = "contentLocation" use = "optional" type = "anyURI"/> </complexType> </element> <element name = "Schema"> <complexType>

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 248 of 447

1

123456789

101112131415161718192021222324252627282930313233343536373839404142434445

23

Page 249: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

<attribute name = "location" use = "required" type = "anyURI"/> <attribute name = "version" type = "tns:non-empty-string"/> </complexType> </element> <!-- MESSAGEHEADER, for use in soap:Header element --> <element name = "MessageHeader"> <complexType> <sequence> <element ref = "tns:From" minOccurs = "0"/> <element ref = "tns:To" minOccurs = "0"/> <element ref = "tns:CPAId" minOccurs = "0"/> <element ref = "tns:ConversationId" minOccurs = "0"/> <element ref = "tns:Service" minOccurs = "0"/> <element ref = "tns:Action" minOccurs = "0"/> <element ref = "tns:MessageData" minOccurs = "0"/> <element ref = "tns:DuplicateElimination" minOccurs = "0"/> <element ref = "tns:Description" minOccurs = "0" maxOccurs = "unbounded"/> <any namespace = "##other" processContents = "lax" minOccurs = "0" maxOccurs = "unbounded"/> </sequence> <attributeGroup ref = "tns:headerExtension.grp"/> </complexType> </element> <element name = "CPAId" type = "tns:non-empty-string"/> <element name = "ConversationId" type = "tns:non-empty-string"/> <element name = "Service"> <complexType> <simpleContent> <extension base = "tns:non-empty-string"> <attribute name = "type" type = "tns:non-empty-string"/> </extension> </simpleContent> </complexType> </element> <element name = "Action" type = "tns:non-empty-string"/> <element name = "MessageData"> <complexType> <sequence> <element ref = "tns:MessageId" minOccurs = "0"/> <element ref = "tns:Timestamp" minOccurs = "0"/>

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 249 of 447

1

123456789

10111213141516171819202122232425262728293031323334353637383940414243

23

Page 250: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

<element ref = "tns:RefToMessageId" minOccurs = "0"/> <element ref = "tns:TimeToLive" minOccurs = "0"/> </sequence> </complexType> </element> <element name = "MessageId" type = "tns:non-empty-string"/> <element name = "TimeToLive" type = "dateTime"/> <element name = "DuplicateElimination"/> <!-- SYNC REPLY, for use in soap:Header element --> <element name = "SyncReply"> <complexType> <sequence> <any namespace = "##other" processContents = "lax" minOccurs = "0" maxOccurs = "unbounded"/> </sequence> <attributeGroup ref = "tns:headerExtension.grp"/> <attribute ref = "soap:actor" default = "urn:oasis:names:tc:ebxml-msg:actor:toPartyMSH"/> </complexType> </element> <!-- MESSAGE ORDER, for use in soap:Header element --> <element name = "MessageOrder"> <complexType> <sequence> <element ref = "tns:SequenceNumber"/> <any namespace = "##other" processContents = "lax" minOccurs = "0" maxOccurs = "unbounded"/> </sequence> <attributeGroup ref = "tns:headerExtension.grp"/> </complexType> </element> <element name = "SequenceNumber" type = "tns:sequenceNumber.type"/> <!-- ACK REQUESTED, for use in soap:Header element --> <element name = "AckRequested"> <complexType> <sequence> <any namespace = "##other" processContents = "lax" minOccurs = "0" maxOccurs = "unbounded"/>

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 250 of 447

1

123456789

1011121314151617181920212223242526272829303132333435363738394041424344

23

Page 251: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

</sequence> <attributeGroup ref = "tns:headerExtension.grp"/> <attribute ref = "soap:actor"/> <attribute name = "signed" use = "optional" type = "boolean"/> </complexType> </element> <!-- ACKNOWLEDGMENT, for use in soap:Header element --> <element name = "Acknowledgment"> <complexType> <sequence> <element ref = "tns:Timestamp" minOccurs = "0"/> <element ref = "tns:RefToMessageId" minOccurs = "0"/> <element ref = "tns:From" minOccurs = "0"/> <element name = "Reference" minOccurs = "0" maxOccurs = "unbounded"/> <any namespace = "##other" processContents = "lax" minOccurs = "0"/> <element ref = "ds:Reference" minOccurs = "0" maxOccurs = "unbounded"/> </sequence> <attributeGroup ref = "tns:headerExtension.grp"/> <attribute ref = "soap:actor" default = "urn:oasis:names:tc:ebxml-msg:actor:toPartyMSH"/> </complexType> </element> <!-- ERROR LIST, for use in soap:Header element --> <element name = "ErrorList"> <complexType> <sequence> <element ref = "tns:Error" maxOccurs = "unbounded"/> <any namespace = "##other" processContents = "lax" minOccurs = "0" maxOccurs = "unbounded"/> </sequence> <attributeGroup ref = "tns:headerExtension.grp"/> <attribute name = "highestSeverity" use = "required" type = "tns:severity.type"/> </complexType> </element> <element name = "Error"> <complexType> <sequence> <element ref = "tns:Description" minOccurs = "0"/>

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 251 of 447

1

123456789

1011121314151617181920212223242526272829303132333435363738394041424344

23

Page 252: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

<any namespace = "##other" processContents = "lax" minOccurs = "0" maxOccurs = "unbounded"/> </sequence> <attribute ref = "tns:id"/> <attribute name = "codeContext" default = "urn:oasis:names:tc:ebxml-msg:service:errors" type = "anyURI"/> <attribute name = "errorCode" use = "required" type = "tns:non-empty-string"/> <attribute name = "severity" use = "required" type = "tns:severity.type"/> <attribute name = "location" type = "tns:non-empty-string"/> </complexType> </element> <!-- STATUS RESPONSE, for use in soap:Body element --> <element name = "StatusResponse"> <complexType> <sequence> <element ref = "tns:RefToMessageId"/> <element ref = "tns:Timestamp" minOccurs = "0"/> <any namespace = "##other" processContents = "lax" minOccurs = "0" maxOccurs = "unbounded"/> </sequence> <attributeGroup ref = "tns:bodyExtension.grp"/> <attribute name = "messageStatus" use = "required" type = "tns:messageStatus.type"/> </complexType> </element> <!-- STATUS REQUEST, for use in soap:Body element --> <element name = "StatusRequest"> <complexType> <sequence> <element ref = "tns:RefToMessageId"/> <any namespace = "##other" processContents = "lax" minOccurs = "0" maxOccurs = "unbounded"/> </sequence> <attributeGroup ref = "tns:bodyExtension.grp"/> </complexType> </element> <!-- COMMON TYPES --> <complexType name = "sequenceNumber.type">

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 252 of 447

1

123456789

1011121314151617181920212223242526272829303132333435363738394041424344

23

Page 253: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

<simpleContent> <extension base = "positiveInteger"> <attribute name = "status" default = "Continue" type = "tns:status.type"/> </extension> </simpleContent> </complexType> <simpleType name = "status.type"> <restriction base = "NMTOKEN"> <enumeration value = "Reset"/> <enumeration value = "Continue"/> </restriction> </simpleType> <simpleType name = "messageStatus.type"> <restriction base = "NMTOKEN"> <enumeration value = "UnAuthorized"/> <enumeration value = "NotRecognized"/> <enumeration value = "Received"/> <enumeration value = "Processed"/> <enumeration value = "Forwarded"/> </restriction> </simpleType> <simpleType name = "non-empty-string"> <restriction base = "string"> <minLength value = "1"/> </restriction> </simpleType> <simpleType name = "severity.type"> <restriction base = "NMTOKEN"> <enumeration value = "Warning"/> <enumeration value = "Error"/> </restriction> </simpleType> <!-- COMMON ATTRIBUTES and ATTRIBUTE GROUPS --> <attribute name = "id" type = "ID"/> <attribute name = "version" type = "tns:non-empty-string"/> <!-- COMMON ELEMENTS --> <element name = "PartyId"> <complexType> <simpleContent>

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 253 of 447

1

123456789

10111213141516171819202122232425262728293031323334353637383940414243

23

Page 254: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

<extension base = "tns:non-empty-string"> <attribute name = "type" type = "tns:non-empty-string"/> </extension> </simpleContent> </complexType> </element> <element name = "To"> <complexType> <sequence> <element ref = "tns:PartyId"/> <element name = "Role" type = "tns:non-empty-string" minOccurs = "0"/> </sequence> </complexType> </element> <element name = "From"> <complexType> <sequence> <element ref = "tns:PartyId"/> <element name = "Role" type = "tns:non-empty-string" minOccurs = "0"/> </sequence> </complexType> </element> <element name = "Description"> <complexType> <simpleContent> <extension base = "tns:non-empty-string"> <attribute ref = "xml:lang" use = "required"/> </extension> </simpleContent> </complexType> </element> <element name = "RefToMessageId" type = "tns:non-empty-string"/> <element name = "Timestamp" type = "dateTime"/> <element name = "FileName" type = "tns:non-empty-string"/> <element name = "MessageRef" type = "tns:non-empty-string"/></schema>

The ebXML “Mutator” XSL stylesheet

The document below mutates an ebXML message Declaration ( described above, and validating to the above schemas, into a valid ebXML message envelope. This stylesheet MUST be used with XML content defined using the above schema. If a test writer wishes to define their own message declaration

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 254 of 447

1

123456789

101112131415161718192021222324252627282930313233343536

373839

40414243

23

Page 255: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

syntax, then they MUST provide their own mutator document with their test material in order to share it with other implementers of the IIC Test Framework.

To Be Added(Normative) The Message Store Schema (and ebXML content sub-schemas)The Message Store content schema below is a representation of the ebXML message envelope and any XML payload content that accompanies the message. Although the schema for the Message Store is generic in design, allowing any XML packaging, envelope and payload to be stored; in order to use a particular executable test suite, the structure of the packaging, message envelope within the Message Store MUST have an “agreed upon” syntax [XMLSchema] by the testing community. By defining a standard packaging and envelope syntax, test case material is reusable by any IIC compliant Test Framework.

Below is a graphic representation of the “generic” IIC MessageStore schema, capable of storing XML message and payload content for any type of XML based messaging service. The “wildcard” content of the schema permits storage and query of any user-defined XML messaging content.

Figure 55 – Graphic representqation of the “generic” IIC Test Framework Message Store schema

A particular testing community (e.g. RNIF or ebXML) MAY define a particular schema for the message Packaging and message Content, thereby facilitating universal use of any executable test suites and test suite material based on the IIC Test Framework, and those packaging and content schemas. Below is the normative schema for the IIC Test Framework Message Store.

<?xml version = "1.0" encoding = "UTF-8"?><!--Generated by XML Authority. Conforms to w3c http://www.w3.org/2001/XMLSchema--><xsd:schema xmlns = "http://www.oasis-open.org/tc/ebxml-iic/testing/messageStore" targetNamespace = "http://www.oasis-open.org/tc/ebxml-iic/testing/messageStore" xmlns:xsd = "http://www.w3.org/2001/XMLSchema"> <!-- edited with XML Spy v4.3 U (http://www.xmlspy.com) by Michael Kass (NIST) -->

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 255 of 447

1

12

3456789

101112

13141516

1718

1920

2122232425

26272829303132

23

Page 256: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

<!-- edited with XML Spy v4.3 U (http://www.xmlspy.com) by Michael Kass (NIST) --> <!-- Copyright (C) The Organization for the Advancement of Structured Information Standards [OASIS] January 2002. All Rights Reserved.This document and translations of it may be copied and furnished to others, and derivative works that comment on or otherwise explain it or assist in its implementation may be prepared, copied, published and distributed, in whole or in part, without restriction of any kind, provided that the above copyright notice and this paragraph are included on all such copies and derivative works. However, this document itself may not be modified in any way, such as by removing the copyright notice or references to OASIS, except as needed for the purpose of developing OASIS specifications, in which case the procedures for copyrights defined in the OASIS Intellectual Property Rights document MUST be followed, or as required to translate it into languages other than English.The limited permissions granted above are perpetual and will not be revoked by OASIS or its successors or assigns.--> <xsd:element name = "MessageStore"> <xsd:complexType> <xsd:sequence> <xsd:element ref = "Message" minOccurs = "0" maxOccurs = "unbounded"/> <xsd:element ref = "Notification" minOccurs = "0" maxOccurs = "unbounded"/> </xsd:sequence> </xsd:complexType> </xsd:element> <xsd:element name = "GenericMessage" type = "GenericMessageType"/> <xsd:simpleType name = "synch.type"> <xsd:restriction base = "xsd:string"> <xsd:enumeration value = "synchronous"/> <xsd:enumeration value = "asynchronous"/> </xsd:restriction> </xsd:simpleType> <xsd:simpleType name = "parameter.type"> <xsd:restriction base = "xsd:NMTOKEN"> <xsd:enumeration value = "string"/> <xsd:enumeration value = "namespace"/> </xsd:restriction> </xsd:simpleType> <xsd:simpleType name = "notification.type"> <xsd:restriction base = "xsd:NMTOKEN">

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 256 of 447

1

123456789

101112131415161718192021222324252627282930313233343536373839404142434445

23

Page 257: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

<xsd:enumeration value = "message"/> <xsd:enumeration value = "errorURL"/> <xsd:enumeration value = "errorApp"/> </xsd:restriction> </xsd:simpleType> <xsd:element name = "Message"> <xsd:complexType> <xsd:complexContent> <xsd:extension base = "GenericMessageType"/> </xsd:complexContent> </xsd:complexType> </xsd:element> <xsd:complexType name = "GenericMessageType"> <xsd:sequence> <xsd:element ref = "Container" minOccurs = "0" maxOccurs = "unbounded"/> </xsd:sequence> <xsd:attribute name = "synchType" use = "required" type = "synch.type"/> <xsd:attribute name = "id" use = "required" type = "xsd:string"/> <xsd:attribute name = "serviceInstanceId" use = "optional" type = "xsd:string"/> <xsd:attribute name = "serviceName" use = "optional" type = "xsd:string"/> <xsd:attribute name = "reportingAction" use = "optional" type = "xsd:string"/> <xsd:anyAttribute namespace = "##any" processContents = "strict"/> </xsd:complexType> <xsd:element name = "Parameter"> <xsd:complexType> <xsd:sequence> <xsd:element name = "Name" type = "xsd:string"/> <xsd:element name = "Value" type = "xsd:string"/> </xsd:sequence> </xsd:complexType> </xsd:element> <xsd:element name = "Notification"> <xsd:complexType> <xsd:complexContent> <xsd:extension base = "GenericMessageType"> <xsd:attribute name = "notificationType" use = "required" type = "notification.type"/> </xsd:extension> </xsd:complexContent> </xsd:complexType> </xsd:element> <xsd:element name = "Container"> <xsd:complexType>

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 257 of 447

1

123456789

10111213141516171819202122232425262728293031323334353637383940414243

23

Page 258: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

<xsd:sequence> <xsd:element ref = "Packaging"/> <xsd:element ref = "Content" minOccurs = "0"/> </xsd:sequence> </xsd:complexType> </xsd:element> <xsd:element name = "Content"> <xsd:complexType> <xsd:sequence> <xsd:any namespace = "##other" processContents = "lax" minOccurs = "0" maxOccurs = "unbounded"/> </xsd:sequence> </xsd:complexType> </xsd:element> <xsd:element name = "Packaging"> <xsd:complexType> <xsd:sequence> <xsd:element ref = "Header"/> <xsd:element ref = "Attribute" minOccurs = "0" maxOccurs = "unbounded"/> </xsd:sequence> </xsd:complexType> </xsd:element> <xsd:element name = "Header"> <xsd:complexType> <xsd:sequence> <xsd:element ref = "Name"/> <xsd:element ref = "Value"/> </xsd:sequence> </xsd:complexType> </xsd:element> <xsd:element name = "Attribute"> <xsd:complexType> <xsd:sequence> <xsd:element ref = "Name"/> <xsd:element ref = "Value"/> </xsd:sequence> </xsd:complexType> </xsd:element> <xsd:element name = "Name" type = "xsd:string"/> <xsd:element name = "Value" type = "xsd:string"/></xsd:schema>

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 258 of 447

1

123456789

101112131415161718192021222324252627282930313233343536373839404142

43

23

Page 259: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

Below is a graphic representation and the IIC normative schema for representing ebXML MS v2.0 message envelope content within the Message Store. The Message Store schema permits ANY type of XML message content. This means that any “standard” XML format, such as SOAP or ebXML content ( with their own schemas used to represent the message envelope), may be used to define the structer of the message store Content element. Message envelope XML content stored in an IIC Test Driver Message Store MUST conform to this schema in order to execute the IIC MS 2.0 Conformance Test Suite using the IIC Test Framework V2.0.

The SOAP Envelope Content Sub-Schema used to represent message envelope content is identical to that defined in [SOAP].

The ebXML Content Sub-Schema used to represent ebXML message content in the Message Store is identical to that defined in [ebMS].

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 259 of 447

1

1234567

89

10

111213

1415

23

Page 260: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

Figure 56 - Graphic representation of normative ebXML Message Content in the IIC Test Framework Message Store

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 260 of 447

1

123

456789

23

Page 261: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

Generic FilterResult Schema

The FilterResult is an XML fragment constructed from the result of an XPath query on the MessageStore. The content of a FilterResult document object constructed from the fragment is then queried in a TestAssertion test operation to verify or validate message content. Its content can be any element content, whose root element is <FilterResult>.

Figure 57 – Graphical representation of the FilterResult schema

<?xml version = "1.0" encoding = "UTF-8"?><!--Generated by XML Authority. Conforms to w3c http://www.w3.org/2001/XMLSchema--><xsd:schema xmlns = "http://www.oasis-open.org/tc/ebxml-iic/testing/messageStore" targetNamespace = "http://www.oasis-open.org/tc/ebxml-iic/testing/messageStore" xmlns:xsd = "http://www.w3.org/2001/XMLSchema"> <!-- edited with XML Spy v4.3 U (http://www.xmlspy.com) by Michael Kass (NIST) --> <!-- edited with XML Spy v4.3 U (http://www.xmlspy.com) by Michael Kass (NIST) --> <!-- Copyright (C) The Organization for the Advancement of Structured Information Standards [OASIS] January 2002. All Rights Reserved.This document and translations of it may be copied and furnished to others, and derivative works that comment on or otherwise explain it or assist in its implementation may be prepared, copied, published and distributed, in whole or in part, without restriction of any kind, provided that the above copyright notice and this paragraph are included on all such copies and derivative works. However, this document itself may not be modified in any way, such as by removing the copyright notice or references to OASIS, except as needed for the purpose of developing OASIS specifications, in which case the procedures for

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 261 of 447

1

123456789

10111213

1415161718

19

2021

222324252627282930313233343536373839404142

23

Page 262: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

copyrights defined in the OASIS Intellectual Property Rights document MUST be followed, or as required to translate it into languages other than English.The limited permissions granted above are perpetual and will not be revoked by OASIS or its successors or assigns.--> <xsd:element name = "FilterResult"> <xsd:complexType> <xsd:sequence> <xsd:any namespace = "##other" processContents = "lax" minOccurs = "0" maxOccurs = "unbounded"/> </xsd:sequence> </xsd:complexType> </xsd:element></xsd:schema>

(Normative) The Test Report Schema

The Test Report Schema provides a uniform way for all IIC Test Framework implementations to report their testing results. It is essentially a “trace” of all test operations as logged by the Test Driver. Certain operations will return a “result” attribute if a Test Case execution ends due to failure of that testing operation, or because of any exception condition. The XML format of the Test Report permits HTML rendering by the Test Driver implementer to any format that visually conveys the meaning of the report in the best manner.

<?xml version = "1.0" encoding = "UTF-8"?><!--Generated by XML Authority. Conforms to w3c http://www.w3.org/2001/XMLSchema--><schema xmlns = "http://www.w3.org/2001/XMLSchema" targetNamespace = "http://www.oasis-open.org/tc/ebxml-iic/tests" xmlns:ebTest = "http://www.oasis-open.org/tc/ebxml-iic/tests" xmlns:ds = "http://www.oasis-open.org/tc/ebxml-iic/tests/xmldsig" version = "1.0" elementFormDefault = "unqualified" attributeFormDefault = "unqualified"> <import namespace = "http://www.oasis-open.org/tc/ebxml-iic/tests/xmldsig" schemaLocation = "xmldsig.xsd"/> <!--<import namespace="http://www.oasis-open.org/tc/ebxml-iic/tests/xmldsig" schemaLocation="xmldsig.xsd"/> --> <!-- <import namespace = "http://www.oasis-open.org/tc/ebxml-iic/tests/xmldsig" schemaLocation = "xmldsig.xsd"/> -->

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 262 of 447

1

123456789

101112131415

161718

19202122232425

2627282930313233343536373839404142434445

23

Page 263: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

<!-- <import namespace = "http://www.oasis-open.org/tc/ebxml-iic/tests/mime" schemaLocation = "file:///C:/scripting_poc_06_27_04/schemas/mime.xsd"/> --> <!-- edited with XML Spy v4.3 U (http://www.xmlspy.com) by Michael Kass (NIST) --> <!-- edited with XML Spy v4.3 U (http://www.xmlspy.com) by Michael Kass (NIST) --> <!-- edited with XML Spy v4.3 U (http://www.xmlspy.com) by Michael Kass (NIST) --> <!-- Copyright (C) The Organization for the Advancement of Structured Information Standards [OASIS] January 2002. All Rights Reserved.This document and translations of it may be copied and furnished to others, and derivative works that comment on or otherwise explain it or assist in its implementation may be prepared, copied, published and distributed, in whole or in part, without restriction of any kind, provided that the above copyright notice and this paragraph are included on all such copies and derivative works. However, this document itself may not be modified in any way, such as by removing the copyright notice or references to OASIS, except as needed for the purpose of developing OASIS specifications, in which case the procedures for copyrights defined in the OASIS Intellectual Property Rights document MUST be followed, or as required to translate it into languages other than English.The limited permissions granted above are perpetual and will not be revoked by OASIS or its successors or assigns.--> <element name = "TestSuite"> <complexType> <sequence> <element ref = "ebTest:MetaData"/> <element ref = "ebTest:ConfigurationGroup" maxOccurs = "unbounded"/> <element ref = "ebTest:ThreadGroup" minOccurs = "0"/> <element ref = "ebTest:TestServiceConfigurator" minOccurs = "0"/> <element ref = "ebTest:Message" minOccurs = "0" maxOccurs = "unbounded"/> <element ref = "ebTest:TestCase" maxOccurs = "unbounded"/> <element ref = "ebTest:Result" minOccurs = "0"/> </sequence> <attribute name = "configurationGroupRef" use = "required" type = "anyURI"/> </complexType> </element> <element name = "MetaData">

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 263 of 447

1

123456789

101112131415161718192021222324252627282930313233343536373839404142434445

23

Page 264: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

<complexType> <sequence> <element ref = "ebTest:Description"/> <element ref = "ebTest:Version"/> <element ref = "ebTest:Maintainer"/> <element ref = "ebTest:Location"/> <element ref = "ebTest:PublishDate"/> <element ref = "ebTest:Status"/> </sequence> </complexType> </element> <element name = "Description" type = "ebTest:non-empty-string"/> <element name = "Version" type = "ebTest:non-empty-string"/> <element name = "Maintainer" type = "ebTest:non-empty-string"/> <element name = "Location" type = "anyURI"/> <element name = "PublishDate" type = "ebTest:non-empty-string"/> <element name = "Status" type = "ebTest:non-empty-string"/> <element name = "TestCase"> <complexType> <sequence> <element ref = "ebTest:ThreadGroup" minOccurs = "0"/> <element ref = "ebTest:SetParameter" minOccurs = "0" maxOccurs = "unbounded"/> <choice maxOccurs = "unbounded"> <element ref = "ebTest:ThreadRef"/> <element ref = "ebTest:Split"/> <element ref = "ebTest:Join"/> <element ref = "ebTest:Sleep"/> </choice> <element ref = "ebTest:Result"/> </sequence> <attribute name = "id" use = "required" type = "ID"/> <attribute name = "description" use = "required" type = "string"/> <attribute name = "author" use = "optional" type = "string"/> <attribute name = "version" use = "optional" type = "string"/> <attribute name = "requirementReferenceId" use = "required" type = "anyURI"/> <attribute name = "configurationGroupRef" use = "optional" type = "anyURI"/> </complexType> </element> <element name = "ConfigurationGroup"> <complexType> <sequence> <element ref = "ebTest:Mode"/>

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 264 of 447

1

123456789

10111213141516171819202122232425262728293031323334353637383940414243

23

Page 265: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

<element ref = "ebTest:StepDuration"/> <element ref = "ebTest:Transport"/> <element ref = "ebTest:Envelope"/> <element ref = "ebTest:StoreAttachments"/> <element ref = "ebTest:ValidationType"/> <element ref = "ebTest:MutatorType"/> <element ref = "ebTest:SetParameter" minOccurs = "0" maxOccurs = "unbounded"/> </sequence> <attribute name = "id" use = "required" type = "ID"/> </complexType> </element> <element name = "CPAId" type = "ebTest:non-empty-string"/> <element name = "Mode" type = "ebTest:mode.type"/> <element name = "SenderParty" type = "anyURI"/> <element name = "ReceiverParty" type = "anyURI"/> <element name = "Service" type = "anyURI"/> <element name = "Action" type = "ebTest:non-empty-string"/> <element name = "StepDuration" type = "integer"/> <element name = "Transport" type = "ebTest:transport.type"/> <element name = "Envelope" type = "ebTest:non-empty-string"/> <simpleType name = "mode.type"> <restriction base = "NMTOKEN"> <enumeration value = "local-service"/> <enumeration value = "remote-service"/> <enumeration value = "connection"/> </restriction> </simpleType> <simpleType name = "mimeHeader.type"> <restriction base = "NMTOKEN"> <enumeration value = "MIMEMessageContent-Type"/> <enumeration value = "MIMEMessageStart"/> <enumeration value = "Content-Type"/> <enumeration value = "start"/> <enumeration value = "charset"/> <enumeration value = "type"/> <enumeration value = "wildcard"/> </restriction> </simpleType> <simpleType name = "content.type"> <restriction base = "NMTOKEN"> <enumeration value = "XML"/> <enumeration value = "date"/>

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 265 of 447

1

123456789

10111213141516171819202122232425262728293031323334353637383940414243

23

Page 266: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

<enumeration value = "URI"/> <enumeration value = "signature"/> <enumeration value = "XPointer"/> </restriction> </simpleType> <simpleType name = "method.type"> <restriction base = "NMTOKEN"> <enumeration value = "xpath"/> <enumeration value = "md5"/> </restriction> </simpleType> <simpleType name = "messageContext.type"> <restriction base = "NMTOKEN"> <enumeration value = "true"/> <enumeration value = "false"/> </restriction> </simpleType> <simpleType name = "requirement.type"> <restriction base = "NMTOKEN"> <enumeration value = "required"/> <enumeration value = "stronglyrecommended"/> <enumeration value = "recommended"/> <enumeration value = "optional"/> </restriction> </simpleType> <simpleType name = "non-empty-string"> <restriction base = "string"> <minLength value = "1"/> </restriction> </simpleType> <simpleType name = "configAction.type"> <restriction base = "NMTOKEN"> <enumeration value = "query"/> <enumeration value = "replace"/> </restriction> </simpleType> <simpleType name = "action.type"> <restriction base = "NMTOKEN"> <enumeration value = "reset"/> <enumeration value = "modify"/> </restriction> </simpleType> <simpleType name = "configItem.type">

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 266 of 447

1

123456789

10111213141516171819202122232425262728293031323334353637383940414243

23

Page 267: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

<restriction base = "NMTOKEN"/> </simpleType> <simpleType name = "parameter.type"> <restriction base = "NMTOKEN"> <enumeration value = "string"/> <enumeration value = "parameter"/> </restriction> </simpleType> <simpleType name = "connectivePredicate.type"> <restriction base = "NMTOKEN"> <enumeration value = "and"/> <enumeration value = "or"/> </restriction> </simpleType> <simpleType name = "thread.type"> <restriction base = "NMTOKEN"> <enumeration value = "synchronous"/> <enumeration value = "asynchronous"/> </restriction> </simpleType> <simpleType name = "matchResult.type"> <restriction base = "NMTOKEN"> <enumeration value = "pass"/> <enumeration value = "fail"/> </restriction> </simpleType> <simpleType name = "if.type"> <restriction base = "NMTOKEN"> <enumeration value = "andif"/> <enumeration value = "orif"/> </restriction> </simpleType> <simpleType name = "split.type"> <restriction base = "NMTOKEN"> <enumeration value = "andsplit"/> <enumeration value = "orsplit"/> </restriction> </simpleType> <simpleType name = "join.type"> <restriction base = "NMTOKEN"> <enumeration value = "andjoin"/> <enumeration value = "orjoin"/> </restriction>

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 267 of 447

1

123456789

10111213141516171819202122232425262728293031323334353637383940414243

23

Page 268: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

</simpleType> <simpleType name = "serviceMode.type"> <restriction base = "NMTOKEN"> <enumeration value = "loop"/> <enumeration value = "local-reporting"/> <enumeration value = "remote-reporting"/> </restriction> </simpleType> <simpleType name = "time.type"> <restriction base = "NMTOKEN"> <enumeration value = "timeToAcknowlegeReceipt"/> <enumeration value = "timeToAcknowledgeAcceptance"/> <enumeration value = "timeToPerform"/> <enumeration value = "other"/> </restriction> </simpleType> <simpleType name = "operator.type"> <restriction base = "NMTOKEN"> <enumeration value = "equal"/> <enumeration value = "lessThanl"/> <enumeration value = "lessThanOrEqual"/> <enumeration value = "greaterThan"/> <enumeration value = "greaterThanOrEqual"/> </restriction> </simpleType> <simpleType name = "assertionExit.type"> <restriction base = "NMTOKEN"> <enumeration value = "pass"/> <enumeration value = "fail"/> <enumeration value = "undetermined"/> </restriction> </simpleType> <simpleType name = "preconditionExit.type"> <restriction base = "NMTOKEN"> <enumeration value = "undetermined"/> </restriction> </simpleType> <simpleType name = "scope.type"> <restriction base = "NMTOKEN"> <enumeration value = "self"/> <enumeration value = "selfAndDescendents"/> </restriction> </simpleType>

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 268 of 447

1

123456789

10111213141516171819202122232425262728293031323334353637383940414243

23

Page 269: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

<simpleType name = "transport.type"> <restriction base = "NMTOKEN"> <enumeration value = "FTP"/> <enumeration value = "SMTP"/> <enumeration value = "HTTP"/> <enumeration value = "JMS"/> </restriction> </simpleType> <simpleType name = "envelope.type"> <restriction base = "NMTOKEN"> <enumeration value = "SOAP"/> <enumeration value = "ebXML"/> <enumeration value = "RNIF"/> <enumeration value = "JMS"/> </restriction> </simpleType> <simpleType name = "exception.type"> <restriction base = "NMTOKEN"> <enumeration value = "undetermined"/> </restriction> </simpleType> <simpleType name = "exitResult.type"> <restriction base = "NMTOKEN"> <enumeration value = "pass"/> <enumeration value = "fail"/> </restriction> </simpleType> <simpleType name = "validation.type"> <restriction base = "NMTOKEN"> <enumeration value = "XMLSchema"/> <enumeration value = "Schematron"/> </restriction> </simpleType> <simpleType name = "mutator.type"> <restriction base = "NMTOKEN"> <enumeration value = "XSLT"/> <enumeration value = "XUpdate"/> </restriction> </simpleType> <element name = "MessageExpression"> <complexType> <sequence> <element ref = "ebTest:ErrorMessage"/>

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 269 of 447

1

123456789

10111213141516171819202122232425262728293031323334353637383940414243

23

Page 270: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

</sequence> </complexType> </element> <element name = "ErrorMessage" type = "ebTest:non-empty-string"/> <element name = "PutMessage"> <complexType> <sequence> <element ref = "ebTest:SetMessage"/> <element ref = "ebTest:SetPayload" minOccurs = "0" maxOccurs = "unbounded"/> <element ref = "ebTest:Result" minOccurs = "0"/> </sequence> <attribute name = "description" use = "required" type = "string"/> <attribute name = "repeatWithSameContext" use = "optional" type = "integer"/> <attribute name = "repeatWithNewContext" use = "optional" type = "integer"/> </complexType> </element> <element name = "GetPayload"> <complexType> <sequence> <choice> <element ref = "ebTest:Content-ID"/> <element ref = "ebTest:Content-Location"/> <element ref = "ebTest:Index"/> </choice> <element ref = "ebTest:SetXPathParameter" minOccurs = "0" maxOccurs = "unbounded"/> </sequence> <attribute name = "description" use = "required" type = "string"/> </complexType> </element> <element name = "GetMessage"> <complexType> <sequence> <sequence maxOccurs = "unbounded"> <element ref = "ebTest:Filter"/> <element ref = "ebTest:SetXPathParameter" minOccurs = "0" maxOccurs = "unbounded"/> </sequence> <element ref = "ebTest:Result" minOccurs = "0"/> </sequence> <attribute name = "description" use = "required" type = "string"/> <attribute name = "mask" use = "optional" type = "boolean"/>

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 270 of 447

1

123456789

10111213141516171819202122232425262728293031323334353637383940414243

23

Page 271: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

</complexType> </element> <element name = "Filter"> <complexType mixed = "true"> <choice> <element ref = "ebTest:Result" minOccurs = "0"/> </choice> <attribute name = "stepDuration" use = "optional" type = "integer"/> </complexType> </element> <element name = "SetMessage"> <complexType> <sequence> <element ref = "ebTest:Packaging" minOccurs = "0"/> <element ref = "ebTest:Content"/> <element ref = "ebTest:Mutator" minOccurs = "0"/> <element ref = "ebTest:DSign" minOccurs = "0"/> <element ref = "ebTest:Result" minOccurs = "0"/> </sequence> <attribute name = "description" use = "optional" type = "string"/> <attribute name = "id" use = "optional" type = "ebTest:non-empty-string"/> </complexType> </element> <element name = "SetPayload"> <complexType> <sequence> <element ref = "ebTest:Packaging" minOccurs = "0"/> <choice> <element ref = "ebTest:Content"/> <element ref = "ebTest:DSign"/> </choice> <element ref = "ebTest:Mutator" minOccurs = "0"/> <element ref = "ebTest:Result" minOccurs = "0"/> </sequence> <attribute name = "description" use = "optional" type = "string"/> <attribute name = "id" use = "required" type = "ebTest:non-empty-string"/> </complexType> </element> <element name = "TestAssertion"> <complexType> <sequence> <choice> <element ref = "ebTest:VerifyContent"/>

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 271 of 447

1

123456789

10111213141516171819202122232425262728293031323334353637383940414243

23

Page 272: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

<element ref = "ebTest:ValidateContent"/> <element ref = "ebTest:VerifyTimeDifference"/> </choice> <element name = "WhenTrue" minOccurs = "0"> <complexType> <choice> <element ref = "ebTest:Continue"/> <element ref = "ebTest:ThreadRef"/> <element ref = "ebTest:Split"/> <element name = "Exit" type = "ebTest:assertionExit.type"/> </choice> </complexType> </element> <element name = "WhenFalse" minOccurs = "0"> <complexType> <choice> <element ref = "ebTest:Continue"/> <element ref = "ebTest:ThreadRef"/> <element ref = "ebTest:Split"/> <element name = "Exit" type = "ebTest:assertionExit.type"/> </choice> </complexType> </element> <element ref = "ebTest:Result" minOccurs = "0"/> </sequence> <attribute name = "description" use = "required" type = "string"/> </complexType> </element> <element name = "MimeHeader" type = "ebTest:mimeHeader.type"/> <element name = "MimeHeaderValue" type = "ebTest:non-empty-string"/> <element name = "Content-Location" type = "ebTest:non-empty-string"/> <element name = "Index" type = "integer"/> <element name = "FileURI" type = "anyURI"/> <element name = "PayloadRef" type = "ebTest:non-empty-string"/> <element name = "Signature" type = "base64Binary"/> <element name = "Content-ID" type = "ebTest:non-empty-string"/> <element name = "MessageDeclaration"> <complexType> <sequence> <any namespace = "##other" processContents = "lax" minOccurs = "0" maxOccurs = "unbounded"/>

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 272 of 447

1

123456789

10111213141516171819202122232425262728293031323334353637383940414243

23

Page 273: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

</sequence> </complexType> </element> <element name = "ValidateContent"> <complexType mixed = "true"> <choice> <element ref = "ebTest:Result" minOccurs = "0"/> </choice> <attribute name = "contentType" use = "required" type = "ebTest:content.type"/> <attribute name = "schemaLocation" use = "optional" type = "anyURI"/> </complexType> </element> <element name = "VerifyContent"> <complexType mixed = "true"> <choice> <element ref = "ebTest:Result" minOccurs = "0"/> </choice> </complexType> </element> <element name = "Message"> <complexType> <sequence> <any namespace = "##other" processContents = "lax" minOccurs = "0" maxOccurs = "unbounded"/> </sequence> <attribute name = "id" use = "required" type = "ID"/> </complexType> </element> <element name = "SetParameter"> <complexType> <sequence> <element name = "Name" type = "ebTest:non-empty-string"/> <choice> <element name = "Value" type = "ebTest:non-empty-string"/> <element name = "ParameterRef" type = "ebTest:non-empty-string"/> </choice> <element ref = "ebTest:Result" minOccurs = "0"/> </sequence> <attribute name = "scope" use = "optional" type = "ebTest:scope.type"/> </complexType> </element> <element name = "Mutator">

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 273 of 447

1

123456789

10111213141516171819202122232425262728293031323334353637383940414243

23

Page 274: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

<complexType> <sequence> <choice> <element ref = "ebTest:XSL"/> <element ref = "ebTest:XUpdate"/> </choice> <element ref = "ebTest:Result"/> </sequence> </complexType> </element> <element name = "XSL" type = "ebTest:non-empty-string"/> <element name = "XUpdate" type = "ebTest:non-empty-string"/> <element name = "BooleanClause"> <complexType> <attribute name = "booleanPredicate" use = "required" type = "boolean"/> </complexType> </element> <element name = "DSign"> <complexType> <sequence> <sequence> <element ref = "ds:Signature"/> </sequence> <element ref = "ebTest:Result"/> </sequence> </complexType> </element> <element name = "Declaration"> <complexType> <sequence> <any namespace = "##other" processContents = "lax" minOccurs = "0" maxOccurs = "unbounded"/> </sequence> </complexType> </element> <element name = "Thread"> <complexType> <choice maxOccurs = "unbounded"> <element ref = "ebTest:SetParameter"/> <element ref = "ebTest:PutMessage"/> <element ref = "ebTest:Initiator"/> <element ref = "ebTest:GetMessage"/> <element ref = "ebTest:TestAssertion"/>

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 274 of 447

1

123456789

10111213141516171819202122232425262728293031323334353637383940414243

23

Page 275: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

<element ref = "ebTest:ThreadRef"/> <element ref = "ebTest:Split"/> <element ref = "ebTest:Join"/> <element ref = "ebTest:Sleep"/> </choice> <attribute name = "name" use = "required" type = "ID"/> <attribute name = "description" use = "optional" type = "string"/> </complexType> </element> <element name = "ThreadRef"> <complexType> <sequence> <element ref = "ebTest:Result" minOccurs = "0"/> </sequence> <attribute name = "nameRef" use = "required" type = "IDREF"/> <attribute name = "configurationGroupRef" use = "optional" type = "anyURI"/> <attribute name = "loop" use = "optional" type = "integer"/> <attribute name = "instanceId" use = "optional" type = "string"/> </complexType> </element> <element name = "Pass"> <complexType/> </element> <element name = "Fail"> <complexType/> </element> <element name = "ThreadGroup"> <complexType> <sequence> <element ref = "ebTest:Thread" maxOccurs = "unbounded"/> </sequence> </complexType> </element> <element name = "Sleep"> <complexType mixed = "true"> <choice> <element ref = "ebTest:Result" minOccurs = "0"/> </choice> </complexType> </element> <element name = "Split"> <complexType> <sequence>

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 275 of 447

1

123456789

10111213141516171819202122232425262728293031323334353637383940414243

23

Page 276: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

<sequence maxOccurs = "unbounded"> <element ref = "ebTest:ThreadRef"/> </sequence> <element ref = "ebTest:Result" minOccurs = "0"/> </sequence> </complexType> </element> <element name = "Join"> <complexType> <sequence> <sequence maxOccurs = "unbounded"> <element ref = "ebTest:ThreadRef"/> </sequence> <element ref = "ebTest:Result" minOccurs = "0"/> </sequence> <attribute name = "joinType" use = "optional" type = "ebTest:join.type"/> </complexType> </element> <element name = "Initiator"> <complexType> <sequence> <element name = "SetMessage"> <complexType> <sequence> <element ref = "ebTest:Content"/> <element ref = "ebTest:Mutator" minOccurs = "0"/> <element ref = "ebTest:DSign" minOccurs = "0" maxOccurs = "unbounded"/> </sequence> </complexType> </element> <element name = "SetPayload" maxOccurs = "unbounded"> <complexType> <sequence> <element ref = "ebTest:Content" minOccurs = "0"/> <element ref = "ebTest:Mutator" minOccurs = "0"/> <element ref = "ebTest:DSign" minOccurs = "0" maxOccurs = "unbounded"/> <element ref = "ebTest:Result" minOccurs = "0"/> </sequence>

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 276 of 447

1

123456789

1011121314151617181920212223242526272829303132333435363738394041424344

23

Page 277: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

<attribute name = "id" use = "required" type = "ebTest:non-empty-string"/> </complexType> </element> <element ref = "ebTest:Result" minOccurs = "0"/> </sequence> <attribute name = "description" use = "required" type = "string"/> </complexType> </element> <element name = "TestServiceConfigurator"> <complexType> <sequence> <element ref = "ebTest:ServiceMode"/> <element ref = "ebTest:ResponseURL"/> <element ref = "ebTest:NotificationURL"/> <element ref = "ebTest:PayloadDigests" minOccurs = "0"/> </sequence> </complexType> </element> <element name = "MessageRef" type = "IDREF"/> <element name = "ConfigurationItem"> <complexType> <sequence> <element name = "Name" type = "ebTest:non-empty-string"/> <element name = "Value" type = "ebTest:non-empty-string"/> </sequence> </complexType> </element> <element name = "ErrorURL" type = "anyURI"/> <element name = "NotificationURL" type = "anyURI"/> <element name = "SetXPathParameter"> <complexType> <sequence> <element name = "Name" type = "ebTest:non-empty-string"/> <element name = "Expression" type = "ebTest:non-empty-string"/> <element ref = "ebTest:Result" minOccurs = "0"/> </sequence> <attribute name = "scope" use = "optional" type = "ebTest:scope.type"/> </complexType> </element> <element name = "ResponseURL" type = "anyURI"/> <element name = "StoreAttachments" type = "boolean"/> <element name = "OperationMode" type = "string"/>

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 277 of 447

1

123456789

10111213141516171819202122232425262728293031323334353637383940414243

23

Page 278: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

<element name = "PayloadDigests"> <complexType> <sequence> <element name = "Payload" maxOccurs = "unbounded"> <complexType> <sequence> <element name = "Id" type = "anyURI"/> <element name = "Digest" type = "base64Binary"/> </sequence> </complexType> </element> </sequence> </complexType> </element> <element name = "ServiceMode" type = "ebTest:serviceMode.type"/> <element name = "Transaction"> <complexType> <sequence maxOccurs = "unbounded"> <choice maxOccurs = "unbounded"> <element ref = "ebTest:PutMessage"/> <element ref = "ebTest:Initiator"/> </choice> <element ref = "ebTest:GetMessage" minOccurs = "0" maxOccurs = "unbounded"/> </sequence> <attribute name = "timeToPerform" use = "optional" type = "duration"/> </complexType> </element> <element name = "VerifyTimeDifference"> <complexType> <sequence> <element ref = "ebTest:ParamName"/> <element ref = "ebTest:ParamName"/> <element ref = "ebTest:Operator"/> <element ref = "ebTest:Difference"/> <element ref = "ebTest:Result" minOccurs = "0"/> </sequence> </complexType> </element> <element name = "TimeToAcknowledgeReceipt"> <complexType> <sequence>

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 278 of 447

1

123456789

10111213141516171819202122232425262728293031323334353637383940414243

23

Page 279: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

<element ref = "ebTest:XPathExpression"/> </sequence> </complexType> </element> <element name = "TimeToAcknowledgeAcceptance"> <complexType> <sequence> <element ref = "ebTest:XPathExpression"/> </sequence> </complexType> </element> <element name = "Difference" type = "duration"/> <element name = "Operator" type = "ebTest:operator.type"/> <element name = "XPathExpression" type = "ebTest:non-empty-string"/> <element name = "Continue"> <complexType/> </element> <element name = "ParamName" type = "ebTest:non-empty-string"/> <element name = "VerifyTimeToPerform"> <complexType> <sequence> <element ref = "ebTest:ThreadName" maxOccurs = "unbounded"/> </sequence> <attribute name = "maxTime" use = "required" type = "duration"/> </complexType> </element> <element name = "ThreadName" type = "IDREF"/> <element name = "Header"> <complexType> <sequence> <element ref = "ebTest:Name"/> <element ref = "ebTest:Value" minOccurs = "0"/> <element ref = "ebTest:Attribute"/> </sequence> </complexType> </element> <element name = "Name" type = "ebTest:non-empty-string"/> <element name = "Value" type = "ebTest:non-empty-string"/> <element name = "Packaging"> <complexType> <sequence> <element ref = "ebTest:Header" minOccurs = "0"/> <element ref = "ebTest:Result"/>

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 279 of 447

1

123456789

10111213141516171819202122232425262728293031323334353637383940414243

23

Page 280: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

</sequence> </complexType> </element> <element name = "PackagingAPI" type = "string"/> <element name = "Content"> <complexType> <sequence> <choice> <element ref = "ebTest:Declaration"/> <element ref = "ebTest:FileURI"/> <element ref = "ebTest:MessageRef"/> </choice> <element ref = "ebTest:Result" minOccurs = "0"/> </sequence> </complexType> </element> <element name = "Attribute"> <complexType> <sequence> <element ref = "ebTest:Name"/> <element ref = "ebTest:Value"/> </sequence> </complexType> </element> <element name = "Result"> <complexType> <sequence> <element ref = "ebTest:ExitResult"/> <element ref = "ebTest:Description"/> </sequence> </complexType> </element> <element name = "ExitResult" type = "string"/> <element name = "ValidationType" type = "string"/> <element name = "MutatorType" type = "string"/></schema>

(Normative) ebXML Test Service Message Schema

<?xml version = "1.0" encoding = "UTF-8"?><!--Generated by XML Authority. Conforms to w3c http://www.w3.org/2001/XMLSchema--><schema xmlns = "http://www.w3.org/2001/XMLSchema"

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 280 of 447

1

123456789

101112131415161718192021222324252627282930313233343536

3738

3940414243

23

Page 281: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

targetNamespace = "http://www.oasis-open.org/tc/ebxml-iic/tests/messages" xmlns:tns = "http://www.oasis-open.org/tc/ebxml-iic/tests/messages" xmlns:eb = "http://www.oasis-open.org/committees/ebxml-msg/schema/msg-header-2_0.xsd" xmlns:ds = "http://www.oasis-open.org/tc/ebxml-iic/tests/xmldsig" xmlns:xsd = "http://www.w3.org/2001/XMLSchema"> <import namespace = "http://www.oasis-open.org/committees/ebxml-msg/schema/msg-header-2_0.xsd" schemaLocation = "http://www.oasis-open.org/committees/ebxml-msg/schema/msg-header-2_0.xsd"/> <import namespace = "http://www.oasis-open.org/tc/ebxml-iic/tests/xmldsig" schemaLocation = "xmldsig.xsd"/> <!-- Copyright (C) The Organization for the Advancement of Structured Information Standards [OASIS] January 2002. All Rights Reserved.This document and translations of it may be copied and furnished to others, and derivative works that comment on or otherwise explain it or assist in its implementation may be prepared, copied, published and distributed, in whole or in part, without restriction of any kind, provided that the above copyright notice and this paragraph are included on all such copies and derivative works. However, this document itself may not be modified in any way, such as by removing the copyright notice or references to OASIS, except as needed for the purpose of developing OASIS specifications, in which case the procedures for copyrights defined in the OASIS Intellectual Property Rights document MUST be followed, or as required to translate it into languages other than English.The limited permissions granted above are perpetual and will not be revoked by OASIS or its successors or assigns.--> <!-- Copyright (C) The Organization for the Advancement of Structured Information Standards [OASIS] January 2002. All Rights Reserved.This document and translations of it may be copied and furnished to others, and derivative works that comment on or otherwise explain it or assist in its implementation may be prepared, copied, published and distributed, in whole or in part, without restriction of any kind, provided that the above copyright notice and this paragraph are included on all such copies and derivative works. However, this document itself may not be modified in any way, such as by removing the copyright notice or references to OASIS, except as needed for the purpose of developing OASIS specifications, in which case the procedures for copyrights defined in the OASIS Intellectual Property Rights document MUST be followed, or as required to translate it into languages other than English.The limited permissions granted above are perpetual and will not be revoked by OASIS or its successors or assigns.--> <element name = "InitiatorRequest"> <complexType> <sequence> <element ref = "tns:SetMessage"/> <element ref = "tns:SetPayload" minOccurs = "0" maxOccurs = "unbounded"/> </sequence>

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 281 of 447

1

123456789

101112131415161718192021222324252627282930313233343536373839404142434445464748

23

Page 282: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

</complexType> </element> <element name = "InitiatorResponse"> <complexType> <sequence> <element ref = "tns:Success"/> </sequence> </complexType> </element> <element name = "NotificationResponse"> <complexType> <sequence> <element ref = "tns:Success"/> </sequence> </complexType> </element> <complexType name = "GenericMessageType"> <attribute name = "synchType" use = "required" type = "tns:synch.type"/> <attribute name = "id" use = "required" type = "string"/> <attribute name = "serviceInstanceId" use = "optional" type = "string"/> <attribute name = "serviceName" use = "optional" type = "string"/> <attribute name = "reportingAction" use = "optional" type = "string"/> <anyAttribute namespace = "##any" processContents = "strict"/> </complexType> <element name = "NotificationRequest"> <complexType> <complexContent> <extension base = "tns:GenericMessageType"> <sequence> <element ref = "tns:Part" maxOccurs = "unbounded"/> </sequence> <attribute name = "notificationType" use = "required" type = "tns:notification.type"/> </extension> </complexContent> </complexType> </element> <element name = "TestServiceConfiguratorRequest"> <complexType> <sequence> <element name = "ServiceMode" type = "tns:serviceMode.type"/> <element ref = "tns:ResponseURL"/> <element ref = "tns:NotificationURL"/>

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 282 of 447

1

123456789

10111213141516171819202122232425262728293031323334353637383940414243

23

Page 283: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

<element ref = "tns:PayloadDigests" minOccurs = "0"/> </sequence> </complexType> </element> <element name = "ResponseURL" type = "anyURI"/> <element name = "TestServiceConfiguratorResponse"> <complexType> <sequence> <element ref = "tns:Success"/> </sequence> </complexType> </element> <element name = "Status" type = "boolean"/> <element name = "Mode" type = "tns:non-empty-string"/> <element name = "MessageId" type = "tns:non-empty-string"/> <simpleType name = "non-empty-string"> <restriction base = "string"> <minLength value = "1"/> </restriction> </simpleType> <simpleType name = "configAction.type"> <restriction base = "NMTOKEN"> <enumeration value = "query"/> <enumeration value = "replace"/> </restriction> </simpleType> <simpleType name = "result.type"> <restriction base = "NMTOKEN"> <enumeration value = "pass"/> <enumeration value = "fail"/> </restriction> </simpleType> <simpleType name = "operationMode.type"> <restriction base = "NMTOKEN"> <enumeration value = "reporting"/> <enumeration value = "loop"/> </restriction> </simpleType> <simpleType name = "parameter.type"> <restriction base = "NMTOKEN"> <enumeration value = "parameter"/> <enumeration value = "string"/> </restriction>

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 283 of 447

1

123456789

10111213141516171819202122232425262728293031323334353637383940414243

23

Page 284: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

</simpleType> <simpleType name = "serviceMode.type"> <restriction base = "NMTOKEN"> <enumeration value = "remote-reporting"/> <enumeration value = "local-reporting"/> <enumeration value = "loop"/> </restriction> </simpleType> <simpleType name = "parameter.type"> <restriction base = "NMTOKEN"> <enumeration value = "string"/> <enumeration value = "namespace"/> </restriction> </simpleType> <simpleType name = "notification.type"> <restriction base = "NMTOKEN"> <enumeration value = "errURL"/> <enumeration value = "errorApp"/> <enumeration value = "message"/> </restriction> </simpleType> <simpleType name = "synch.type"> <restriction base = "string"> <enumeration value = "synchronous"/> <enumeration value = "asynchronous"/> </restriction> </simpleType> <element name = "OperationMode" type = "tns:operationMode.type"/> <element name = "NotificationURL" type = "anyURI"/> <element name = "DSign"> <complexType> <sequence> <element ref = "ds:Signature"/> </sequence> </complexType> </element> <element name = "PayloadDigests"> <complexType> <sequence> <element ref = "tns:Payload" maxOccurs = "unbounded"/> </sequence> </complexType> </element>

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 284 of 447

1

123456789

10111213141516171819202122232425262728293031323334353637383940414243

23

Page 285: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

<element name = "Id" type = "string"/> <element name = "Digest" type = "string"/> <element name = "SetMessage"> <complexType> <sequence> <element ref = "tns:Declaration"/> <element ref = "tns:DSign" minOccurs = "0" maxOccurs = "unbounded"/> </sequence> </complexType> </element> <element name = "SetPayload"> <complexType> <sequence> <element ref = "tns:DSign" minOccurs = "0"/> </sequence> <attribute name = "id" use = "required" type = "string"/> </complexType> </element> <element name = "Header"> <complexType> <sequence> <element ref = "tns:Name"/> <element ref = "tns:Value"/> </sequence> </complexType> </element> <element name = "Declaration"> <complexType> <sequence> <any namespace = "##other" processContents = "lax" minOccurs = "0" maxOccurs = "unbounded"/> </sequence> </complexType> </element> <element name = "Payload"> <complexType> <sequence> <element ref = "tns:Id"/> <element ref = "tns:Success"/> </sequence> </complexType> </element> <element name = "Name" type = "string"/>

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 285 of 447

1

123456789

10111213141516171819202122232425262728293031323334353637383940414243

23

Page 286: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

<element name = "Value" type = "string"/> <element name = "Part"> <complexType> <sequence> <element ref = "tns:Header" minOccurs = "0" maxOccurs = "unbounded"/> <element ref = "tns:Content" minOccurs = "0"/> </sequence> </complexType> </element> <element name = "Content"> <complexType> <sequence> <any namespace = "##other" processContents = "lax" minOccurs = "0" maxOccurs = "unbounded"/> </sequence> </complexType> </element> <element name = "PayloadVerifyResponse"> <complexType> <sequence> <element ref = "tns:Payload" minOccurs = "0" maxOccurs = "unbounded"/> </sequence> </complexType> </element> <element name = "Success" type = "boolean"/> <element name = "Packaging" type = "string"/></schema>

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 286 of 447

1

123456789

1011121314151617181920212223242526272829

3031323334353637383940414243

23

Page 287: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

WSDL Definitions for Test Service

WSDL Definition of the Test Service initiator SOAP method

<?xml version="1.0" encoding="UTF-8"?><!-- edited with XMLSPY v2004 rel. 4 U (http://www.xmlspy.com) by Mike Kass (Personal) --><wsdl:definitions xmlns="http://schemas.xmlsoap.org/wsdl/" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:tns="urn:oasis:names:tc:ebxml-iic:testservice:wsdl:2.0" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:xsd1="http://www.oasis-open.org/tc/ebxml-iic/tests/messages" xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/" targetNamespace="urn:oasis:names:tc:ebxml-iic:testservice:wsdl:2.0" name="RegistryService"> <wsdl:import namespace="http://www.oasis-open.org/tc/ebxml-iic/tests/messages" location="schemas/TestServiceMessages.xsd"/> <wsdl:message name="InitiatorRequest"> <wsdl:part name="InitiatorRequest" element="xsd1:InitiatorRequest"/> </wsdl:message> <wsdl:message name="InitiatorResponse"> <wsdl:part name="InitiatorResponse" element="xsd1:InitiatorResponse"/> </wsdl:message> <wsdl:portType name="SendPortType"> <documentation>Maps to the Initiator interface of Test Framework spec.</documentation> <wsdl:operation name="initiator"> <wsdl:input message="tns:InitiatorRequest"/> <wsdl:output message="tns:InitiatorResponse"/> </wsdl:operation> </wsdl:portType>

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 287 of 447

1

123456789

1011121314

151617181920

212223242526272829303132333435363738394041424344

23

Page 288: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

<wsdl:binding name="InitiatorSOAPBinding" type="tns:SendPortType"> <soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/> <wsdl:operation name="initiator"> <soap:operation soapAction="uri:oasis:ebxml:iic:testservice:Send:initiator"/> <wsdl:input> <mime:multipartRelated> <mime:part> <soap:body use="literal"/> </mime:part> </mime:multipartRelated> </wsdl:input> <wsdl:output> <mime:multipartRelated> <mime:part> <soap:body use="literal"/> </mime:part> </mime:multipartRelated> </wsdl:output> </wsdl:operation> </wsdl:binding> <wsdl:service name="TestService"> <documentation>The QueryManager service of OASIS ebXML Test Framework version 1.1</documentation> <wsdl:port name="InitiatorSOAPBinding" binding="tns:InitiatorSOAPBinding"> <soap:address location="http://your_URL_to_your_ConfigurationService"/> </wsdl:port> </wsdl:service> <documentation>This is the the normative abstract WSDL service definition for the OASIS ebXML Test Service</documentation></wsdl:definitions>

WSDL Definitnion of the Test Service configure method

<?xml version="1.0" encoding="UTF-8"?><!-- edited with XMLSPY v2004 rel. 4 U (http://www.xmlspy.com) by Mike Kass (Personal) --><wsdl:definitions xmlns="http://schemas.xmlsoap.org/wsdl/" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:tns="urn:oasis:names:tc:ebxml-iic:testservice:wsdl:2.0" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:xsd1="http://www.oasis-

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 288 of 447

1

123456789

101112131415161718192021222324252627282930

313233343536

37383940414243

23

Page 289: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

open.org/tc/ebxml-iic/tests/messages" xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/" targetNamespace="urn:oasis:names:tc:ebxml-iic:testservice:wsdl:2.0" name="RegistryService"> <wsdl:import namespace="http://www.oasis-open.org/tc/ebxml-iic/tests/messages" location="schemas/TestServiceMessages.xsd"/> <wsdl:message name="TestServiceConfiguratorRequest"> <wsdl:part name="TestServiceConfiguratorRequest" element="xsd1:TestServiceConfiguratorRequest"/> </wsdl:message> <wsdl:message name="TestServiceConfiguratorResponse"> <wsdl:part name="TestServiceConfiguratorResponse" element="xsd1:TestServiceConfiguratorResponse"/> </wsdl:message> <wsdl:portType name="ConfigurationPortType"> <documentation>Maps to the Configurator interface of Test Framework spec.</documentation> <wsdl:operation name="configurator"> <wsdl:input message="tns:TestServiceConfiguratorRequest"/> <wsdl:output message="tns:TestServiceConfiguratorResponse"/> </wsdl:operation> </wsdl:portType> <wsdl:binding name="ConfiguratorSOAPBinding" type="tns:ConfigurationPortType"> <soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/> <wsdl:operation name="configurator"> <soap:operation soapAction="uri:oasis:ebxml:iic:testservice:Configuration:configurator"/> <wsdl:input> <mime:multipartRelated> <mime:part> <soap:body/> </mime:part> </mime:multipartRelated> </wsdl:input> <wsdl:output> <mime:multipartRelated> <mime:part> <soap:body/> </mime:part> </mime:multipartRelated> </wsdl:output> </wsdl:operation> </wsdl:binding> <wsdl:service name="TestService"> <documentation>The QueryManager service of OASIS ebXML Test Framework version 1.1</documentation>

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 289 of 447

1

123456789

1011121314151617181920212223242526272829303132333435363738394041424344

23

Page 290: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

<wsdl:port name="ConfiguratorSOAPBinding" binding="tns:ConfiguratorSOAPBinding"> <soap:address location="http://your_URL_to_your_ConfigurationService"/> </wsdl:port> </wsdl:service> <documentation>This is the the normative abstract WSDL service definition for the OASIS ebXML Test Service</documentation></wsdl:definitions>

WSDL Definition of the Test Driver notify method

<?xml version="1.0" encoding="UTF-8"?><!-- edited with XMLSPY v2004 rel. 3 U (http://www.xmlspy.com) by Mike Kass (Personal) --><wsdl:definitions xmlns="http://schemas.xmlsoap.org/wsdl/" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:tns="urn:oasis:names:tc:ebxml-iic:testservice:wsdl:2.0" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:xsd1="http://www.oasis-open.org/tc/ebxml-iic/tests/messages" targetNamespace="urn:oasis:names:tc:ebxml-iic:testservice:wsdl:2.0" name="RegistryService"> <wsdl:import namespace="http://www.oasis-open.org/tc/ebxml-iic/tests/messages" location="schemas/TestServiceMessages.xsd"/> <wsdl:message name="NotificationRequest"> <wsdl:part name="NotificationRequest" element="xsd1:NotificationRequest"/> </wsdl:message> <wsdl:message name="NotificationResponse"> <wsdl:part name="NotificationResponse" element="xsd1:NotificationResponse"/> </wsdl:message> <wsdl:portType name="NotificationPortType"> <documentation>Maps to the Notification interface of Test Framework spec.</documentation> <wsdl:operation name="Notify"> <wsdl:input message="tns:NotificationRequest"/> <wsdl:output message="tns:NotificationResponse"/> </wsdl:operation> </wsdl:portType> <wsdl:binding name="NotificationSOAPBinding" type="tns:NotificationPortType"> <soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/> <wsdl:operation name="Notify"> <soap:operation soapAction="uri:oasis:ebxml:iic:testservice:Receive:Notification"/> <wsdl:input> <mime:multipartRelated> <mime:part>

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 290 of 447

1

1234567

89

10111213

1415161718192021222324252627282930313233343536373839404142434445

23

Page 291: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

<soap:body use="literal"/> </mime:part> </mime:multipartRelated> </wsdl:input> <wsdl:output> <mime:multipartRelated> <mime:part> <soap:body use="literal"/> </mime:part> </mime:multipartRelated> </wsdl:output> </wsdl:operation> </wsdl:binding> <wsdl:service name="TestDriverReceiveService"> <documentation>The Receive service of OASIS ebXML Test Framework version 1.1</documentation> <wsdl:port name="NotifySOAPBinding" binding="tns:NotificationSOAPBinding"> <soap:address location="http://your_URL_to_your_ReceiveService"/> </wsdl:port> </wsdl:service> <documentation>This is the the normative abstract WSDL service definition for the OASIS ebXML Test Service</documentation></wsdl:definitions>

TerminologySeveral terms used in this specification are borrowed from the Conformance Glossary (OASIS, [ConfGlossary]) and also from the Standards and Conformance Testing Group at NIST. [ConfCertModelNIST]. They are not reported in this glossary, which only reflects (1) terms that are believed to be specific to – and introduced by - the ebXML Test Framework, or (2) terms that have a well understood meaning in testing literature (see above references) and may have additional properties in the context of the Test Framework that is worth mentioning.

Term DefinitionAsymmetric testing Interoperability testing where all parties are not equally tested for the

same features. An asymmetric interoperability test suite is typically driven from one party, and will need to be executed from every other party in order to evenly test for all interoperability features between candidate parties.

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 291 of 447

1

123456789

1011121314151617181920212223

242526272829303132333435363738

39

23

Page 292: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

Base CPA Required by both the conformance and interoperabililty test suites that describe both the Test Driver and Test Service Collaboration Protocol Profile Agreement. This is the “bootstrap” configuration for all messaging between the testing and candidate ebXML applications. Each test suite will define additional CPAs. How the base CPA is represented to applications is implementation specific.

Candidate Implementation (or Implementation Under test): The implementation (realization of a specification) used as a target of the testing (e.g. conformance testing).

Conformance Fulfillment of an implementation of all requirements specified; adherence of an implementation to the requirements of one or more specific standards or specifications.

Connection mode (Test Driver in) In connection mode and depending on the test harness, the test driver will interact with other components by directly generating ebXML messages at transport level (e.g. generates HTTP envelopes).

Interoperability profile A set of test requirements for interoperability which is a subset of all possible interoperability requirements, and which usually exercises features that correspond to specific user needs.

Interoperability Testing Process of verifying that two implementations of the same specification, or that an implementation and its operational environment, can interoperate according to the requirements of an assumed agreement or contract. This contract does not belong necessarily to the specification, but its terms and elements should be defined in it with enough detail, so that such a contract, combined with the specification, will be sufficient to determine precisely the expected behavior of an implementation, and to test it.

Local Reporting mode (Test Service in)

In this mode (a sub-mode of Reporting), the Test Service is installed on the same host as the Test Driver it reports to, and executes in the same process space. The notification uses the Receive interface of the Test Driver, which must be operating in service mode.

Loop mode (Test Service in) When a test service is in loop mode, it does not generate notifications to the test driver. The test service only communicates with external parties via the message handler.

MSH Message Service Handler, an implementation of ebXML Messaging Services

Reporting mode (Test Service in) A test service is deployed in reporting mode, when it notifies the test driver of invoked actions. This notification usually contains material from received messages.

Profile A profile is used as a method for defining subsets of a specification by identifying the functionality, parameters, options, and/or implementation requirements necessary to satisfy the requirements of a particular community of users. Specifications that explicitly recognize profiles should provide rules for profile creation, maintenance, registration, and applicability.

Remote Reporting mode (Test Service in)

In this mode (a sub-mode of Reporting), the Test Service is deployed on a different host than the Test Driver it reports to. The notification is done via messages to the Test Driver, which is operating in connection mode.

Service mode (Test Driver in) The Test Driver invokes actions in the test service via a programmatic interface (as opposed to via messages). The Test Service must be in local reporting mode.

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 292 of 447

1

23

Page 293: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

Specification coverage Specifies the degree that the specification requirements are satisfied by the set of test requirements included in the test suite document. Coverage can be full, partial or none.

Test actions (Or Test Service actions). Standard functions available in the test service to support most test cases.

Test case In the TestFramework, a test case is a sequence of discrete Threads, aimed at verifying a test requirement.

Test Requirements coverage Specifies the degree that the test requirements are satisfied by the set of test cases listed in the test suite document. Coverage can be full, contingent, partial or none.

References

Normative References

[ConfCertModelNIST] Conformance Testing and Certification Model for Software Specifications. L. Carnahan, L. Rosenthal, M. Skall. ISACC '98 Conference. March 1998[ConfCertTestFrmk] Conformance Testing and Certification Framework. L. Rosenthal, M. Skall, L. Carnahan. April 2001[ConfReqOASIS] Conformance Requirements for Specifications. OASIS Conformance Technical Committee. March 2002. [ConfGlossary] Conformance Glossary. OASIS Conformance TC, L. Rosenthal. September 2000.[RFC2119] Key Words for use in RFCs to Indicate Requirement Levels, Internet Engineering Task Force, March 1997[RFC2045] Multipurpose Internet Mail Extensions (MIME) Part One: Format of Internet Message Bodies, N Freed & N Borenstein, Published November 1996[RFC2046] Multipurpose Internet Mail Extensions (MIME) Part Two: Media Types. N. Freed, N. Borenstein. November 1996.[RFC2387] The MIME Multipart/Related Content-type. E. Levinson. August 1998.[RFC2392] Content-ID and Message-ID Uniform Resource Locators. E. Levinson, August 1998[RFC2396] Uniform Resource Identifiers (URI): Generic Syntax. T Berners-Lee, August 1998[RFC2821] Simple Mail Transfer Protocol, J. Klensin, Editor, April 2001 Obsoletes RFC 821

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 293 of 447

1

123456789

101112131415

1617

1819202122

23242526272829303132333435

23

Page 294: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

[RFC2616] Fielding, R., Gettys, J., Mogul, J., Frystyk, H., Masinter, L., Leach, P. and T. Berners-Lee, "Hypertext Transfer Protocol, HTTP/1.1", June 1999.[SOAP] W3C-Draft-Simple Object Access Protocol (SOAP) v1.1, Don Box, DevelopMentor; David Ehnebuske, IBM; Gopal Kakivaya, Andrew Layman, Henrik Frystyk Nielsen, Satish Thatte, Microsoft; Noah Mendelsohn, Lotus Development Corp.; Dave Winer, UserLand Software, Inc.; W3C Note 08 May 2000,http://www.w3.org/TR/2000/NOTE-SOAP-20000508/[SOAPAttach] SOAP Messages with Attachments, John J. Barton, Hewlett Packard Labs; Satish Thatte and Henrik Frystyk Nielsen, Microsoft, Published Oct 09 2000 http://www.w3.org/TR/2000/NOTE-SOAP-attachments-20001211[XLINK] W3C XML Linking Recommendation, http://www.w3.org/TR/2001/REC-xlink-20010627/[XML] W3C Recommendation: Extensible Markup Language (XML) 1.0 (Second Edition), October 2000, http://www.w3.org/TR/2000/REC-xml-20001006[XMLC14N] W3C Recommendation Canonical XML 1.0,http://www.w3.org/TR/2001/REC-xml-c14n-20010315 [XMLNS] W3C Recommendation for Namespaces in XML, World Wide Web Consortium, 14 January 1999, http://www.w3.org/TR/1999/REC-xml-names-19990114/[XMLDSIG] Joint W3C/IETF XML-Signature Syntax and Processing specification, http://www.w3.org/TR/2002/REC-xmldsig-core-20020212/.[XPointer] XML Pointer Language (XPointer) Version 1.0, W3C Candidate Recommendation 11 September 2001, http://www.w3.org/TR/2001/CR-xptr-20010911/

Non-Normative References[ebTestFramework] ebXML Test Framework specification, Version 1.0, Technical Committee Specification, March 4, 2003,http://www.oasis-open.org/committees/tc_home.php?wg_abbrev=ebxml-iic [ebMS] ebXML Messaging Service Specification, Version 2.0,http://www.oasis-open.org/committees/tc_home.php?wg_abbrev=ebxml-msg[ebMSInteropTests] ebXML MS V2.0 Basic Interoperability Profile Test Cases,http://www.oasis-open.org/committees/tc_home.php?wg_abbrev=ebxml-iic[ebMSConfTestSuite] ebXML MS V2.0 Conformance Test Suite,http://www.oasis-open.org/committees/tc_home.php?wg_abbrev=ebxml-iic[ebMSInteropReqs] ebXML MS V2.0 Interoperability Test Requirements,http://www.oasis-open.org/committees/tc_home.php?wg_abbrev=ebxml-iic

[XMLSchema] W3C XML Schema Recommendation,http://www.w3.org/TR/2001/REC-xmlschema-0-20010502/http://www.w3.org/TR/2001/REC-xmlschema-1-20010502/http://www.w3.org/TR/2001/REC-xmlschema-2-20010502/[ebCPP] ebXML Collaboration Protocol Profile and Agreement specification, Version 1.0, published 10 May, 2001,http://www.ebxml.org/specs/ebCCP.doc[ebBPSS] ebXML Business Process Specification Schema, version 1.0, published 27 April 2001,http://www.ebxml.org/specs/ebBPSS.pdf.[ebRS] ebXML Registry Services Specification, version 2.0, published 6 December 2001http://www.oasis-open.org/committees/regrep/documents/2.0/specs/ebrs.pdf, published, 5 December 2001.

Acknowledgments

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 294 of 447

1

123456789

101112131415161718192021

22232425262728

2930

3132

3334

35363738394041424344454647

4849

23

Page 295: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

The authors wish to acknowledge the support of the members of the OASIS ebXML IIC TC who contributed ideas, comments and text to this specification by the group’s discussion eMail list, on conference calls and during face-to-face meetings.IIC Committee MembersJacques Durand, Fujitsu <[email protected]>Jeffery Eck, Global Exchange Services <[email protected]>Hatem El Sebaaly, IPNet Solutions <[email protected]>Aaron Gomez, Drummond Group Inc. <[email protected]>Michael Kass, NIST <[email protected]> Matthew MacKenzie, Individual <[email protected]>Monica Martin, Sun Microsystems <[email protected]> Tim Sakach, Drake Certivo <[email protected]>Jeff Turpin, Cyclone Commerce <[email protected]>Eric van Lydegraf, Kinzan <[email protected]>Pete Wenzel, SeeBeyond <[email protected]>Steven Yung, Sun Microsystems <[email protected]>Boonserm Kulvatunyou, NIST <[email protected]>

Revision History

Rev Date By Whom Whatcs-10 2003-03-07 Michael Kass Initial versioncs-11 2004-03-30 Michael Kass First revision (DRAFT)cs-12 2004-04-12 Michael Kass Second revision (DRAFT)Notices

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 295 of 447

1

123456789

1011121314151617

1819202122232425262728293031323334353637

38

39

23

Page 296: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

OASIS takes no position regarding the validity or scope of any intellectual property or other rights that might be claimed to pertain to the implementation or use of the technology described in this document or the extent to which any license under such rights might or might not be available; neither does it represent that it has made any effort to identify any such rights. Information on OASIS's procedures with respect to rights in OASIS specifications can be found at the OASIS website. Copies of claims of rights made available for publication and any assurances of licenses to be made available, or the result of an attempt made to obtain a general license or permission for the use of such proprietary rights by implementors or users of this specification, can be obtained from the OASIS Executive Director.OASIS invites any interested party to bring to its attention any copyrights, patents or patent applications, or other proprietary rights which may cover technology that may be required to implement this specification. Please address the information to the OASIS Executive Director.Copyright © OASIS Open 2003. All Rights Reserved.This document and translations of it may be copied and furnished to others, and derivative works that comment on or otherwise explain it or assist in its implementation may be prepared, copied, published and distributed, in whole or in part, without restriction of any kind, provided that the above copyright notice and this paragraph are included on all such copies and derivative works. However, this document itself does not be modified in any way, such as by removing the copyright notice or references to OASIS, except as needed for the purpose of developing OASIS specifications, in which case the procedures for copyrights defined in the OASIS Intellectual Property Rights document must be followed, or as required to translate it into languages other than English.The limited permissions granted above are perpetual and will not be revoked by OASIS or its successors or assigns.This document and the information contained herein is provided on an “AS IS” basis and OASIS DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 296 of 447

1

123456789

1011121314151617181920212223242526

272829

23

Page 297: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

Appendix A (Normative) (Normative) Test Profile SchemaTest Profile Schema

The OASIS ebXML Implementation and Interoperability Committee has provided a version of the ebXML Test Profile schema using the schema vocabulary that conforms to the W3C XML Schema Recommendation specification [XMLSchema].

<?xml version = "1.0" encoding = "UTF-8"?><!--Generated by XML Authority. Conforms to w3c http://www.w3.org/2001/XMLSchema--><schema xmlns = "http://www.w3.org/2001/XMLSchema" targetNamespace = "http://www.oasis-open.org/tc/ebxml-iic/test-profile" xmlns:tns = "http://www.oasis-open.org/tc/ebxml-iic/test-profile" > <!-- Generated by XML Authority. Conforms to w3c http://www.w3.org/2001/XMLSchema --> <!-- $Id: TestProfile.xsd,v 1.2 2002/07/02 15:28:27 matt Exp $ --> <element name = "TestProfile"> <complexType> <sequence> <element ref = "tns:Dependency" minOccurs = "0" maxOccurs = "unbounded"/> <element ref = "tns:TestRequirementRef" maxOccurs = "unbounded"/> </sequence> <attribute name = "requirementsLocation" use = "required" type = "anyURI"/> <attribute name = "name" use = "required" type = "string"/> <attribute name = "description" use = "required" type = "string"/> </complexType> </element> <element name = "Dependency"> <complexType> <attribute name = "name" use = "required" type = "string"/> <attribute name = "profileRef" use = "required" type = "anyURI"/> </complexType> </element> <element name = "TestRequirementRef"> <!-- To overide the conformance type of the underlying requirement ... --> <complexType>

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 297 of 447

1

1

2

34567

89

101112131415161718192021222324252627282930313233343536373839404142434445464748

23

Page 298: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

<sequence> <element name = "Comment" type = "string" minOccurs = "0" maxOccurs = "unbounded"/> </sequence> <attribute name = "id" use = "required" type = "string"/> <attribute name = "requirementType" use = "optional" type = "tns:requirement.type"/> </complexType> </element> <simpleType name = "requirement.type"> <restriction base = "string"> <enumeration value = "required"/> <enumeration value = "strongly recommended"/> <enumeration value = "recommended"/> <enumeration value = "optional"/> </restriction> </simpleType></schema>

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 298 of 447

1

123456789

10111213141516171819

20

23

Page 299: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

Appendix B (Normative) (Normative) Test Requirements Schema

The OASIS ebXML Implementation and Interoperability Committee has provided a version of the ebXML Test Requirements schema using the schema vocabulary that conforms to the W3C XML Schema Recommendation specification [XMLSchema].

<?xml version = "1.0" encoding = "UTF-8"?><!--Generated by XML Authority. Conforms to w3c http://www.w3.org/2001/XMLSchema--><schema xmlns = "http://www.w3.org/2001/XMLSchema" targetNamespace = "http://www.oasis-open.org/tc/ebxml-iic/conformance/reqs" xmlns:tns = "http://www.oasis-open.org/tc/ebxml-iic/conformance/reqs" > <group name = "FunctionalRequirementGroup"> <sequence> <element ref = "tns:FunctionalRequirement"/> </sequence> </group> <!-- Copyright (C) The Organization for the Advancement of Structured Information Standards [OASIS] January 2002. All Rights Reserved.This document and translations of it may be copied and furnished to others, and derivative works that comment on or otherwise explain it or assist in its implementation may be prepared, copied, published and distributed, in whole or in part, without restriction of any kind, provided that the above copyright notice and this paragraph are included on all such copies and derivative works. However, this document itself may not be modified in any way, such as by removing the copyright notice or references to OASIS, except as needed for the purpose of developing OASIS specifications, in which case the procedures for copyrights defined in the OASIS Intellectual Property Rights document MUST be followed, or as required to translate it into languages other than English.The limited permissions granted above are perpetual and will not be revoked by OASIS or its successors or assigns.--> <!--Generated by XML Authority. Conforms to w3c http://www.w3.org/2000/10/XMLSchema--> <!-- OASIS/ebXML Test Suite Framework Description: Schema used to define ebXML Test Requirements instance document Author: Michael Kass Organization: NIST Author: Matthew MacKenzie Organization: XML Global

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 299 of 447

1

1

2

34567

89

1011121314151617181920212223242526272829303132333435363738394041424344454647484950

23

Page 300: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

Date: 03/31/2002 Version 1.0 --> <!-- CHANGES: Version 1.0 (Matt): - added attributes requirementType and name to Level. - added other to functional.type enumeration. --> <element name = "TestRequirement"> <complexType> <sequence> <choice minOccurs = "0" maxOccurs = "unbounded"> <element ref = "tns:FunctionalRequirement"/> <element ref = "tns:TestRequirement"/> </choice> </sequence> <attribute name = "id" use = "required" type = "ID"/> <attribute name = "name" use = "required" type = "string"/> <attribute name = "specRef" use = "required" type = "string"/> <attribute name = "functionalType" use = "required" type = "string"/> <attribute name = "dependencyRef" use = "optional" type = "anyURI"/> </complexType> </element> <element name = "FunctionalRequirement"> <complexType> <sequence> <element ref = "tns:Clause" minOccurs = "0"/> <choice maxOccurs = "unbounded"> <element ref = "tns:Assertion"/> <element ref = "tns:AssertionRef"/> </choice> </sequence> <attribute name = "id" use = "required" type = "ID"/> <attribute name = "name" use = "required" type = "string"/> <attribute name = "specRef" use = "required" type = "string"/> <attribute name = "testCaseRef" use = "optional" type = "anyURI"/> <attribute name = "dependencyRef" use = "optional" type = "anyURI"/> </complexType> </element> <element name = "Clause"> <complexType> <sequence> <choice> <element ref = "tns:Clause"/> <choice> <element ref = "tns:Condition"/> <element ref = "tns:ConditionRef"/> </choice>

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 300 of 447

1

123456789

10111213141516171819202122232425262728293031323334353637383940414243444546474849505152

23

Page 301: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

</choice> <sequence minOccurs = "0" maxOccurs = "unbounded"> <choice> <element ref = "tns:And"/> <element ref = "tns:Or"/> </choice> <choice> <element ref = "tns:Clause"/> <choice> <element ref = "tns:Condition"/> <element ref = "tns:ConditionRef"/> </choice> </choice> </sequence> </sequence> </complexType> </element> <element name = "Condition"> <complexType> <simpleContent> <extension base = "string"> <attribute name = "id" use = "required" type = "ID"/> </extension> </simpleContent> </complexType> </element> <element name = "ConditionRef"> <complexType> <attribute name = "id" use = "required" type = "IDREF"/> </complexType> </element> <element name = "And" type = "string"/> <element name = "Or" type = "string"/> <element name = "Assertion"> <complexType> <simpleContent> <extension base = "string"> <attribute name = "requirementType" use = "required" type = "tns:requirement.type"/> <attribute name = "id" use = "required" type = "ID"/> </extension> </simpleContent> </complexType> </element> <element name = "MetaData"> <complexType> <sequence> <element ref = "tns:Title"/> <element ref = "tns:Description"/> <element ref = "tns:Version"/> <element ref = "tns:Maintainer"/> <element ref = "tns:Location"/> <element ref = "tns:PublishDate"/>

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 301 of 447

1

123456789

1011121314151617181920212223242526272829303132333435363738394041424344454647484950515253

23

Page 302: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

<element ref = "tns:Status"/> </sequence> </complexType> </element> <element name = "Title" type = "string"/> <element name = "Description" type = "string"/> <element name = "Version" type = "string"/> <element name = "SourceControlInfo" type = "string"/> <element name = "Maintainer" type = "string"/> <element name = "Location" type = "anyURI"/> <element name = "PublishDate" type = "string"/> <element name = "Status" type = "tns:pubStatus.type"/> <simpleType name = "pubStatus.type"> <restriction base = "string"> <enumeration value = "DRAFT"/> <enumeration value = "FINAL"/> <enumeration value = "RETIRED"/> </restriction> </simpleType> <simpleType name = "requirement.type"> <restriction base = "string"> <enumeration value = "required"/> <enumeration value = "strongly recommended"/> <enumeration value = "recommended"/> <enumeration value = "optional"/> </restriction> </simpleType> <simpleType name = "testLevel.type"> <restriction base = "string"> <enumeration value = "full"/> <enumeration value = "most"/> <enumeration value = "partial"/> <enumeration value = "none"/> </restriction> </simpleType> <simpleType name = "functional.type"> <restriction base = "string"> <enumeration value = "security"/> <enumeration value = "reliable messaging"/> <enumeration value = "packaging"/> <enumeration value = "other"/> </restriction> </simpleType> <simpleType name = "layerList"> <list itemType = "string"/> </simpleType> <element name = "Requirements"> <complexType> <sequence> <element ref = "tns:MetaData"/> <element ref = "tns:TestRequirement" maxOccurs = "unbounded"/> </sequence>

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 302 of 447

1

123456789

10111213141516171819202122232425262728293031323334353637383940414243444546474849505152

23

Page 303: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

</complexType> </element> <element name = "AssertionRef"> <complexType> <attribute name = "id" use = "required" type = "IDREF"/> </complexType> </element></schema><?xml version = "1.0" encoding = "UTF-8"?><!--Generated by XML Authority. Conforms to w3c http://www.w3.org/2001/XMLSchema--><schema xmlns = "http://www.w3.org/2001/XMLSchema" targetNamespace = "http://www.oasis-open.org/tc/ebxml-iic/conformance/reqs" xmlns:tns = "http://www.oasis-open.org/tc/ebxml-iic/conformance/reqs" > <group name = "FunctionalRequirementGroup"> <sequence> <element ref = "tns:FunctionalRequirement"/> </sequence> </group> <!-- Copyright (C) The Organization for the Advancement of Structured Information Standards [OASIS] January 2002. All Rights Reserved.This document and translations of it may be copied and furnished to others, and derivative works that comment on or otherwise explain it or assist in its implementation may be prepared, copied, published and distributed, in whole or in part, without restriction of any kind, provided that the above copyright notice and this paragraph are included on all such copies and derivative works. However, this document itself may not be modified in any way, such as by removing the copyright notice or references to OASIS, except as needed for the purpose of developing OASIS specifications, in which case the procedures for copyrights defined in the OASIS Intellectual Property Rights document MUST be followed, or as required to translate it into languages other than English.The limited permissions granted above are perpetual and will not be revoked by OASIS or its successors or assigns.--> <!--Generated by XML Authority. Conforms to w3c http://www.w3.org/2000/10/XMLSchema--> <!-- OASIS/ebXML Test Suite Framework Description: Schema used to define ebXML Test Requirements instance document Author: Michael Kass Organization: NIST Author: Matthew MacKenzie Organization: XML Global

Date: 03/31/2002 Version 1.0 -->

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 303 of 447

1

123456789

1011121314151617181920212223242526272829303132333435363738394041424344454647484950

5152535455

23

Page 304: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

<!-- CHANGES: Version 1.0 (Matt): - added attributes requirementType and name to Level. - added other to functional.type enumeration. --> <element name = "TestRequirement"> <complexType> <sequence> <choice minOccurs = "0" maxOccurs = "unbounded"> <element ref = "tns:FunctionalRequirement"/> <element ref = "tns:TestRequirement"/> </choice> </sequence> <attribute name = "id" use = "required" type = "ID"/> <attribute name = "name" use = "required" type = "string"/> <attribute name = "specRef" use = "required" type = "string"/> <attribute name = "functionalType" use = "required" type = "string"/> <attribute name = "dependencyRef" use = "optional" type = "anyURI"/> </complexType> </element> <element name = "FunctionalRequirement"> <complexType> <sequence> <element ref = "tns:Clause" minOccurs = "0"/> <choice maxOccurs = "unbounded"> <element ref = "tns:Assertion"/> <element ref = "tns:AssertionRef"/> </choice> <choice minOccurs = "0" maxOccurs = "unbounded"> <element ref = "tns:FunctionalRequirement"/> <element ref = "tns:TestRequirement"/> </choice> </sequence> <attribute name = "id" use = "required" type = "ID"/> <attribute name = "name" use = "required" type = "string"/> <attribute name = "specRef" use = "required" type = "string"/> <attribute name = "testCaseRef" use = "optional" type = "anyURI"/> <attribute name = "dependencyRef" use = "optional" type = "anyURI"/> </complexType> </element> <element name = "Clause"> <complexType> <sequence> <choice> <element ref = "tns:Clause"/> <choice> <element ref = "tns:Condition"/> <element ref = "tns:ConditionRef"/> </choice> </choice>

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 304 of 447

1

123456789

10111213141516171819202122232425262728293031323334353637383940414243444546474849505152

23

Page 305: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

<sequence minOccurs = "0" maxOccurs = "unbounded"> <choice> <element ref = "tns:And"/> <element ref = "tns:Or"/> </choice> <choice> <element ref = "tns:Clause"/> <choice> <element ref = "tns:Condition"/> <element ref = "tns:ConditionRef"/> </choice> </choice> </sequence> </sequence> </complexType> </element> <element name = "Condition"> <complexType> <simpleContent> <extension base = "string"> <attribute name = "id" use = "required" type = "ID"/> <attribute name = "requirementType" use = "optional" type = "tns:requirement.type"/> </extension> </simpleContent> </complexType> </element> <element name = "ConditionRef"> <complexType> <attribute name = "id" use = "required" type = "IDREF"/> </complexType> </element> <element name = "And" type = "string"/> <element name = "Or" type = "string"/> <element name = "Assertion"> <complexType> <simpleContent> <extension base = "string"> <attribute name = "requirementType" use = "required" type = "tns:requirement.type"/> <attribute name = "id" use = "required" type = "ID"/> </extension> </simpleContent> </complexType> </element> <element name = "MetaData"> <complexType> <sequence> <element ref = "tns:Title"/> <element ref = "tns:Description"/> <element ref = "tns:Version"/> <element ref = "tns:Maintainer"/> <element ref = "tns:Location"/>

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 305 of 447

1

123456789

1011121314151617181920212223242526272829303132333435363738394041424344454647484950515253

23

Page 306: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

<element ref = "tns:PublishDate"/> <element ref = "tns:Status"/> </sequence> </complexType> </element> <element name = "Title" type = "string"/> <element name = "Description" type = "string"/> <element name = "Version" type = "string"/> <element name = "SourceControlInfo" type = "string"/> <element name = "Maintainer" type = "string"/> <element name = "Location" type = "anyURI"/> <element name = "PublishDate" type = "string"/> <element name = "Status" type = "tns:pubStatus.type"/> <simpleType name = "pubStatus.type"> <restriction base = "string"> <enumeration value = "DRAFT"/> <enumeration value = "FINAL"/> <enumeration value = "RETIRED"/> </restriction> </simpleType> <simpleType name = "requirement.type"> <restriction base = "string"> <enumeration value = "required"/> <enumeration value = "strongly recommended"/> <enumeration value = "recommended"/> <enumeration value = "optional"/> </restriction> </simpleType> <simpleType name = "testLevel.type"> <restriction base = "string"> <enumeration value = "full"/> <enumeration value = "most"/> <enumeration value = "partial"/> <enumeration value = "none"/> </restriction> </simpleType> <simpleType name = "functional.type"> <restriction base = "string"> <enumeration value = "security"/> <enumeration value = "reliable messaging"/> <enumeration value = "packaging"/> <enumeration value = "other"/> </restriction> </simpleType> <simpleType name = "layerList"> <list itemType = "string"/> </simpleType> <element name = "Requirements"> <complexType> <sequence> <element ref = "tns:MetaData"/> <element ref = "tns:TestRequirement" maxOccurs = "unbounded"/>

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 306 of 447

1

123456789

10111213141516171819202122232425262728293031323334353637383940414243444546474849505152

23

Page 307: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

</sequence> </complexType> </element> <element name = "AssertionRef"> <complexType> <attribute name = "id" use = "required" type = "IDREF"/> </complexType> </element></schema>

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 307 of 447

1

123456789

101112131415161718192021222324

25

26

27

28

29

30

31

32

33

34

35

36

37

38

23

Page 308: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

Appendix C (Normative) (Normative) Test Suite Schema

This schema defines the syntax for scripting Test Cases to be used by the IIC Test Framework.

<?xml version = "1.0" encoding = "UTF-8"?><!--Generated by XML Authority. Conforms to w3c http://www.w3.org/2001/XMLSchema--><schema xmlns = "http://www.w3.org/2001/XMLSchema" targetNamespace = "http://www.oasis-open.org/tc/ebxml-iic/tests" xmlns:ebTest = "http://www.oasis-open.org/tc/ebxml-iic/tests" version = "1.0" elementFormDefault = "unqualified" attributeFormDefault = "unqualified"> <!-- edited with XMLSPY v2004 rel. 3 U (http://www.xmlspy.com) by Michael Kass (NIST) --> <!-- edited with XMLSPY v2004 rel. 4 U (http://www.xmlspy.com) by Mike Kass (Personal) --> <!--<import namespace="http://www.oasis-open.org/tc/ebxml-iic/tests/xmldsig" schemaLocation="xmldsig.xsd"/> --> <!-- <import namespace = "http://www.oasis-open.org/tc/ebxml-iic/tests/xmldsig" schemaLocation = "xmldsig.xsd"/> --> <!-- <import namespace = "http://www.oasis-open.org/tc/ebxml-iic/tests/mime" schemaLocation = "mime.xsd"/> --> <!-- edited with XML Spy v4.3 U (http://www.xmlspy.com) by Michael Kass (NIST) --> <!-- edited with XML Spy v4.3 U (http://www.xmlspy.com) by Michael Kass (NIST) --> <!-- edited with XML Spy v4.3 U (http://www.xmlspy.com) by Michael Kass (NIST) --> <!-- Copyright (C) The Organization for the Advancement of Structured Information Standards [OASIS] January 2002. All Rights Reserved.

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 308 of 447

1

1

2

345

6789

101112131415161718192021222324252627282930313233343536373839404142434445464748

23

Page 309: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

This document and translations of it may be copied and furnished to others, and derivative works that comment on or otherwise explain it or assist in its implementation may be prepared, copied, published and distributed, in whole or in part, without restriction of any kind, provided that the above copyright notice and this paragraph are included on all such copies and derivative works. However, this document itself may not be modified in any way, such as by removing the copyright notice or references to OASIS, except as needed for the purpose of developing OASIS specifications, in which case the procedures for copyrights defined in the OASIS Intellectual Property Rights document MUST be followed, or as required to translate it into languages other than English.The limited permissions granted above are perpetual and will not be revoked by OASIS or its successors or assigns.--> <element name = "TestSuite"> <complexType> <sequence> <element ref = "ebTest:MetaData"/> <element ref = "ebTest:ConfigurationGroup" maxOccurs = "unbounded"/> <element ref = "ebTest:ThreadGroup" minOccurs = "0"/> <element ref = "ebTest:TestServiceConfigurator" minOccurs = "0"/> <element ref = "ebTest:Message" minOccurs = "0" maxOccurs = "unbounded"/> <element ref = "ebTest:TestCase" maxOccurs = "unbounded"/> </sequence> <attribute name = "configurationGroupRef" use = "required" type = "IDREF"/> </complexType> </element> <element name = "MetaData"> <complexType> <sequence> <element ref = "ebTest:Title"/> <element ref = "ebTest:Description"/> <element ref = "ebTest:Version"/> <element ref = "ebTest:Maintainer"/> <element ref = "ebTest:Location"/> <element ref = "ebTest:PublishDate"/> <element ref = "ebTest:Status"/> </sequence> </complexType> </element> <element name = "Description" type = "ebTest:non-empty-string"/> <element name = "Version" type = "ebTest:non-empty-string"/> <element name = "Maintainer" type = "ebTest:non-empty-string"/> <element name = "Location" type = "anyURI"/> <element name = "PublishDate" type = "ebTest:non-empty-string"/> <element name = "Status" type = "ebTest:non-empty-string"/> <element name = "TestCase"> <complexType> <sequence> <element ref = "ebTest:ThreadGroup" minOccurs = "0"/> <choice maxOccurs = "unbounded"> <element ref = "ebTest:SetParameter"/> <element ref = "ebTest:SetXPathParameter"/>

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 309 of 447

1

123456789

1011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556

23

Page 310: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

<element ref = "ebTest:LockParameter"/> <element ref = "ebTest:UnlockParameter"/> <element ref = "ebTest:PutMessage"/> <element ref = "ebTest:Initiator"/> <element ref = "ebTest:GetMessage"/> <element ref = "ebTest:TestAssertion"/> <element ref = "ebTest:ThreadRef"/> <element ref = "ebTest:Split"/> <element ref = "ebTest:Join"/> <element ref = "ebTest:Sleep"/> </choice> </sequence> <attribute name = "id" use = "required" type = "ID"/> <attribute name = "description" use = "required" type = "string"/> <attribute name = "author" use = "optional" type = "string"/> <attribute name = "version" use = "optional" type = "string"/> <attribute name = "requirementReferenceId" use = "optional" type = "anyURI"/> <attribute name = "configurationGroupRef" use = "optional" type = "IDREF"/> </complexType> </element> <element name = "ConfigurationGroup"> <complexType> <sequence> <element ref = "ebTest:Mode"/> <element ref = "ebTest:StepDuration"/> <element ref = "ebTest:Transport"/> <element ref = "ebTest:Envelope"/> <element ref = "ebTest:StoreAttachments"/> <element ref = "ebTest:ValidationType"/> <element ref = "ebTest:MutatorType"/> <element ref = "ebTest:XMLDSIG" minOccurs = "0"/> <element ref = "ebTest:SetParameter" minOccurs = "0" maxOccurs = "unbounded"/> <element ref = "ebTest:Namespaces"/> </sequence> <attribute name = "id" use = "required" type = "ID"/> </complexType> </element> <element name = "CPAId" type = "ebTest:non-empty-string"/> <element name = "Mode" type = "ebTest:mode.type"/> <element name = "SenderParty" type = "anyURI"/> <element name = "ReceiverParty" type = "anyURI"/> <element name = "Service" type = "anyURI"/> <element name = "Action" type = "ebTest:non-empty-string"/> <element name = "StepDuration" type = "integer"/> <element name = "Transport" type = "ebTest:transport.type"/> <element name = "Envelope" type = "ebTest:non-empty-string"/> <simpleType name = "mode.type"> <restriction base = "NMTOKEN"> <enumeration value = "local-service"/> <enumeration value = "remote-service"/>

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 310 of 447

1

123456789

1011121314151617181920212223242526272829303132333435363738394041424344454647484950515253

23

Page 311: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

<enumeration value = "connection"/> </restriction> </simpleType> <simpleType name = "mimeHeader.type"> <restriction base = "NMTOKEN"> <enumeration value = "MIMEMessageContent-Type"/> <enumeration value = "MIMEMessageStart"/> <enumeration value = "Content-Type"/> <enumeration value = "start"/> <enumeration value = "charset"/> <enumeration value = "type"/> <enumeration value = "wildcard"/> </restriction> </simpleType> <simpleType name = "content.type"> <restriction base = "NMTOKEN"> <enumeration value = "XML"/> <enumeration value = "dateTime"/> <enumeration value = "URI"/> <enumeration value = "signature"/> <enumeration value = "XPointer"/> </restriction> </simpleType> <simpleType name = "method.type"> <restriction base = "NMTOKEN"> <enumeration value = "xpath"/> <enumeration value = "md5"/> </restriction> </simpleType> <simpleType name = "messageContext.type"> <restriction base = "NMTOKEN"> <enumeration value = "true"/> <enumeration value = "false"/> </restriction> </simpleType> <simpleType name = "requirement.type"> <restriction base = "NMTOKEN"> <enumeration value = "required"/> <enumeration value = "stronglyrecommended"/> <enumeration value = "recommended"/> <enumeration value = "optional"/> </restriction> </simpleType> <simpleType name = "non-empty-string"> <restriction base = "string"> <minLength value = "1"/> </restriction> </simpleType> <simpleType name = "configAction.type"> <restriction base = "NMTOKEN"> <enumeration value = "query"/> <enumeration value = "replace"/>

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 311 of 447

1

123456789

10111213141516171819202122232425262728293031323334353637383940414243444546474849505152

23

Page 312: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

</restriction> </simpleType> <simpleType name = "action.type"> <restriction base = "NMTOKEN"> <enumeration value = "reset"/> <enumeration value = "modify"/> </restriction> </simpleType> <simpleType name = "configItem.type"> <restriction base = "NMTOKEN"/> </simpleType> <simpleType name = "parameter.type"> <restriction base = "NMTOKEN"> <enumeration value = "string"/> <enumeration value = "parameter"/> </restriction> </simpleType> <simpleType name = "connectivePredicate.type"> <restriction base = "NMTOKEN"> <enumeration value = "and"/> <enumeration value = "or"/> </restriction> </simpleType> <simpleType name = "thread.type"> <restriction base = "NMTOKEN"> <enumeration value = "synchronous"/> <enumeration value = "asynchronous"/> </restriction> </simpleType> <simpleType name = "matchResult.type"> <restriction base = "NMTOKEN"> <enumeration value = "pass"/> <enumeration value = "fail"/> </restriction> </simpleType> <simpleType name = "if.type"> <restriction base = "NMTOKEN"> <enumeration value = "andif"/> <enumeration value = "orif"/> </restriction> </simpleType> <simpleType name = "split.type"> <restriction base = "NMTOKEN"> <enumeration value = "andsplit"/> <enumeration value = "orsplit"/> </restriction> </simpleType> <simpleType name = "join.type"> <restriction base = "NMTOKEN"> <enumeration value = "andjoin"/> <enumeration value = "orjoin"/> </restriction>

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 312 of 447

1

123456789

10111213141516171819202122232425262728293031323334353637383940414243444546474849505152

23

Page 313: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

</simpleType> <simpleType name = "serviceMode.type"> <restriction base = "NMTOKEN"> <enumeration value = "loop"/> <enumeration value = "local-reporting"/> <enumeration value = "remote-reporting"/> </restriction> </simpleType> <simpleType name = "time.type"> <restriction base = "NMTOKEN"> <enumeration value = "timeToAcknowlegeReceipt"/> <enumeration value = "timeToAcknowledgeAcceptance"/> <enumeration value = "timeToPerform"/> <enumeration value = "other"/> </restriction> </simpleType> <simpleType name = "operator.type"> <restriction base = "NMTOKEN"> <enumeration value = "equal"/> <enumeration value = "lessThan"/> <enumeration value = "lessThanOrEqual"/> <enumeration value = "greaterThan"/> <enumeration value = "greaterThanOrEqual"/> </restriction> </simpleType> <simpleType name = "assertionExit.type"> <restriction base = "NMTOKEN"> <enumeration value = "pass"/> <enumeration value = "fail"/> <enumeration value = "undetermined"/> </restriction> </simpleType> <simpleType name = "preconditionExit.type"> <restriction base = "NMTOKEN"> <enumeration value = "undetermined"/> </restriction> </simpleType> <simpleType name = "scope.type"> <restriction base = "NMTOKEN"> <enumeration value = "self"/> <enumeration value = "selfAndDescendents"/> <enumeration value = "parent"/> <enumeration value = "global"/> </restriction> </simpleType> <simpleType name = "transport.type"> <restriction base = "NMTOKEN"> <enumeration value = "FTP"/> <enumeration value = "SMTP"/> <enumeration value = "HTTP"/> <enumeration value = "SOAP"/> </restriction>

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 313 of 447

1

123456789

10111213141516171819202122232425262728293031323334353637383940414243444546474849505152

23

Page 314: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

</simpleType> <simpleType name = "envelope.type"> <restriction base = "NMTOKEN"> <enumeration value = "SOAP"/> <enumeration value = "ebXML"/> <enumeration value = "RNIF"/> </restriction> </simpleType> <simpleType name = "exception.type"> <restriction base = "NMTOKEN"> <enumeration value = "undetermined"/> </restriction> </simpleType> <simpleType name = "exitResult.type"> <restriction base = "NMTOKEN"> <enumeration value = "pass"/> <enumeration value = "fail"/> </restriction> </simpleType> <simpleType name = "validation.type"> <restriction base = "NMTOKEN"> <enumeration value = "XMLSchema"/> <enumeration value = "Schematron"/> </restriction> </simpleType> <simpleType name = "mutator.type"> <restriction base = "NMTOKEN"> <enumeration value = "XSLT"/> <enumeration value = "XUpdate"/> </restriction> </simpleType> <simpleType name = "keystore.type"> <restriction base = "NMTOKEN"> <enumeration value = "jks"/> <enumeration value = "pkcs12"/> </restriction> </simpleType> <simpleType name = "lock.type"> <restriction base = "NMTOKEN"> <enumeration value = "readOnly"/> <enumeration value = "readWrite"/> </restriction> </simpleType> <element name = "MessageExpression"> <complexType> <sequence> <element ref = "ebTest:ErrorMessage"/> </sequence> </complexType> </element> <element name = "ErrorMessage" type = "ebTest:non-empty-string"/> <element name = "PutMessage">

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 314 of 447

1

123456789

10111213141516171819202122232425262728293031323334353637383940414243444546474849505152

23

Page 315: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

<complexType> <sequence> <element ref = "ebTest:Packaging" minOccurs = "0"/> <element ref = "ebTest:SetMessage"/> <element ref = "ebTest:SetPayload" minOccurs = "0" maxOccurs = "unbounded"/> </sequence> <attribute name = "description" use = "required" type = "string"/> <attribute name = "repeatWithSameContext" use = "optional" type = "integer"/> <attribute name = "repeatWithNewContext" use = "optional" type = "integer"/> </complexType> </element> <element name = "GetPayload"> <complexType> <sequence> <choice> <element ref = "ebTest:Content-ID"/> <element ref = "ebTest:Content-Location"/> <element ref = "ebTest:Index"/> </choice> <element ref = "ebTest:SetXPathParameter" minOccurs = "0" maxOccurs = "unbounded"/> </sequence> <attribute name = "description" use = "required" type = "string"/> </complexType> </element> <element name = "GetMessage"> <complexType> <sequence maxOccurs = "unbounded"> <element ref = "ebTest:Filter"/> </sequence> <attribute name = "description" use = "required" type = "string"/> <attribute name = "mask" use = "optional" type = "boolean"/> </complexType> </element> <element name = "Filter"> <complexType> <simpleContent> <extension base = "ebTest:non-empty-string"> <attribute name = "stepDuration" use = "optional" type = "integer"/> </extension> </simpleContent> </complexType> </element> <element name = "SetMessage"> <complexType> <sequence> <element ref = "ebTest:Packaging" minOccurs = "0"/> <element ref = "ebTest:Content"/> <element ref = "ebTest:Mutator" minOccurs = "0"/>

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 315 of 447

1

123456789

1011121314151617181920212223242526272829303132333435363738394041424344454647484950515253

23

Page 316: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

<element ref = "ebTest:DSignEnvelope" minOccurs = "0" maxOccurs = "unbounded"/> </sequence> <attribute name = "description" use = "optional" type = "string"/> </complexType> </element> <element name = "SetPayload"> <complexType> <sequence> <element ref = "ebTest:Packaging"/> <element ref = "ebTest:Content"/> <element ref = "ebTest:Mutator" minOccurs = "0"/> <element ref = "ebTest:DSignPayload" minOccurs = "0"/> </sequence> <attribute name = "description" use = "optional" type = "string"/> </complexType> </element> <element name = "TestAssertion"> <complexType> <sequence> <choice> <element ref = "ebTest:VerifyContent"/> <element ref = "ebTest:ValidateContent"/> <element ref = "ebTest:VerifyTimeDifference"/> <element ref = "ebTest:VerifyParameter"/> </choice> <element ref = "ebTest:WhenTrue" minOccurs = "0"/> <element ref = "ebTest:WhenFalse" minOccurs = "0"/> </sequence> <attribute name = "description" use = "required" type = "string"/> </complexType> </element> <element name = "MimeHeader" type = "ebTest:mimeHeader.type"/> <element name = "MimeHeaderValue" type = "ebTest:non-empty-string"/> <element name = "Content-Location" type = "ebTest:non-empty-string"/> <element name = "Index" type = "integer"/> <element name = "FileURI" type = "anyURI"/> <element name = "PayloadRef" type = "ebTest:non-empty-string"/> <element name = "Content-ID" type = "ebTest:non-empty-string"/> <element name = "MessageDeclaration"> <complexType> <sequence> <any namespace = "##other" processContents = "lax" minOccurs = "0" maxOccurs = "unbounded"/> </sequence> </complexType> </element> <element name = "ValidateContent"> <complexType> <simpleContent> <extension base = "ebTest:non-empty-string"> <attribute name = "contentType" use = "required" type = "ebTest:content.type"/>

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 316 of 447

1

123456789

1011121314151617181920212223242526272829303132333435363738394041424344454647484950515253

23

Page 317: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

<attribute name = "schemaLocation" use = "optional" type = "anyURI"/> </extension> </simpleContent> </complexType> </element> <element name = "VerifyContent" type = "ebTest:non-empty-string"/> <element name = "Message"> <complexType> <sequence> <any namespace = "##other" processContents = "lax" minOccurs = "0" maxOccurs = "unbounded"/> </sequence> <attribute name = "id" use = "required" type = "ID"/> </complexType> </element> <element name = "SetParameter"> <complexType> <sequence> <element ref = "ebTest:Name"/> <choice> <element ref = "ebTest:Value"/> <element ref = "ebTest:ParameterRef"/> </choice> </sequence> <attribute name = "scope" use = "optional" type = "ebTest:scope.type"/> <attribute name = "lock" use = "optional" type = "ebTest:lock.type"/> </complexType> </element> <element name = "VerifyParameter"> <complexType> <sequence> <element ref = "ebTest:Name"/> <choice> <element ref = "ebTest:Value"/> <element ref = "ebTest:ParameterRef"/> </choice> </sequence> </complexType> </element> <element name = "Mutator"> <complexType> <sequence> <element ref = "ebTest:FileURI"/> </sequence> </complexType> </element> <element name = "XSL" type = "ebTest:non-empty-string"/> <element name = "XUpdate"> <complexType/> </element> <element name = "BooleanClause">

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 317 of 447

1

123456789

1011121314151617181920212223242526272829303132333435363738394041424344454647484950515253

23

Page 318: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

<complexType> <attribute name = "booleanPredicate" use = "required" type = "boolean"/> </complexType> </element> <element name = "Declaration"> <complexType> <sequence> <any namespace = "##other" processContents = "lax" minOccurs = "0" maxOccurs = "unbounded"/> </sequence> </complexType> </element> <element name = "Thread"> <complexType> <choice maxOccurs = "unbounded"> <element ref = "ebTest:SetParameter"/> <element ref = "ebTest:SetXPathParameter"/> <element ref = "ebTest:LockParameter"/> <element ref = "ebTest:UnlockParameter"/> <element ref = "ebTest:PutMessage"/> <element ref = "ebTest:Initiator"/> <element ref = "ebTest:GetMessage"/> <element ref = "ebTest:TestAssertion"/> <element ref = "ebTest:ThreadRef"/> <element ref = "ebTest:Split"/> <element ref = "ebTest:Join"/> <element ref = "ebTest:Sleep"/> </choice> <attribute name = "name" use = "required" type = "ID"/> <attribute name = "description" use = "optional" type = "string"/> </complexType> </element> <element name = "ThreadRef"> <complexType> <attribute name = "nameRef" use = "required" type = "IDREF"/> <attribute name = "instanceId" use = "optional" type = "ID"/> <attribute name = "configurationGroupRef" use = "optional" type = "IDREF"/> <attribute name = "loop" use = "optional" type = "string"/> </complexType> </element> <element name = "Pass"> <complexType/> </element> <element name = "Fail"> <complexType/> </element> <element name = "ThreadGroup"> <complexType> <sequence> <element ref = "ebTest:Thread" maxOccurs = "unbounded"/> </sequence>

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 318 of 447

1

123456789

1011121314151617181920212223242526272829303132333435363738394041424344454647484950515253

23

Page 319: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

</complexType> </element> <element name = "Sleep" type = "integer"/> <element name = "Split"> <complexType> <sequence maxOccurs = "unbounded"> <element ref = "ebTest:ThreadRef"/> </sequence> </complexType> </element> <element name = "Join"> <complexType> <sequence maxOccurs = "unbounded"> <element ref = "ebTest:ThreadRef"/> </sequence> <attribute name = "joinType" use = "optional" type = "ebTest:join.type"/> </complexType> </element> <element name = "Initiator"> <complexType> <sequence> <element ref = "ebTest:InitiateMessage"/> <element ref = "ebTest:InitiatePayload" minOccurs = "0"/> </sequence> <attribute name = "description" use = "required" type = "string"/> </complexType> </element> <element name = "TestServiceConfigurator"> <complexType> <sequence> <element ref = "ebTest:ServiceMode"/> <element ref = "ebTest:ResponseURL"/> <element ref = "ebTest:NotificationURL"/> <element ref = "ebTest:PayloadDigests" minOccurs = "0"/> </sequence> </complexType> </element> <element name = "MessageRef" type = "IDREF"/> <element name = "ErrorURL" type = "anyURI"/> <element name = "NotificationURL" type = "anyURI"/> <element name = "SetXPathParameter"> <complexType> <sequence> <element ref = "ebTest:Name"/> <element ref = "ebTest:Expression"/> </sequence> <attribute name = "scope" use = "optional" type = "ebTest:scope.type"/> <attribute name = "lock" use = "optional" type = "ebTest:lock.type"/> </complexType> </element> <element name = "ResponseURL" type = "anyURI"/>

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 319 of 447

1

123456789

1011121314151617181920212223242526272829303132333435363738394041424344454647484950515253

23

Page 320: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

<element name = "StoreAttachments" type = "boolean"/> <element name = "OperationMode" type = "string"/> <element name = "PayloadDigests"> <complexType> <sequence> <element ref = "ebTest:Payload" maxOccurs = "unbounded"/> </sequence> </complexType> </element> <element name = "ServiceMode" type = "ebTest:serviceMode.type"/> <element name = "Transaction"> <complexType> <sequence maxOccurs = "unbounded"> <choice maxOccurs = "unbounded"> <element ref = "ebTest:PutMessage"/> <element ref = "ebTest:Initiator"/> </choice> <element ref = "ebTest:GetMessage" minOccurs = "0" maxOccurs = "unbounded"/> </sequence> <attribute name = "timeToPerform" use = "optional" type = "duration"/> </complexType> </element> <element name = "VerifyTimeDifference"> <complexType> <sequence> <element ref = "ebTest:ParamName"/> <element ref = "ebTest:ParamName"/> <element ref = "ebTest:Operator"/> <element ref = "ebTest:Difference"/> </sequence> </complexType> </element> <element name = "TimeToAcknowledgeReceipt"> <complexType> <sequence> <element ref = "ebTest:XPathExpression"/> </sequence> </complexType> </element> <element name = "TimeToAcknowledgeAcceptance"> <complexType> <sequence> <element ref = "ebTest:XPathExpression"/> </sequence> </complexType> </element> <element name = "Difference" type = "duration"/> <element name = "Operator" type = "ebTest:operator.type"/> <element name = "XPathExpression" type = "ebTest:non-empty-string"/> <element name = "Continue"> <complexType/> </element>

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 320 of 447

1

123456789

1011121314151617181920212223242526272829303132333435363738394041424344454647484950515253

23

Page 321: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

<element name = "ParamName" type = "ebTest:non-empty-string"/> <element name = "VerifyTimeToPerform"> <complexType> <sequence> <element ref = "ebTest:ThreadName" maxOccurs = "unbounded"/> </sequence> <attribute name = "maxTime" use = "required" type = "duration"/> </complexType> </element> <element name = "ThreadName" type = "IDREF"/> <element name = "Header"> <complexType> <sequence> <element ref = "ebTest:Name"/> <element ref = "ebTest:Value" minOccurs = "0"/> <element ref = "ebTest:Attribute" minOccurs = "0" maxOccurs = "unbounded"/> </sequence> </complexType> </element> <element name = "Name" type = "ebTest:non-empty-string"/> <element name = "Value" type = "ebTest:non-empty-string"/> <element name = "Packaging"> <complexType> <sequence> <element ref = "ebTest:Header" minOccurs = "0" maxOccurs = "unbounded"/> </sequence> </complexType> </element> <element name = "PackagingAPI" type = "string"/> <element name = "Content"> <complexType> <choice> <element ref = "ebTest:Declaration"/> <element ref = "ebTest:FileURI"/> <element ref = "ebTest:MessageRef"/> </choice> </complexType> </element> <element name = "Attribute"> <complexType> <sequence> <element ref = "ebTest:Name"/> <element ref = "ebTest:Value"/> </sequence> </complexType> </element> <element name = "ExitResult" type = "string"/> <element name = "ValidationType" type = "ebTest:validation.type"/> <element name = "MutatorType" type = "ebTest:mutator.type"/> <element name = "Payload"> <complexType>

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 321 of 447

1

123456789

1011121314151617181920212223242526272829303132333435363738394041424344454647484950515253

23

Page 322: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

<sequence> <element ref = "ebTest:Digest"/> <element ref = "ebTest:Id"/> </sequence> </complexType> </element> <element name = "Digest" type = "ebTest:non-empty-string"/> <element name = "Id" type = "ebTest:non-empty-string"/> <element name = "ParameterRef" type = "ebTest:non-empty-string"/> <element name = "Expression" type = "ebTest:non-empty-string"/> <element name = "WhenTrue"> <complexType> <choice maxOccurs = "unbounded"> <element ref = "ebTest:SetParameter"/> <element ref = "ebTest:SetXPathParameter"/> <element ref = "ebTest:PutMessage"/> <element ref = "ebTest:Initiator"/> <element ref = "ebTest:GetMessage"/> <element ref = "ebTest:TestAssertion"/> <element ref = "ebTest:Continue"/> <element ref = "ebTest:ThreadRef"/> <element ref = "ebTest:Split"/> <element ref = "ebTest:Join"/> <element ref = "ebTest:Sleep"/> <element ref = "ebTest:Exit"/> <element ref = "ebTest:Return"/> </choice> </complexType> </element> <element name = "WhenFalse"> <complexType> <choice maxOccurs = "unbounded"> <element ref = "ebTest:SetParameter"/> <element ref = "ebTest:SetXPathParameter"/> <element ref = "ebTest:PutMessage"/> <element ref = "ebTest:Initiator"/> <element ref = "ebTest:GetMessage"/> <element ref = "ebTest:TestAssertion"/> <element ref = "ebTest:Continue"/> <element ref = "ebTest:ThreadRef"/> <element ref = "ebTest:Split"/> <element ref = "ebTest:Join"/> <element ref = "ebTest:Sleep"/> <element ref = "ebTest:Exit"/> <element ref = "ebTest:Return"/> </choice> </complexType> </element> <element name = "Exit"> <complexType> <simpleContent> <extension base = "ebTest:assertionExit.type">

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 322 of 447

1

123456789

10111213141516171819202122232425262728293031323334353637383940414243444546474849505152

23

Page 323: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

<attribute name = "description" use = "required" type = "string"/> </extension> </simpleContent> </complexType> </element> <element name = "XMLDSIG"> <complexType> <sequence> <element ref = "ebTest:KeystoreFileURI"/> <element ref = "ebTest:KeystoreType"/> <element ref = "ebTest:KeystorePassword"/> <element ref = "ebTest:KeystoreAlias"/> <element ref = "ebTest:KeystoreAliasPassword" minOccurs = "0"/> </sequence> </complexType> </element> <element name = "Title" type = "string"/> <element name = "DSignEnvelope"> <complexType> <sequence> <element ref = "ebTest:CanonocalizationMethodAlgorithm" minOccurs = "0"/> <element ref = "ebTest:DigestMethodAlgorithm" minOccurs = "0"/> <element ref = "ebTest:SignatureMethodAlgorighm" minOccurs = "0"/> <element ref = "ebTest:TransformAlgorithm" minOccurs = "0"/> <element ref = "ebTest:Transform" minOccurs = "0"/> <element ref = "ebTest:ReferenceURI" minOccurs = "0"/> </sequence> </complexType> </element> <element name = "DSignPayload"> <complexType> <sequence> <element ref = "ebTest:CanonocalizationMethodAlgorithm" minOccurs = "0"/> <element ref = "ebTest:DigestMethodAlgorithm" minOccurs = "0"/> <element ref = "ebTest:SignatureMethodAlgorighm" minOccurs = "0"/> <element ref = "ebTest:TransformAlgorithm" minOccurs = "0"/> <element ref = "ebTest:Transform" minOccurs = "0"/> <element ref = "ebTest:ReferenceURI" minOccurs = "0"/> </sequence> </complexType> </element> <element name = "Abort"> <complexType/> </element> <element name = "Return"> <complexType/> </element> <element name = "KeystoreFileURI" type = "anyURI"/> <element name = "KeystoreType" type = "ebTest:keystore.type"/>

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 323 of 447

1

123456789

101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354

23

Page 324: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

<element name = "KeystorePassword" type = "string"/> <element name = "KeystoreAlias" type = "string"/> <element name = "KeystoreAliasPassword" type = "string"/> <element name = "CanonocalizationMethodAlgorithm" type = "anyURI"/> <element name = "DigestMethod" type = "string"/> <element name = "SignatureMethodAlgorighm" type = "anyURI"/> <element name = "ReferenceURI" type = "anyURI"/> <element name = "TransformAlgorithm" type = "anyURI"/> <element name = "Transform" type = "string"/> <element name = "DigestMethodAlgorithm" type = "anyURI"/> <element name = "SetMessageType" type = "string"/> <element name = "InitiateMessage"> <complexType> <sequence> <element ref = "ebTest:Content"/> <element ref = "ebTest:Mutator" minOccurs = "0"/> </sequence> </complexType> </element> <element name = "InitiatePayload"> <complexType> <sequence> <element ref = "ebTest:Packaging" minOccurs = "0"/> <element ref = "ebTest:Content"/> <element ref = "ebTest:Mutator" minOccurs = "0"/> </sequence> </complexType> </element> <element name = "LockParameter"> <complexType> <sequence> <element ref = "ebTest:Name"/> </sequence> <attribute name = "lock" use = "required" type = "ebTest:lock.type"/> </complexType> </element> <element name = "UnlockParameter"> <complexType> <sequence> <element ref = "ebTest:Name"/> </sequence> </complexType> </element> <element name = "Namespaces"> <complexType> <sequence> <element ref = "ebTest:SetNamespace" maxOccurs = "unbounded"/> </sequence> </complexType> </element> <element name = "SetNamespace"> <complexType>

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 324 of 447

1

123456789

10111213141516171819202122232425262728293031323334353637383940414243444546474849505152

23

Page 325: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

<sequence> <element ref = "ebTest:Name"/> <element ref = "ebTest:Value"/> </sequence> </complexType> </element></schema><?xml version = "1.0" encoding = "UTF-8"?><?xml version = "1.0" encoding = "UTF-8"?><!--Generated by XML Authority. Conforms to w3c http://www.w3.org/2001/XMLSchema--><schema xmlns = "http://www.w3.org/2001/XMLSchema" targetNamespace = "http://www.oasis-open.org/tc/ebxml-iic/tests" xmlns:ebTest = "http://www.oasis-open.org/tc/ebxml-iic/tests" version = "1.0" elementFormDefault = "unqualified" attributeFormDefault = "unqualified"> <!-- edited with XMLSPY v2004 rel. 3 U (http://www.xmlspy.com) by Michael Kass (NIST) --> <!-- edited with XMLSPY v2004 rel. 4 U (http://www.xmlspy.com) by Mike Kass (Personal) --> <!--<import namespace="http://www.oasis-open.org/tc/ebxml-iic/tests/xmldsig" schemaLocation="xmldsig.xsd"/> --> <!-- <import namespace = "http://www.oasis-open.org/tc/ebxml-iic/tests/xmldsig" schemaLocation = "xmldsig.xsd"/> --> <!-- <import namespace = "http://www.oasis-open.org/tc/ebxml-iic/tests/mime" schemaLocation = "mime.xsd"/> --> <!-- edited with XML Spy v4.3 U (http://www.xmlspy.com) by Michael Kass (NIST) --> <!-- edited with XML Spy v4.3 U (http://www.xmlspy.com) by Michael Kass (NIST) --> <!-- edited with XML Spy v4.3 U (http://www.xmlspy.com) by Michael Kass (NIST) --> <!-- Copyright (C) The Organization for the Advancement of Structured Information Standards [OASIS] January 2002. All Rights Reserved.

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 325 of 447

1

123456789

10111213141516171819202122232425262728293031323334353637383940414243444546474849

23

Page 326: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

This document and translations of it may be copied and furnished to others, and derivative works that comment on or otherwise explain it or assist in its implementation may be prepared, copied, published and distributed, in whole or in part, without restriction of any kind, provided that the above copyright notice and this paragraph are included on all such copies and derivative works. However, this document itself may not be modified in any way, such as by removing the copyright notice or references to OASIS, except as needed for the purpose of developing OASIS specifications, in which case the procedures for copyrights defined in the OASIS Intellectual Property Rights document MUST be followed, or as required to translate it into languages other than English.The limited permissions granted above are perpetual and will not be revoked by OASIS or its successors or assigns.--> <element name = "TestSuite"> <complexType> <sequence> <element ref = "ebTest:MetaData"/> <element ref = "ebTest:ConfigurationGroup" maxOccurs = "unbounded"/> <element ref = "ebTest:ThreadGroup" minOccurs = "0"/> <element ref = "ebTest:TestServiceConfigurator" minOccurs = "0"/> <element ref = "ebTest:Message" minOccurs = "0" maxOccurs = "unbounded"/> <element ref = "ebTest:TestCase" maxOccurs = "unbounded"/> </sequence> <attribute name = "configurationGroupRef" use = "required" type = "IDREF"/> </complexType> </element> <element name = "MetaData"> <complexType> <sequence> <element ref = "ebTest:Title"/> <element ref = "ebTest:Description"/> <element ref = "ebTest:Version"/> <element ref = "ebTest:Maintainer"/> <element ref = "ebTest:Location"/> <element ref = "ebTest:PublishDate"/> <element ref = "ebTest:Status"/> </sequence> </complexType> </element> <element name = "Description" type = "ebTest:non-empty-string"/> <element name = "Version" type = "ebTest:non-empty-string"/> <element name = "Maintainer" type = "ebTest:non-empty-string"/> <element name = "Location" type = "anyURI"/> <element name = "PublishDate" type = "ebTest:non-empty-string"/> <element name = "Status" type = "ebTest:non-empty-string"/> <element name = "TestCase"> <complexType> <sequence> <element ref = "ebTest:ThreadGroup" minOccurs = "0"/> <choice maxOccurs = "unbounded"> <element ref = "ebTest:SetParameter"/> <element ref = "ebTest:SetXPathParameter"/>

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 326 of 447

1

123456789

1011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556

23

Page 327: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

<element ref = "ebTest:LockParameter"/> <element ref = "ebTest:UnlockParameter"/> <element ref = "ebTest:PutMessage"/> <element ref = "ebTest:Initiator"/> <element ref = "ebTest:GetMessage"/> <element ref = "ebTest:TestAssertion"/> <element ref = "ebTest:ThreadRef"/> <element ref = "ebTest:Split"/> <element ref = "ebTest:Join"/> <element ref = "ebTest:Sleep"/> </choice> </sequence> <attribute name = "id" use = "required" type = "ID"/> <attribute name = "description" use = "required" type = "string"/> <attribute name = "author" use = "optional" type = "string"/> <attribute name = "version" use = "optional" type = "string"/> <attribute name = "requirementReferenceId" use = "optional" type = "anyURI"/> <attribute name = "configurationGroupRef" use = "optional" type = "IDREF"/> </complexType> </element> <element name = "ConfigurationGroup"> <complexType> <sequence> <element ref = "ebTest:Mode"/> <element ref = "ebTest:StepDuration"/> <element ref = "ebTest:Transport"/> <element ref = "ebTest:Envelope"/> <element ref = "ebTest:StoreAttachments"/> <element ref = "ebTest:ValidationType"/> <element ref = "ebTest:MutatorType"/> <element ref = "ebTest:XMLDSIG" minOccurs = "0"/> <element ref = "ebTest:SetParameter" minOccurs = "0" maxOccurs = "unbounded"/> </sequence> <attribute name = "id" use = "required" type = "ID"/> </complexType> </element> <element name = "CPAId" type = "ebTest:non-empty-string"/> <element name = "Mode" type = "ebTest:mode.type"/> <element name = "SenderParty" type = "anyURI"/> <element name = "ReceiverParty" type = "anyURI"/> <element name = "Service" type = "anyURI"/> <element name = "Action" type = "ebTest:non-empty-string"/> <element name = "StepDuration" type = "integer"/> <element name = "Transport" type = "ebTest:transport.type"/> <element name = "Envelope" type = "ebTest:non-empty-string"/> <simpleType name = "mode.type"> <restriction base = "NMTOKEN"> <enumeration value = "local-service"/> <enumeration value = "remote-service"/> <enumeration value = "connection"/>

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 327 of 447

1

123456789

1011121314151617181920212223242526272829303132333435363738394041424344454647484950515253

23

Page 328: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

</restriction> </simpleType> <simpleType name = "mimeHeader.type"> <restriction base = "NMTOKEN"> <enumeration value = "MIMEMessageContent-Type"/> <enumeration value = "MIMEMessageStart"/> <enumeration value = "Content-Type"/> <enumeration value = "start"/> <enumeration value = "charset"/> <enumeration value = "type"/> <enumeration value = "wildcard"/> </restriction> </simpleType> <simpleType name = "content.type"> <restriction base = "NMTOKEN"> <enumeration value = "XML"/> <enumeration value = "dateTime"/> <enumeration value = "URI"/> <enumeration value = "signature"/> <enumeration value = "XPointer"/> </restriction> </simpleType> <simpleType name = "method.type"> <restriction base = "NMTOKEN"> <enumeration value = "xpath"/> <enumeration value = "md5"/> </restriction> </simpleType> <simpleType name = "messageContext.type"> <restriction base = "NMTOKEN"> <enumeration value = "true"/> <enumeration value = "false"/> </restriction> </simpleType> <simpleType name = "requirement.type"> <restriction base = "NMTOKEN"> <enumeration value = "required"/> <enumeration value = "stronglyrecommended"/> <enumeration value = "recommended"/> <enumeration value = "optional"/> </restriction> </simpleType> <simpleType name = "non-empty-string"> <restriction base = "string"> <minLength value = "1"/> </restriction> </simpleType> <simpleType name = "configAction.type"> <restriction base = "NMTOKEN"> <enumeration value = "query"/> <enumeration value = "replace"/> </restriction>

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 328 of 447

1

123456789

10111213141516171819202122232425262728293031323334353637383940414243444546474849505152

23

Page 329: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

</simpleType> <simpleType name = "action.type"> <restriction base = "NMTOKEN"> <enumeration value = "reset"/> <enumeration value = "modify"/> </restriction> </simpleType> <simpleType name = "configItem.type"> <restriction base = "NMTOKEN"/> </simpleType> <simpleType name = "parameter.type"> <restriction base = "NMTOKEN"> <enumeration value = "string"/> <enumeration value = "parameter"/> </restriction> </simpleType> <simpleType name = "connectivePredicate.type"> <restriction base = "NMTOKEN"> <enumeration value = "and"/> <enumeration value = "or"/> </restriction> </simpleType> <simpleType name = "thread.type"> <restriction base = "NMTOKEN"> <enumeration value = "synchronous"/> <enumeration value = "asynchronous"/> </restriction> </simpleType> <simpleType name = "matchResult.type"> <restriction base = "NMTOKEN"> <enumeration value = "pass"/> <enumeration value = "fail"/> </restriction> </simpleType> <simpleType name = "if.type"> <restriction base = "NMTOKEN"> <enumeration value = "andif"/> <enumeration value = "orif"/> </restriction> </simpleType> <simpleType name = "split.type"> <restriction base = "NMTOKEN"> <enumeration value = "andsplit"/> <enumeration value = "orsplit"/> </restriction> </simpleType> <simpleType name = "join.type"> <restriction base = "NMTOKEN"> <enumeration value = "andjoin"/> <enumeration value = "orjoin"/> </restriction> </simpleType>

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 329 of 447

1

123456789

10111213141516171819202122232425262728293031323334353637383940414243444546474849505152

23

Page 330: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

<simpleType name = "serviceMode.type"> <restriction base = "NMTOKEN"> <enumeration value = "loop"/> <enumeration value = "local-reporting"/> <enumeration value = "remote-reporting"/> </restriction> </simpleType> <simpleType name = "time.type"> <restriction base = "NMTOKEN"> <enumeration value = "timeToAcknowlegeReceipt"/> <enumeration value = "timeToAcknowledgeAcceptance"/> <enumeration value = "timeToPerform"/> <enumeration value = "other"/> </restriction> </simpleType> <simpleType name = "operator.type"> <restriction base = "NMTOKEN"> <enumeration value = "equal"/> <enumeration value = "lessThan"/> <enumeration value = "lessThanOrEqual"/> <enumeration value = "greaterThan"/> <enumeration value = "greaterThanOrEqual"/> </restriction> </simpleType> <simpleType name = "assertionExit.type"> <restriction base = "NMTOKEN"> <enumeration value = "pass"/> <enumeration value = "fail"/> <enumeration value = "undetermined"/> </restriction> </simpleType> <simpleType name = "preconditionExit.type"> <restriction base = "NMTOKEN"> <enumeration value = "undetermined"/> </restriction> </simpleType> <simpleType name = "scope.type"> <restriction base = "NMTOKEN"> <enumeration value = "self"/> <enumeration value = "selfAndDescendents"/> <enumeration value = "parent"/> <enumeration value = "global"/> </restriction> </simpleType> <simpleType name = "transport.type"> <restriction base = "NMTOKEN"> <enumeration value = "FTP"/> <enumeration value = "SMTP"/> <enumeration value = "HTTP"/> <enumeration value = "JMS"/> </restriction> </simpleType>

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 330 of 447

1

123456789

10111213141516171819202122232425262728293031323334353637383940414243444546474849505152

23

Page 331: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

<simpleType name = "envelope.type"> <restriction base = "NMTOKEN"> <enumeration value = "SOAP"/> <enumeration value = "ebXML"/> <enumeration value = "RNIF"/> <enumeration value = "JMS"/> </restriction> </simpleType> <simpleType name = "exception.type"> <restriction base = "NMTOKEN"> <enumeration value = "undetermined"/> </restriction> </simpleType> <simpleType name = "exitResult.type"> <restriction base = "NMTOKEN"> <enumeration value = "pass"/> <enumeration value = "fail"/> </restriction> </simpleType> <simpleType name = "validation.type"> <restriction base = "NMTOKEN"> <enumeration value = "XMLSchema"/> <enumeration value = "Schematron"/> </restriction> </simpleType> <simpleType name = "mutator.type"> <restriction base = "NMTOKEN"> <enumeration value = "XSLT"/> <enumeration value = "XUpdate"/> </restriction> </simpleType> <simpleType name = "keystore.type"> <restriction base = "NMTOKEN"> <enumeration value = "jks"/> <enumeration value = "pkcs12"/> </restriction> </simpleType> <simpleType name = "lock.type"> <restriction base = "NMTOKEN"> <enumeration value = "readOnly"/> <enumeration value = "readWrite"/> </restriction> </simpleType> <element name = "MessageExpression"> <complexType> <sequence> <element ref = "ebTest:ErrorMessage"/> </sequence> </complexType> </element> <element name = "ErrorMessage" type = "ebTest:non-empty-string"/> <element name = "PutMessage">

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 331 of 447

1

123456789

10111213141516171819202122232425262728293031323334353637383940414243444546474849505152

23

Page 332: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

<complexType> <sequence> <element ref = "ebTest:Packaging" minOccurs = "0"/> <element ref = "ebTest:SetMessage"/> <element ref = "ebTest:SetPayload" minOccurs = "0" maxOccurs = "unbounded"/> </sequence> <attribute name = "description" use = "required" type = "string"/> <attribute name = "repeatWithSameContext" use = "optional" type = "integer"/> <attribute name = "repeatWithNewContext" use = "optional" type = "integer"/> </complexType> </element> <element name = "GetPayload"> <complexType> <sequence> <choice> <element ref = "ebTest:Content-ID"/> <element ref = "ebTest:Content-Location"/> <element ref = "ebTest:Index"/> </choice> <element ref = "ebTest:SetXPathParameter" minOccurs = "0" maxOccurs = "unbounded"/> </sequence> <attribute name = "description" use = "required" type = "string"/> </complexType> </element> <element name = "GetMessage"> <complexType> <sequence maxOccurs = "unbounded"> <element ref = "ebTest:Filter"/> </sequence> <attribute name = "description" use = "required" type = "string"/> <attribute name = "mask" use = "optional" type = "boolean"/> </complexType> </element> <element name = "Filter"> <complexType> <simpleContent> <extension base = "ebTest:non-empty-string"> <attribute name = "stepDuration" use = "optional" type = "integer"/> </extension> </simpleContent> </complexType> </element> <element name = "SetMessage"> <complexType> <sequence> <element ref = "ebTest:Packaging" minOccurs = "0"/> <element ref = "ebTest:Content"/> <element ref = "ebTest:Mutator" minOccurs = "0"/>

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 332 of 447

1

123456789

1011121314151617181920212223242526272829303132333435363738394041424344454647484950515253

23

Page 333: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

<element ref = "ebTest:DSignEnvelope" minOccurs = "0" maxOccurs = "unbounded"/> </sequence> <attribute name = "description" use = "optional" type = "string"/> </complexType> </element> <element name = "SetPayload"> <complexType> <sequence> <element ref = "ebTest:Packaging"/> <element ref = "ebTest:Content"/> <element ref = "ebTest:Mutator" minOccurs = "0"/> <element ref = "ebTest:DSignPayload" minOccurs = "0"/> </sequence> <attribute name = "description" use = "optional" type = "string"/> </complexType> </element> <element name = "TestAssertion"> <complexType> <sequence> <choice> <element ref = "ebTest:VerifyContent"/> <element ref = "ebTest:ValidateContent"/> <element ref = "ebTest:VerifyTimeDifference"/> <element ref = "ebTest:VerifyParameter"/> </choice> <element ref = "ebTest:WhenTrue" minOccurs = "0"/> <element ref = "ebTest:WhenFalse" minOccurs = "0"/> </sequence> <attribute name = "description" use = "required" type = "string"/> </complexType> </element> <element name = "MimeHeader" type = "ebTest:mimeHeader.type"/> <element name = "MimeHeaderValue" type = "ebTest:non-empty-string"/> <element name = "Content-Location" type = "ebTest:non-empty-string"/> <element name = "Index" type = "integer"/> <element name = "FileURI" type = "anyURI"/> <element name = "PayloadRef" type = "ebTest:non-empty-string"/> <element name = "Content-ID" type = "ebTest:non-empty-string"/> <element name = "MessageDeclaration"> <complexType> <sequence> <any namespace = "##other" processContents = "lax" minOccurs = "0" maxOccurs = "unbounded"/> </sequence> </complexType> </element> <element name = "ValidateContent"> <complexType> <simpleContent> <extension base = "ebTest:non-empty-string"> <attribute name = "contentType" use = "required" type = "ebTest:content.type"/>

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 333 of 447

1

123456789

1011121314151617181920212223242526272829303132333435363738394041424344454647484950515253

23

Page 334: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

<attribute name = "schemaLocation" use = "optional" type = "anyURI"/> </extension> </simpleContent> </complexType> </element> <element name = "VerifyContent" type = "ebTest:non-empty-string"/> <element name = "Message"> <complexType> <sequence> <any namespace = "##other" processContents = "lax" minOccurs = "0" maxOccurs = "unbounded"/> </sequence> <attribute name = "id" use = "required" type = "ID"/> </complexType> </element> <element name = "SetParameter"> <complexType> <sequence> <element ref = "ebTest:Name"/> <choice> <element ref = "ebTest:Value"/> <element ref = "ebTest:ParameterRef"/> </choice> </sequence> <attribute name = "scope" use = "optional" type = "ebTest:scope.type"/> <attribute name = "lock" use = "optional" type = "ebTest:lock.type"/> </complexType> </element> <element name = "VerifyParameter"> <complexType> <sequence> <element ref = "ebTest:Name"/> <choice> <element ref = "ebTest:Value"/> <element ref = "ebTest:ParameterRef"/> </choice> </sequence> </complexType> </element> <element name = "Mutator"> <complexType> <sequence> <element ref = "ebTest:FileURI"/> </sequence> </complexType> </element> <element name = "XSL" type = "ebTest:non-empty-string"/> <element name = "XUpdate" type = "ebTest:non-empty-string"/> <element name = "BooleanClause"> <complexType>

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 334 of 447

1

123456789

10111213141516171819202122232425262728293031323334353637383940414243444546474849505152

23

Page 335: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

<attribute name = "booleanPredicate" use = "required" type = "boolean"/> </complexType> </element> <element name = "Declaration"> <complexType> <sequence> <any namespace = "##other" processContents = "lax" minOccurs = "0" maxOccurs = "unbounded"/> </sequence> </complexType> </element> <element name = "Thread"> <complexType> <choice maxOccurs = "unbounded"> <element ref = "ebTest:SetParameter"/> <element ref = "ebTest:SetXPathParameter"/> <element ref = "ebTest:LockParameter"/> <element ref = "ebTest:UnlockParameter"/> <element ref = "ebTest:PutMessage"/> <element ref = "ebTest:Initiator"/> <element ref = "ebTest:GetMessage"/> <element ref = "ebTest:TestAssertion"/> <element ref = "ebTest:ThreadRef"/> <element ref = "ebTest:Split"/> <element ref = "ebTest:Join"/> <element ref = "ebTest:Sleep"/> </choice> <attribute name = "name" use = "required" type = "ID"/> <attribute name = "description" use = "optional" type = "string"/> </complexType> </element> <element name = "ThreadRef"> <complexType> <attribute name = "nameRef" use = "required" type = "IDREF"/> <attribute name = "instanceId" use = "optional" type = "ID"/> <attribute name = "configurationGroupRef" use = "optional" type = "IDREF"/> <attribute name = "loop" use = "optional" type = "string"/> </complexType> </element> <element name = "Pass"> <complexType/> </element> <element name = "Fail"> <complexType/> </element> <element name = "ThreadGroup"> <complexType> <sequence> <element ref = "ebTest:Thread" maxOccurs = "unbounded"/> </sequence> </complexType>

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 335 of 447

1

123456789

1011121314151617181920212223242526272829303132333435363738394041424344454647484950515253

23

Page 336: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

</element> <element name = "Sleep" type = "integer"/> <element name = "Split"> <complexType> <sequence maxOccurs = "unbounded"> <element ref = "ebTest:ThreadRef"/> </sequence> </complexType> </element> <element name = "Join"> <complexType> <sequence maxOccurs = "unbounded"> <element ref = "ebTest:ThreadRef"/> </sequence> <attribute name = "joinType" use = "optional" type = "ebTest:join.type"/> </complexType> </element> <element name = "Initiator"> <complexType> <sequence> <element ref = "ebTest:InitiateMessage"/> <element ref = "ebTest:InitiatePayload" minOccurs = "0"/> </sequence> <attribute name = "description" use = "required" type = "string"/> </complexType> </element> <element name = "TestServiceConfigurator"> <complexType> <sequence> <element ref = "ebTest:ServiceMode"/> <element ref = "ebTest:ResponseURL"/> <element ref = "ebTest:NotificationURL"/> <element ref = "ebTest:PayloadDigests" minOccurs = "0"/> </sequence> </complexType> </element> <element name = "MessageRef" type = "IDREF"/> <element name = "ErrorURL" type = "anyURI"/> <element name = "NotificationURL" type = "anyURI"/> <element name = "SetXPathParameter"> <complexType> <sequence> <element ref = "ebTest:Name"/> <element ref = "ebTest:Expression"/> </sequence> <attribute name = "scope" use = "optional" type = "ebTest:scope.type"/> <attribute name = "lock" use = "optional" type = "ebTest:lock.type"/> </complexType> </element> <element name = "ResponseURL" type = "anyURI"/> <element name = "StoreAttachments" type = "boolean"/>

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 336 of 447

1

123456789

1011121314151617181920212223242526272829303132333435363738394041424344454647484950515253

23

Page 337: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

<element name = "OperationMode" type = "string"/> <element name = "PayloadDigests"> <complexType> <sequence> <element ref = "ebTest:Payload" maxOccurs = "unbounded"/> </sequence> </complexType> </element> <element name = "ServiceMode" type = "ebTest:serviceMode.type"/> <element name = "Transaction"> <complexType> <sequence maxOccurs = "unbounded"> <choice maxOccurs = "unbounded"> <element ref = "ebTest:PutMessage"/> <element ref = "ebTest:Initiator"/> </choice> <element ref = "ebTest:GetMessage" minOccurs = "0" maxOccurs = "unbounded"/> </sequence> <attribute name = "timeToPerform" use = "optional" type = "duration"/> </complexType> </element> <element name = "VerifyTimeDifference"> <complexType> <sequence> <element ref = "ebTest:ParamName"/> <element ref = "ebTest:ParamName"/> <element ref = "ebTest:Operator"/> <element ref = "ebTest:Difference"/> </sequence> </complexType> </element> <element name = "TimeToAcknowledgeReceipt"> <complexType> <sequence> <element ref = "ebTest:XPathExpression"/> </sequence> </complexType> </element> <element name = "TimeToAcknowledgeAcceptance"> <complexType> <sequence> <element ref = "ebTest:XPathExpression"/> </sequence> </complexType> </element> <element name = "Difference" type = "duration"/> <element name = "Operator" type = "ebTest:operator.type"/> <element name = "XPathExpression" type = "ebTest:non-empty-string"/> <element name = "Continue"> <complexType/> </element> <element name = "ParamName" type = "ebTest:non-empty-string"/>

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 337 of 447

1

123456789

1011121314151617181920212223242526272829303132333435363738394041424344454647484950515253

23

Page 338: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

<element name = "VerifyTimeToPerform"> <complexType> <sequence> <element ref = "ebTest:ThreadName" maxOccurs = "unbounded"/> </sequence> <attribute name = "maxTime" use = "required" type = "duration"/> </complexType> </element> <element name = "ThreadName" type = "IDREF"/> <element name = "Header"> <complexType> <sequence> <element ref = "ebTest:Name"/> <element ref = "ebTest:Value" minOccurs = "0"/> <element ref = "ebTest:Attribute" minOccurs = "0" maxOccurs = "unbounded"/> </sequence> </complexType> </element> <element name = "Name" type = "ebTest:non-empty-string"/> <element name = "Value" type = "ebTest:non-empty-string"/> <element name = "Packaging"> <complexType> <sequence> <element ref = "ebTest:Header" minOccurs = "0" maxOccurs = "unbounded"/> </sequence> </complexType> </element> <element name = "PackagingAPI" type = "string"/> <element name = "Content"> <complexType> <choice> <element ref = "ebTest:Declaration"/> <element ref = "ebTest:FileURI"/> <element ref = "ebTest:MessageRef"/> </choice> </complexType> </element> <element name = "Attribute"> <complexType> <sequence> <element ref = "ebTest:Name"/> <element ref = "ebTest:Value"/> </sequence> </complexType> </element> <element name = "ExitResult" type = "string"/> <element name = "ValidationType" type = "ebTest:validation.type"/> <element name = "MutatorType" type = "ebTest:mutator.type"/> <element name = "Payload"> <complexType> <sequence>

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 338 of 447

1

123456789

1011121314151617181920212223242526272829303132333435363738394041424344454647484950515253

23

Page 339: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

<element ref = "ebTest:Digest"/> <element ref = "ebTest:Id"/> </sequence> </complexType> </element> <element name = "Digest" type = "ebTest:non-empty-string"/> <element name = "Id" type = "ebTest:non-empty-string"/> <element name = "ParameterRef" type = "ebTest:non-empty-string"/> <element name = "Expression" type = "ebTest:non-empty-string"/> <element name = "WhenTrue"> <complexType> <choice maxOccurs = "unbounded"> <element ref = "ebTest:SetParameter"/> <element ref = "ebTest:SetXPathParameter"/> <element ref = "ebTest:PutMessage"/> <element ref = "ebTest:Initiator"/> <element ref = "ebTest:GetMessage"/> <element ref = "ebTest:TestAssertion"/> <element ref = "ebTest:Continue"/> <element ref = "ebTest:ThreadRef"/> <element ref = "ebTest:Split"/> <element ref = "ebTest:Join"/> <element ref = "ebTest:Sleep"/> <element ref = "ebTest:Exit"/> <element ref = "ebTest:Return"/> </choice> </complexType> </element> <element name = "WhenFalse"> <complexType> <choice maxOccurs = "unbounded"> <element ref = "ebTest:SetParameter"/> <element ref = "ebTest:SetXPathParameter"/> <element ref = "ebTest:PutMessage"/> <element ref = "ebTest:Initiator"/> <element ref = "ebTest:GetMessage"/> <element ref = "ebTest:TestAssertion"/> <element ref = "ebTest:Continue"/> <element ref = "ebTest:ThreadRef"/> <element ref = "ebTest:Split"/> <element ref = "ebTest:Join"/> <element ref = "ebTest:Sleep"/> <element ref = "ebTest:Exit"/> <element ref = "ebTest:Return"/> </choice> </complexType> </element> <element name = "Exit"> <complexType> <simpleContent> <extension base = "ebTest:assertionExit.type"> <attribute name = "description" use = "required" type = "string"/>

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 339 of 447

1

123456789

1011121314151617181920212223242526272829303132333435363738394041424344454647484950515253

23

Page 340: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

</extension> </simpleContent> </complexType> </element> <element name = "XMLDSIG"> <complexType> <sequence> <element ref = "ebTest:KeystoreFileURI"/> <element ref = "ebTest:KeystoreType"/> <element ref = "ebTest:KeystorePassword"/> <element ref = "ebTest:KeystoreAlias"/> <element ref = "ebTest:KeystoreAliasPassword" minOccurs = "0"/> </sequence> </complexType> </element> <element name = "Title" type = "string"/> <element name = "DSignEnvelope"> <complexType> <sequence> <element ref = "ebTest:CanonocalizationMethodAlgorithm" minOccurs = "0"/> <element ref = "ebTest:DigestMethodAlgorithm" minOccurs = "0"/> <element ref = "ebTest:SignatureMethodAlgorighm" minOccurs = "0"/> <element ref = "ebTest:TransformAlgorithm" minOccurs = "0"/> <element ref = "ebTest:Transform" minOccurs = "0"/> <element ref = "ebTest:ReferenceURI" minOccurs = "0"/> </sequence> </complexType> </element> <element name = "DSignPayload"> <complexType> <sequence> <element ref = "ebTest:CanonocalizationMethodAlgorithm" minOccurs = "0"/> <element ref = "ebTest:DigestMethodAlgorithm" minOccurs = "0"/> <element ref = "ebTest:SignatureMethodAlgorighm" minOccurs = "0"/> <element ref = "ebTest:TransformAlgorithm" minOccurs = "0"/> <element ref = "ebTest:Transform" minOccurs = "0"/> <element ref = "ebTest:ReferenceURI" minOccurs = "0"/> </sequence> </complexType> </element> <element name = "Abort"> <complexType/> </element> <element name = "Return"> <complexType/> </element> <element name = "KeystoreFileURI" type = "anyURI"/> <element name = "KeystoreType" type = "ebTest:keystore.type"/> <element name = "KeystorePassword" type = "string"/>

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 340 of 447

1

123456789

1011121314151617181920212223242526272829303132333435363738394041424344454647484950515253

23

Page 341: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

<element name = "KeystoreAlias" type = "string"/> <element name = "KeystoreAliasPassword" type = "string"/> <element name = "CanonocalizationMethodAlgorithm" type = "anyURI"/> <element name = "DigestMethod" type = "string"/> <element name = "SignatureMethodAlgorighm" type = "anyURI"/> <element name = "ReferenceURI" type = "anyURI"/> <element name = "TransformAlgorithm" type = "anyURI"/> <element name = "Transform" type = "string"/> <element name = "DigestMethodAlgorithm" type = "anyURI"/> <element name = "SetMessageType" type = "string"/> <element name = "InitiateMessage"> <complexType> <sequence> <element ref = "ebTest:Content"/> <element ref = "ebTest:Mutator" minOccurs = "0"/> </sequence> </complexType> </element> <element name = "InitiatePayload"> <complexType> <sequence> <element ref = "ebTest:Packaging" minOccurs = "0"/> <element ref = "ebTest:Content"/> <element ref = "ebTest:Mutator" minOccurs = "0"/> </sequence> </complexType> </element> <element name = "LockParameter"> <complexType> <sequence> <element ref = "ebTest:Name"/> </sequence> <attribute name = "lock" use = "required" type = "ebTest:lock.type"/> </complexType> </element> <element name = "UnlockParameter"> <complexType> <sequence> <element ref = "ebTest:Name"/> </sequence> </complexType> </element></schema>

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 341 of 447

1

123456789

10111213141516171819202122232425262728293031323334353637383940414243

44454647484950

23

Page 342: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 342 of 447

1

123456

7

8

23

Page 343: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

Appendix D (Normative) ebXML Message Declaration Schema

The OASIS ebXML Implementation and Interoperability Committee has developed a version of the ebXML message packaging and message declaration schemas that conform to the W3C XML Schema Recommendation specification [XMLSchema]. It is HIGHLY RECOMMENDED that test writers use this format to describe message envelope construction.. Doing so minimizes duplication of effort and promotes a common declarative syntax for describing ebXML message envelope construction. However, because an XSL or XUpdate Mutator can parse and generate an ebXML message envelope from any syntax defined in a Declaration, this is not Mandatory.

The purpose of this message Declaration schema is to provide a Test Driver, with the necessary declarative information to construct an ebXML message (when in “connection” mode) or to construct a modified ebXML message declaration (when in “service” mode) for conformance or interoperability testing respectively. When in connection mode, the Test Driver accomplishes this by transforming (or “mutating”) a basic message declaration into an actual ebXML message or a modified declaration using XSLT or XUpdate to perform the transformation. The resulting message can then be sent by the Test Driver.

If the Test Driver is in “service mode”, the resulting ebXML message declaration is passed to the Test Service via its “initiator” method. The Test Service must interpret the message declaration produced by the Test Driver and (using its own MSH API ) construct the equivalent message, adding its own unique message Timestamp, ConversationId and message TimeToLive values to the resulting message.Below is an illustration of the schema used to define the syntax necessary to instruct a Test Driver to build an ebXML message (or modify the declaration to include “run-time” messaging content). The semantic meaning of this schema is explained below:

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 343 of 447

1

1

2

3456789

1011

1213141516171819

2021222324252627

23

Page 344: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

Figure 51-Graphical representation of ebXML Message Declaration content within a PutMessage instruction

Message Envelope Packaging:

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 344 of 447

1

123

45

6789

10111213141516171819

20

23

Page 345: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

Message envelope packaging is done by the Test Driver, normally in a transparent manner. However, if a test writer wishes to manipulate the packaging of a message, they may do so by declaring those packaging changes using one of the IIC schemas in this document that represent a generic, declarative format for modifying a message package. In this particular case, the schema illustrated and defined MUST be used to define MIME packaging changes to the message. A Test Driver MUST be able to interpret the packaging declaration into the appropriate API calls necessary to modify package content.NOTE: Message packaging is NOT performed by the Test Service, since packaging features are not exposed at the application level. Therefore packaging declarations MUST NOT appear in Test Cases where the Test Driver is in “service” mode. If a packaging declaration is present when a Test Driver is in “service” mode, an exception MUST be generated by the Test Driver.

Figure 52- Graphical representation of the Packaging element content for ebXML messages

NameDescription Default Value Required/

OptionalException Condition

PackagingContainer for declaration to be interpreted by Test Driver into message packaging API calls

Optional Test Driver is in “service” mode

mime:HeaderInstruction to Test Driver to create a new MIME header, or if it already exists, modify the existing one

Required

Name MIME header name Required

ValueMime header value. If not present, this indicates header by this Name is to be modified, not replaced.

Required

AttributeInstruction to Test Driver to create a new attribute for this MIME header, or if it already exists, modify the existing one

Optional

NameHeader attribute name Required

ValueHeader attribute value Required

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 345 of 447

1

123456789

10

11

1213

14

23

Page 346: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

Table 36 – List of content for the Packaging element

The semantic meaning of the message envelop declaration is identical to both the Test Driver and the Test Service. Both MUST interpret its content and generate a valid ebXML message. In the case of the Test Driver, this is accomplished using a Mutator XSL or XUpdate document to generate the final message envelope. In the case of the Test Service, the declaration is parsed, and the appropriate Messaging Service API calls are made to construct the message.

Below is a sample ebXML Declaration. When the Test Driver is in “connection” mode, it mutates the Declaration (using an XSL stylesheet), inserting element and attribute content wherever it knows default content should be, and declaring, or overriding default values where they are explicitly defined in the Declaration. The result is a valid ebXML message to be sent to a candidate MSH.

When the Test Driver is in “service” mode, the Test Driver mutates the declaration into a “modified” declaration (not an actual message). The modified declaration contains additional information (FromParty/Id, Service, Action) to be passed to the Test Service for interpretation into its own MS API calls for message construction.. Certain run-time message content (such as message Timestamp and message ConversationId) MUST be automatically generated by the Test Service “initiator” method. However, these message content parameter values MAY be overridden if their values are explicitly defined in the message Declaration.

Below is a minimal message Declaration that can be transformed by the IIC Mutator stylesheet into a valid ebXML message envelope for conformance testing, or a modified message declaration for interoperability testing:

<ebTest:PutMessage xmlns:ebTest= "http://www.oasis-open.org/tc/ebxml-iic/tests ><ebTest:Declaration "> <soap:Envelope xmlns:soap= "http://www.oasis-open.org/tc/ebxml-iic/tests/soap"> <soap:Header> <eb:MessageHeader xmlns:eb= "http://www.oasis-open.org/tc/ebxml-iic/tests/eb"/>  </soap:Header>  <soap:Body />   </soap:Envelope></ebTest:Declaration><ebTest:Mutator>ebXML.xsl</ebTest:Mutator></ebTest:PutMessage>

The resulting “mutated” message can be represented by the example message below. The Test Driver, after constructing a default MIME multipart package, would parse the simple Declaration above, and mutate it through an XSL stylesheet. It would then generate the following MIME message with enclosed SOAP/ebXML content.

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 346 of 447

1

1

2345678

910111213

1415161718192021

22232425

26272829303132333435363738

39

40414243

44

45

46

23

Page 347: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

Content-Type: multipart/related; type="text/xml"; boundary="boundaryText";[email protected]

--boundaryText

Content-ID: <[email protected]>Content-Type: text/xml; charset="UTF-8" <soap:Envelope xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:SOAP="http://schemas.xmlsoap.org/soap/envelope/" xmlns:eb="http://www.oasis-open.org/committees/ebxml-msg/schema/msg-header-2_0.xsd" xsi:schemaLocation="http://schemas.xmlsoap.org/soap/envelope/ http://www.oasis-open.org/committees/ebxml-msg/schema/envelope.xsd http://www.oasis-open.org/committees/ebxml-msg/schema/msg-header-2_0.xsd http://www.oasis-open.org/committees/ebxml-msg/schema/msg-header-2_0.xsd"><soap:Header> <eb:MessageHeader soap:mustUnderstand="1" eb:version="2.0"> <eb:From> <eb:PartyId>urn:oasis:iic:testdriver</eb:PartyId> </eb:From> <eb:To> <eb:PartyId>urn:oasis:iic:testservice</eb:PartyId> </eb:To> <eb:CPAId> mshc_basic</eb:CPAId> <eb:ConversationId> 987654321</eb:ConversationId> <eb:Service>urn:ebXML:iic:test</eb:Service> <eb:Action>Dummy</eb:Action> <eb:MessageData> <eb:MessageId>0123456789</eb:MessageId> <eb:Timestamp>2000-07-25T12:19:05</eb:Timestamp> MessageData> </eb:MessageHeader></soap:Header></soap:Envelope>

Likewise, if the Test Driver is in “service mode”, the message envelope Declaration content would be mutated into a “nearly complete” ebXML message declaration (not message) to be passed to the Test Service “initiator” action. The Test Service would then make the appropriate API calls based upon this declaration, and provide a valid MessageId and Timestamp ( since none is has been explicitly provided in the original Declaration content ). Below is an example of a mutated ebXML message declaration to be passed on to the Test Service “initiator” method.

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 347 of 447

1

12

34

56789

10111213

14

161718202122232425262728293031323334353637

38

3940414243

444546474849

50

23

Page 348: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

<soap:Envelope xmlns:soap= "http://www.oasis-open.org/tc/ebxml-iic/tests/soap"> <soap:Header> <eb:MessageHeader xmlns:eb= "http://www.oasis-open.org/tc/ebxml-iic/tests/eb" soap:mustUnderstand="1" eb:version="2.0"> <eb:From> <eb:PartyId>urn:oasis:iic:testdriver</eb:PartyId> </eb:From> <eb:To> <eb:PartyId>urn:oasis:iic:testservice</eb:PartyId> </eb:To> <eb:CPAId> mshc_basic</eb:CPAId> <eb:Service>urn:ebXML:iic:test</eb:Service> <eb:Action>Dummy</eb:Action> </eb:MessageHeader></soap:Header></soap:Envelope>

As illustrated above, dynamic ebXML message content values (highlighted above) are supplied by the Mutator stylesheet

a Mutator XSL stylesheet is also provided in this appendix that “fills in” the remaining required content to create a valid ebXML message.The following sections describe the semantic rules for how a the Test Driver (for conformance testing) or the Test Service (for interoperability testing) MUST interpret the ebXML Declaration content in order generate a valid ebXML message.

Interpreting the SOAP portion of the ebXML Declaration

The XML syntax interpreted by the Test Driver to construct the SOAP message content (or a modified declaration if in “service” ‘mode) consists of the declaration of a SOAP Envelope element, which in turn is a container for the SOAP Header, Body and non-SOAP XML content. Note: SOAP declarations MAY be ignored by the Test Service initiator method, since SOAP message content is unlikely to be exposed at the application of the Test Service. Construction of the SOAP Header and Body content is simple for the Test Driver, requiring only the creation of the two container elements with their namespace properly declared, and valid according to the [SOAP].

Figure 53 - Graphic representation of expanded view of the soap:Envelope element declaration

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 348 of 447

1

123456789

1011121314151617

18

19202122

232425262728

293031

3233343536373839

40

4142

4344

23

Page 349: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

Definition of Content

NameDeclaration Default Value Schema Required or

Optional

soap:EnvelopeGenerate container element with its proper namespace for SOAP Header and Body elements and their content

Required

soap:Header Generate SOAP Header extension element

Required

soap:BodyGenerate the default Body element Required

#wildCardGenerate “inline” wildcard XML content inside SOAP Envelope

Optional

Table 37 - Graphic

An Example of Minimal SOAP Declaration Content

The following XML represents all the information necessary to permit a Test Driver to construct a minimal SOAP message. The Test Service “initiator” method MUST ignore SOAP content declarations, since it is unlikely that SOAP manipulation will be possible at the application level of the Test Service.

<soap:Envelope>  <soap:Header/>   <soap:Body/>  </soap:Envelope>

Interpreting the SOAP Header Extension Element Declaration

The declarative syntax interpreted by the Test Driver to construct the ebXML Header extension element content consists of the declaration of ebXML element and attribute content. The only extension element that is required in the Declaration is the eb:MessageHeader element, which directs the Test Driver Mutator to construct an actual ebXML MessageHeader element, along with its proper namespace declaration, as defined in [EBMS].

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 349 of 447

1

123

4

5

6789

10111213

1415161718

1920

212223242526

27282930

23

Page 350: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

Figure 54 - Graphic representation of expanded view of the soap:Header element declaration

Definition of Content

NameDescription Default

ValueSchema Required or Optional

HeaderSOAP Header declaration and container for ebXML ebXML Header Extension Element declarations

Required

eb:MessageHeaderCreate an ebXML MessageHeader element with namespace declaration

Required

eb:ErrorListCreate an ebXML ErrorList element Optional

eb:SyncReplyCreate an ebXML SyncReply element Optional

eb:MessageOrderCreate an ebXML MessageOrder element

Optional

eb:AckRequestedCreate an ebXML AckRequested element

Optional

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 350 of 447

1

1

23

456

78

910

23

Page 351: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

eb:AcknowledgmentCreate an ebXML Acknowledgment element

Optional

Table 38 – Declaration of ebxML message content of the SOAP Header

Interpreting the ebXML MessageHeader Element Declaration

The XML syntax interpreted by the Test Driver to construct the ebXML MessageHeader extension content consists of the declaration of a MessageHeader element. This is the ”minimum” declaration that a Test Driver needs to generate an ebXML Message Header. All other required message content, as defined in the schema in the ebXML MS v2.0 Specification, is provided by the Test Driver “Mutator” operation (to generate mandatory message content) or by explicit declaration of content by the test writer in the Declaration itself. The figure below illustrates the schema for an ebXML Message Header declaration to be interpreted by the Test Driver.

Likewise, when the Test Driver is in “service” mode, the Test Driver will construct a “complete” MessageHeader declaration (containing required From/PartyId, To/PartyId and other values). However, certain message values (Timestamp, MessageId, TimeToLive and ConversationId) are “optional” parts of the declaration. Their values MUST NOT be generated by the Mutator when in “service” mode. It is assumed that the Test Service “initiator” method will (by default) provide these values when it interprets the declaration into its own MS API calls.

Figure 45 – Graphic representation of expanded view of the ebXML MessageHeader element declaration

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 351 of 447

1

1

2

345

6789

10111213

14151617181920

212223

242526

23

Page 352: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

Definition of Content

NameDescription Default Value

Mutator Schema Required or Optional

Test Driver Exception Condition

eb:MessageHeader Generate

MessageHeader element and all of its default element/attribute content

Required

id Generate attribute with declared value

Optional

versionModify default attribute value

2.0 Optional

soap:mustUnderstand

Modify default attribute value

true Optional

FromModify default From message element generated by Test Driver

Generated at run time

Optional

PartyId Replace default element value with new value

Generated at run time, using Test Driver config value,

Required

typeGenerate a type attribute with value

Optional

RoleGenerates a Role element with its value

Optional

ToModify default To message element generated by Test Driver

Generated by Test Driver at run time

Optional

PartyIdReplace default element value with new value Generated at run

time, using Test Driver config value

Required

typeGenerate type attribute with value

Optional

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 352 of 447

1

1

2

23

Page 353: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

RoleGenerates a Role element with its value

Optional

CPAIdGenerate element with its value

Generated at run time, using Test Driver config value

Optional

ConversationIdModify default value provided by Test Driver

Generated by Mutator in “connection mode” only

Optional

ServiceModify default value generated by Test Driver

Generated Mutator using config value

Optional

Action Replace default value with specified Action name

Generated by Mutator using config value

Optional

MessageDataModify default container generated by Test Driver

Generated run time

Optional

MessageIdModify default value generated by Test Driver

Generated by Mutator in “connection mode” only

Optional

TimestampModify default value generated by Test Driver

Generated or Mutator in “connection mode” only

Optional

RefToMessageIdGenerate element and its value

Optional

TimeToLiveGenerate element and its value

Generated by Mutator in “connection mode” only

Optional

DuplicateElimination

Generate element Optional

DescriptionGenerate element with value

Optional

#wildcardGenerate content inline Optional

Table 39 – List of content for the ebXML MessageHeader element declaration

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 353 of 447

1

1

23

23

Page 354: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

An Example of a Minimal ebXML MessageHeader Content Declaration

The following XML instance represents all the information necessary to permit a Test Driver (in “connection” mode) to construct an ebXML MessageHeader element with all necessary content to validate against the ebXML MS V2.0 schema. Alternatively, if the Test Driver is in “service mode”, the resulting ebXML message envelope is passed to the Test Service “initiator” method so that it may build the “actual” message, with the additional requirement that the Test Service provide its own generated ConversationId, MessageId, TimeToLive and Timestamp to the message.

<eb:MessageHeader xmlns:eb= "http://www.oasis-open.org/tc/ebxml-iic/tests/eb" />

Interpreting the ebXML ErrorList Element Declaration

The XML syntax interpreted by the Test Driver to construct the ebXML ErrorList extension content consists of the declaration of an ErrorList element, and a required declaration of one or more Error elements within it. All required content, as defined in the schema in the ebXML MS V2.0 Specification, is provided through either default parameters defined in the Mutator XSL stylesheet or by explicit declaration by the test writer.

Figure 55 - Graphic representation of expanded view of the ebXML ErrorList element declaration

Definition of Content

NameDescription Default Value Schema

Required or Optional

Test Driver Exception Condition

eb:ErrorListGenerate container element

Optional

id Generate attribute and its value

Optional

versionModify default value 2.0 Optional

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 354 of 447

1

1

2345678

910

11

121314151617

1819

2021

222324

25

23

Page 355: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

soap:mustUnderstand

Modify default value true Optional

highestSeverityGenerate required attribute and value

Required

ErrorGenerate new Error container

Required

idGenerate attribute with declared value

Optional

codeContextGenerate element with declared value

Optional

errorCodeGenerate required attribute and value

Required

severityGenerate required attribute and value

Required

locationGenerate attribute with declared value

Optional

DescriptionGenerate element with declared value

Optional

#wildCardGenerate content “inline” into message

Optional

Table 40 – List of content for ErrorList declaration

An Example of a Minimal ebXML ErrorList Content Declaration

The following XML represents all the information necessary to permit a Test Driver (using the IIC ebXML Mutator stylesheet) to construct an ebXML ErrorList element with all necessary content to validate against the ebXML MS v2.0 schema. All required content not visible in the example would be generated by the Mutator. Alternately, if the Test Driver is in “service mode”, the resulting ErrorList message declaration could be passed to the Test Service “initiator” method to instruct the Test Service to build an ErrorList with the same information.

<eb:ErrorList eb:highestSeverity=Error"> <eb:Error eb:errorCode=”Inconsistent” eb:severity=”Error”/></eb:ErrorList>

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 355 of 447

1

1

2345

6789

101112

13141516

17

23

Page 356: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

Interpreting the ebXML SyncReply Element Declaration

The XML syntax interpreted by the Test Driver to construct the ebXML SyncReply extension content consists of the declaration of a SyncReply element. All required content, as defined in the schema in [EBMS], is provided through either default parameters provided by the Test Driver Mutator or through explicit declaration by the test writer.

Figure 56 - Graphic representation of expanded view of the ebXML SyncReply element declaration

Definition of Content

NameDescription Default Value Schema

Required or Optional

Test Driver Exception Condition

eb:SyncReplyGenerate container element and all default content

Optional

id Generate attribute and its value

Optional

versionModify default attribute value

2.0 Optional

soap:mustUnderstand

Modify default attribute value

true Optional

soap:actorModify default attribute value

http://schemas.xmlsoap.org/soap/actor/next

Optional

#wildCardGenerate content “inline” Optional

Table 41 - Content list for the SyncReply element in a message declaration

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 356 of 447

1

12

34567

89

1011

12

131415161718

19

20

21

23

Page 357: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

An Example of a Minimal ebXML SyncReply Content Declaration

The following XML represents all the information necessary to permit a Test Driver to construct an ebXML AckRequested element with all necessary content to validate against the [EBMS] schema. Alternately, the same declaration will be “mutated” into a modified declaration that will be passed to the Test Service if the Test Driver is in “service” mode.

<eb:SyncReply/>

Interpreting the ebXML AckRequested Element Declaration

The XML syntax interpreted by the Test Driver to construct the ebXML AckRequested extension content consists of the declaration of an AckRequested element. All required content as defined in the [EBMS] schema, is provided by the Test Driver or by explicit declaration.

Figure 57 - Graphic representation of expanded view of the ebXML AckRequested element declaration

Definition of Content

NameDeclaration Default Value

From MutatorSchema Required or Optional

Test Driver Exception Condition

eb:AckRequestedGenerate container element and all default content

Optional

id Generate attribute and its value

Optional

versionModify default value 2.0 Optional

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 357 of 447

1

12345

6789

10

1112

13

14151617

1819

202122

232425

26

23

Page 358: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

soap:mustUnderstand

Modify default value true Optional

soap:actorModify default attribute value with new value

urn:oasis:names:tc:ebxml-msg:actor:toPartyMSH

Optional

signedModify default attribute value

false Optional

#wildCardGenerate content “inline”

Optional

Table 42 - Content of the AckRequested element in a message declaration

An Example of a Minimal ebXML AckRequested Content Declaration

The following XML represents all the information necessary to permit a Test Driver to construct an ebXML AckRequested element with all necessary content to validate against the [EBMS] schema. Alternately, the same declaration will be “mutated” into a modified declaration that will be passed to the Test Service if the Test Driver is in “service” mode.

<eb:AckRequested/>

Interpreting the ebXML Acknowledgment Element Declaration

The XML syntax interpreted by the Test Driver to construct the ebXML Acknowledgment extension content consists of the declaration of an Acknowledgment element. All required content, as defined in the [EBMS] schema, is provided by the Test Driver Mutator or through explicit declaration.

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 358 of 447

1

1

234

56789

1011

1213

14151617

1819

23

Page 359: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

Figure 58 - Graphic representation of expanded view of the ebXML Acknowledgment element declaration

Definition of Content

NameDescription Default Value

From MutatorSchema Required or Optional

Test Driver Exception Condition

eb:Acknowledgment Generate container

element and all default content

Optional

id Generate attribute and its value

Optional

versionModify default attribute value

2.0 Optional

soap:mustUnderstand

Modify default attribute value

true Optional

soap:actorModify default attribute value

urn:oasis:names:tc:ebxml-msg:actor:toPartyMSH

Optional

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 359 of 447

1

123

456

7

23

Page 360: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

TimestampModify default element value

Generated by Mutator at run time, or by the Test Service “initiator” if in “service” ‘mode

Optional

RefToMessageIdModify default element value

Optional

FromModify default container Generated by

Mutator at run time using config value

Optional

PartyIdModify default value urn:ebxml:iic:testd

riverRequired

typeGenerate type attribute with value

Optional

RoleGenerates a Role element with its value

Optional

ds:ReferenceGenerate container element and all default content

Optional

IdGenerate attribute and its value

Optional

URIModify default attribute value

“” Required

typeGenerate attribute and its value

Optional

TransformsGenerate container element

Optional

TransformGenerate element with its value

Optional

AlgorithmModify default attribute value

http://www.w3.org/TR/2001/REC-xml-c14n-20010315

Required

#wildCardGenerate content “inline” Optional

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 360 of 447

1

23

Page 361: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

XPathGenerate element with its value

Optional

DigestMethodGenerate element with its value

Required

AlgorithmModify default attribute value

Generated by Mutator using config value

Required

#wildCardGenerate content “inline” Optional

DigestValueGenerate element with its value

Computed by Provided by Mutator at run time

Required

#wildCardGenerate content “inline” Optional

Table 43 - Content of the Acknowledgment element in a message declaration

An Example of a Minimal “unsigned” ebXML Acknowledgment Content Declaration

The following XML represents the minimum information necessary to permit a Test Driver to construct an ebXML Acknowledgment element. Alternately, the same declaration will be “mutated” into a modified declaration that will be passed to the Test Service if the Test Driver is in “service” mode.

<eb:Acknowledgment/>

Interpreting the ebXML MessageOrder Element Declaration

The XML syntax interpreted by the Test Driver Mutator to construct the ebXML MessageOrder extension content consists of the declaration of a MessageOrder element. All required content, as defined in the [EBMS] schema, is provided by the Test Driver Mutator or through explicit declaration.

Figure 59 – Content list for the ebXML MessageOrder element declaration

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 361 of 447

1

1

2

345

6789

1011

121314

15161718

19

2021

22

23

Page 362: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

Definition of Content

NameDescription Default Value

From MutatorSchema Required or Optional

Test Driver Exception Condition

eb:MessageOrderGenerate container element and all default content

Optional

id Generate attribute and its value

Optional

versionModify default attribute value

2.0 Optional

soap:mustUnderstand

Modify default attribute value

true Optional

SequenceNumberGenerate element with declared value

Required

statusGenerate attribute with declared value

Optional

#wildCardGenerate content “inline” Optional

Table 44 – List of content for the MessageOrder element in a message declaration

An Example of a Minimal ebXML MessageOrder Content Declaration

The following XML represents all the information necessary to permit a Test Driver to construct an ebXML MessageOrder element. Alternately, the same declaration will be “mutated” into a modified declaration that will be passed to the Test Service if the Test Driver is in “service” mode.

<eb:MessageOrder><eb:SequenceNumber>1</eb:SequenceNumber></eb:MessageOrder>

Interpreting the SOAP Body Extension Element Declaration

The XML syntax used by the Test Driver to construct the ebXML Body extension message content consists of the declaration of a SOAP Body element, which in turn is a container for the ebXML Manifest, StatusRequest or StatusResponse elements.

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 362 of 447

1

123

4

5

67

89

1011

12131415

1617

18192021

23

Page 363: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

The Test Driver Mutator does not construct any of these SOAP Body extension elements unless they are explicitly declared as content in the SOAP Body Declaration.

Figure 60 - Graphic representation of expanded view of the soap:Body element declaration

Interpreting the ebXML Manifest Element Declaration

The XML syntax interpreted by the Mutator to construct the ebXML Manifest extension content consists of the declaration of a Manifest element. All required content, as defined in the [EBMS] schema, is provided by the Test Driver Mutator or through explicit declaration

Figure 61 - Graphic representation of expanded view of the ebXML Manifest element declaration

Definition of Content

NameDescription Default Value

From MutatorSchema Required or Optional

Test Driver Exception Condition

eb:ManifestGenerate container element and all default content

Optional

id Generate attribute and its value

Optional

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 363 of 447

1

12

34

56

7

89

10111213

1415

1617

18

192021

22

23

Page 364: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

versionModify default attribute value

2.0 Optional

idModify default attribute value

true Optional

xlink:typeGenerate element with declared value

Optional

xlink:hrefGenerate attribute with declared value

Required

xlink:roleGenerate attribute with declared value

Optional

contentIdModify the Content-ID MIME header of the payload

Optional

contentTypeSet the Content-Type MIME header of the payload

Optional

contentLocationSet the Content-Location MIME header of the payload

Optional

SchemaGenerate schema container element

Optional

locationGenerate URI attribute and value of schema location

Required

versionGenerate schema version attribute and value

Optional

DescriptionGenerate description element and value

Optional

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 364 of 447

1

23

Page 365: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

xml:langGenerate description language attribute and value

Required

Table 45 - Content of the Manifest element in a message declaration

An Example of a Minimal ebXML Manifest Content Declaration

The following XML represents the minimum information necessary to permit a Test Driver Mutator to construct an ebXML Manifest element with all necessary content to validate against the ebXML MS v2.0 schema. Alternately, the same declaration will be “mutated” into a modified declaration that will be passed to the Test Service if the Test Driver is in “service” mode.

<eb:Manifest><eb:Reference xlink:href=”cid:payload_1”/></eb:Manifest>

Interpreting the ebXML StatusRequest Element Declaration

The XML syntax interpreted by the Test Driver to construct the ebXML StatusRequest extension content consists of the declaration of a StatusRequest element. All required content, as defined in the [EBMS] schema, is provided by the Test Driver Mutator or through explicit declaration

Figure 62 - Graphic representation of expanded view of the ebXML StatusRequest element declaration

Definition of Content

NameDescription Default Value Schema

Required or Optional

Test Driver Exception Condition

eb:StatusRequestGenerate container element and all default content

Optional

id Generate attribute and its value

Optional

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 365 of 447

1

1

23

45678

91011

121314

15161718

19

202122

232425

26

23

Page 366: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

versionModify default value 2.0 Optional

RefToMessageIdGenerate element and its value

Required

#wildCardGenerate content “inline”

Optional

Table 34 defines the content of the StatusRequest element in a message declaration

An Example of a Minimal ebXML StatusRequest Content Declaration

The following XML represents all the minimum information necessary to permit a Test Driver to construct an ebXML StatusRequest element with all necessary content to validate against the [EBMS] schema. Alternately, the same declaration will be “mutated” into a modified declaration that will be passed to the Test Service if the Test Driver is in “service” mode.

<eb:StatusRequest><eb:RefToMessageId>[email protected]</eb:RefToMessageId></eb:StatusRequest>

Interpreting the ebXML StatusResponse Element Declaration

The XML syntax used by the Test Driver to construct the ebXML StatusResponse extension content consists of the declaration of a StatusResponse element with required and optional element/attribute content.

Figure 63 - Graphic representation of expanded view of the ebXML StatusResponse element declaration

Definition of Content

NameDescription Default Value Schema

Required or Optional

Test Driver Exception Condition

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 366 of 447

1

1

23

45678

9101112

131415

16171819

20

212223

242526

27

23

Page 367: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

eb:StatusResponse Generate container

element and all default content

Optional

id Generate attribute and its value

Optional

versionModify default attribute value

2.0 Optional

messageStatusGenerate attribute and its value

Optional

RefToMessageIdGenerate element and its value

Required

TimestampModify default value Generated by

Test Driver at run time

Optional

#wildCardGenerate content “inline” Optional

Table 46 - Content of the StatusResponse element in a message declaration

An Example of a Minimal ebXML StatusResponse Content Declaration

The following XML represents all the information necessary to permit a Test Driver to construct an ebXML StatusResponse element with all necessary content to validate against the [EBMX] schema. Alternately, the same declaration will be “mutated” into a modified declaration that will be passed to the Test Service if the Test Driver is in “service” mode.

<eb:StatusResponse messageStatus=”Processed”/>

SOAP Portion of the ebXML Declaration Schema (Normative)

<?xml version = "1.0" encoding = "UTF-8"?><!--Generated by XML Authority. Conforms to w3c http://www.w3.org/2001/XMLSchema--><schema xmlns = "http://www.w3.org/2001/XMLSchema" targetNamespace = "http://www.oasis-open.org/tc/ebxml-iic/tests/soap" xmlns:tns = "http://www.oasis-open.org/tc/ebxml-iic/tests/soap" xmlns:xs = "http://www.w3.org/2001/XMLSchema" xmlns:eb = "http://www.oasis-open.org/tc/ebxml-iic/tests/eb"> <import namespace = "http://www.oasis-open.org/tc/ebxml-iic/tests/eb" schemaLocation = "eb.xsd"/>

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 367 of 447

1

1

23

45678

91011

12

1314

15

16171819202122232425

23

Page 368: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

<group name = "optionElements"> <all minOccurs = "0"> <element ref = "eb:SyncReply" minOccurs = "0"/> <element ref = "eb:MessageOrder" minOccurs = "0"/> <element ref = "eb:AckRequested" minOccurs = "0"/> <element ref = "eb:Acknowledgment" minOccurs = "0"/> <element ref = "eb:ErrorList" minOccurs = "0"/> </all> </group> <attributeGroup name = "encodingStyle"> <attribute name = "encodingStyle" type = "tns:encodingStyle"/> </attributeGroup> <!-- Schema for the SOAP/1.1 envelope

This schema has been produced using W3C's SOAP Version 1.2 schema found at:

http://www.w3.org/2001/06/soap-envelope

Copyright 2001 Martin Gudgin, Developmentor.

Changes made are the following: - reverted namespace to http://schemas.xmlsoap.org/soap/envelope/ - reverted mustUnderstand to only allow 0 and 1 as lexical values

Copyright 2003 OASIS

Changes made are the following: - SOAP Header and Body element content models constrained to include ebXML content

Original copyright: Copyright 2001 W3C (Massachusetts Institute of Technology, Institut National de Recherche en Informatique et en Automatique, Keio University). All Rights Reserved. http://www.w3.org/Consortium/Legal/

This document is governed by the W3C Software License [1] as described in the FAQ [2].

[1] http://www.w3.org/Consortium/Legal/copyright-software-19980720 [2] http://www.w3.org/Consortium/Legal/IPR-FAQ-20000620.html#DTD--> <!-- Envelope, header and body --> <element name = "Envelope" type = "tns:Envelope"/>

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 368 of 447

1

123456789

101112131415

161718

1920

2122

23242526

272829

303132

3334353637383940

414243

444546474849505152

23

Page 369: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

<complexType name = "Envelope"> <sequence> <element ref = "tns:Header"/> <element ref = "tns:Body"/> <any namespace = "##other" processContents = "lax" minOccurs = "0" maxOccurs = "unbounded"/> </sequence> <anyAttribute namespace = "##other" processContents = "lax"/> </complexType> <element name = "Header"> <complexType> <sequence> <element ref = "eb:MessageHeader"/> <group ref = "tns:optionElements"/> </sequence> </complexType> </element> <complexType name = "Header"> <sequence> <any namespace = "##other" processContents = "lax" minOccurs = "0" maxOccurs = "unbounded"/> </sequence> <anyAttribute namespace = "##other" processContents = "lax"/> </complexType> <element name = "Body"> <complexType> <choice minOccurs = "0"> <element ref = "eb:Manifest"/> <element ref = "eb:StatusRequest"/> <element ref = "eb:StatusResponse"/> </choice> </complexType> </element> <complexType name = "Body"> <annotation> <documentation> Prose in the spec does not specify that attributes are allowed on the Body element </documentation> </annotation> <sequence> <any namespace = "##any" processContents = "lax" minOccurs = "0" maxOccurs = "unbounded"/> </sequence> <anyAttribute namespace = "##any" processContents = "lax"/> </complexType> <!-- Global Attributes. The following attributes are intended to be usable via qualified attribute names on any complex type referencing them. --> <attribute name = "mustUnderstand" default = "0"> <simpleType> <restriction base = "boolean"> <pattern value = "0|1"/>

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 369 of 447

1

123456789

101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354

23

Page 370: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

</restriction> </simpleType> </attribute> <attribute name = "actor" type = "anyURI"/> <simpleType name = "encodingStyle"> <annotation> <documentation> 'encodingStyle' indicates any canonicalization conventions followed in the contents of the containing element. For example, the value 'http://schemas.xmlsoap.org/soap/encoding/' indicates the pattern described in SOAP specification </documentation> </annotation> <list itemType = "anyURI"/> </simpleType> <complexType name = "Fault" final = "extension"> <annotation> <documentation> Fault reporting structure </documentation> </annotation> <sequence> <element name = "faultcode" type = "QName"/> <element name = "faultstring" type = "string"/> <element name = "faultactor" type = "anyURI" minOccurs = "0"/> <element name = "detail" type = "tns:detail" minOccurs = "0"/> </sequence> </complexType> <complexType name = "detail"> <sequence> <any namespace = "##any" processContents = "lax" minOccurs = "0" maxOccurs = "unbounded"/> </sequence> <anyAttribute namespace = "##any" processContents = "lax"/> </complexType></schema>

Schema for ebXML portion of Message Declaration content

?xml version = "1.0" encoding = "UTF-8"?><!--Generated by XML Authority. Conforms to w3c http://www.w3.org/2001/XMLSchema--><schema xmlns = "http://www.w3.org/2001/XMLSchema" targetNamespace = "http://www.oasis-open.org/tc/ebxml-iic/tests/eb" xmlns:tns = "http://www.oasis-open.org/tc/ebxml-iic/tests/eb" xmlns:xlink = "http://www.w3.org/1999/xlink" xmlns:ds = "http://www.oasis-open.org/tc/ebxml-iic/tests/xmldsig" xmlns:soap = "http://www.oasis-open.org/tc/ebxml-iic/tests/soap" version = "1.0" elementFormDefault = "qualified"

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 370 of 447

1

123456789

10111213141516171819202122232425262728293031323334353637

38

394041

4243444546474849505152

23

Page 371: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

attributeFormDefault = "qualified"> <import namespace = "http://www.w3.org/1999/xlink" schemaLocation = "http://www.oasis-open.org/committees/ebxml-msg/schema/xlink.xsd"/> <import namespace = "http://www.oasis-open.org/tc/ebxml-iic/tests/xmldsig" schemaLocation = "xmldsig.xsd"/> <import namespace = "http://www.oasis-open.org/tc/ebxml-iic/tests/soap" schemaLocation = "soap.xsd"/> <import namespace = "http://www.w3.org/XML/1998/namespace" schemaLocation = "http://www.oasis-open.org/committees/ebxml-msg/schema/xml_lang.xsd"/> <attributeGroup name = "headerExtension.grp"> <attribute ref = "tns:id"/> <attribute ref = "tns:version" use = "optional"/> <attribute ref = "soap:mustUnderstand" use = "optional"/> </attributeGroup> <attributeGroup name = "bodyExtension.grp"> <attribute ref = "tns:id"/> <attribute ref = "tns:version" use = "optional"/> </attributeGroup> <!-- Copyright (C) The Organization for the Advancement of Structured Information Standards [OASIS] January 2002. All Rights Reserved.This document and translations of it may be copied and furnished to others, and derivative works that comment on or otherwise explain it or assist in its implementation may be prepared, copied, published and distributed, in whole or in part, without restriction of any kind, provided that the above copyright notice and this paragraph are included on all such copies and derivative works. However, this document itself may not be modified in any way, such as by removing the copyright notice or references to OASIS, except as needed for the purpose of developing OASIS specifications, in which case the procedures for copyrights defined in the OASIS Intellectual Property Rights document MUST be followed, or as required to translate it into languages other than English.The limited permissions granted above are perpetual and will not be revoked by OASIS or its successors or assigns.--> <!-- MANIFEST, for use in soap:Body element --> <element name = "Manifest"> <complexType> <sequence> <element ref = "tns:Reference" maxOccurs = "unbounded"/> <any namespace = "##other" processContents = "lax" minOccurs = "0" maxOccurs = "unbounded"/> </sequence> <attributeGroup ref = "tns:bodyExtension.grp"/> </complexType> </element> <element name = "Reference"> <complexType> <sequence> <element ref = "tns:Schema" minOccurs = "0" maxOccurs = "unbounded"/> <element ref = "tns:Description" minOccurs = "0" maxOccurs = "unbounded"/> </sequence>

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 371 of 447

1

123456789

101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657

23

Page 372: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

<attribute ref = "tns:id"/> <attribute ref = "xlink:type" fixed = "simple"/> <attribute ref = "xlink:href" use = "required"/> <attribute ref = "xlink:role"/> <attribute name = "contentId" use = "optional" type = "string"/> <attribute name = "contentType" use = "optional" type = "string"/> <attribute name = "contentLocation" use = "optional" type = "anyURI"/> </complexType> </element> <element name = "Schema"> <complexType> <attribute name = "location" use = "required" type = "anyURI"/> <attribute name = "version" type = "tns:non-empty-string"/> </complexType> </element> <!-- MESSAGEHEADER, for use in soap:Header element --> <element name = "MessageHeader"> <complexType> <sequence> <element ref = "tns:From" minOccurs = "0"/> <element ref = "tns:To" minOccurs = "0"/> <element ref = "tns:CPAId" minOccurs = "0"/> <element ref = "tns:ConversationId" minOccurs = "0"/> <element ref = "tns:Service" minOccurs = "0"/> <element ref = "tns:Action" minOccurs = "0"/> <element ref = "tns:MessageData" minOccurs = "0"/> <element ref = "tns:DuplicateElimination" minOccurs = "0"/> <element ref = "tns:Description" minOccurs = "0" maxOccurs = "unbounded"/> <any namespace = "##other" processContents = "lax" minOccurs = "0" maxOccurs = "unbounded"/> </sequence> <attributeGroup ref = "tns:headerExtension.grp"/> </complexType> </element> <element name = "CPAId" type = "tns:non-empty-string"/> <element name = "ConversationId" type = "tns:non-empty-string"/> <element name = "Service"> <complexType> <simpleContent> <extension base = "tns:non-empty-string"> <attribute name = "type" type = "tns:non-empty-string"/> </extension> </simpleContent> </complexType> </element> <element name = "Action" type = "tns:non-empty-string"/> <element name = "MessageData"> <complexType> <sequence>

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 372 of 447

1

123456789

1011121314151617181920212223242526272829303132333435363738394041424344454647484950515253

23

Page 373: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

<element ref = "tns:MessageId" minOccurs = "0"/> <element ref = "tns:Timestamp" minOccurs = "0"/> <element ref = "tns:RefToMessageId" minOccurs = "0"/> <element ref = "tns:TimeToLive" minOccurs = "0"/> </sequence> </complexType> </element> <element name = "MessageId" type = "tns:non-empty-string"/> <element name = "TimeToLive" type = "dateTime"/> <element name = "DuplicateElimination"/> <!-- SYNC REPLY, for use in soap:Header element --> <element name = "SyncReply"> <complexType> <sequence> <any namespace = "##other" processContents = "lax" minOccurs = "0" maxOccurs = "unbounded"/> </sequence> <attributeGroup ref = "tns:headerExtension.grp"/> <attribute ref = "soap:actor" default = "urn:oasis:names:tc:ebxml-msg:actor:toPartyMSH"/> </complexType> </element> <!-- MESSAGE ORDER, for use in soap:Header element --> <element name = "MessageOrder"> <complexType> <sequence> <element ref = "tns:SequenceNumber"/> <any namespace = "##other" processContents = "lax" minOccurs = "0" maxOccurs = "unbounded"/> </sequence> <attributeGroup ref = "tns:headerExtension.grp"/> </complexType> </element> <element name = "SequenceNumber" type = "tns:sequenceNumber.type"/> <!-- ACK REQUESTED, for use in soap:Header element --> <element name = "AckRequested"> <complexType> <sequence> <any namespace = "##other" processContents = "lax" minOccurs = "0" maxOccurs = "unbounded"/> </sequence> <attributeGroup ref = "tns:headerExtension.grp"/> <attribute ref = "soap:actor"/> <attribute name = "signed" use = "optional" type = "boolean"/> </complexType> </element>

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 373 of 447

1

123456789

1011121314151617181920212223242526272829303132333435363738394041424344454647484950515253

23

Page 374: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

<!-- ACKNOWLEDGMENT, for use in soap:Header element --> <element name = "Acknowledgment"> <complexType> <sequence> <element ref = "tns:Timestamp" minOccurs = "0"/> <element ref = "tns:RefToMessageId" minOccurs = "0"/> <element ref = "tns:From" minOccurs = "0"/> <element name = "Reference" minOccurs = "0" maxOccurs = "unbounded"/> <any namespace = "##other" processContents = "lax" minOccurs = "0"/> <element ref = "ds:Reference" minOccurs = "0" maxOccurs = "unbounded"/> </sequence> <attributeGroup ref = "tns:headerExtension.grp"/> <attribute ref = "soap:actor" default = "urn:oasis:names:tc:ebxml-msg:actor:toPartyMSH"/> </complexType> </element> <!-- ERROR LIST, for use in soap:Header element --> <element name = "ErrorList"> <complexType> <sequence> <element ref = "tns:Error" maxOccurs = "unbounded"/> <any namespace = "##other" processContents = "lax" minOccurs = "0" maxOccurs = "unbounded"/> </sequence> <attributeGroup ref = "tns:headerExtension.grp"/> <attribute name = "highestSeverity" use = "required" type = "tns:severity.type"/> </complexType> </element> <element name = "Error"> <complexType> <sequence> <element ref = "tns:Description" minOccurs = "0"/> <any namespace = "##other" processContents = "lax" minOccurs = "0" maxOccurs = "unbounded"/> </sequence> <attribute ref = "tns:id"/> <attribute name = "codeContext" default = "urn:oasis:names:tc:ebxml-msg:service:errors" type = "anyURI"/> <attribute name = "errorCode" use = "required" type = "tns:non-empty-string"/> <attribute name = "severity" use = "required" type = "tns:severity.type"/> <attribute name = "location" type = "tns:non-empty-string"/> </complexType> </element> <!-- STATUS RESPONSE, for use in soap:Body element -->

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 374 of 447

1

123456789

10111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455

23

Page 375: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

<element name = "StatusResponse"> <complexType> <sequence> <element ref = "tns:RefToMessageId"/> <element ref = "tns:Timestamp" minOccurs = "0"/> <any namespace = "##other" processContents = "lax" minOccurs = "0" maxOccurs = "unbounded"/> </sequence> <attributeGroup ref = "tns:bodyExtension.grp"/> <attribute name = "messageStatus" use = "required" type = "tns:messageStatus.type"/> </complexType> </element> <!-- STATUS REQUEST, for use in soap:Body element --> <element name = "StatusRequest"> <complexType> <sequence> <element ref = "tns:RefToMessageId"/> <any namespace = "##other" processContents = "lax" minOccurs = "0" maxOccurs = "unbounded"/> </sequence> <attributeGroup ref = "tns:bodyExtension.grp"/> </complexType> </element> <!-- COMMON TYPES --> <complexType name = "sequenceNumber.type"> <simpleContent> <extension base = "positiveInteger"> <attribute name = "status" default = "Continue" type = "tns:status.type"/> </extension> </simpleContent> </complexType> <simpleType name = "status.type"> <restriction base = "NMTOKEN"> <enumeration value = "Reset"/> <enumeration value = "Continue"/> </restriction> </simpleType> <simpleType name = "messageStatus.type"> <restriction base = "NMTOKEN"> <enumeration value = "UnAuthorized"/> <enumeration value = "NotRecognized"/> <enumeration value = "Received"/> <enumeration value = "Processed"/> <enumeration value = "Forwarded"/> </restriction> </simpleType> <simpleType name = "non-empty-string">

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 375 of 447

1

123456789

1011121314151617181920212223242526272829303132333435363738394041424344454647484950515253

23

Page 376: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

<restriction base = "string"> <minLength value = "1"/> </restriction> </simpleType> <simpleType name = "severity.type"> <restriction base = "NMTOKEN"> <enumeration value = "Warning"/> <enumeration value = "Error"/> </restriction> </simpleType> <!-- COMMON ATTRIBUTES and ATTRIBUTE GROUPS --> <attribute name = "id" type = "ID"/> <attribute name = "version" type = "tns:non-empty-string"/> <!-- COMMON ELEMENTS --> <element name = "PartyId"> <complexType> <simpleContent> <extension base = "tns:non-empty-string"> <attribute name = "type" type = "tns:non-empty-string"/> </extension> </simpleContent> </complexType> </element> <element name = "To"> <complexType> <sequence> <element ref = "tns:PartyId"/> <element name = "Role" type = "tns:non-empty-string" minOccurs = "0"/> </sequence> </complexType> </element> <element name = "From"> <complexType> <sequence> <element ref = "tns:PartyId"/> <element name = "Role" type = "tns:non-empty-string" minOccurs = "0"/> </sequence> </complexType> </element> <element name = "Description"> <complexType> <simpleContent> <extension base = "tns:non-empty-string"> <attribute ref = "xml:lang" use = "required"/> </extension> </simpleContent>

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 376 of 447

1

123456789

1011121314151617181920212223242526272829303132333435363738394041424344454647484950515253

23

Page 377: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

</complexType> </element> <element name = "RefToMessageId" type = "tns:non-empty-string"/> <element name = "Timestamp" type = "dateTime"/> <element name = "FileName" type = "tns:non-empty-string"/> <element name = "MessageRef" type = "tns:non-empty-string"/></schema>

The ebXML “Mutator” XSL stylesheet

The document below mutates an ebXML message Declaration ( described above, and validating to the above schemas, into a valid ebXML message envelope. This stylesheet MUST be used with XML content defined using the above schema. If a test writer wishes to define their own message declaration syntax, then they MUST provide their own mutator document with their test material in order to share it with other implementers of the IIC Test Framework.

To Be Added

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 377 of 447

1

1234567

8

910

111213141516

1718

1920212223242526272829303132

33

34

35

36

37

38

39

40

41

42

43

23

Page 378: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 378 of 447

1

1

2

3

4

5

6

7

23

Page 379: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

Appendix E (Normative) Message Store and Filter Result Schema

The Message Store content schema below is a representation of the ebXML message envelope and any XML payload content that accompanies the message. Although the schema for the Message Store is generic in design, allowing any XML packaging, envelope and payload to be stored; in order to use a particular executable test suite, the structure of the packaging, message envelope within the Message Store MUST have an “agreed upon” syntax [XMLSchema] by the testing community. By defining a standard packaging and envelope syntax, test case material is reusable by any IIC compliant Test Framework.

Below is a graphic representation of the “generic” IIC MessageStore schema, capable of storing XML message and payload content for any type of XML based messaging service. The “wildcard” content of the schema permits storage and query of any user-defined XML messaging content.

Figure 55 – Graphic representation of the “generic” IIC Test Framework Message Store schema

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 379 of 447

1

1

2

3456789

10

11121314

1516

1718

19

23

Page 380: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

A particular testing community (e.g. RNIF or ebXML) MAY define a particular schema for the message Packaging and message Content, thereby facilitating universal use of any executable test suites and test suite material based on the IIC Test Framework, and those packaging and content schemas. Below is the normative schema for the IIC Test Framework Message Store.

<?xml version = "1.0" encoding = "UTF-8"?><!--Generated by XML Authority. Conforms to w3c http://www.w3.org/2001/XMLSchema--><xsd:schema xmlns = "http://www.oasis-open.org/tc/ebxml-iic/testing/messageStore" targetNamespace = "http://www.oasis-open.org/tc/ebxml-iic/testing/messageStore" xmlns:xsd = "http://www.w3.org/2001/XMLSchema"> <!-- edited with XML Spy v4.3 U (http://www.xmlspy.com) by Michael Kass (NIST) --> <!-- edited with XML Spy v4.3 U (http://www.xmlspy.com) by Michael Kass (NIST) --> <!-- Copyright (C) The Organization for the Advancement of Structured Information Standards [OASIS] January 2002. All Rights Reserved.This document and translations of it may be copied and furnished to others, and derivative works that comment on or otherwise explain it or assist in its implementation may be prepared, copied, published and distributed, in whole or in part, without restriction of any kind, provided that the above copyright notice and this paragraph are included on all such copies and derivative works. However, this document itself may not be modified in any way, such as by removing the copyright notice or references to OASIS, except as needed for the purpose of developing OASIS specifications, in which case the procedures for copyrights defined in the OASIS Intellectual Property Rights document MUST be followed, or as required to translate it into languages other than English.The limited permissions granted above are perpetual and will not be revoked by OASIS or its successors or assigns.--> <xsd:element name = "MessageStore"> <xsd:complexType> <xsd:sequence> <xsd:element ref = "Message" minOccurs = "0" maxOccurs = "unbounded"/> <xsd:element ref = "Notification" minOccurs = "0" maxOccurs = "unbounded"/> </xsd:sequence> </xsd:complexType> </xsd:element> <xsd:simpleType name = "synch.type"> <xsd:restriction base = "xsd:string"> <xsd:enumeration value = "synchronous"/> <xsd:enumeration value = "asynchronous"/> </xsd:restriction> </xsd:simpleType> <xsd:simpleType name = "parameter.type"> <xsd:restriction base = "xsd:NMTOKEN"> <xsd:enumeration value = "string"/> <xsd:enumeration value = "namespace"/> </xsd:restriction> </xsd:simpleType>

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 380 of 447

1

1234

56789

10111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455

23

Page 381: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

<xsd:simpleType name = "notification.type"> <xsd:restriction base = "xsd:NMTOKEN"> <xsd:enumeration value = "message"/> <xsd:enumeration value = "errorURL"/> <xsd:enumeration value = "errorApp"/> </xsd:restriction> </xsd:simpleType> <xsd:element name = "Message"> <xsd:complexType> <xsd:sequence> <xsd:element ref = "Packaging" minOccurs = "0"/> <xsd:element ref = "Part" minOccurs = "0" maxOccurs = "unbounded"/> </xsd:sequence> <xsd:attribute name = "synchType" use = "required" type = "synch.type"/> <xsd:attribute name = "id" use = "required" type = "xsd:string"/> </xsd:complexType> </xsd:element> <xsd:element name = "Parameter"> <xsd:complexType> <xsd:sequence> <xsd:element name = "Name" type = "xsd:string"/> <xsd:element name = "Value" type = "xsd:string"/> </xsd:sequence> </xsd:complexType> </xsd:element> <xsd:element name = "Notification"> <xsd:complexType> <xsd:sequence> <xsd:element ref = "Packaging" minOccurs = "0"/> <xsd:element ref = "Part" minOccurs = "0" maxOccurs = "unbounded"/> </xsd:sequence> <xsd:attribute name = "notificationType" use = "required" type = "notification.type"/> <xsd:attribute name = "synchType" use = "required" type = "synch.type"/> <xsd:attribute name = "id" use = "required" type = "xsd:string"/> <xsd:attribute name = "serviceInstanceId" use = "optional" type = "xsd:string"/> <xsd:attribute name = "serviceName" use = "optional" type = "xsd:string"/> <xsd:attribute name = "reportingAction" use = "optional" type = "xsd:string"/> </xsd:complexType> </xsd:element> <xsd:element name = "Part"> <xsd:complexType> <xsd:sequence> <xsd:element ref = "Packaging" minOccurs = "0"/> <xsd:element ref = "Content" minOccurs = "0"/> </xsd:sequence> </xsd:complexType>

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 381 of 447

1

123456789

101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354

23

Page 382: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

</xsd:element> <xsd:element name = "Content"> <xsd:complexType> <xsd:sequence> <xsd:any namespace = "##other" processContents = "lax" minOccurs = "0" maxOccurs = "unbounded"/> </xsd:sequence> </xsd:complexType> </xsd:element> <xsd:element name = "Packaging"> <xsd:complexType> <xsd:sequence> <xsd:element ref = "Header"/> </xsd:sequence> </xsd:complexType> </xsd:element> <xsd:element name = "Header"> <xsd:complexType> <xsd:sequence> <xsd:element ref = "Name"/> <xsd:element ref = "Value"/> <xsd:element ref = "Attribute" minOccurs = "0" maxOccurs = "unbounded"/> </xsd:sequence> </xsd:complexType> </xsd:element> <xsd:element name = "Attribute"> <xsd:complexType> <xsd:sequence> <xsd:element ref = "Name"/> <xsd:element ref = "Value"/> </xsd:sequence> </xsd:complexType> </xsd:element> <xsd:element name = "Name" type = "xsd:string"/> <xsd:element name = "Value" type = "xsd:string"/></xsd:schema>

Below is a graphic representation and the IIC normative schema for representing ebXML MS v2.0 message envelope content within the Message Store. The Message Store schema permits ANY type of XML message content. This means that any “standard” XML format, such as SOAP or ebXML content ( with their own schemas used to represent the message envelope), may be used to define the structure of the message store Content element. Message envelope XML content stored in an IIC Test Driver Message Store MUST conform to this schema in order to execute the IIC MS 2.0 Conformance Test Suite using the IIC Test Framework V2.0.

The SOAP Envelope Content Sub-Schema used to represent message envelope content is identical to that defined in [SOAP].

The ebXML Content Sub-Schema used to represent ebXML message content in the Message Store is identical to that defined in [ebMS].

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 382 of 447

1

123456789

10111213141516171819202122232425262728293031323334353637

3839404142434445

464748

495051

52

23

Page 383: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

Figure 56 - Graphic representation of normative ebXML Message Content in the IIC Test Framework Message Store

<?xml version = "1.0" encoding = "UTF-8"?><!--Generated by XML Authority. Conforms to w3c http://www.w3.org/2001/XMLSchema--><xsd:schema xmlns = "http://www.oasis-open.org/tc/ebxml-iic/testing/messageStore" targetNamespace = "http://www.oasis-open.org/tc/ebxml-iic/testing/messageStore" xmlns:xsd = "http://www.w3.org/2001/XMLSchema"> <!-- edited with XML Spy v4.3 U (http://www.xmlspy.com) by Michael Kass (NIST) --> <!-- edited with XML Spy v4.3 U (http://www.xmlspy.com) by Michael Kass (NIST) --> <!-- Copyright (C) The Organization for the Advancement of Structured Information Standards [OASIS] January 2002. All Rights Reserved.This document and translations of it may be copied and furnished to others, and derivative works that comment on or otherwise explain it or assist in its implementation may be prepared, copied, published and distributed, in whole or in part, without restriction of any kind, provided that the above copyright notice and this paragraph are included on all such copies and derivative works. However, this document itself may not be modified in any way, such as by removing the copyright notice or references to OASIS, except as needed for the purpose of developing OASIS specifications, in which case the procedures for copyrights defined in the OASIS Intellectual Property Rights document MUST be followed, or as required to translate it into languages other than English.The limited permissions granted above are perpetual and will not be revoked by OASIS or its successors or assigns.--> <xsd:element name = "MessageStore"> <xsd:complexType> <xsd:sequence> <xsd:element ref = "Message" minOccurs = "0" maxOccurs = "unbounded"/> <xsd:element ref = "Notification" minOccurs = "0" maxOccurs = "unbounded"/> </xsd:sequence> </xsd:complexType> </xsd:element> <xsd:simpleType name = "synch.type"> <xsd:restriction base = "xsd:string"> <xsd:enumeration value = "synchronous"/> <xsd:enumeration value = "asynchronous"/> </xsd:restriction> </xsd:simpleType> <xsd:simpleType name = "parameter.type"> <xsd:restriction base = "xsd:NMTOKEN"> <xsd:enumeration value = "string"/> <xsd:enumeration value = "namespace"/>

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 383 of 447

1

1234

56789

101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354

23

Page 384: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

</xsd:restriction> </xsd:simpleType> <xsd:simpleType name = "notification.type"> <xsd:restriction base = "xsd:NMTOKEN"> <xsd:enumeration value = "message"/> <xsd:enumeration value = "errorURL"/> <xsd:enumeration value = "errorApp"/> </xsd:restriction> </xsd:simpleType> <xsd:element name = "Message"> <xsd:complexType> <xsd:sequence> <xsd:element ref = "Packaging" minOccurs = "0"/> <xsd:element ref = "Part" minOccurs = "0" maxOccurs = "unbounded"/> </xsd:sequence> <xsd:attribute name = "synchType" use = "required" type = "synch.type"/> <xsd:attribute name = "id" use = "required" type = "xsd:string"/> </xsd:complexType> </xsd:element> <xsd:element name = "Parameter"> <xsd:complexType> <xsd:sequence> <xsd:element name = "Name" type = "xsd:string"/> <xsd:element name = "Value" type = "xsd:string"/> </xsd:sequence> </xsd:complexType> </xsd:element> <xsd:element name = "Notification"> <xsd:complexType> <xsd:sequence> <xsd:element ref = "Packaging" minOccurs = "0"/> <xsd:element ref = "Part" minOccurs = "0" maxOccurs = "unbounded"/> </xsd:sequence> <xsd:attribute name = "notificationType" use = "required" type = "notification.type"/> <xsd:attribute name = "synchType" use = "required" type = "synch.type"/> <xsd:attribute name = "id" use = "required" type = "xsd:string"/> <xsd:attribute name = "serviceInstanceId" use = "optional" type = "xsd:string"/> <xsd:attribute name = "serviceName" use = "optional" type = "xsd:string"/> <xsd:attribute name = "reportingAction" use = "optional" type = "xsd:string"/> </xsd:complexType> </xsd:element> <xsd:element name = "Part"> <xsd:complexType> <xsd:sequence> <xsd:element ref = "Packaging" minOccurs = "0"/> <xsd:element ref = "Content" minOccurs = "0"/>

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 384 of 447

1

123456789

101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354

23

Page 385: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

</xsd:sequence> </xsd:complexType> </xsd:element> <xsd:element name = "Content"> <xsd:complexType> <xsd:sequence> <xsd:any namespace = "##other" processContents = "lax" minOccurs = "0" maxOccurs = "unbounded"/> </xsd:sequence> </xsd:complexType> </xsd:element> <xsd:element name = "Packaging"> <xsd:complexType> <xsd:sequence> <xsd:element ref = "Header"/> </xsd:sequence> </xsd:complexType> </xsd:element> <xsd:element name = "Header"> <xsd:complexType> <xsd:sequence> <xsd:element ref = "Name"/> <xsd:element ref = "Value"/> <xsd:element ref = "Attribute" minOccurs = "0" maxOccurs = "unbounded"/> </xsd:sequence> </xsd:complexType> </xsd:element> <xsd:element name = "Attribute"> <xsd:complexType> <xsd:sequence> <xsd:element ref = "Name"/> <xsd:element ref = "Value"/> </xsd:sequence> </xsd:complexType> </xsd:element> <xsd:element name = "Name" type = "xsd:string"/> <xsd:element name = "Value" type = "xsd:string"/></xsd:schema>

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 385 of 447

1

123456789

101112131415161718192021222324252627282930313233343536373839

4041424344454647484950

23

Page 386: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

Generic FilterResult Schema

The FilterResult is an XML fragment constructed from the result of an XPath query on the MessageStore. The content of a FilterResult document object constructed from the fragment is then queried in a TestAssertion test operation to verify or validate message content. Its content can be any element content, whose root element is <FilterResult>.

Figure 57 – Graphical representation of the FilterResult schema

<?xml version = "1.0" encoding = "UTF-8"?><!--Generated by XML Authority. Conforms to w3c http://www.w3.org/2001/XMLSchema--><xsd:schema xmlns = "http://www.oasis-open.org/tc/ebxml-iic/testing/messageStore" targetNamespace = "http://www.oasis-open.org/tc/ebxml-iic/testing/messageStore" xmlns:xsd = "http://www.w3.org/2001/XMLSchema"> <!-- edited with XML Spy v4.3 U (http://www.xmlspy.com) by Michael Kass (NIST) --> <!-- edited with XML Spy v4.3 U (http://www.xmlspy.com) by Michael Kass (NIST) --> <!-- Copyright (C) The Organization for the Advancement of Structured Information Standards [OASIS] January 2002. All Rights Reserved.This document and translations of it may be copied and furnished to others, and derivative works that comment on or otherwise explain it or assist in its implementation may be prepared, copied, published and distributed, in whole or in part, without restriction of any kind, provided that the above copyright notice and this paragraph are included on all such copies and derivative works. However, this document itself may not be modified in any way, such as by removing the copyright notice or references to OASIS, except as needed for the purpose of developing OASIS specifications, in which case the procedures for copyrights defined in the OASIS Intellectual Property Rights document MUST be followed, or as required to translate it into languages other than English.The limited permissions granted above are perpetual and will not be revoked by OASIS or its successors or assigns.--> <xsd:element name = "FilterResult"> <xsd:complexType> <xsd:sequence> <xsd:any namespace = "##other" processContents = "lax" minOccurs = "0" maxOccurs = "unbounded"/> </xsd:sequence> </xsd:complexType> </xsd:element>

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 386 of 447

1

12345

6789

10

11

1213

14151617181920212223242526272829303132333435363738394041424344454647484950

23

Page 387: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

</xsd:schema>

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 387 of 447

1

1

23456789

1011121314

23

Page 388: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

Appendix F (Normative) Test Report Schema

The Test Report Schema provides a uniform way for all IIC Test Framework implementations to report their testing results. It is essentially a “trace” of all test operations as logged by the Test Driver. Certain operations will return a “result” attribute if a Test Case execution ends due to failure of that testing operation, or because of any exception condition. The XML format of the Test Report permits HTML rendering by the Test Driver implementer to any format that visually conveys the meaning of the report in the best manner.

<?xml version = "1.0" encoding = "UTF-8"?><!--Generated by XML Authority. Conforms to w3c http://www.w3.org/2001/XMLSchema--><schema xmlns = "http://www.w3.org/2001/XMLSchema" targetNamespace = "http://www.oasis-open.org/tc/ebxml-iic/tests" xmlns:ebTest = "http://www.oasis-open.org/tc/ebxml-iic/tests" version = "1.0" elementFormDefault = "unqualified" attributeFormDefault = "unqualified"> <!-- edited with XMLSPY v2004 rel. 3 U (http://www.xmlspy.com) by Michael Kass (NIST) --> <!-- edited with XMLSPY v2004 rel. 4 U (http://www.xmlspy.com) by Mike Kass (Personal) --> <!--<import namespace="http://www.oasis-open.org/tc/ebxml-iic/tests/xmldsig" schemaLocation="xmldsig.xsd"/> --> <!-- <import namespace = "http://www.oasis-open.org/tc/ebxml-iic/tests/xmldsig" schemaLocation = "xmldsig.xsd"/> --> <!-- <import namespace = "http://www.oasis-open.org/tc/ebxml-iic/tests/mime" schemaLocation = "mime.xsd"/> --> <!-- edited with XML Spy v4.3 U (http://www.xmlspy.com) by Michael Kass (NIST) --> <!-- edited with XML Spy v4.3 U (http://www.xmlspy.com) by Michael Kass (NIST) --> <!-- edited with XML Spy v4.3 U (http://www.xmlspy.com) by Michael Kass (NIST) --> <!--

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 388 of 447

1

1

23456789

10111213141516171819202122232425262728293031323334353637383940414243444546474849

23

Page 389: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

Copyright (C) The Organization for the Advancement of Structured Information Standards [OASIS] January 2002. All Rights Reserved.This document and translations of it may be copied and furnished to others, and derivative works that comment on or otherwise explain it or assist in its implementation may be prepared, copied, published and distributed, in whole or in part, without restriction of any kind, provided that the above copyright notice and this paragraph are included on all such copies and derivative works. However, this document itself may not be modified in any way, such as by removing the copyright notice or references to OASIS, except as needed for the purpose of developing OASIS specifications, in which case the procedures for copyrights defined in the OASIS Intellectual Property Rights document MUST be followed, or as required to translate it into languages other than English.The limited permissions granted above are perpetual and will not be revoked by OASIS or its successors or assigns.--> <element name = "TestSuite"> <complexType> <sequence> <element ref = "ebTest:MetaData"/> <element ref = "ebTest:ConfigurationGroup" maxOccurs = "unbounded"/> <element ref = "ebTest:ThreadGroup" minOccurs = "0"/> <element ref = "ebTest:TestServiceConfigurator" minOccurs = "0"/> <element ref = "ebTest:Message" minOccurs = "0" maxOccurs = "unbounded"/> <element ref = "ebTest:TestCase" maxOccurs = "unbounded"/> </sequence> <attribute name = "configurationGroupRef" use = "required" type = "IDREF"/> </complexType> </element> <element name = "MetaData"> <complexType> <sequence> <element ref = "ebTest:Title"/> <element ref = "ebTest:Description"/> <element ref = "ebTest:Version"/> <element ref = "ebTest:Maintainer"/> <element ref = "ebTest:Location"/> <element ref = "ebTest:PublishDate"/> <element ref = "ebTest:Status"/> </sequence> </complexType> </element> <element name = "Description" type = "ebTest:non-empty-string"/> <element name = "Version" type = "ebTest:non-empty-string"/> <element name = "Maintainer" type = "ebTest:non-empty-string"/> <element name = "Location" type = "anyURI"/> <element name = "PublishDate" type = "ebTest:non-empty-string"/> <element name = "Status" type = "ebTest:non-empty-string"/> <element name = "TestCase"> <complexType> <sequence> <element ref = "ebTest:ThreadGroup" minOccurs = "0"/>

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 389 of 447

1

123456789

1011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556

23

Page 390: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

<choice maxOccurs = "unbounded"> <element ref = "ebTest:SetParameter"/> <element ref = "ebTest:SetXPathParameter"/> <element ref = "ebTest:LockParameter"/> <element ref = "ebTest:UnlockParameter"/> <element ref = "ebTest:PutMessage"/> <element ref = "ebTest:Initiator"/> <element ref = "ebTest:GetMessage"/> <element ref = "ebTest:TestAssertion"/> <element ref = "ebTest:ThreadRef"/> <element ref = "ebTest:Split"/> <element ref = "ebTest:Join"/> <element ref = "ebTest:Sleep"/> </choice> <element ref = "ebTest:Result"/> </sequence> <attribute name = "id" use = "required" type = "ID"/> <attribute name = "description" use = "required" type = "string"/> <attribute name = "author" use = "optional" type = "string"/> <attribute name = "version" use = "optional" type = "string"/> <attribute name = "requirementReferenceId" use = "optional" type = "anyURI"/> <attribute name = "configurationGroupRef" use = "optional" type = "IDREF"/> </complexType> </element> <element name = "ConfigurationGroup"> <complexType> <sequence> <element ref = "ebTest:Mode"/> <element ref = "ebTest:StepDuration"/> <element ref = "ebTest:Transport"/> <element ref = "ebTest:Envelope"/> <element ref = "ebTest:StoreAttachments"/> <element ref = "ebTest:ValidationType"/> <element ref = "ebTest:MutatorType"/> <element ref = "ebTest:XMLDSIG" minOccurs = "0"/> <element ref = "ebTest:SetParameter" minOccurs = "0" maxOccurs = "unbounded"/> </sequence> <attribute name = "id" use = "required" type = "ID"/> </complexType> </element> <element name = "CPAId" type = "ebTest:non-empty-string"/> <element name = "Mode" type = "ebTest:mode.type"/> <element name = "SenderParty" type = "anyURI"/> <element name = "ReceiverParty" type = "anyURI"/> <element name = "Service" type = "anyURI"/> <element name = "Action" type = "ebTest:non-empty-string"/> <element name = "StepDuration" type = "integer"/> <element name = "Transport" type = "ebTest:transport.type"/> <element name = "Envelope" type = "ebTest:non-empty-string"/> <simpleType name = "mode.type">

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 390 of 447

1

123456789

1011121314151617181920212223242526272829303132333435363738394041424344454647484950515253

23

Page 391: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

<restriction base = "NMTOKEN"> <enumeration value = "local-service"/> <enumeration value = "remote-service"/> <enumeration value = "connection"/> </restriction> </simpleType> <simpleType name = "mimeHeader.type"> <restriction base = "NMTOKEN"> <enumeration value = "MIMEMessageContent-Type"/> <enumeration value = "MIMEMessageStart"/> <enumeration value = "Content-Type"/> <enumeration value = "start"/> <enumeration value = "charset"/> <enumeration value = "type"/> <enumeration value = "wildcard"/> </restriction> </simpleType> <simpleType name = "content.type"> <restriction base = "NMTOKEN"> <enumeration value = "XML"/> <enumeration value = "dateTime"/> <enumeration value = "URI"/> <enumeration value = "signature"/> <enumeration value = "XPointer"/> </restriction> </simpleType> <simpleType name = "method.type"> <restriction base = "NMTOKEN"> <enumeration value = "xpath"/> <enumeration value = "md5"/> </restriction> </simpleType> <simpleType name = "messageContext.type"> <restriction base = "NMTOKEN"> <enumeration value = "true"/> <enumeration value = "false"/> </restriction> </simpleType> <simpleType name = "requirement.type"> <restriction base = "NMTOKEN"> <enumeration value = "required"/> <enumeration value = "stronglyrecommended"/> <enumeration value = "recommended"/> <enumeration value = "optional"/> </restriction> </simpleType> <simpleType name = "non-empty-string"> <restriction base = "string"> <minLength value = "1"/> </restriction> </simpleType> <simpleType name = "configAction.type">

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 391 of 447

1

123456789

10111213141516171819202122232425262728293031323334353637383940414243444546474849505152

23

Page 392: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

<restriction base = "NMTOKEN"> <enumeration value = "query"/> <enumeration value = "replace"/> </restriction> </simpleType> <simpleType name = "action.type"> <restriction base = "NMTOKEN"> <enumeration value = "reset"/> <enumeration value = "modify"/> </restriction> </simpleType> <simpleType name = "configItem.type"> <restriction base = "NMTOKEN"/> </simpleType> <simpleType name = "parameter.type"> <restriction base = "NMTOKEN"> <enumeration value = "string"/> <enumeration value = "parameter"/> </restriction> </simpleType> <simpleType name = "connectivePredicate.type"> <restriction base = "NMTOKEN"> <enumeration value = "and"/> <enumeration value = "or"/> </restriction> </simpleType> <simpleType name = "thread.type"> <restriction base = "NMTOKEN"> <enumeration value = "synchronous"/> <enumeration value = "asynchronous"/> </restriction> </simpleType> <simpleType name = "matchResult.type"> <restriction base = "NMTOKEN"> <enumeration value = "pass"/> <enumeration value = "fail"/> </restriction> </simpleType> <simpleType name = "if.type"> <restriction base = "NMTOKEN"> <enumeration value = "andif"/> <enumeration value = "orif"/> </restriction> </simpleType> <simpleType name = "split.type"> <restriction base = "NMTOKEN"> <enumeration value = "andsplit"/> <enumeration value = "orsplit"/> </restriction> </simpleType> <simpleType name = "join.type"> <restriction base = "NMTOKEN">

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 392 of 447

1

123456789

10111213141516171819202122232425262728293031323334353637383940414243444546474849505152

23

Page 393: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

<enumeration value = "andjoin"/> <enumeration value = "orjoin"/> </restriction> </simpleType> <simpleType name = "serviceMode.type"> <restriction base = "NMTOKEN"> <enumeration value = "loop"/> <enumeration value = "local-reporting"/> <enumeration value = "remote-reporting"/> </restriction> </simpleType> <simpleType name = "time.type"> <restriction base = "NMTOKEN"> <enumeration value = "timeToAcknowlegeReceipt"/> <enumeration value = "timeToAcknowledgeAcceptance"/> <enumeration value = "timeToPerform"/> <enumeration value = "other"/> </restriction> </simpleType> <simpleType name = "operator.type"> <restriction base = "NMTOKEN"> <enumeration value = "equal"/> <enumeration value = "lessThan"/> <enumeration value = "lessThanOrEqual"/> <enumeration value = "greaterThan"/> <enumeration value = "greaterThanOrEqual"/> </restriction> </simpleType> <simpleType name = "assertionExit.type"> <restriction base = "NMTOKEN"> <enumeration value = "pass"/> <enumeration value = "fail"/> <enumeration value = "undetermined"/> </restriction> </simpleType> <simpleType name = "preconditionExit.type"> <restriction base = "NMTOKEN"> <enumeration value = "undetermined"/> </restriction> </simpleType> <simpleType name = "scope.type"> <restriction base = "NMTOKEN"> <enumeration value = "self"/> <enumeration value = "selfAndDescendents"/> <enumeration value = "parent"/> <enumeration value = "global"/> </restriction> </simpleType> <simpleType name = "transport.type"> <restriction base = "NMTOKEN"> <enumeration value = "FTP"/> <enumeration value = "SMTP"/>

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 393 of 447

1

123456789

10111213141516171819202122232425262728293031323334353637383940414243444546474849505152

23

Page 394: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

<enumeration value = "HTTP"/> <enumeration value = "JMS"/> </restriction> </simpleType> <simpleType name = "envelope.type"> <restriction base = "NMTOKEN"> <enumeration value = "SOAP"/> <enumeration value = "ebXML"/> <enumeration value = "RNIF"/> <enumeration value = "JMS"/> </restriction> </simpleType> <simpleType name = "exception.type"> <restriction base = "NMTOKEN"> <enumeration value = "undetermined"/> </restriction> </simpleType> <simpleType name = "exitResult.type"> <restriction base = "NMTOKEN"> <enumeration value = "pass"/> <enumeration value = "fail"/> </restriction> </simpleType> <simpleType name = "validation.type"> <restriction base = "NMTOKEN"> <enumeration value = "XMLSchema"/> <enumeration value = "Schematron"/> </restriction> </simpleType> <simpleType name = "mutator.type"> <restriction base = "NMTOKEN"> <enumeration value = "XSLT"/> <enumeration value = "XUpdate"/> </restriction> </simpleType> <simpleType name = "keystore.type"> <restriction base = "NMTOKEN"> <enumeration value = "jks"/> <enumeration value = "pkcs12"/> </restriction> </simpleType> <simpleType name = "lock.type"> <restriction base = "NMTOKEN"> <enumeration value = "readOnly"/> <enumeration value = "readWrite"/> </restriction> </simpleType> <element name = "MessageExpression"> <complexType> <sequence> <element ref = "ebTest:ErrorMessage"/> </sequence>

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 394 of 447

1

123456789

10111213141516171819202122232425262728293031323334353637383940414243444546474849505152

23

Page 395: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

</complexType> </element> <element name = "ErrorMessage" type = "ebTest:non-empty-string"/> <element name = "PutMessage"> <complexType> <sequence> <element ref = "ebTest:Packaging" minOccurs = "0"/> <element ref = "ebTest:SetMessage"/> <element ref = "ebTest:SetPayload" minOccurs = "0" maxOccurs = "unbounded"/> </sequence> <attribute name = "description" use = "required" type = "string"/> <attribute name = "repeatWithSameContext" use = "optional" type = "integer"/> <attribute name = "repeatWithNewContext" use = "optional" type = "integer"/> </complexType> </element> <element name = "GetMessage"> <complexType> <sequence> <element ref = "ebTest:Filter" maxOccurs = "unbounded"/> <element ref = "ebTest:Result" minOccurs = "0"/> </sequence> <attribute name = "description" use = "required" type = "string"/> <attribute name = "mask" use = "optional" type = "boolean"/> </complexType> </element> <element name = "Filter"> <complexType mixed = "true"> <choice> <element ref = "ebTest:Result" minOccurs = "0"/> </choice> <attribute name = "stepDuration" use = "optional" type = "integer"/> </complexType> </element> <element name = "SetMessage"> <complexType> <sequence> <element ref = "ebTest:Packaging" minOccurs = "0"/> <element ref = "ebTest:Content"/> <element ref = "ebTest:Mutator" minOccurs = "0"/> <element ref = "ebTest:DSignEnvelope" minOccurs = "0" maxOccurs = "unbounded"/> </sequence> <attribute name = "description" use = "optional" type = "string"/> </complexType> </element> <element name = "SetPayload"> <complexType> <sequence> <element ref = "ebTest:Packaging"/> <element ref = "ebTest:Content"/>

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 395 of 447

1

123456789

1011121314151617181920212223242526272829303132333435363738394041424344454647484950515253

23

Page 396: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

<element ref = "ebTest:Mutator" minOccurs = "0"/> <element ref = "ebTest:DSignPayload" minOccurs = "0"/> </sequence> <attribute name = "description" use = "optional" type = "string"/> </complexType> </element> <element name = "TestAssertion"> <complexType> <sequence> <choice> <element ref = "ebTest:VerifyContent"/> <element ref = "ebTest:ValidateContent"/> <element ref = "ebTest:VerifyTimeDifference"/> <element ref = "ebTest:VerifyParameter"/> </choice> <element ref = "ebTest:WhenTrue" minOccurs = "0"/> <element ref = "ebTest:WhenFalse" minOccurs = "0"/> </sequence> <attribute name = "description" use = "required" type = "string"/> </complexType> </element> <element name = "MimeHeader" type = "ebTest:mimeHeader.type"/> <element name = "MimeHeaderValue" type = "ebTest:non-empty-string"/> <element name = "Content-Location" type = "ebTest:non-empty-string"/> <element name = "Index" type = "integer"/> <element name = "FileURI" type = "anyURI"/> <element name = "PayloadRef" type = "ebTest:non-empty-string"/> <element name = "Content-ID" type = "ebTest:non-empty-string"/> <element name = "MessageDeclaration"> <complexType> <sequence> <any namespace = "##other" processContents = "lax" minOccurs = "0" maxOccurs = "unbounded"/> </sequence> </complexType> </element> <element name = "ValidateContent"> <complexType mixed = "true"> <choice> <element ref = "ebTest:Result" minOccurs = "0"/> </choice> <attribute name = "contentType" use = "required" type = "ebTest:content.type"/> <attribute name = "schemaLocation" use = "optional" type = "anyURI"/> </complexType> </element> <element name = "VerifyContent"> <complexType mixed = "true"> <choice> <element ref = "ebTest:Result" minOccurs = "0"/> </choice> </complexType> </element>

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 396 of 447

1

123456789

1011121314151617181920212223242526272829303132333435363738394041424344454647484950515253

23

Page 397: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

<element name = "Message"> <complexType> <sequence> <any namespace = "##other" processContents = "lax" minOccurs = "0" maxOccurs = "unbounded"/> </sequence> <attribute name = "id" use = "required" type = "ID"/> </complexType> </element> <element name = "SetParameter"> <complexType> <sequence> <element ref = "ebTest:Name"/> <choice> <element ref = "ebTest:Value"/> <element ref = "ebTest:ParameterRef"/> </choice> <element ref = "ebTest:Result" minOccurs = "0"/> </sequence> <attribute name = "scope" use = "optional" type = "ebTest:scope.type"/> <attribute name = "lockType" use = "optional" type = "ebTest:lock.type"/> </complexType> </element> <element name = "VerifyParameter"> <complexType> <sequence> <element ref = "ebTest:Name"/> <choice> <element ref = "ebTest:Value"/> <element ref = "ebTest:ParameterRef"/> </choice> <element ref = "ebTest:Result" minOccurs = "0"/> </sequence> </complexType> </element> <element name = "Mutator"> <complexType> <sequence> <element ref = "ebTest:FileURI"/> <element ref = "ebTest:Result" minOccurs = "0"/> </sequence> </complexType> </element> <element name = "XSL" type = "ebTest:non-empty-string"/> <element name = "XUpdate" type = "ebTest:non-empty-string"/> <element name = "BooleanClause"> <complexType> <attribute name = "booleanPredicate" use = "required" type = "boolean"/> </complexType> </element>

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 397 of 447

1

123456789

1011121314151617181920212223242526272829303132333435363738394041424344454647484950515253

23

Page 398: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

<element name = "Declaration"> <complexType> <sequence> <any namespace = "##other" processContents = "lax" minOccurs = "0" maxOccurs = "unbounded"/> </sequence> </complexType> </element> <element name = "Thread"> <complexType> <choice maxOccurs = "unbounded"> <element ref = "ebTest:SetParameter"/> <element ref = "ebTest:SetXPathParameter"/> <element ref = "ebTest:LockParameter"/> <element ref = "ebTest:UnlockParameter"/> <element ref = "ebTest:PutMessage"/> <element ref = "ebTest:Initiator"/> <element ref = "ebTest:GetMessage"/> <element ref = "ebTest:TestAssertion"/> <element ref = "ebTest:ThreadRef"/> <element ref = "ebTest:Split"/> <element ref = "ebTest:Join"/> <element ref = "ebTest:Sleep"/> </choice> <attribute name = "name" use = "required" type = "ID"/> <attribute name = "description" use = "optional" type = "string"/> </complexType> </element> <element name = "ThreadRef"> <complexType> <sequence> <element ref = "ebTest:Result" minOccurs = "0"/> </sequence> <attribute name = "nameRef" use = "required" type = "IDREF"/> <attribute name = "instanceId" use = "optional" type = "ID"/> <attribute name = "configurationGroupRef" use = "optional" type = "IDREF"/> <attribute name = "loop" use = "optional" type = "string"/> </complexType> </element> <element name = "Pass"> <complexType/> </element> <element name = "Fail"> <complexType/> </element> <element name = "ThreadGroup"> <complexType> <sequence> <element ref = "ebTest:Thread" maxOccurs = "unbounded"/> </sequence> </complexType> </element>

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 398 of 447

1

123456789

1011121314151617181920212223242526272829303132333435363738394041424344454647484950515253

23

Page 399: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

<element name = "Sleep" type = "integer"/> <element name = "Split"> <complexType> <sequence> <element ref = "ebTest:ThreadRef" maxOccurs = "unbounded"/> <element ref = "ebTest:Result" minOccurs = "0"/> </sequence> </complexType> </element> <element name = "Join"> <complexType> <sequence> <element ref = "ebTest:ThreadRef" maxOccurs = "unbounded"/> <element ref = "ebTest:Result" minOccurs = "0"/> </sequence> <attribute name = "joinType" use = "optional" type = "ebTest:join.type"/> </complexType> </element> <element name = "Initiator"> <complexType> <sequence> <element ref = "ebTest:InitiateMessage"/> <element ref = "ebTest:InitiatePayload" minOccurs = "0"/> <element ref = "ebTest:Result" minOccurs = "0"/> </sequence> <attribute name = "description" use = "required" type = "string"/> </complexType> </element> <element name = "TestServiceConfigurator"> <complexType> <sequence> <element ref = "ebTest:ServiceMode"/> <element ref = "ebTest:ResponseURL"/> <element ref = "ebTest:NotificationURL"/> <element ref = "ebTest:PayloadDigests" minOccurs = "0"/> </sequence> </complexType> </element> <element name = "MessageRef" type = "IDREF"/> <element name = "ErrorURL" type = "anyURI"/> <element name = "NotificationURL" type = "anyURI"/> <element name = "SetXPathParameter"> <complexType> <sequence> <element ref = "ebTest:Name"/> <element ref = "ebTest:Expression"/> <element ref = "ebTest:Result" minOccurs = "0"/> </sequence> <attribute name = "scope" use = "optional" type = "ebTest:scope.type"/> <attribute name = "lockType" use = "optional" type = "ebTest:lock.type"/>

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 399 of 447

1

123456789

1011121314151617181920212223242526272829303132333435363738394041424344454647484950515253

23

Page 400: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

</complexType> </element> <element name = "ResponseURL" type = "anyURI"/> <element name = "StoreAttachments" type = "boolean"/> <element name = "OperationMode" type = "string"/> <element name = "PayloadDigests"> <complexType> <sequence> <element ref = "ebTest:Payload" maxOccurs = "unbounded"/> </sequence> </complexType> </element> <element name = "ServiceMode" type = "ebTest:serviceMode.type"/> <element name = "Transaction"> <complexType> <sequence maxOccurs = "unbounded"> <choice maxOccurs = "unbounded"> <element ref = "ebTest:PutMessage"/> <element ref = "ebTest:Initiator"/> </choice> <element ref = "ebTest:GetMessage" minOccurs = "0" maxOccurs = "unbounded"/> </sequence> <attribute name = "timeToPerform" use = "optional" type = "duration"/> </complexType> </element> <element name = "VerifyTimeDifference"> <complexType> <sequence> <element ref = "ebTest:ParamName"/> <element ref = "ebTest:ParamName"/> <element ref = "ebTest:Operator"/> <element ref = "ebTest:Difference"/> <element ref = "ebTest:Result" minOccurs = "0"/> </sequence> </complexType> </element> <element name = "TimeToAcknowledgeReceipt"> <complexType> <sequence> <element ref = "ebTest:XPathExpression"/> </sequence> </complexType> </element> <element name = "TimeToAcknowledgeAcceptance"> <complexType> <sequence> <element ref = "ebTest:XPathExpression"/> </sequence> </complexType> </element> <element name = "Difference" type = "duration"/> <element name = "Operator" type = "ebTest:operator.type"/>

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 400 of 447

1

123456789

1011121314151617181920212223242526272829303132333435363738394041424344454647484950515253

23

Page 401: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

<element name = "XPathExpression" type = "ebTest:non-empty-string"/> <element name = "Continue"> <complexType/> </element> <element name = "ParamName" type = "ebTest:non-empty-string"/> <element name = "VerifyTimeToPerform"> <complexType> <sequence> <element ref = "ebTest:ThreadName" maxOccurs = "unbounded"/> </sequence> <attribute name = "maxTime" use = "required" type = "duration"/> </complexType> </element> <element name = "ThreadName" type = "IDREF"/> <element name = "Header"> <complexType> <sequence> <element ref = "ebTest:Name"/> <element ref = "ebTest:Value" minOccurs = "0"/> <element ref = "ebTest:Attribute" minOccurs = "0" maxOccurs = "unbounded"/> </sequence> </complexType> </element> <element name = "Name" type = "ebTest:non-empty-string"/> <element name = "Value" type = "ebTest:non-empty-string"/> <element name = "Packaging"> <complexType> <sequence> <element ref = "ebTest:Header" minOccurs = "0" maxOccurs = "unbounded"/> <element ref = "ebTest:Result" minOccurs = "0"/> </sequence> </complexType> </element> <element name = "Content"> <complexType> <sequence> <choice> <element ref = "ebTest:Declaration"/> <element ref = "ebTest:FileURI"/> <element ref = "ebTest:MessageRef"/> </choice> <element ref = "ebTest:Result" minOccurs = "0"/> </sequence> </complexType> </element> <element name = "Attribute"> <complexType> <sequence> <element ref = "ebTest:Name"/> <element ref = "ebTest:Value"/> </sequence>

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 401 of 447

1

123456789

1011121314151617181920212223242526272829303132333435363738394041424344454647484950515253

23

Page 402: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

</complexType> </element> <element name = "ExitResult" type = "string"/> <element name = "ValidationType" type = "ebTest:validation.type"/> <element name = "MutatorType" type = "ebTest:mutator.type"/> <element name = "Payload"> <complexType> <sequence> <element ref = "ebTest:Digest"/> <element ref = "ebTest:Id"/> </sequence> </complexType> </element> <element name = "Digest" type = "ebTest:non-empty-string"/> <element name = "Id" type = "ebTest:non-empty-string"/> <element name = "ParameterRef" type = "ebTest:non-empty-string"/> <element name = "Expression" type = "ebTest:non-empty-string"/> <element name = "WhenTrue"> <complexType> <choice maxOccurs = "unbounded"> <element ref = "ebTest:SetParameter"/> <element ref = "ebTest:SetXPathParameter"/> <element ref = "ebTest:PutMessage"/> <element ref = "ebTest:Initiator"/> <element ref = "ebTest:GetMessage"/> <element ref = "ebTest:TestAssertion"/> <element ref = "ebTest:Continue"/> <element ref = "ebTest:ThreadRef"/> <element ref = "ebTest:Split"/> <element ref = "ebTest:Join"/> <element ref = "ebTest:Sleep"/> <element ref = "ebTest:Exit"/> <element ref = "ebTest:Return"/> </choice> </complexType> </element> <element name = "WhenFalse"> <complexType> <choice maxOccurs = "unbounded"> <element ref = "ebTest:SetParameter"/> <element ref = "ebTest:SetXPathParameter"/> <element ref = "ebTest:PutMessage"/> <element ref = "ebTest:Initiator"/> <element ref = "ebTest:GetMessage"/> <element ref = "ebTest:TestAssertion"/> <element ref = "ebTest:Continue"/> <element ref = "ebTest:ThreadRef"/> <element ref = "ebTest:Split"/> <element ref = "ebTest:Join"/> <element ref = "ebTest:Sleep"/> <element ref = "ebTest:Exit"/> <element ref = "ebTest:Return"/>

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 402 of 447

1

123456789

10111213141516171819202122232425262728293031323334353637383940414243444546474849505152

23

Page 403: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

</choice> </complexType> </element> <element name = "Exit"> <complexType> <simpleContent> <extension base = "ebTest:assertionExit.type"> <attribute name = "description" use = "required" type = "string"/> </extension> </simpleContent> </complexType> </element> <element name = "XMLDSIG"> <complexType> <sequence> <element ref = "ebTest:KeystoreFileURI"/> <element ref = "ebTest:KeystoreType"/> <element ref = "ebTest:KeystorePassword"/> <element ref = "ebTest:KeystoreAlias"/> <element ref = "ebTest:KeystoreAliasPassword" minOccurs = "0"/> </sequence> </complexType> </element> <element name = "Title" type = "string"/> <element name = "DSignEnvelope"> <complexType> <sequence> <element ref = "ebTest:CanonocalizationMethodAlgorithm" minOccurs = "0"/> <element ref = "ebTest:DigestMethodAlgorithm" minOccurs = "0"/> <element ref = "ebTest:SignatureMethodAlgorighm" minOccurs = "0"/> <element ref = "ebTest:TransformAlgorithm" minOccurs = "0"/> <element ref = "ebTest:Transform" minOccurs = "0"/> <element ref = "ebTest:ReferenceURI" minOccurs = "0"/> <element ref = "ebTest:Result" minOccurs = "0"/> </sequence> </complexType> </element> <element name = "DSignPayload"> <complexType> <sequence> <element ref = "ebTest:CanonocalizationMethodAlgorithm" minOccurs = "0"/> <element ref = "ebTest:DigestMethodAlgorithm" minOccurs = "0"/> <element ref = "ebTest:SignatureMethodAlgorighm" minOccurs = "0"/> <element ref = "ebTest:TransformAlgorithm" minOccurs = "0"/> <element ref = "ebTest:Transform" minOccurs = "0"/> <element ref = "ebTest:ReferenceURI" minOccurs = "0"/> <element ref = "ebTest:Result" minOccurs = "0"/> </sequence> </complexType>

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 403 of 447

1

123456789

101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354

23

Page 404: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

</element> <element name = "Return"> <complexType/> </element> <element name = "KeystoreFileURI" type = "anyURI"/> <element name = "KeystoreType" type = "ebTest:keystore.type"/> <element name = "KeystorePassword" type = "string"/> <element name = "KeystoreAlias" type = "string"/> <element name = "KeystoreAliasPassword" type = "string"/> <element name = "CanonocalizationMethodAlgorithm" type = "anyURI"/> <element name = "DigestMethod" type = "string"/> <element name = "SignatureMethodAlgorighm" type = "anyURI"/> <element name = "ReferenceURI" type = "anyURI"/> <element name = "TransformAlgorithm" type = "anyURI"/> <element name = "Transform" type = "string"/> <element name = "DigestMethodAlgorithm" type = "anyURI"/> <element name = "SetMessageType" type = "string"/> <element name = "InitiateMessage"> <complexType> <sequence> <element ref = "ebTest:Content"/> <element ref = "ebTest:Mutator" minOccurs = "0"/> <element ref = "ebTest:Result" minOccurs = "0"/> </sequence> </complexType> </element> <element name = "InitiatePayload"> <complexType> <sequence> <element ref = "ebTest:Packaging" minOccurs = "0"/> <element ref = "ebTest:Content"/> <element ref = "ebTest:Mutator" minOccurs = "0"/> <element ref = "ebTest:Result" minOccurs = "0"/> </sequence> </complexType> </element> <element name = "Result"> <complexType> <sequence> <element ref = "ebTest:ExitResult"/> <element ref = "ebTest:Description"/> </sequence> </complexType> </element> <element name = "LockParameter"> <complexType> <sequence> <element ref = "ebTest:Name"/> <element ref = "ebTest:Result" minOccurs = "0"/> </sequence> <attribute name = "lockType" use = "required" type = "ebTest:lock.type"/> </complexType>

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 404 of 447

1

123456789

1011121314151617181920212223242526272829303132333435363738394041424344454647484950515253

23

Page 405: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

</element> <element name = "UnlockParameter"> <complexType> <sequence> <element ref = "ebTest:Name"/> <element ref = "ebTest:Result" minOccurs = "0"/> </sequence> </complexType> </element></schema><?xml version = "1.0" encoding = "UTF-8"?><!--Generated by XML Authority. Conforms to w3c http://www.w3.org/2001/XMLSchema--><schema xmlns = "http://www.w3.org/2001/XMLSchema" targetNamespace = "http://www.oasis-open.org/tc/ebxml-iic/tests" xmlns:ebTest = "http://www.oasis-open.org/tc/ebxml-iic/tests" version = "1.0" elementFormDefault = "unqualified" attributeFormDefault = "unqualified"> <!-- edited with XMLSPY v2004 rel. 3 U (http://www.xmlspy.com) by Michael Kass (NIST) --> <!-- edited with XMLSPY v2004 rel. 4 U (http://www.xmlspy.com) by Mike Kass (Personal) --> <!--<import namespace="http://www.oasis-open.org/tc/ebxml-iic/tests/xmldsig" schemaLocation="xmldsig.xsd"/> --> <!-- <import namespace = "http://www.oasis-open.org/tc/ebxml-iic/tests/xmldsig" schemaLocation = "xmldsig.xsd"/> --> <!-- <import namespace = "http://www.oasis-open.org/tc/ebxml-iic/tests/mime" schemaLocation = "mime.xsd"/> --> <!-- edited with XML Spy v4.3 U (http://www.xmlspy.com) by Michael Kass (NIST) --> <!-- edited with XML Spy v4.3 U (http://www.xmlspy.com) by Michael Kass (NIST) --> <!-- edited with XML Spy v4.3 U (http://www.xmlspy.com) by Michael Kass (NIST) --> <!-- Copyright (C) The Organization for the Advancement of Structured Information Standards [OASIS] January 2002. All Rights Reserved.

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 405 of 447

1

123456789

101112131415161718192021222324252627282930313233343536373839404142434445464748495051

23

Page 406: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

This document and translations of it may be copied and furnished to others, and derivative works that comment on or otherwise explain it or assist in its implementation may be prepared, copied, published and distributed, in whole or in part, without restriction of any kind, provided that the above copyright notice and this paragraph are included on all such copies and derivative works. However, this document itself may not be modified in any way, such as by removing the copyright notice or references to OASIS, except as needed for the purpose of developing OASIS specifications, in which case the procedures for copyrights defined in the OASIS Intellectual Property Rights document MUST be followed, or as required to translate it into languages other than English.The limited permissions granted above are perpetual and will not be revoked by OASIS or its successors or assigns.--> <element name = "TestSuite"> <complexType> <sequence> <element ref = "ebTest:MetaData"/> <element ref = "ebTest:ConfigurationGroup" maxOccurs = "unbounded"/> <element ref = "ebTest:ThreadGroup" minOccurs = "0"/> <element ref = "ebTest:TestServiceConfigurator" minOccurs = "0"/> <element ref = "ebTest:Message" minOccurs = "0" maxOccurs = "unbounded"/> <element ref = "ebTest:TestCase" maxOccurs = "unbounded"/> </sequence> <attribute name = "configurationGroupRef" use = "required" type = "IDREF"/> </complexType> </element> <element name = "MetaData"> <complexType> <sequence> <element ref = "ebTest:Title"/> <element ref = "ebTest:Description"/> <element ref = "ebTest:Version"/> <element ref = "ebTest:Maintainer"/> <element ref = "ebTest:Location"/> <element ref = "ebTest:PublishDate"/> <element ref = "ebTest:Status"/> </sequence> </complexType> </element> <element name = "Description" type = "ebTest:non-empty-string"/> <element name = "Version" type = "ebTest:non-empty-string"/> <element name = "Maintainer" type = "ebTest:non-empty-string"/> <element name = "Location" type = "anyURI"/> <element name = "PublishDate" type = "ebTest:non-empty-string"/> <element name = "Status" type = "ebTest:non-empty-string"/> <element name = "TestCase"> <complexType> <sequence> <element ref = "ebTest:ThreadGroup" minOccurs = "0"/> <choice maxOccurs = "unbounded"> <element ref = "ebTest:SetParameter"/> <element ref = "ebTest:SetXPathParameter"/>

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 406 of 447

1

123456789

1011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556

23

Page 407: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

<element ref = "ebTest:LockParameter"/> <element ref = "ebTest:UnlockParameter"/> <element ref = "ebTest:PutMessage"/> <element ref = "ebTest:Initiator"/> <element ref = "ebTest:GetMessage"/> <element ref = "ebTest:TestAssertion"/> <element ref = "ebTest:ThreadRef"/> <element ref = "ebTest:Split"/> <element ref = "ebTest:Join"/> <element ref = "ebTest:Sleep"/> </choice> <element ref = "ebTest:Result"/> </sequence> <attribute name = "id" use = "required" type = "ID"/> <attribute name = "description" use = "required" type = "string"/> <attribute name = "author" use = "optional" type = "string"/> <attribute name = "version" use = "optional" type = "string"/> <attribute name = "requirementReferenceId" use = "optional" type = "anyURI"/> <attribute name = "configurationGroupRef" use = "optional" type = "IDREF"/> </complexType> </element> <element name = "ConfigurationGroup"> <complexType> <sequence> <element ref = "ebTest:Mode"/> <element ref = "ebTest:StepDuration"/> <element ref = "ebTest:Transport"/> <element ref = "ebTest:Envelope"/> <element ref = "ebTest:StoreAttachments"/> <element ref = "ebTest:ValidationType"/> <element ref = "ebTest:MutatorType"/> <element ref = "ebTest:XMLDSIG" minOccurs = "0"/> <element ref = "ebTest:SetParameter" minOccurs = "0" maxOccurs = "unbounded"/> </sequence> <attribute name = "id" use = "required" type = "ID"/> </complexType> </element> <element name = "CPAId" type = "ebTest:non-empty-string"/> <element name = "Mode" type = "ebTest:mode.type"/> <element name = "SenderParty" type = "anyURI"/> <element name = "ReceiverParty" type = "anyURI"/> <element name = "Service" type = "anyURI"/> <element name = "Action" type = "ebTest:non-empty-string"/> <element name = "StepDuration" type = "integer"/> <element name = "Transport" type = "ebTest:transport.type"/> <element name = "Envelope" type = "ebTest:non-empty-string"/> <simpleType name = "mode.type"> <restriction base = "NMTOKEN"> <enumeration value = "local-service"/> <enumeration value = "remote-service"/>

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 407 of 447

1

123456789

1011121314151617181920212223242526272829303132333435363738394041424344454647484950515253

23

Page 408: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

<enumeration value = "connection"/> </restriction> </simpleType> <simpleType name = "mimeHeader.type"> <restriction base = "NMTOKEN"> <enumeration value = "MIMEMessageContent-Type"/> <enumeration value = "MIMEMessageStart"/> <enumeration value = "Content-Type"/> <enumeration value = "start"/> <enumeration value = "charset"/> <enumeration value = "type"/> <enumeration value = "wildcard"/> </restriction> </simpleType> <simpleType name = "content.type"> <restriction base = "NMTOKEN"> <enumeration value = "XML"/> <enumeration value = "dateTime"/> <enumeration value = "URI"/> <enumeration value = "signature"/> <enumeration value = "XPointer"/> </restriction> </simpleType> <simpleType name = "method.type"> <restriction base = "NMTOKEN"> <enumeration value = "xpath"/> <enumeration value = "md5"/> </restriction> </simpleType> <simpleType name = "messageContext.type"> <restriction base = "NMTOKEN"> <enumeration value = "true"/> <enumeration value = "false"/> </restriction> </simpleType> <simpleType name = "requirement.type"> <restriction base = "NMTOKEN"> <enumeration value = "required"/> <enumeration value = "stronglyrecommended"/> <enumeration value = "recommended"/> <enumeration value = "optional"/> </restriction> </simpleType> <simpleType name = "non-empty-string"> <restriction base = "string"> <minLength value = "1"/> </restriction> </simpleType> <simpleType name = "configAction.type"> <restriction base = "NMTOKEN"> <enumeration value = "query"/> <enumeration value = "replace"/>

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 408 of 447

1

123456789

10111213141516171819202122232425262728293031323334353637383940414243444546474849505152

23

Page 409: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

</restriction> </simpleType> <simpleType name = "action.type"> <restriction base = "NMTOKEN"> <enumeration value = "reset"/> <enumeration value = "modify"/> </restriction> </simpleType> <simpleType name = "configItem.type"> <restriction base = "NMTOKEN"/> </simpleType> <simpleType name = "parameter.type"> <restriction base = "NMTOKEN"> <enumeration value = "string"/> <enumeration value = "parameter"/> </restriction> </simpleType> <simpleType name = "connectivePredicate.type"> <restriction base = "NMTOKEN"> <enumeration value = "and"/> <enumeration value = "or"/> </restriction> </simpleType> <simpleType name = "thread.type"> <restriction base = "NMTOKEN"> <enumeration value = "synchronous"/> <enumeration value = "asynchronous"/> </restriction> </simpleType> <simpleType name = "matchResult.type"> <restriction base = "NMTOKEN"> <enumeration value = "pass"/> <enumeration value = "fail"/> </restriction> </simpleType> <simpleType name = "if.type"> <restriction base = "NMTOKEN"> <enumeration value = "andif"/> <enumeration value = "orif"/> </restriction> </simpleType> <simpleType name = "split.type"> <restriction base = "NMTOKEN"> <enumeration value = "andsplit"/> <enumeration value = "orsplit"/> </restriction> </simpleType> <simpleType name = "join.type"> <restriction base = "NMTOKEN"> <enumeration value = "andjoin"/> <enumeration value = "orjoin"/> </restriction>

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 409 of 447

1

123456789

10111213141516171819202122232425262728293031323334353637383940414243444546474849505152

23

Page 410: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

</simpleType> <simpleType name = "serviceMode.type"> <restriction base = "NMTOKEN"> <enumeration value = "loop"/> <enumeration value = "local-reporting"/> <enumeration value = "remote-reporting"/> </restriction> </simpleType> <simpleType name = "time.type"> <restriction base = "NMTOKEN"> <enumeration value = "timeToAcknowlegeReceipt"/> <enumeration value = "timeToAcknowledgeAcceptance"/> <enumeration value = "timeToPerform"/> <enumeration value = "other"/> </restriction> </simpleType> <simpleType name = "operator.type"> <restriction base = "NMTOKEN"> <enumeration value = "equal"/> <enumeration value = "lessThan"/> <enumeration value = "lessThanOrEqual"/> <enumeration value = "greaterThan"/> <enumeration value = "greaterThanOrEqual"/> </restriction> </simpleType> <simpleType name = "assertionExit.type"> <restriction base = "NMTOKEN"> <enumeration value = "pass"/> <enumeration value = "fail"/> <enumeration value = "undetermined"/> </restriction> </simpleType> <simpleType name = "preconditionExit.type"> <restriction base = "NMTOKEN"> <enumeration value = "undetermined"/> </restriction> </simpleType> <simpleType name = "scope.type"> <restriction base = "NMTOKEN"> <enumeration value = "self"/> <enumeration value = "selfAndDescendents"/> <enumeration value = "parent"/> <enumeration value = "global"/> </restriction> </simpleType> <simpleType name = "transport.type"> <restriction base = "NMTOKEN"> <enumeration value = "FTP"/> <enumeration value = "SMTP"/> <enumeration value = "HTTP"/> <enumeration value = "JMS"/> </restriction>

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 410 of 447

1

123456789

10111213141516171819202122232425262728293031323334353637383940414243444546474849505152

23

Page 411: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

</simpleType> <simpleType name = "envelope.type"> <restriction base = "NMTOKEN"> <enumeration value = "SOAP"/> <enumeration value = "ebXML"/> <enumeration value = "RNIF"/> <enumeration value = "JMS"/> </restriction> </simpleType> <simpleType name = "exception.type"> <restriction base = "NMTOKEN"> <enumeration value = "undetermined"/> </restriction> </simpleType> <simpleType name = "exitResult.type"> <restriction base = "NMTOKEN"> <enumeration value = "pass"/> <enumeration value = "fail"/> </restriction> </simpleType> <simpleType name = "validation.type"> <restriction base = "NMTOKEN"> <enumeration value = "XMLSchema"/> <enumeration value = "Schematron"/> </restriction> </simpleType> <simpleType name = "mutator.type"> <restriction base = "NMTOKEN"> <enumeration value = "XSLT"/> <enumeration value = "XUpdate"/> </restriction> </simpleType> <simpleType name = "keystore.type"> <restriction base = "NMTOKEN"> <enumeration value = "jks"/> <enumeration value = "pkcs12"/> </restriction> </simpleType> <simpleType name = "lock.type"> <restriction base = "NMTOKEN"> <enumeration value = "readOnly"/> <enumeration value = "readWrite"/> </restriction> </simpleType> <element name = "MessageExpression"> <complexType> <sequence> <element ref = "ebTest:ErrorMessage"/> </sequence> </complexType> </element> <element name = "ErrorMessage" type = "ebTest:non-empty-string"/>

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 411 of 447

1

123456789

10111213141516171819202122232425262728293031323334353637383940414243444546474849505152

23

Page 412: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

<element name = "PutMessage"> <complexType> <sequence> <element ref = "ebTest:Packaging" minOccurs = "0"/> <element ref = "ebTest:SetMessage"/> <element ref = "ebTest:SetPayload" minOccurs = "0" maxOccurs = "unbounded"/> </sequence> <attribute name = "description" use = "required" type = "string"/> <attribute name = "repeatWithSameContext" use = "optional" type = "integer"/> <attribute name = "repeatWithNewContext" use = "optional" type = "integer"/> </complexType> </element> <element name = "GetMessage"> <complexType> <sequence> <element ref = "ebTest:Filter" maxOccurs = "unbounded"/> <element ref = "ebTest:Result" minOccurs = "0"/> </sequence> <attribute name = "description" use = "required" type = "string"/> <attribute name = "mask" use = "optional" type = "boolean"/> </complexType> </element> <element name = "Filter"> <complexType mixed = "true"> <choice> <element ref = "ebTest:Result" minOccurs = "0"/> </choice> <attribute name = "stepDuration" use = "optional" type = "integer"/> </complexType> </element> <element name = "SetMessage"> <complexType> <sequence> <element ref = "ebTest:Packaging" minOccurs = "0"/> <element ref = "ebTest:Content"/> <element ref = "ebTest:Mutator" minOccurs = "0"/> <element ref = "ebTest:DSignEnvelope" minOccurs = "0" maxOccurs = "unbounded"/> </sequence> <attribute name = "description" use = "optional" type = "string"/> </complexType> </element> <element name = "SetPayload"> <complexType> <sequence> <element ref = "ebTest:Packaging"/> <element ref = "ebTest:Content"/> <element ref = "ebTest:Mutator" minOccurs = "0"/> <element ref = "ebTest:DSignPayload" minOccurs = "0"/> </sequence>

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 412 of 447

1

123456789

1011121314151617181920212223242526272829303132333435363738394041424344454647484950515253

23

Page 413: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

<attribute name = "description" use = "optional" type = "string"/> </complexType> </element> <element name = "TestAssertion"> <complexType> <sequence> <choice> <element ref = "ebTest:VerifyContent"/> <element ref = "ebTest:ValidateContent"/> <element ref = "ebTest:VerifyTimeDifference"/> <element ref = "ebTest:VerifyParameter"/> </choice> <element ref = "ebTest:WhenTrue" minOccurs = "0"/> <element ref = "ebTest:WhenFalse" minOccurs = "0"/> </sequence> <attribute name = "description" use = "required" type = "string"/> </complexType> </element> <element name = "MimeHeader" type = "ebTest:mimeHeader.type"/> <element name = "MimeHeaderValue" type = "ebTest:non-empty-string"/> <element name = "Content-Location" type = "ebTest:non-empty-string"/> <element name = "Index" type = "integer"/> <element name = "FileURI" type = "anyURI"/> <element name = "PayloadRef" type = "ebTest:non-empty-string"/> <element name = "Content-ID" type = "ebTest:non-empty-string"/> <element name = "MessageDeclaration"> <complexType> <sequence> <any namespace = "##other" processContents = "lax" minOccurs = "0" maxOccurs = "unbounded"/> </sequence> </complexType> </element> <element name = "ValidateContent"> <complexType mixed = "true"> <choice> <element ref = "ebTest:Result" minOccurs = "0"/> </choice> <attribute name = "contentType" use = "required" type = "ebTest:content.type"/> <attribute name = "schemaLocation" use = "optional" type = "anyURI"/> </complexType> </element> <element name = "VerifyContent"> <complexType mixed = "true"> <choice> <element ref = "ebTest:Result" minOccurs = "0"/> </choice> </complexType> </element> <element name = "Message"> <complexType> <sequence>

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 413 of 447

1

123456789

1011121314151617181920212223242526272829303132333435363738394041424344454647484950515253

23

Page 414: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

<any namespace = "##other" processContents = "lax" minOccurs = "0" maxOccurs = "unbounded"/> </sequence> <attribute name = "id" use = "required" type = "ID"/> </complexType> </element> <element name = "SetParameter"> <complexType> <sequence> <element ref = "ebTest:Name"/> <choice> <element ref = "ebTest:Value"/> <element ref = "ebTest:ParameterRef"/> </choice> <element ref = "ebTest:Result" minOccurs = "0"/> </sequence> <attribute name = "scope" use = "optional" type = "ebTest:scope.type"/> <attribute name = "lockType" use = "optional" type = "ebTest:lock.type"/> </complexType> </element> <element name = "VerifyParameter"> <complexType> <sequence> <element ref = "ebTest:Name"/> <choice> <element ref = "ebTest:Value"/> <element ref = "ebTest:ParameterRef"/> </choice> <element ref = "ebTest:Result" minOccurs = "0"/> </sequence> </complexType> </element> <element name = "Mutator"> <complexType> <sequence> <element ref = "ebTest:FileURI"/> <element ref = "ebTest:Result" minOccurs = "0"/> </sequence> </complexType> </element> <element name = "XSL" type = "ebTest:non-empty-string"/> <element name = "XUpdate" type = "ebTest:non-empty-string"/> <element name = "BooleanClause"> <complexType> <attribute name = "booleanPredicate" use = "required" type = "boolean"/> </complexType> </element> <element name = "Declaration"> <complexType> <sequence>

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 414 of 447

1

123456789

1011121314151617181920212223242526272829303132333435363738394041424344454647484950515253

23

Page 415: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

<any namespace = "##other" processContents = "lax" minOccurs = "0" maxOccurs = "unbounded"/> </sequence> </complexType> </element> <element name = "Thread"> <complexType> <choice maxOccurs = "unbounded"> <element ref = "ebTest:SetParameter"/> <element ref = "ebTest:SetXPathParameter"/> <element ref = "ebTest:LockParameter"/> <element ref = "ebTest:UnlockParameter"/> <element ref = "ebTest:PutMessage"/> <element ref = "ebTest:Initiator"/> <element ref = "ebTest:GetMessage"/> <element ref = "ebTest:TestAssertion"/> <element ref = "ebTest:ThreadRef"/> <element ref = "ebTest:Split"/> <element ref = "ebTest:Join"/> <element ref = "ebTest:Sleep"/> </choice> <attribute name = "name" use = "required" type = "ID"/> <attribute name = "description" use = "optional" type = "string"/> </complexType> </element> <element name = "ThreadRef"> <complexType> <sequence> <element ref = "ebTest:Result" minOccurs = "0"/> </sequence> <attribute name = "nameRef" use = "required" type = "IDREF"/> <attribute name = "instanceId" use = "optional" type = "ID"/> <attribute name = "configurationGroupRef" use = "optional" type = "IDREF"/> <attribute name = "loop" use = "optional" type = "string"/> </complexType> </element> <element name = "Pass"> <complexType/> </element> <element name = "Fail"> <complexType/> </element> <element name = "ThreadGroup"> <complexType> <sequence> <element ref = "ebTest:Thread" maxOccurs = "unbounded"/> </sequence> </complexType> </element> <element name = "Sleep" type = "integer"/> <element name = "Split"> <complexType>

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 415 of 447

1

123456789

1011121314151617181920212223242526272829303132333435363738394041424344454647484950515253

23

Page 416: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

<sequence> <element ref = "ebTest:ThreadRef" maxOccurs = "unbounded"/> <element ref = "ebTest:Result" minOccurs = "0"/> </sequence> </complexType> </element> <element name = "Join"> <complexType> <sequence> <element ref = "ebTest:ThreadRef" maxOccurs = "unbounded"/> <element ref = "ebTest:Result" minOccurs = "0"/> </sequence> <attribute name = "joinType" use = "optional" type = "ebTest:join.type"/> </complexType> </element> <element name = "Initiator"> <complexType> <sequence> <element ref = "ebTest:InitiateMessage"/> <element ref = "ebTest:InitiatePayload" minOccurs = "0"/> <element ref = "ebTest:Result" minOccurs = "0"/> </sequence> <attribute name = "description" use = "required" type = "string"/> </complexType> </element> <element name = "TestServiceConfigurator"> <complexType> <sequence> <element ref = "ebTest:ServiceMode"/> <element ref = "ebTest:ResponseURL"/> <element ref = "ebTest:NotificationURL"/> <element ref = "ebTest:PayloadDigests" minOccurs = "0"/> </sequence> </complexType> </element> <element name = "MessageRef" type = "IDREF"/> <element name = "ErrorURL" type = "anyURI"/> <element name = "NotificationURL" type = "anyURI"/> <element name = "SetXPathParameter"> <complexType> <sequence> <element ref = "ebTest:Name"/> <element ref = "ebTest:Expression"/> <element ref = "ebTest:Result" minOccurs = "0"/> </sequence> <attribute name = "scope" use = "optional" type = "ebTest:scope.type"/> <attribute name = "lockType" use = "optional" type = "ebTest:lock.type"/> </complexType> </element> <element name = "ResponseURL" type = "anyURI"/>

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 416 of 447

1

123456789

1011121314151617181920212223242526272829303132333435363738394041424344454647484950515253

23

Page 417: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

<element name = "StoreAttachments" type = "boolean"/> <element name = "OperationMode" type = "string"/> <element name = "PayloadDigests"> <complexType> <sequence> <element ref = "ebTest:Payload" maxOccurs = "unbounded"/> </sequence> </complexType> </element> <element name = "ServiceMode" type = "ebTest:serviceMode.type"/> <element name = "Transaction"> <complexType> <sequence maxOccurs = "unbounded"> <choice maxOccurs = "unbounded"> <element ref = "ebTest:PutMessage"/> <element ref = "ebTest:Initiator"/> </choice> <element ref = "ebTest:GetMessage" minOccurs = "0" maxOccurs = "unbounded"/> </sequence> <attribute name = "timeToPerform" use = "optional" type = "duration"/> </complexType> </element> <element name = "VerifyTimeDifference"> <complexType> <sequence> <element ref = "ebTest:ParamName"/> <element ref = "ebTest:ParamName"/> <element ref = "ebTest:Operator"/> <element ref = "ebTest:Difference"/> <element ref = "ebTest:Result" minOccurs = "0"/> </sequence> </complexType> </element> <element name = "TimeToAcknowledgeReceipt"> <complexType> <sequence> <element ref = "ebTest:XPathExpression"/> </sequence> </complexType> </element> <element name = "TimeToAcknowledgeAcceptance"> <complexType> <sequence> <element ref = "ebTest:XPathExpression"/> </sequence> </complexType> </element> <element name = "Difference" type = "duration"/> <element name = "Operator" type = "ebTest:operator.type"/> <element name = "XPathExpression" type = "ebTest:non-empty-string"/> <element name = "Continue"> <complexType/>

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 417 of 447

1

123456789

1011121314151617181920212223242526272829303132333435363738394041424344454647484950515253

23

Page 418: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

</element> <element name = "ParamName" type = "ebTest:non-empty-string"/> <element name = "VerifyTimeToPerform"> <complexType> <sequence> <element ref = "ebTest:ThreadName" maxOccurs = "unbounded"/> </sequence> <attribute name = "maxTime" use = "required" type = "duration"/> </complexType> </element> <element name = "ThreadName" type = "IDREF"/> <element name = "Header"> <complexType> <sequence> <element ref = "ebTest:Name"/> <element ref = "ebTest:Value" minOccurs = "0"/> <element ref = "ebTest:Attribute" minOccurs = "0" maxOccurs = "unbounded"/> </sequence> </complexType> </element> <element name = "Name" type = "ebTest:non-empty-string"/> <element name = "Value" type = "ebTest:non-empty-string"/> <element name = "Packaging"> <complexType> <sequence> <element ref = "ebTest:Header" minOccurs = "0" maxOccurs = "unbounded"/> <element ref = "ebTest:Result" minOccurs = "0"/> </sequence> </complexType> </element> <element name = "Content"> <complexType> <sequence> <choice> <element ref = "ebTest:Declaration"/> <element ref = "ebTest:FileURI"/> <element ref = "ebTest:MessageRef"/> </choice> <element ref = "ebTest:Result" minOccurs = "0"/> </sequence> </complexType> </element> <element name = "Attribute"> <complexType> <sequence> <element ref = "ebTest:Name"/> <element ref = "ebTest:Value"/> </sequence> </complexType> </element> <element name = "ExitResult" type = "string"/>

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 418 of 447

1

123456789

1011121314151617181920212223242526272829303132333435363738394041424344454647484950515253

23

Page 419: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

<element name = "ValidationType" type = "ebTest:validation.type"/> <element name = "MutatorType" type = "ebTest:mutator.type"/> <element name = "Payload"> <complexType> <sequence> <element ref = "ebTest:Digest"/> <element ref = "ebTest:Id"/> </sequence> </complexType> </element> <element name = "Digest" type = "ebTest:non-empty-string"/> <element name = "Id" type = "ebTest:non-empty-string"/> <element name = "ParameterRef" type = "ebTest:non-empty-string"/> <element name = "Expression" type = "ebTest:non-empty-string"/> <element name = "WhenTrue"> <complexType> <choice maxOccurs = "unbounded"> <element ref = "ebTest:SetParameter"/> <element ref = "ebTest:SetXPathParameter"/> <element ref = "ebTest:PutMessage"/> <element ref = "ebTest:Initiator"/> <element ref = "ebTest:GetMessage"/> <element ref = "ebTest:TestAssertion"/> <element ref = "ebTest:Continue"/> <element ref = "ebTest:ThreadRef"/> <element ref = "ebTest:Split"/> <element ref = "ebTest:Join"/> <element ref = "ebTest:Sleep"/> <element ref = "ebTest:Exit"/> <element ref = "ebTest:Return"/> </choice> </complexType> </element> <element name = "WhenFalse"> <complexType> <choice maxOccurs = "unbounded"> <element ref = "ebTest:SetParameter"/> <element ref = "ebTest:SetXPathParameter"/> <element ref = "ebTest:PutMessage"/> <element ref = "ebTest:Initiator"/> <element ref = "ebTest:GetMessage"/> <element ref = "ebTest:TestAssertion"/> <element ref = "ebTest:Continue"/> <element ref = "ebTest:ThreadRef"/> <element ref = "ebTest:Split"/> <element ref = "ebTest:Join"/> <element ref = "ebTest:Sleep"/> <element ref = "ebTest:Exit"/> <element ref = "ebTest:Return"/> </choice> </complexType> </element>

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 419 of 447

1

123456789

10111213141516171819202122232425262728293031323334353637383940414243444546474849505152

23

Page 420: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

<element name = "Exit"> <complexType> <simpleContent> <extension base = "ebTest:assertionExit.type"> <attribute name = "description" use = "required" type = "string"/> </extension> </simpleContent> </complexType> </element> <element name = "XMLDSIG"> <complexType> <sequence> <element ref = "ebTest:KeystoreFileURI"/> <element ref = "ebTest:KeystoreType"/> <element ref = "ebTest:KeystorePassword"/> <element ref = "ebTest:KeystoreAlias"/> <element ref = "ebTest:KeystoreAliasPassword" minOccurs = "0"/> </sequence> </complexType> </element> <element name = "Title" type = "string"/> <element name = "DSignEnvelope"> <complexType> <sequence> <element ref = "ebTest:CanonocalizationMethodAlgorithm" minOccurs = "0"/> <element ref = "ebTest:DigestMethodAlgorithm" minOccurs = "0"/> <element ref = "ebTest:SignatureMethodAlgorighm" minOccurs = "0"/> <element ref = "ebTest:TransformAlgorithm" minOccurs = "0"/> <element ref = "ebTest:Transform" minOccurs = "0"/> <element ref = "ebTest:ReferenceURI" minOccurs = "0"/> <element ref = "ebTest:Result" minOccurs = "0"/> </sequence> </complexType> </element> <element name = "DSignPayload"> <complexType> <sequence> <element ref = "ebTest:CanonocalizationMethodAlgorithm" minOccurs = "0"/> <element ref = "ebTest:DigestMethodAlgorithm" minOccurs = "0"/> <element ref = "ebTest:SignatureMethodAlgorighm" minOccurs = "0"/> <element ref = "ebTest:TransformAlgorithm" minOccurs = "0"/> <element ref = "ebTest:Transform" minOccurs = "0"/> <element ref = "ebTest:ReferenceURI" minOccurs = "0"/> <element ref = "ebTest:Result" minOccurs = "0"/> </sequence> </complexType> </element> <element name = "Return"> <complexType/>

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 420 of 447

1

123456789

101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354

23

Page 421: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

</element> <element name = "KeystoreFileURI" type = "anyURI"/> <element name = "KeystoreType" type = "ebTest:keystore.type"/> <element name = "KeystorePassword" type = "string"/> <element name = "KeystoreAlias" type = "string"/> <element name = "KeystoreAliasPassword" type = "string"/> <element name = "CanonocalizationMethodAlgorithm" type = "anyURI"/> <element name = "DigestMethod" type = "string"/> <element name = "SignatureMethodAlgorighm" type = "anyURI"/> <element name = "ReferenceURI" type = "anyURI"/> <element name = "TransformAlgorithm" type = "anyURI"/> <element name = "Transform" type = "string"/> <element name = "DigestMethodAlgorithm" type = "anyURI"/> <element name = "SetMessageType" type = "string"/> <element name = "InitiateMessage"> <complexType> <sequence> <element ref = "ebTest:Content"/> <element ref = "ebTest:Mutator" minOccurs = "0"/> <element ref = "ebTest:Result" minOccurs = "0"/> </sequence> </complexType> </element> <element name = "InitiatePayload"> <complexType> <sequence> <element ref = "ebTest:Packaging" minOccurs = "0"/> <element ref = "ebTest:Content"/> <element ref = "ebTest:Mutator" minOccurs = "0"/> <element ref = "ebTest:Result" minOccurs = "0"/> </sequence> </complexType> </element> <element name = "Result"> <complexType> <sequence> <element ref = "ebTest:ExitResult"/> <element ref = "ebTest:Description"/> </sequence> </complexType> </element> <element name = "LockParameter"> <complexType> <sequence> <element ref = "ebTest:Name"/> <element ref = "ebTest:Result" minOccurs = "0"/> </sequence> <attribute name = "lockType" use = "required" type = "ebTest:lock.type"/> </complexType> </element> <element name = "UnlockParameter"> <complexType>

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 421 of 447

1

123456789

1011121314151617181920212223242526272829303132333435363738394041424344454647484950515253

23

Page 422: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

<sequence> <element ref = "ebTest:Name"/> <element ref = "ebTest:Result" minOccurs = "0"/> </sequence> </complexType> </element></schema>

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 422 of 447

1

1234567

8

9

23

Page 423: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

Appendix G (Normative) WSDL Test Service Definitions

WSDL Definition of the Test Service initiator SOAP method

<?xml version="1.0" encoding="UTF-8"?><!-- edited with XMLSPY v2004 rel. 4 U (http://www.xmlspy.com) by Mike Kass (Personal) --><wsdl:definitions xmlns="http://schemas.xmlsoap.org/wsdl/" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:tns="urn:oasis:names:tc:ebxml-iic:testservice:wsdl:2.0" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:xsd1="http://www.oasis-open.org/tc/ebxml-iic/tests/messages" xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/" targetNamespace="urn:oasis:names:tc:ebxml-iic:testservice:wsdl:2.0" name="RegistryService"> <wsdl:import namespace="http://www.oasis-open.org/tc/ebxml-iic/tests/messages" location="schemas/TestServiceMessages.xsd"/> <wsdl:message name="InitiatorRequest"> <wsdl:part name="InitiatorRequest" element="xsd1:InitiatorRequest"/> </wsdl:message> <wsdl:message name="InitiatorResponse"> <wsdl:part name="InitiatorResponse" element="xsd1:InitiatorResponse"/> </wsdl:message> <wsdl:portType name="SendPortType"> <documentation>Maps to the Initiator interface of Test Framework spec.</documentation> <wsdl:operation name="initiator"> <wsdl:input message="tns:InitiatorRequest"/> <wsdl:output message="tns:InitiatorResponse"/> </wsdl:operation> </wsdl:portType> <wsdl:binding name="InitiatorSOAPBinding" type="tns:SendPortType"> <soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/> <wsdl:operation name="initiator"> <soap:operation soapAction="uri:oasis:ebxml:iic:testservice:Send:initiator"/> <wsdl:input> <mime:multipartRelated> <mime:part> <soap:body use="literal"/> </mime:part> </mime:multipartRelated> </wsdl:input> <wsdl:output> <mime:multipartRelated> <mime:part> <soap:body use="literal"/> </mime:part>

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 423 of 447

1

1

2

345

6789

1011121314151617181920212223242526272829303132333435363738394041424344454647484950

23

Page 424: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

</mime:multipartRelated> </wsdl:output> </wsdl:operation> </wsdl:binding> <wsdl:service name="TestService"> <documentation>The QueryManager service of OASIS ebXML Test Framework version 1.1</documentation> <wsdl:port name="InitiatorSOAPBinding" binding="tns:InitiatorSOAPBinding"> <soap:address location="http://your_URL_to_your_ConfigurationService"/> </wsdl:port> </wsdl:service> <documentation>This is the the normative abstract WSDL service definition for the OASIS ebXML Test Service</documentation></wsdl:definitions>

WSDL Definitnion of the Test Service configure method

<?xml version="1.0" encoding="UTF-8"?><!-- edited with XMLSPY v2004 rel. 4 U (http://www.xmlspy.com) by Mike Kass (Personal) --><wsdl:definitions xmlns="http://schemas.xmlsoap.org/wsdl/" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:tns="urn:oasis:names:tc:ebxml-iic:testservice:wsdl:2.0" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:xsd1="http://www.oasis-open.org/tc/ebxml-iic/tests/messages" xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/" targetNamespace="urn:oasis:names:tc:ebxml-iic:testservice:wsdl:2.0" name="RegistryService"> <wsdl:import namespace="http://www.oasis-open.org/tc/ebxml-iic/tests/messages" location="schemas/TestServiceMessages.xsd"/> <wsdl:message name="TestServiceConfiguratorRequest"> <wsdl:part name="TestServiceConfiguratorRequest" element="xsd1:TestServiceConfiguratorRequest"/> </wsdl:message> <wsdl:message name="TestServiceConfiguratorResponse"> <wsdl:part name="TestServiceConfiguratorResponse" element="xsd1:TestServiceConfiguratorResponse"/> </wsdl:message> <wsdl:portType name="ConfigurationPortType"> <documentation>Maps to the Configurator interface of Test Framework spec.</documentation> <wsdl:operation name="configurator"> <wsdl:input message="tns:TestServiceConfiguratorRequest"/> <wsdl:output message="tns:TestServiceConfiguratorResponse"/> </wsdl:operation> </wsdl:portType> <wsdl:binding name="ConfiguratorSOAPBinding" type="tns:ConfigurationPortType"> <soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 424 of 447

1

123456789

101112131415

161718192021

222324252627282930313233343536373839404142434445464748495051525354

23

Page 425: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

<wsdl:operation name="configurator"> <soap:operation soapAction="uri:oasis:ebxml:iic:testservice:Configuration:configurator"/> <wsdl:input> <mime:multipartRelated> <mime:part> <soap:body/> </mime:part> </mime:multipartRelated> </wsdl:input> <wsdl:output> <mime:multipartRelated> <mime:part> <soap:body/> </mime:part> </mime:multipartRelated> </wsdl:output> </wsdl:operation> </wsdl:binding> <wsdl:service name="TestService"> <documentation>The QueryManager service of OASIS ebXML Test Framework version 1.1</documentation> <wsdl:port name="ConfiguratorSOAPBinding" binding="tns:ConfiguratorSOAPBinding"> <soap:address location="http://your_URL_to_your_ConfigurationService"/> </wsdl:port> </wsdl:service> <documentation>This is the the normative abstract WSDL service definition for the OASIS ebXML Test Service</documentation></wsdl:definitions>

WSDL Definition of the Test Driver notify method

<?xml version="1.0" encoding="UTF-8"?><!-- edited with XMLSPY v2004 rel. 3 U (http://www.xmlspy.com) by Mike Kass (Personal) --><wsdl:definitions xmlns="http://schemas.xmlsoap.org/wsdl/" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:tns="urn:oasis:names:tc:ebxml-iic:testservice:wsdl:2.0" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:xsd1="http://www.oasis-open.org/tc/ebxml-iic/tests/messages" targetNamespace="urn:oasis:names:tc:ebxml-iic:testservice:wsdl:2.0" name="RegistryService"> <wsdl:import namespace="http://www.oasis-open.org/tc/ebxml-iic/tests/messages" location="schemas/TestServiceMessages.xsd"/> <wsdl:message name="NotificationRequest"> <wsdl:part name="NotificationRequest" element="xsd1:NotificationRequest"/> </wsdl:message> <wsdl:message name="NotificationResponse">

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 425 of 447

1

123456789

10111213141516171819202122232425262728293031

323334353637

38394041424344454647484950515253

23

Page 426: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

<wsdl:part name="NotificationResponse" element="xsd1:NotificationResponse"/> </wsdl:message> <wsdl:portType name="NotificationPortType"> <documentation>Maps to the Notification interface of Test Framework spec.</documentation> <wsdl:operation name="Notify"> <wsdl:input message="tns:NotificationRequest"/> <wsdl:output message="tns:NotificationResponse"/> </wsdl:operation> </wsdl:portType> <wsdl:binding name="NotificationSOAPBinding" type="tns:NotificationPortType"> <soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/> <wsdl:operation name="Notify"> <soap:operation soapAction="uri:oasis:ebxml:iic:testservice:Receive:Notification"/> <wsdl:input> <mime:multipartRelated> <mime:part> <soap:body use="literal"/> </mime:part> </mime:multipartRelated> </wsdl:input> <wsdl:output> <mime:multipartRelated> <mime:part> <soap:body use="literal"/> </mime:part> </mime:multipartRelated> </wsdl:output> </wsdl:operation> </wsdl:binding> <wsdl:service name="TestDriverReceiveService"> <documentation>The Receive service of OASIS ebXML Test Framework version 1.1</documentation> <wsdl:port name="NotifySOAPBinding" binding="tns:NotificationSOAPBinding"> <soap:address location="http://your_URL_to_your_ReceiveService"/> </wsdl:port> </wsdl:service> <documentation>This is the the normative abstract WSDL service definition for the OASIS ebXML Test Service</documentation></wsdl:definitions>

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 426 of 447

1

123456789

101112131415161718192021222324252627282930313233343536373839404142

43

4445464748495051

23

Page 427: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 427 of 447

1

12345678

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

23

Page 428: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

Appendix H (Normative) Sample Test Cases

The XML document below is the normative representation of Test Case #1 found in section XX.X

<?xml version = "1.0" encoding = "UTF-8"?><?xml-stylesheet type="text/xsl" href="xslt\ebXMLTestsuite.xsl"?><ebTest:TestSuite xmlns:ebTest = "http://www.oasis-open.org/tc/ebxml-iic/tests" configurationGroupRef = "mshc_Basic" xmlns:ds = "http://www.oasis-open.org/tc/ebxml-iic/tests/xmldsig" xmlns:xlink = "http://www.w3.org/1999/xlink" xmlns:xsi = "http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation = "http://www.oasis-open.org/tc/ebxml-iic/tests schemas\ebTest.xsd"> <ebTest:MetaData> <ebTest:Title>Use Case 1</ebTest:Title> <ebTest:Description>POC for BPSS testing: Case 1 - Basic Business Transaction (e.g. PIP 3A4) with TimeToPerform and TimeToAcknowledgeReceipt</ebTest:Description> <ebTest:Version>0.1</ebTest:Version> <ebTest:Maintainer>Michael Kass</ebTest:Maintainer> <ebTest:Location>ScriptingTestSuite.xml</ebTest:Location> <ebTest:PublishDate>05/20/2004</ebTest:PublishDate> <ebTest:Status>DRAFT</ebTest:Status> </ebTest:MetaData> <ebTest:ConfigurationGroup id = "mshc_Basic"> <ebTest:Mode>connection</ebTest:Mode> <ebTest:StepDuration>300</ebTest:StepDuration> <ebTest:Transport>HTTP</ebTest:Transport> <ebTest:Envelope>ebXML</ebTest:Envelope> <ebTest:StoreAttachments>true</ebTest:StoreAttachments> <ebTest:ValidationType>XMLSchema</ebTest:ValidationType> <ebTest:MutatorType>XSLT</ebTest:MutatorType> <ebTest:SetParameter> <ebTest:Name>SenderParty</ebTest:Name> <ebTest:Value>TestDriver</ebTest:Value> </ebTest:SetParameter> <ebTest:SetParameter> <ebTest:Name>ReceiverParty</ebTest:Name> <ebTest:Value>TestService</ebTest:Value> </ebTest:SetParameter> <ebTest:SetParameter> <ebTest:Name>Service</ebTest:Name> <ebTest:Value>urn:ebxml:iic:test</ebTest:Value> </ebTest:SetParameter> <ebTest:SetParameter> <ebTest:Name>Action</ebTest:Name> <ebTest:Value>Dummy</ebTest:Value> </ebTest:SetParameter> <ebTest:SetParameter> <ebTest:Name>CPAId</ebTest:Name> <ebTest:Value>mshc_Basic</ebTest:Value>

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 428 of 447

1

1

234

56789

10111213141516171819202122232425262728293031323334353637383940414243444546474849

23

Page 429: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

</ebTest:SetParameter> <ebTest:Namespaces> <ebTest:SetNamespace> <ebTest:Name>eb</ebTest:Name> <ebTest:Value>http://www.oasis-open.org/committees/ebxml-msg/schema/msg-header-2_0.xsd</ebTest:Value> </ebTest:SetNamespace> <ebTest:SetNamespace> <ebTest:Name>soap</ebTest:Name> <ebTest:Value>http://schemas.xmlsoap.org/soap/envelope/</ebTest:Value> </ebTest:SetNamespace> <ebTest:SetNamespace> <ebTest:Name>TEST</ebTest:Name> <ebTest:Value>http://www.oasis-open.org/tc/ebxml-iic/testing/messageStore</ebTest:Value> </ebTest:SetNamespace> </ebTest:Namespaces> </ebTest:ConfigurationGroup> <ebTest:TestCase id = "testcase_3" description = "Basic Business Transaction with TimeToPerform and TimeToAcknowledge" requirementReferenceId = "req_1"> <ebTest:ThreadGroup> <ebTest:Thread name = "thread_01"> <ebTest:Sleep>180</ebTest:Sleep> </ebTest:Thread> </ebTest:ThreadGroup> <ebTest:PutMessage description = "Send a message containing a Purchase Order attachment"> <ebTest:SetMessage> <ebTest:Packaging/> <ebTest:Content> <ebTest:Declaration> <soap:Envelope xmlns:soap = "http://www.oasis-open.org/tc/ebxml-iic/tests/soap" xmlns:eb = "http://www.oasis-open.org/tc/ebxml-iic/tests/eb"> <soap:Header> <eb:MessageHeader> <eb:Action>Purchase</eb:Action> </eb:MessageHeader> </soap:Header> <soap:Body> <eb:Manifest> <eb:Reference xlink:href = "cid:Pip34APurchaseOrderRequest"/> </eb:Manifest> </soap:Body> </soap:Envelope> </ebTest:Declaration> </ebTest:Content> <ebTest:Mutator> <ebTest:FileURI>ebXMLEnvelope.xsl</ebTest:FileURI> </ebTest:Mutator>

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 429 of 447

1

1234

5689

10

11131415

1617192021222324252627282930313233343536373839

404243444546474849505152535455

23

Page 430: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

</ebTest:SetMessage> <ebTest:SetPayload description = "Add content-id and payload to MIME message"> <ebTest:Packaging/> <ebTest:Content> <ebTest:FileURI>Pip34APurchaseOrderRequest.xml</ebTest:FileURI> </ebTest:Content> </ebTest:SetPayload> </ebTest:PutMessage> <ebTest:SetParameter> <ebTest:Name>RequestTimestamp</ebTest:Name> <ebTest:ParameterRef>Timestamp</ebTest:ParameterRef> </ebTest:SetParameter> <ebTest:Split> <ebTest:ThreadRef nameRef = "thread_01"/> </ebTest:Split> <ebTest:GetMessage description = "Retrieve business Acknowledgment "> <ebTest:Filter>/TEST:MessageStore/TEST:Message/TEST:Part[1]/TEST:Content/soap:Envelope/soap:Header[eb:MessageHeader[eb:ConversationId=$ConversationId and eb:Action="Mute"] and [eb:Manifest/eb:Reference/xlink:href="cid:ReceiptAcknowledgment"]]</ebTest:Filter> </ebTest:GetMessage> <ebTest:SetXPathParameter> <ebTest:Name>BusinessTimeStamp</ebTest:Name> <ebTest:Expression>TEST:FilterResult/TEST:Message/TEST:Part/TEST:Content//ReceiptAcknowledgment//Timestamp</ebTest:Expression> </ebTest:SetXPathParameter> <ebTest:TestAssertion description = "Verify that message is an 'ReceiptAcknowledgment with a Purchase order Reference corresponding to the ConversationId'"> <ebTest:VerifyContent>TEST:FilterResult/TEST:Message/TEST:Part[TEST:Packaging/TEST:Header[TEST:Name="Content-Id" and TEST:Value="cid:ReceiptAcknowledgment"]and [TEST:Content//ReceiptAcknowledgment[Reference=$ConversationId]]</ebTest:VerifyContent> </ebTest:TestAssertion> <ebTest:TestAssertion description = "Verify that Receipt Acknowledgment occured within specified 'TimeToAcknowledgeReceipt'"> <ebTest:VerifyTimeDifference> <ebTest:ParamName>BusinessTimeStamp</ebTest:ParamName> <ebTest:ParamName>RequestTimestamp</ebTest:ParamName> <ebTest:Operator>lessThanOrEqual</ebTest:Operator> <ebTest:Difference>PT120S</ebTest:Difference> </ebTest:VerifyTimeDifference> </ebTest:TestAssertion> <ebTest:Join> <ebTest:ThreadRef nameRef = "thread_01"/> </ebTest:Join> <ebTest:GetMessage description = "Retrieve Response message(s) "> <ebTest:Filter>/TEST:MessageStore/TEST:Message/TEST:Part/TEST:Content/TEST:soap:Header[eb:MessageHeader[eb:ConversationId=$ConversationId and eb:Action="Mute" ] and [eb:Manifest/eb:Reference/xlink:href="cid:Pip34PurchaseOrderResponse"]]</ebTest:Filter>

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 430 of 447

1

12345

689

101112131415161718

19202122242526

272830313233

3435363839404142434445464748495051

52535455

57

23

Page 431: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

</ebTest:GetMessage> <ebTest:SetXPathParameter> <ebTest:Name>RefToMessageId</ebTest:Name> <ebTest:Expression>TEST:FilterResult/TEST:MessageTEST:Part/TEST:Content/TEST:soap:Header/eb:MessageHeader/eb:MessageData/eb:RefToMessageId</ebTest:Expression> </ebTest:SetXPathParameter> <ebTest:TestAssertion description = "Verify that result contains either a single Confirmation or Rejection"> <ebTest:VerifyContent>TEST:FilterResult/TEST:Message/TEST:Part/TEST:Content//*[Confirmation or Rejection]]</ebTest:VerifyContent> </ebTest:TestAssertion> <ebTest:PutMessage description = "Send a message containing a BusinessAcknowledgment attachment"> <ebTest:SetMessage> <ebTest:Packaging/> <ebTest:Content> <ebTest:Declaration> <soap:Envelope xmlns:soap = "http://www.oasis-open.org/tc/ebxml-iic/tests/soap" xmlns:eb = "http://www.oasis-open.org/tc/ebxml-iic/tests/eb"> <soap:Header> <eb:MessageHeader> <eb:Action>Purchase</eb:Action> </eb:MessageHeader> </soap:Header> <soap:Body> <eb:Manifest> <eb:Reference xlink:href = "cid:BusinessAcknowledgmentt"/> </eb:Manifest> </soap:Body> </soap:Envelope> </ebTest:Declaration> </ebTest:Content> <ebTest:Mutator> <ebTest:FileURI>ebXMLEnvelope.xsl</ebTest:FileURI> </ebTest:Mutator> </ebTest:SetMessage> <ebTest:SetPayload description = "Add content-id and payload to MIME message"> <ebTest:Packaging/> <ebTest:Content> <ebTest:FileURI>BusinessAcknowledgment.xml</ebTest:FileURI> </ebTest:Content> </ebTest:SetPayload> </ebTest:PutMessage> </ebTest:TestCase></ebTest:TestSuite>

The XML document below is the normative representation of Test Case #2 in section 4.2

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 431 of 447

1

123

45789

1011131415161718192021222324

2527282930313233343536373839404142434445

464849505152

5354

55

23

Page 432: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

<?xml version = "1.0" encoding = "UTF-8"?><?xml-stylesheet type="text/xsl" href="xslt\ebXMLTestsuite.xsl"?><ebTest:TestSuite xmlns:ebTest = "http://www.oasis-open.org/tc/ebxml-iic/tests" configurationGroupRef = "mshc_Basic" xmlns:ds = "http://www.oasis-open.org/tc/ebxml-iic/tests/xmldsig" xmlns:xlink = "http://www.w3.org/1999/xlink" xmlns:xsi = "http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation = "http://www.oasis-open.org/tc/ebxml-iic/tests schemas\ebTest.xsd"> <ebTest:MetaData> <ebTest:Title>Use Case 2</ebTest:Title> <ebTest:Description>POC for BPSS testing: Case 2: Catching unexpected ebXML Error messages</ebTest:Description> <ebTest:Version>0.1</ebTest:Version> <ebTest:Maintainer>Michael Kass</ebTest:Maintainer> <ebTest:Location>ScriptingTestSuite.xml</ebTest:Location> <ebTest:PublishDate>05/20/2004</ebTest:PublishDate> <ebTest:Status>DRAFT</ebTest:Status> </ebTest:MetaData> <ebTest:ConfigurationGroup id = "mshc_Basic"> <ebTest:Mode>connection</ebTest:Mode> <ebTest:StepDuration>300</ebTest:StepDuration> <ebTest:Transport>HTTP</ebTest:Transport> <ebTest:Envelope>ebXML</ebTest:Envelope> <ebTest:StoreAttachments>true</ebTest:StoreAttachments> <ebTest:ValidationType>XMLSchema</ebTest:ValidationType> <ebTest:MutatorType>XSLT</ebTest:MutatorType> <ebTest:SetParameter> <ebTest:Name>SenderParty</ebTest:Name> <ebTest:Value>TestDriver</ebTest:Value> </ebTest:SetParameter> <ebTest:SetParameter> <ebTest:Name>ReceiverParty</ebTest:Name> <ebTest:Value>TestService</ebTest:Value> </ebTest:SetParameter> <ebTest:SetParameter> <ebTest:Name>Service</ebTest:Name> <ebTest:Value>urn:ebxml:iic:test</ebTest:Value> </ebTest:SetParameter> <ebTest:SetParameter> <ebTest:Name>Action</ebTest:Name> <ebTest:Value>Dummy</ebTest:Value> </ebTest:SetParameter> <ebTest:SetParameter> <ebTest:Name>CPAId</ebTest:Name> <ebTest:Value>mshc_Basic</ebTest:Value> </ebTest:SetParameter> <ebTest:Namespaces> <ebTest:SetNamespace> <ebTest:Name>eb</ebTest:Name> <ebTest:Value>http://www.oasis-open.org/committees/ebxml-msg/schema/msg-header-2_0.xsd</ebTest:Value> </ebTest:SetNamespace> <ebTest:SetNamespace> <ebTest:Name>soap</ebTest:Name>

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 432 of 447

1

123456789

101112131415161718192021222324252627282930313233343536373839404142434445464748

4950525354

23

Page 433: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

<ebTest:Value>http://schemas.xmlsoap.org/soap/envelope/</ebTest:Value> </ebTest:SetNamespace> <ebTest:SetNamespace> <ebTest:Name>TEST</ebTest:Name> <ebTest:Value>http://www.oasis-open.org/tc/ebxml-iic/testing/messageStore</ebTest:Value> </ebTest:SetNamespace> </ebTest:Namespaces> </ebTest:ConfigurationGroup> <ebTest:TestCase id = "testcase_1" description = "Catching unexpected ebXML Error messages" requirementReferenceId = "req_1"> <ebTest:ThreadGroup> <ebTest:Thread name = "thread_01"> <ebTest:Sleep>180</ebTest:Sleep> </ebTest:Thread> <ebTest:Thread name = "thread_02"> <ebTest:Sleep>300</ebTest:Sleep> <ebTest:GetMessage description = "Get any received error messages from the MessageStore"> <ebTest:Filter>/TEST:MessageStore/Message/TEST:Message/TEST:Part[1]/TEST:Content/soap:Envelope/soap:Header[[eb:MessageHeader[eb:CPAId="$CPAId" and eb:ConversationId=$ConversationId] and eb:ErrorList]</ebTest:Filter> </ebTest:GetMessage> <ebTest:TestAssertion description = "Verify No Error is present"> <ebTest:VerifyContent>/TEST:FilterResult/TEST:Message/TEST:Part[1]/TEST:Content/soap:Envelope/soap:Header/eb:ErrorList</ebTest:VerifyContent> <ebTest:WhenTrue> <ebTest:Exit description = "ErrorList was found">fail</ebTest:Exit> </ebTest:WhenTrue> </ebTest:TestAssertion> </ebTest:Thread> </ebTest:ThreadGroup> <ebTest:PutMessage description = "Send a message m1"> <ebTest:SetMessage> <ebTest:Packaging/> <ebTest:Content> <ebTest:Declaration> <soap:Envelope xmlns:soap = "http://www.oasis-open.org/tc/ebxml-iic/tests/soap" xmlns:eb = "http://www.oasis-open.org/tc/ebxml-iic/tests/eb"> <soap:Header> <eb:MessageHeader> <eb:Action>Purchase</eb:Action> </eb:MessageHeader> </soap:Header> <soap:Body> <eb:Manifest> <eb:Reference xlink:href = "cid:Pip34APurchaseOrderRequest"/>

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 433 of 447

1

1345

679

101112131415161718192021

222324262728

29303233343536373839404142434445464748

49515253545556

23

Page 434: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

</eb:Manifest> </soap:Body> </soap:Envelope> </ebTest:Declaration> </ebTest:Content> <ebTest:Mutator> <ebTest:FileURI>ebXMLEnvelope.xsl</ebTest:FileURI> </ebTest:Mutator> </ebTest:SetMessage> </ebTest:PutMessage> <ebTest:Split> <ebTest:ThreadRef nameRef = "thread_01"/> </ebTest:Split> <ebTest:Split> <ebTest:ThreadRef nameRef = "thread_02"/> </ebTest:Split> <ebTest:Join> <ebTest:ThreadRef nameRef = "thread_01"/> </ebTest:Join> <ebTest:GetMessage description = "Retrieve Response message M2"> <ebTest:Filter>/TEST:MessageStore/TEST:Message/TEST:Part[1]/TEST:Content/soap:Envelope/soap:Header[eb:MessageHeader[eb:ConversationId=$ConversationId and eb:Action="PurchaseOrderResponse"]]</ebTest:Filter> </ebTest:GetMessage> <ebTest:TestAssertion description = "Verify Response is present"> <ebTest:VerifyContent>/TEST:FilterResult//TEST:Message(count()=1)></ebTest:VerifyContent> </ebTest:TestAssertion> <ebTest:Join> <ebTest:ThreadRef nameRef = "thread_02"/> </ebTest:Join> </ebTest:TestCase></ebTest:TestSuite>

The XML document below is the normative representation of Test Case #3 in section 4.2

<?xml version = "1.0" encoding = "UTF-8"?><?xml-stylesheet type="text/xsl" href="xslt\ebXMLTestsuite.xsl"?><ebTest:TestSuite xmlns:ebTest = "http://www.oasis-open.org/tc/ebxml-iic/tests" configurationGroupRef = "mshc_Basic" xmlns:ds = "http://www.oasis-open.org/tc/ebxml-iic/tests/xmldsig" xmlns:xlink = "http://www.w3.org/1999/xlink" xmlns:xsi = "http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation = "http://www.oasis-open.org/tc/ebxml-iic/tests schemas\ebTest.xsd"> <ebTest:MetaData> <ebTest:Title>Use Case 3</ebTest:Title> <ebTest:Description>POC for BPSS testing: Case 3: Conditional Branching</ebTest:Description> <ebTest:Version>0.1</ebTest:Version> <ebTest:Maintainer>Michael Kass</ebTest:Maintainer> <ebTest:Location>ScriptingTestSuite.xml</ebTest:Location> <ebTest:PublishDate>05/20//2004</ebTest:PublishDate> <ebTest:Status>DRAFT</ebTest:Status>

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 434 of 447

1

123456789

1011121314151617181920

21222325262728293031323334

3536

3738394041424344454647484950515253

23

Page 435: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

</ebTest:MetaData> <ebTest:ConfigurationGroup id = "mshc_Basic"> <ebTest:Mode>connection</ebTest:Mode> <ebTest:StepDuration>300</ebTest:StepDuration> <ebTest:Transport>HTTP</ebTest:Transport> <ebTest:Envelope>ebXML</ebTest:Envelope> <ebTest:StoreAttachments>true</ebTest:StoreAttachments> <ebTest:ValidationType>XMLSchema</ebTest:ValidationType> <ebTest:MutatorType>XSLT</ebTest:MutatorType> <ebTest:SetParameter> <ebTest:Name>SenderParty</ebTest:Name> <ebTest:Value>TestDriver</ebTest:Value> </ebTest:SetParameter> <ebTest:SetParameter> <ebTest:Name>ReceiverParty</ebTest:Name> <ebTest:Value>TestService</ebTest:Value> </ebTest:SetParameter> <ebTest:SetParameter> <ebTest:Name>Service</ebTest:Name> <ebTest:Value>urn:ebxml:iic:test</ebTest:Value> </ebTest:SetParameter> <ebTest:SetParameter> <ebTest:Name>Action</ebTest:Name> <ebTest:Value>Dummy</ebTest:Value> </ebTest:SetParameter> <ebTest:SetParameter> <ebTest:Name>CPAId</ebTest:Name> <ebTest:Value>mshc_Basic</ebTest:Value> </ebTest:SetParameter> <ebTest:Namespaces> <ebTest:SetNamespace> <ebTest:Name>eb</ebTest:Name> <ebTest:Value>http://www.oasis-open.org/committees/ebxml-msg/schema/msg-header-2_0.xsd</ebTest:Value> </ebTest:SetNamespace> <ebTest:SetNamespace> <ebTest:Name>soap</ebTest:Name> <ebTest:Value>http://schemas.xmlsoap.org/soap/envelope/</ebTest:Value> </ebTest:SetNamespace> <ebTest:SetNamespace> <ebTest:Name>TEST</ebTest:Name> <ebTest:Value>http://www.oasis-open.org/tc/ebxml-iic/testing/messageStore</ebTest:Value> </ebTest:SetNamespace> </ebTest:Namespaces> </ebTest:ConfigurationGroup> <ebTest:TestCase id = "testcase_3" description = "Conditional Branching" requirementReferenceId = "req_1"> <ebTest:ThreadGroup> <ebTest:Thread name = "_01"> <ebTest:Sleep>300</ebTest:Sleep>

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 435 of 447

1

123456789

1011121314151617181920212223242526272829303132

3334363738

39414243

44454748495051525354

23

Page 436: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

<ebTest:GetMessage description = "Get all received messages from the MessageStore"> <ebTest:Filter>/TEST:MessageStore/Message/TEST:Message/TEST:Part[1]/TEST:Content/soap:Envelope/soap:Header[eb:CPAId="$CPAId" and eb:ConversationId=$ConversationId]</ebTest:Filter> </ebTest:GetMessage> <ebTest:TestAssertion description = "Verify No Error is present"> <ebTest:VerifyContent>/TEST:FilterResult/Message/TEST:Message/TEST:Part[1]/TEST:Content/soap:Envelope/soap:Header[not(eb:ErrorList)]</ebTest:VerifyContent> </ebTest:TestAssertion> </ebTest:Thread> <ebTest:Thread name = "_02"> <ebTest:TestAssertion description = "Validate approval document'"> <ebTest:ValidateContent contentType = "XML" schemaLocation = "http://www.eBusines.org/approval.xsd">/FilterResult/Message/Payload/Approval</ebTest:ValidateContent> </ebTest:TestAssertion> <ebTest:GetMessage description = "Retrieve message m3 (quotation)"> <ebTest:Filter>/TEST:MessageStore/Message/TEST:Message/TEST:Part[1]/TEST:Content/soap:Envelope/soap:Header[eb:MessageHeader[eb:ConversationId=$ConversationId and eb:Action="Mute" and eb:MessageData/eb:RefToMessageId=$MessageId] and [eb:Manifest/eb:Reference@xlink:href="cid:Quote"]]</ebTest:Filter> </ebTest:GetMessage> <ebTest:TestAssertion description = "Verify that message is a 'quote'"> <ebTest:VerifyContent>/TEST:FilterResult//Message/TEST:Message/TEST:Part[TEST:Packaging/Test:Header[TEST:Name='Content-Id' and TEST:Value='cid:quote'] and TEST:Content//*Quote] </ebTest:VerifyContent> </ebTest:TestAssertion> <ebTest:TestAssertion description = "Validate message"> <ebTest:ValidateContent contentType = "XML" schemaLocation = "http://http://www.eBusines.org/quote.xsd">/TEST:FilterResult//Message/TEST:Message/TEST:Part[TEST:Packaging/Test:Header[TEST:Name='Content-Id' and TEST:Value='cid:quote']/TEST:Content </ebTest:ValidateContent> </ebTest:TestAssertion> <ebTest:PutMessage description = "Send message (m4), approval of quote"> <ebTest:SetMessage> <ebTest:Packaging/> <ebTest:Content> <ebTest:Declaration> <soap:Envelope xmlns:soap = "http://www.oasis-open.org/tc/ebxml-iic/tests/soap" xmlns:eb = "http://www.oasis-open.org/tc/ebxml-iic/tests/eb"> <soap:Header> <eb:MessageHeader> <eb:Action>ApproveQuote</eb:Action> </eb:MessageHeader> </soap:Header>

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 436 of 447

1

12

345789

10111314151617181920212223

24252627293031

3233343537383940414243444546474849505152535455

56

5860

23

Page 437: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

<soap:Body> <eb:Manifest> <eb:Reference href = "cid:ApproveQuote"/> </eb:Manifest> </soap:Body> </soap:Envelope> </ebTest:Declaration> </ebTest:Content> <ebTest:Mutator> <ebTest:FileURI>ebXMLEnvelope.xsl</ebTest:FileURI> </ebTest:Mutator> </ebTest:SetMessage> <ebTest:SetPayload description = "'Add content-id and payload to MIME message"> <ebTest:Packaging> <ebTest:Header> <ebTest:Name>Content-ID</ebTest:Name> <ebTest:Value>ApproveQuote</ebTest:Value> </ebTest:Header> </ebTest:Packaging> <ebTest:Content> <ebTest:FileURI>file:ApproveQuote.xml</ebTest:FileURI> </ebTest:Content> </ebTest:SetPayload> </ebTest:PutMessage> </ebTest:Thread> <ebTest:Thread name = "_03"> <ebTest:GetMessage description = "Retrieve Response message m2 "> <ebTest:Filter>/TEST:MessageStore/Message/TEST:Message[TEST:Part[1]/TEST:Content/soap:Envelope/soap:Header(eb:MessageHeader[eb:ConversationId=$ConversationId and eb:Action="Mute" and eb:MessageData/eb:MessageId="m2"]</ebTest:Filter> </ebTest:GetMessage> <ebTest:TestAssertion description = "Verify that message is an 'alternative' (not a Quote)"> <ebTest:VerifyContent>/TEST:FilterResult/TEST:Message/TEST:Part[1]/TEST:Packaging/Test:Header[not(TEST:Name='Content-Id' and TEST:Value='cid:quote')]]</ebTest:VerifyContent> </ebTest:TestAssertion> </ebTest:Thread> </ebTest:ThreadGroup> <ebTest:PutMessage description = "Construct a basic message header with manifest reference to payload containing a Request for Quote"> <ebTest:SetMessage> <ebTest:Packaging/> <ebTest:Content> <ebTest:Declaration> <soap:Envelope xmlns:soap = "http://www.oasis-open.org/tc/ebxml-iic/tests/soap" xmlns:eb = "http://www.oasis-open.org/tc/ebxml-iic/tests/eb">

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 437 of 447

1

12

356789

10

11131415161718

19

21232425

2628293031323334

353637394041

424344464748495051525354555657

23

Page 438: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

<soap:Header> <eb:MessageHeader> <eb:Action>RequestQuote</eb:Action> </eb:MessageHeader> </soap:Header> <soap:Body> <eb:Manifest> <eb:Reference href = "cid:RequestQuote"/> </eb:Manifest> </soap:Body> </soap:Envelope> </ebTest:Declaration> </ebTest:Content> <ebTest:Mutator> <ebTest:FileURI>ebXMLEnvelope.xsl</ebTest:FileURI> </ebTest:Mutator> </ebTest:SetMessage> <ebTest:SetPayload description = "'Add content-id and payload to MIME message"> <ebTest:Packaging> <ebTest:Header> <ebTest:Name>Content-ID</ebTest:Name> <ebTest:Value>RequestQuote</ebTest:Value> </ebTest:Header> </ebTest:Packaging> <ebTest:Content> <ebTest:FileURI>file:RequestQuote.xml</ebTest:FileURI> </ebTest:Content> </ebTest:SetPayload> </ebTest:PutMessage> <ebTest:Split> <ebTest:ThreadRef nameRef = "_01"/> </ebTest:Split> <ebTest:GetMessage description = "Retrieve Response message m2 "> <ebTest:Filter>/TEST:MessageStore/Message/TEST:Message/TEST:Part[1]/TEST:Content/soap:Envelope/soap:Header[eb:MessageHeader[eb:ConversationId=$ConversationId and eb:Action="Mute" and eb:MessageData/eb:RefToMessageId=$MessageId] and [eb:Manifest/eb:Reference/xlink:href="cid:response"]]</ebTest:Filter> </ebTest:GetMessage> <ebTest:TestAssertion description = "Verify that message is an 'approval"> <ebTest:VerifyContent>/TEST:FilterResult//Message/TEST:Message/TEST:Part[TEST:Packaging/Test:Header[TEST:Name='Content-Id' and TEST:Value='cid:response'] and TEST:Content//*Approval] </ebTest:VerifyContent> <ebTest:WhenTrue> <ebTest:ThreadRef nameRef = "_02"/> </ebTest:WhenTrue> </ebTest:TestAssertion> <ebTest:TestAssertion description = "If it is a rejection">

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 438 of 447

1

12

356789

10111213141516171819202122232425262728293031323334353637383940414243

444546474950515253

23

Page 439: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

<ebTest:VerifyContent>/TEST:FilterResult//Message/TEST:Message/TEST:Part[TEST:Packaging/Test:Header[TEST:Name='Content-Id' and TEST:Value='cid:response'] and TEST:Content//*Rejection] </ebTest:VerifyContent> <ebTest:WhenTrue> <ebTest:ThreadRef nameRef = "_03"/> </ebTest:WhenTrue> </ebTest:TestAssertion> <ebTest:Join joinType = "orjoin"> <ebTest:ThreadRef nameRef = "_02"/> <ebTest:ThreadRef nameRef = "_03"/> </ebTest:Join> <ebTest:Join> <ebTest:ThreadRef nameRef = "_01"/> </ebTest:Join> </ebTest:TestCase></ebTest:TestSuite>

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 439 of 447

1

12346789

101112131415161718

1920212223242526272829303132

33

34

35

36

37

38

39

40

41

42

43

44

45

23

Page 440: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 440 of 447

1

1

2

3

4

5

23

Page 441: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

Appendix I Terminology

Several terms used in this specification are borrowed from the Conformance Glossary (OASIS, [ConfGlossary]) and also from the Standards and Conformance Testing Group at NIST. [ConfCertModelNIST]. They are not reported in this glossary, which only reflects (1) terms that are believed to be specific to – and introduced by - the ebXML Test Framework, or (2) terms that have a well understood meaning in testing literature (see above references) and may have additional properties in the context of the Test Framework that is worth mentioning.

Term Definition

Asymmetric testing Interoperability testing where all parties are not equally tested for the same features. An asymmetric interoperability test suite is typically driven from one party, and will need to be executed from every other party in order to evenly test for all interoperability features between candidate parties.

Base CPA Required by both the conformance and interoperability test suites that describe both the Test Driver and Test Service Collaboration Protocol Profile Agreement. This is the “bootstrap” configuration for all messaging between the testing and candidate ebXML applications. Each test suite will define additional CPAs. How the base CPA is represented to applications is implementation specific.

Candidate Implementation (or Implementation Under test): The implementation (realization of a specification) used as a target of the testing (e.g. conformance testing).

Conformance Fulfillment of an implementation of all requirements specified; adherence of an implementation to the requirements of one or more specific standards or specifications.

Connection mode (Test Driver in) In connection mode and depending on the test harness, the test driver will interact with other components by directly generating ebXML messages at transport level (e.g. generates HTTP envelopes).

Interoperability profile A set of test requirements for interoperability which is a subset of all possible interoperability requirements, and which usually exercises features that correspond to specific user needs.

Interoperability Testing Process of verifying that two implementations of the same specification, or that an implementation and its operational environment, can interoperate according to the requirements of an assumed agreement or contract. This contract does not belong necessarily to the specification, but its terms and elements should be defined in it with enough detail, so that such a contract, combined with the specification, will be sufficient to determine precisely the expected behavior of an implementation, and to test it.

Local Reporting mode (Test Service in)

In this mode (a sub-mode of Reporting), the Test Service is installed on the same host as the Test Driver it reports to, and executes in the same process space. The notification uses the Receive interface of the Test Driver, which must be operating in service mode.

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 441 of 447

1

1

2345678

9

23

Page 442: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

Loop mode (Test Service in) When a test service is in loop mode, it does not generate notifications to the test driver. The test service only communicates with external parties via the message handler.

MSH Message Service Handler, an implementation of ebXML Messaging Services

Reporting mode (Test Service in) A test service is deployed in reporting mode, when it notifies the test driver of invoked actions. This notification usually contains material from received messages.

Profile A profile is used as a method for defining subsets of a specification by identifying the functionality, parameters, options, and/or implementation requirements necessary to satisfy the requirements of a particular community of users. Specifications that explicitly recognize profiles should provide rules for profile creation, maintenance, registration, and applicability.

Remote Reporting mode (Test Service in)

In this mode (a sub-mode of Reporting), the Test Service is deployed on a different host than the Test Driver it reports to. The notification is done via messages to the Test Driver, which is operating in connection mode.

Service mode (Test Driver in) The Test Driver invokes actions in the test service via a programmatic interface (as opposed to via messages). The Test Service must be in local reporting mode.

Specification coverage Specifies the degree that the specification requirements are satisfied by the set of test requirements included in the test suite document. Coverage can be full, partial or none.

Test actions (Or Test Service actions). Standard functions available in the test service to support most test cases.

Test case In the Test Framework, a test case is a sequence of discrete Threads, aimed at verifying a test requirement.

Test Requirements coverage Specifies the degree that the test requirements are satisfied by the set of test cases listed in the test suite document. Coverage can be full, contingent, partial or none.

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 442 of 447

1

123456789

1011

23

Page 443: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

Appendix J References

Normative References

[ConfCertModelNIST] Conformance Testing and Certification Model for Software Specifications. L. Carnahan, L. Rosenthal, M. Skall. ISACC '98 Conference. March 1998

[ConfCertTestFrmk] Conformance Testing and Certification Framework. L. Rosenthal, M. Skall, L. Carnahan. April 2001

[ConfReqOASIS] Conformance Requirements for Specifications. OASIS Conformance Technical Committee. March 2002.

[ConfGlossary] Conformance Glossary. OASIS Conformance TC, L. Rosenthal. September 2000.

[RFC2119] Key Words for use in RFCs to Indicate Requirement Levels, Internet Engineering Task Force, March 1997

[RFC2045] Multipurpose Internet Mail Extensions (MIME) Part One: Format of Internet Message Bodies, N Freed & N Borenstein, Published November 1996

[RFC2046] Multipurpose Internet Mail Extensions (MIME) Part Two: Media Types. N. Freed, N. Borenstein. November 1996.

[RFC2387] The MIME Multipart/Related Content-type. E. Levinson. August 1998.

[RFC2392] Content-ID and Message-ID Uniform Resource Locators. E. Levinson, August 1998

[RFC2396] Uniform Resource Identifiers (URI): Generic Syntax. T Berners-Lee, August 1998

[RFC2821] Simple Mail Transfer Protocol, J. Klensin, Editor, April 2001 Obsoletes RFC 821

[RFC2616] Fielding, R., Gettys, J., Mogul, J., Frystyk, H., Masinter, L., Leach, P. and T. Berners-Lee, "Hypertext Transfer Protocol, HTTP/1.1", June 1999.

[SOAP] W3C-Draft-Simple Object Access Protocol (SOAP) v1.1, Don Box, DevelopMentor; David Ehnebuske, IBM; Gopal Kakivaya, Andrew Layman, Henrik Frystyk Nielsen, Satish Thatte, Microsoft; Noah Mendelsohn, Lotus Development Corp.; Dave Winer, UserLand Software, Inc.; W3C Note 08 May 2000,http://www.w3.org/TR/2000/NOTE-SOAP-20000508/

[SOAPAttach] SOAP Messages with Attachments, John J. Barton, Hewlett Packard Labs; Satish Thatte and Henrik Frystyk Nielsen, Microsoft, Published Oct 09 2000 http://www.w3.org/TR/2000/NOTE-SOAP-attachments-20001211

[XLINK] W3C XML Linking Recommendation, http://www.w3.org/TR/2001/REC-xlink-20010627/

[XML] W3C Recommendation: Extensible Markup Language (XML) 1.0 (Second Edition), October 2000, http://www.w3.org/TR/2000/REC-xml-20001006

[XMLC14N] W3C Recommendation Canonical XML 1.0,http://www.w3.org/TR/2001/REC-xml-c14n-20010315

[XMLNS] W3C Recommendation for Namespaces in XML, World Wide Web Consortium, 14 January 1999, http://www.w3.org/TR/1999/REC-xml-names-19990114/

[XMLDSIG] Joint W3C/IETF XML-Signature Syntax and Processing specification, http://www.w3.org/TR/2002/REC-xmldsig-core-20020212/.

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 443 of 447

1

1

2

3

456

78

910

11

1213

1415

1617

18

19

20

21

2223

2425262728

293031

32

3334

3536

3738

3940

23

Page 444: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

[XPointer] XML Pointer Language (XPointer) Version 1.0, W3C Candidate Recommendation 11 September 2001, http://www.w3.org/TR/2001/CR-xptr-20010911/

Non-Normative References

[ebTestFramework] ebXML Test Framework specification, Version 1.0, Technical Committee Specification, March 4, 2003,http://www.oasis-open.org/committees/tc_home.php?wg_abbrev=ebxml-iic

[ebMS] ebXML Messaging Service Specification, Version 2.0,http://www.oasis-open.org/committees/tc_home.php?wg_abbrev=ebxml-msg

[ebMSInteropTests] ebXML MS V2.0 Basic Interoperability Profile Test Cases,http://www.oasis-open.org/committees/tc_home.php?wg_abbrev=ebxml-iic

[ebMSConfTestSuite] ebXML MS V2.0 Conformance Test Suite,http://www.oasis-open.org/committees/tc_home.php?wg_abbrev=ebxml-iic

[ebMSInteropReqs] ebXML MS V2.0 Interoperability Test Requirements,http://www.oasis-open.org/committees/tc_home.php?wg_abbrev=ebxml-iic

[XMLSchema] W3C XML Schema Recommendation,http://www.w3.org/TR/2001/REC-xmlschema-0-20010502/http://www.w3.org/TR/2001/REC-xmlschema-1-20010502/http://www.w3.org/TR/2001/REC-xmlschema-2-20010502/

[ebCPP] ebXML Collaboration Protocol Profile and Agreement specification, Version 1.0, published 10 May, 2001,http://www.ebxml.org/specs/ebCCP.doc

[ebBPSS] ebXML Business Process Specification Schema, version 1.0, published 27 April 2001,http://www.ebxml.org/specs/ebBPSS.pdf.

[ebRS] ebXML Registry Services Specification, version 2.0, published 6 December 2001http://www.oasis-open.org/committees/regrep/documents/2.0/specs/ebrs.pdf, published, 5 December 2001.

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 444 of 447

1

12

3

4

567

89

1011

1213

1415

16

17181920

212223

2425

262728

29

30313233343536373839404142

23

Page 445: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

Appendix K AcknowledgmentsThe authors wish to acknowledge the support of the members of the OASIS ebXML IIC TC who contributed ideas, comments and text to this specification by the group’s discussion eMail list, on conference calls and during face-to-face meetings.

IIC Committee Members

Jacques Durand, Fujitsu <[email protected]>Jeffery Eck, Global Exchange Services <[email protected]>Hatem El Sebaaly, IPNet Solutions <[email protected]>Aaron Gomez, Drummond Group Inc. <[email protected]>Michael Kass, NIST <[email protected]> Matthew MacKenzie, Individual <[email protected]>Monica Martin, Sun Microsystems <[email protected]> Tim Sakach, Drake Certivo <[email protected]>Jeff Turpin, Cyclone Commerce <[email protected]>Eric van Lydegraf, Kinzan <[email protected]>Pete Wenzel, SeeBeyond <[email protected]>Steven Yung, Sun Microsystems <[email protected]>Boonserm Kulvatunyou, NIST <[email protected]>Han Kim Ngo, NIST [email protected]

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 445 of 447

1

1234

5

6789

10111213141516171819

202122232425262728293031323334353637

38

39

40

41

23

Page 446: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement

Appendix L Revision History

Rev Date By Whom What

cs-10 2003-03-07 Michael Kass Initial version

cs-11 2004-03-30 Michael Kass First revision (DRAFT)

cs-12 2004-04-12 Michael Kass Second revision (DRAFT)

Cs-13 2004-04-27 Michael Kass Third revision (DRAFT)

Cs14 2004-10-11 Michael Kass Fourth revision (DRAFT)

ebxml-iic-test-framework-10 03 April 2003Copyright © OASIS Open 2003. All Rights Reserved. Page 446 of 446

1

1

234

567

23

Page 447: ebXML Test Procedures DRAFT Documentxml.coverpages.org › IIC-ebXMLTestFramework-CSv11-20…  · Web viewCreation of a testing profile requires selection of a group of Test Requirement