BPEL流程变换

作者: admin 分类: 技术资讯 发布时间: 2020-01-09 23:43
BPEL流程变换阶段的目的就是要把BPEL流程转换成传统程序设计语言的形式,并用PFG图表示,这样才能对其进行数据流分析。
2.1赋值变换
赋值变换是将BPEL流程中操作数据的活动转换成变量赋值的形式.在BPEL流程中,消息通过<invoke>、<recieve>、<onMessage>、<reply>等活动进行传输.为了对BPEL流程进行数据流分析,这些活动必须转换成为对变量的赋值操作。比如,一个同步的调用活动<invokepartnerLink=samplePL”operaion=”“request”outputVariable=“response”/>可以被转换成为response=inyoke(samplePL,request)。这个语句是对变量response的定义,对变量request的引用。
2.2异步化变换

BPEL流程的分散化执行依赖于异步通信机制,因此用SEND和RECV两个操作原语将同步的消息通信转换成异步的消息通信。
 
2.3消息展开
消息展开变换将BPEL中的用XML(ExtensibleMarkupLanguage)描述消息展开成一组变量的形式。BPEL是基于消息的流程描述语言,但是传统数据流分析方法不能够直接应用于基于消息的程序语言,这是因为不能够直接分析出消息的定义和引用。例如a=b可以称为是变量b对变量a的定义,但是对于消息m和消息n,m.part1=m.part2则只是对消息m的一部分进行定义,因此需要把消息展开。BPEL中采用三种变量声明:Web服务描述语音(WSDL)消息类型、XML模式类型和XML模式元素。由于所有的XML类型的数据都可以用XPath表示成一棵树,所以将BPEL中的所有消息变量展开,每个消息变量由树的所有叶子节点组成.这样就以对BPEL流程中的变量进行细粒度的数据流分析。

和丰软件致力于卓越的OA流程信息化管理,您的支持将鼓励我们继续努力!

标签云

粤公网安备 44030502004821号