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: Re: [wsbpel] Issue 82.1 - proposal to vote (directional vote)



Hi Rania,

You asked whether we have compelling reason to have two NS.

Maybe, I could pose some other questions back:
  • Why do we want to have XMLNS in first place?
    I would say: to partition namespace for XML elements and attributes with different structural definition and semantic meaning by sharing the same local-name/ncname.
  • Why do we want to use XML as the source code format for BPEL?
    I would say: we can leverage XML grammar facilities (e.g. xml schema or relax ng or schematron) to perform big chunks of syntax validation.

  • Why do we want to have a different NS for BPEL 2.0?
    Why don't we reusing the same NS for both BPEL 1.1 and 2.0 by adding a process-level "version" attribute? 
    (i.e. version="1.1" vs version="2.0") 

    • The version attribute approach is actually sometimes practiced in an ancient part of XML world which pre-dates XMLNS and does not leverage any grammar structure (e.g. schema and DTD)
    • Obliviously, BPEL XML source code lives in the XML world where XMLNS and XML Grammar matter.
    • I also would add the difference between Abstract BPEL (with opacity omission) and Exec BPEL is MUCH larger than the difference between BPEL 1.1 and BPEL 2.0.
    • Merging Abs and Exec into one NS is a big violation of design and usage principle of XMLNS and xml grammar. The violation is bigger than merging BPEL 1.1 and BPEL 2.0 into one XMLNS (at least in my own book).
    • I would suggest people to consult their in house xml experts to see whether mix-and-merge two different XML animals into one NS is a bad idea. And, it would surprise me that if one XML expert wants to enforce XMLNS usage principle more strictly, they would even further partition into 3 NSes.

Whether to use <xsd:redefine> or not to describe two NS is that is the MEANS issue. We cannot put the MEANS before the ENDS. Otherwise, it would be similar to putting the cart in front of the horse.  At the same time, we are still open to other ideas alternative to <xsd:redefine>. During my XSD editing for BPEL TC, I have been using 3 kinds of tools to verify that our XSD can be understood and well-supported by a varieties of env. (a) Xerces (b) W3C's XSV (c) Oracle XDK.

For the cut-and-paste case, it depends on whether you are using VI or some XML-aware editor. If one use an XML-aware editor, the copy-and-paste would copy the NS Declaration also. (Similar to those Java-aware IDE tool, the copy and paste Java fragment will copy its related Java's import as well).


Regards,
Alex Yiu


Rania Khalaf wrote:
Hi Alex,

I think going with the second point, that it doesn't make much sense to split the namespaces. Especially, as Yuzo had mentioned, that most tools don't support advanced XSD features and as Danny also said if there's no really compelling reason to manage several XSDs and changes we should try to keep it simple.

As for cut and paste, the ns decl is up top anyway, so in many cases a cut and paste is just that and people will be able to copy bits with opaque in them.

my .02.
rania

Alex Yiu wrote:

Hi all,

I think we should still have distinct namespaces between Abstract and Executable BPEL, after most of 82.* got resolved. Major reasons are:

    *  There are _significant amount of syntax differences_ between an
      Abstract Process with _opacityOmissionUsed="yes"_ and Exec
      Process. (I am talking about the Abstract base, not AP11 profile;
      essentially all compulsory element and attributes becomes optional.).
    * On the other hand, there are _moderate amount of syntax
      differences_ between an between an Abstract Process with
      _opacityOmissionUsed="no"_ and Exec Process. (I already capture
      those differences in my previous email).
    * I am worrying people uses _copy-and-paste and mix-and-match
      between Abstract and Executable BPEL_. (e.g. copying a fragment of
      empty <scope> from an Abstract BPEL into Exec BPEL). If we use the
      same namespace for both kinds of BPEL, it would be difficult for
      us to tell that users are doing this kind of mistakes. If we use
      different namespace, if people use an XML-aware tool to do such a
      copy-and-paste, we can detect that kind of mistakes more easily.
    * With both AP11 and Template profiles, I tend to forseee people
      would create the Executable Process based on Abstract Process with
      sometool help, given with constraints specified in the profile.
      Even when people want to create an Executable BPEL based on
      Abstract BPEL with just emacs/notepad. People just need to following:
         1. copy the BPEL file
         2. _make one-line of change_: changing XMLNS declaration from
            Abstract to Exec BPEL.
         3. add extra BPEL constructs for Execution Completion.

            Having two distinct namespace will allow us to _validate the
            Exec BPEL code during step (3) by using XSD_. Hence, having
            multiple NS gives us more tool to do BPEL validation, while
            collapsing Abstract and Executable do not yield any user
            benefits.


Thanks!


Regards,
Alex Yiu



Peter Furniss wrote:

I thought we said (or maybe it was just me) that we should revisit 24
once we had sorted out (in 82.*) just how much difference there was
between syntax e and syntax a. When issue 24 was resolved we were
anticipating a quite different scale of differences.  I had to drop out
of active involvement in 82 soon after that, I do think we should
consider rescinding 24 (sorry Diane)

Peter

 

-----Original Message-----
From: Rania Khalaf [mailto:rkhalaf@watson.ibm.com] Sent: 22 November 2005 16:28
To: Alex Yiu
Cc: wsbpeltc; Rania Khalaf; Danny van der Rijn; Ron Ten-Hove; 'Monica J. Martin'
Subject: Re: [wsbpel] Issue 82.1 - proposal to vote (directional vote)


Hi guys,

If we agree about the schema of abstract will only add the opaque tokens then I don't see any motivation any more for 24's resolution .

Is it really worth all the pain of xsd:redefine and managing three schemas instead of just saying in the text that you can only use abstract tokens in AP ?

regards,
Rania

  






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