JP2010204985A - 文書確認処理プログラム、方法及び装置 - Google Patents

文書確認処理プログラム、方法及び装置 Download PDF

Info

Publication number
JP2010204985A
JP2010204985A JP2009050188A JP2009050188A JP2010204985A JP 2010204985 A JP2010204985 A JP 2010204985A JP 2009050188 A JP2009050188 A JP 2009050188A JP 2009050188 A JP2009050188 A JP 2009050188A JP 2010204985 A JP2010204985 A JP 2010204985A
Authority
JP
Japan
Prior art keywords
document
schema
predetermined
schema document
specific
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.)
Pending
Application number
JP2009050188A
Other languages
English (en)
Inventor
Mika Yamashita
美香 山下
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.)
Fujitsu FSAS Inc
Original Assignee
Fujitsu FSAS 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 Fujitsu FSAS Inc filed Critical Fujitsu FSAS Inc
Priority to JP2009050188A priority Critical patent/JP2010204985A/ja
Publication of JP2010204985A publication Critical patent/JP2010204985A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Machine Translation (AREA)
  • Document Processing Apparatus (AREA)

Abstract

【課題】所定の文書の構造が正しいか否かを正確に判断する。
【解決手段】本文書確認処理方法は、所定文書内を探索し、参照すべき特定のスキーマ文書の格納先情報が所定文書内に含まれているか判断する工程と、特定のスキーマ文書の格納先情報が所定文書内に含まれている場合、当該特定のスキーマ文書を取得してキャッシュに格納する工程と、特定のスキーマ文書内を探索し、参照すべき他のスキーマ文書の格納先情報が特定のスキーマ文書内に含まれているか判断する工程と、他のスキーマ文書の格納先情報が特定のスキーマ文書内に含まれている場合、当該他のスキーマ文書を取得してキャッシュに格納する工程と、ユーザから文書確認指示を受け付けた場合、スキーマ文書間の階層関係を基に、キャッシュに格納された下位階層のスキーマ文書から順に所定文書と照合し、所定文書の構造がスキーマ文書で規定されている構造と一致しているか判断する工程とを含む。
【選択図】図3

Description

