基于Web服务的电子公文流转自动化方法

文档序号:6464583阅读:174来源:国知局
专利名称:基于Web服务的电子公文流转自动化方法
技术领域
本发明涉及基于Web服务的电子公文流转自动化方法,更具体地说,本发明涉及一 种基于Web服务的电子公文交换、流转以及显现的自动化方法。
技术背景公文是政府机关处理公务和行政管理的重要工具,在各级机关、单位中,"办公" 的一个重要内容就是办理和制发文件,即"办文",办文是每个机关、单位大量的,曰 常的工作。依靠网络信息技术对公文进行高效有序的电子化处理,是电子政府建设的重 要组成部分,是关系到电子政府建设全局的基础性工程,是政务信息互联互通的最重要 的应用之一。电子公文流转自动化方法的设计按照统一的规范标准,在不同的地区,不 同的政府部门之间进行电子公文的传输,并保证公文在传递过程中的安全性和时效性。 实现安全可靠的政府电子公文信息交换,有助于提高办公效率,推进政务信息化建设的 发展。电子公文交换是典型的分布式应用,为了构造最优的交换模式,满足用户信息要求和处理要求,电子公文交换方法的设计需求应包括一下几个方面-符合〈〈基于XML的电子公文格式规范〉〉国家标准作为电子公文的核心描述和表现。 遵循目录体系与交换体系国家标准,实现跨部门电子公文数据的共享和交换。 支持跨地区、跨部门、跨平台、支持多种程序设计语言,使平台具有广泛的兼容性和良好的可扩展性。保证电子公文数据存储及其传输过程中的安全性。目前,随着电子政务逐步深入的开展,许多软件开发商为了实现政府内部无纸化办 公,实现日常文件的起草、审批和流转的网络化与电子化,研究设计了一系列电子公文 应用解决方案,如北京书生公司的公文数字化系统、电子公文传输系统。这些系统提供 了对各种纸质公文文档的扫描、索引、存储、查询和管理的功能,但电子公文需要被不 同的办公自动化系统所识别、显现,需要采用置标语言对电子公文归档管理格式进行描 述和解析,因此,传统的"电子公文"没有真正实现公文的电子化存储和传输。同时, 这些解决方案主要针对同构环境下的电子公文应用,对于异构平台和数据库的支持也考 虑得不足,而实际的电子公文应用会跨部门甚至跨地区,各部门的系统平台和数据库是异构的,因此不能满足求。为了解决公文电子化的问题,我国已经确立以XML作为公文格式规范。国家标准〈< 基于XML的电子公文格式规范》,是对电子公文体信息、公文样式信息、公文交换信息、 公文归档信息、公文安全信息及其元数据的全面描述。标准规定了基于XML的电子公文 的通用要求和基本原则,有利于电子公文的规范化管理及长久保存利用。但此标准并非 解决如何实现电子公文的自动化流转的解决方案,如何支持基于跨部门跨地区的异构系 统平台和数据库的电子公文应用,符合政府部门办公的实际需求等。 发明内容本发明的技术解决问题克服现有技术的不足,提供基于Web服务的电子公文流转 自动化方法中,该方法基于国家标准<〈基于XML的电子公文格式规范〉〉对电子公文进行 描述、解析,实现了电子公文可识别、可解析性以及高效的存储和传输,为电子公文的 自动化流转提供了一种通用的解决方案,支持基于跨部门跨地区的异构系统平台和数据 库的电子公文应用,符合政府部门办公的实际需求。本发明采取以下设计方案,基于Web服务的电子公文流转自动化方法,包括以下步骤(1) 通过定义XML结构定义文件XSD,构造XML形式的电子公文的复杂数据类型;(2) 根据步骤(1)中定义的电子公文复杂数据类型,为所要形成的电子公文流程 描述文档定义Web服务描述文档WSDL;(3) 根据步骤(1)中构造的电子公文的复杂数据类型,构造商业流程执行语言BPEL, 形成电子公文流程描述文档;(4) 将步骤(1)电子公文的复杂数据类型、步骤(2)中的Web服务描述文档WSDL 和步骤(3)中所形成电子公文流程描述文档一并打包,发布到BPEL流程执行引擎。所述步骤(1) XML形式的电子公文的复杂数据类型的方法为以"公文体"为根 元素,其子元素包括"眉首"、"主体"、"版记",每个元素又包含一个或多个子元 素。所述步骤(2)为所要形成的电子公文流程描述文档定义Web服务描述文档WSDL包 括以下步骤A. 根据步骤一中定义的电子公文复杂数据类型,创建Types元素,描述Web服务 使用的数据类型;B. 根据步骤A中创建的Types元素,创建message元素,描述Web服务使用的消息;C. 采用步骤B中创建的message元素创建Port Type元素,描述Web服务定义的 抽象操作;D. 创建binding元素,描述Web服务使用的通信协议;E. 创建service元素,描述服务的入口地址。所述的步骤C创建Port Type元素包括定义operation子元素,描述Web服务提 供的操作;定义input子元素,描述Web服务请求消息的参数;定义output子元素, 描述Web服务响应消息的参数。所述的歩骤(3)构造商业流程执行语言BPEL,形成电子公文流程描述文档包括以 下步骤A. 列出电子公文流程中需要调用的Web服务清单;B. 根据所要形成的电子公文流程中涉及的参与者角色,采用商业流程执行语言BPEL 定义电子公文流程合作伙伴链接类型;C. 根据步骤A中列出的Web服务清单和步骤B中的合作伙伴链接类型,商业流程执 行语言BPEL构造电子公文流程,从而形成电子公文流程描述文档。所述的步骤B为a. 创建伙伴名称(name)元素;b. 根据步骤C中定义的合作伙伴链接类型创建合作伙伴链接类型 (partnerLinkType)元素;c. 创建partnerRole元素,描述合作伙伴的角色;d. 创建myRole元素,描述电子公文流程本身的角色。 所述的步骤C为a. 根据步骤C所述的定义的电子公文流程合作伙伴链接类型,定义合作伙伴链接;b. 声明电子公文流程中涉及的变量;c. 根据定义的合作伙伴链接和声明的变量,釆用商业流程执行语言BPEL,将Web 服务清单中列出的Web服务串联起来,编写电子公文流程的逻辑定义。..所述的步骤C编写电子公文流程的逻辑定义包括a.创建以下电子公文流程基本活动元素使用invoke元素表示调用Web服务,使 用receive元素表示等待客户端通过发送消息调用业务流程,使用r印ly元素表示生成 同步操作的响应,使用assign元素表示操作数据变量,使用throw元素指示故障和异常,使用wait元素表示等待一段时间,使用terminate元素终止整个流程;b.创建以下电子公文流程结构活动元素使用sequence元素表示一组将按顺序调 用的活动,使用flow元素表示一组将并行调用的活动,使用switch元素实现分支,使 用while元素定义循环,使用pick元素选择多个替换路径之一。本发明与现有技术相比的优点在于本发明为电子公文可识别、可解析性以及高效 的存储和传输提供了一种解决方案,同时解决了电子公文自动化流转对跨部门跨地区的 异构系统平台和数据库的支持,符合政府部门办公的实际需求。


