工作流联盟WfMC规范标准[详].doc_第1页
工作流联盟WfMC规范标准[详].doc_第2页
工作流联盟WfMC规范标准[详].doc_第3页
工作流联盟WfMC规范标准[详].doc_第4页
工作流联盟WfMC规范标准[详].doc_第5页
已阅读5页,还剩58页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

学习参考 工作流管理联盟规范工作流管理联盟规范 工作流管理联盟工作流标准工作流管理联盟工作流标准 工作流过程定义接口工作流过程定义接口 XML XML 过程定义语言过程定义语言 文档号 文档号 WFMC TC 1025WFMC TC 1025 文档状态 草案文档状态 草案 1 0 1 0 2002 07 312002 07 31 VersionVersion 1 01 0 版权版权 20022002工作流管理联盟工作流管理联盟 学习参考 All rights reserved No part of this publication may be reproduced stored in a retrieval system or transmitted in an y form or by any means electronic mechanical photocopying recording or otherwise without the prior written permission of the Workflow Management Coalition except that reproduction storage or transmission without permission is permitted if all copies of the publication or portions thereof produced thereby contain a notice that the Workflow Management Coalition and its members are the owners of the copyright therein 学习参考 WorkflowWorkflow ManagementManagement CoalitionCoalition 24362436 N N FederalFederal HighwayHighway 374 374 LighthouseLighthouse Point Point FlFl 3306433064 USAUSA Tel Tel 1 1 954954 782782 33763376 Fax Fax 1 1 954954 782782 63656365 Email Email wfmc wfmc orgwfmc wfmc org WWW WWW http www wfmc orghttp www wfmc org 学习参考 目录目录 工作流管理联盟工作流标准工作流管理联盟工作流标准 1 1 工作流过程定义接口工作流过程定义接口 1 1 XML XML 过程定义语言过程定义语言 1 1 1 1 历史历史 7 7 2 2 读者读者 8 8 3 3 目的目的 8 8 4 4 介绍介绍 8 8 4 1 一致性 9 4 2 参考资料 9 5 5 过程定义交换概述过程定义交换概述 9 9 5 1 过程定义交换方法 10 图 5 1 流程定义交换的概念 10 6 6 元模型元模型 1111 图 6 1 元模型顶层实体 11 6 1 实体概述 11 6 1 1 工作流过程定义 11 6 1 2 工作流过程任务 活动 步骤 11 6 1 4 工作流参与者说明 12 6 1 5 资源库 12 6 1 6 工作流应用说明 12 6 1 7 工作流相关数据 12 6 1 8 系统及环境数据 12 6 1 9 数据类型与表达式 12 6 2 流程和包 13 6 3 过程元模型 13 图 6 3 工作流过程定义元模型 14 6 4 包元模型 14 图 6 5 包定义元模型 14 6 4 1 过程仓库 15 6 4 1 1 重新定义及其范围 15 6 5 元素概览 15 表 6 1 元素概览 16 6 5 1 开发商或用户特殊的扩展 17 6 5 1 1 扩展属性 17 6 5 1 2 扩展的参数映射 17 7 7 XMLXML 过程定义语言 过程定义语言 XPDLXPDL 1717 7 1 多实体的公共元素 17 7 1 1 扩展属性 17 表 7 1 扩展属性 属性 17 7 1 2 形式化参数 18 表 7 3 形式化参数 属性 18 7 1 2 1 参数传递语义 18 学习参考 7 1 2 2 同步语义 19 7 1 2 3 形式化实参映射 19 7 1 3 外部引用 19 表 7 5 外部引用 属性 19 7 1 3 1 Web Services 20 7 2 包定义 20 表 7 7 包定义 属性 21 7 2 1 包头定义 21 表 7 9 包定义头 属性 22 7 2 2 可重新定义头 Redefinable Header 22 表 7 11 可重定义的头 属性 23 7 2 3 适应类型声明 Conformance Class Declaration 23 7 2 4 脚本 23 表 7 15 脚本 属性 24 7 2 5 外部包引用 24 表 7 16 外部包引用 属性 24 7 3 工作流应用声明 25 表 7 18 工作流应用声明 属性 25 7 3 1 调用参数 25 7 4 工作流过程定义 26 表 7 20 工作流过程定义 属性 27 7 4 1 工作流过程定义头 27 表 7 22 工作流过程定义头 属性 29 7 4 2 工作流过程可重定义头 29 表 7 24 工作流过程可重定义头 属性 30 7 4 3 任务组 集 30 表 7 26 任务组 30 7 5 工作流过程任务 31 表 7 2 实体类型与不同任务类型间关系 31 Figure 7 1 任务结构及转移条件 32 表 7 29 过程任务 属性 34 7 5 1 路由任务 34 7 5 2 块任务 34 7 5 3 执行控制属性 34 表 7 31 执行控制 属性 35 7 5 4 实现选择 Implementation Alternatives 35 表 7 33 执行选定 属性 36 7 5 4 1 无实现 No Implementation 36 7 5 4 2 工具 Tool 36 表 7 35 Tool 属性 37 7 5 4 3 子流程 subflow 37 表 7 37 子流程 属性 37 7 5 5 执行者的关系 37 7 5 6 截止期限 最终期限 38 表 7 3 截止期限 39 7 5 7 仿真信息 39 表 7 4 仿真信息 属性 40 7 5 8 转移约束 限制 41 表 7 42 转移约束 属性 41 7 5 8 1 接合 Join 41 表 7 4 接合 属性 41 7 5 8 2 分叉 42 表 7 4 分叉 属性 42 学习参考 7 5 9 适应性类型 Conformance Classes 43 7 6 转移信息 43 表 7 49 转移信息 属性 44 7 6 1 条件 44 表 7 51 条件 属性 45 7 6 1 1 异常条件 45 7 7 工作流参与者 46 表 7 53 工作流参与者 属性 46 7 7 1 参与者实体类型 46 表 7 55 参与者实体类型 属性 47 7 8 工作流相关数据 47 表 7 57 工作流相关数据 属性 48 7 9 数据类型 48 表 7 59 标准数据类型 49 7 9 1 基本数据类型 49 表 7 61 基本数据类型 属性 50 7 9 2 复杂数据类型 50 7 9 2 1 Schema Type 50 7 9 2 2 记录类型 Record Type 51 表 7 63 记录类型 属性 51 7 9 2 3 联合类型 Union Type 51 表 7 65 联合类型 51 7 9 2 4 枚举类型 51 表 7 67 枚举类型 属性 52 7 9 2 5 数组类型 Array Type 52 表 7 69 数组类型 属性 52 7 9 2 6 列表类型 List Type 52 表 7 71 列表类型 属性 52 7 9 3 声明的数据类型 Declared Data Types 53 7 9 3 1 类型声明 Type Declaration 53 表 7 73 类型声明 53 7 9 3 2 声明的类型 Declared Type 54 表 7 7438 声明的数据类型 属性 54 8 8 样本工作流 样本工作流 SAMPLESAMPLE WORKFLOWWORKFLOW 5454 8 1 过程 THE PROCESSES 54 8 1 1 EOrder 主流程 The EOrder Main Process 54 图 8 1 EOrder 主流程 55 8 1 2 CreditCheck 子流程 55 图 8 2 信用校验子流程 CreditCheck Subprocess 55 8 1 3 FillOrder 子流程 The FillOrder Subprocess 55 图 8 FillOrder 子流程 56 8 2 类型声明 TYPE DECLARATIONS 56 8 3 扩展属性 EXTENDEDATTRIBUTES 58 8 4 外部引用 EXTERNAL REFERENCES 59 8 5 样本 XPDL SAMPLE XPDL 59 学习参考 1 1 历史历史 版本0 10 编者 Roberta Norin robertan Contributors Seth Osher Intuitive Products International Corp 及Robert Shapiro Cape Visions 从模式中去除InlineBlock和BlockName元素 从规范中去除BlockName元素 在模式和规范中增加ActivitySetsActivitySets和BlockActivityBlockActivity元素 在模式中去除任务的maxOccursmaxOccurs属性 在模及规范中增加DeadlineDeadline元素 将DeadlineDeadline加入工作流示例中 以UML图表置换参照元模型 在XPDL中增加WEBWEB ServiceService定义描述的章节 版本0 09 编者 Roberta Norin robertan 增加第8章 工作流示例 版本0 08 编者 Roberta Norin robertan 投稿人 Mike Gilger Identitech 从WorkflowProcess中去除DataTypes 在BasicType中增加BOOLEAN和PERFORMER 从模式中去除PlainType元素 从DataTypes 中去除PlainType参照 增加Script元素 在Package中增加Script元素参照 Removed left over references to LOOP in Conformance class and transition discussions 在7 6 1节完善条件表 在7 6节增加对loops的讨论 版本0 07 编者 Roberta Norin robertan 重新确定DataTypes元素 which was not being used 为 xsd group 包含所有数据类型 的引用 无论何处 重复的数据类型列表都引用该组 校订Data Types章节强调用SchemaType 定义复杂数据 阐明TypeDeclarations的效用 利用DataTypes 组进行简化 将SchemaType的讨论移入 复杂数据 类中 版本0 06 编者 Roberta Norin robertan 在WorkflowProcessWorkflowProcess中增加AccessLevelAccessLevel属性 在ParticipantParticipant中增加ExternalReferenceExternalReference属性 从WorkflowActivity ImplementationWorkflowActivity Implementation中去除LoopLoop实现 去除LoopLoop元素 从TransitionTransition中去除LoopLoop属性 从图7 1中去除LoopLoop任务 在模式设计中增加TargetNamespace xsd 在引用XPDL元素时使用xpdl命名空间前缀 在所有数据类型数据类型列表中增加SchemaTypeSchemaType和ExternalReferenceExternalReference 学习参考 重新安排所有数据类型数据类型的排列顺序 所以原有复杂类型的声明在选择列表的最后 去除WorkflowProcessWorkflowProcess ActivityActivity下关于参数参数的多余讨论 转入7 1 2节形式参数形式参数中 补上了第7章表中遗漏的文字 版本0 04 编者 Mike Marin mmarin 和Roberta Norin rnorin 合并修正五月份WfMC会议的讨论结果 本版本中用XML Schema代替DTD来描述XPDL 增加外部引用外部引用 External References 提供一种和WEB Service WSDL 及其它外部定 义交互的方法 增加模式类型 模式类型 SchemeScheme TypesTypes 以便利用XML的schema定义复杂类型 在路径中引入 异常异常 概念 版本0 02 0 03 编者 Mike Marin mmarin 在2001年5月3 4日纽约会议期间 基于工作组的研究作改变 本版本从Roberta Norin AP Engines Robert Shapiro Cape Visions 以及纽约会议期间所有其他工作组的参 与者那里引入重要的内容 版本0 01 编者 Mike Marin mmarin 初始版本 2 2 读者读者 本文档的预期读者是主要致力于工作流管理联盟 WfMC 的 XML过程定义语言 XPDL 实现的开发组织 那些致力于评价自己产品适应性的开发商可能也有兴趣 解释权归工作流 联盟 WfMC 所有 3 3 目的目的 作为其标准化计划的一部分 WfMC已确定了5个工作流服务的功能接口 本规范形成了和 接口一 相关的文档部分 支持 过程定义输入和输出 该接口包含一个用于描述过程定义 的公共元模型 本规范 和一个用于过程定义交换的XML 模式 schema 4 4 介绍介绍 许多不同的工具可用于业务过程的分析 建模 描述及建档 工作流过程定义接口定义了 一个公用的交换格式 它支持不同产品工作流过程定义之间的转换 该接口也定义了开发和运行环境之间的形式区分 使得由一种建模工具产生的过程定义 可以作为许多不同工作流运行产品的输入 由一个构造工具生成的工作流过程定义 能被不同的工作流运行产品解释 过程定义在产 品之间转换 或者存储在一个分离的资源库中 通过公用的交换格式访问 提供一种描述及访问已建立的工作流定义和工作流过程元数据模型的公共方法 该元数据模型 确定过程定义中共同使用的实体 entities 许多属性描述该有限实体集的特征 基于该元 数据模型 开发者的特定的工具能借助公共交换格式转换模型 XPDL的关键基础之一是其用于各种工具处理信息的扩展性 XPDL可能从不支持各种工具要 求的额外信息 基于工作流过程定义中描述的有限数量的实体 最小元模型 XPDL支持 许多不同的方法 XPDL最重要的基础之一是在公共表示方法中使用的支持开发商特殊属性的一般结构 有关 学习参考 缺少的属性将提议WfMC接口一工作组在未来的版本中加入 本文档描述了用于定义过程定义内所含的对象及其属性的元模型 XPDL语法直接和这些对 象及其属性相关 这方面需要开发商提供两个操作 从XPDL输入工作流定义 从开发商的内部表示法输出为XPDL 开发者可用一XSL格式单实现这两个操作 规范中所用的关键词和术语都源自WfMC的术语表 在本文档中 术语流程定义流程定义 业务流程模型业务流程模型和工作流模型工作流模型均表示同一概念 因此它们可交 互使用 4 1 4 1 一致性一致性 开发商不能声称符合本规范或其它任何规范 除非取得WfMC的明确授权 对于那些通过 WfMC制订的可用性测试规程鉴定的 开发商关于公布规范的实现 WfMC仅承认这些许可 流程定义输入 输出的适应性本质上基于和XPDL语法的一致性 然而 存在一个XPDL必须 支持的强制最小对象集 如本文档中所定义 但是 给于建模工具宽广的适应能力 是假设个 别工具符合规范 却不能和其它符合规范的产品交换全部定义 一个符合规范的产品必须生成 有效的 语法正确的XPDL 且能读取所有有效的XPDL 4 2 4 2 参考资料参考资料 下列是和本文档相关的文档 应作为参考资料 综合背景资料 WfMCWfMC 名称术语名称术语 WfMC TC 1011 WfMC TC 1011 WfMCWfMC 参考模型参考模型 WfMC TC 1003 WfMC TC 1003 WfMCWfMC APIAPI 规范 含如下过程定义操作规范 含如下过程定义操作APIAPI WfMCWfMC 客户端应用客户端应用APIAPI规范规范 WAPI WAPI WfMC TC 1009 WfMC TC 1009 WfMCWfMC 过程定义交换过程定义交换 过程模型过程模型 WfMC TC 1016 P WfMC TC 1016 P 工作流过程协同工作能力 用于支持远程工作流服务的过程调用 工作流协同工作能力工作流协同工作能力 抽象规范抽象规范 WfMC TC 1012 WfMC TC 1012 协同工作能力协同工作能力 InternetInternet E mailE mail MIMEMIME 绑定绑定 WfMC TC 1018 WfMC TC 1018 辅助文档 资源模型资源模型 机构模型 机构模型 WfMCWfMC TC 1016 O TC 1016 O 5 5 过程定义交换概述过程定义交换概述 过程定义过程定义的定义如下 是一个业务过程支持自动化操作的形式化表现 诸如一个工作流管理系统所进行的模型建是一个业务过程支持自动化操作的形式化表现 诸如一个工作流管理系统所进行的模型建 立 规则制订 过程定义由任务网络及其关系 过程开始和终止的条件 任务资源 诸如参与立 规则制订 过程定义由任务网络及其关系 过程开始和终止的条件 任务资源 诸如参与 者 相关的者 相关的ITIT应用及数据等组成应用及数据等组成 WfMC WfMC 术语术语 WfMCTC WfMCTC 1011 1011 学习参考 过程定义提供一个关于过程的丰富描述环境 可作如下用途 在制订流程期间作为创建流程和流程实例控制的模板 用于仿真和预测 作为流程监控和分析的基础 用于建立文档 形象化和知识管理 流程定义可包含作为整个流程组成部分的独立子流程的引用 初始流程定义将至少包含流程初始化和支撑流程运行的必须的最小对象和属性集 某些对 象和属性将被创建的流程实例所继承 在WfMC术语表中的流程定义 同样包含关于流程的描述 公共名词 流程定义中具体的基 本概念 诸如任务 工作流相关数据及参与者等 5 1 5 1 过程定义交换方法过程定义交换方法 本规范以XML作为流程定义交换的机制 XPDL成为公共交换标准 使得产品继续支持任意 的内部流程定义表示方法 通过import export功能穿过产品边界映射到标准或从标准映射 多种不同的机制可用于依据业务情况在系统之间转换流程定义数据 在各种情况下 流程 定义必须被表示为一致的形式 由表示其基本概念的公共对象集 关系和属性导出 过程定义交换的原理以图5 1表明 流程定义交换的概念 学习参考 图5 1 流程定义交换的概念 6 6 元模型元模型 元模型描述过程定义过程定义中包含的顶层实体 它们的关系及其属性 含有一些用于仿真和监控 而非流程制定的关系及属性 也定义了各种各样与过程模型相关的分组过程约定 以及跨各 种不同过程定义或模型的公共定义数据的使用 顶层实体如下图所示 学习参考 图6 1 元模型顶层实体 上述每一实体 都有一描述其特征的相关的属性集 后续章节将更详细的叙述这些实体及 其属性 6 1 6 1 实体概述实体概述 元模型确定用于过程定义过程定义交换的基本实体集 顶层实体如下所述 6 1 1 6 1 1 工作流过程定义工作流过程定义 过程定义过程定义实体提供流程内用于其它实体的上下文信息 它是流程自身及其提供管理相关信 息 创建日期 作者等 以及流程运行期间有关信息 初始参数 执行的优先级 校验的时 限 通报的人 仿真信息等 的容器 6 1 2 6 1 2 工作流过程任务 活动 步骤 工作流过程任务 活动 步骤 过程定义过程定义由一个或多个任务组成 每个任务是流程内一个独立的逻辑工作单元由一个或多个任务组成 每个任务是流程内一个独立的逻辑工作单元 一个任务 表示由一个资源组合处理的操作 由参与的任务指定 与 或 计算机应用 由参与的应用指定 其它可选信息与任务有关 诸如由工作流管理系统自动地确定的关于是否启动 完成的信息 或相对于其它任务竞争资源的优先级 亦或系统服务的发生等 也可以定义工作流任务相关数 据的特定用法 对于确定的流程定义 任务的范围是局部的 即使是下述的关于子流程任务的 描述 任务可以是一子流程任务可以是一子流程 既然如此 对于一个 独立定义的 流程定义的执行 它是一个 容器 该独立流程可能在同一工作流服务内本地运行 或 可能使用过程协作接口 是一个远 程服务 子流程内的过程定义包含其自身的任务 内部转移 迁移 连接 资源及应用分配 尽管这些可从公共资源继承 定义 In 和out 参数允许调用和被调用流程间交换必要的 工作流相关数据 学习参考 任务可以是一任务可以是一BlockBlock任务任务 任务集合 或者任务及转移的映射任务集合 或者任务及转移的映射 任务集内的任务和转移 和所属流程共享命名空间 最后 虚拟任务是一骨架任务虚拟任务是一骨架任务 它的完成没有操作处理 因之无相关资源或应用 仅简 单用于在进入转移与 或流出转移中作路径判别 6 1 4 6 1 4 工作流参与者说明工作流参与者说明 它提供了流程定义中可作为各类任务执行者的资源的描述 指派完成一特定任务的特殊资 源被定义为任务的一个属性 以及将任务和可分配给它的资源集联系起来的参与者设定 工作 流参与者的声明不必是一个人 也可以确定为一组具有一定技能或责任的人 或非人的机器自 动机资源 元模型包含一些可定义为工作流参与者的简单资源类型 6 1 5 6 1 5 资源库资源库 资源库说明参与者可以是人 程序或机器 在更复杂的流程中参与者的声明可以引用资源 库 在参与者是人时可以组织模型组织模型 应指出的是本规范未定义或要求资源库 6 1 6 6 1 6 工作流应用说明工作流应用说明 它提供IT应用的描述 或工作流服务支持的 亦或完全自动化的 与每个任务相关的处理 任务内由一应用设定属性 或属性集 确定的可调用接口的描述 这样的应用可以是普通的行 业工具 企业内确定的服务部门 或工作流管理系统框架内实现的本地过程 工作流应用定义反映出工作流引擎与应用或接口 包括任意传递参数之间的接口 6 1 7 6 1 7 工作流相关数据工作流相关数据 它定义在流程运转期间各个流程实例内创建及使用的数据 在流程运转期间 该数据对任 务或执行的应用有效 且用于在任务间 与 或 为条件表达式计算 诸如转移或参与者设定 传递持久化信息或中间结果 工作流相关数据是特殊类型 XPDL包含各种各样基本及复杂数据 类型的定义 包括date date stringstring等 任务 调用的应用 与 或 转移条件可引用工作流过程相 关数据 6 1 8 6 1 8 系统及环境数据系统及环境数据 是指由工作流管理系统或局部系统环境维护的数据 但可被工作流任务访问 或被工作流 管理系统以与工作流相关数据同样的方式在计算条件表达式时使用 6 1 9 6 1 9 数据类型与表达式数据类型与表达式 元模范 及与XPDL相关 采用了许多标准数据类型 string string reference reference integer integer float float date time date time 等 这些数据类型和工作流相关数据 系统或环境数据 亦者参与者数据有关 表达式可以由这些数据类型形成以支持条件计算 数据类型可以通过用XML Schema或外部来源 中定义的数据引用进行扩展 6 2 6 2 流程和包流程和包 如同在上述图表所示 过程模型包含各种各样的实体 其范围较单一的过程定义广泛 特别是参与者 应用及工作流相关数据的定义可以从许多过程定义中引用 元模型假定使用和 工作流管理系统相关的 拥有各种各样类型构成过程定义实体的共用过程定义库 在公共定义 库本身内以及支持对将流程定义数据从定义库内高效的转入 转出的支持 引入概念 包 学习参考 作为源自许多不同过程定义共用数据实体分组的容器 以免在每一单独的过程定义内重新定义 包 提供一个容纳来自工作流过程定义实体 作者 版本 状况 等等 的许多公共属性的 容器 包内包含的每一过程定义将自动继承源自包的任何公共属性 除非它们在过程定义中分 别进行局部重新定义 在一包内 一些实体的定义范围是全局的 包内所含的工作流过程定义 以及与之相关的 任务和转移 都可引用这些实体 这些实体是 工作流参与者定义 工作流应用声明 工作流相关数据 包引用允许在包内使用 或在引用的外部包中所引用的顶层实体中包含的对象内使用 子流程引用的流程标识 工作流参与者定义 工作流应用声明 为达到任何必要的全局唯一性 在同一资源地址空间内跨不同包的命名和标识符管理规范 由用户 开发商自己定义 在流程指定期间 采用的规范是按下述搜索顺序作名称引用 流程标识 首先在同一流程模型内 包括任何在不同服务中远程运行的流程定义应用 然后在任一引用的外部流程模型内 应用 参与者 首先在同一流程模型内 然后在任一引用的外部模型内 在包内工作流相关数据命名必须是唯一的 这些数据是作为参数在过程之间传递的 在本 版本的规范中 将使用语义复制 过程设计者 管理者的剩余责任就是在支持子流程操作 包含 任何所需的远程过程互用性 的过程定义 模型内保证一致的名称 数据类型用法 6 3 6 3 过程元模型过程元模型 为了过程定义交换 元模型确定了基本实体和属性集 关于过程定义过程定义下述实体必须定义 或者明确地在过程定义层 或者直接继承 亦或从环境包中交叉引用 工作流过程任务 转移信息 工作流参与者定义 工作流应用声明 工作流相关数据 学习参考 图 6 3 工作流过程定义元模型 这些实体包含支持流程公共描述机制的属性 它们将在后续的章节中予以叙述 6 4 包元模型 多过程定义结合在模型定义中 包包作为分组的容器 许多独立的过程定义 与之相关的 实体数据 适用于所有包含的过程定义 以及仅有一次需求的定义 包包的元模型包含如下 实体类型 工作流过程任务 转移信息 工作流参与者定义 工作流应用声明 工作流相关数据 实体可在工作流过程定义中重新定义 图6 5 包定义元模型 包的元模型确定了的用于交换 存储及过程模型的实体和属性 它规定了将单个流程和对 参与者定义 应用声明及工作流相关数据的实体定义联系起来的各种各样的继承规则 可以在 学习参考 包一级定义而非在单个过程定义级被定义 包定义包定义允许定义许多共用过程定义属性 这些属性适用于包内所含的所有单一过程定义 这样的属性也可以从单个过程定义删除 如果它们在单个过程定义级被重新设定 则这一局部 属性值优先于包级定义的公共值 6 4 1 6 4 1 过程仓库过程仓库 过程定义导入导入 导出导出接口采用 放到放到 取自取自 一与工作流管理系统相关的某种形式的工作流定 义库的操作 导入 导出接口由放入或取出定义库含有XPDL的交换文件实现 这个接口定义允 许在单过程定义级与包级导入 导出过程定义数据 定义库和工作流控制功能之间的内部接口由开发商自行定义 不作为本标准的一部分 而 采取将静态仓库用法 对于持久化数据 在建的过程定义数据 与动态仓库用法 对于在运流 程实例的变化管理 分离 例如通过版本控制 的方式 过程定义库的本地存储结构不是WfMC标准的组成部分 包的应用仅是旨在简化可复用数据 结构的导入 导出 采用简单的过程仓库结构 单一的过程定义级操作 在一导入包内的共享 信息在导入接口中可以被复制到每一独立过程定义 对于过程定义导出类似于重新打包 6 4 1 1 6 4 1 1 重新定义及其范围重新定义及其范围 由于重新定义属性 元模型实体和外部予以包的可能性 将范围和层次基理引XPDL 和过 程库 结构中 i 工作流相关数据 工作流过程有关数据具有一个被环境元模型实体直接定义的范围 且是非嵌套的 其可见性 也由该实体定义 ii 属性 属性包含扩展属性具有一个被环境元模型实体直接定义的范围 且是非嵌套的 亦即在在 一较低级别可被重新定义 例如 名称属性在每一实体中被重新定义 扩展属性标识符的可见 性在特定的实体内及所有子实体内 除非子实体内该标识符被重新定义 iii 工作流参与者和工作流应用 工作流参与者及工作流应用具有等价于扩展属性的范围和可见性 所有被引用的工作流相 关数据及其扩展属性在其使用范围内必须定义 至少在同一包内 对于一被引用的需自身对实体引用的外部包以及在其外部包中定义的标识符条目 该机制 从包的根开始 如此一来保证不发生冲突 若调用的过程以同一ID拥有同一实体 被引用包 的定义却不知道 所述的关于外部包的机制为工作流的设计者和管理人员提供了高灵活性 可以将机构描述 参 与者实体 和过程定义分放在不同的模型中 可以增加新版本的过程描述 或添加新版本的过 程定义 共享以前定义的其余定义部分和交换模型 而无需重新提交全部上下文等 6 5 6 5 元素概览元素概览 下表给出XPDL内定义的主要元素概览 第一行包含所有所有主要元素的公共属性及元素 所有主要元素具有 id name Description 和 Extended Attributes属性 第二行主要元素各自的特有属性 第三组有可能的对其它元素的引用组成 Documentation和Icon元素包含执行引擎使用的表现信息 学习参考 第五组包含流程仿真和流程优化信息 BPR 相关信息 更多的元素和预定义属性可加入模型中以便建立未来的适应性标准 所有元素的简短描述 和语义在后续章节中给出 PackagePackage WorkflowWorkflow ProcessProcess ActivityActivity TransitioTransitio n n ApplicationApplication DataData workflow workflow RelevantRelevant Data Data ParticipaParticipa ntnt IdIdIdIdIdIdIdIdIdIdIdIdIdId NameNameNameNameNameNameNameNameNameNameNameNameNameName DescriptioDescriptio n n DescriptionDescriptionDescriptiDescripti onon DescriptionDescriptionDescriptionDescriptionDescriptionDescriptionDescriptionDescription ExtendedExtended AttributesAttributes ExtendedExtended AttributesAttributes ExtendedExtended AttributeAttribute s s ExtendedExtended AttributesAttributes ExtendedExtended AttributesAttributes ExtendedExtended AttributesAttributes ExtendedExtended AttributesAttributes XPDLXPDL VersionVersion CreationCreation DateDate AutomatioAutomatio n n ModeMode DataData TypeTypeParticipantParticipant TypeType SourceSource VendorVendor IDID VersionVersionSplitSplit CreationCreation DateDate AuthorAuthorJoinJoin VersionVersionCodepageCodepagePriorityPriority AuthorAuthorCountryCountry KeyKeyLimitLimit CodepageCodepagePublicationPublication StatusStatus StartStart ModeMode CountryCountry KeyKey PriorityPriorityFinishFinish ModeMode PublicatioPublicatio n n StatusStatus LimitLimitDeadlineDeadline ConformancConformanc e e ClassClass ValidValid FromFrom DateDate PriorityPriority UnitUnit ValidValid ToTo DateDate ResponsiblResponsibl e e ParametersParametersPerformerPerformerConditionConditionParametersParametersInitialInitial valuevalue ResponsibleResponsibleToolToolFromFrom SubflowSubflowToTo ActivitySActivityS etet ExternalExternal PackagePackage ActualActual ParameteParamete DocumentatDocumentat ionion DocumentatiDocumentati onon DocumentaDocumenta tion tion IconIconIconIconIconIcon CostCost UnitUnitDurationDuration UniUni t t CostCost DurationDurationDurationDuration WaitingWaiting TimeTime WaitingWaiting TimeTime WorkingWorking TimeTime WorkingWorking TimeTime 学习参考 表 6 1 元素概览 6 5 1 6 5 1 开发商或用户特殊的扩展开发商或用户特殊的扩展 虽然元模型及其相关的XPDL含有大多数在流程交换中需要的结构 但可能有开发商或用户 定义的需包含在过程定义中的补充信息 应鼓励开发商和用户尽可能在标准实体 属性集内工 作 下述的支持扩展的机制提供用于交换目的的表述扩展的标准方法 但可能在制定流程期间 要求局部系统提供任何相关的运行时支撑 6 5 1 1 6 5 1 1 扩展属性扩展属性 支持扩展的主要方法是使用扩展属性 扩展属性是开发商或用户定义的属性 必要的 需在系统间交换的 表述附加实体的特征 在制定流程期间 任何与扩展属性使用相关的运行 时语义分别定义 且需要工作流服务导入方和导出方的双边协定 6 5 1 2 6 5 1 2 扩展的参数映射扩展的参数映射 本规范中未定义解码的Scheme和参数数据传递的特殊细节 有关远程子流程调用的参数传 递方法见工作流互操作规范 接口工作流互操作规范 接口4 4 该规范用于具体语法说明内所用操作的参数映射 例 如wf XML 交换 任何参数映射的本地方案 local scheme 及解码由开发商给于自己的产 品定义的 不在本规范范围内 7 7 XMLXML 过程定义语言 过程定义语言 XPDLXPDL 7 1 7 1 多实体的公共元素多实体的公共元素 7 1 1 7 1 1 扩展属性扩展属性 扩展属性扩展属性可用于所有实体 允许开发商扩展本规范的功能以便满足个别产品的需要 开发 商可在ExtendedAttribute中加入自目录 学习参考 描述描述 Name 用于确定扩展属性 Value 特定产品要求的值 表 7 1 扩展属性 属性 7 1 2 7 1 2 形式化参数形式化参数 形式化参数可用作工作流过程和工作流应用的属性 它们在调用期间及控制返回时被传递 e g 一调用应用 如下是调用参数 描述 Datatype 形式化参数的类型 见7 9节 Description 形式化参数的文本表述 ID 参数的标识符 Index 参数的索引 IN 输入参数 OUT 输出参数 Mode INOUT 输入输出参数 表7 3 形式化参数 属性 学习参考 7 1 2 1 7 1 2 1 参数传递语义参数传递语义 参数传递语义定义如下 任一只读形参 IN 调用时由相应实参 一表达式 初始化 此即传值 传值 pass by value 语义 a 任一读 写形参有相应的实际传递实参初始化 实参必须是工作流相关数据实体的标识符 在过程完成时 形式化输出参数的之值被拷回原实参中 必须是工作流相关数据实体的标 识符 此即拷贝 恢复语拷贝 恢复语 copy restore copy restore 义 b 任意只写形参 OUT 被初始化为零值 字符串将设为空串 复杂数据类型将每个元素设为 零 在过程完成时 形式化输出参数被拷贝回原实参中 必须是工作流相关数据实体的标 识符 此即零 恢复零 恢复 zero restore zero restore 语义 7 1 2 2 7 1 2 2 同步语义同步语义 拷贝和恢复被处理为原子操作 为避免流程实例中对工作流相关数据并行操作的冲突 这 些操作是串行的 在返回调用时 若拷贝和恢复间没有加锁 返回参数值将冲掉局部值 特定 工作流相关数据项 7 1 2 3 7 1 2 3 形式化实参映射形式化实参映射 调用时从实参到形参的映射由一参数映射列表定义 实参按顺序一对一映射到形参 亦即 第一个实参映射到第一个形参 第二个实参映射到第二个形参等 定义中要求类型兼容 运行 时工作流系统可强制转换 例外情况是局部定义的 非本规范组成部分 当实参是一表达式时 表 达式被工作流引擎求值并缓冲 缓冲区的目录被用于形参 实参映射 如何完成缓冲和映射超 出本文档范围 7 1 3 7 1 3 外部引用外部引用 外部引用外部引用 ExternalReference 是对外部定义实体的引用 可用于数据类型 参与者及应用 描述 LocationURI Namespace 定义的实体范围说明 xref 外部文档中实体身份的说明 表 7 5 外部引用 属性 例1 由一XML scheme定义的FormalParameter FormalParameter Id PO PO specification for 学习参考 例2 由Java类定义的DataField PO specification for 7 1 3 1 7 1 3 1 WebWeb ServicesServices 过程的一个任务可以调用一web service ExternalReference元素可用于由WEB Service文档 WSDL 定义的应用和数据类型的引用 例3 数据类型由WSDL文档中定义的DataField 例4 WSDL文档中的一个应用被定义为一个操作 7 2 7 2 包定义包定义 在一包内定义几个过程是可能的 共享同样的工具及参与者 建议每个业务过程创建一包 其中包含所有必要的工作流过程以及与之相关的工具和工作流参与者 虽然并非必需的 也可 以在一包内只定义一个过程定义的一部分或几个过程的公共部分 例如一工作流参与者清单或 工作流应用清单 学习参考 描述 Applications 工作流应用声明列表 见7 3节 Conformance Class 包中过程定义的结构限定 见7 2 3节 Data Fields 包中定义的工作流相关数据列表 见7 8节 Extended Attributes 可加入包中的开发商定义的扩展 见 7 1 1节 External Packages 对另一定义在不同文档中的包的引用 Id 用于标识包 Name 用于标识包的文本 Package Header 确定包特征的一组元素 Participants 包中用于执行流程的资源列表 见7 7节 Redefinable Header 一组既可用于包又可用于流程的元素及属性 Script 确定表达式中所用的脚本语言 Type Declarations 包中所用的数据类型列表 Workflow Processes 组成包的工作流过程列表 见7 4节 表 7 7 包定义 属性 7 2 1 7 2 1 包头定义包头定义 包头定义中保存有包的所有重要信息 诸如 XPDL版本 开发商ID等 学习参考 描述 Cost Unit 仿真数据所用的单位 通常按货币单位 Created 包的创建日期 Description 对包的文字说明 Documentation 帮助 说明文档的路径及文件名 Priority Unit 用用户定义语义的字串 Vendor 模型定义的来历 包含开发商产品名称及版本号 XPDL Version 本规范的版本 当前值为 0 02 表7 9 包定义头 属性 7 2 2 7 2 2 可重新定义头 可重新定义头 RedefinableRedefinable HeaderHeader 可重定义头涵盖那些可在工作流定义头中定义的属性 且可在任何过程定义头中重新定义 重定义时 应把握范围标准 学习参考 描述 Author 包定义作者姓名 Code page 文本部分代码页 Country key 基于ISO 3166的国家代码 可以是3为数字的国家代码 或两位字符国家 代码 Publication Status 工作流过程定义的状态 UNDER REVISION RELEASED UNDER TEST Responsible s 工作流参与者 为此工作流负责 运行时连接到工作流参与者实体的 主管人 工作流参与者为本模型定义的工作流负责 通常是一组织单元或 一人 假设负责人是运行时的主管人 缺省值 起始参与者 Version 本包的版本 表7 11 可重定义的头 属性 7 2 3 7 2 3 适应类型声明 适应类型声明 ConformanceConformance ClassClass Declarat

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论