OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.

 


Help: OASIS Mailing Lists Help | MarkMail Help

wsbpel message

[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]


Subject: Fw: [wsbpel] WS-BPEL XML Schema - Global Element Declaration or LocalElement Declaration


Resending - used <dk> ... </dk> instead of color coding in my comments to
Alex' note.

Kind Regards
DK
                                                                       
 Dieter König                                Mail: dieterkoenig@de.ibm.com         IBM Deutschland Entwicklung GmbH
                                                                       
 Senior Technical Staff Member               Tel (office): (+49) 7031-16-3426      Schönaicher Strasse 220
                                                                       
 Architect, Business Process Choreographer   Fax (office): (+49) 7031-16-4890      71032 Böblingen
                                                                       
 Member, Technical Expert Council            Tel (home office): (+49) 7032-201464  Germany
                                                                       



----- Forwarded by Dieter Koenig1/Germany/IBM on 10.05.2006 18:38 -----
                                                                       
             Dieter                                                    
             Koenig1/Germany/I                                         
             BM                                                         To
                                       Alex Yiu <alex.yiu@oracle.com>  
             10.05.2006 14:32                                           cc
                                       wsbpel@lists.oasis-open.org, Thomas
                                       Schulze/Germany/IBM@IBMDE, Simon D
                                       Moser/Germany/IBM, Ron Ten-Hove 
                                       <Ronald.Ten-Hove@Sun.COM>       
                                                                   Subject
                                       Fw: [wsbpel] WS-BPEL XML Schema -
                                       Global Element Declaration or Local
                                       Element Declaration             
                                                                       
                                                                       
                                                                       
                                                                       
                                                                       
                                                                       



Hi Alex, it is not yet clear to me why we need a GED "scope" and an
<element ref="bpel:scope"/> when
  <element name="scope" type="bpel:tScope"/>
can do the job. Same for many other cases.

All WS-BPEL needs to expose is <bpel:process>, <bpel:service-ref>,
<bpel:property> and <bpel:propertyAlias>; section 5.1. makes it pretty
clear that the only root element in a definition artifact is <bpel:process>
.

"Schema for Schemas" is just one example - WSDL is another (exposing
<definitions> as the only GED).

There should be three XML schema artifacts where each one exposes exactly
what is required:
   1. WS-BPEL XML schema for process validation - one GED <bpel:process>
   2. WS-BPEL XML schema for property validation - two GEDs <bpel:property>
and <bpel:propertyAlias> (issue 192 did not imply merging them into the
main XSD)
   3. WS-BPEL XML schema for process modelers - one GED <bpel:service-ref>

More comments <dk> ... </dk>.

Kind Regards
DK
                                                                       
 Dieter König                                Mail: dieterkoenig@de.ibm.com         IBM Deutschland Entwicklung GmbH
                                                                       
 Senior Technical Staff Member               Tel (office): (+49) 7031-16-3426      Schönaicher Strasse 220
                                                                       
 Architect, Business Process Choreographer   Fax (office): (+49) 7031-16-4890      71032 Böblingen
                                                                       
 Member, Technical Expert Council            Tel (home office): (+49) 7032-201464  Germany
                                                                       





                                                                       
             Alex Yiu                                                  
             <alex.yiu@oracle.                                         
             com>                                                       To
                                       Alex Yiu <alex.yiu@oracle.com>  
             08.05.2006 23:12                                           cc
                                       Dieter Koenig1/Germany/IBM@IBMDE,
                                       wsbpel@lists.oasis-open.org, Thomas
                                       Schulze/Germany/IBM@IBMDE, Alex Yiu
                                       <alex.yiu@oracle.com>, Ron Ten-Hove
                                       <Ronald.Ten-Hove@Sun.COM>       
                                                                   Subject
                                       Re: [wsbpel] WS-BPEL XML Schema -
                                       Global Element Declaration or Local
                                       Element Declaration             
                                                                       
                                                                       
                                                                       
                                                                       
                                                                       
                                                                       





Hi Dieter and Thomas,
(cc'ing Ron as well; I tend to think he would give some good input here as
well)

The email from you guys poses a very interesting question. That is when
Global Element Declaration (GED) and Local Element Declaration (LED) should
be used in a schema design.
Besides <process>, our BPEL 2.0 schema currently declares <documentation>,
<copy>
<dk> , <from>, <to>  </dk>
and all activities as global elements, while BPEL 1.1 has only declared
<process>
<dk>, <from> and <to> </dk>
as global.

One interesting thing worths pointing out is: the way that we declare (GED)
and define <documentation> is virtually a carbon copy of
<xsd:documentation>, which leads me to dive into Appendix A "Schema for
Schema (Normative)".

http://www.w3.org/TR/xmlschema-1/#normative-schemaSchema

