Browse Prior Art Database

Method for Extracting User Interface Constraints from Workflow Description

IP.com Disclosure Number: IPCOM000126142D
Original Publication Date: 2005-Jul-04
Included in the Prior Art Database: 2005-Jul-04
Document File: 4 page(s) / 97K

Publishing Venue

IBM

Abstract

This invention concerns a method for extracting user interface constraints from workflow and web service descriptions. This allows deriving readily interpretable user interface markup from a process-oriented description in a deterministic way, and hence serves as a one step in deriving executable code from more abstract computational models. The invention specifically assumes that workflow descriptions and user interface markup form XML dialects. This is a sound assumption given the current state of the art, with representatives such as BPEL and WSDL as possible sources on one hand, and XForms and JSF as declarative user interface targets on the other. Because they are all XML dialects, certain XML schemas can be extracted from given sources and then used to compose desired targets. The rules given in the following prescribe which ones those are when dealing with sources of type BPEL or WSDL.

This text was extracted from a PDF file.
At least one non-text object (such as an image or picture) has been suppressed.
This is the abbreviated version, containing approximately 40% of the total text.

Page 1 of 4

Method for Extracting User Interface Constraints from Workflow Description

Background

Figure 1 graphically introduces the components of BPEL workflow descriptions by way of reference to the "Purchase Order Process" example [BPEL].

purchasing

invoicing

web service invocation

partne

proces

(fault handling not

sendSchedul

sendPurchaseOrde

Figure 1 Visualization of example BPEL business process.

Business processes progress through a number of logical steps (gray circles) that may be carried out either sequentially (dotted gray arrays) or in parallel. Parallel execution may be further constrained by interdependencies (solid black arrows), whereby one step may not occur before the second one has been completed elsewhere. In addition to this internal logic, business processes also may depend on other steps carried out in peer processes: BPEL calls those peers partners and the dependencies partnerLinks.

On the deployment level, BPEL models both the central process and its peripheral partners as web services, and hence BPEL partnerLinks each single out individual portTypes and operations from the relevant WSDL [WSDL] descriptions. Given its web service mapping, the execution of a business process traces a schedule of web service invocations (solid gray arrays) across partnerLinks.

WSDL defines four transmission primitives for its operations as follows (incoming and outgoing are used relative to the web service concerned):

shipping

scheduling

partnerLink

requestShippin

requestProductionSchedulin

sendShippingSchedul

initiatePriceCalculatio

sendShippingPric

sendInvoic

operatio

link portTyp

sequential ordering

1

[This page contains 1 picture or other non-text object]

Page 2 of 4

transmission primitives Characterization

one-way incoming message alone request-response incoming message, then correlated outgoing message solicit-response outgoing message, then correlated incoming message notification outgoing message alone

WSDL also associates one and more messages with each operation; their exact number and kinds (input, output, faults) depends on the local transmission primitive. Finally, each message leads to a set of XML schema types, as can be seen in Figure 2.

combines network address and binding

associates concrete protocol and data format with abstract entities such as portType, operation, and message

0..* 0..*

service

port

binding

0..*

0..* 1..3 0..*

one way, request-response, solicit-response, notification transmission primitives depend on specification of messages as input, output, and/or fault

portType

operation

message

part

1

type

Figure 2 Associations between core WSDL components.

The algorithm that is the subject of this disclosure identifies the relevant sets of schema types, given a partnerLink (BPEL) or portType (WSDL). The partnerLink is understood to connect the process to a partner whose role is carried out by a human agent (as opposed to a remote computer program).

It is considered, that this particular problem and its solutio...