本技術は、スキーマを用いて、文書(例えばXML(eXtensible Markup Language)文書など)の構造を確認するための技術に関する。
例えばXML文書を作成する場合、ユーザは、XML文書の取り得る構造が規定されているスキーマ文書に沿ってXML文書を作成する。例えば、図1にXML文書の一例を示す。図1に示すように、XMLでは、例えばschemaLocation属性を用いて、必要なスキーマ文書のURL101(図1では、"http://www.AAA.co.jp/AAA.xsd")を指定するようになっている。
一方で、スキーマ文書内においても、schemaLocation属性を用いて他のスキーマ文書を指定する場合がある。例えば、図2にスキーマ文書(「AAA.xsd」)の一例を示す。図2では、スキーマ文書(「AAA.xsd」)内で、他のスキーマ文書(「XHTML1.1.xsd」、「XHTML1.1-model-1.xsd」、「XHTML1.1-modules-1.xsd」及び「XHTML1.1-framework.xsd」)のURL201乃至204が指定されている。例えば、あるXML文書において図2に示したスキーマ文書(「AAA.xsd」)が指定されている場合には、当該XML文書では、「AAA.xsd」で規定されている構造だけでなく、「XHTML1.1.xsd」、「XHTML1.1-model-1.xsd」、「XHTML1.1-modules-1.xsd」及び「XHTML1.1-framework.xsd」の各々で規定されている構造も取り得ることとなる。そのため、例えば、ユーザによって作成されたXML文書の構造が正しいか否かを判断するためには、当該XML文書内において指定されるスキーマ文書だけでなく、当該スキーマ文書内において指定される他のスキーマ文書も考慮して判断しなければならない。なお、所定の文書(例えば、XML文書やHTML(Hyper Text Markup Language)文書など)の構造が正しいか否かを判断する技術としては、例えば、特開2000−311160号公報記載の技術や、特開2002−312339号公報記載の技術などがある。
特開2000−311160号公報 特開2002−312339号公報
しかしながら、従来技術では、例えば所定の文書の構造が正しいか否かを判断する際に、あるスキーマ文書内において指定される他のスキーマ文書については考慮されていない。そのため、ユーザによって作成された文書の構造が正しいか否かを正確に且つ即時に判断できない場合がある。
従って、本技術の目的は、所定の文書の構造が正しいか否かを正確に且つ即時に判断することである。
本文書確認処理方法は、所定の文書内を探索し、参照すべき特定のスキーマ文書の格納先情報が所定の文書内に含まれているか判断する第1判断ステップと、特定のスキーマ文書の格納先情報が所定の文書内に含まれていると判断された場合、当該特定のスキーマ文書を取得してキャッシュに格納する第1取得ステップと、特定のスキーマ文書内を探索し、参照すべき他のスキーマ文書の格納先情報が特定のスキーマ文書内に含まれているか判断する第2判断ステップと、他のスキーマ文書の格納先情報が特定のスキーマ文書内に含まれていると判断された場合、当該他のスキーマ文書を取得してキャッシュに格納する第2取得ステップと、ユーザから文書確認指示を受け付けた場合、スキーマ文書間の階層関係を基に、キャッシュに格納された下位階層のスキーマ文書から順に所定の文書と照合し、所定の文書の構造がスキーマ文書で規定されている構造と一致しているか判断するステップとを含む。
所定の文書の構造が正しいか否かを正確に且つ即時に判断することができる。
XML文書の一例を示す図である。 スキーマ文書の一例を示す図である。 本実施の形態に係るシステム概要を示す図である。 スキーマ一覧テーブル格納部に格納されるスキーマ一覧テーブルのテーブル例を示す図である。 階層管理データ格納部に格納されるデータの一例を示す図である。 本実施の形態におけるユーザ端末の処理フロー(第1の部分)を示す図である。 XMLエディタの画面例を示す図である。 スキーマ読み込み処理の処理フロー(第1の部分)を示す図である。 スキーマ読み込み処理の処理フロー(第2の部分)を示す図である。 XML文書と照合するスキーマ文書の順番を説明するための図である。 チェック結果画面の画面例を示す図である。 本実施の形態におけるユーザ端末の処理フロー(第2の部分)を示す図である。 URLを保存先フォルダ名に変換した後のXML文書の一例を示す図である。 URLを保存先フォルダ名に変換した後のスキーマ文書の一例を示す図である。 コンピュータの機能ブロック図である。
図3に本技術の一実施の形態に係るシステム概要を示す。例えばインターネットであるネットワーク1には、ユーザ端末3と、複数のサーバ5(図3では、5a乃至5c)とが接続されている。なお、各サーバ5は、スキーマ文書を格納するスキーマ格納部51(図3では、51a乃至51c)を有している。なお、ユーザ端末3の数は1台に限られず、サーバ5の数も3台に限られない。
また、ユーザ端末3は、XMLエディタ31を有する。そして、XMLエディタ31は、入力部311と、ファイル管理部312と、スキーマ取得部313と、構造チェック部314と、出力部315と、スキーマ一覧テーブル格納部316と、階層管理データ格納部317と、モード情報格納部318とを有する。入力部311は、ユーザからの各種指示を受け付け、ファイル管理部312、スキーマ取得部313又は構造チェック部314に出力する。また、入力部311は、ユーザからモード変更指示を受け付け、現在のモード(詳細は後述)を示す情報をモード情報格納部318に格納する。ファイル管理部312は、入力部311からの指示に応じて、XML文書の読み込みを行ったり、スキーマ文書を所定の保存先フォルダに格納したりするなどの処理を実施する。スキーマ取得部313は、入力部311からの指示に応じて、後で説明するスキーマ読み込み処理を実施し、スキーマ文書を取得してユーザ端末3のキャッシュ(図示せず)に格納する。また、スキーマ取得部313は、取得したスキーマ文書の情報をスキーマ一覧テーブル格納部316に格納し、取得したスキーマ文書間の階層関係を示すデータを階層管理データ格納部317に格納する。構造チェック部314は、入力部311からの指示に応じて、階層管理データ格納部317に格納されているデータとキャッシュ又は所定の保存先フォルダに格納されているスキーマ文書とに基づき、XML文書の構造が正しいか否かを判断するための処理を実施する。
図4に、スキーマ一覧テーブル格納部316に格納されるスキーマ一覧テーブルの一例を示す。図4の例では、スキーマ一覧テーブルには、スキーマ文書のIDの列と、スキーマ文書のURLと、保存先フォルダ名の列とが含まれる。なお、詳細は後で説明するが、保存先フォルダ名の列には、スキーマ文書をユーザ端末3内の所定の保存先フォルダに保存する際に、当該保存先フォルダ名が設定される。
図5に、階層管理データ格納部317に格納されるデータの一例を示す。図5に示すように、階層管理データ格納部317には、スキーマ文書間の階層関係を管理するためのデータとして、XML文書及びスキーマ文書をノードとする木構造のデータが格納される。
次に、図6乃至図14を用いて、図3に示したシステムにおけるユーザ端末3の処理フローを説明する。まず、ユーザが、ユーザ端末3を操作して、XMLエディタ31を起動する(図6:ステップS1)。なお、本ステップは、ユーザの動作であるため、図6では点線ブロックで示している。そして、例えば、XMLエディタ31が起動されると図7に示すような画面が表示される。図7の画面では、タイトルバー701と、メニューバー702と、作業領域703と、文字コード表示欄704と、スキーマ状態表示欄705とが含まれる。そして、XMLエディタ31を起動した後、ユーザは、ユーザ端末3を操作して、ユーザ端末3のハードディスク等の記憶装置に予め格納されているXML文書のうち、作業対象となるXML文書を選択する。
そして、ユーザ端末3におけるXMLエディタ31の入力部311は、ユーザからXML文書の選択入力を受け付け、選択データをファイル管理部312に出力する。そして、ファイル管理部312は、入力部311から選択データを受信すると、選択データに係るXML文書を記憶装置から読み込み(ステップS3)、メインメモリに一旦格納する。また、ファイル管理部312は、出力部315にXML文書の表示指示を出力する。そして、出力部315は、ファイル管理部312からの表示指示に応じて、図7に示した画面における作業領域703に、メインメモリに格納されたXML文書の内容を表示する。なお、ファイル管理部312は、XML文書の読み込みが完了すると、その旨を入力部311に通知する。
そして、入力部311は、ファイル管理部312からXML文書の読み込み完了の通知を受信すると、モード情報格納部318に格納されている現在のモードがネットワーク接続を行うモード(以下、ネットワーク接続モードと呼ぶ場合もある)であるか判断する(ステップS5)。現在のモードがネットワーク接続を行わないモード(以下、ローカルモードと呼ぶ場合もある)である場合(ステップS5:Noルート)、ステップS9の処理に移行する。
一方、現在のモードがネットワーク接続モードである場合(ステップS5:Yesルート)、入力部311は、スキーマ取得部313にスキーマ文書の読み込み開始を指示する。そして、スキーマ取得部313は、入力部311からスキーマ文書の読み込み開始指示を受信すると、メインメモリに格納されているXML文書に基づき、スキーマ読み込み処理を実施する(ステップS7)。スキーマ読み込み処理については図8及び図9を用いて説明する。
まず、スキーマ取得部313は、ユーザ端末3がネットワーク1と通信可能な状態であるか判断する(図8:ステップS51)。ユーザ端末3がネットワーク1と通信できない状態であると判断された場合(ステップS51:Noルート)、スキーマ取得部313は、スキーマ状態として読み込み失敗を表示するよう出力部315に指示する。そして、出力部315は、スキーマ取得部313からの指示に応じて、図7に示した画面におけるスキーマ状態表示欄705に「読み込み失敗」を表示する(ステップS53)。その後、端子Eを介して図9に移行し、スキーマ読み込み処理を終了し、元の処理に戻る。
一方、ユーザ端末3がネットワーク1と通信可能な状態であると判断された場合(ステップS51:Yesルート)、スキーマ取得部313は、XML文書内に所定文字列が存在するか判断する(ステップS55)。具体的には、スキーマ取得部313は、XML文書内を探索し、XML文書内に文字列「schemaLocation」が含まれているか判断する。XML文書内に所定文字列が存在しないと判断された場合(ステップS55:Noルート)、スキーマ取得部313は、スキーマ状態としてスキーマ未設定を表示するよう出力部315に指示する。そして、出力部315は、スキーマ取得部313からの指示に応じて、図7に示した画面におけるスキーマ状態表示欄705に「スキーマ未設定」を表示する(ステップS57)。その後、端子Eを介して図9に移行し、スキーマ読み込み処理を終了し、元の処理に戻る。
一方、XML文書内に所定文字列が存在すると判断された場合(ステップS55:Yesルート)、スキーマ取得部313は、XML文書からスキーマ文書のURL(すなわち、文字列「schemaLocation」の直後のURL」)を抽出し、スキーマ一覧テーブルに登録する(ステップS59)。このとき、スキーマ取得部313は、スキーマのIDとしてユニークな番号を割り当て、スキーマ一覧テーブルに登録する。なお、XML文書内に文字列「schemaLocation」が複数含まれる場合には、本ステップにおいて複数のURLが抽出される。
そして、スキーマ取得部313は、階層管理データを生成し、階層管理データ格納部317に格納する(ステップS61)。例えば、図5に示したような木構造のデータを生成し、階層管理データ格納部317に格納する。そして、端子Dを介してステップS63(図9)の処理に移行する。
図9の説明に移行して、端子Dの後、スキーマ取得部313は、スキーマ一覧テーブルにおいて未処理のURLを特定する(図9:ステップS63)。そして、スキーマ取得部313は、特定URLからスキーマ文書を取得し、ユーザ端末3のキャッシュに格納する(ステップS65)。そして、スキーマ取得部313は、ステップS65において取得したスキーマ文書内に所定文字列が存在するか判断する(ステップS67)。具体的には、スキーマ取得部313は、ステップS65において取得したスキーマ文書内を探索し、当該スキーマ文書内に文字列「schemaLocation」が含まれているか判断する。ステップS65において取得したスキーマ文書内に所定文字列が存在しないと判断された場合(ステップS67:Noルート)、ステップS73の処理に移行する。
一方、ステップS65において取得したスキーマ文書内に所定文字列が存在すると判断された場合(ステップS67:Yesルート)、スキーマ取得部313は、当該スキーマ文書から他のスキーマ文書のURL(すなわち、文字列「schemaLocation」の直後のURL」)を抽出し、スキーマ一覧テーブルに登録する(ステップS69)。このとき、スキーマ取得部313は、スキーマのIDとしてユニークな番号を割り当て、スキーマ一覧テーブルに登録する。なお、ステップS65において取得したスキーマ文書内に文字列「schemaLocation」が複数含まれる場合には、ステップS69において複数のURLが抽出される。
そして、スキーマ取得部313は、階層管理データを更新し、更新後の階層管理データを階層管理データ格納部317に格納する(ステップS71)。
そして、スキーマ取得部313は、スキーマ一覧テーブルにおける全てのURLについて処理が完了したか判断する(ステップS73)。スキーマ一覧テーブルにおける全てのURLについて処理が完了していなければ(ステップS73:Noルート)、スキーマ取得部313は、ステップS63の処理に戻り、上で述べた処理を繰り返す。
一方、スキーマ一覧テーブルにおける全てのURLについて処理が完了した場合(ステップS73:Yesルート)、スキーマ取得部313は、スキーマ状態として準備完了を表示するよう出力部315に指示する。そして、出力部315は、スキーマ取得部313からの指示に応じて、図7に示した画面におけるスキーマ状態表示欄705に「スキーマ準備完了」を表示する(ステップS75)。その後、スキーマ読み込み処理を終了し、元の処理に戻る。
以上のような処理を実施することにより、階層化されているスキーマ文書を全て取得することができる。なお、スキーマ文書間の階層関係は、階層管理データ格納部317にて管理される。
図6の説明に戻って、スキーマ読み込み処理(ステップS7)を実施した後、処理はステップS9に移行する。例えば、ユーザは、ユーザ端末3を操作して、ステップS3で読み込んだXML文書の編集を行う(ステップS9)。なお、本ステップは、ユーザの動作であるため、図6では点線ブロックで示している。また、本ステップは、上で説明したステップS5及びステップS7の処理と並行に行われる。すなわち、ユーザがXML文書を編集しているバックグラウンドで、スキーマ文書の読み込みが行われる。
そして、ユーザは、所定のタイミングにて、任意の指示を行う。具体的には、スキーマ文書の再読み込み指示、文書確認指示、モード変更指示又は文書保存指示を行う。なお、モード変更指示には、変更後のモードの情報が含まれる。そして、入力部311は、ユーザから任意の指示の入力を受け付け、受け付けた指示が再読み込み指示であるか判断する(ステップS11)。受け付けた指示が再読み込み指示である場合(ステップS11:Yesルート)、入力部311は、モード情報格納部318に格納されている現在のモードがネットワーク接続モードであるか判断する(ステップS13)。現在のモードがローカルモードである場合(ステップS13:Noルート)、端子Bを介してステップS39(図12)の処理に移行する。
一方、現在のモードがネットワーク接続モードである場合(ステップS13:Yesルート)、入力部311は、スキーマ取得部313にスキーマ文書の再読み込みを指示する。そして、スキーマ取得部313は、入力部311からの再読み込み指示を受信すると、ユーザ端末3のキャッシュからスキーマ文書を削除する(ステップS15)。その後、ステップS7に戻り、スキーマ読み込み処理を再度実行する。
一方、ステップS11において、受け付けた指示が再読み込み指示ではないと判断された場合(ステップS11:Noルート)、入力部311は、受け付けた指示が文書確認指示であるか判断する(ステップS17)。受け付けた指示が文書確認指示である場合(ステップS17:Yesルート)、入力部311は、XML文書のチェック開始を構造チェック部314に指示する。
そして、構造チェック部314は、入力部311からの指示を受信すると、階層管理データに従い、下位階層のスキーマ文書から順にXML文書と照合し、XML文書の構造をチェックし、チェック結果を記憶装置に格納する(ステップS19)。図10を用いて、本ステップの詳細について説明する。
例えばスキーマが図10に示すような階層関係にある場合に、スキーマcにおいて要素X、要素Y、要素Z、・・・が規定され、さらにスキーマcの下位階層にあるスキーマfにおいて、要素Yの配下に要素y1、要素y2、・・・を追加するような記述がなされていたとする。この場合、先にスキーマcで照合を行ったとすると、要素Yの配下に要素y1、要素y2、・・・が追加されていることが分からない。そのため、XML文書中の要素の過不足や並び順を正確にチェックするためにはスキーマcより先にスキーマfを用いて照合を行う必要がある。従って、スキーマが図10に示すような階層関係にある場合には、(1)スキーマf→(2)スキーマc、スキーマd及びスキーマe→(3)スキーマa→(4)スキーマf→(5)スキーマbの順番で照合を行う。なお、スキーマc、スキーマd及びスキーマeは、同一階層に属するスキーマ文書であり、この3つのスキーマ文書については順番は問わない。
また、XML文書の構造をチェックする際には、XML文書とスキーマ文書内のタグ等を比較し、スキーマ文書で規定されている構造と一致しているか判断する。例えば、スキーマ文書で規定されている構造と不一致の箇所(例えば、要素の過不足や並び順の不一致など)がある場合には、エラーとみなし、当該箇所の位置(行番号、列番号)及びエラー内容をチェック結果として記憶装置に格納する。そして、構造チェック部314は、チェック結果を表示するよう出力部315に指示する。そして、出力部315は、構造チェック部314からの指示に応じて、チェック結果を表示装置等に表示する(ステップS21)。例えば図11に示すような画面が表示される。図11の画面では、エラー一覧1101と、エラー内容表示欄1102と、閉じるボタン1103とが含まれる。エラー一覧1101には、エラーの位置を示す行及び列と、エラー内容とが表示される。なお、「○」印は、選択されているエラーを表す。エラー内容表示欄1102には、エラー一覧1101において選択されたエラーについての内容が表示される。その後、処理は端子Bを介してステップS39(図12)の処理に移行する。
一方、ステップS17において、受け付けた指示が文書確認指示ではないと判断された場合(ステップS17:Noルート)、端子Aを介してステップS23(図12)の処理に移行する。
図12の説明に移行して、端子Aの後、入力部311は、受け付けた指示がモード変更指示であるか判断する(図12:ステップS23)。受け付けた指示がモード変更指示である場合(ステップS23:Yesルート)、入力部311は、モード変更指示で指定されたモード(ネットワーク接続モード又はローカルモード)を現在のモードとしてモード情報格納部318に登録する(ステップS25)。そして、入力部311は、モード変更指示を受けた旨をファイル管理部312に通知する。
そして、ファイル管理部312は、モード変更指示を受けた旨の通知を入力部311から受信すると、モード情報格納部318に格納されている現在のモードがローカルモードであるか判断する(ステップS27)。現在のモードがローカルモードである場合(ステップS27:Yesルート)、ファイル管理部312は、キャッシュに格納されている全てのスキーマファイルを所定の保存先フォルダに保存し、保存先のフォルダ名をスキーマ一覧テーブルに登録する(ステップS29)。その後、ステップS39の処理に移行する。
一方、現在のモードがネットワーク接続モードである場合(ステップS27:Noルート)、ファイル管理部312は、スキーマ一覧テーブルに基づき、所定文字列(すなわち、「schemaLocation」)の直後の保存先フォルダ名を、対応するURLに変換することにより、XML文書及び各スキーマ文書を更新する(ステップS31)。詳細は後で説明するが、ローカルモードにおいてXML文書を保存する際、XML文書及びスキーマ文書内の、文字列「schemaLocation」の直後のURLが保存先フォルダ名に変換される。ステップS31の処理は、この保存先フォルダ名を、元のURLに変換する処理である。そして、ステップS39の処理に移行する。
一方、ステップS23において、受け付けた指示がモード変更指示ではないと判断された場合(ステップS23:Noルート)、入力部311は、受け付けた指示がXML文書の保存指示であるか判断する(ステップS33)。受け付けた指示がXML文書の保存指示である場合(ステップS33:Yesルート)、入力部311は、XML文書の保存指示を受けた旨をファイル管理部312に通知する。
そして、ファイル管理部312は、XML文書の保存指示を受けた旨の通知を入力部311から受信すると、編集中のXML文書を保存し、モード情報格納部318に格納されている現在のモードがローカルモードであるか判断する(ステップS35)。現在のモードがローカルモードである場合(ステップS35:Yesルート)、ファイル管理部312は、スキーマ一覧テーブルに基づき、所定文字列(すなわち、「schemaLocation」)の直後のURLを、対応する保存先フォルダ名に変換することにより、XML文書及び各スキーマ文書を更新する(ステップS37)。例えば図1に示したXML文書についてステップS37の処理を実施すると、XML文書は、図13に示すような内容に変更される。図13では、図1におけるURL101が保存先フォルダ名1301に変更されている。同様に、図2に示したスキーマ文書についてステップS37の処理を実施すると、スキーマ文書は、図14に示すような内容に変更される。図14では、図2におけるURL201乃至204が保存先フォルダ名1401乃至1404にそれぞれ変更されている。なお、図13のXML文書及び図14のスキーマ文書について、上で説明したステップS31の処理を実施すると、元のXML文書(図1)及びスキーマ文書(図2)にそれぞれリカバリされる。そして、ステップS39の処理に移行する。
一方、ステップS33において、受け付けた指示がXML文書の保存指示ではないと判断された場合(ステップS33:Noルート)、又は、ステップS35において、現在のモードがネットワーク接続モードであると判断された場合(ステップS35:Noルート)、ステップS39の処理に移行する。
そして、ステップS39の処理に移行して、入力部311は、ユーザによる操作が終了したか判断する(ステップS39)。ユーザによる操作が終了していなければ(ステップS39:Noルート)、すなわち、次の操作がある場合には、端子Cを介してステップS9(図6)の処理に戻る。一方、ユーザによる操作が終了した場合(ステップS39:Yesルート)、本処理を終了する。
以上のような処理を実施することにより、ユーザによって作成されたXML文書の構造がスキーマ文書で規定されている構造と一致しているか否かを正確に且つ即時に判断できる。また、ローカルモードに設定しておけば、ネットワークに接続できないような環境(例えば移動中など)でも、文書のチェックを行うことができる。また、例えば同一名称で且つ内容が異なるスキーマ文書が複数存在した場合に、これらのスキーマ文書に基づいてXML文書のチェックを行うと、XML文書についてエラーが出力されるが、このエラー内容から、名称が同一で内容が異なるスキーマ文書が複数存在することが把握可能となる副次的効果もある。
以上本技術の一実施の形態を説明したが、本技術はこれに限定されるものではない。例えば、上で説明したユーザ端末3の機能ブロック図は必ずしも実際のプログラムモジュール構成に対応するものではない。
また、上で説明したデータ構造及びテーブル構成は一例であって、必ずしも上記のような構成でなければならないわけではない。さらに、処理フローにおいても、処理結果が変わらなければ処理の順番を入れ替えることも可能である。さらに、並列に実行させるようにしても良い。
また、上ではユーザからの再読み込み指示を受け付けた場合に、スキーマ文書の再読み込みを行うようになっていたが、例えばタイマを用いて定期的にスキーマ文書の再読み込みを行うような構成を採用することも可能である。
以上本実施の形態をまとめると以下のようになる。
本文書確認処理方法は、所定の文書内を探索し、参照すべき特定のスキーマ文書の格納先情報が所定の文書内に含まれているか判断する第1判断ステップと、特定のスキーマ文書の格納先情報が所定の文書内に含まれていると判断された場合、当該特定のスキーマ文書を取得してキャッシュに格納する第1取得ステップと、特定のスキーマ文書内を探索し、参照すべき他のスキーマ文書の格納先情報が特定のスキーマ文書内に含まれているか判断する第2判断ステップと、他のスキーマ文書の格納先情報が特定のスキーマ文書内に含まれていると判断された場合、当該他のスキーマ文書を取得してキャッシュに格納する第2取得ステップと、ユーザから文書確認指示を受け付けた場合、スキーマ文書間の階層関係を基に、キャッシュに格納された下位階層のスキーマ文書から順に所定の文書と照合し、所定の文書の構造がスキーマ文書で規定されている構造と一致しているか判断するステップとを含む。
このようにすれば、例えばスキーマ文書が階層的に指定される場合には、必要なスキーマ文書を全て取得し、下位階層のスキーマ文書から順に所定の文書と照合するので、所定の文書の構造が正しいか否かを正確に且つ即時に判断できる。例えば、下位階層のスキーマ文書では、上位階層のスキーマ文書において規定されている構造に、ある要素を追加するような記述がなされる場合があるため、下位階層のスキーマ文書から順に照合することで、所定の文書の構造が正しいか否かを正確に判断できるようになる。
また、上記第2取得ステップの後、ユーザから、ネットワーク接続を行う第1実行モードからネットワーク接続を行わない第2実行モードへの変更が指示された場合、キャッシュに格納されているスキーマ文書を、コンピュータ内の所定の保存先に格納し、スキーマ文書毎に当該スキーマ文書の格納先情報と保存先情報とを含むスキーマ文書テーブルを記憶装置に格納するステップと、スキーマ文書テーブルに基づき、所定の文書及びスキーマ文書内の、スキーマ文書の格納先情報を、対応する保存先情報に書き換えるステップとをさらに含むようにしてもよい。このようにすれば、例えばネットワークに接続できない環境においてもユーザは文書の作成及び確認を行うことができるようになる。
さらに、ユーザから、第2実行モードから第1実行モードへの変更が指示された場合、スキーマ文書テーブルに基づき、所定の文書及びスキーマ文書内の、スキーマ文書の保存先情報を、対応する格納先情報に書き換えるステップとをさらに含むようにしてもよい。このようにすれば、第1実行モードと第2実行モードとの切り替えを適切に行うことができるようになる。
また、上記第2取得ステップの後、所定のタイミングにて、キャッシュからスキーマ文書を削除し、第1判断ステップ乃至第2取得ステップを再度実行するステップをさらに含むようにしてもよい。このようにすれば、非同期に更新されるスキーマ文書を最新版に変更し、当該最新版のスキーマ文書に基づいて、所定の文書の構造が正しいか否かを確認できるようになる。
なお、ユーザ端末3をハードウエアと共に実現するためのプログラムを作成することができ、当該プログラムは、例えばフレキシブルディスク、CD−ROM、光磁気ディスク、半導体メモリ、ハードディスク等の記憶媒体又は記憶装置に格納される。尚、中間的な処理結果はメインメモリ等の記憶装置に一時保管される。
なお、ユーザ端末3は、図15に示すように、メモリ2501(記憶部)とCPU2503(処理部)とハードディスク・ドライブ(HDD)2505と表示装置2509に接続される表示制御部2507とリムーバブル・ディスク2511用のドライブ装置2513と入力装置2515とネットワークに接続するための通信制御部2517とがバス2519で接続されている。OS及びWebブラウザを含むアプリケーション・プログラムは、HDD2505に格納されており、CPU2503により実行される際にはHDD2505からメモリ2501に読み出される。必要に応じてCPU2503は、表示制御部2507、通信制御部2517、ドライブ装置2513を制御して、必要な動作を行わせる。また、処理途中のデータについては、メモリ2501に格納され、必要があればHDD2505に格納される。このようなコンピュータは、上で述べたCPU2503、メモリ2501などのハードウエアとOS及び必要なアプリケーション・プログラムとが有機的に協働することにより、上で述べたような各種機能を実現する。
1 ネットワーク
3 ユーザ端末
5a,5b,5c サーバ
31 XMLエディタ
51a,51b,51c スキーマ格納部
311 入力部 312 ファイル管理部
313 スキーマ取得部 314 構造チェック部
315 出力部 316 スキーマ一覧テーブル格納部
317 階層管理データ格納部 318 モード情報格納部

