← Prev in month ← Prev in thread

Issue 192 - Proposal for vote

From
Alex Yiu <>
Date
2005-03-25T04:58:38+00:00
ID
Thread
Issue 192 - Proposal for vote
Issue 192: Applying extensibility uniformly to
<partnerLinkType>, <role>, <property> and
<propertyAlias> 

Proposal for vote

Change the XSD definition for <partnerLinkType>, <role>,
<property> and <propertyAlias> by make their type extending
from "tExtensibleElements". 

In "6.3. Language Extensibility", add the following:

Apart from core WS-BPEL process constructs, extensions are
also allowed in WSDL-based WS-BPEL constructs, such as,
<partnerLinkType>, <role>, <property> and
<propertyAlias>. The same syntax pattern and semantic rules for
extensions of core BPEL constructs are applied to these extensions as
well. Particularly, <extension> directives of a WS-BPEL process
are applied to all extensions used in WSDL-based WS-BPEL constructs, of
which the WSDL definitions are transitively referenced by the process. 

  

[Editor's Note: The above wordings on <extension> directives may
need to be refined a bit upon the passing of Issue 92 and/or 92.*] 

XSD Editorial Details:

  
Factor out "tExtensibleElements" from "wsbpel_main.xsd" into a
schema of no targetNamespace called "wsbpel_extensible.xsd"

  

  
Add the following xsd:include to all existing 3 XSD: 

   <include schemaLocation="wsbpel_extensible.xsd" /> 

  

  
Make the following type definition extended from
"tExtensibleElements":

    

        <element name="property">

        <complexType>

            <complexContent>

                <extension base="tExtensibleElements">

                    <attribute name="name" type="NCName"
use="required"/>

                    <attribute name="type" type="QName"
use="required"/>

                </extension>

            </complexContent> 

        </complexType>

    </element>

    

    <element name="propertyAlias">

        <complexType>

            <complexContent>

                <extension base="bpws:tExtensibleElements">

                    <sequence>

                        <element name="query" minOccurs="0">

                            <complexType mixed="true">

                                <sequence>

                                    <any processContents="lax"
minOccurs="0"/>

                                </sequence>

                                <attribute name="queryLanguage"
type="anyURI"/>

                            </complexType>

                        </element>

                    </sequence>

                    <attribute name="propertyName" type="QName"
use="required"/>

                    <attribute name="messageType" type="QName"
use="required"/>

                    <attribute name="part" type="NCName"/>

                </extension>

            </complexContent>

        </complexType>

    </element>

    

    <complexType name="tPartnerLinkType">

        <complexContent>

            <extension base="bpws:tExtensibleElements">

                <sequence>

                    <element name="role" type="plnk:tRole"
maxOccurs="2"/>

                </sequence>

                <attribute name="name" type="NCName"
use="required"/>

            </extension>

        </complexContent> 

    </complexType>

    

    <complexType name="tRole">

        <complexContent>

            <extension base="bpws:tExtensibleElements">

                <attribute name="name" type="NCName"
use="required"/>

                <attribute name="portType" type="QName"
use="required"/>

            </extension>

        </complexContent> 

    </complexType>

  

---------------------------------------------

Thanks!

Regards,

Alex Yiu
← Prev in month ← Prev in thread