JP5235349B2 - フロー記述文書処理装置、フロー記述文書処理方法及びプログラム - Google Patents

フロー記述文書処理装置、フロー記述文書処理方法及びプログラム Download PDF

Info

Publication number
JP5235349B2
JP5235349B2 JP2007199236A JP2007199236A JP5235349B2 JP 5235349 B2 JP5235349 B2 JP 5235349B2 JP 2007199236 A JP2007199236 A JP 2007199236A JP 2007199236 A JP2007199236 A JP 2007199236A JP 5235349 B2 JP5235349 B2 JP 5235349B2
Authority
JP
Japan
Prior art keywords
description document
flow description
flow
document
web service
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2007199236A
Other languages
English (en)
Other versions
JP2009037310A (ja
JP2009037310A5 (ja
Inventor
晋吾 岩崎
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Inc
Original Assignee
Canon Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Canon Inc filed Critical Canon Inc
Priority to JP2007199236A priority Critical patent/JP5235349B2/ja
Priority to US12/172,975 priority patent/US8230330B2/en
Publication of JP2009037310A publication Critical patent/JP2009037310A/ja
Publication of JP2009037310A5 publication Critical patent/JP2009037310A5/ja
Application granted granted Critical
Publication of JP5235349B2 publication Critical patent/JP5235349B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/06Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/10Office automation; Time management

Landscapes

  • Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Human Resources & Organizations (AREA)
  • Strategic Management (AREA)
  • Economics (AREA)
  • Tourism & Hospitality (AREA)
  • Theoretical Computer Science (AREA)
  • Operations Research (AREA)
  • Quality & Reliability (AREA)
  • Marketing (AREA)
  • Physics & Mathematics (AREA)
  • General Business, Economics & Management (AREA)
  • General Physics & Mathematics (AREA)
  • Development Economics (AREA)
  • Data Mining & Analysis (AREA)
  • Educational Administration (AREA)
  • Game Theory and Decision Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Document Processing Apparatus (AREA)
  • Stored Programmes (AREA)
  • Devices For Executing Special Programs (AREA)

Description

本発明は、例えばWEBサービスフロー記述文書等を処理するための技術に関するものである。
従来、WEBサービスを順次実行させるためのWEBサービスフロー記述がなされた構造化文書を読み込み、その記述内容に従って、WEBサービスを順次実行させる技術が知られている。WEBサービスフロー記述は、例えば、WSBPEL(Web Service Business Process Execution Language)に従って記述されている。
WEBサービスフロー記述文書を読み込み、その記述内容に従ってWEBサービスを順次実行させるエンジンにおいては、本来、資源が豊富なパーソナルコンピュータ機器やサーバ機器上で運用するのが一般的である。また、登録されたWEBサービスフロー記述文書も別々に管理されているのも一般的であった。
また、複数のフロー記述又はフロー定義をいかに効率的に使用してフローを実行させるかを課題とした開発もなされている。特許文献1には、連携ワークの一覧を可能とし、同じ仕事をする複数のワークフロー管理システム間で、ワークフロー定義の再利用が可能な統合ワークフロー定義・実行方法が開示されている。
また、特許文献2には、複数のワークフローのプロセス定義から、類似プロセスを判断して、内部的に条件分岐を付加しながら、マージ又は再構成することで1つのワークフローとして統合させていく方法が開示されている。
特開平10−302002号公報 特開2005−276170号公報
ここで、資源(例えばメモリ)の少ないデバイス機器にWEBサービスフロー記述文書を読み込み、その記述内容に従ってWEBサービスを順次実行させるエンジンを搭載させて実行させる場合を考える。従来のようにWEBサービスフロー記述文書を管理する方法では、異なるWEBサービスフロー記述文書同士で一部共通記述部分がある場合でも、別々に管理しているために、機器内部で重複した情報を持つことになる。従って、その分メモリの使用量が増え、登録できるWEBサービスフロー記述文書の数などがより制限されるという問題があった。
上記特許文献1における方法は、ワークフロー管理システム毎に定義されているワークフロー定義から必要な定義部分を人間が取捨選択して抽出し、抽出した定義を組み合わせて新たにワークフロー定義を生成し、それを読み込ませてフローを実行する。但し、本方法では、取捨選択先の個々のワークフロー定義の中の一部の情報が重複しているかまでは考慮していない。そのため、仮にこの方法で同一機器内部において個々のワークフロー定義を管理するとしても、個々のワークフロー定義間で重複した情報を持つ可能性があり、メモリの使用量を減らすには至らなかった。
上記特許文献2における方法は、既に登録されているワークフロー用の複数のプロセス定義を検索し、検索された複数のプロセス定義をマージ又は再構成するものであり、個々に登録されているプロセス定義中の一部の情報が重複しているかまでは考慮していない。そのため、個々のプロセス定義間で重複した情報を持つ可能性があり、メモリの使用量を減らすには至らなかった。
そこで、本発明の目的は、記録媒体の使用量を減少させることにある。
本発明のフロー記述文書処理装置は、第1のフロー記述文書及び第2のフロー記述文書を入力する入力手段と、前記第1のフロー記述文書と前記第2のフロー記述文書との間で記述が共通した共通部分を判断する判断手段と、前記第2のフロー記述文書のうち前記判断手段により判断された前記共通部分を、前記共通部分を含まない、前記第1のフロー記述文書の前記共通部分を参照するための参照記述に変換する変換手段と、前記変換された参照記述を、フロー処理実行時に前記第1のフロー記述文書の前記共通部分の実行形式を参照して実行する実行形式に展開して、記録媒体に格納する格納手段とを有することを特徴とする。
発明によれば、第1のフロー記述文書と第2のフロー記述文書との間で記述が共通した共通部分を重複して記録媒体に格納することがなくなるため、記録媒体の使用量を減少させることが可能となる。
以下、本発明を適用した好適な実施形態を、添付図面を参照しながら詳細に説明する。
図1は、本発明の実施形態に係るWEBサービスフロー記述文書再利用処理装置(フロー記述文書処理装置)の適用例を説明するための図である。
図1において、101は、コピー、スキャン、プリント等の処理を行うことができる複合機である。この複合機には、WEBサービスフロー記述文書を読み込み、その記述内容に従ってWEBサービスを順次実行させることが可能な、WEBサービスフロー処理装置102が搭載されている。さらに、WEBサービスフロー処理装置102内部に、WEBサービスフロー記述文書再利用処理装置(フロー記述文書処理装置)103が搭載されている。
104は、WEBサービスフロー記述文書パッケージである。WEBサービスフロー記述文書パッケージ104は、第一WEBサービスフロー記述文書105、検索処理サービス用WSDL文書106、レイアウト処理サービス用WSDL文書107及びストレージ処理サービス用WSDL文書108を1つに纏めたものである。検索処理サービス用WSDL文書106、レイアウト処理サービス用WSDL文書107及びストレージ処理サービス用WSDL文書108は、WEBサービスインタフェース記述文書である。以下では、WEBサービスインタフェース記述文書をWSDL(Web Services Description Language)文書と称す。なお、第一WEBサービスフロー記述文書105は、本発明の第1のフロー記述文書の一適用例である。
ここで、第一WEBサービスフロー記述文書105の記述内容を説明する。第一WEBサービスフロー記述文書105には、次の内容が記述されている。即ち、クライアント109から検索キーワードを付加したリクエストを受け取り、検索キーワードを付加した検索処理サービス用のリクエストメッセージを生成し、検索処理サービス110に対してリクエストを行う。検索処理サービス110としては、ニュース検索サービスや書籍検索サービス等が挙げられる。
そして、そのレスポンスとして、検索結果を受け取り、検索結果を付加したレイアウト処理サービス用のリクエストメッセージを生成する。次に、検索結果をレイアウトし、例えばPDFファイルやSVGファイル等に変換するレイアウト処理サービス111に対してリクエストを行い、そのレスポンスとして、レイアウト結果を受け取る。
続いて、レイアウト結果を付加したストレージ処理サービス112用のリクエストメッセージを生成し、受け取ったファイル等を保管するストレージ処理サービス112に対してリクエストを行う。最後に、ストレージ処理結果(例えば保管成功、失敗等)を受け取り、ストレージ処理結果を付加したレスポンスメッセージを生成し、クライアント109へ返信する。以上のような流れでフロー処理を行うように第一WEBサービスフロー記述文書105は記述されている。
WEBサービスフロー記述文書再利用処理装置103は、WEBサービスフロー記述文書パッケージ104を読み込む。そして、WEBサービスフロー記述文書再利用処理装置103は、複合機内部の記憶領域(例えばハードディスクやメモリ)に情報が重複しないようにWEBサービスフロー処理装置102が実行可能な形式にして情報を展開する。WEBサービスフロー処理装置102は、その展開された情報に基づいてフロー処理を実行する。
次に、WEBサービスフロー記述文書パッケージ104を読み込んだ状態の複合機101に対して、WEBサービスフロー記述文書パッケージ113を読み込ませたときの処理概要を説明する。
WEBサービスフロー記述文書パッケージ113は、第二WEBサービスフロー記述文書114、検索処理サービス用WSDL文書115、レイアウト処理サービス用WSDL文書116、ストレージ処理サービス用WSDL文書117及び印刷処理サービス用WSDL文書118を1つに纏めたものである。なお、第二WEBサービスフロー記述文書114は、本発明の第2のフロー記述文書の一適用例である。
ここで、第二WEBサービスフロー記述文書114の記述内容を説明する。第二WEBサービスフロー記述文書114には、次の内容が記述されている。即ち、クライアント109から検索キーワードを付加したリクエストを受け取り、検索キーワードを付加した検索処理サービス用のリクエストメッセージを生成し、検索処理サービス110に対してリクエストを行う。
そして、そのレスポンスとして、検索結果を受け取り、検索結果を付加したレイアウト処理サービス用のリクエストメッセージを生成する。次に、検索結果をレイアウトし、例えばPDFファイルやSVGファイル等に変換するレイアウト処理サービス111に対してリクエストを行い、そのレスポンスとして、レイアウト結果を受け取る。
続いて、レイアウト結果を付加したストレージ処理サービス用のリクエストメッセージを生成し、受け取ったファイル等を保管するストレージ処理サービス112に対してリクエストを行う。続いて、ストレージ処理結果(例えば保管成功、失敗等)を受け取り、さらに、レイアウト結果を付加した印刷処理サービス用のリクエストメッセージを生成し、レイアウト結果を印刷する印刷処理サービス119に対してリクエストを行う。プリンタ120で印刷が行われ、レスポンスとして、印刷処理結果(例えば印刷受付成功、失敗など)を受け取り、印刷処理結果を付加したレスポンスメッセージを生成し、クライアント109へ返信する。以上のような流れでフロー処理を行うように第二WEBサービスフロー記述文書114は記述されている。
第一WEBサービスフロー記述文書105と第二WEBサービスフロー記述文書114とを比較すると、レイアウト結果をストレージ処理サービス112にリクエストするフロー処理記述までは同じ内容が記述されている。そして、第二WEBサービスフロー記述文書114には、レイアウト結果を印刷処理サービス119にリクエストするフロー処理が追加されていることがわかる。同様に、106〜108のWSDL文書も115〜117のWSDL文書とそれぞれ同一のものであり、印刷処理サービス用WSDL文書118だけが異なる。このように、既に登録されている情報と共通の情報を含んだWEBサービスフロー記述文書を登録させるような場合、本実施形態のように、重複した情報を共通化して保持することが可能なWEBサービスフロー記述文書再利用処理装置103が有効になる。
次に、WEBサービスフロー記述文書再利用処理装置103の処理内容をWEBサービスフロー記述文書の具体例を用いて説明する。
図2において、201は、第一WEBサービスフロー記述文書105のフロー処理記述の構成を示したものである。201はプログラムでいう変数宣言等を記述する宣言部202と、フロー処理のロジック等を記述するロジック部203とから構成されている。
204は、WEBサービスフロー記述文書を特定する情報及び呼び出し先各WEBサービスのWSDL文書を特定する情報が記述されている。205は、WEBサービスフロー処理で用いる変数情報が記述されている。206は、クライアントからリクエストメッセージを受信する処理内容が記述されている。
207は、受信したクライアントリクエストメッセージから検索キーワードを抽出し、検索処理サービス用WSDL文書106の情報を基に、検索キーワードを付加した形で検索処理サービス110へのリクエストメッセージを生成する処理内容が記述されている。
208は、生成したリクエストメッセージを用いて検索処理サービス110を呼び出し、検索処理を行わせ、検索結果のレスポンスメッセージを受信する処理内容が記述されている。209は、受信した検索結果のレスポンスメッセージから検索結果を抽出し、レイアウト処理サービス用WSDL文書107の情報を基に、検索結果を付加した形でレイアウト処理サービス111へのリクエストメッセージを生成する処理内容が記述されている。
210は、生成したリクエストメッセージを用いてレイアウト処理サービス111を呼び出し、レイアウト処理を行わせ、レイアウト結果のレスポンスメッセージを受信する処理内容が記述されている。211は、受信したレイアウト結果のレスポンスメッセージからレイアウト結果を抽出し、ストレージ処理サービス用WSDL文書108の情報を基に、レイアウト結果を付加した形でストレージ処理サービス112へのリクエストメッセージを生成する処理内容が記述されている。
212は、生成したリクエストメッセージを用いてストレージ処理サービス112を呼び出し、ストレージ処理を行わせ、ストレージ処理結果のレスポンスメッセージを受信する処理内容が記述されている。213は、受信したストレージ処理結果のレスポンスメッセージからストレージ処理結果を抽出し、その結果を付加した形でクライアントへのレスポンスメッセージを生成する処理内容が記述されている。214は、生成したレスポンスメッセージを用いて、クライアントへ返信する処理内容が記述されている。
215は、201で示したWEBサービスフロー記述文書の構成例に基づく具体的なWEBサービスフロー記述文書の例である。ここでは、WSBPELというWEBサービスの処理フローをXML(eXtensible Markup Language)文書で記述するための標準仕様になっている方式で記述されている。以下、201で示したWEBサービスフロー記述文書の構成と、WEBサービスフロー記述文書215とを比較する。WSBPELは、Web Service Business Process Execution Languageの略称である。
216は、204の記述内容に対応する。216には、WEBサービスフロー記述文書を特定する情報及び呼び出し先各WEBサービスのWSDL文書を特定する情報が、<process>タグの属性値としてネームスペースで記述されている。
217は、205の記述内容に対応する。217には、フロー処理を行うときに使用するメッセージ変数の型情報がそれぞれ<variable>タグで記述されている。218は、206の記述内容に対応する。218には、クライアントからリクエストメッセージを受信する処理内容が、<receive>タグで記述されている。
219は、207の記述内容に対応する。219には、受信したクライアントリクエストメッセージから検索キーワードを抽出し、検索処理サービス用WSDL文書106の情報を基に、検索キーワードを付加した形で検索処理サービス110へのリクエストメッセージを生成する処理内容が、<assign>タグ等で記述されている。
220は、208の記述内容に対応する。220には、生成したリクエストメッセージを用いて検索処理サービス110を呼び出し、検索処理を行わせ、検索結果のレスポンスメッセージを受信する処理内容が、<invoke>タグで記述されている。同様にして、221〜225は、209〜213の処理内容にそれぞれ対応している。
226は、214の記述内容に対応する。226には、クライアントにレスポンスメッセージを返信する処理内容が<reply>タグで記述されている。以上のように203のロジック部の記述内容に対応する<receive>,<assign>,<invoke>,<reply>タグは、WSBPELではアクティビティと呼ぶ。<receive>タグはメッセージの受信に係るWEBサービスフロー処理の表現を抽象化したものである。<assign>タグはメッセージの加工、変換に係るWEBサービスフロー処理の表現を抽象化したものである。<invoke>タグは外部のWEBサービスの呼び出しに係るWEBサービスフロー処理の表現を抽象化したものである。<reply>タグは、メッセージの返信に係るWEBサービスフロー処理の表現を抽象化したものである。
図3においても図2と同様に、301に第二WEBサービスフロー記述文書114のフロー処理記述をWSBPELで示す。第一WEBサービスフロー記述文書105と第二WEBサービスフロー記述文書114とのフロー処理の違いは、最後に印刷処理をさせるか、させないかの違いである。301のWSBPELにおいても印刷処理に関する記述部分が215のWSBPELに追加されたものになる。
302は、301のWSBPELを一意に特定するネームスペースが記述されている。303は、印刷処理サービス119のWSDL文書を特定するネームスペースが記述されている。304は、印刷処理サービスに関連するフロー処理を行うときに使用するメッセージ変数の型情報が<variable>タグで記述されている。
305は、受信したレイアウト処理サービスからのレスポンスメッセージからレイアウト結果を抽出し、印刷処理サービス用WSDL文書118の情報を基に、レイアウト結果を付加した形で印刷処理サービス119へのリクエストメッセージを生成する処理内容が<assign>タグ等で記述されている。
306は、生成したリクエストメッセージを用いて印刷処理サービス119を呼び出し、印刷処理を行わせ、印刷処理結果(例えば印刷受付終了、失敗等)のレスポンスメッセージを受信する処理内容が<invoke>タグで記述されている。
307は、受信した印刷処理サービスからのレスポンスメッセージから印刷処理結果を抽出し、印刷処理結果を付加した形でクライアントへのレスポンスメッセージを生成する処理内容が<assign>タグ等で記述されている。
図4は、WEBサービスフロー記述文書再利用処理装置(フロー記述文書処理装置)103の処理を示すフローチャートである。
ステップS401において、WEBサービスフロー記述文書再利用処理装置103は、WEBサービスフロー記述文書パッケージを受信する。ステップS402において、WEBサービスフロー記述文書再利用処理装置103は、受信したWEBサービスフロー記述文書パッケージからWEBサービスフロー記述文書とWSDL文書とを抽出する。ステップS401は、本発明の入力手段の一処理例である。
ステップS403において、WEBサービスフロー記述文書再利用処理装置103は、抽出したWSDL文書をパースし、このWSDL文書を特定するためのネームスペースを抽出する。
ステップS404において、WEBサービスフロー記述文書再利用処理装置103は、抽出したネームスペースをキーにして、既にこのWSDL文書が記憶領域400に登録されているか確認する。同一のWSDL文書がまだ登録されていなければステップS405からステップS406に進み、WEBサービスフロー記述文書再利用処理装置103は、このWSDL文書を記憶領域400に登録する。登録後はステップS407に進む。記憶領域400では、ネームスペースをキーとしてWSDL文書を管理する。
ステップS404において、同一のWSDL文書が既に登録されている場合には、ステップS405からステップS407に進む。ステップS407において、WEBサービスフロー記述文書再利用処理装置103は、WEBサービスフロー記述文書パッケージ内に登録作業をしていないWSDL文書がまだ残っているかを確認する。まだ残っていればステップS408からステップS403に戻って処理を繰り返す。残っていなければ、ステップS409に進む。
ステップS409において、WEBサービスフロー記述文書再利用処理装置103は、記憶領域400に他のWEBサービスフロー記述文書が既に登録されているか確認する。既に他のWEBサービスフロー記述文書が登録されていれば、ステップS410からステップS411に進む。
ステップS411において、WEBサービスフロー記述文書再利用処理装置103は、ステップS402で抽出したWEBサービスフロー記述文書と、記憶領域400に既に登録されている他のWEBサービスフロー記述文書とを比較する。そして、ステップS412において、WEBサービスフロー記述文書再利用処理装置103は、それらの文書の間で処理を共通化できる記述部分があるかを解析する。ステップS412は、本発明の判断手段の一処理例である。
解析した結果、共通化できる記述部分があると判断したら、ステップS412からステップS413に進む。ステップS413において、WEBサービスフロー記述文書再利用処理装置103は、後から登録するステップS402で抽出したWEBサービスフロー記述文書の共通化できる部分を、既に登録されているWEBサービスフロー記述文書への参照情報に変換する。ステップS413は、本発明の変換手段の一処理例である。
ステップS414において、WEBサービスフロー記述文書再利用処理装置103は、参照情報に変換されたWEBサービスフロー記述文書とWEBサービスフロー記述文書そのものとをWEBサービスフロー処理装置102が実行可能な形式にする。そして、WEBサービスフロー記述文書再利用処理装置103は、WEBサービスフロー処理装置102が実行可能な形式に変換されたWEBサービスフロー記述文書を記憶領域400に登録する。このとき、WEBサービスフロー記述文書は、参照情報に基づいて他のWEBサービスフロー記述文書を参照可能なように記憶領域400に格納される。この処理は、本発明の格納手段の一処理例である。
ステップS412において共通化できる記述部分が無いと判断されたら、ステップS413を実行することなく、処理はステップS414に進む。このときのステップS414においては、WEBサービスフロー記述文書そのもののみがWEBサービスフロー処理装置102によって実行可能な形式に変換され、記憶領域400に登録される。
図5において、図4のステップS411の比較解析処理の具体例を簡単に示す。501は、第一WEBサービスフロー記述文書105をWSBPELで示したものであり、502は、第二WEBサービスフロー記述文書114をWSBPELで示したものである。両者を例えば文字列比較すると503及び504の記述部分が同一であると判断できる。
同様に図6において、図4のステップS411の比較解析処理のもう1つの具体例を簡単に示す。601は、501のWSBPELを一度読み込みツリー構造にした図である。同様に602は、502のWSBPELを一度読み込みツリー構造にした図である。このように一度WSBPELを読み込み、ツリー構造に展開してから、構造や属性値の比較によって例えば603及び604の部分が共通化可能部分であると判断する。図5及び図6にステップS411の比較解析処理の簡単な具体例を記述したが、これらの方法に限定されるものではない。
図7において、図4のステップS413の共通化可能部分を参照情報に変換する処理の具体例を示す。701は、501のWSBPELをそのまま示したものであり、702は、502のWSBPELの中で共通化可能部分を参照情報に置き換えた形で示したものである。具体的には、704に示すように共通化可能部分を、target属性、from属性、to属性を持つ<link>タグに置き換える。target属性には、 HYPERLINK "http://www.sample.com/bpel1" http://www.sample.com/bpel1という701のWSBPELを特定するネームスペースを設定し、from属性には、703に示す<variable>タグの0番目からという意味を示す。そのため、XPath式/variables/variable[0]で指定し、to属性には、703に示す<variable>タグの7番目までという意味を示すために、XPath式/variables/variable[7]で指定する。これにより、703に示す記述部分を参照することが可能になる。同様にして、706においても<link>タグに置き換えることで、705に示す記述部分を参照することが可能になる。以上のように共通化可能部分を参照情報に変換する。なお、XPathとは、XML Path Languageの略称である。
図8において、図4のステップS414のWEBサービスフロー記述文書をWEBサービスフロー処理装置102が実行可能な形式にして、記憶領域400に登録する処理の流れを説明する。
801は、701のWSBPELから<sequence>タグで囲まれたロジック部の情報だけを示したものであり、802も同様に702のWSBPELから<sequence>タグで囲まれたロジック部の情報だけを示したものである。803の参照記述部分から804のロジック部分の一部を参照している。
805は、図4のステップS414のWEBサービスフロー記述文書をWEBサービスフロー処理装置102が実行可能な形式にして、記憶領域400に登録する処理を示した部分になる。
806において、801のWSBPELを読み込むと、807の記憶領域に808に示すようにWSBPELを実行できるインスタンス形式に展開する。そして、809において、クライアント又は他のWEBサービスフロー処理からの実行指示、つまりリクエストがあるまで、リクエストをいつでも受け付ける状態で待っている。
同様に、802のWSBPELを読み込むと、807の記憶領域に810に示すようにWSBPELを実行できるインスタンス形式に展開する。このとき803の<link>タグの情報もそのままインスタンス形式811として展開する。812において、クライアントもしくは他のWEBサービスフロー処理からの実行指示、つまりリクエストがあるまで、リクエストをいつでも受け付ける状態で待っている。
813はWEBサービスフロー処理装置102であり、クライアント814から812に対して802のWSBPELの実行リクエスト815があると、816において810のインスタンス情報をもとに802のWSBPELの内容を順次実行する。そして、WEBサービスフロー処理装置102は、803の<link>タグ部分を実行する順番がきたら、<link>タグの情報もそのままインスタンス形式にした811のインスタンス情報をもとに実行する。
<link>タグの情報もそのままインスタンス形式にした811には、801のWSBPELの一部を参照して実行するという内容になっているので、WEBサービスフロー処理装置102は、809に対して実行指示を出す。809は<link>タグの情報をそのままインスタンス形式にしたインスタンスからの実行指示なので、WEBサービスフロー処理装置102は、808のインスタンスにおいて実行する部分を特定し、817において実行する。
WEBサービスフロー処理装置102は、その処理を実行し終わったら呼び出しもとの816に終了通知を出し、816で残りのフロー処理を実行する。フロー処理が終わったら、WEBサービスフロー処理装置102は、817で呼び出しもとのクライアントへ返信する。
以上のように、本実施形態では、複数のWEBサービスフロー記述文書の登録時に、処理の共通化が可能な記述部分を重複して持たない、そして、そのまま読み込んで実行可能となるWEBサービスフロー記述文書に変換するようにしている。従って、本実施形態によれば、できるだけ資源(例えばハードディスク、メモリなど)の使用量を抑えながら、一連のWEBサービスフロー処理を実現することが可能となる。
図9は、本発明の実施形態に係るWEBサービスフロー記述文書再利用処理装置(フロー記述文書処理装置)の構成を示す図である。
図9に示されるように、WEBサービスフロー記述文書再利用処理装置は、ハードウェア構成として、入力装置901、表示装置902、記録媒体ドライブ装置903、ROM905、RAM906、CPU又はMPU907、インタフェース装置908及びHD(ハードディスク)909を含む。
入力装置901は、WEBサービスフロー記述文書再利用処理装置の操作者(オペレータ)が操作するキーボード及びマウス等で構成され、情報処理装置に各種操作情報等を入力するのに用いられる。
表示装置902は、WEBサービスフロー記述文書再利用処理装置の操作者が利用するディスプレイ等で構成され、各種情報(又は画面)等を表示するのに用いられる。インタフェース装置908は、WEBサービスフロー記述文書再利用処理装置をネットワーク等に接続するインタフェースである。
前述したフローチャート等に係るプログラムは、例えばCD−ROM等の記録媒体904によって情報処理装置(コンピュータ)に提供されるか、ネットワーク等を通じてダウンロードされる。
記録媒体904は、記録媒体ドライブ装置903にセットされ、プログラムが記録媒体904から記録媒体ドライブ装置903を介してHD909にインストールされる。ROM905は情報処理装置の電源投入時に最初に読み込まれるプログラム等を格納する。
RAM16は、情報処理装置のメインメモリである。CPU907は、HD909よりプログラムを読み出してRAM906に格納し、プログラムを実行することで、図4に示すフローチャートを実現したりする。また、RAM16は、記憶領域407や809にも相当する構成である。HD909は、プログラム以外に例えばWEBサービスフロー記述文書、WSDL文書等を格納する。
以上、本発明の好ましい実施形態について詳述したが、本発明に係る特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形・変更が可能である。
本発明の実施形態に係るWEBサービスフロー記述文書再利用処理装置(フロー記述文書処理装置)の適用例を説明するための図である。 WEBサービスフロー記述文書の例を示す図である。 WEBサービスフロー記述文書の例を示す図である。 WEBサービスフロー記述文書再利用処理装置の処理を示すフローチャートである。 図4のステップ411の処理の具体例を示した図である。 図4のステップ411の処理の具体例を示した図である。 図4のステップ413の処理の具体例を示した図である。 図4のステップ414の処理の具体例を示した図である。 本発明の実施形態に係るWEBサービスフロー記述文書再利用処理装置のハードウェア構成の一例を示す図である。
符号の説明
101 複合機
102 WEBサービスフロー処理装置
103 WEBサービスフロー記述文書再利用処理装置(フロー記述文書処理装置)
104、113 WEBサービスフロー記述文書パッケージ
105 第一WEBサービスフロー記述文書
106、115 検索処理サービス用WSDL
107、116 レイアウト処理サービス用WDSL
108、117 ストレージ処理サービス用WDSL
109 クライアント
110 検索処理サービス
111 レイアウト処理サービス
112 ストレージ処理サービス
114 第二WEBサービスフロー記述文書
118 印刷処理サービス用WDSL
119 印刷処理サービス
120 プリンタ

Claims (9)

  1. 第1のフロー記述文書及び第2のフロー記述文書を入力する入力手段と、
    前記第1のフロー記述文書と前記第2のフロー記述文書との間で記述が共通した共通部分を判断する判断手段と、
    前記第2のフロー記述文書のうち前記判断手段により判断された前記共通部分を、前記共通部分を含まない、前記第1のフロー記述文書の前記共通部分を参照するための参照記述に変換する変換手段と
    前記変換された参照記述を、フロー処理実行時に前記第1のフロー記述文書の前記共通部分の実行形式を参照して実行する実行形式に展開して、記録媒体に格納する格納手段とを有することを特徴とするフロー記述文書処理装置。
  2. 前記参照記述は、前記第1のフロー記述文書の識別情報と、前記共通部分の最初のタグと最後のタグとを特定するための情報とを含むことを特徴とする請求項1に記載のフロー記述文書処理装置。
  3. 前記第1のフロー記述文書における前記共通部分により呼び出されるサービスは、前記第2のフロー記述文書によって呼び出されるサービスの少なくとも一部であることを特徴とする請求項1又は2に記載のフロー記述文書処理装置。
  4. 前記第1のフロー記述文書と、前記共通部分が前記参照記述に変換された前記第2のフロー記述文書とを、前記参照記述に基づいて前記第2のフロー記述文書から前記第1のフロー記述文書を参照可能な記録媒体に格納する格納手段を有することを特徴とする請求項1乃至3の何れか1項に記載のフロー記述文書処理装置。
  5. 前記第1のフロー記述文書と、前記共通部分が前記参照情報に変換された前記第2のフロー記述文書とは、実行可能な形式で前記記録媒体に記録されることを特徴とする請求項4に記載のフロー記述文書処理装置。
  6. 入力されるWEBサービスインタフェース記述文書と同一のWEBサービスインタフェース記述文書が既に登録されているか否かを判定し、前記同一のWEBサービスインタフェース記述文書が未だ登録されていない場合、前記入力されるWEBサービスインタフェース記述文書を登録する登録手段を有することを特徴とする請求項1乃至の何れか1項に記載のフロー記述文書処理装置。
  7. 前記参照記述は、XPath(XML Path Language)式を用いて記述されることを特徴とする請求項1乃至の何れか1項に記載のフロー記述文書処理装置。
  8. 入力手段と判断手段と変換手段とを有するフロー記述文書処理装置により実行されるフロー記述文書処理方法であって、
    前記入力手段が、第1のフロー記述文書及び第2のフロー記述文書を入力する入力ステップと、
    前記判断手段が、前記第1のフロー記述文書と前記第2のフロー記述文書との間で記述が共通した共通部分を判断する判断ステップと、
    前記変換手段が、前記第2のフロー記述文書のうち前記判断ステップにより判断された前記共通部分を、前記共通部分を含まない、前記第1のフロー記述文書の前記共通部分を参照するための参照記述に変換する変換ステップと
    前記変換された参照記述を、フロー処理実行時に前記第1のフロー記述文書の前記共通部分の実行形式を参照して実行する実行形式に展開して、記録媒体に格納する格納ステップとを有することを特徴とするフロー記述文書処理方法。
  9. 第1のフロー記述文書及び第2のフロー記述文書を入力する入力手順と、
    前記第1のフロー記述文書と前記第2のフロー記述文書との間で記述が共通した共通部分を判断する判断手順と、
    前記第2のフロー記述文書のうち前記判断手順により判断された前記共通部分を、前記共通部分を含まない、前記第1のフロー記述文書の前記共通部分を参照するための参照記述に変換する変換手順と
    前記変換された参照記述を、フロー処理実行時に前記第1のフロー記述文書の前記共通部分の実行形式を参照して実行する実行形式に展開して、記録媒体に格納する格納手順とをコンピュータに実行させるためのプログラム。
JP2007199236A 2007-07-31 2007-07-31 フロー記述文書処理装置、フロー記述文書処理方法及びプログラム Active JP5235349B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2007199236A JP5235349B2 (ja) 2007-07-31 2007-07-31 フロー記述文書処理装置、フロー記述文書処理方法及びプログラム
US12/172,975 US8230330B2 (en) 2007-07-31 2008-07-14 Rewriting a part of a first flow description document into a reference to a corresponding part of a second flow description document

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2007199236A JP5235349B2 (ja) 2007-07-31 2007-07-31 フロー記述文書処理装置、フロー記述文書処理方法及びプログラム

Publications (3)

Publication Number Publication Date
JP2009037310A JP2009037310A (ja) 2009-02-19
JP2009037310A5 JP2009037310A5 (ja) 2010-09-16
JP5235349B2 true JP5235349B2 (ja) 2013-07-10

Family

ID=40339301

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007199236A Active JP5235349B2 (ja) 2007-07-31 2007-07-31 フロー記述文書処理装置、フロー記述文書処理方法及びプログラム

Country Status (2)

Country Link
US (1) US8230330B2 (ja)
JP (1) JP5235349B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5361470B2 (ja) 2009-03-16 2013-12-04 キヤノン株式会社 情報処理装置及びその制御方法

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07325827A (ja) * 1994-04-07 1995-12-12 Mitsubishi Electric Corp ハイパーテキスト自動生成装置
JPH1049356A (ja) * 1996-07-31 1998-02-20 Matsushita Electric Ind Co Ltd メディアフロー制御システム
JPH10302002A (ja) 1997-04-25 1998-11-13 Nippon Telegr & Teleph Corp <Ntt> 統合ワークフロー定義・実行方法及びシステム及び統合ワークフロー定義・実行プログラムを格納した記憶媒体
JP2000222392A (ja) * 1999-01-29 2000-08-11 Mitsubishi Electric Corp 文書管理システム
US7047281B1 (en) * 2000-08-08 2006-05-16 Fineground Networks Method and system for accelerating the delivery of content in a networked environment
US7437662B1 (en) * 2001-06-15 2008-10-14 Oracle International Corporation Representing deltas between XML versions using XSLT
GB2381340A (en) * 2001-10-27 2003-04-30 Hewlett Packard Co Document generation in a distributed information network
JP3863041B2 (ja) * 2002-03-19 2006-12-27 株式会社ジャストシステム 文書作成システム、文書テンプレート登録装置及び方法、プログラム、並びに文書テンプレート登録データ
JP2003345783A (ja) * 2002-05-29 2003-12-05 Macby Katagai Inc 文書作成方法
JP4018528B2 (ja) * 2002-12-26 2007-12-05 株式会社東芝 文書処理装置、文書処理方法およびプログラム
JP4134824B2 (ja) * 2003-06-20 2008-08-20 富士ゼロックス株式会社 情報処理装置及びプログラム
JP4625337B2 (ja) 2004-02-23 2011-02-02 株式会社リコー プロセス管理装置、プロセス管理方法及びプロセス管理プログラム
US7620889B2 (en) * 2004-12-20 2009-11-17 Microsoft Corporation Method and system for linking data ranges of a computer-generated document with associated extensible markup language elements
US8375372B2 (en) * 2005-02-23 2013-02-12 International Business Machines Corporation Business process execution language program simulation
JP2006276988A (ja) * 2005-03-28 2006-10-12 Nec Corp 構造化文書作成装置、構造化文書作成プログラム及び構造化文書作成方法
US7913161B2 (en) * 2006-05-08 2011-03-22 Enwisen, Inc. Computer-implemented methods and systems for electronic document inheritance
US7895512B2 (en) * 2006-09-21 2011-02-22 International Business Machines Corporation Capturing and processing change information in a web-type environment

Also Published As

Publication number Publication date
US8230330B2 (en) 2012-07-24
JP2009037310A (ja) 2009-02-19
US20090037811A1 (en) 2009-02-05

Similar Documents

Publication Publication Date Title
JP5199761B2 (ja) 情報処理装置と画像入力装置、文書配信システムとそれらの制御方法
US20090122333A1 (en) Cooperative job flow creating apparatus, cooperative job flow creating method, service processing apparatus, service processing method, management server, flow conversion method, job flow execution method, program, and storage medium
US7418632B2 (en) Service processing system, processing result management device and processing result checking method of service processing system
CN101964855A (zh) 信息处理装置及信息处理方法
JP5157690B2 (ja) 画像形成装置、情報処理方法、及び、画像形成システム
US20100046029A1 (en) Document management system
JP5804749B2 (ja) データ処理装置、データ処理方法およびプログラム
US20110067088A1 (en) Image processing device, information processing method, and recording medium
US20090063612A1 (en) Image forming apparatus and image forming system
US20100220352A1 (en) Image forming apparatus, image forming system, and information processing method
US20080024834A1 (en) Information registration apparatus for registering information onto registering destination on network and method thereof
US8069234B2 (en) Web service execution method, processing method and apparatus
JP4677355B2 (ja) Webサービス装置及び順次処理移譲方法
JP2010027007A (ja) 処理装置、要求装置、及びそれらの処理方法
US20090282150A1 (en) Service flow processing apparatus and method
JP5235349B2 (ja) フロー記述文書処理装置、フロー記述文書処理方法及びプログラム
US20080086492A1 (en) Information processing apparatus, image processing apparatus, data conversion method, and computer-readable medium storing data conversion program
JP2007081955A (ja) 情報処理装置及び方法、並びにプログラム
JP2005050018A (ja) 文書ファイル管理装置及びデータ構造
US20090064201A1 (en) Image Forming Apparatus, Application Management Method, and Computer-Readable Recording Medium Having Application Management Program
US20080307421A1 (en) Flow process execution method, apparatus and program
JP2006163901A (ja) ネットワーク機器、プログラムおよび記録媒体
JP2005050017A (ja) 文書ファイル管理装置、文書ファイル管理方法及びデータ構造
JP5142773B2 (ja) メッセージ生成処理方法及びメッセージ生成処理装置
JP2006202176A (ja) 文書管理システムおよび文書管理方法

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100729

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20100729

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120731

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120927

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20121211

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130208

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20130226

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130326

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20160405

Year of fee payment: 3