Claims (6)

  1. 所定の文書内を探索し、参照すべき特定のスキーマ文書の格納先情報が前記所定の文書内に含まれているか判断する第1判断ステップと、
    前記特定のスキーマ文書の格納先情報が前記所定の文書内に含まれていると判断された場合、当該特定のスキーマ文書を取得してキャッシュに格納する第1取得ステップと、
    前記特定のスキーマ文書内を探索し、参照すべき他のスキーマ文書の格納先情報が前記特定のスキーマ文書内に含まれているか判断する第2判断ステップと、
    前記他のスキーマ文書の格納先情報が前記特定のスキーマ文書内に含まれていると判断された場合、当該他のスキーマ文書を取得して前記キャッシュに格納する第2取得ステップと、
    ユーザから文書確認指示を受け付けた場合、スキーマ文書間の階層関係を基に、前記キャッシュに格納された下位階層のスキーマ文書から順に前記所定の文書と照合し、前記所定の文書の構造が前記スキーマ文書で規定されている構造と一致しているか判断するステップと、
    をコンピュータに実行させるための文書確認処理プログラム。
  2. 前記第2取得ステップの後、前記ユーザから、ネットワーク接続を行う第1実行モードから前記ネットワーク接続を行わない第2実行モードへの変更が指示された場合、前記キャッシュに格納されている前記スキーマ文書を、前記コンピュータ内の所定の保存先に格納し、前記スキーマ文書毎に当該スキーマ文書の格納先情報と保存先情報とを含むスキーマ文書テーブルを記憶装置に格納するステップと、
    前記スキーマ文書テーブルに基づき、前記所定の文書及び前記スキーマ文書内の、前記スキーマ文書の前記格納先情報を、対応する前記保存先情報に書き換えるステップと、
    をさらにコンピュータに実行させるための請求項1記載の文書確認処理プログラム。
  3. 前記ユーザから、前記第2実行モードから前記第1実行モードへの変更が指示された場合、前記スキーマ文書テーブルに基づき、前記所定の文書及び前記スキーマ文書内の、前記スキーマ文書の前記保存先情報を、対応する前記格納先情報に書き換えるステップと、
    をさらにコンピュータに実行させるための請求項2記載の文書確認処理プログラム。
  4. 前記第2取得ステップの後、所定のタイミングにて、前記キャッシュから前記スキーマ文書を削除し、前記第1判断ステップ乃至前記第2取得ステップを再度実行するステップ
    をさらにコンピュータに実行させるための請求項1乃至3のいずれか1つ記載の文書確認処理プログラム。
  5. 所定の文書内を探索し、参照すべき特定のスキーマ文書の格納先情報が前記所定の文書内に含まれているか判断する第1判断ステップと、
    前記特定のスキーマ文書の格納先情報が前記所定の文書内に含まれていると判断された場合、当該特定のスキーマ文書を取得してキャッシュに格納する第1取得ステップと、
    前記特定のスキーマ文書内を探索し、参照すべき他のスキーマ文書の格納先情報が前記特定のスキーマ文書内に含まれているか判断する第2判断ステップと、
    前記他のスキーマ文書の格納先情報が前記特定のスキーマ文書内に含まれていると判断された場合、当該他のスキーマ文書を取得して前記キャッシュに格納する第2取得ステップと、
    ユーザから文書確認指示を受け付けた場合、スキーマ文書間の階層関係を基に、前記キャッシュに格納された下位階層のスキーマ文書から順に前記所定の文書と照合し、前記所定の文書の構造が前記スキーマ文書で規定されている構造と一致しているか判断するステップと、
    を含み、コンピュータにより実行される文書確認処理方法。
  6. 所定の文書内を探索し、参照すべき特定のスキーマ文書の格納先情報が前記所定の文書内に含まれているか判断する第1判断手段と、
    前記特定のスキーマ文書の格納先情報が前記所定の文書内に含まれていると判断された場合、当該特定のスキーマ文書を取得してキャッシュに格納する第1取得手段と、
    前記特定のスキーマ文書内を探索し、参照すべき他のスキーマ文書の格納先情報が前記特定のスキーマ文書内に含まれているか判断する第2判断手段と、
    前記他のスキーマ文書の格納先情報が前記特定のスキーマ文書内に含まれていると判断された場合、当該他のスキーマ文書を取得して前記キャッシュに格納する第2取得手段と、
    ユーザから文書確認指示を受け付けた場合、スキーマ文書間の階層関係を基に、前記キャッシュに格納された下位階層のスキーマ文書から順に前記所定の文書と照合し、前記所定の文書の構造が前記スキーマ文書で規定されている構造と一致しているか判断する手段と、
    を有する文書確認処理装置。