图l为本发明的方法流程图;图2为本发明实施例北京航空航天大学人事任免审批公文体复杂类型示意图; 图3为本发明实施例北京航空航天大学人事任免审批流程示意图; 图4为本发明的公文发送服务接口示意图; 图5为本发明的公文提取服务接口示意图。
具体实施方式
本发明公开的基于Web服务的电子公文流转自动化方法主要包括。下面以一个北京 航空航天大学人事任免审批流程为实例说明本方法。下面以北京航空航天大学人事任免审批业务为例介绍本发明的实现过程。如图1所 示,本发明提供的基于Web服务的电子公文流转自动化方法主要包括以下步骤第一步通过定义XML结构定义文件(XSD),构造北京航空航天大学人事任免审 批电子公文复杂数据类型。北京航空航天大学人事任免审批流程的公文体的组成元素包括份数序号、秘密等 级、保密期限、紧急程度、发文机关标识、发文字号、签发人、标题、主送机关、正文、 附件、公文生效标识(包括发文机关署名和印章,或签发人职务和名章)、成文日期、 印发传达范围、附注、主题词、抄送机关和印制版记(包括印发机关、印发日期、印发 份数)等。以XSD格式定义公文体复杂类型〈xsd:complexTypenarae 〃公文体"、以"公文体" 为根元素构造公文体复杂类型的Schema,如图2所示。第二步,根据第一步中定义的电子公文复杂数据类型,为所要形成的电子公文流程 描述文档定义Web服务描述文档WSDL;A.根据步骤一中定义的电子公文复杂数据类型,创建Types元素,描述Web服务使用的数据类型;B. 根据步骤A中创建的Types元素,创建message元素,描述Web服务使用的消 息;C. 采用步骤B中创建的message元素创建Port Type元素,描述Web服务定义的 抽象操作;D. 创建binding元素,描述Web服务使用的通信协议;E. 创建service元素,描述服务的入口地址。所述的步骤C创建Port Type元素包括定义operation子元素,描述Web服务提 供的操作;定义input子元素,描述Web服务请求消息的参数;定义output子元素, 描述Web服务响应消息的参数。第三步根据第一步中构造的电子公文的复杂数据类型,构造商业流程执行语言 BPEL,形成电子公文流程描述文档,具体包括以下步骤A. 列出电子公文流程中需要调用的Web服务清单;B. 根据所要形成的电子公文流程中涉及的参与者角色,采用商业流程执行语言BPEL 定义电子公文流程合作伙伴链接类型;C. 根据步骤A中列出的Web服务清单和步骤B中的合作伙伴链接类型,商业流程执 行语言BPEL构造电子公文流程,从而形成电子公文流程描述文档。所述的步骤B为a. 创建伙伴名称(name)元素;b. 根据步骤C中定义的合作伙伴链接类型创建合作伙伴链接类型 (partnerLinkType)元素;c. 创建partnerRole元素,描述合作伙伴的角色;d. 创建myRole元素,描述电子公文流程本身的角色。 所述的步骤C为a. 根据步骤C所述的定义的电子公文流程合作伙伴链接类型,定义合作伙伴链接;b. 声明电子公文流程中涉及的变量;c. 根据定义的合作伙伴链接和声明的变量,采用商业流程执行语言BPEL,将Web 服务清单中列出的Web服务串联起来,编写电子公文流程的逻辑定义。所述的步骤C编写电子公文流程的逻辑定义包括-a.创建以下电子公文流程基本活动元素使用invoke元素表示调用Web服务,使待客户端通过发送消息调用业务流程,使用reply元素表示生成 同步操作的响应,使用assign元素表示操作数据变量,使用throw元素指示故障和异 常,使用wait元素表示等待一段时间,使用tenninate元素终止整个流程;b.创建以下电子公文流程结构活动元素使用sequence元素表示一组将按顺序调 用的活动,使用How元素表示一组将并行调用的活动,使用switch元素实现分支,使 用while元素定义循环,使用pick元素选择多个替换路径之一。第四步将第一步中形成的电子公文的复杂数据类型、第二步中的Web服务描述文 档WSDL和第三步中所形成电子公文流程描述文档一并打包,发布到BPEL流程执行引擎。 以下为北京航空航天大学人事任免审批流程自动化实现过程中第二步和第三步的 详细实现过程。北京航空航天大学人事任免审批流程包括公文起草、各级领导审批、财务处登 记、档案处归档、公文派发五个步骤。流程如图3所示。 1.列出电子公文流程涉及的Web服务清单在开始编写BPEL流程定义之前,应先熟悉从业务流程中调用的Web服务。这些服务 称作合作伙伴Web服务。本实例使用的Web服务如下1) 公文发送服务(sendFileService)该服务是异步的;它指定了两个端口类型第一个端口类型sendFilePT用于使用 semiFileRequest操作提交带受理材料。为返回受理结果,该Web服务指定了第二个端 口类型sendFileCallbackPT。此端口类型指定sendFileResult操作。见图4。 〈portType name="sendFilePT"〉〈operation name=〃sendFileRequest〃〉〈i叩ut message=〃cslpa: sendFileRequestMessage7〉 </operation> 〈/portType><portType name=" sendFileCallbackPT 〃>"(operation name="sendFileResult"〉<input message=〃cslpa: sendFileReplyMessage〃/>〈/operation> </portType〉2) 公文提取服务(selectFileService)该服务是异步的;它指定了两个端口类型第一个端口类型selectFilePT用于使 用selectFileRequest操作提交带审查材料。为返回审查结果,该Web服务指定了第二 个端口类型selectFileCallbackPT。此端口类型指定selectFileResult操作。见图5。 〈portType name=〃selectFilePT"〉
<operation name=〃selectFileRequest"〉
〈input message=〃cslpa: selectFileRequestMessage7〉 〈/operation〉 〈/portType〉
〈portType name selectFileCallbackPT"〉
〈operation name二〃selectFileResult"
<input message="cslpa: selectFileReplyMessage7〉
</operation> </portType〉
2. 为BPEL流程定义WSDL
此流程需从它的客户端接收消息并返回结果,因此需要公开两个端口类型-OAProcessPortType端口类型和d印artmentCallBackPortType端口类型。 〈portType name二〃OAProcessPortType〃〉 〈operation name=〃process〃〉
〈i叩ut message=〃tns:0AProcessRequestMessage7〉 〈output message二〃tns:0APr*ocessResponseMessage7> 〈/operation〉 </portType〉
〈portType name=〃departmentCallBackPortType〃> 〈operation rmme=〃process〃〉
〈i叩ut message="tns:departroentCallBackRequestMessage7〉 〈output message=〃tns:departmentCallBackResponseMessage7〉 </oper£ition〉 〈/portType〉
3. 定义合作伙伴链接类型
合作伙伴链接类型表示BPEL流程与相关方(包括BPEL流程调用的Web服务以及调用BPEL流程的客户端)之间的交互。
本实例包含十二个不同的合作伙伴公文起草客户端、人事处公文发送服务、人事
处处长公文提取服务、人事处处长公文发送服务、校长公文提取服务、校长公文发送服 务、党委书记公文提取服务、党委书记公文发送服务、财务处公文提取服务、财务处公
文发送服务、档案处公文提取服务、档案处公文发送服务。理想情况下,每个Web服务 都应在WSDL中定义相应的合作伙伴链接类型。(实际情形可能不是这样的。)然后, 我们可以使用WSDL包装合作伙伴Web服务(导入Web服务的WSDL并定义合作伙伴链接 类型)。
对于本示例,定义了二个合作伙伴链接类型(每个类型位于Web服务的相应WSDL 中)-
OAProcessPL :用于描述公文起草客户端与此BPEL流程本身之间的交互。此交互 是同步交互。此合作伙伴链接类型在此BPEL流程的WSDL中定义。 <plnk:partnerLinkType name=〃OAProcessPL"> <plnk:role narae=〃OAProcessProvider〃>
<plnk:portType name=〃tns :0AProcessPortType7〉 </plnk:role> 〈/plnkpartnerLinkType>
d印artmentPL:用于描述此BPEL流程与各审批部门之间的交互。此交互是异步交互, 且受理服务对此BPEL流程调用一个回调。此合作伙伴链接类型在受理服务的WSDL中定 义。
〈plnk:partnerLinkType name="departmentPI/'> <plnk:role name=〃departmentProvider〃〉
〈plnk:portType'' rvame=〃FileOperation :File0peration7〉 </plnk:role〉
<plnk:role name=〃departmentCallBack"〉
<plnk: portType name-"tns: departmentCallBackPort.Type,〃/〉
〈/plnk:role〉 〈/plnk:partnerLinkType〉 4.创建业务流程 1)定义合作伙伴链接合作伙伴链接定义与此BPEL流程交互的不同方。每个合作伙伴链接都与描述其特性 的特定partnerLinkType相关。每个合作伙伴链接可最多指定两个属性-myRole:表明业务流程本身的龟色。 partnerRole:表明合作伙伴的角色。
RSC:用于描述公文起草客户端和此BPEL流程 〈partnerLink name二"RSC"
partnerLinkType nsxm10:0AProcessPl/' myRole="OAProcessProvider〃 /〉
RSCCZ:用于描述此BPEL流程与人事处处长 〈partenerLink name="RSCCZ"
partenerLinkType nsxmlO: departmentPL" myRole="departmentCallBack" partenerRole=〃departmentProvider" /〉
XZ:用于描述此BPEL流程与校长 〈partenerLink name XZ "
partenerLinkType二〃nsxmlO:departmentPL〃 myRole="departmentCallBack" partenerRole=〃departmentP:rovider" />
DWSJ:用于描述此BPEL流程与党委书记 〈partenerLink name="DWSJ""
partenerLinkType="nsxmlOd印artmentPL〃 myRole="departmentCallBack" paxtenerRole=〃departmentProvider" /〉
DAC:用于描述此BPEL流程与档案处 〈partenerLink rmme-"DAC〃
partenerLinkType=〃nsxmlO:departmentPL〃myRole-〃departmentCallBack〃
partenerRole departmentProvider〃
/〉
CWC:用于描述此BPEL流程与财务处 〈partenerLink name=" CWC "
partenerLinkType=〃nsxmlO:departmentPL myRole=〃departmentCallBack〃 partenerRole二〃d印artmentProvidei:〃 />
2)声明变量
BPEL流程中的变量用于存储消息以及对这些消息进行重新格式化和转换。需为发送 到合作伙伴以及从合作伙伴收到的每个消息定义一个变量。
需为每个变量指定类型。可以使用WSDL消息类型、XML模式简单类型或XML模式 元素。
〈variables〉
〈variable name=〃input〃 messageType=〃nsxml0:0AProcessRequestMessage7〉 〈variable name-〃output〃
messageType=〃nsxml0:0AP:rocessResponseMessage7〉
<variable name=〃departmentRequest"
messageType="nsxmll: saveXMLFileRequest7〉
<vaxiable name departnientResponseW
messageType=〃nsxmll: saveXMLFileResponse7〉
〈variable name=〃departmentCallBackRequest〃
messageType=〃nsxmlO:departmentCallBackRequestMessage7>
〈variable name="departmentCallBackResponse"
messageType二〃nsxm10: departmentCal lBackResponseMessage7>
<variable name=〃CWCRequest〃 messageType="nsxmll:saveXMLFileRequest7〉 〈variable name=〃DACRequest〃 messageType="nsxmll:saveXMLFileRequest7〉 〈vaxiable name二〃CWCCallBackRequest〃messageType=〃nsxmlO: dGpartmentCgnBackRequestMessage7〉
〈variable name="DACCallBackRequest〃 messageType-〃ns)anl0:ciepartmentCallBackRequestMessage7〉 </variables〉 3)编写流程逻辑定义
流程主体指定调用合作伙伴Web服务的顺序。它通常以〈seqiience〉(用于定义多 个将按顺序执行的操作)开始。 人事处起草电子公文
〈receivename=〃 接收人事处电子公文〃 partnerLink=〃RSC〃 por"tType nsxmlO:OAProcessPortType〃 operation=〃process" variaMe二〃input〃 createlnstance=〃yes〃〉 〈correlations〉
(correlation set=〃FWXY" initiate=〃yes7〉 </correlations〉 〈/receive〉 人事处处长审批
〈sequence name 人事处处长审批〃〉
< invoke name=〃发 送电 子公文〃 partnerLink二〃RSCCZ" portType=〃nsxmll: FileOperation〃 operation saveXMLFile〃 inputVariaMe=〃department Request" outputVariable=〃departmentResponse"/〉 〈receivename=〃 接 收 审 批 结 果 〃 createlnstance-〃no〃 partnerLink=〃RSCCZ"
portType二〃nsxmlO:departmentCallBackPortType〃 operation=〃process〃 variable=〃departmentCallBackRequest"〉 〈correlations〉
(correlation set FWXY7〉 </correlations〉 </receive〉
〈r印ly name=〃确认〃 partner*Link=〃RSCCZ〃说明书第12/15页portType=〃nsxmlO:departmentCal1BackPortType〃 operation="process"variable=〃departnientCallBackResponse7〉〈/sequence> 校长审批〈sequence name 校长审批"〉 〈invoke name-" 发 送 电 子 公 文 〃 partnerLink=〃XZ ' portType=〃nsxmll:FileOperation" operation="saveXMLFile' i叩utVariable department Request" outputVariable=〃departmentResponse7> 〈receive name二〃接收审批结果〃 createInstance="no" partnerLinf XZ "portType="nsxmlO:departmentCalIBackPortType" opera>tion=〃process〃 variable departmentCallBackRequest"〉 〈correl£Ltions><correlation set="FWXY7〉 〈/correlations〉 〈/receive>〈reply name=〃 确 认 〃 partnerLink=〃 XZ ' portType=〃nsxnilO:depa:rtnientCallBackPortType" opereition process〃variable=〃departmentCallBackResponse'7></sequence〉 党委书记审批〈sequence rmme二〃党委书记审批〃〉〈invoke name-〃 发 送 电 子 公 文 〃 partnerLink DWSJ力 portType=〃nsxmll:FileOperation〃 operation二〃saveXMLFile力 inputVariable=〃departmentRequestwoutputVariable-〃departmentResponse7〉 <receive name-〃接收审批结果〃 createlnstance二〃no〃 partnerLink=〃DWSJ〃portType二〃nsxm10 :d印artmentCallBackPortType〃 operation二"process" variable-"departmentCallBackRequest"〉 <correlations〉Correlation set=〃FWXY7〉 〈/correlations〉 〈/receive〉<replyname=〃 确 认 〃partnerLink=〃 DWSJ〃 portType=〃nsxmlO:departmentCallBackPortType" operation=〃process〃 variable=〃departmentCallBackResponse7〉〈/sequence〉 财务处登记〈sequence name二〃财务处登记〃〉〈invoke name=〃发送电子公文〃 partnerLink=〃CWC" portType=〃nsxmll:FileOperation〃 operation saveXMLFile〃 i叩utVariable-〃department Request" output Variable=〃departmentResponse7〉 〈receive name-〃接收审批结果〃 createlnstance二〃no〃 partnerUnk=〃 CWC "po:rtType二〃nsxml(hdepartmentCallBackPortType" operation二〃process〃 variable二〃departmentCal1BackRequest〃〉 <correlations〉(correlation set="FWXY〃/> </correlations> 〈/receive〉<reply name 确 认 〃 partnerLink=〃 CWC 〃 portType=〃nsxmlO:departmentCallBackPortType〃 operation=〃process〃 vaTiable=〃departmentCallBackResponse7〉〈/sequence〉档案处归档<sequence n鍵-〃档案处归档〃〉〈invoke name=〃发送电子公文〃 partnerLink=〃DAC〃 portType=〃nsxmll:FileOperation〃 operation=〃saveXMLFile〃 i叩utVariable-〃departmentRequest〃 outputVariable=〃departmentResponse'7〉 〈receive name-〃接收审批结果〃 createlnstance-〃no〃 partnerLink=〃 DAC "portType=〃nsxmlO:departmentCal1BackPortType〃 operation=〃process〃 variable="departmentCallBackRequest〃〉 〈correlations〉(correlation set=〃FWXY〃/〉 〈/cor:relatioris> </receive〉〈reply name=〃 确 认 〃 partnerLink=〃 DAC 〃 portType="nsxmlO:departmentCallBackPortType" operation="process〃 variable="departmentCallBackResponse〃/>〈/sequence> 派发电子公文〈flow name-〃派发电子公文〃〉〈invoke name=〃发送给人事处处长"partnerLink="RSCCZ〃 portType二"nsxmll:FileOperationPortType〃operation=〃saveXMLFile〃 inputVariable="departmentRequest〃 output Variab'le='"d'epartmentResponse7><invoke name=〃 发送给校长 〃 partnerLink=〃 XZ 〃 portType="nsxml1:FileOperationPortType"operation=〃saveXMLFile" i叩utVariabl..e:"d印aKtment Request" outputVariable=〃departmentResponse〃/〉<irwoke name=〃发送给党委书记〃 partnerUnk=〃DWSJ〃 portType="nsxnil 1: Fi le0perat ionPortType"operation=〃saveXMLFile〃 inputVariable=〃depa:rtnientRequest〃outputVa:riable=〃departmentResponse7></flow>本发明未详细描述部分属于本领域公知技术。以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员 来说,在不脱离本发明原理的前提下,还可以作出若干改进和润饰,这些改进和润饰也 应视为本发明的保护范围。
权利要求
1、基于Web服务的电子公文流转自动化方法,其特征在于包括以下步骤(1)通过定义XML结构定义文件XSD,构造XML形式的电子公文的复杂数据类型;(2)根据权利要求1步骤(1)中定义的电子公文复杂数据类型,为所要形成的电子公文流程描述文档定义Web服务描述文档WSDL;(3)根据步骤(1)中构造的电子公文的复杂数据类型,构造商业流程执行语言BPEL,形成电子公文流程描述文档;(4)将步骤(1)电子公文的复杂数据类型、步骤(2)中的Web服务描述文档WSDL和步骤(3)中所形成电子公文流程描述文档一并打包,发布到BPEL流程执行引擎。
2、 根据权利要求1所述的基于Web服务的电子公文流转自动化方法,其特征在于 所述步骤(1) XML形式的电子公文的复杂数据类型的方法为以"公文体"为根元素, 其子元素包括"眉首"、"主体"、"版记",每个元素又包含一个或多个子元素。
3、 根据权利要求l所述的基于Web服务的电子公文流转自动化方法,其特征在于 所述的步骤(2)为所要形成的电子公文流程描述文档定义Web服务描述文档WSDL包括 以下步骤A. 根据步骤(1)中定义的电子公文复杂数据类型,创建Types元素,描述Web服 务使用的数据类型;B. 根据步骤A中创建的Types元素,创建message元素,描述Web服务使用的消 息;C. 采用步骤B中创建的message元素创建Port Type元素,描述Web服务定义的 抽象操作;D. '创建binding元素,描述Web服务使用的通信协议;E. 创建service元素,描述服务的入口地址。
4、 根据权利要求l所述的基于Web服务的电子公文流转自动化方法,其特征在于 所述的步骤(3)构造商业流程执行语言BPEL,形成电子公文流程描述文档包括以下步 骤A. 列出电子公文流程中需要调用的Web服务清单;B. 根据所要形成的电子公文流程中涉及的参与者角色,采用商业流程执行语言BPEL 定义电子公文流程合作伙伴链接类型;C.根据步骤A中列出的Web服务清单和步骤B中的合作伙伴链接类型,采用商业流 程执行语言BPEL构造电子公文流程,从而形成电子公文流程描述文档。
5、 根据权利要求3所述的基于Web服务的电子公文流转自动化方法,其特征在于 所述的步骤C为(1) 根据步骤C所述的定义的电子公文流程合作伙伴链接类型,定义合作伙伴链接;(2) 声明电子公文流程中涉及的变量;(3) 根据步骤(1)中定义的合作伙伴链接和步骤(2)的声明的变量,采用商业流 程执行语言BPEL,将权利要求3步骤A中Web服务清单中列出的Web服务按照执行顺序 串联起来,编写电子公文流程的逻辑定义。
6、 根据权利要求3所述的基于Web服务的电子公文流转自动化方法,其特征在于 所述的步骤C中创建Port Type元素包括定义operation子元素,描述Web服务提供 的操作;定义i叩ut子元素,描述Web服务请求消息的参数;定义output子元素,描 述Web服务响应消息的参数。
7、 根据权利要求5所述的基于Web服务的电子公文流转自动化方法,其特征在于 所述的步骤U)定义合作伙伴链接包括以下步骤-(1)创建伙伴名称name元素;(2 )根据步骤C中定义的合作伙伴链接类型创建合作伙伴链接类型 partnerLinkType元素;(3) 创建partnerRole元素,描述合作伙伴的角色;(4) 创建myRole元素,描述电子公文流程本身的角色。
8、根据权利要求5所述的基于Web服务的电子公文流转自动化方法,其特征在于 所述的步骤(3)编写电子公文流程的逻辑定义包括以下步骤(1) 创建以下电子公文流程基本活动元素使用invoke元素表示调用Web服务, 使用receive元素表示等待客户端通过发送消息调用业务流程,使用r印ly元素表示生 成同步操作的响应,使用assign元素表示操作数据变量,使用throw元素指示故障和 异常,使用wait元素表示等待一段时间,使用terminate元素终止整个流程;(2) 创建以下电子公文流程结构活动元素使用sequence元素表示一组将按顺序 调用的活动,使用flow元素表示一组将并行调用的活动,使用switch元素实现分支, 使用while元素定义循环,使用pick元素选择多个替换路径之一。
全文摘要
基于Web服务的电子公文流转自动化方法,步骤为(1)通过定义XML结构定义文件XSD,构造XML形式的电子公文的复杂数据类型;(2)根据定义的电子公文复杂数据类型,为所要形成的电子公文流程描述文档定义Web服务描述文档WSDL;(3)构造商业流程执行语言BPEL,形成电子公文流程描述文档;(4)将步骤(1)电子公文的复杂数据类型、步骤(2)中的Web服务描述文档WSDL和步骤(3)中所形成电子公文流程描述文档一并打包,发布到BPEL流程执行引擎。本发明实现了电子公文可识别、可解析性以及高效的存储和传输,同时解决了电子公文自动化流转对跨部门跨地区的异构系统平台和数据库的支持,符合政府部门办公的实际需求。
文档编号G06Q10/00GK101320453SQ20081011699
公开日2008年12月10日 申请日期2008年7月22日 优先权日2008年7月22日
发明者斗 孙, 晶 李, 卓 赵, 马殿富 申请人:北京航空航天大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1