[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]
Subject: [ebBP] 10/22/2004: Editors' Update and Reminder about Team Call Today8 a.m. PDT
Reminder: 8 a.m. PDT, 30-minute team update on Editors' meeting, Friday, 22 October. 866-882-3998, international 865 525 0769, passcode 9081038. ================================================================================================= ebBP Editors' F2F Update (functional review): We mapped the work items to resolutions, progress, the technical specification and schema changes. Here are the explicit work items and changes recommended. We will discuss on Monday whether the TC wishes to accept these recommendations. Some are clarifications or more detail related to our discussions or decisions (for the schema and the specification). Technical review of updates also provided by Moberg (Thanks Dale). New schema attached. We did some updates to the technical specification and JJ Dubray is working to have the specification ready by early November. Thanks to Dale, JJ, Sally St. Amand, and John Yunker for their work and contributions. 1. Work Item 11 Packaging: Replacement of include element with XInclude. Semantics proposed to be that only a package can be included in a BPSS instance. Some implementor best practices will be provided in the technical specification. Packages are relevant to substitution and inclusion (can be used included and physically reused in multiple BPSS instances). We can show hierarchy of packages based on name or through that of the parent. Hierarchy is inferred from the references not the name. 2. Work Item 11 Packaging and Work Item 70 BPSS Extensibility: Substitution: With the inclusion of variables, we now have less need to explicitly define document substitution. Therefore, the editors' propose we refine the substi tution capability and more effectively use XPath for attribute substitution. The Specification element will be optional to encourage the definition of a logical business document that can be reused and refined for a physical business document specific to a particular domain. 3. Work Item 25 Multiple requests-responses and Work Item 23 Multiple documents in an envelope a. Can also relate to multiple requests or responses to a particular request or response. Recommend these be handled in existing BTAs in a choreographed way. b. On attachments, accept JEITA request to add min and maxOccurs attributes on Attachment element. Integrate into specification and schema. Use Yano example in the technical specification. Any complex expressions about state need to be computed as services on either end and provided/communicated in the message exchange. State alignment are the responsibility of messages; computations should be handled by services. Use variables, and XPath (simple) and XSLT (complex) capabilities to support. Variable changes were to add a BTA references for context and a document ref for the document used to feed into the expression. If the language allows variables, all the variables that are populated up until that point, the variables need to be provided into the environment that uses them. Example: var name="qty" exp="/qty" language=XPATH documentref=doc1 var name="price" exp="/amount" language=XPATH documentref=doc1 var name="limit" exp="/limit" language=XPATH documentref=doc2 var name="IsLimit" exp="$qty*$price>$limit" language=XSLT Example 2: var name=poorderref expression=/po/orderid language=XPath businessdocument=po var name=invoiceorderref expression=/invoice/originalorder/orderref language=XPath businessdocument=invoice conditionexpression expression="$poorderref=$invoiceorderref" language=XSLT 4. Work Item 32 EDI support Indicate partners may wish to used new functions available now or in the near future. XPath will operate on the result of rendering EDI into XML per ISO/DIS20625. 5. Work Item 12 WSDL/Web services support Resolved the Operation Mapping proposed structure. Must specify input, output, fault, interface, operation, role, BTA and document envelope or signal reference. Package OperationMapping MessageMap: BTA ref for interface, role reference SignalMap Operation name Operation ref (input, output, fault) doc env ref 6. Work Item 36-52-60-61 NOF and general exceptions This adds the NOF and general exception. The general exception type is not a part of the BT patterns. This is related to the BSI and the business protocol. 7. Work Item 77 isIntelligibleCheckRequired Place language in the specification that indicates this attribute means the party said the business document is actionable, i.e. it is parsable and reasable. Serm Kulvatunyou had asked a question if this is a SHOULD rather than a MUST. It is actually a MUST per Yunker. Work Item 59 Additional transaction support This asks if we can make changes to the understood pattern used by the parties under specific conditions. Consensus was to recommend that any changes should be made in the CPPA instead. Work Item 62 Use of BT diagram to replace Figure 17 (turned into a discussion of business retries) If desired, a party can use a business retry or a NOF after a timeout. Take this use case, $1 million transaction. Somewhere, a backend system drops a message. You get a TTP timeout. You can retry or you can NOF abandon and continue with complete restart. Recommendation: Leave retryCount attribute as optional and revisit in v3.0 to see if we can include explicitly in the choreography. Use BT diagram but ask for an update using AA on the response (requester signals to the responder). Request made to Roberts to update for use in the technical specification. 8. Work Item 22 BT patterns and Work Item 70 BPSS extensibility The business transaction pattern can be extended using substitution for the Business Transaction.Be clear if a new pattern is created, the semantics and other supporting criteria will need to be defined. Extensibility is outside of the protocol. BT element has a pattern name which is extensible. Choreography can be used to handle this implicitly - define with multiple BTA within a binary collaboration in a choreography. 9. Work Item 36-52-60-61 NOF and General Exceptions Added an exception type. No changes required for signal envelope type. The general exception can apply to an BT pattern. Use simple text in the technical specification that: NOF is a choreographed behavior for which you can plan. The general exception handles unchoreographed / unplanned events. The general exception has not been added to any of the predefined business transaction patterns. Detailed summary to be provided by Martin. 10. Work Item 43-66 Name and Name ID Minor updates in schema confirmed after questions raised by Kenji Nagahashi. a. The toRole on PerformsType is optional. b. Use current and performs roles for PerformsType. Current role reference is required. 11. Work Item 47 Inner and Outer Collaboration or related collaborations Retain the well-formedness rule that all non-isInnerCollaboration BC are eligible to start a complex BC or MPC. Any ambiquity on the initiating role should be resolved by a separate or distinguishing document envelope. 12. Work Item 53 TTP for Inner and Outer Collaboration Retain the well-formedness rule: An outer collaboration TTP has to be no shorter than the longest inner collaboration. 13. Work Item 72 onInitiation No changes other than those already specified. Use Moberg white paper for technical specification details. 14. Work Item 54 Attribute inconsistencies between BTA and CA Retain a well-formedness rule: Any information referenced in a condition statement on a transition guard must be visible to the initiatingRole in the 'to' BTA. 15. Work Item 42 Visualization Met again with BPMN team 21 October 2004. We are almost ready with a viable model using the BPMN notation. More detail can be added later and supported by the BPMN notation. Dubray updated example attached. ================================================================================================= Well-formedness rules thus far: 1. When a Specification element is optional on a business document element, this indicates that the business document is abstract and substitution can be used to replace the logical business document with a physical one that is relevant to a particular domain or use. 2. Only packages can be used with the XInclude mechanism. 3. A user is responsible to understand where to include packages that are valid when XInclude mechanism is used. 4. When you use the variable, it is cast in a type that is usable in that conditional expression. 5. Any variables used in the condition tree for the BTActivity guard must precede the guard in the execution of the BTA. 6. All non-isInnerCollaboration BC are eligible to start a complex BC or MPC. 7. Ambiquity should be resolved by a separate or distinguishing document envelope to clarify the intiating role. 8. An outer collaboration TTP has to be no shorter than long as the longest inner collaboration. 9. Any information referenced in a condition statement on a transition guard must be visible to the initiatingRole in the 'to' BTA. More rules under development - Moberg, schema. ================================================================================================= ebBP Editors' F2F Update (technical review): *XML Mechanics* *Resolved to optimize the amount of XML mechanics found in BPSS for clarity and efficiency. * Deletions 1. SubstitutionSet unneeded, 2. SubstitutionSet child DocumentSubstitution deleted. 3. Include deleted Modifications 1. AttributeSubstitution retained but promoted. It now has three attributes, elementRef, attributeName, and value. These elements are directives (following processing of XInclude include elements, see below) that do simple edits on attribute values of elements referencable by an ID. The elementRef attribute has a value with type IDREF that selects an element. The attributeName attribute has a value (type NMToken) that names the attribute to be modified, and value has the value to substitute. These directives result in the BPSS instance to be used. For example, a different BT can be pointed to in a BTA by edited the IDREF value of businessTransactionRef. Editing attributes of Specification elements within Document can change details of documents, updating versions or whatever. Hence this mechanism has as much power, probably more, than we need for simple edits. Other transforms can make use of xslt transforms, CAM or whatever. 2. The Xinclude is now a Candidate Rec and so we can replace our Include element with the xi:include element. The include processing will occur at the infoset level and must be done prior to instance validation. We constrain include constructs to be used to include Packages picked out using the XInclude apparatus from BPSS instances. Any AttributeSubstitution directed edits are done after XInclude processing. *Attribute name and related cleanup* 1. Resolved to standardize on using a suffix of “Ref” when an attribute is type IDREF. This harmonized the mixed bag of names we had. 2. Resolved to formulate a list of well formedness rules providing constraints on just what IDREF expressions could reference. 3. collaborationRef replaces binaryCollaborationRef within CollaborationActivity, and these can now reference any of the Collaboration elements (which are now expanded to be: BinaryCollaboration, MultipartyCollaboration, and BusinessCollaboration). These should differ solely in the multiplicity of Roles. Both Package and ProcessSpecification updated to include BusinessCollaboration. 4. parentRef attribute added to Package to indicate subordination. Package is now just a convenience used to organize Collaborations and their referenced elements. They are also the units of inclusion, which is their primary reason to exist. While the Packages can nest, no particular semantics attaches to this nesting. 5. Changed attribute names on Performs to ones liked more by majority toRole and fromRole dropped in favor of currentRoleRef and performsRoleRef. *New Content Models for Variable and OperationMapping* Variables are being introduced to provide some very simple functionality that has been requested. The *Variable* content model is: <xsd:element name="Variable"> <xsd:annotation> <xsd:documentation>Global.BtaRef and BdRef point to what context and documents are relevant to ConditionExpression evalutation. Variable assumes type, if any, from expression evaluation</xsd:documentation> </xsd:annotation> <xsd:complexType> <xsd:sequence> <xsd:element ref="ConditionExpression"/> </xsd:sequence> <xsd:attributeGroup ref="name"/> <xsd:attribute name="BtaRef" type="xsd:IDREF" use="optional"/> <xsd:attribute name="BdRef" type="xsd:IDREF" use="optional"/> </xsd:complexType> </xsd:element> Variables can be listed in Packages or in the root element, ProcessSpecification. They should be regarded as global in scope. A BtaRef is used to indicate the choreographic context in which the Variable will be assigned a value. Multiple trips through a BTA will result in a list of values handled by the underlying implementation in accordance with its expressionLanguage. Two expression languages are to be supported for V2.0: xslt and xpath. The BdRef points to the BusinessDocument that is the source of data for processing of expressions. A ConditionExpression contains a declaration of the expressionLanguage and the expression to be evaluated against the instance of BD encountered as the BTA is entered. XPath values are stored in variables. These variables can be used in xslt expressions that occur anywhere in ConditionExpressions. So a POId value from a Purchase Order can be stored in a variable PO, and a POId value from an Invoice can be stored in a variable I. Transition links can then use the equality or inequality of I and PO to control transition. It was the editorial groups’ firm conviction that we would leverage other expression notations for xml processing. As these mature, more expressive power can be added to the apparatus if it is requested. But variables can be a complex and arduous for design (scope, assignment and reassignment, etc,) and we want to keep it simple. The variables mainly resemble xslt variables that can be input into xslt processing “from the environment” The main complication is that in effect each new transition to a BTA results in a new assignment to the global (resembling running a transform again). Saving values from previous passes over a BTA and using them in expressions stretches the notation. JJ and John will document how that functionality is to be supported. It will leave the responsibility to the implementer. The *OperationMapping *content model is: <xsd:complexType name="OperationMappingType"> <xsd:sequence> <xsd:element name="MessageMap" maxOccurs="unbounded"> <xsd:complexType> <xsd:attributeGroup ref="map"/> </xsd:complexType> </xsd:element> <xsd:element name="SignalMap" minOccurs="0" maxOccurs="8"> <xsd:complexType> <xsd:attributeGroup ref="map"/> </xsd:complexType> </xsd:element> </xsd:sequence> <xsd:attributeGroup ref="name"/> <xsd:attribute name="roleRef" type="xsd:IDREF" use="required"/> <xsd:attribute name="BtaRef" type="xsd:IDREF" use="required"/> </xsd:complexType> <xsd:attributeGroup name="map"> <xsd:attribute name="interfaceName" type="xsd:NMTOKEN" use="required"> <xsd:annotation> <xsd:documentation>interface is called portType in WSDL 1.1</xsd:documentation> </xsd:annotation> </xsd:attribute> <xsd:attribute name="operationName" type="xsd:NMTOKEN" use="required"/> <xsd:attribute name="operationStep" type="StepType" use="required"/> <xsd:attribute name="docEnvRef" type="xsd:IDREF" use="required"/> </xsd:attributeGroup> <xsd:simpleType name="StepType"> <xsd:restriction base="xsd:NMTOKEN"> <xsd:enumeration value="input"/> <xsd:enumeration value="output"/> <xsd:enumeration value="fault"/> </xsd:restriction> </xsd:simpleType> The idea is that a BTA can be mapped into WSDL defined interfaces and operations. OperationMapping provides information on how the mapping works. The BtaRef refers to the BTA that is mapped. The roleRef indicates (I think) what is to have the service role in the WS that is mapped. A sequence of MessageMaps and SignalMaps then says what interface, operation, and operation “step” (input, output, or fault) goes with what document envelope. This is similar to saying, in wsdl 1.1, what the type of the message is that is associated with the steps of the operation. If people think we should have qnames rather than NMTokens for some of the attribute values let me know. The editors' team determined qnames should not be used at this time. =================================================================================================
<?xml version="1.0" encoding="UTF-8"?> <!-- edited with XMLSPY v2004 rel. 3 U (http://www.xmlspy.com) by Dale Moberg (Web Services Description WG) --> <xsd:schema targetNamespace="http://www.oasis-open.org/committees/ebBP/BPS/2.0" xmlns="http://www.oasis-open.org/committees/ebBP/BPS/2.0" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xi="http://www.w3.org/2001/XInclude" elementFormDefault="qualified" attributeFormDefault="unqualified"> <xsd:import namespace="http://www.w3.org/XML/1998/namespace" schemaLocation="http://www.w3.org/2001/xml.xsd"/> <xsd:element name="ProcessSpecification" type="ProcessSpecificationType"> <xsd:unique name="ProcessSpecification-ID"> <xsd:selector xpath="."/> <xsd:field xpath="nameID"/> </xsd:unique> </xsd:element> <xsd:complexType name="ProcessSpecificationType"> <xsd:sequence> <xsd:element ref="Documentation" minOccurs="0" maxOccurs="unbounded"/> <xsd:element ref="AttributeSubstitution" minOccurs="0" maxOccurs="unbounded"/> <xsd:element ref="ExternalRoles" minOccurs="0"/> <xsd:element ref="Signal" minOccurs="0" maxOccurs="unbounded"/> <xsd:element ref="Variable" minOccurs="0" maxOccurs="unbounded"/> <xsd:choice minOccurs="0" maxOccurs="unbounded"> <xsd:element ref="Package" minOccurs="0" maxOccurs="unbounded"/> <xsd:element ref="BusinessDocument" minOccurs="0" maxOccurs="unbounded"/> <xsd:element ref="BusinessTransaction" minOccurs="0" maxOccurs="unbounded"/> <xsd:element ref="BinaryCollaboration" minOccurs="0" maxOccurs="unbounded"/> <xsd:element ref="MultiPartyCollaboration" minOccurs="0" maxOccurs="unbounded"/> <xsd:element ref="BusinessCollaboration" minOccurs="0" maxOccurs="unbounded"/> <xsd:element ref="OperationMapping" minOccurs="0" maxOccurs="unbounded"/> </xsd:choice> </xsd:sequence> <xsd:attributeGroup ref="name"/> <xsd:attribute name="version" type="xsd:string" use="required"/> <xsd:attribute name="uuid" type="xsd:string" use="required"/> </xsd:complexType> <xsd:element name="Package"> <xsd:complexType> <xsd:complexContent> <xsd:extension base="PackageType"/> </xsd:complexContent> </xsd:complexType> <xsd:unique name="Package-ID"> <xsd:selector xpath="."/> <xsd:field xpath="nameID"/> </xsd:unique> </xsd:element> <xsd:complexType name="PackageType"> <xsd:choice maxOccurs="unbounded"> <xsd:element ref="Documentation" minOccurs="0" maxOccurs="unbounded"/> <xsd:element ref="AttributeSubstitution" minOccurs="0" maxOccurs="unbounded"/> <xsd:element ref="ExternalRoles" minOccurs="0"/> <xsd:element ref="Signal" minOccurs="0" maxOccurs="unbounded"/> <xsd:element ref="Variable" minOccurs="0" maxOccurs="unbounded"/> <xsd:choice minOccurs="0" maxOccurs="unbounded"> <xsd:element ref="Package" minOccurs="0" maxOccurs="unbounded"/> <xsd:element ref="BusinessDocument" minOccurs="0" maxOccurs="unbounded"/> <xsd:element ref="BusinessTransaction" minOccurs="0" maxOccurs="unbounded"/> <xsd:element ref="BinaryCollaboration" minOccurs="0" maxOccurs="unbounded"/> <xsd:element ref="MultiPartyCollaboration" minOccurs="0" maxOccurs="unbounded"/> <xsd:element ref="BusinessCollaboration" minOccurs="0" maxOccurs="unbounded"/> <xsd:element ref="OperationMapping" minOccurs="0"/> </xsd:choice> </xsd:choice> <xsd:attributeGroup ref="name"/> <xsd:attribute name="parentRef" type="xsd:IDREF" use="optional"/> </xsd:complexType> <xsd:element name="Documentation" type="DocumentationType"> <xsd:annotation> <xsd:documentation> xml:lang added.</xsd:documentation> </xsd:annotation> </xsd:element> <xsd:complexType name="DocumentationType"> <xsd:simpleContent> <xsd:extension base="xsd:string"> <xsd:attribute name="uri" type="xsd:anyURI"/> <xsd:attribute ref="xml:lang"/> </xsd:extension> </xsd:simpleContent> </xsd:complexType> <!--AtributeSubstitution allowed to "edit" references (IDREFS) or other attribute values. --> <xsd:element name="AttributeSubstitution"> <xsd:complexType> <xsd:complexContent> <xsd:extension base="AttributeSubstitutionType"/> </xsd:complexContent> </xsd:complexType> </xsd:element> <xsd:complexType name="AttributeSubstitutionType"> <xsd:sequence> <xsd:element ref="Documentation" minOccurs="0" maxOccurs="unbounded"/> </xsd:sequence> <xsd:attribute name="nameIDRef" type="xsd:IDREF" use="required"/> <xsd:attribute name="attributeName" type="xsd:NMTOKEN" use="required"/> <xsd:attribute name="value" type="xsd:string" use="required"/> </xsd:complexType> <!--Include element is replaced by XInclude's include element. This include element is not imported into our schema, but should be processed (and replaced by the referenced XML) prior to validation of instances--> <xsd:element name="ExternalRoles" type="ExternalRolesType"/> <xsd:complexType name="ExternalRolesType"> <xsd:sequence> <xsd:element name="BusinessPartnerRole" minOccurs="2" maxOccurs="unbounded"> <xsd:complexType> <xsd:sequence> <xsd:element ref="Documentation" minOccurs="0"/> <xsd:element name="Performs" type="PerformsType" maxOccurs="unbounded"/> </xsd:sequence> <xsd:attributeGroup ref="name"/> </xsd:complexType> </xsd:element> </xsd:sequence> </xsd:complexType> <xsd:element name="BinaryCollaboration" type="BinaryCollaborationType"> <xsd:annotation> <xsd:documentation>Two roles</xsd:documentation> </xsd:annotation> <xsd:unique name="BinaryCollaboration-ID"> <xsd:selector xpath="."/> <xsd:field xpath="nameID"/> </xsd:unique> <xsd:unique name="BinaryCollaborationRole-ID"> <xsd:selector xpath=".//Role"/> <xsd:field xpath="nameID"/> </xsd:unique> </xsd:element> <xsd:complexType name="BinaryCollaborationType"> <xsd:sequence> <xsd:element ref="Documentation" minOccurs="0" maxOccurs="unbounded"/> <xsd:element name="Role" minOccurs="2" maxOccurs="2"> <xsd:complexType> <xsd:complexContent> <xsd:extension base="RoleType"/> </xsd:complexContent> </xsd:complexType> </xsd:element> <xsd:element ref="TimeToPerform"/> <xsd:element ref="Start"/> <xsd:choice maxOccurs="unbounded"> <xsd:element ref="BusinessTransactionActivity" minOccurs="0"/> <xsd:element ref="CollaborationActivity" minOccurs="0"/> <xsd:element ref="ComplexBusinessTransactionActivity" minOccurs="0"/> <xsd:element ref="Success" minOccurs="0"/> <xsd:element ref="Failure" minOccurs="0"/> <xsd:element ref="Transition" minOccurs="0"/> <xsd:element ref="Fork" minOccurs="0"/> <xsd:element ref="Join" minOccurs="0"/> <xsd:element ref="Decision" minOccurs="0"/> </xsd:choice> </xsd:sequence> <xsd:attributeGroup ref="name"/> <xsd:attribute name="pattern" type="xsd:anyURI"/> <xsd:attribute name="isInnerCollaboration" type="xsd:boolean" default="false"/> </xsd:complexType> <xsd:element name="MultiPartyCollaboration" type="MultiPartyCollaborationType"> <xsd:annotation> <xsd:documentation>More than two roles.</xsd:documentation> </xsd:annotation> </xsd:element> <xsd:complexType name="MultiPartyCollaborationType"> <xsd:complexContent> <xsd:restriction base="BusinessCollaborationType"> <xsd:sequence> <xsd:element ref="Documentation" minOccurs="0" maxOccurs="unbounded"/> <xsd:element name="Role" minOccurs="3" maxOccurs="unbounded"> <xsd:complexType> <xsd:complexContent> <xsd:extension base="RoleType"/> </xsd:complexContent> </xsd:complexType> </xsd:element> <xsd:element ref="TimeToPerform"/> <xsd:element ref="Start"/> <xsd:choice maxOccurs="unbounded"> <xsd:element ref="BusinessTransactionActivity" minOccurs="0"/> <xsd:element ref="CollaborationActivity" minOccurs="0"/> <xsd:element ref="ComplexBusinessTransactionActivity" minOccurs="0"/> <xsd:element ref="Success" minOccurs="0"/> <xsd:element ref="Failure" minOccurs="0"/> <xsd:element ref="Transition" minOccurs="0"/> <xsd:element ref="Fork" minOccurs="0"/> <xsd:element ref="Join" minOccurs="0"/> <xsd:element ref="Decision" minOccurs="0"/> </xsd:choice> </xsd:sequence> <xsd:attributeGroup ref="name"/> <xsd:attribute name="pattern" type="xsd:anyURI"/> <xsd:attribute name="isInnerCollaboration" type="xsd:boolean" default="false"/> </xsd:restriction> </xsd:complexContent> </xsd:complexType> <xsd:element name="BusinessCollaboration" type="BusinessCollaborationType" abstract="true"> <xsd:annotation> <xsd:documentation>Two or more roles.</xsd:documentation> </xsd:annotation> </xsd:element> <xsd:complexType name="BusinessCollaborationType"> <xsd:sequence> <xsd:element ref="Documentation" minOccurs="0" maxOccurs="unbounded"/> <xsd:element name="Role" minOccurs="2" maxOccurs="unbounded"> <xsd:complexType> <xsd:complexContent> <xsd:extension base="RoleType"/> </xsd:complexContent> </xsd:complexType> </xsd:element> <xsd:element ref="TimeToPerform"/> <xsd:element ref="Start"/> <xsd:choice maxOccurs="unbounded"> <xsd:element ref="BusinessTransactionActivity" minOccurs="0"/> <xsd:element ref="CollaborationActivity" minOccurs="0"/> <xsd:element ref="ComplexBusinessTransactionActivity" minOccurs="0"/> <xsd:element ref="Success" minOccurs="0"/> <xsd:element ref="Failure" minOccurs="0"/> <xsd:element ref="Transition" minOccurs="0"/> <xsd:element ref="Fork" minOccurs="0"/> <xsd:element ref="Join" minOccurs="0"/> <xsd:element ref="Decision" minOccurs="0"/> </xsd:choice> </xsd:sequence> <xsd:attributeGroup ref="name"/> <xsd:attribute name="pattern" type="xsd:anyURI"/> <xsd:attribute name="isInnerCollaboration" type="xsd:boolean" default="false"/> </xsd:complexType> <xsd:element name="DocumentEnvelope" type="DocumentEnvelopeType"/> <xsd:complexType name="DocumentEnvelopeType"> <xsd:sequence> <xsd:element ref="Documentation" minOccurs="0" maxOccurs="unbounded"/> <xsd:element ref="Attachment" minOccurs="0" maxOccurs="unbounded"/> </xsd:sequence> <xsd:attributeGroup ref="name"/> <xsd:attribute name="businessDocumentRef" type="xsd:IDREF" use="required"/> <xsd:attribute name="isPositiveResponse" type="xsd:boolean"/> <xsd:attributeGroup ref="documentSecurity"/> </xsd:complexType> <xsd:element name="BusinessDocument" type="BusinessDocumentType"/> <xsd:complexType name="BusinessDocumentType"> <xsd:sequence> <xsd:element ref="Documentation" minOccurs="0" maxOccurs="unbounded"/> <xsd:element ref="ConditionExpression" minOccurs="0"/> <xsd:element ref="Specification" maxOccurs="unbounded"/> </xsd:sequence> <xsd:attributeGroup ref="name"/> </xsd:complexType> <xsd:element name="Attachment"> <xsd:complexType> <xsd:sequence> <xsd:element ref="Documentation" minOccurs="0" maxOccurs="unbounded"/> <xsd:element ref="Specification" maxOccurs="unbounded"/> </xsd:sequence> <xsd:attributeGroup ref="name"/> <xsd:attribute name="businessDocumentRef" type="xsd:IDREF" use="required"/> <xsd:attribute name="mimeType" type="xsd:string" use="optional"/> <xsd:attributeGroup ref="documentSecurity"/> <xsd:attribute name="minOccurs" type="xsd:integer" use="optional"/> <xsd:attribute name="maxOccurs" type="xsd:integer" use="optional"/> </xsd:complexType> <xsd:unique name="Attachment-ID"> <xsd:selector xpath="."/> <xsd:field xpath="nameID"/> </xsd:unique> </xsd:element> <xsd:element name="Specification"> <xsd:complexType> <xsd:attribute name="type" type="DocumentSpecificationType" use="optional" default="schema"/> <xsd:attribute name="location" type="xsd:anyURI" use="required"/> <xsd:attribute name="targetNamespace" type="xsd:anyURI" use="optional"/> <xsd:attributeGroup ref="name"/> </xsd:complexType> </xsd:element> <xsd:element name="BusinessTransactionActivity"> <xsd:annotation> <xsd:documentation>isLegallyBinding is deprecated.</xsd:documentation> </xsd:annotation> <xsd:complexType> <xsd:complexContent> <xsd:extension base="BusinessTransactionActivityType"/> </xsd:complexContent> </xsd:complexType> </xsd:element> <xsd:complexType name="BusinessTransactionActivityType"> <xsd:annotation> <xsd:documentation>isConcurrent removed. See ComplexBTA instead.</xsd:documentation> </xsd:annotation> <xsd:complexContent> <xsd:extension base="BusinessActivityType"> <xsd:sequence> <xsd:element ref="Documentation" minOccurs="0" maxOccurs="unbounded"/> <xsd:element ref="Performs" minOccurs="0" maxOccurs="unbounded"/> <xsd:element ref="TimeToPerform"/> </xsd:sequence> <xsd:attribute name="businessTransactionRef" type="xsd:IDREF" use="required"/> <xsd:attribute name="isLegallyBinding" type="xsd:boolean" default="true"/> </xsd:extension> </xsd:complexContent> </xsd:complexType> <xsd:element name="ComplexBusinessTransactionActivity"> <xsd:complexType> <xsd:complexContent> <xsd:extension base="BusinessTransactionActivityType"> <xsd:choice minOccurs="0" maxOccurs="unbounded"> <xsd:sequence> <xsd:element ref="ComplexBusinessTransactionActivity"/> <xsd:element ref="StatusVisibility"/> </xsd:sequence> <xsd:sequence> <xsd:element ref="BusinessTransactionActivity"/> <xsd:element ref="StatusVisibility"/> </xsd:sequence> </xsd:choice> </xsd:extension> </xsd:complexContent> </xsd:complexType> </xsd:element> <xsd:element name="StatusVisibility"> <xsd:complexType> <xsd:sequence> <xsd:element name="BusinessDocumentList" type="BusinessDocumentValueList"/> <xsd:element name="SubstateVisibility" type="ConditionGuardValueList"/> <xsd:any/> </xsd:sequence> <xsd:attributeGroup ref="name"/> <xsd:anyAttribute namespace="##any"/> </xsd:complexType> </xsd:element> <xsd:element name="CollaborationActivity" type="CollaborationActivityType"/> <xsd:complexType name="CollaborationActivityType"> <xsd:complexContent> <xsd:extension base="BusinessActivityType"> <xsd:sequence> <xsd:element ref="Documentation" minOccurs="0" maxOccurs="unbounded"/> <xsd:element ref="Performs" minOccurs="0" maxOccurs="unbounded"/> </xsd:sequence> <xsd:attribute name="collaborationRef" type="xsd:IDREF" use="required"/> </xsd:extension> </xsd:complexContent> </xsd:complexType> <xsd:element name="FromLink"> <xsd:complexType> <xsd:complexContent> <xsd:extension base="BusinessStateLinkType"> <xsd:attribute name="fromBusinessStateRef" type="xsd:IDREF" use="required"/> <xsd:attribute name="conditionGuard" type="ConditionGuardValue" use="optional"/> </xsd:extension> </xsd:complexContent> </xsd:complexType> </xsd:element> <xsd:element name="ToLink"> <xsd:complexType> <xsd:complexContent> <xsd:extension base="BusinessStateLinkType"> <xsd:attribute name="toBusinessStateRef" type="xsd:IDREF" use="required"/> </xsd:extension> </xsd:complexContent> </xsd:complexType> </xsd:element> <xsd:complexType name="BusinessStateLinkType"> <xsd:sequence> <xsd:element ref="Documentation" minOccurs="0"/> <xsd:element ref="ConditionExpression" minOccurs="0"/> </xsd:sequence> </xsd:complexType> <xsd:element name="ConditionExpression"> <xsd:complexType> <xsd:complexContent> <xsd:extension base="ConditionExpressionType"/> </xsd:complexContent> </xsd:complexType> </xsd:element> <xsd:complexType name="ConditionExpressionType"> <xsd:sequence> <xsd:element ref="Documentation" minOccurs="0" maxOccurs="unbounded"/> </xsd:sequence> <xsd:attribute name="expressionLanguage" type="xsd:string" use="required"/> <xsd:attribute name="expression" type="xsd:string" use="required"/> </xsd:complexType> <xsd:element name="Start" type="StartType"> <xsd:unique name="Start-ID"> <xsd:selector xpath="."/> <xsd:field xpath="nameID"/> </xsd:unique> </xsd:element> <xsd:complexType name="StartType"> <xsd:sequence> <xsd:element ref="Documentation" minOccurs="0" maxOccurs="unbounded"/> <xsd:element ref="ToLink" maxOccurs="unbounded"/> </xsd:sequence> <xsd:attributeGroup ref="name"/> </xsd:complexType> <xsd:element name="Transition" type="TransitionType"/> <xsd:complexType name="TransitionType"> <xsd:sequence> <xsd:element ref="FromLink"/> <xsd:element ref="ToLink"/> </xsd:sequence> </xsd:complexType> <xsd:element name="Decision" type="DecisionType"> <xsd:unique name="Decision-ID"> <xsd:selector xpath="."/> <xsd:field xpath="nameID"/> </xsd:unique> </xsd:element> <xsd:complexType name="DecisionType"> <xsd:sequence> <xsd:element ref="Documentation" minOccurs="0" maxOccurs="unbounded"/> <xsd:element ref="FromLink"/> <xsd:element ref="ToLink" maxOccurs="unbounded"/> </xsd:sequence> <xsd:attributeGroup ref="name"/> </xsd:complexType> <xsd:element name="Fork" type="ForkType"> <xsd:unique name="Fork-ID"> <xsd:selector xpath="."/> <xsd:field xpath="nameID"/> </xsd:unique> </xsd:element> <xsd:complexType name="ForkType"> <xsd:sequence> <xsd:element ref="Documentation" minOccurs="0" maxOccurs="unbounded"/> <xsd:element ref="FromLink"/> <xsd:element ref="ToLink" maxOccurs="unbounded"/> </xsd:sequence> <xsd:attributeGroup ref="name"/> <xsd:attribute name="type" use="optional" default="OR"> <xsd:simpleType> <xsd:restriction base="xsd:NMTOKEN"> <xsd:enumeration value="OR"/> <xsd:enumeration value="XOR"/> </xsd:restriction> </xsd:simpleType> </xsd:attribute> <xsd:attribute name="timeToPerform" type="xsd:duration" use="optional"/> </xsd:complexType> <xsd:element name="Join" type="JoinType"> <xsd:unique name="Join-ID"> <xsd:selector xpath="."/> <xsd:field xpath="nameID"/> </xsd:unique> </xsd:element> <xsd:complexType name="JoinType"> <xsd:sequence> <xsd:element ref="Documentation" minOccurs="0" maxOccurs="unbounded"/> <xsd:element ref="FromLink" maxOccurs="unbounded"/> <xsd:element ref="ToLink" minOccurs="0"/> </xsd:sequence> <xsd:attributeGroup ref="name"/> <xsd:attribute name="waitForAll" type="xsd:boolean" default="true"/> </xsd:complexType> <xsd:element name="Success" type="CompletionType"> <xsd:unique name="Success-ID"> <xsd:selector xpath="."/> <xsd:field xpath="nameID"/> </xsd:unique> </xsd:element> <xsd:element name="Failure" type="CompletionType"> <xsd:unique name="Failure-ID"> <xsd:selector xpath="."/> <xsd:field xpath="nameID"/> </xsd:unique> </xsd:element> <xsd:complexType name="CompletionType"> <xsd:sequence> <xsd:element ref="Documentation" minOccurs="0" maxOccurs="unbounded"/> <xsd:element ref="FromLink" minOccurs="0" maxOccurs="unbounded"/> </xsd:sequence> <xsd:attributeGroup ref="name"/> </xsd:complexType> <xsd:element name="BusinessAction" type="BusinessActionType" abstract="true"/> <xsd:complexType name="BusinessActionType"> <xsd:sequence> <xsd:element ref="Documentation" minOccurs="0" maxOccurs="unbounded"/> <xsd:element ref="DocumentEnvelope"/> </xsd:sequence> <xsd:attributeGroup ref="name"/> <xsd:attribute name="isAuthorizationRequired" type="xsd:boolean" default="false"/> <xsd:attribute name="isIntelligibleCheckRequired" type="xsd:boolean" default="false"/> <xsd:attribute name="isNonRepudiationRequired" type="xsd:boolean" default="false"/> <xsd:attribute name="isNonRepudiationReceiptRequired" type="xsd:boolean" default="false"/> <xsd:attribute name="timeToAcknowledgeReceipt" type="xsd:duration"/> <xsd:attribute name="timeToAcknowledgeAcceptance" type="xsd:duration"/> </xsd:complexType> <xsd:element name="RequestingBusinessActivity" type="RequestingBusinessActivityType"/> <xsd:complexType name="RequestingBusinessActivityType"> <xsd:complexContent> <xsd:extension base="BusinessActionType"> <xsd:attribute name="retryCount" type="xsd:int" default="0"/> </xsd:extension> </xsd:complexContent> </xsd:complexType> <xsd:element name="RespondingBusinessActivity" type="RespondingBusinessActivityType"/> <xsd:complexType name="RespondingBusinessActivityType"> <xsd:complexContent> <xsd:extension base="BusinessActionType"> <xsd:attribute name="retryCount" type="xsd:int" default="0"/> </xsd:extension> </xsd:complexContent> </xsd:complexType> <xsd:complexType name="BusinessActivityType"> <xsd:attributeGroup ref="name"/> </xsd:complexType> <xsd:element name="Performs"> <xsd:complexType> <xsd:complexContent> <xsd:extension base="PerformsType"/> </xsd:complexContent> </xsd:complexType> <xsd:unique name="Performs-ID"> <xsd:selector xpath="."/> <xsd:field xpath="nameID"/> </xsd:unique> </xsd:element> <xsd:complexType name="PerformsType"> <xsd:sequence> <xsd:element ref="Documentation" minOccurs="0"/> </xsd:sequence> <xsd:attribute name="currentRoleRef" type="xsd:IDREF" use="required"/> <xsd:attribute name="performsRoleRef" type="xsd:IDREF" use="optional"/> <xsd:attribute name="initiatingRoleRef" type="xsd:IDREF" use="optional"/> <xsd:attribute name="respondingRoleRef" type="xsd:IDREF" use="optional"/> </xsd:complexType> <xsd:complexType name="RoleType"> <xsd:sequence> <xsd:element ref="Documentation" minOccurs="0"/> </xsd:sequence> <xsd:attribute name="name" type="xsd:string" use="required"/> <xsd:attribute name="nameID" type="xsd:ID" use="required"/> </xsd:complexType> <xsd:element name="BusinessTransaction"> <xsd:complexType> <xsd:complexContent> <xsd:extension base="BusinessTransactionType"> <xsd:sequence> <xsd:element ref="RequestingBusinessActivity"/> <xsd:element ref="RespondingBusinessActivity"/> </xsd:sequence> </xsd:extension> </xsd:complexContent> </xsd:complexType> <xsd:unique name="BusinessTransaction-ID"> <xsd:selector xpath="."/> <xsd:field xpath="nameID"/> </xsd:unique> </xsd:element> <xsd:complexType name="BusinessTransactionType"> <xsd:sequence> <xsd:element ref="Documentation" minOccurs="0"/> <xsd:element name="BeginsWhen" type="ConditionExpressionType" minOccurs="0"/> <xsd:element name="PreCondition" type="ConditionExpressionType" minOccurs="0"/> <xsd:element name="PostCondition" type="ConditionExpressionType" minOccurs="0"/> <xsd:element name="EndsWhen" type="ConditionExpressionType" minOccurs="0"/> </xsd:sequence> <xsd:attributeGroup ref="name"/> <xsd:attribute name="pattern" type="xsd:anyURI"/> <xsd:attribute name="isGuaranteedDeliveryRequired" type="xsd:boolean" default="false"/> </xsd:complexType> <xsd:element name="CommercialTransaction" substitutionGroup="BusinessTransaction"> <xsd:complexType> <xsd:complexContent> <xsd:extension base="BusinessTransactionType"> <xsd:sequence> <xsd:element name="RequestingBusinessActivity"> <xsd:complexType> <xsd:complexContent> <xsd:restriction base="RequestingBusinessActivityType"> <xsd:sequence> <xsd:element ref="Documentation" minOccurs="0" maxOccurs="unbounded"/> <xsd:element ref="DocumentEnvelope"/> <xsd:element name="ReceiptAcknowledgement" type="ReceiptAcknowledgementType"/> <xsd:element name="ReceiptAcknowledgementException" type="ReceiptAcknowledgementExceptionType"/> <xsd:element name="AcceptanceAcknowledgement" type="AcceptanceAcknowledgementType"/> <xsd:element name="AcceptanceAcknowledgementException" type="AcceptanceAcknowledgementExceptionType"/> </xsd:sequence> <xsd:attribute name="retryCount" use="optional"/> <xsd:attribute name="timeToAcknowledgeAcceptance" default="P6H"/> <xsd:attribute name="timeToAcknowledgeReceipt" default="P2H"/> <xsd:attribute name="isNonRepudiationReceiptRequired" default="true"/> <xsd:attribute name="isNonRepudiationRequired" default="true"/> <xsd:attribute name="isAuthorizationRequired" default="true"/> <xsd:attribute name="isIntelligibleCheckRequired" default="true"/> </xsd:restriction> </xsd:complexContent> </xsd:complexType> </xsd:element> <xsd:element name="RespondingBusinessActivity"> <xsd:complexType> <xsd:complexContent> <xsd:restriction base="RespondingBusinessActivityType"> <xsd:sequence> <xsd:element ref="Documentation" minOccurs="0" maxOccurs="unbounded"/> <xsd:element ref="DocumentEnvelope" maxOccurs="unbounded"/> <xsd:element name="ReceiptAcknowledgement" type="ReceiptAcknowledgementType"/> <xsd:element name="ReceiptAcknowledgementException" type="ReceiptAcknowledgementExceptionType"/> <xsd:element name="AcceptanceAcknowledgement" type="AcceptanceAcknowledgementType"/> <xsd:element name="AcceptanceAcknowledgementException" type="AcceptanceAcknowledgementExceptionType"/> </xsd:sequence> <xsd:attribute name="isAuthorizationRequired" default="true"/> <xsd:attribute name="isIntelligibleCheckRequired" default="true"/> <xsd:attribute name="isNonRepudiationRequired" default="true"/> <xsd:attribute name="isNonRepudiationReceiptRequired" default="true"/> <xsd:attribute name="timeToAcknowledgeReceipt" default="P2H"/> <xsd:attribute name="timeToAcknowledgeAcceptance" default="P6H"/> </xsd:restriction> </xsd:complexContent> </xsd:complexType> </xsd:element> </xsd:sequence> </xsd:extension> </xsd:complexContent> </xsd:complexType> </xsd:element> <xsd:element name="RequestConfirm" substitutionGroup="BusinessTransaction"> <xsd:complexType> <xsd:complexContent> <xsd:extension base="BusinessTransactionType"> <xsd:sequence> <xsd:element name="RequestingBusinessActivity"> <xsd:complexType> <xsd:complexContent> <xsd:restriction base="RequestingBusinessActivityType"> <xsd:sequence> <xsd:element ref="Documentation" minOccurs="0" maxOccurs="unbounded"/> <xsd:element ref="DocumentEnvelope"/> <xsd:element name="ReceiptAcknowledgement" type="ReceiptAcknowledgementType"/> <xsd:element name="ReceiptAcknowledgementException" type="ReceiptAcknowledgementExceptionType"/> </xsd:sequence> <xsd:attribute name="retryCount" use="optional"/> <xsd:attribute name="timeToAcknowledgeReceipt" default="0"/> <xsd:attribute name="isNonRepudiationReceiptRequired" default="false"/> <xsd:attribute name="isNonRepudiationRequired" default="false"/> <xsd:attribute name="isAuthorizationRequired" default="true"/> <xsd:attribute name="isIntelligibleCheckRequired" default="false"/> </xsd:restriction> </xsd:complexContent> </xsd:complexType> </xsd:element> <xsd:element name="RespondingBusinessActivity"> <xsd:complexType> <xsd:complexContent> <xsd:restriction base="RespondingBusinessActivityType"> <xsd:sequence> <xsd:element ref="Documentation" minOccurs="0" maxOccurs="unbounded"/> <xsd:element ref="DocumentEnvelope" maxOccurs="unbounded"/> <xsd:element name="ReceiptAcknowledgement" type="ReceiptAcknowledgementType"/> <xsd:element name="ReceiptAcknowledgementException" type="ReceiptAcknowledgementExceptionType"/> </xsd:sequence> <xsd:attribute name="isAuthorizationRequired" default="true"/> <xsd:attribute name="isIntelligibleCheckRequired" default="false"/> <xsd:attribute name="isNonRepudiationRequired" default="false"/> <xsd:attribute name="isNonRepudiationReceiptRequired" default="false"/> <xsd:attribute name="timeToAcknowledgeReceipt" default="P2H"/> </xsd:restriction> </xsd:complexContent> </xsd:complexType> </xsd:element> </xsd:sequence> </xsd:extension> </xsd:complexContent> </xsd:complexType> </xsd:element> <xsd:element name="RequestResponse" substitutionGroup="BusinessTransaction"> <xsd:complexType> <xsd:complexContent> <xsd:extension base="BusinessTransactionType"> <xsd:sequence> <xsd:element name="RequestingBusinessActivity"> <xsd:complexType> <xsd:complexContent> <xsd:restriction base="RequestingBusinessActivityType"> <xsd:sequence> <xsd:element ref="Documentation" minOccurs="0" maxOccurs="unbounded"/> <xsd:element ref="DocumentEnvelope"/> </xsd:sequence> <xsd:attribute name="retryCount" use="optional"/> <xsd:attribute name="isNonRepudiationRequired" default="false"/> <xsd:attribute name="isAuthorizationRequired" default="false"/> <xsd:attribute name="isIntelligibleCheckRequired" default="false"/> </xsd:restriction> </xsd:complexContent> </xsd:complexType> </xsd:element> <xsd:element name="RespondingBusinessActivity"> <xsd:complexType> <xsd:complexContent> <xsd:restriction base="RespondingBusinessActivityType"> <xsd:sequence> <xsd:element ref="Documentation" minOccurs="0" maxOccurs="unbounded"/> <xsd:element ref="DocumentEnvelope" maxOccurs="unbounded"/> </xsd:sequence> <xsd:attribute name="isAuthorizationRequired" default="false"/> <xsd:attribute name="isIntelligibleCheckRequired" default="false"/> <xsd:attribute name="isNonRepudiationRequired" default="false"/> </xsd:restriction> </xsd:complexContent> </xsd:complexType> </xsd:element> </xsd:sequence> </xsd:extension> </xsd:complexContent> </xsd:complexType> </xsd:element> <xsd:element name="QueryResponse" substitutionGroup="BusinessTransaction"> <xsd:complexType> <xsd:complexContent> <xsd:extension base="BusinessTransactionType"> <xsd:sequence> <xsd:element name="RequestingBusinessActivity"> <xsd:complexType> <xsd:complexContent> <xsd:restriction base="RequestingBusinessActivityType"> <xsd:sequence> <xsd:element ref="Documentation" minOccurs="0" maxOccurs="unbounded"/> <xsd:element ref="DocumentEnvelope"/> </xsd:sequence> <xsd:attribute name="retryCount" use="optional"/> <xsd:attribute name="isNonRepudiationRequired" default="false"/> <xsd:attribute name="isAuthorizationRequired" default="false"/> <xsd:attribute name="isIntelligibleCheckRequired" default="false"/> </xsd:restriction> </xsd:complexContent> </xsd:complexType> </xsd:element> <xsd:element name="RespondingBusinessActivity"> <xsd:complexType> <xsd:complexContent> <xsd:restriction base="RespondingBusinessActivityType"> <xsd:sequence> <xsd:element ref="Documentation" minOccurs="0" maxOccurs="unbounded"/> <xsd:element ref="DocumentEnvelope" maxOccurs="unbounded"/> </xsd:sequence> <xsd:attribute name="isAuthorizationRequired" default="false"/> <xsd:attribute name="isIntelligibleCheckRequired" default="false"/> <xsd:attribute name="isNonRepudiationRequired" default="false"/> </xsd:restriction> </xsd:complexContent> </xsd:complexType> </xsd:element> </xsd:sequence> </xsd:extension> </xsd:complexContent> </xsd:complexType> </xsd:element> <xsd:element name="InformationDistribution" substitutionGroup="BusinessTransaction"> <xsd:complexType> <xsd:complexContent> <xsd:extension base="BusinessTransactionType"> <xsd:sequence> <xsd:element name="RequestingBusinessActivity"> <xsd:complexType> <xsd:complexContent> <xsd:restriction base="RequestingBusinessActivityType"> <xsd:sequence> <xsd:element ref="Documentation" minOccurs="0" maxOccurs="unbounded"/> <xsd:element ref="DocumentEnvelope"/> <xsd:element name="ReceiptAcknowledgement" type="ReceiptAcknowledgementType"/> <xsd:element name="ReceiptAcknowledgementException" type="ReceiptAcknowledgementExceptionType"/> </xsd:sequence> <xsd:attribute name="isAuthorizationRequired" default="false"/> <xsd:attribute name="isNonRepudiationRequired" default="false"/> <xsd:attribute name="isNonRepudiationReceiptRequired" default="false"/> <xsd:attribute name="timeToAcknowledgeReceipt" default="P24H"/> <xsd:attribute name="timeToAcknowledgeAcceptance" use="prohibited"/> <xsd:attribute name="isIntelligibleCheckRequired" use="optional"/> <xsd:attribute name="retryCount" use="optional"/> </xsd:restriction> </xsd:complexContent> </xsd:complexType> </xsd:element> </xsd:sequence> </xsd:extension> </xsd:complexContent> </xsd:complexType> </xsd:element> <xsd:element name="Notification" substitutionGroup="BusinessTransaction"> <xsd:complexType> <xsd:complexContent> <xsd:extension base="BusinessTransactionType"> <xsd:sequence> <xsd:element name="RequestingBusinessActivity"> <xsd:complexType> <xsd:complexContent> <xsd:restriction base="RequestingBusinessActivityType"> <xsd:sequence> <xsd:element ref="Documentation" minOccurs="0" maxOccurs="unbounded"/> <xsd:element ref="DocumentEnvelope"/> <xsd:element name="ReceiptAcknowledgement" type="ReceiptAcknowledgementType"/> <xsd:element name="ReceiptAcknowledgementException" type="ReceiptAcknowledgementExceptionType"/> </xsd:sequence> <xsd:attribute name="isAuthorizationRequired" default="false"/> <xsd:attribute name="isNonRepudiationRequired" default="false"/> <xsd:attribute name="isNonRepudiationReceiptRequired" default="false"/> <xsd:attribute name="timeToAcknowledgeReceipt" default="P24H"/> <xsd:attribute name="timeToAcknowledgeAcceptance" use="prohibited"/> <xsd:attribute name="isIntelligibleCheckRequired" use="optional"/> <xsd:attribute name="retryCount" use="optional"/> </xsd:restriction> </xsd:complexContent> </xsd:complexType> </xsd:element> </xsd:sequence> </xsd:extension> </xsd:complexContent> </xsd:complexType> </xsd:element> <!--NotificationOfFailure,ReceiptOfResponseAcknowledgement,General Exception--> <xsd:element name="Signal" type="SignalType"/> <xsd:complexType name="SignalEnvelopeType"> <xsd:sequence> <xsd:element ref="Documentation" minOccurs="0" maxOccurs="unbounded"/> </xsd:sequence> <xsd:attributeGroup ref="name"/> <xsd:attribute name="signalDefinitionRef" type="xsd:IDREF" use="required"/> </xsd:complexType> <xsd:complexType name="SignalType"> <xsd:sequence> <xsd:element ref="Documentation" minOccurs="0" maxOccurs="unbounded"/> <xsd:element ref="ConditionExpression" minOccurs="0"/> <xsd:element ref="Specification" maxOccurs="unbounded"/> </xsd:sequence> <xsd:attributeGroup ref="name"/> </xsd:complexType> <xsd:complexType name="ReceiptAcknowledgementType"> <xsd:complexContent> <xsd:extension base="SignalEnvelopeType"> <xsd:attribute name="isPositiveReceipt" type="xsd:boolean" fixed="true"/> </xsd:extension> </xsd:complexContent> </xsd:complexType> <xsd:complexType name="ReceiptAcknowledgementExceptionType"> <xsd:complexContent> <xsd:extension base="SignalEnvelopeType"> <xsd:attribute name="isPositiveSignal" fixed="false"/> </xsd:extension> </xsd:complexContent> </xsd:complexType> <xsd:complexType name="AcceptanceAcknowledgementType"> <xsd:complexContent> <xsd:extension base="SignalEnvelopeType"/> </xsd:complexContent> </xsd:complexType> <xsd:complexType name="AcceptanceAcknowledgementExceptionType"> <xsd:complexContent> <xsd:extension base="SignalEnvelopeType"/> </xsd:complexContent> </xsd:complexType> <xsd:complexType name="GeneralExceptionType"> <xsd:complexContent> <xsd:extension base="SignalEnvelopeType"/> </xsd:complexContent> </xsd:complexType> <xsd:element name="TimeToPerform"> <xsd:complexType> <xsd:sequence> <xsd:element ref="Variable" minOccurs="0"/> </xsd:sequence> <xsd:attribute name="duration" type="xsd:duration" use="optional"/> <xsd:attribute name="type" type="TimeToPerformType" use="optional" default="design"/> </xsd:complexType> </xsd:element> <xsd:element name="Variable"> <xsd:annotation> <xsd:documentation>Global.BtaRef and BdRef point to what context and documents are relevant to ConditionExpression evalutation. Variable assumes type, if any, from expression evaluation</xsd:documentation> </xsd:annotation> <xsd:complexType> <xsd:sequence> <xsd:element ref="ConditionExpression"/> </xsd:sequence> <xsd:attributeGroup ref="name"/> <xsd:attribute name="BtaRef" type="xsd:IDREF" use="optional"/> <xsd:attribute name="BdRef" type="xsd:IDREF" use="optional"/> </xsd:complexType> </xsd:element> <xsd:element name="OperationMapping" type="OperationMappingType"> <xsd:annotation> <xsd:documentation>Maps a BTA and its BusinessDocuments to Interface/Operation messages</xsd:documentation> </xsd:annotation> </xsd:element> <xsd:complexType name="OperationMappingType"> <xsd:sequence> <xsd:element name="MessageMap" maxOccurs="unbounded"> <xsd:complexType> <xsd:attributeGroup ref="map"/> </xsd:complexType> </xsd:element> <xsd:element name="SignalMap" minOccurs="0" maxOccurs="8"> <xsd:complexType> <xsd:attributeGroup ref="map"/> </xsd:complexType> </xsd:element> </xsd:sequence> <xsd:attributeGroup ref="name"/> <xsd:attribute name="roleRef" type="xsd:IDREF" use="required"/> <xsd:attribute name="BtaRef" type="xsd:IDREF" use="required"/> </xsd:complexType> <xsd:simpleType name="TimeToPerformType"> <xsd:restriction base="xsd:NMTOKEN"> <xsd:enumeration value="design"/> <xsd:enumeration value="configuration"/> <xsd:enumeration value="runtime"/> </xsd:restriction> </xsd:simpleType> <xsd:simpleType name="TrueFalseNull"> <xsd:restriction base="xsd:string"> <xsd:enumeration value="true"/> <xsd:enumeration value="false"/> <xsd:enumeration value="null"/> </xsd:restriction> </xsd:simpleType> <xsd:simpleType name="BusinessDocumentValueList"> <xsd:list itemType="xsd:NMTOKEN"/> </xsd:simpleType> <xsd:simpleType name="ConditionGuardValueList"> <xsd:list itemType="ConditionGuardValue"/> </xsd:simpleType> <xsd:simpleType name="ConditionGuardValue"> <xsd:restriction base="xsd:NMTOKEN"> <xsd:enumeration value="ProtocolSuccess"/> <xsd:enumeration value="AnyProtocolFailure"/> <xsd:enumeration value="RequestReceiptFailure"/> <xsd:enumeration value="RequestAcceptanceFailure"/> <xsd:enumeration value="ResponseReceiptFailure"/> <xsd:enumeration value="ResponseAcceptanceFailure"/> <xsd:enumeration value="SignalTimeout"/> <xsd:enumeration value="ResponseTimeout"/> <xsd:enumeration value="BusinessSuccess"/> <xsd:enumeration value="BusinessFailure"/> <xsd:enumeration value="Success"/> <xsd:enumeration value="Failure"/> </xsd:restriction> </xsd:simpleType> <xsd:simpleType name="DocumentSpecificationType"> <xsd:restriction base="xsd:NMTOKEN"> <xsd:enumeration value="schema"/> <xsd:enumeration value="dtd"/> <xsd:enumeration value="wsdl"/> <xsd:enumeration value="relaxng"/> <xsd:enumeration value="other"/> </xsd:restriction> </xsd:simpleType> <xsd:simpleType name="StepType"> <xsd:restriction base="xsd:NMTOKEN"> <xsd:enumeration value="input"/> <xsd:enumeration value="output"/> <xsd:enumeration value="fault"/> </xsd:restriction> </xsd:simpleType> <xsd:attributeGroup name="documentSecurity"> <xsd:attribute name="isAuthenticated"> <xsd:simpleType> <xsd:restriction base="xsd:NMTOKEN"> <xsd:enumeration value="none"/> <xsd:enumeration value="transient"/> <xsd:enumeration value="persistent"/> <xsd:enumeration value="transient-and-persistent"/> </xsd:restriction> </xsd:simpleType> </xsd:attribute> <xsd:attribute name="isConfidential"> <xsd:simpleType> <xsd:restriction base="xsd:NMTOKEN"> <xsd:enumeration value="none"/> <xsd:enumeration value="transient"/> <xsd:enumeration value="persistent"/> <xsd:enumeration value="transient-and-persistent"/> </xsd:restriction> </xsd:simpleType> </xsd:attribute> <xsd:attribute name="isTamperDetectable"> <xsd:simpleType> <xsd:restriction base="xsd:NMTOKEN"> <xsd:enumeration value="none"/> <xsd:enumeration value="transient"/> <xsd:enumeration value="persistent"/> <xsd:enumeration value="transient-and-persistent"/> </xsd:restriction> </xsd:simpleType> </xsd:attribute> </xsd:attributeGroup> <xsd:attributeGroup name="map"> <xsd:attribute name="interfaceName" type="xsd:NMTOKEN" use="required"> <xsd:annotation> <xsd:documentation>interface is called portType in WSDL 1.1</xsd:documentation> </xsd:annotation> </xsd:attribute> <xsd:attribute name="operationName" type="xsd:NMTOKEN" use="required"/> <xsd:attribute name="operationStep" type="StepType" use="required"/> <xsd:attribute name="docEnvRef" type="xsd:IDREF" use="required"/> </xsd:attributeGroup> <xsd:attributeGroup name="name"> <xsd:attribute name="name" type="xsd:string" use="required"/> <xsd:attribute name="nameID" type="xsd:ID" use="required"/> </xsd:attributeGroup> </xsd:schema>
[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]