JP2009050188A 2009-03-04 2009-03-04 文書確認処理プログラム、方法及び装置 Pending JP2010204985A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2009050188A JP2010204985A (ja) 2009-03-04 2009-03-04 文書確認処理プログラム、方法及び装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2009050188A JP2010204985A (ja) 2009-03-04 2009-03-04 文書確認処理プログラム、方法及び装置

Publications (1)

Publication Number Publication Date
JP2010204985A true JP2010204985A (ja) 2010-09-16

Family

ID=42966399

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009050188A Pending JP2010204985A (ja) 2009-03-04 2009-03-04 文書確認処理プログラム、方法及び装置

Country Status (1)

Country Link
JP (1) JP2010204985A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2022546192A (ja) * 2019-07-17 2022-11-04 上海明品医学数拠科技有限公司 医学データの検証方法

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000163409A (ja) * 1998-08-12 2000-06-16 Nippon Telegr & Teleph Corp <Ntt> 署名付ハイパ―テキスト記録媒体、構成方法、検証方法及び装置
JP2006313444A (ja) * 2005-05-09 2006-11-16 Hitachi Ltd キャッシュ生成方法、装置、プログラム及び記録媒体

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000163409A (ja) * 1998-08-12 2000-06-16 Nippon Telegr & Teleph Corp <Ntt> 署名付ハイパ―テキスト記録媒体、構成方法、検証方法及び装置
JP2006313444A (ja) * 2005-05-09 2006-11-16 Hitachi Ltd キャッシュ生成方法、装置、プログラム及び記録媒体