After more thinking and reading, I would actually suggest to adopt GED in
BPEL 2.0 schema more comprehensively (i.e. use GED over LED whenever
possible). No! Reasons are listed below:
      Patterns borrowed from Schema for Schema: In XSD, only <xsd:schema>
      is the top level element. However, if one looks into the "Schema for
      Schema" appendix, they basically use GED whenever they can. Searching
      for <xs:element ref="..." ... /> will yield their usage. E.g.
      <xsd:documentation> is not a top level element. But, they use declare
      it as a global element instead of LED. IMHO, the design is made that
      way because:

            The XSD specification wants to stress the global significance
            of <xsd:documentation>. That is: there is only one definition
            of <xsd:documentation>, which is significant to whole XSD
            namespace.
            <dk>A global complexType is also significant.</dk>
            LED is used in schema for schema, only when the same element
            name has two or more very different definitions (e.g.
            <xsd:simpleType> are "overloaded" with two types
            "xs:localSimpleType" and "xs:topLevelSimpleType".)
      And, in our specification, we usually refer to our element-based
      construct as simply by its QName (e.g. <bpel:scope> or
      <bpel:receive>) without any further qualification. That really means
      we do rely on its global significance. Given the QName of
      "bpel:scope", there is only one syntax definition (unlike
      <xsd:simpleType>). Hence, our XSD should reflect this global
      significance as well.
      <dk>This would lead us on a strange path. We would also want to
      declare several attributes globally if we follow this rationale.</dk>

      Also note that: two local element declarations (e.g.
      <xsd:documentation>) (even based on the same type) are not considered
      100% identical from XSD perspective.
      <dk>Sufficient from a BPEL perspective!</dk>
      (Only their type are considered identical). (Similar consideration
      applies to <scope> within <forEach> and <onEvent> and general
      occurances of <scope>.) If we use GED, those elements are truely 100%
      identical.
      <dk>BPEL doesn't need that as long as the type is 100% identical.
      </dk>
      BPEL fragment support: Having GED enabled in schema will allow us to
      perform syntax validate a BPEL fragment by itself. It is particularly
      useful for abstract process. One can two or more artifacts (files):
      (1) abstract process (2) a fragment of BPEL definition (e.g. an
      activity) to fill in missing parts in abstract process. Syntactic
      analysis can be achieved easier, if we use GED more comprehensively.
      e.g.:. an activity can be validated with XSD by itself.
      <dk>I can see no link at all to abstract processes. There is no
      normative statement in the spec talking about "fragments".</dk>

      The only reason against using more than one GED in a schema design
      is: before / after the schema validation, a WS-BPEL processor needs
      to verify whether the root element is <bpel:process>. That is a super
      easy step to do. Given the schema for schema design as our
      predecessor example, it should not be a problem, i.e., an XSD
      processor would not accept a schema started with <xsd:documentation>
      as their root element.

Let's discuss this topic a bit more and make a conscious decision on this
topic and then apply GED/LED comprehensively to our schema.
Further thoughts?
Thanks!




Regards,
Alex Yiu



Alex Yiu wrote:

      Hi,

      Google translates from:
      "Änderungen an den BPEL TC XSDs"
      to:
      "Changes to the BPEL TC XSDs"

      I guess Dieter's "translation" does not have the "lost in
      translation" situation Instead, we have "addition in translation"
      situation. ... ;-)

      [ That is the informal reply to this thread ... :-) ... I will send
      out a formal reply later ]



      Regards,
      Alex Yiu


      Dieter Koenig1 wrote:
            Resending with a more "readable" subject line :-)
            ----- Forwarded by Dieter Koenig1/Germany/IBM on 05.05.2006
            07:25 -----

                         Dieter

                         Koenig1/Germany/I

                         BM@IBMDE
            To
                                                   alex.yiu@oracle.com

                         05.05.2006 07:21
            cc

            wsbpel@lists.oasis-open.org, Thomas

            Schulze/Germany/IBM@IBMDE
            Subject
                                                   [wsbpel] Fw:  Änderungen
            an den
                                                   BPEL TC XSDs












            Hi Alex, as discussed in the TC, the current WS-BPEL XML Schema
            allows
            creating valid XML documents that contain root elements other
            than
            <process>.

            For example (I dropped the namespace declarations for
            readability):
               <copy ...>
                 <from/>
                 <to/>
               </copy>
            is a valid WS-BPEL document !!!

            It is only necessary to allow <bpel:process> or
            <bpel:service-ref> as
            WS-BPEL root documents, and <bpel:property> and
            <bpel:propertyAlias> as
            WSDL extension elements.

            Thomas created a WS-BPEL XML Schema (with about 15 minor
            modifications
            marked THS) that would avoid valid root documents like the one
            shown above.
               (See attached file: wsbpel_main.xsd)
            Please have a look at it. Thanks in advance!!

            Kind Regards
            DK

             Dieter König                                Mail:
            dieterkoenig@de.ibm.com
            IBM Deutschland Entwicklung GmbH

             Senior Technical Staff Member               Tel (office):
            (+49)
            7031-16-3426      Schönaicher Strasse 220

             Architect, Business Process Choreographer   Fax (office):
            (+49)
            7031-16-4890      71032 Böblingen

             Member, Technical Expert Council            Tel (home office):
            (+49)
            7032-201464  Germany


            (See attached file: wsbpel_main.xsd)
            ---------------------------------------------------------------------

            To unsubscribe from this mail list, you must leave the OASIS TC
            that
            generates this mail.  You may a link to this group and all your
            TCs in
            OASIS
            at:
            https://www.oasis-open.org/apps/org/workgroup/portal/my_workgroups.php

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

            To unsubscribe from this mail list, you must leave the OASIS TC
            that
            generates this mail.  You may a link to this group and all your
            TCs in OASIS
            at:
            https://www.oasis-open.org/apps/org/workgroup/portal/my_workgroups.php








[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]