Danny,
Thanks for your investigative work.
I am happy with your proposal to remove
SPBEL3004 as a normative statement - but I would instead recommend replacing
it with a non-normative
explanatory sentence:
"In order to have an SCA multi-valued
reference in a WS-BPEL process, a variable is declared in the process which
uses the sca-bpel:multireference extension element"
To deal with the queries which you raise:
- Since partnerLinkTypes aren't QNames,
do we have to insist that the partnerLinkType attribute of the sca-bpel:multiReference
resolve to a partnerLinkType declared in the same scope?
<mje>partnerLinkTypes are QNames, so
I don't understand this comment. The following is from the WS-BPEL spec:</mje>
<xsd:attribute name="partnerLinkType"
type="xsd:QName" use="required" />
- Since we want the componentType derivation
to be deterministic, how do we determine whether it's 0..n or 1..n?
<mje>Doesn't a calculation similar
to that in section 2.1.1 apply? I agree that we may need to add a
parallel section for the 0..n and 1..n cases..</mje>
- What does . [SBPEL3007] "The
type of the reference MUST be determined by the partner link type and the
partner role attributes of the sca-bpel:multiReference extension element."
mean?
<mje>The type of a BPEL reference is
actually defined by the porttype which applies to the reference, which
is found via the partnerLinkType and partnerRole
- do you think that this needs spelling out
further?</mje>
- Does 3006 as above need to be tightened
up to say that it's actually not "a reference" but "THE
reference pointed to by the partnerLinkType attribute"?
<mje>I think that 3006 is correct -
the partnerLinkType attribute does not point at an SCA reference - it points
at a partnerLinkType.
The existence of a <reference/> in
the componentType is derived from the presence of a variable with the sca-bpel:multireference
attribute,
which I what 3006 says. </mje>
Yours, Mike.
Strategist - Emerging Technologies, SCA & SDO.
Co Chair OASIS SCA Assembly TC.
IBM Hursley Park, Mail Point 146, Winchester, SO21 2JN, Great Britain.
Phone & FAX: +44-1962-818014 Mobile: +44-7802-467431
Email:
From:
Danny van der Rijn <>
To:
Date:
14/05/2009 17:26
Subject:
Re: [sca-bpel] ISSUE 42: SBPEL3004 has
an incorrect 'MAY'.
On today's call, Mike Edwards proposed:
Replace the text of SBPEL3004 with: "To represent
an SCA multi-valued reference a WS-BPEL process MUST use a variable which
is declared with a sca-bpel:multiReference extension element."
I had some concerns with the statement that were at least
echoed by Sanjay. I was thinking that we lift the style of the text
from SCA-BPEL 2001/2:
[SBPEL2001]
If a partner link specifies a sca-bpel:service
attribute, then a service MUST be generated for the introspected component
type. [SBPEL2002]
The name of the service MUST be the value of the sca-bpel:service
attribute.
As I was looking at what replacement text I might use for 3004 or Mike
Edwards statement, what I came across was actually the next sentences,
SBPEL 3005/6:
When a variable declaration contains the sca-bpel:multiReference
extension, the type of the variable MUST be an element of sca-bpel:serviceReferenceList.
...
[SBPEL3006]
The introspected component type MUST include a reference with a multiplicity
of either "0..n"
or "1..n"
that corresponds to a variable with the sca-bpel:multiReference
element.
I
I propose that we simply delete SBPEL 3004.
Furthermore, I think there are some issues lurking elsewhere in this paragraph:
- Since partnerLinkTypes aren't QNames, do we have to insist that the partnerLinkType
attribute of the sca-bpel:multiReference resolve to a partnerLinkType declared
in the same scope?
- Since we want the componentType derivation to be deterministic, how do
we determine whether it's 0..n or 1..n?
- What does . [SBPEL3007]
"The type of the reference MUST be determined by the partner link
type and the partner role attributes of the sca-bpel:multiReference
extension element." mean?
- Does 3006 as above need to be tightened up to say that it's actually
not "a reference" but "THE reference pointed to by the partnerLinkType
attribute"?
Michael Rowley wrote:
http://www.osoa.org/jira/browse/BPEL-42
From: Najeeb Andrabi [mailto:]
Sent: Friday, May 08, 2009 2:06 PM
To:
Subject: [sca-bpel] NEW ISSUE: SBPEL3004 has an incorrect 'MAY'.
Title: SBPEL3004
has an incorrect 'MAY'.
Target: SCA BPEL C&I PR 01
Description:
SBPEL3004
states the following:
"In a WS-BPEL process definition, a variable MAY include an sca-bpel:multiReference
extension element that declares that the variable represents a multi-valued
reference."
'MAY' implies that some runtimes may
choose not
to implement multi-valued reference
using sca:bpel:multiReference extension element. We want that the implementation
of multi-valued reference using
sca-bpel:multiReference extension
element be
portable across different runtimes.
Proposal:
Replace with
--
"In a WS-BPEL process definition, a variable can include an sca-bpel:multiReference
extension element that declares that the variable represents a multi-valued
reference."
-Najeeb
Unless stated otherwise above:
IBM United Kingdom Limited - Registered in England and Wales with number
741598.
Registered office: PO Box 41, North Harbour, Portsmouth, Hampshire PO6
3AU