Non-Patent Citations (8)

* Cited by examiner, † Cited by third party
Title
CSNA200802468001; International Technical Support Organization,Poughkeepsie Center: DB2 9 pureXMLガイド 第1版, 20070731, p.66-72,p.204-209, 日本アイ・ビー・エム株式会社 *
CSND200300533008; A.Russell Jones: '次世代プログラマのあなたへ from VBPJ Webデベロッパー 第5回 詳説MSXML3.0の新' Visual Basic magazine 第7巻第4号, 20010301, p.176-180, 株式会社翔泳社 *
CSND200701468001; 野中 康弘: '新資格もバッチリ!プロフェッショナル(DB)試験対応 XMLマスター実践講座 最終回 XMLデータの' DB Magazine 第17巻第10号, 20080201, p.250-257, 株式会社翔泳社 *
CSNG200600440001; 常盤 茂伸 外4名: '事例報告:XMLスキーマ検証処理の性能改善' 情報処理学会研究報告 第2005巻第118号, 20051122, p.1-5, 社団法人情報処理学会 *
JPN6013005254; A.Russell Jones: '次世代プログラマのあなたへ from VBPJ Webデベロッパー 第5回 詳説MSXML3.0の新' Visual Basic magazine 第7巻第4号, 20010301, p.176-180, 株式会社翔泳社 *
JPN6013005255; International Technical Support Organization,Poughkeepsie Center: DB2 9 pureXMLガイド 第1版, 20070731, p.66-72,p.204-209, 日本アイ・ビー・エム株式会社 *
JPN6013005257; 常盤 茂伸 外4名: '事例報告:XMLスキーマ検証処理の性能改善' 情報処理学会研究報告 第2005巻第118号, 20051122, p.1-5, 社団法人情報処理学会 *
JPN6013005258; 野中 康弘: '新資格もバッチリ!プロフェッショナル(DB)試験対応 XMLマスター実践講座 最終回 XMLデータの' DB Magazine 第17巻第10号, 20080201, p.250-257, 株式会社翔泳社 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2022546192A (ja) * 2019-07-17 2022-11-04 上海明品医学数拠科技有限公司 医学データの検証方法
JP7358612B2 (ja) 2019-07-17 2023-10-10 上海明品医学数拠科技有限公司 医学データの検証方法

