I'm not getting your point, I think, Mike. In lieu of that, let me
restate my point ;-)
I don't disagree that multiplicity 0..n and 1..n look like this. Just
that in the case that I described, it can be desirable that they not
show up.
Mike Edwards wrote:
OF7C02EB95.B865443A-ON8025762C.002B1595-8025762C.002B7035@uk.ibm.com"
type="cite">
Folks,
I mostly agree with Danny, but there
is one part of the email to be wary of:
" If the pL
is never used as a service, and the reference (EPR) is always assigned
into it (from another pL, from a vbl, from ...) then any external
wiring
that would be applied will ALWAYS be ignored. "
...but note that multiplicity 0..n
and
1..n partnerLinks ALWAYS look like this - and they must be taken
account
of in the component type introspection.
OK, there is added (SCA) metadata to
make this plain, but it is the case.
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: mike_edwards@uk.ibm.com
Dieter -
It's a statement that not all pL's that are used in a BPEL process
should
be wired. Whether this translates to all of Mike's verbiage, or not,
for me, the salient part is:
"where it is a reference and the reference
target/EPR
is assigned to it ..."
In my own words - If the pL is never used as a service, and the
reference
(EPR) is always assigned into it (from another pL, from a vbl, from
...)
then any external wiring that would be applied will ALWAYS be ignored.
We wouldn't want the burden of determining this case to fall to
introspection,
so we would, instead, introduce an attribute for the author to include,
saying that this pL should not contribute to the componentType.
Now if it is used incorrectly, then perhaps you would get a runtime
exception
if you tried to use it (as either a service or a reference), and this
could
possibly get some static analysis help to point this out to you. Such
a case could argue against including such an attribute, or it could
point
to suggesting or requiring such static analysis. IMO, the way to
go is to include the attribute without anything additional.
Danny van der Rijn
Dieter Koenig1 wrote:
Hi Mike, why do you say "logically it represents
the
same partnerLink
reference as the partnerLink in the outer scope"?
>From a BPEL perspective, the two partner links are independent
(besides
the
fact that only one is visible at any point in the process definition).
IMO we introduced the "_" naming conventions precisely for this
situation.
As a result, I do not think that "only one (reference) is called for".
Kind Regards
Dieter König
Senior Technical Staff Member, WebSphere Process Server Architect
IBM Software Group, Application and Integration Middleware Software
WSS Business Process Solutions
Phone: +49-7031-16-3426
IBM Deutschland
(Embedded
image moved
to
file:
pic12347.gif)
E-Mail: dieterkoenig@de.ibm.com
Schönaicher Str. 220
71032 Böblingen
Germany
IBM Deutschland
Research &
Development
GmbH /
Vorsitzender des
Aufsichtsrats:
Martin Jetter
Geschäftsführung:
Erich Baier
Sitz der
Gesellschaft:
Böblingen /
Registergericht:
Amtsgericht
Stuttgart, HRB
243294
From: Mike Edwards <mike_edwards@uk.ibm.com>
To: "OASIS BPEL" <sca-bpel@lists.oasis-open.org>
Date: 07.09.2009 14:42
Subject: [sca-bpel] [NEW ISSUE] Need to add Capability
to indicate that a PartnerLink should be ignored when
introspecting the ComponentType
of a BPEL Process
Raiser:
Mike Edwards
Target:
sca-bpel-1.1-spec-cd02.doc
Description:
Currently, any declaration of a partnerLink within a BPEL process
results
in a <service/> or a <reference/> appearing in the
componentType
of the
BPEL process.
This is not desirable in all circumstances:
- it may be that a BPEL process is written with an inner loop, where the
inner loop is implemented as a nested <scope/>. In this inner
loop, it may
be that a partnerLink is declared within the nested scope and used
purely
as a "local variable" within the loop, for example where it is
a reference
and the reference target/EPR is assigned to it from the contents of a
variable held in an outer scope.
In these circumstances, the partnerLink in the inner loop is shadowing
a
partnerLink in the outer scope - logically it represents the same
partnerLink
reference as the partnerLink in the outer scope.
At present, SCA cannot handle a situation such as this - the inner
partnerLink is introspected as a <reference/> and so is the outer
partnerLink - this
means 2 references appear when only one is called for.
To change this, it is necessary to provide a capability for the writer
of a
BPEL process to indicate that a given partnerLink should NOT be used
to introspect a <service/> or a <reference/> in the
componentType.
Proposal:
Add a new SCA BPEL extension attribute that can be used to annotate a
<partnerLink/> element.
@skip
boolean - default value is false
When @skip="true", the <partnerLink/> element is ignored
when introspecting
the compoenntType of the BPEL Process.
The changes are shown in this marked up version of CD02, where the
changes
are in Section 3.3 and Appendix A.
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: mike_edwards@uk.ibm.com
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
[attachment "sca-bpel-1.1-spec-cd02+skip_proposal.doc" deleted
by Dieter
Koenig1/Germany/IBM]
---------------------------------------------------------------------
To unsubscribe from this mail list, you must leave the OASIS TC that
generates this mail. Follow this link to all your TCs in OASIS at:
https://www.oasis-open.org/apps/org/workgroup/portal/my_workgroups.php
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
|