You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ode.apache.org by va...@apache.org on 2008/05/23 01:26:18 UTC
svn commit: r659307 [9/24] - in /ode/trunk:
axis2-war/src/main/webapp/WEB-INF/ axis2-war/src/main/webapp/WEB-INF/classes/
axis2-war/src/test/resources/XSDReferences/
axis2-war/src/test/resources/XSDReferences/BPMN/
axis2-war/src/test/resources/XSDRefer...
Modified: ode/trunk/bpel-schemas/src/main/resources/ws-bpel_abstract_common_base.xsd
URL: http://svn.apache.org/viewvc/ode/trunk/bpel-schemas/src/main/resources/ws-bpel_abstract_common_base.xsd?rev=659307&r1=659306&r2=659307&view=diff
==============================================================================
--- ode/trunk/bpel-schemas/src/main/resources/ws-bpel_abstract_common_base.xsd (original)
+++ ode/trunk/bpel-schemas/src/main/resources/ws-bpel_abstract_common_base.xsd Thu May 22 16:25:57 2008
@@ -16,1190 +16,1190 @@
~ specific language governing permissions and limitations
~ under the License.
-->
-
-<!--
- Copyright (c) OASIS Open 2006. All Rights Reserved.
--->
-<xsd:schema targetNamespace="http://docs.oasis-open.org/wsbpel/2.0/process/abstract"
- xmlns="http://docs.oasis-open.org/wsbpel/2.0/process/abstract"
- xmlns:xsd="http://www.w3.org/2001/XMLSchema"
- xmlns:xsd-derived="http://docs.oasis-open.org/wsbpel/2.0/process/abstract"
- elementFormDefault="qualified"
- blockDefault="#all">
-
- <xsd:annotation>
- <xsd:documentation>
- Schema for Abstract Process Common Base for WS-BPEL 2.0
- Last modified date: 9th December, 2006
-
- NOTE: Here is the changes path from Exec BPEL XSD to this XSD:
- (a) have a global replace from minOccurs=1 to minOccurs=0 for element declaration
- (b) have a global replace from use=required to use=optional for attribute declaration
- (c) change "xsd-derived" from XSD NS to this Abstract BPEL NS and define the corresponding simple types
- (d) adding "##opaque" to BPELVariableName, tInitiate, tPattern, tRoles, tBoolean
- (e) add abstractProcessProfile to tProcess
- (f) add opaqueActivity
- (g) add tOpaqueBoolean type and add opaque attribute tExpression, tQuery, tFrom, tTo
- (h) add opaqueFrom element and introduce fromGroup
- (i) Change the sequence for "tOnAlarmEvent"
- <![CDATA[
- From:
- ---------------------
- <xsd:sequence>
- <xsd:choice>
- <xsd:sequence>
- <xsd:group ref="forOrUntilGroup" minOccurs="1"/>
- <xsd:element ref="repeatEvery" minOccurs="0"/>
- </xsd:sequence>
- <xsd:element ref="repeatEvery" minOccurs="1"/>
- </xsd:choice>
- <xsd:element ref="scope" minOccurs="1"/>
- </xsd:sequence>
- ---------------------
- To:
- ---------------------
- <xsd:sequence>
- <xsd:group ref="forOrUntilGroup" minOccurs="0"/>
- <xsd:element ref="repeatEvery" minOccurs="0"/>
- <xsd:element ref="scope" minOccurs="0"/>
- </xsd:sequence>
- ---------------------
- ]]>
-
- 2006-08-07: Rev 1.1: Alex Yiu
- Branching off from wsbpel_main.xsd of Rev 1.48:
- by changing targetNamespace
- and changing prefix "simple" to "xsd-derived" and its corresponding namespace
- 2006-08-08: Rev 1.2: Alex Yiu
- Minor cosmetic change
- 2006-08-09: Rev 1.3: Alex Yiu
- A minor update and clarification in comments and documentation
- 2006-08-16: Rev 1.4: Thomas Schulze
- Minor formatting changes.
- Apply AI 151: change the defaults of queryLanguage and expressionLanguage from "urn:oasis:names:tc:ws2.0:sublang:xpath1.0"
- to "urn:oasis:names:tc:wsbpel:2.0:sublang:xpath1.0".
- Apply AI 152: change the targetNamespace from "http://docs.oasis-open.org/ws-bpel/2.0/process/abstract"
- to "http://docs.oasis-open.org/wsbpel/2.0/process/abstract".
- Apply the two friendly amendments made in today's call. That are:
- 1) make the QName list non empty (simpleType QNames)
- 2) make fromParts, fromPart, toParts, toPart extensible
- Add a copyright statement.
- 2006-08-17: Rev 1.5: Alex Yiu
- Adding last modified date and small reformatting for copyright statement
- 2006-10-18: Rev 1.6: Alex Yiu
- Apply changes for public review issue R17
- to correct the definition of "tOnAlarmEvent"
- Apply changes for public review issue R9
- to qualify the "LED" comment
- 2006-11-15: Rev 1.7: Alex Yiu
- Issue R29: Removing the default for "initializePartnerRole"
- 2006-11-15: Rev 1.8: Alex Yiu
- Issue R33: Adding "ignoreMissingFromData" attribute
- 2006-12-09: Rev 1.9: Alex Yiu
- Changed the last modified date
- </xsd:documentation>
- </xsd:annotation>
-
- <xsd:import namespace="http://www.w3.org/XML/1998/namespace" schemaLocation="http://www.w3.org/2001/xml.xsd"/>
-
- <xsd:element name="process" type="tProcess">
- <xsd:annotation>
- <xsd:documentation>
- This is the root element for a WS-BPEL 2.0 process.
- </xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:complexType name="tProcess">
- <xsd:complexContent>
- <xsd:extension base="tExtensibleElements">
- <xsd:sequence>
- <xsd:element ref="extensions" minOccurs="0"/>
- <xsd:element ref="import" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element ref="partnerLinks" minOccurs="0"/>
- <xsd:element ref="messageExchanges" minOccurs="0"/>
- <xsd:element ref="variables" minOccurs="0"/>
- <xsd:element ref="correlationSets" minOccurs="0"/>
- <xsd:element ref="faultHandlers" minOccurs="0"/>
- <xsd:element ref="eventHandlers" minOccurs="0"/>
- <xsd:group ref="activity" minOccurs="0"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd-derived:NCName" use="optional"/>
- <xsd:attribute name="targetNamespace" type="xsd-derived:anyURI" use="optional"/>
- <xsd:attribute name="queryLanguage" type="xsd-derived:anyURI" default="urn:oasis:names:tc:wsbpel:2.0:sublang:xpath1.0"/>
- <xsd:attribute name="expressionLanguage" type="xsd-derived:anyURI" default="urn:oasis:names:tc:wsbpel:2.0:sublang:xpath1.0"/>
- <xsd:attribute name="suppressJoinFailure" type="tBoolean" default="no"/>
- <xsd:attribute name="exitOnStandardFault" type="tBoolean" default="no"/>
- <xsd:attribute name="abstractProcessProfile" type="xsd:anyURI" use="required"/>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
-
- <xsd:complexType name="tExtensibleElements">
- <xsd:annotation>
- <xsd:documentation>
- This type is extended by other component types to allow elements and attributes from
- other namespaces to be added at the modeled places.
- </xsd:documentation>
- </xsd:annotation>
- <xsd:sequence>
- <xsd:element ref="documentation" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
- </xsd:sequence>
- <xsd:anyAttribute namespace="##other" processContents="lax"/>
- </xsd:complexType>
-
- <xsd:element name="documentation" type="tDocumentation"/>
- <xsd:complexType name="tDocumentation" mixed="true">
- <xsd:sequence>
- <xsd:any processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
- </xsd:sequence>
- <xsd:attribute name="source" type="xsd-derived:anyURI"/>
- <xsd:attribute ref="xml:lang"/>
- </xsd:complexType>
-
- <xsd:group name="activity">
- <xsd:annotation>
- <xsd:documentation>
- All standard WS-BPEL 2.0 activities in alphabetical order. Basic activities
- and structured activities.
- Addtional constraints:
- - rethrow activity can be used ONLY within a fault handler
- (i.e. "catch" and "catchAll" element)
- - compensate or compensateScope activity can be used ONLY
- within a fault handler, a compensation handler or a termination handler
- </xsd:documentation>
- </xsd:annotation>
- <xsd:choice>
- <xsd:element ref="assign"/>
- <xsd:element ref="compensate"/>
- <xsd:element ref="compensateScope"/>
- <xsd:element ref="empty"/>
- <xsd:element ref="exit"/>
- <xsd:element ref="extensionActivity"/>
- <xsd:element ref="flow"/>
- <xsd:element ref="forEach"/>
- <xsd:element ref="if"/>
- <xsd:element ref="invoke"/>
- <xsd:element ref="pick"/>
- <xsd:element ref="receive"/>
- <xsd:element ref="repeatUntil"/>
- <xsd:element ref="reply"/>
- <xsd:element ref="rethrow"/>
- <xsd:element ref="scope"/>
- <xsd:element ref="sequence"/>
- <xsd:element ref="throw"/>
- <xsd:element ref="validate"/>
- <xsd:element ref="wait"/>
- <xsd:element ref="while"/>
- <xsd:element ref="opaqueActivity"/>
- </xsd:choice>
- </xsd:group>
-
- <xsd:element name="extensions" type="tExtensions"/>
- <xsd:complexType name="tExtensions">
- <xsd:complexContent>
- <xsd:extension base="tExtensibleElements">
- <xsd:sequence>
- <xsd:element ref="extension" minOccurs="0" maxOccurs="unbounded"/>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
-
- <xsd:element name="extension" type="tExtension"/>
- <xsd:complexType name="tExtension">
- <xsd:complexContent>
- <xsd:extension base="tExtensibleElements">
- <xsd:attribute name="namespace" type="xsd-derived:anyURI" use="optional"/>
- <xsd:attribute name="mustUnderstand" type="tBoolean" use="optional"/>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
-
- <xsd:element name="import" type="tImport"/>
- <xsd:complexType name="tImport">
- <xsd:complexContent>
- <xsd:extension base="tExtensibleElements">
- <xsd:attribute name="namespace" type="xsd-derived:anyURI" use="optional"/>
- <xsd:attribute name="location" type="xsd-derived:anyURI" use="optional"/>
- <xsd:attribute name="importType" type="xsd-derived:anyURI" use="optional"/>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
-
- <xsd:element name="partnerLinks" type="tPartnerLinks"/>
- <xsd:complexType name="tPartnerLinks">
- <xsd:complexContent>
- <xsd:extension base="tExtensibleElements">
- <xsd:sequence>
- <xsd:element ref="partnerLink" minOccurs="0" maxOccurs="unbounded"/>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
-
- <xsd:element name="partnerLink" type="tPartnerLink"/>
- <xsd:complexType name="tPartnerLink">
- <xsd:complexContent>
- <xsd:extension base="tExtensibleElements">
- <xsd:attribute name="name" type="xsd-derived:NCName" use="optional"/>
- <xsd:attribute name="partnerLinkType" type="xsd-derived:QName" use="optional"/>
- <xsd:attribute name="myRole" type="xsd-derived:NCName"/>
- <xsd:attribute name="partnerRole" type="xsd-derived:NCName"/>
- <xsd:attribute name="initializePartnerRole" type="tBoolean"/>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
-
- <xsd:element name="messageExchanges" type="tMessageExchanges"/>
- <xsd:complexType name="tMessageExchanges">
- <xsd:complexContent>
- <xsd:extension base="tExtensibleElements">
- <xsd:sequence>
- <xsd:element ref="messageExchange" minOccurs="0" maxOccurs="unbounded"/>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
-
- <xsd:element name="messageExchange" type="tMessageExchange"/>
- <xsd:complexType name="tMessageExchange">
- <xsd:complexContent>
- <xsd:extension base="tExtensibleElements">
- <xsd:attribute name="name" type="xsd-derived:NCName" use="optional"/>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
-
- <xsd:element name="variables" type="tVariables"/>
- <xsd:complexType name="tVariables">
- <xsd:complexContent>
- <xsd:extension base="tExtensibleElements">
- <xsd:sequence>
- <xsd:element ref="variable" minOccurs="0" maxOccurs="unbounded"/>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
-
- <xsd:element name="variable" type="tVariable"/>
- <xsd:complexType name="tVariable">
- <xsd:complexContent>
- <xsd:extension base="tExtensibleElements">
- <xsd:sequence>
- <xsd:group ref="fromGroup" minOccurs="0"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="BPELVariableName" use="optional"/>
- <xsd:attribute name="messageType" type="xsd-derived:QName" use="optional"/>
- <xsd:attribute name="type" type="xsd-derived:QName" use="optional"/>
- <xsd:attribute name="element" type="xsd-derived:QName" use="optional"/>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
-
- <xsd:simpleType name="BPELVariableName">
- <xsd:union>
- <xsd:simpleType>
- <xsd:restriction base="xsd:NCName">
- <xsd:pattern value="[^\.]+"/>
- </xsd:restriction>
- </xsd:simpleType>
- <xsd:simpleType>
- <xsd:restriction base="xsd:string">
- <xsd:enumeration value="##opaque"/>
- </xsd:restriction>
- </xsd:simpleType>
- </xsd:union>
- </xsd:simpleType>
-
- <xsd:element name="correlationSets" type="tCorrelationSets"/>
- <xsd:complexType name="tCorrelationSets">
- <xsd:complexContent>
- <xsd:extension base="tExtensibleElements">
- <xsd:sequence>
- <xsd:element ref="correlationSet" minOccurs="0" maxOccurs="unbounded"/>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
-
- <xsd:element name="correlationSet" type="tCorrelationSet"/>
- <xsd:complexType name="tCorrelationSet">
- <xsd:complexContent>
- <xsd:extension base="tExtensibleElements">
- <xsd:attribute name="properties" type="QNames" use="optional"/>
- <xsd:attribute name="name" type="xsd-derived:NCName" use="optional"/>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
-
- <xsd:simpleType name="QNames">
- <xsd:restriction>
- <xsd:simpleType>
- <xsd:list itemType="xsd-derived:QName"/>
- </xsd:simpleType>
- <xsd:minLength value="1"/>
- </xsd:restriction>
- </xsd:simpleType>
-
- <xsd:element name="faultHandlers" type="tFaultHandlers"/>
- <xsd:complexType name="tFaultHandlers">
- <xsd:complexContent>
- <xsd:extension base="tExtensibleElements">
- <xsd:sequence>
- <xsd:element ref="catch" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element ref="catchAll" minOccurs="0"/>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
-
- <xsd:element name="catch" type="tCatch">
- <xsd:annotation>
- <xsd:documentation>
- This element can contain all activities including the activities
- compensate, compensateScope and rethrow.
- </xsd:documentation>
- </xsd:annotation>
- </xsd:element>
- <xsd:complexType name="tCatch">
- <xsd:complexContent>
- <xsd:extension base="tActivityContainer">
- <xsd:attribute name="faultName" type="xsd-derived:QName"/>
- <xsd:attribute name="faultVariable" type="BPELVariableName"/>
- <xsd:attribute name="faultMessageType" type="xsd-derived:QName"/>
- <xsd:attribute name="faultElement" type="xsd-derived:QName"/>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
-
- <xsd:element name="catchAll" type="tActivityContainer">
- <xsd:annotation>
- <xsd:documentation>
- This element can contain all activities including the activities
- compensate, compensateScope and rethrow.
- </xsd:documentation>
- </xsd:annotation>
- </xsd:element>
-
- <xsd:complexType name="tActivityContainer">
- <xsd:complexContent>
- <xsd:extension base="tExtensibleElements">
- <xsd:sequence>
- <xsd:group ref="activity" minOccurs="0"/>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
-
- <xsd:element name="eventHandlers" type="tEventHandlers"/>
- <xsd:complexType name="tEventHandlers">
- <xsd:annotation>
- <xsd:documentation>
- XSD Authors: The child element onAlarm needs to be a Local Element Declaration,
- because there is another onAlarm element defined for the pick activity.
- </xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent>
- <xsd:extension base="tExtensibleElements">
- <xsd:sequence>
- <xsd:element ref="onEvent" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="onAlarm" type="tOnAlarmEvent" minOccurs="0" maxOccurs="unbounded"/>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
-
- <xsd:element name="onEvent" type="tOnEvent"/>
- <xsd:complexType name="tOnEvent">
- <xsd:complexContent>
- <xsd:extension base="tOnMsgCommon">
- <xsd:sequence>
- <xsd:element ref="scope" minOccurs="0"/>
- </xsd:sequence>
- <xsd:attribute name="messageType" type="xsd-derived:QName" use="optional"/>
- <xsd:attribute name="element" type="xsd-derived:QName" use="optional"/>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
-
- <xsd:complexType name="tOnMsgCommon">
- <xsd:annotation>
- <xsd:documentation>
- XSD Authors: The child element correlations needs to be a Local Element Declaration,
- because there is another correlations element defined for the invoke activity.
- </xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent>
- <xsd:extension base="tExtensibleElements">
- <xsd:sequence>
- <xsd:element name="correlations" type="tCorrelations" minOccurs="0"/>
- <xsd:element ref="fromParts" minOccurs="0"/>
- </xsd:sequence>
- <xsd:attribute name="partnerLink" type="xsd-derived:NCName" use="optional"/>
- <xsd:attribute name="portType" type="xsd-derived:QName" use="optional"/>
- <xsd:attribute name="operation" type="xsd-derived:NCName" use="optional"/>
- <xsd:attribute name="messageExchange" type="xsd-derived:NCName" use="optional"/>
- <xsd:attribute name="variable" type="BPELVariableName" use="optional"/>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
-
- <xsd:complexType name="tCorrelations">
- <xsd:annotation>
- <xsd:documentation>
- XSD Authors: The child element correlation needs to be a Local Element Declaration,
- because there is another correlation element defined for the invoke activity.
- </xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent>
- <xsd:extension base="tExtensibleElements">
- <xsd:sequence>
- <xsd:element name="correlation" type="tCorrelation" minOccurs="0" maxOccurs="unbounded"/>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
-
- <xsd:complexType name="tCorrelation">
- <xsd:complexContent>
- <xsd:extension base="tExtensibleElements">
- <xsd:attribute name="set" type="xsd-derived:NCName" use="optional"/>
- <xsd:attribute name="initiate" type="tInitiate" default="no"/>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
-
- <xsd:simpleType name="tInitiate">
- <xsd:restriction base="xsd:string">
- <xsd:enumeration value="yes"/>
- <xsd:enumeration value="join"/>
- <xsd:enumeration value="no"/>
- <xsd:enumeration value="##opaque"/>
- </xsd:restriction>
- </xsd:simpleType>
-
- <xsd:complexType name="tOnAlarmEvent">
- <xsd:complexContent>
- <xsd:extension base="tExtensibleElements">
- <xsd:sequence>
- <xsd:group ref="forOrUntilGroup" minOccurs="0"/>
- <xsd:element ref="repeatEvery" minOccurs="0"/>
- <xsd:element ref="scope" minOccurs="0"/>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
-
- <xsd:group name="forOrUntilGroup">
- <xsd:choice>
- <xsd:element ref="for" minOccurs="0"/>
- <xsd:element ref="until" minOccurs="0"/>
- </xsd:choice>
- </xsd:group>
-
- <xsd:element name="for" type="tDuration-expr"/>
-
- <xsd:element name="until" type="tDeadline-expr"/>
-
- <xsd:element name="repeatEvery" type="tDuration-expr"/>
-
- <xsd:complexType name="tActivity">
- <xsd:complexContent>
- <xsd:extension base="tExtensibleElements">
- <xsd:sequence>
- <xsd:element ref="targets" minOccurs="0"/>
- <xsd:element ref="sources" minOccurs="0"/>
- </xsd:sequence>
- <xsd:attribute name="name" type="xsd-derived:NCName"/>
- <xsd:attribute name="suppressJoinFailure" type="tBoolean" use="optional"/>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
-
- <xsd:element name="targets" type="tTargets"/>
- <xsd:complexType name="tTargets">
- <xsd:complexContent>
- <xsd:extension base="tExtensibleElements">
- <xsd:sequence>
- <xsd:element ref="joinCondition" minOccurs="0"/>
- <xsd:element ref="target" minOccurs="0" maxOccurs="unbounded"/>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
-
- <xsd:element name="joinCondition" type="tCondition"/>
-
- <xsd:element name="target" type="tTarget"/>
- <xsd:complexType name="tTarget">
- <xsd:complexContent>
- <xsd:extension base="tExtensibleElements">
- <xsd:attribute name="linkName" type="xsd-derived:NCName" use="optional"/>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
-
- <xsd:element name="sources" type="tSources"/>
- <xsd:complexType name="tSources">
- <xsd:complexContent>
- <xsd:extension base="tExtensibleElements">
- <xsd:sequence>
- <xsd:element ref="source" minOccurs="0" maxOccurs="unbounded"/>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
-
- <xsd:element name="source" type="tSource"/>
- <xsd:complexType name="tSource">
- <xsd:complexContent>
- <xsd:extension base="tExtensibleElements">
- <xsd:sequence>
- <xsd:element ref="transitionCondition" minOccurs="0"/>
- </xsd:sequence>
- <xsd:attribute name="linkName" type="xsd-derived:NCName" use="optional"/>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
-
- <xsd:element name="transitionCondition" type="tCondition"/>
-
- <xsd:element name="assign" type="tAssign"/>
- <xsd:complexType name="tAssign">
- <xsd:complexContent>
- <xsd:extension base="tActivity">
- <xsd:sequence>
- <xsd:choice maxOccurs="unbounded">
- <xsd:element ref="copy" minOccurs="0"/>
- <xsd:element ref="extensionAssignOperation" minOccurs="0"/>
- </xsd:choice>
- </xsd:sequence>
- <xsd:attribute name="validate" type="tBoolean" use="optional" default="no"/>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
-
- <xsd:element name="copy" type="tCopy"/>
- <xsd:complexType name="tCopy">
- <xsd:complexContent>
- <xsd:extension base="tExtensibleElements">
- <xsd:sequence>
- <xsd:group ref="fromGroup" minOccurs="0"/>
- <xsd:element ref="to" minOccurs="0"/>
- </xsd:sequence>
- <xsd:attribute name="keepSrcElementName" type="tBoolean" use="optional" default="no"/>
- <xsd:attribute name="ignoreMissingFromData" type="tBoolean" use="optional" default="no"/>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
-
- <xsd:group name="fromGroup">
- <xsd:choice>
- <xsd:element ref="opaqueFrom"/>
- <xsd:element ref="from"/>
- </xsd:choice>
- </xsd:group>
-
- <xsd:element name="opaqueFrom" type="tExtensibleElements"/>
-
- <xsd:element name="from" type="tFrom"/>
- <xsd:complexType name="tFrom" mixed="true">
- <xsd:sequence>
- <xsd:element ref="documentation" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:choice minOccurs="0">
- <xsd:element ref="literal" minOccurs="0"/>
- <xsd:element ref="query" minOccurs="0"/>
- </xsd:choice>
- </xsd:sequence>
- <xsd:attribute name="expressionLanguage" type="xsd-derived:anyURI"/>
- <xsd:attribute name="variable" type="BPELVariableName"/>
- <xsd:attribute name="part" type="xsd-derived:NCName"/>
- <xsd:attribute name="property" type="xsd-derived:QName"/>
- <xsd:attribute name="partnerLink" type="xsd-derived:NCName"/>
- <xsd:attribute name="endpointReference" type="tRoles"/>
- <xsd:attribute name="opaque" type="xsd-derived:tOpaqueBoolean"/>
- <xsd:anyAttribute namespace="##other" processContents="lax"/>
- </xsd:complexType>
-
- <xsd:element name="literal" type="tLiteral"/>
- <xsd:complexType name="tLiteral" mixed="true">
- <xsd:sequence>
- <xsd:any namespace="##any" processContents="lax" minOccurs="0" maxOccurs="1"/>
- </xsd:sequence>
- </xsd:complexType>
-
- <xsd:element name="query" type="tQuery"/>
- <xsd:complexType name="tQuery" mixed="true">
- <xsd:sequence>
- <xsd:any processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
- </xsd:sequence>
- <xsd:attribute name="queryLanguage" type="xsd-derived:anyURI"/>
- <xsd:attribute name="opaque" type="xsd-derived:tOpaqueBoolean"/>
- <xsd:anyAttribute namespace="##other" processContents="lax"/>
- </xsd:complexType>
-
- <xsd:simpleType name="tRoles">
- <xsd:restriction base="xsd:string">
- <xsd:enumeration value="myRole"/>
- <xsd:enumeration value="partnerRole"/>
- <xsd:enumeration value="##opaque"/>
- </xsd:restriction>
- </xsd:simpleType>
-
- <xsd:element name="to" type="tTo"/>
- <xsd:complexType name="tTo" mixed="true">
- <xsd:sequence>
- <xsd:element ref="documentation" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element ref="query" minOccurs="0"/>
- </xsd:sequence>
- <xsd:attribute name="opaque" type="xsd-derived:tOpaqueBoolean"/>
- <xsd:attribute name="expressionLanguage" type="xsd-derived:anyURI"/>
- <xsd:attribute name="variable" type="BPELVariableName"/>
- <xsd:attribute name="part" type="xsd-derived:NCName"/>
- <xsd:attribute name="property" type="xsd-derived:QName"/>
- <xsd:attribute name="partnerLink" type="xsd-derived:NCName"/>
- <xsd:anyAttribute namespace="##other" processContents="lax"/>
- </xsd:complexType>
-
- <xsd:element name="extensionAssignOperation" type="tExtensionAssignOperation"/>
- <xsd:complexType name="tExtensionAssignOperation">
- <xsd:complexContent>
- <xsd:extension base="tExtensibleElements"/>
- </xsd:complexContent>
- </xsd:complexType>
-
- <xsd:element name="compensate" type="tCompensate"/>
- <xsd:complexType name="tCompensate">
- <xsd:complexContent>
- <xsd:extension base="tActivity"/>
- </xsd:complexContent>
- </xsd:complexType>
-
- <xsd:element name="compensateScope" type="tCompensateScope"/>
- <xsd:complexType name="tCompensateScope">
- <xsd:complexContent>
- <xsd:extension base="tActivity">
- <xsd:attribute name="target" type="xsd-derived:NCName" use="optional"/>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
-
- <xsd:element name="empty" type="tEmpty"/>
- <xsd:complexType name="tEmpty">
- <xsd:complexContent>
- <xsd:extension base="tActivity"/>
- </xsd:complexContent>
- </xsd:complexType>
-
- <xsd:element name="exit" type="tExit"/>
- <xsd:complexType name="tExit">
- <xsd:complexContent>
- <xsd:extension base="tActivity"/>
- </xsd:complexContent>
- </xsd:complexType>
-
- <xsd:element name="extensionActivity" type="tExtensionActivity"/>
- <xsd:complexType name="tExtensionActivity">
- <xsd:sequence>
- <xsd:any namespace="##other" processContents="lax"/>
- </xsd:sequence>
- </xsd:complexType>
-
- <xsd:element name="flow" type="tFlow"/>
- <xsd:complexType name="tFlow">
- <xsd:complexContent>
- <xsd:extension base="tActivity">
- <xsd:sequence>
- <xsd:element ref="links" minOccurs="0"/>
- <xsd:group ref="activity" minOccurs="0" maxOccurs="unbounded"/>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
-
- <xsd:element name="links" type="tLinks"/>
- <xsd:complexType name="tLinks">
- <xsd:complexContent>
- <xsd:extension base="tExtensibleElements">
- <xsd:sequence>
- <xsd:element ref="link" minOccurs="0" maxOccurs="unbounded"/>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
-
- <xsd:element name="link" type="tLink"/>
- <xsd:complexType name="tLink">
- <xsd:complexContent>
- <xsd:extension base="tExtensibleElements">
- <xsd:attribute name="name" type="xsd-derived:NCName" use="optional"/>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
-
- <xsd:element name="forEach" type="tForEach"/>
- <xsd:complexType name="tForEach">
- <xsd:complexContent>
- <xsd:extension base="tActivity">
- <xsd:sequence>
- <xsd:element ref="startCounterValue" minOccurs="0"/>
- <xsd:element ref="finalCounterValue" minOccurs="0"/>
- <xsd:element ref="completionCondition" minOccurs="0"/>
- <xsd:element ref="scope" minOccurs="0"/>
- </xsd:sequence>
- <xsd:attribute name="counterName" type="BPELVariableName" use="optional"/>
- <xsd:attribute name="parallel" type="tBoolean" use="optional"/>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
-
- <xsd:element name="startCounterValue" type="tExpression"/>
-
- <xsd:element name="finalCounterValue" type="tExpression"/>
-
- <xsd:element name="completionCondition" type="tCompletionCondition"/>
- <xsd:complexType name="tCompletionCondition">
- <xsd:complexContent>
- <xsd:extension base="tExtensibleElements">
- <xsd:sequence>
- <xsd:element ref="branches" minOccurs="0"/>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
-
- <xsd:element name="branches" type="tBranches"/>
- <xsd:complexType name="tBranches">
- <xsd:complexContent>
- <xsd:extension base="tExpression">
- <xsd:attribute name="successfulBranchesOnly" type="tBoolean" default="no"/>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
-
- <xsd:element name="if" type="tIf"/>
- <xsd:complexType name="tIf">
- <xsd:complexContent>
- <xsd:extension base="tActivity">
- <xsd:sequence>
- <xsd:element ref="condition" minOccurs="0"/>
- <xsd:group ref="activity" minOccurs="0"/>
- <xsd:element ref="elseif" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element ref="else" minOccurs="0"/>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
-
- <xsd:element name="elseif" type="tElseif"/>
- <xsd:complexType name="tElseif">
- <xsd:complexContent>
- <xsd:extension base="tExtensibleElements">
- <xsd:sequence>
- <xsd:element ref="condition" minOccurs="0"/>
- <xsd:group ref="activity" minOccurs="0"/>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
-
- <xsd:element name="else" type="tActivityContainer"/>
-
- <xsd:element name="invoke" type="tInvoke"/>
- <xsd:complexType name="tInvoke">
- <xsd:annotation>
- <xsd:documentation>
- XSD Authors: The child element correlations needs to be a Local Element Declaration,
- because there is another correlations element defined for the non-invoke activities.
- </xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent>
- <xsd:extension base="tActivity">
- <xsd:sequence>
- <xsd:element name="correlations" type="tCorrelationsWithPattern" minOccurs="0"/>
- <xsd:element ref="catch" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element ref="catchAll" minOccurs="0"/>
- <xsd:element ref="compensationHandler" minOccurs="0"/>
- <xsd:element ref="toParts" minOccurs="0"/>
- <xsd:element ref="fromParts" minOccurs="0"/>
- </xsd:sequence>
- <xsd:attribute name="partnerLink" type="xsd-derived:NCName" use="optional"/>
- <xsd:attribute name="portType" type="xsd-derived:QName" use="optional"/>
- <xsd:attribute name="operation" type="xsd-derived:NCName" use="optional"/>
- <xsd:attribute name="inputVariable" type="BPELVariableName" use="optional"/>
- <xsd:attribute name="outputVariable" type="BPELVariableName" use="optional"/>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
-
- <xsd:complexType name="tCorrelationsWithPattern">
- <xsd:annotation>
- <xsd:documentation>
- XSD Authors: The child element correlation needs to be a Local Element Declaration,
- because there is another correlation element defined for the non-invoke activities.
- </xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent>
- <xsd:extension base="tExtensibleElements">
- <xsd:sequence>
- <xsd:element name="correlation" type="tCorrelationWithPattern" minOccurs="0" maxOccurs="unbounded"/>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
-
- <xsd:complexType name="tCorrelationWithPattern">
- <xsd:complexContent>
- <xsd:extension base="tCorrelation">
- <xsd:attribute name="pattern" type="tPattern"/>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
-
- <xsd:simpleType name="tPattern">
- <xsd:restriction base="xsd:string">
- <xsd:enumeration value="request"/>
- <xsd:enumeration value="response"/>
- <xsd:enumeration value="request-response"/>
- <xsd:enumeration value="##opaque"/>
- </xsd:restriction>
- </xsd:simpleType>
-
- <xsd:element name="fromParts" type="tFromParts"/>
- <xsd:complexType name="tFromParts">
- <xsd:complexContent>
- <xsd:extension base="tExtensibleElements">
- <xsd:sequence>
- <xsd:element ref="fromPart" minOccurs="0" maxOccurs="unbounded"/>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
-
- <xsd:element name="fromPart" type="tFromPart"/>
- <xsd:complexType name="tFromPart">
- <xsd:complexContent>
- <xsd:extension base="tExtensibleElements">
- <xsd:attribute name="part" type="xsd-derived:NCName" use="optional"/>
- <xsd:attribute name="toVariable" type="BPELVariableName" use="optional"/>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
-
- <xsd:element name="toParts" type="tToParts"/>
- <xsd:complexType name="tToParts">
- <xsd:complexContent>
- <xsd:extension base="tExtensibleElements">
- <xsd:sequence>
- <xsd:element ref="toPart" minOccurs="0" maxOccurs="unbounded"/>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
-
- <xsd:element name="toPart" type="tToPart"/>
- <xsd:complexType name="tToPart">
- <xsd:complexContent>
- <xsd:extension base="tExtensibleElements">
- <xsd:attribute name="part" type="xsd-derived:NCName" use="optional"/>
- <xsd:attribute name="fromVariable" type="BPELVariableName" use="optional"/>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
-
- <xsd:element name="pick" type="tPick"/>
- <xsd:complexType name="tPick">
- <xsd:annotation>
- <xsd:documentation>
- XSD Authors: The child element onAlarm needs to be a Local Element Declaration,
- because there is another onAlarm element defined for event handlers.
- </xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent>
- <xsd:extension base="tActivity">
- <xsd:sequence>
- <xsd:element ref="onMessage" minOccurs="0" maxOccurs="unbounded"/>
- <xsd:element name="onAlarm" type="tOnAlarmPick" minOccurs="0" maxOccurs="unbounded"/>
- </xsd:sequence>
- <xsd:attribute name="createInstance" type="tBoolean" default="no"/>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
-
- <xsd:element name="onMessage" type="tOnMessage"/>
- <xsd:complexType name="tOnMessage">
- <xsd:complexContent>
- <xsd:extension base="tOnMsgCommon">
- <xsd:sequence>
- <xsd:group ref="activity" minOccurs="0"/>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
-
- <xsd:complexType name="tOnAlarmPick">
- <xsd:complexContent>
- <xsd:extension base="tExtensibleElements">
- <xsd:sequence>
- <xsd:group ref="forOrUntilGroup" minOccurs="0"/>
- <xsd:group ref="activity" minOccurs="0"/>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
-
- <xsd:element name="receive" type="tReceive"/>
- <xsd:complexType name="tReceive">
- <xsd:annotation>
- <xsd:documentation>
- XSD Authors: The child element correlations needs to be a Local Element Declaration,
- because there is another correlations element defined for the invoke activity.
- </xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent>
- <xsd:extension base="tActivity">
- <xsd:sequence>
- <xsd:element name="correlations" type="tCorrelations" minOccurs="0"/>
- <xsd:element ref="fromParts" minOccurs="0"/>
- </xsd:sequence>
- <xsd:attribute name="partnerLink" type="xsd-derived:NCName" use="optional"/>
- <xsd:attribute name="portType" type="xsd-derived:QName" use="optional"/>
- <xsd:attribute name="operation" type="xsd-derived:NCName" use="optional"/>
- <xsd:attribute name="variable" type="BPELVariableName" use="optional"/>
- <xsd:attribute name="createInstance" type="tBoolean" default="no"/>
- <xsd:attribute name="messageExchange" type="xsd-derived:NCName" use="optional"/>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
-
- <xsd:element name="repeatUntil" type="tRepeatUntil"/>
- <xsd:complexType name="tRepeatUntil">
- <xsd:complexContent>
- <xsd:extension base="tActivity">
- <xsd:sequence>
- <xsd:group ref="activity" minOccurs="0"/>
- <xsd:element ref="condition" minOccurs="0"/>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
-
- <xsd:element name="reply" type="tReply"/>
- <xsd:complexType name="tReply">
- <xsd:annotation>
- <xsd:documentation>
- XSD Authors: The child element correlations needs to be a Local Element Declaration,
- because there is another correlations element defined for the invoke activity.
- </xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent>
- <xsd:extension base="tActivity">
- <xsd:sequence>
- <xsd:element name="correlations" type="tCorrelations" minOccurs="0"/>
- <xsd:element ref="toParts" minOccurs="0"/>
- </xsd:sequence>
- <xsd:attribute name="partnerLink" type="xsd-derived:NCName" use="optional"/>
- <xsd:attribute name="portType" type="xsd-derived:QName" use="optional"/>
- <xsd:attribute name="operation" type="xsd-derived:NCName" use="optional"/>
- <xsd:attribute name="variable" type="BPELVariableName" use="optional"/>
- <xsd:attribute name="faultName" type="xsd-derived:QName"/>
- <xsd:attribute name="messageExchange" type="xsd-derived:NCName" use="optional"/>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
-
- <xsd:element name="rethrow" type="tRethrow"/>
- <xsd:complexType name="tRethrow">
- <xsd:complexContent>
- <xsd:extension base="tActivity"/>
- </xsd:complexContent>
- </xsd:complexType>
-
- <xsd:element name="scope" type="tScope"/>
- <xsd:complexType name="tScope">
- <xsd:annotation>
- <xsd:documentation>
- There is no schema-level default for "exitOnStandardFault"
- at "scope". Because, it will inherit default from enclosing scope
- or process.
- </xsd:documentation>
- </xsd:annotation>
- <xsd:complexContent>
- <xsd:extension base="tActivity">
- <xsd:sequence>
- <xsd:element ref="partnerLinks" minOccurs="0"/>
- <xsd:element ref="messageExchanges" minOccurs="0"/>
- <xsd:element ref="variables" minOccurs="0"/>
- <xsd:element ref="correlationSets" minOccurs="0"/>
- <xsd:element ref="faultHandlers" minOccurs="0"/>
- <xsd:element ref="compensationHandler" minOccurs="0"/>
- <xsd:element ref="terminationHandler" minOccurs="0"/>
- <xsd:element ref="eventHandlers" minOccurs="0"/>
- <xsd:group ref="activity" minOccurs="0"/>
- </xsd:sequence>
- <xsd:attribute name="isolated" type="tBoolean" default="no"/>
- <xsd:attribute name="exitOnStandardFault" type="tBoolean"/>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
-
- <xsd:element name="compensationHandler" type="tActivityContainer">
- <xsd:annotation>
- <xsd:documentation>
- This element can contain all activities including the activities
- compensate and compensateScope.
- </xsd:documentation>
- </xsd:annotation>
- </xsd:element>
-
- <xsd:element name="terminationHandler" type="tActivityContainer">
- <xsd:annotation>
- <xsd:documentation>
- This element can contain all activities including the activities
- compensate and compensateScope.
- </xsd:documentation>
- </xsd:annotation>
- </xsd:element>
-
- <xsd:element name="sequence" type="tSequence"/>
- <xsd:complexType name="tSequence">
- <xsd:complexContent>
- <xsd:extension base="tActivity">
- <xsd:sequence>
- <xsd:group ref="activity" minOccurs="0" maxOccurs="unbounded"/>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
-
- <xsd:element name="throw" type="tThrow"/>
- <xsd:complexType name="tThrow">
- <xsd:complexContent>
- <xsd:extension base="tActivity">
- <xsd:attribute name="faultName" type="xsd-derived:QName" use="optional"/>
- <xsd:attribute name="faultVariable" type="BPELVariableName"/>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
-
- <xsd:element name="validate" type="tValidate"/>
- <xsd:complexType name="tValidate">
- <xsd:complexContent>
- <xsd:extension base="tActivity">
- <xsd:attribute name="variables" use="optional" type="BPELVariableNames"/>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
-
- <xsd:simpleType name="BPELVariableNames">
- <xsd:restriction>
- <xsd:simpleType>
- <xsd:list itemType="BPELVariableName"/>
- </xsd:simpleType>
- <xsd:minLength value="1"/>
- </xsd:restriction>
- </xsd:simpleType>
-
- <xsd:element name="wait" type="tWait"/>
- <xsd:complexType name="tWait">
- <xsd:complexContent>
- <xsd:extension base="tActivity">
- <xsd:choice>
- <xsd:element ref="for" minOccurs="0"/>
- <xsd:element ref="until" minOccurs="0"/>
- </xsd:choice>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
-
- <xsd:element name="while" type="tWhile"/>
- <xsd:complexType name="tWhile">
- <xsd:complexContent>
- <xsd:extension base="tActivity">
- <xsd:sequence>
- <xsd:element ref="condition" minOccurs="0"/>
- <xsd:group ref="activity" minOccurs="0"/>
- </xsd:sequence>
- </xsd:extension>
- </xsd:complexContent>
- </xsd:complexType>
-
- <xsd:complexType name="tExpression" mixed="true">
- <xsd:sequence>
- <xsd:any minOccurs="0" maxOccurs="unbounded" processContents="lax"/>
- </xsd:sequence>
- <xsd:attribute name="expressionLanguage" type="xsd-derived:anyURI"/>
- <xsd:attribute name="opaque" type="xsd-derived:tOpaqueBoolean"/>
- <xsd:anyAttribute namespace="##other" processContents="lax"/>
- </xsd:complexType>
-
- <xsd:complexType name="tCondition">
- <xsd:complexContent mixed="true">
- <xsd:extension base="tExpression"/>
- </xsd:complexContent>
- </xsd:complexType>
-
- <xsd:element name="condition" type="tBoolean-expr"/>
- <xsd:complexType name="tBoolean-expr">
- <xsd:complexContent mixed="true">
- <xsd:extension base="tExpression"/>
- </xsd:complexContent>
- </xsd:complexType>
-
- <xsd:complexType name="tDuration-expr">
- <xsd:complexContent mixed="true">
- <xsd:extension base="tExpression"/>
- </xsd:complexContent>
- </xsd:complexType>
-
- <xsd:complexType name="tDeadline-expr">
- <xsd:complexContent mixed="true">
- <xsd:extension base="tExpression"/>
- </xsd:complexContent>
- </xsd:complexType>
-
- <xsd:simpleType name="tBoolean">
- <xsd:restriction base="xsd:string">
- <xsd:enumeration value="yes"/>
- <xsd:enumeration value="no"/>
- <xsd:enumeration value="##opaque"/>
- </xsd:restriction>
- </xsd:simpleType>
-
- <!-- SCHEMA NOTE: new types and element introduced for Abstract WS-BPEL -->
-
- <xsd:simpleType name="tOpaqueStr">
- <xsd:restriction base="xsd:string">
- <xsd:enumeration value="##opaque"/>
- </xsd:restriction>
- </xsd:simpleType>
-
- <xsd:simpleType name="QName">
- <xsd:union memberTypes="xsd:QName tOpaqueStr"/>
- </xsd:simpleType>
-
- <xsd:simpleType name="NCName">
- <xsd:union memberTypes="xsd:NCName tOpaqueStr"/>
- </xsd:simpleType>
-
- <xsd:simpleType name="anyURI">
- <xsd:union memberTypes="xsd:anyURI tOpaqueStr"/>
- </xsd:simpleType>
-
- <xsd:simpleType name="tOpaqueBoolean">
- <xsd:restriction base="xsd:string">
- <xsd:enumeration value="yes"/>
- </xsd:restriction>
- </xsd:simpleType>
-
- <xsd:element name="opaqueActivity" type="tOpaqueActivity"/>
- <xsd:complexType name="tOpaqueActivity">
- <xsd:complexContent>
- <xsd:extension base="tActivity"/>
- </xsd:complexContent>
- </xsd:complexType>
-
+
+<!--
+ Copyright (c) OASIS Open 2006. All Rights Reserved.
+-->
+<xsd:schema targetNamespace="http://docs.oasis-open.org/wsbpel/2.0/process/abstract"
+ xmlns="http://docs.oasis-open.org/wsbpel/2.0/process/abstract"
+ xmlns:xsd="http://www.w3.org/2001/XMLSchema"
+ xmlns:xsd-derived="http://docs.oasis-open.org/wsbpel/2.0/process/abstract"
+ elementFormDefault="qualified"
+ blockDefault="#all">
+
+ <xsd:annotation>
+ <xsd:documentation>
+ Schema for Abstract Process Common Base for WS-BPEL 2.0
+ Last modified date: 9th December, 2006
+
+ NOTE: Here is the changes path from Exec BPEL XSD to this XSD:
+ (a) have a global replace from minOccurs=1 to minOccurs=0 for element declaration
+ (b) have a global replace from use=required to use=optional for attribute declaration
+ (c) change "xsd-derived" from XSD NS to this Abstract BPEL NS and define the corresponding simple types
+ (d) adding "##opaque" to BPELVariableName, tInitiate, tPattern, tRoles, tBoolean
+ (e) add abstractProcessProfile to tProcess
+ (f) add opaqueActivity
+ (g) add tOpaqueBoolean type and add opaque attribute tExpression, tQuery, tFrom, tTo
+ (h) add opaqueFrom element and introduce fromGroup
+ (i) Change the sequence for "tOnAlarmEvent"
+ <![CDATA[
+ From:
+ ---------------------
+ <xsd:sequence>
+ <xsd:choice>
+ <xsd:sequence>
+ <xsd:group ref="forOrUntilGroup" minOccurs="1"/>
+ <xsd:element ref="repeatEvery" minOccurs="0"/>
+ </xsd:sequence>
+ <xsd:element ref="repeatEvery" minOccurs="1"/>
+ </xsd:choice>
+ <xsd:element ref="scope" minOccurs="1"/>
+ </xsd:sequence>
+ ---------------------
+ To:
+ ---------------------
+ <xsd:sequence>
+ <xsd:group ref="forOrUntilGroup" minOccurs="0"/>
+ <xsd:element ref="repeatEvery" minOccurs="0"/>
+ <xsd:element ref="scope" minOccurs="0"/>
+ </xsd:sequence>
+ ---------------------
+ ]]>
+
+ 2006-08-07: Rev 1.1: Alex Yiu
+ Branching off from wsbpel_main.xsd of Rev 1.48:
+ by changing targetNamespace
+ and changing prefix "simple" to "xsd-derived" and its corresponding namespace
+ 2006-08-08: Rev 1.2: Alex Yiu
+ Minor cosmetic change
+ 2006-08-09: Rev 1.3: Alex Yiu
+ A minor update and clarification in comments and documentation
+ 2006-08-16: Rev 1.4: Thomas Schulze
+ Minor formatting changes.
+ Apply AI 151: change the defaults of queryLanguage and expressionLanguage from "urn:oasis:names:tc:ws2.0:sublang:xpath1.0"
+ to "urn:oasis:names:tc:wsbpel:2.0:sublang:xpath1.0".
+ Apply AI 152: change the targetNamespace from "http://docs.oasis-open.org/ws-bpel/2.0/process/abstract"
+ to "http://docs.oasis-open.org/wsbpel/2.0/process/abstract".
+ Apply the two friendly amendments made in today's call. That are:
+ 1) make the QName list non empty (simpleType QNames)
+ 2) make fromParts, fromPart, toParts, toPart extensible
+ Add a copyright statement.
+ 2006-08-17: Rev 1.5: Alex Yiu
+ Adding last modified date and small reformatting for copyright statement
+ 2006-10-18: Rev 1.6: Alex Yiu
+ Apply changes for public review issue R17
+ to correct the definition of "tOnAlarmEvent"
+ Apply changes for public review issue R9
+ to qualify the "LED" comment
+ 2006-11-15: Rev 1.7: Alex Yiu
+ Issue R29: Removing the default for "initializePartnerRole"
+ 2006-11-15: Rev 1.8: Alex Yiu
+ Issue R33: Adding "ignoreMissingFromData" attribute
+ 2006-12-09: Rev 1.9: Alex Yiu
+ Changed the last modified date
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:import namespace="http://www.w3.org/XML/1998/namespace" schemaLocation="http://www.w3.org/2001/xml.xsd"/>
+
+ <xsd:element name="process" type="tProcess">
+ <xsd:annotation>
+ <xsd:documentation>
+ This is the root element for a WS-BPEL 2.0 process.
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:complexType name="tProcess">
+ <xsd:complexContent>
+ <xsd:extension base="tExtensibleElements">
+ <xsd:sequence>
+ <xsd:element ref="extensions" minOccurs="0"/>
+ <xsd:element ref="import" minOccurs="0" maxOccurs="unbounded"/>
+ <xsd:element ref="partnerLinks" minOccurs="0"/>
+ <xsd:element ref="messageExchanges" minOccurs="0"/>
+ <xsd:element ref="variables" minOccurs="0"/>
+ <xsd:element ref="correlationSets" minOccurs="0"/>
+ <xsd:element ref="faultHandlers" minOccurs="0"/>
+ <xsd:element ref="eventHandlers" minOccurs="0"/>
+ <xsd:group ref="activity" minOccurs="0"/>
+ </xsd:sequence>
+ <xsd:attribute name="name" type="xsd-derived:NCName" use="optional"/>
+ <xsd:attribute name="targetNamespace" type="xsd-derived:anyURI" use="optional"/>
+ <xsd:attribute name="queryLanguage" type="xsd-derived:anyURI" default="urn:oasis:names:tc:wsbpel:2.0:sublang:xpath1.0"/>
+ <xsd:attribute name="expressionLanguage" type="xsd-derived:anyURI" default="urn:oasis:names:tc:wsbpel:2.0:sublang:xpath1.0"/>
+ <xsd:attribute name="suppressJoinFailure" type="tBoolean" default="no"/>
+ <xsd:attribute name="exitOnStandardFault" type="tBoolean" default="no"/>
+ <xsd:attribute name="abstractProcessProfile" type="xsd:anyURI" use="required"/>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:complexType name="tExtensibleElements">
+ <xsd:annotation>
+ <xsd:documentation>
+ This type is extended by other component types to allow elements and attributes from
+ other namespaces to be added at the modeled places.
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:element ref="documentation" minOccurs="0" maxOccurs="unbounded"/>
+ <xsd:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
+ </xsd:sequence>
+ <xsd:anyAttribute namespace="##other" processContents="lax"/>
+ </xsd:complexType>
+
+ <xsd:element name="documentation" type="tDocumentation"/>
+ <xsd:complexType name="tDocumentation" mixed="true">
+ <xsd:sequence>
+ <xsd:any processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
+ </xsd:sequence>
+ <xsd:attribute name="source" type="xsd-derived:anyURI"/>
+ <xsd:attribute ref="xml:lang"/>
+ </xsd:complexType>
+
+ <xsd:group name="activity">
+ <xsd:annotation>
+ <xsd:documentation>
+ All standard WS-BPEL 2.0 activities in alphabetical order. Basic activities
+ and structured activities.
+ Addtional constraints:
+ - rethrow activity can be used ONLY within a fault handler
+ (i.e. "catch" and "catchAll" element)
+ - compensate or compensateScope activity can be used ONLY
+ within a fault handler, a compensation handler or a termination handler
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:choice>
+ <xsd:element ref="assign"/>
+ <xsd:element ref="compensate"/>
+ <xsd:element ref="compensateScope"/>
+ <xsd:element ref="empty"/>
+ <xsd:element ref="exit"/>
+ <xsd:element ref="extensionActivity"/>
+ <xsd:element ref="flow"/>
+ <xsd:element ref="forEach"/>
+ <xsd:element ref="if"/>
+ <xsd:element ref="invoke"/>
+ <xsd:element ref="pick"/>
+ <xsd:element ref="receive"/>
+ <xsd:element ref="repeatUntil"/>
+ <xsd:element ref="reply"/>
+ <xsd:element ref="rethrow"/>
+ <xsd:element ref="scope"/>
+ <xsd:element ref="sequence"/>
+ <xsd:element ref="throw"/>
+ <xsd:element ref="validate"/>
+ <xsd:element ref="wait"/>
+ <xsd:element ref="while"/>
+ <xsd:element ref="opaqueActivity"/>
+ </xsd:choice>
+ </xsd:group>
+
+ <xsd:element name="extensions" type="tExtensions"/>
+ <xsd:complexType name="tExtensions">
+ <xsd:complexContent>
+ <xsd:extension base="tExtensibleElements">
+ <xsd:sequence>
+ <xsd:element ref="extension" minOccurs="0" maxOccurs="unbounded"/>
+ </xsd:sequence>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:element name="extension" type="tExtension"/>
+ <xsd:complexType name="tExtension">
+ <xsd:complexContent>
+ <xsd:extension base="tExtensibleElements">
+ <xsd:attribute name="namespace" type="xsd-derived:anyURI" use="optional"/>
+ <xsd:attribute name="mustUnderstand" type="tBoolean" use="optional"/>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:element name="import" type="tImport"/>
+ <xsd:complexType name="tImport">
+ <xsd:complexContent>
+ <xsd:extension base="tExtensibleElements">
+ <xsd:attribute name="namespace" type="xsd-derived:anyURI" use="optional"/>
+ <xsd:attribute name="location" type="xsd-derived:anyURI" use="optional"/>
+ <xsd:attribute name="importType" type="xsd-derived:anyURI" use="optional"/>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:element name="partnerLinks" type="tPartnerLinks"/>
+ <xsd:complexType name="tPartnerLinks">
+ <xsd:complexContent>
+ <xsd:extension base="tExtensibleElements">
+ <xsd:sequence>
+ <xsd:element ref="partnerLink" minOccurs="0" maxOccurs="unbounded"/>
+ </xsd:sequence>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:element name="partnerLink" type="tPartnerLink"/>
+ <xsd:complexType name="tPartnerLink">
+ <xsd:complexContent>
+ <xsd:extension base="tExtensibleElements">
+ <xsd:attribute name="name" type="xsd-derived:NCName" use="optional"/>
+ <xsd:attribute name="partnerLinkType" type="xsd-derived:QName" use="optional"/>
+ <xsd:attribute name="myRole" type="xsd-derived:NCName"/>
+ <xsd:attribute name="partnerRole" type="xsd-derived:NCName"/>
+ <xsd:attribute name="initializePartnerRole" type="tBoolean"/>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:element name="messageExchanges" type="tMessageExchanges"/>
+ <xsd:complexType name="tMessageExchanges">
+ <xsd:complexContent>
+ <xsd:extension base="tExtensibleElements">
+ <xsd:sequence>
+ <xsd:element ref="messageExchange" minOccurs="0" maxOccurs="unbounded"/>
+ </xsd:sequence>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:element name="messageExchange" type="tMessageExchange"/>
+ <xsd:complexType name="tMessageExchange">
+ <xsd:complexContent>
+ <xsd:extension base="tExtensibleElements">
+ <xsd:attribute name="name" type="xsd-derived:NCName" use="optional"/>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:element name="variables" type="tVariables"/>
+ <xsd:complexType name="tVariables">
+ <xsd:complexContent>
+ <xsd:extension base="tExtensibleElements">
+ <xsd:sequence>
+ <xsd:element ref="variable" minOccurs="0" maxOccurs="unbounded"/>
+ </xsd:sequence>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:element name="variable" type="tVariable"/>
+ <xsd:complexType name="tVariable">
+ <xsd:complexContent>
+ <xsd:extension base="tExtensibleElements">
+ <xsd:sequence>
+ <xsd:group ref="fromGroup" minOccurs="0"/>
+ </xsd:sequence>
+ <xsd:attribute name="name" type="BPELVariableName" use="optional"/>
+ <xsd:attribute name="messageType" type="xsd-derived:QName" use="optional"/>
+ <xsd:attribute name="type" type="xsd-derived:QName" use="optional"/>
+ <xsd:attribute name="element" type="xsd-derived:QName" use="optional"/>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:simpleType name="BPELVariableName">
+ <xsd:union>
+ <xsd:simpleType>
+ <xsd:restriction base="xsd:NCName">
+ <xsd:pattern value="[^\.]+"/>
+ </xsd:restriction>
+ </xsd:simpleType>
+ <xsd:simpleType>
+ <xsd:restriction base="xsd:string">
+ <xsd:enumeration value="##opaque"/>
+ </xsd:restriction>
+ </xsd:simpleType>
+ </xsd:union>
+ </xsd:simpleType>
+
+ <xsd:element name="correlationSets" type="tCorrelationSets"/>
+ <xsd:complexType name="tCorrelationSets">
+ <xsd:complexContent>
+ <xsd:extension base="tExtensibleElements">
+ <xsd:sequence>
+ <xsd:element ref="correlationSet" minOccurs="0" maxOccurs="unbounded"/>
+ </xsd:sequence>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:element name="correlationSet" type="tCorrelationSet"/>
+ <xsd:complexType name="tCorrelationSet">
+ <xsd:complexContent>
+ <xsd:extension base="tExtensibleElements">
+ <xsd:attribute name="properties" type="QNames" use="optional"/>
+ <xsd:attribute name="name" type="xsd-derived:NCName" use="optional"/>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:simpleType name="QNames">
+ <xsd:restriction>
+ <xsd:simpleType>
+ <xsd:list itemType="xsd-derived:QName"/>
+ </xsd:simpleType>
+ <xsd:minLength value="1"/>
+ </xsd:restriction>
+ </xsd:simpleType>
+
+ <xsd:element name="faultHandlers" type="tFaultHandlers"/>
+ <xsd:complexType name="tFaultHandlers">
+ <xsd:complexContent>
+ <xsd:extension base="tExtensibleElements">
+ <xsd:sequence>
+ <xsd:element ref="catch" minOccurs="0" maxOccurs="unbounded"/>
+ <xsd:element ref="catchAll" minOccurs="0"/>
+ </xsd:sequence>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:element name="catch" type="tCatch">
+ <xsd:annotation>
+ <xsd:documentation>
+ This element can contain all activities including the activities
+ compensate, compensateScope and rethrow.
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:complexType name="tCatch">
+ <xsd:complexContent>
+ <xsd:extension base="tActivityContainer">
+ <xsd:attribute name="faultName" type="xsd-derived:QName"/>
+ <xsd:attribute name="faultVariable" type="BPELVariableName"/>
+ <xsd:attribute name="faultMessageType" type="xsd-derived:QName"/>
+ <xsd:attribute name="faultElement" type="xsd-derived:QName"/>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:element name="catchAll" type="tActivityContainer">
+ <xsd:annotation>
+ <xsd:documentation>
+ This element can contain all activities including the activities
+ compensate, compensateScope and rethrow.
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+
+ <xsd:complexType name="tActivityContainer">
+ <xsd:complexContent>
+ <xsd:extension base="tExtensibleElements">
+ <xsd:sequence>
+ <xsd:group ref="activity" minOccurs="0"/>
+ </xsd:sequence>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:element name="eventHandlers" type="tEventHandlers"/>
+ <xsd:complexType name="tEventHandlers">
+ <xsd:annotation>
+ <xsd:documentation>
+ XSD Authors: The child element onAlarm needs to be a Local Element Declaration,
+ because there is another onAlarm element defined for the pick activity.
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:complexContent>
+ <xsd:extension base="tExtensibleElements">
+ <xsd:sequence>
+ <xsd:element ref="onEvent" minOccurs="0" maxOccurs="unbounded"/>
+ <xsd:element name="onAlarm" type="tOnAlarmEvent" minOccurs="0" maxOccurs="unbounded"/>
+ </xsd:sequence>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:element name="onEvent" type="tOnEvent"/>
+ <xsd:complexType name="tOnEvent">
+ <xsd:complexContent>
+ <xsd:extension base="tOnMsgCommon">
+ <xsd:sequence>
+ <xsd:element ref="scope" minOccurs="0"/>
+ </xsd:sequence>
+ <xsd:attribute name="messageType" type="xsd-derived:QName" use="optional"/>
+ <xsd:attribute name="element" type="xsd-derived:QName" use="optional"/>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:complexType name="tOnMsgCommon">
+ <xsd:annotation>
+ <xsd:documentation>
+ XSD Authors: The child element correlations needs to be a Local Element Declaration,
+ because there is another correlations element defined for the invoke activity.
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:complexContent>
+ <xsd:extension base="tExtensibleElements">
+ <xsd:sequence>
+ <xsd:element name="correlations" type="tCorrelations" minOccurs="0"/>
+ <xsd:element ref="fromParts" minOccurs="0"/>
+ </xsd:sequence>
+ <xsd:attribute name="partnerLink" type="xsd-derived:NCName" use="optional"/>
+ <xsd:attribute name="portType" type="xsd-derived:QName" use="optional"/>
+ <xsd:attribute name="operation" type="xsd-derived:NCName" use="optional"/>
+ <xsd:attribute name="messageExchange" type="xsd-derived:NCName" use="optional"/>
+ <xsd:attribute name="variable" type="BPELVariableName" use="optional"/>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:complexType name="tCorrelations">
+ <xsd:annotation>
+ <xsd:documentation>
+ XSD Authors: The child element correlation needs to be a Local Element Declaration,
+ because there is another correlation element defined for the invoke activity.
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:complexContent>
+ <xsd:extension base="tExtensibleElements">
+ <xsd:sequence>
+ <xsd:element name="correlation" type="tCorrelation" minOccurs="0" maxOccurs="unbounded"/>
+ </xsd:sequence>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:complexType name="tCorrelation">
+ <xsd:complexContent>
+ <xsd:extension base="tExtensibleElements">
+ <xsd:attribute name="set" type="xsd-derived:NCName" use="optional"/>
+ <xsd:attribute name="initiate" type="tInitiate" default="no"/>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:simpleType name="tInitiate">
+ <xsd:restriction base="xsd:string">
+ <xsd:enumeration value="yes"/>
+ <xsd:enumeration value="join"/>
+ <xsd:enumeration value="no"/>
+ <xsd:enumeration value="##opaque"/>
+ </xsd:restriction>
+ </xsd:simpleType>
+
+ <xsd:complexType name="tOnAlarmEvent">
+ <xsd:complexContent>
+ <xsd:extension base="tExtensibleElements">
+ <xsd:sequence>
+ <xsd:group ref="forOrUntilGroup" minOccurs="0"/>
+ <xsd:element ref="repeatEvery" minOccurs="0"/>
+ <xsd:element ref="scope" minOccurs="0"/>
+ </xsd:sequence>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:group name="forOrUntilGroup">
+ <xsd:choice>
+ <xsd:element ref="for" minOccurs="0"/>
+ <xsd:element ref="until" minOccurs="0"/>
+ </xsd:choice>
+ </xsd:group>
+
+ <xsd:element name="for" type="tDuration-expr"/>
+
+ <xsd:element name="until" type="tDeadline-expr"/>
+
+ <xsd:element name="repeatEvery" type="tDuration-expr"/>
+
+ <xsd:complexType name="tActivity">
+ <xsd:complexContent>
+ <xsd:extension base="tExtensibleElements">
+ <xsd:sequence>
+ <xsd:element ref="targets" minOccurs="0"/>
+ <xsd:element ref="sources" minOccurs="0"/>
+ </xsd:sequence>
+ <xsd:attribute name="name" type="xsd-derived:NCName"/>
+ <xsd:attribute name="suppressJoinFailure" type="tBoolean" use="optional"/>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:element name="targets" type="tTargets"/>
+ <xsd:complexType name="tTargets">
+ <xsd:complexContent>
+ <xsd:extension base="tExtensibleElements">
+ <xsd:sequence>
+ <xsd:element ref="joinCondition" minOccurs="0"/>
+ <xsd:element ref="target" minOccurs="0" maxOccurs="unbounded"/>
+ </xsd:sequence>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:element name="joinCondition" type="tCondition"/>
+
+ <xsd:element name="target" type="tTarget"/>
+ <xsd:complexType name="tTarget">
+ <xsd:complexContent>
+ <xsd:extension base="tExtensibleElements">
+ <xsd:attribute name="linkName" type="xsd-derived:NCName" use="optional"/>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:element name="sources" type="tSources"/>
+ <xsd:complexType name="tSources">
+ <xsd:complexContent>
+ <xsd:extension base="tExtensibleElements">
+ <xsd:sequence>
+ <xsd:element ref="source" minOccurs="0" maxOccurs="unbounded"/>
+ </xsd:sequence>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:element name="source" type="tSource"/>
+ <xsd:complexType name="tSource">
+ <xsd:complexContent>
+ <xsd:extension base="tExtensibleElements">
+ <xsd:sequence>
+ <xsd:element ref="transitionCondition" minOccurs="0"/>
+ </xsd:sequence>
+ <xsd:attribute name="linkName" type="xsd-derived:NCName" use="optional"/>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:element name="transitionCondition" type="tCondition"/>
+
+ <xsd:element name="assign" type="tAssign"/>
+ <xsd:complexType name="tAssign">
+ <xsd:complexContent>
+ <xsd:extension base="tActivity">
+ <xsd:sequence>
+ <xsd:choice maxOccurs="unbounded">
+ <xsd:element ref="copy" minOccurs="0"/>
+ <xsd:element ref="extensionAssignOperation" minOccurs="0"/>
+ </xsd:choice>
+ </xsd:sequence>
+ <xsd:attribute name="validate" type="tBoolean" use="optional" default="no"/>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:element name="copy" type="tCopy"/>
+ <xsd:complexType name="tCopy">
+ <xsd:complexContent>
+ <xsd:extension base="tExtensibleElements">
+ <xsd:sequence>
+ <xsd:group ref="fromGroup" minOccurs="0"/>
+ <xsd:element ref="to" minOccurs="0"/>
+ </xsd:sequence>
+ <xsd:attribute name="keepSrcElementName" type="tBoolean" use="optional" default="no"/>
+ <xsd:attribute name="ignoreMissingFromData" type="tBoolean" use="optional" default="no"/>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:group name="fromGroup">
+ <xsd:choice>
+ <xsd:element ref="opaqueFrom"/>
+ <xsd:element ref="from"/>
+ </xsd:choice>
+ </xsd:group>
+
+ <xsd:element name="opaqueFrom" type="tExtensibleElements"/>
+
+ <xsd:element name="from" type="tFrom"/>
+ <xsd:complexType name="tFrom" mixed="true">
+ <xsd:sequence>
+ <xsd:element ref="documentation" minOccurs="0" maxOccurs="unbounded"/>
+ <xsd:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
+ <xsd:choice minOccurs="0">
+ <xsd:element ref="literal" minOccurs="0"/>
+ <xsd:element ref="query" minOccurs="0"/>
+ </xsd:choice>
+ </xsd:sequence>
+ <xsd:attribute name="expressionLanguage" type="xsd-derived:anyURI"/>
+ <xsd:attribute name="variable" type="BPELVariableName"/>
+ <xsd:attribute name="part" type="xsd-derived:NCName"/>
+ <xsd:attribute name="property" type="xsd-derived:QName"/>
+ <xsd:attribute name="partnerLink" type="xsd-derived:NCName"/>
+ <xsd:attribute name="endpointReference" type="tRoles"/>
+ <xsd:attribute name="opaque" type="xsd-derived:tOpaqueBoolean"/>
+ <xsd:anyAttribute namespace="##other" processContents="lax"/>
+ </xsd:complexType>
+
+ <xsd:element name="literal" type="tLiteral"/>
+ <xsd:complexType name="tLiteral" mixed="true">
+ <xsd:sequence>
+ <xsd:any namespace="##any" processContents="lax" minOccurs="0" maxOccurs="1"/>
+ </xsd:sequence>
+ </xsd:complexType>
+
+ <xsd:element name="query" type="tQuery"/>
+ <xsd:complexType name="tQuery" mixed="true">
+ <xsd:sequence>
+ <xsd:any processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
+ </xsd:sequence>
+ <xsd:attribute name="queryLanguage" type="xsd-derived:anyURI"/>
+ <xsd:attribute name="opaque" type="xsd-derived:tOpaqueBoolean"/>
+ <xsd:anyAttribute namespace="##other" processContents="lax"/>
+ </xsd:complexType>
+
+ <xsd:simpleType name="tRoles">
+ <xsd:restriction base="xsd:string">
+ <xsd:enumeration value="myRole"/>
+ <xsd:enumeration value="partnerRole"/>
+ <xsd:enumeration value="##opaque"/>
+ </xsd:restriction>
+ </xsd:simpleType>
+
+ <xsd:element name="to" type="tTo"/>
+ <xsd:complexType name="tTo" mixed="true">
+ <xsd:sequence>
+ <xsd:element ref="documentation" minOccurs="0" maxOccurs="unbounded"/>
+ <xsd:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
+ <xsd:element ref="query" minOccurs="0"/>
+ </xsd:sequence>
+ <xsd:attribute name="opaque" type="xsd-derived:tOpaqueBoolean"/>
+ <xsd:attribute name="expressionLanguage" type="xsd-derived:anyURI"/>
+ <xsd:attribute name="variable" type="BPELVariableName"/>
+ <xsd:attribute name="part" type="xsd-derived:NCName"/>
+ <xsd:attribute name="property" type="xsd-derived:QName"/>
+ <xsd:attribute name="partnerLink" type="xsd-derived:NCName"/>
+ <xsd:anyAttribute namespace="##other" processContents="lax"/>
+ </xsd:complexType>
+
+ <xsd:element name="extensionAssignOperation" type="tExtensionAssignOperation"/>
+ <xsd:complexType name="tExtensionAssignOperation">
+ <xsd:complexContent>
+ <xsd:extension base="tExtensibleElements"/>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:element name="compensate" type="tCompensate"/>
+ <xsd:complexType name="tCompensate">
+ <xsd:complexContent>
+ <xsd:extension base="tActivity"/>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:element name="compensateScope" type="tCompensateScope"/>
+ <xsd:complexType name="tCompensateScope">
+ <xsd:complexContent>
+ <xsd:extension base="tActivity">
+ <xsd:attribute name="target" type="xsd-derived:NCName" use="optional"/>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:element name="empty" type="tEmpty"/>
+ <xsd:complexType name="tEmpty">
+ <xsd:complexContent>
+ <xsd:extension base="tActivity"/>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:element name="exit" type="tExit"/>
+ <xsd:complexType name="tExit">
+ <xsd:complexContent>
+ <xsd:extension base="tActivity"/>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:element name="extensionActivity" type="tExtensionActivity"/>
+ <xsd:complexType name="tExtensionActivity">
+ <xsd:sequence>
+ <xsd:any namespace="##other" processContents="lax"/>
+ </xsd:sequence>
+ </xsd:complexType>
+
+ <xsd:element name="flow" type="tFlow"/>
+ <xsd:complexType name="tFlow">
+ <xsd:complexContent>
+ <xsd:extension base="tActivity">
+ <xsd:sequence>
+ <xsd:element ref="links" minOccurs="0"/>
+ <xsd:group ref="activity" minOccurs="0" maxOccurs="unbounded"/>
+ </xsd:sequence>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:element name="links" type="tLinks"/>
+ <xsd:complexType name="tLinks">
+ <xsd:complexContent>
+ <xsd:extension base="tExtensibleElements">
+ <xsd:sequence>
+ <xsd:element ref="link" minOccurs="0" maxOccurs="unbounded"/>
+ </xsd:sequence>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:element name="link" type="tLink"/>
+ <xsd:complexType name="tLink">
+ <xsd:complexContent>
+ <xsd:extension base="tExtensibleElements">
+ <xsd:attribute name="name" type="xsd-derived:NCName" use="optional"/>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:element name="forEach" type="tForEach"/>
+ <xsd:complexType name="tForEach">
+ <xsd:complexContent>
+ <xsd:extension base="tActivity">
+ <xsd:sequence>
+ <xsd:element ref="startCounterValue" minOccurs="0"/>
+ <xsd:element ref="finalCounterValue" minOccurs="0"/>
+ <xsd:element ref="completionCondition" minOccurs="0"/>
+ <xsd:element ref="scope" minOccurs="0"/>
+ </xsd:sequence>
+ <xsd:attribute name="counterName" type="BPELVariableName" use="optional"/>
+ <xsd:attribute name="parallel" type="tBoolean" use="optional"/>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:element name="startCounterValue" type="tExpression"/>
+
+ <xsd:element name="finalCounterValue" type="tExpression"/>
+
+ <xsd:element name="completionCondition" type="tCompletionCondition"/>
+ <xsd:complexType name="tCompletionCondition">
+ <xsd:complexContent>
+ <xsd:extension base="tExtensibleElements">
+ <xsd:sequence>
+ <xsd:element ref="branches" minOccurs="0"/>
+ </xsd:sequence>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:element name="branches" type="tBranches"/>
+ <xsd:complexType name="tBranches">
+ <xsd:complexContent>
+ <xsd:extension base="tExpression">
+ <xsd:attribute name="successfulBranchesOnly" type="tBoolean" default="no"/>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:element name="if" type="tIf"/>
+ <xsd:complexType name="tIf">
+ <xsd:complexContent>
+ <xsd:extension base="tActivity">
+ <xsd:sequence>
+ <xsd:element ref="condition" minOccurs="0"/>
+ <xsd:group ref="activity" minOccurs="0"/>
+ <xsd:element ref="elseif" minOccurs="0" maxOccurs="unbounded"/>
+ <xsd:element ref="else" minOccurs="0"/>
+ </xsd:sequence>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:element name="elseif" type="tElseif"/>
+ <xsd:complexType name="tElseif">
+ <xsd:complexContent>
+ <xsd:extension base="tExtensibleElements">
+ <xsd:sequence>
+ <xsd:element ref="condition" minOccurs="0"/>
+ <xsd:group ref="activity" minOccurs="0"/>
+ </xsd:sequence>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:element name="else" type="tActivityContainer"/>
+
+ <xsd:element name="invoke" type="tInvoke"/>
+ <xsd:complexType name="tInvoke">
+ <xsd:annotation>
+ <xsd:documentation>
+ XSD Authors: The child element correlations needs to be a Local Element Declaration,
+ because there is another correlations element defined for the non-invoke activities.
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:complexContent>
+ <xsd:extension base="tActivity">
+ <xsd:sequence>
+ <xsd:element name="correlations" type="tCorrelationsWithPattern" minOccurs="0"/>
+ <xsd:element ref="catch" minOccurs="0" maxOccurs="unbounded"/>
+ <xsd:element ref="catchAll" minOccurs="0"/>
+ <xsd:element ref="compensationHandler" minOccurs="0"/>
+ <xsd:element ref="toParts" minOccurs="0"/>
+ <xsd:element ref="fromParts" minOccurs="0"/>
+ </xsd:sequence>
+ <xsd:attribute name="partnerLink" type="xsd-derived:NCName" use="optional"/>
+ <xsd:attribute name="portType" type="xsd-derived:QName" use="optional"/>
+ <xsd:attribute name="operation" type="xsd-derived:NCName" use="optional"/>
+ <xsd:attribute name="inputVariable" type="BPELVariableName" use="optional"/>
+ <xsd:attribute name="outputVariable" type="BPELVariableName" use="optional"/>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:complexType name="tCorrelationsWithPattern">
+ <xsd:annotation>
+ <xsd:documentation>
+ XSD Authors: The child element correlation needs to be a Local Element Declaration,
+ because there is another correlation element defined for the non-invoke activities.
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:complexContent>
+ <xsd:extension base="tExtensibleElements">
+ <xsd:sequence>
+ <xsd:element name="correlation" type="tCorrelationWithPattern" minOccurs="0" maxOccurs="unbounded"/>
+ </xsd:sequence>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:complexType name="tCorrelationWithPattern">
+ <xsd:complexContent>
+ <xsd:extension base="tCorrelation">
+ <xsd:attribute name="pattern" type="tPattern"/>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:simpleType name="tPattern">
+ <xsd:restriction base="xsd:string">
+ <xsd:enumeration value="request"/>
+ <xsd:enumeration value="response"/>
+ <xsd:enumeration value="request-response"/>
+ <xsd:enumeration value="##opaque"/>
+ </xsd:restriction>
+ </xsd:simpleType>
+
+ <xsd:element name="fromParts" type="tFromParts"/>
+ <xsd:complexType name="tFromParts">
+ <xsd:complexContent>
+ <xsd:extension base="tExtensibleElements">
+ <xsd:sequence>
+ <xsd:element ref="fromPart" minOccurs="0" maxOccurs="unbounded"/>
+ </xsd:sequence>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:element name="fromPart" type="tFromPart"/>
+ <xsd:complexType name="tFromPart">
+ <xsd:complexContent>
+ <xsd:extension base="tExtensibleElements">
+ <xsd:attribute name="part" type="xsd-derived:NCName" use="optional"/>
+ <xsd:attribute name="toVariable" type="BPELVariableName" use="optional"/>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:element name="toParts" type="tToParts"/>
+ <xsd:complexType name="tToParts">
+ <xsd:complexContent>
+ <xsd:extension base="tExtensibleElements">
+ <xsd:sequence>
+ <xsd:element ref="toPart" minOccurs="0" maxOccurs="unbounded"/>
+ </xsd:sequence>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:element name="toPart" type="tToPart"/>
+ <xsd:complexType name="tToPart">
+ <xsd:complexContent>
+ <xsd:extension base="tExtensibleElements">
+ <xsd:attribute name="part" type="xsd-derived:NCName" use="optional"/>
+ <xsd:attribute name="fromVariable" type="BPELVariableName" use="optional"/>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:element name="pick" type="tPick"/>
+ <xsd:complexType name="tPick">
+ <xsd:annotation>
+ <xsd:documentation>
+ XSD Authors: The child element onAlarm needs to be a Local Element Declaration,
+ because there is another onAlarm element defined for event handlers.
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:complexContent>
+ <xsd:extension base="tActivity">
+ <xsd:sequence>
+ <xsd:element ref="onMessage" minOccurs="0" maxOccurs="unbounded"/>
+ <xsd:element name="onAlarm" type="tOnAlarmPick" minOccurs="0" maxOccurs="unbounded"/>
+ </xsd:sequence>
+ <xsd:attribute name="createInstance" type="tBoolean" default="no"/>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:element name="onMessage" type="tOnMessage"/>
+ <xsd:complexType name="tOnMessage">
+ <xsd:complexContent>
+ <xsd:extension base="tOnMsgCommon">
+ <xsd:sequence>
+ <xsd:group ref="activity" minOccurs="0"/>
+ </xsd:sequence>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:complexType name="tOnAlarmPick">
+ <xsd:complexContent>
+ <xsd:extension base="tExtensibleElements">
+ <xsd:sequence>
+ <xsd:group ref="forOrUntilGroup" minOccurs="0"/>
+ <xsd:group ref="activity" minOccurs="0"/>
+ </xsd:sequence>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:element name="receive" type="tReceive"/>
+ <xsd:complexType name="tReceive">
+ <xsd:annotation>
+ <xsd:documentation>
+ XSD Authors: The child element correlations needs to be a Local Element Declaration,
+ because there is another correlations element defined for the invoke activity.
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:complexContent>
+ <xsd:extension base="tActivity">
+ <xsd:sequence>
+ <xsd:element name="correlations" type="tCorrelations" minOccurs="0"/>
+ <xsd:element ref="fromParts" minOccurs="0"/>
+ </xsd:sequence>
+ <xsd:attribute name="partnerLink" type="xsd-derived:NCName" use="optional"/>
+ <xsd:attribute name="portType" type="xsd-derived:QName" use="optional"/>
+ <xsd:attribute name="operation" type="xsd-derived:NCName" use="optional"/>
+ <xsd:attribute name="variable" type="BPELVariableName" use="optional"/>
+ <xsd:attribute name="createInstance" type="tBoolean" default="no"/>
+ <xsd:attribute name="messageExchange" type="xsd-derived:NCName" use="optional"/>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:element name="repeatUntil" type="tRepeatUntil"/>
+ <xsd:complexType name="tRepeatUntil">
+ <xsd:complexContent>
+ <xsd:extension base="tActivity">
+ <xsd:sequence>
+ <xsd:group ref="activity" minOccurs="0"/>
+ <xsd:element ref="condition" minOccurs="0"/>
+ </xsd:sequence>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:element name="reply" type="tReply"/>
+ <xsd:complexType name="tReply">
+ <xsd:annotation>
+ <xsd:documentation>
+ XSD Authors: The child element correlations needs to be a Local Element Declaration,
+ because there is another correlations element defined for the invoke activity.
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:complexContent>
+ <xsd:extension base="tActivity">
+ <xsd:sequence>
+ <xsd:element name="correlations" type="tCorrelations" minOccurs="0"/>
+ <xsd:element ref="toParts" minOccurs="0"/>
+ </xsd:sequence>
+ <xsd:attribute name="partnerLink" type="xsd-derived:NCName" use="optional"/>
+ <xsd:attribute name="portType" type="xsd-derived:QName" use="optional"/>
+ <xsd:attribute name="operation" type="xsd-derived:NCName" use="optional"/>
+ <xsd:attribute name="variable" type="BPELVariableName" use="optional"/>
+ <xsd:attribute name="faultName" type="xsd-derived:QName"/>
+ <xsd:attribute name="messageExchange" type="xsd-derived:NCName" use="optional"/>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:element name="rethrow" type="tRethrow"/>
+ <xsd:complexType name="tRethrow">
+ <xsd:complexContent>
+ <xsd:extension base="tActivity"/>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:element name="scope" type="tScope"/>
+ <xsd:complexType name="tScope">
+ <xsd:annotation>
+ <xsd:documentation>
+ There is no schema-level default for "exitOnStandardFault"
+ at "scope". Because, it will inherit default from enclosing scope
+ or process.
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:complexContent>
+ <xsd:extension base="tActivity">
+ <xsd:sequence>
+ <xsd:element ref="partnerLinks" minOccurs="0"/>
+ <xsd:element ref="messageExchanges" minOccurs="0"/>
+ <xsd:element ref="variables" minOccurs="0"/>
+ <xsd:element ref="correlationSets" minOccurs="0"/>
+ <xsd:element ref="faultHandlers" minOccurs="0"/>
+ <xsd:element ref="compensationHandler" minOccurs="0"/>
+ <xsd:element ref="terminationHandler" minOccurs="0"/>
+ <xsd:element ref="eventHandlers" minOccurs="0"/>
+ <xsd:group ref="activity" minOccurs="0"/>
+ </xsd:sequence>
+ <xsd:attribute name="isolated" type="tBoolean" default="no"/>
+ <xsd:attribute name="exitOnStandardFault" type="tBoolean"/>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:element name="compensationHandler" type="tActivityContainer">
+ <xsd:annotation>
+ <xsd:documentation>
+ This element can contain all activities including the activities
+ compensate and compensateScope.
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+
+ <xsd:element name="terminationHandler" type="tActivityContainer">
+ <xsd:annotation>
+ <xsd:documentation>
+ This element can contain all activities including the activities
+ compensate and compensateScope.
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+
+ <xsd:element name="sequence" type="tSequence"/>
+ <xsd:complexType name="tSequence">
+ <xsd:complexContent>
+ <xsd:extension base="tActivity">
+ <xsd:sequence>
+ <xsd:group ref="activity" minOccurs="0" maxOccurs="unbounded"/>
+ </xsd:sequence>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:element name="throw" type="tThrow"/>
+ <xsd:complexType name="tThrow">
+ <xsd:complexContent>
+ <xsd:extension base="tActivity">
+ <xsd:attribute name="faultName" type="xsd-derived:QName" use="optional"/>
+ <xsd:attribute name="faultVariable" type="BPELVariableName"/>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:element name="validate" type="tValidate"/>
+ <xsd:complexType name="tValidate">
+ <xsd:complexContent>
+ <xsd:extension base="tActivity">
+ <xsd:attribute name="variables" use="optional" type="BPELVariableNames"/>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:simpleType name="BPELVariableNames">
+ <xsd:restriction>
+ <xsd:simpleType>
+ <xsd:list itemType="BPELVariableName"/>
+ </xsd:simpleType>
+ <xsd:minLength value="1"/>
+ </xsd:restriction>
+ </xsd:simpleType>
+
+ <xsd:element name="wait" type="tWait"/>
+ <xsd:complexType name="tWait">
+ <xsd:complexContent>
+ <xsd:extension base="tActivity">
+ <xsd:choice>
+ <xsd:element ref="for" minOccurs="0"/>
+ <xsd:element ref="until" minOccurs="0"/>
+ </xsd:choice>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:element name="while" type="tWhile"/>
+ <xsd:complexType name="tWhile">
+ <xsd:complexContent>
+ <xsd:extension base="tActivity">
+ <xsd:sequence>
+ <xsd:element ref="condition" minOccurs="0"/>
+ <xsd:group ref="activity" minOccurs="0"/>
+ </xsd:sequence>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:complexType name="tExpression" mixed="true">
+ <xsd:sequence>
+ <xsd:any minOccurs="0" maxOccurs="unbounded" processContents="lax"/>
+ </xsd:sequence>
+ <xsd:attribute name="expressionLanguage" type="xsd-derived:anyURI"/>
+ <xsd:attribute name="opaque" type="xsd-derived:tOpaqueBoolean"/>
+ <xsd:anyAttribute namespace="##other" processContents="lax"/>
+ </xsd:complexType>
+
+ <xsd:complexType name="tCondition">
+ <xsd:complexContent mixed="true">
+ <xsd:extension base="tExpression"/>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:element name="condition" type="tBoolean-expr"/>
+ <xsd:complexType name="tBoolean-expr">
+ <xsd:complexContent mixed="true">
+ <xsd:extension base="tExpression"/>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:complexType name="tDuration-expr">
+ <xsd:complexContent mixed="true">
+ <xsd:extension base="tExpression"/>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:complexType name="tDeadline-expr">
+ <xsd:complexContent mixed="true">
+ <xsd:extension base="tExpression"/>
+ </xsd:complexContent>
+ </xsd:complexType>
+
+ <xsd:simpleType name="tBoolean">
+ <xsd:restriction base="xsd:string">
+ <xsd:enumeration value="yes"/>
+ <xsd:enumeration value="no"/>
+ <xsd:enumeration value="##opaque"/>
+ </xsd:restriction>
+ </xsd:simpleType>
+
+ <!-- SCHEMA NOTE: new types and element introduced for Abstract WS-BPEL -->
+
+ <xsd:simpleType name="tOpaqueStr">
+ <xsd:restriction base="xsd:string">
+ <xsd:enumeration value="##opaque"/>
+ </xsd:restriction>
+ </xsd:simpleType>
+
+ <xsd:simpleType name="QName">
+ <xsd:union memberTypes="xsd:QName tOpaqueStr"/>
+ </xsd:simpleType>
+
+ <xsd:simpleType name="NCName">
+ <xsd:union memberTypes="xsd:NCName tOpaqueStr"/>
+ </xsd:simpleType>
+
+ <xsd:simpleType name="anyURI">
+ <xsd:union memberTypes="xsd:anyURI tOpaqueStr"/>
+ </xsd:simpleType>
+
+ <xsd:simpleType name="tOpaqueBoolean">
+ <xsd:restriction base="xsd:string">
+ <xsd:enumeration value="yes"/>
+ </xsd:restriction>
+ </xsd:simpleType>
+
+ <xsd:element name="opaqueActivity" type="tOpaqueActivity"/>
+ <xsd:complexType name="tOpaqueActivity">
+ <xsd:complexContent>
+ <xsd:extension base="tActivity"/>
+ </xsd:complexContent>
+ </xsd:complexType>
+
</xsd:schema>
\ No newline at end of file