Similar Documents

Publication Publication Date Title
RU2419842C2 (ru) Управляемые данными действия для сетевых форм
US20040215719A1 (en) Method and system for designing, editing and publishing web page content in a live internet session
CN108762743B (zh) 一种数据表操作代码生成方法及装置
JP2003050964A (ja) 表計算ウェブサーバシステムおよび表計算ウェブシステム
US20080040588A1 (en) Data Processing Device and Data Processing Method
JPWO2006098031A1 (ja) キーワード管理装置
JP2009540430A (ja) データベーススキーマからのウェブフォームの自動生成方法
JP2004030582A (ja) 構造化文書編集装置、構造化文書編集方法及びプログラム
JP2008269136A (ja) モデル駆動型開発を支援する装置及び方法
US20080133563A1 (en) Data Processing Device And Data Processing Method
JP2009301335A (ja) 画像処理装置、画像処理方法及びコンピュータプログラム
JP4830637B2 (ja) 電子文書更新通知装置及び電子文書更新通知方法
US20080034020A1 (en) Information processing apparatus, content processing method, storage medium, and program
JP2000067075A (ja) データベース検索システム,検索用サーバ装置,クライアント端末およびそれらのプログラム記録媒体
JP2005275488A (ja) 入力支援方法およびプログラム
JP5224839B2 (ja) 文書管理システム、文書管理装置、文書管理方法及びプログラム
Griffin Foundations of Popfly: rapid mashup development
JP4253315B2 (ja) 知識情報収集システムおよび知識情報収集方法
JP4133549B2 (ja) 構造化文書ファイル管理装置および構造化文書ファイル管理方法
JP2010204985A (ja) 文書確認処理プログラム、方法及び装置
JP2009211599A (ja) マッピング定義作成システムおよびマッピング定義作成プログラム
JP2006127117A (ja) Web閲覧操作の記録・再生方法及び装置及びプログラム及びプログラムを格納した記憶媒体
JP2002082936A (ja) コンテンツデータ表示装置とコンテンツデータ表示システム
CN113934959A (zh) 一种程序预览方法、装置、计算机设备和存储介质
JP3725088B2 (ja) 知識情報収集システムおよび知識情報収集方法

Legal Events

Date Code Title Description
RD01 Notification of change of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7426

Effective date: 20100914

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20110922

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20130125

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130219

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20130625