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: Issue - 7 - Import







I agreed to send a proposal for adding <import> into BPEL. I have taken a
look at existing import mechanism in Schema and WSDL; this is my summary of
the problem and a proposal.

The goal is to allow applications processing a BPEL definition to be able
to tell up-front the dependencies that the process has on external
definitions. The mechanism use should be optional and treated as a hint.
This is a common characteristic of existing import mechanisms (XSD, WSDL
1.1, WSDL 1.2.)

There are now two possible types of definitions that BPEL processes may
depend upon: XSD definitions of elements and types; WSDL 1.1 definitions of
messages, port types, as well as properties and partner link definitions
contained in WSDL documents. The outcome of issue #2 (sub functions) may or
may not require the ability to import BPEL process definitions as well.

There is an important design issue here (Ugo brought this up in the pastl).
It essentially boils down to being able to tell what kind of document is
being imported, with the goal of helping the processor figure out how to
process the import.  XSD documents only import other XSD documents; WSDL
documents (in the version 1.2 draft and in the WS-I basic profile) import
WSDL documents only, except from inside an  <wsdl:types>/<xsd:schema>
section, where (only) XSD documents may be imported. The approach followed
is then is to disambiguate the type of the imported document based on the
importing environment.

While this is a reasonable approach it will not work for BPEL since BPEL
lacks the equivalent of a <wsdl:types> section for either XSD types or WSDL
definitions.  I can think of two solutions:

1. Introduce a single <bpel:import> element used to import  XSD, WSDL (and
maybe BPEL) definitions. Disambiguation would be supporting by adding an
attribute indicating the import type. The proposed element would look as
follows:

<bpel:import targetNamespace="..." location="... document location ..."
importType="xsd-namespace-uri/wsdl-namespace-uri/bpel-namespace-uri"/>

2. Reuse the existing elements defined in XSD and WSDL for importing those
types of documents; introduce a single <bpel:import> element only for BPEL
files if eventually required depending on the resolution of issue 2. In
this proposal, a <bpel:process> element may have <xsd:import> and
<wsdl:import> elements as children for importing the corresponding document
types.

Proposal 1 seems simpler because introduces no external dependencies or
issues with reusing the semantics of predefined elements in a different
context. I would thus suggest that we go for issue 1. Comments?

Paco




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