(57)【要約】構造化文書アプリケーションの参照情報に基づいて配信すべき構造化文書の構造情報と内容とを区別して指定し、該指定に基づいて、構造情報及び内容を構造化文書が格納されたデータベースから取得して配信すべき構造化文書を生成し、生成された構造化文書を構造化文書アプリケーションに配信する。
2003067470.tif 000002
【特許請求の範囲】
【請求項１】
構造化文書について所定の処理を行うアプリケーションに対し、前記所定の処理に必要な構造化文書を配信する文書配信装置であって、
前記アプリケーションからの配信要求を受信する受信手段と、
前記受信手段により受信された配信要求に基づいて、配信すべき構造化文書の構造情報と内容とを区別して指定する指定手段と、
前記指定手段による指定に基づき、構造情報又は内容を所定の記憶部から取得して配信すべき構造化文書を生成する生成手段と、
前記生成手段により生成された構造化文書を前記アプリケーションに配信する配信手段とを備えたことを特徴とする文書配信装置。
【請求項２】
請求の範囲第１項に記載の文書配信装置において、
前記指定手段による構造情報の指定は、少なくとも前記構造化文書を構成する要素の種類又は前記要素の出現環境又は前記要素の内容に関する条件のいずれかを記述することにより行われること特徴とする文書配信装置。
【請求項３】
請求の範囲第１項に記載の文書配信装置において、
前記指定手段による内容の指定は、少なくとも前記構造化文書を構成する要素の種類又は前記要素の出現環境又は前記要素の内容に関する条件のいずれかを記述することにより行われること特徴とする文書配信装置。
【請求項４】
請求の範囲第１項に記載の文書配信装置において、
前記生成手段は、前記指定手段により指定された構造情報を構成する要素から前記配信要求された文書のルートまでの各要素の階層構造を含めて構造化文書を生成することを特徴とする文書配信装置。
【請求項５】
請求の範囲第１項に記載の文書配信装置において、
前記構造化文書には、文書構造に関する定義情報が定められており、
前記生成手段は、前記指定手段の指定に加え、前記定義情報に基づき構造化文書を生成することを特徴とする文書配信装置。
【請求項６】
請求の範囲第１項に記載の文書配信装置において、
前記配信手段は、前記生成手段により生成された構造化文書を構造情報と内容とに分け、構造情報を優先して配信することを特徴とする文書配信装置。
【請求項７】
請求の範囲第６項に記載の文書配信装置において、
前記配信手段は、前記生成手段により生成された構造化文書を構成する各要素の内容について配信順位を判断する判断手段を備え、前記構造情報を配信した後、前記判断手段が判断した順位に基づいて、前記要素の内容を配信することを特徴とする文書配信装置。
【請求項８】
請求の範囲第６項に記載の文書配信装置において、
前記指定手段は、前記配信すべき構造化文書を構成する各要素の内容に対し配信順位を指定する配信順位指定手段を備え、
前記配信手段は、前記構造情報を配信した後、前記配信順位指定手段による指定に基づいて、前記生成手段により生成された構造化文書を構成する要素の内容を配信することを特徴とする文書配信装置。
【請求項９】
請求の範囲第１項に記載の文書配信装置から配信された構造化文書を受信する文書受信手段と、前記文書受信手段により受信された構造化文書を前記アプリケーションに出力する出力手段とを備えた文書受信装置。
【請求項１０】
請求の範囲第９項に記載の文書受信装置において、
前記文書受信手段が複数のブロックに分割された構造化文書を受信した場合、配信された構造化文書となるよう各ブロックを合成する合成手段を備え、
前記出力手段は、前記合成手段により合成された構造化文書を前記アプリケーションに出力することを特徴とする文書受信装置。
【請求項１１】
請求の範囲第９項に記載の文書受信装置において、
前記内容は、前記構造化文書を構成する要素の内容であり、
前記配信要求を行うアプリケーションに対し、前記要素の内容の配信順位を指示する配信順位指示手段を備えたことを特徴とする文書受信装置。
【請求項１２】
構造化文書を配信する文書配信方法において、
前記構造化文書について所定の処理を行うアプリケーションから文書配信要求を送信する配信要求送信ステップと、
前記配信要求を受信する配信要求受信ステップと、
前記受信した配信要求に基づいて、配信すべき構造化文書の構造情報と内容とを区別して指定する指定ステップと、
前記指定ステップによる指定に基づき、構造情報又は内容を所定の記憶部から取得して配信すべき構造化文書を生成する生成ステップと、
前記生成ステップにより生成された構造化文書を前記アプリケーションに配信する配信ステップとを備えたことを特徴とする文書配信方法。
【請求項１３】
コンピュータが読み取り可能な記録媒体に記録され、構造化文書を配信するための処理をコンピュータに実行させる文書配信プログラムにおいて、
前記構造化文書について所定の処理を行うアプリケーションからの配信要求を受信する配信要求受信ステップと、
前記受信した配信要求に基づいて、配信すべき構造化文書の構造情報と内容とを区別して指定する指定ステップと、
前記指定ステップによる指定に基づき、構造情報又は内容を所定の記憶部から取得して配信すべき構造化文書を生成する生成ステップと、
前記生成ステップにより生成された構造化文書を前記アプリケーションに配信する配信ステップとを備えたことを特徴とする文書配信プログラム。
【請求項１４】
構造化文書について所定の処理を行うアプリケーションに対し、前記所定の処理に必要な構造化文書を配信する文書配信装置であって、前記アプリケーションからの配信要求を受信する受信手段と、前記受信手段により受信された配信要求に基づいて、配信すべき構造化文書の構造情報と内容とを区別して指定する指定手段と、前記指定手段による指定に基づき、構造情報又は内容を所定の記憶部から取得して配信すべき構造化文書を生成する生成手段と、前記生成手段により生成された構造化文書を前記アプリケーションに配信する配信手段とを備えてなる文書配信装置と、
前記文書配信装置から配信された構造化文書を受信する文書受信装置とから構成される文書配信システム。
【発明の詳細な説明】
技術分野
本発明は、文書構造に関する情報が付加された文書（以下、構造化文書）について所定の処理を行うアプリケーション（以下、構造化文書アプリケーション）に対し、前記所定の処理に必要な構造化文書を配信するための文書配信装置、文書配信方法、文書配信プログラム、及び配信された構造化文書を受信する文書受信装置に関し、特に、配信すべき要素を構造情報と内容とを区別して指定することにより、余分な情報を削減して配信することができる文書配信装置、文書配信方法、文書配信プログラム、文書配信システム及び配信された構造化文書を受信する文書受信装置に関する。
背景技術
近年、ＥＣ（Ｅｌｅｃｔｒｏｎｉｃ  Ｃｏｍｍｅｒｃｅ；電子商取引）やＢ２Ｂ（Ｂｕｓｉｎｅｓｓ  ｔｏ  Ｂｕｓｉｎｅｓｓ；企業間商取引）の分野で、ＸＭＬ（ｅＸｔｅｎｓｉｂｌｅ  Ｍａｒｋｕｐ  Ｌａｇｎｕａｇｅ  １．０，Ｗ３Ｃ  Ｒｅｃｏｍｍｅｎｄａｔｉｏｎ，１０−Ｆｅｂ−１９９８）という構造化文書形式の利用が急激に広まっている。ＸＭＬは、階層的な文書構造をタグにより表現するデータフォーマットである。ＸＭＬを用いると、タグを使って、データ本体とは別に、文書の論理構造や格納データの種別等の注釈情報を文書に埋め込むことができる。こうした形式の文書は、計算機で容易に処理可能な形式に変換できると共に、様々な関連情報をまとめて管理できるため、データの一元管理も容易となる。
しかしながら、個々のアプリケーションから見るとデメリットとなる面もある。すなわち、特定の種類のデータのみが必要なアプリケーションにとっては、データの処理中に余分なデータを除外しなければならないため、余計な時間・コストがかかる。
一般に、ＸＭＬ文書を取り扱うアプリケーション（ＸＭＬアプリケーション）では、ＸＭＬ文書を、文書中の各要素に対しランダムにアクセス可能なデータモデル、例えば、ＤＯＭ（Ｄｏｃｕｍｅｎｔ  Ｏｂｊｅｃｔ  Ｍｏｄｅｌ  Ｌｅｖｅｌ  １，Ｗ３Ｃ  Ｒｅｃｏｍｍｅｎｄａｔｉｏｎ，０１−Ｏｃｔ−１９９８）に変換して、処理することが広く行われている。ＤＯＭは、様々なＸＭＬアプリケーションからのアクセスを想定して設計された汎用インタフェースを持つ、オブジェクト指向型のデータモデルの規格である。ＤＯＭのようなデータモデルを使ってＸＭＬ文書を主記憶上に展開する場合、文書サイズが大きくなるにつれ、テキスト形式のＸＭＬ文書をＤＯＭのようなデータモデルに変換するために必要な計算資源（計算時間・所要メモリ）が増大するという問題がある。
また、ＸＭＬ等の構造化文書を大量に扱う場合、構造化文書の格納庫としてデータベースが利用されている。データベースへの格納方式には、ＲＤＢ（Ｒｅｌａｔｉｏｎａｌ  ＤａｔａＢａｓｅ）にマッピングする方式や、構造化文書中の要素をオブジェクトとして扱い、ＯＤＢ（Ｏｂｊｅｃｔ  ＤａｔａＢａｓｅ）に格納する方法が広く知られている。しかしながら、これらの格納方式では、構造化文書アプリケーションが文書を処理する場合、データベースに格納されている情報から元の構造化文書を再生成し、構造化アプリケーションに配信することとなるため、取り扱う文書のサイズが大きく、また、複雑になるにつれ、文書データの取り出しコストと配信コストが増大するという問題が発生する。
さらにまた、構造化文書アプリケーションの処理において、文書の一部分しか必要としない場合がある。例えば、通常の検索システムでは、検索一覧に検索条件に該当した文書のタイトルのみを取り出して出力すれば十分であり、ユーザが文書全文に対するアクセス要求を出さない限り、文書全体が必要になることはない。
このような問題点を解決するため、従来技術においては、構造化文書を圧縮して配信することが行われている。例えば、「要素名圧縮によるＸＭＬデータ圧縮手法の提案Ｓｉｍｐｌｉｆｉｅｄ  Ｅｌｅｍｅｎｔ  ＸＭＬ」（横山  昌平、太田  学、石川  博）：データベースとＷｅｂ情報システムに関するＩＰＳＪＤＢＳ／ＡＣＭ  ＳＩＧＭＯＤ  Ｊａｐａｎ  Ｃｈａｐｔｅｒ／ＪＳＰＳ−ＲＦＴＦ  ＡＭＣＰ合同シンポジウム：ｐｐ．３３１−３３７（２０００年１２月）では、タグ情報を圧縮することで、ＸＭＬ文書の配信コストを削減する技術を開示している。また、特開２００１−２３６２６１号公報は、データサーバ側にＸＭＬ文書の部分要素を抽出する手段を設け、構造化文書アプリケーションから要求のあった部分要素のみを配信し、また、構造化文書アプリケーションが動作するクライアント側に部分要素のキャッシュ機構を設けることなどにより、ＸＭＬ文書の配信コストを削減する技術を開示している。
しかしながら、構造化文書を圧縮して配信するだけでは、構造化文書の配信コストは削減できても、構造化文書アプリケーションが使用する計算機資源は節約できないという問題点が残る。また、特開２００１−２３６２６１号公報においても、構造情報と内容の区別をせずに、部分要素を抽出して配信しているため、構造化文書アプリケーションが構造情報のみを参照している部分についても内容まで抽出されてしまい、結果として、十分に配信コストを下げることができない。また、これらの手法は、ＸＭＬ文書における文書型定義（ＤＴＤ：Ｄｏｃｕｍｅｎｔ  Ｔｙｐｅ  Ｄｅｆｉｎｉｔｉｏｎ）に代表される文書構造に関する制約情報を考慮していないため、構造化文書アプリケーション側で処理できない文書を配信してしまう可能性もある。例えば、ＤＴＤを使って文書構造の検証を行うタイプの構造化文書アプリケーションでは、配信された文書の検証に失敗し、それ以降の処理を継続できなくなってしまう場合がある。
本発明は、このような問題を解決するためになされたものであり、構造化文書アプリケーションにおいて必要な情報のみを抽出して配信することで、構造化文書アプリケーションへの配信コストを削減すると共に、構造化文書アプリケーションが使用する計算機資源を節約することができる文書配信装置、文書配信方法、文書配信プログラム、文書配信システム及び配信された構造化文書を受信する文書受信装置を提供することを目的とする。
発明の開示
本発明は、構造化文書について所定の処理を行うアプリケーションに対し、前記所定の処理に必要な構造化文書を配信する文書配信装置であって、前記アプリケーションからの配信要求を受信する受信手段と、前記受信手段により受信された配信要求に基づいて、配信すべき構造化文書の構造情報と内容とを区別して指定する指定手段と、前記指定手段による指定に基づき、構造情報又は内容を所定の記憶部から取得して配信すべき構造化文書を生成する生成手段と、前記生成手段により生成された構造化文書を前記アプリケーションに配信する配信手段とを備えたことを特徴とするものである。
このような構成によれば、構造情報と内容を区別して、文書中の必要な要素を抽出して配信することができるため、例えば、アプリケーションが構造情報のみを参照する部分については、内容を削除し構造情報のみを配信する事が可能となる。従って、アプリケーションの機能を制限することなく、データ配信コストと、アプリケーションが使用する計算機資源を飛躍的に削減できる。
なお、上述の構造化文書には、ＸＭＬ形式の文書等が含まれる。また、ＸＭＬ文書を配信する場合、上述した配信要求は、スタイルシートのような参照情報により構成されることもできる。さらに、ＸＭＬ文書においては、構造情報はタグもしくは属性により構成され、内容はタグでマークアップされたテキストデータもしくは属性値により構成される。さらにまた、所定の記憶部は、後述する実施の形態１及び実施の形態３においてはデータベースに相当する。
また、本発明に係る文書配信装置において、前記指定手段による構造情報の指定は、少なくとも前記構造化文書を構成する要素の種類又は前記要素の出現環境又は前記要素の内容に関する条件のいずれかを記述することにより行われること特徴とするものである。更に、前記指定手段による内容の指定は、少なくとも前記構造化文書を構成する要素の種類又は前記要素の出現環境又は前記要素の内容に関する条件のいずれかを記述することにより行われること特徴とするものである。
このような構成によれば、指定手段が配信すべき構造情報及び内容の指定条件を、構造化文書中の必要とされる要素を特定するための基本条件のみで指定できるため、指定手段による指定のみで様々なアプリケーションへの配信に対応できる。なお、構造化文書において、「要素の種類」はタグ名もしくは属性名により構成され、「要素の出現環境」は各要素の上位に存在する要素（上位条件）と下位に存在する要素（下位条件）により構成される。
更に本発明に係る文書配信装置において、前記生成手段は、前記指定手段により指定された構造情報を構成する要素から前記配信要求された文書のルートまでの各要素の階層構造を含めて構造化文書を生成することを特徴とするものである。
このような構成によれば、生成手段は、文書のルート要素からアプリケーションで必要とされる要素に至るパスに含まれる要素を補って、配信文書を生成することができるため、配信文書を構成する要素は、要素間の関係（文書構造の階層における上位−下位関係と姉妹関係）が、配信文書を生成する際に元となった文書における要素間の関係と等価となることが保証される。
ここで、上述した発明の原理を簡単に説明する。第１図は、本発明の原理図である。以下、構造化文書を配信する文書配信装置を構造化文書配信装置と呼称する。また、ここでは構造化文書としてＸＭＬ文書を例にとり説明する。第１図に示された構造化文書配信装置１は、出力命令生成部２と、部分構造抽出部３と、部分構造配信部４とを備えている。ここで、上述の受信手段及び指定手段は出力命令生成部２に相当し、生成手段は部分構造抽出部３に相当し、配信手段は部分構造配信部４に相当する。
出力命令生成部２は、構造化文書を処理するアプリケーション（構造化アプリケーション）から参照情報（配信要求）７を受信して、受信した参照情報を解析し、配信すべき構造化文書の構造情報と内容とを出力命令という形で指定する。具体的には、構造化文書アプリケーションが必要とする構造情報（ＸＭＬではタグもしくは属性）と内容（ＸＭＬではタグでマークアップされたテキストデータもしくは属性値）を区別して制御するための出力命令を生成する。部分構造抽出部３は、データベース等から元の構造化文書（入力文書）５ａ、５ｂを読み出し、出力命令に従って、出力すべき要素と内容をその入力文書から抽出し、配信すべき文書（出力文書）６ａ、６ｂを生成する。部分構造配信部４は、出力文書６ａ、６ｂを構造化文書アプリケーションに効率的に配信する。なお、入力文書及び出力文書とも、テキスト形式（入力文書５ａ、出力文書６ａ）、ＤＯＭ形式（入力文書５ｂ、出力文書６ｂ）のいずれの形式で表現されていてもよく、特に限定されない。
処理の流れとしては、まず、出力命令生成部２が構造化文書アプリケーションの参照情報７を解析し、構造化文書アプリケーションの処理に構造化文書中のどの要素が必要になるか（構造情報）と、どの要素の内容が必要になるかという情報を含む出力命令を生成する。
第２図は出力命令の例である。出力命令は、構造情報に関する出力命令と、内容に関する出力命令の２種類から成る。命令１が構造情報に関する出力命令、命令２が内容に関する出力命令を意味している。それぞれの出力命令は、要素を特定するための照合条件と、出力／非出力を指定する出力指示の２つから構成される。
照合条件は、構造化文書アプリケーションが必要とする要素（以下、基点要素と呼称する）を特定するために、基点要素の種類と出現環境を指定した条件である。例えば、基点要素のタグ名と、基点要素が文書中で出現する位置に関する上位条件（基点要素の上位にどのようなタグが存在するか等に関する条件）と下位条件（基点要素の下位にどのようなタグが存在するか等に関する条件）によって指定する。また、それぞれの条件には、タグ名やパス（文書の階層構造における上位−下位関係に基づくタグ列）だけでなく、要素の内容に関する条件を含めることもできる。これらの条件は、例えば、ＸＰａｔｈ（ＸＭＬ  Ｐａｔｈ  Ｌａｎｇｕａｇｅ  １．０；Ｗ３Ｃ  Ｒｅｃｏｍｍｅｎｄａｔｉｏｎ  １６−Ｎｏｖ−１９９９）の形式で記述できる。出力指示は、基点要素のタグ（もしくは属性）や内容の出力／非出力を指定するものである。第２図の例では「○」が「出力」指示を意味している。つまり、命令１は「要素の出現位置がｂｏｄｙより下（子孫）の要素で、要素の種類がｋｅｙである要素（構造情報）を出力」、命令２は「要素の種類がｂｏｄｙである要素の内容を出力」を意味する出力命令である。
続いて、部分構造抽出部３では、データベース等から入力文書５ａ、５ｂを読み込み、出力命令生成部２によって生成された出力命令に基づき、出力（配信）すべき（出力命令の照合条件に合致する）入力文書中の要素（基点要素）を特定する。構造情報については、第２図の命令１に従い、基点要素のタグを抽出する。また、本発明では、基点要素からルートに至るパス内に位置する要素（タグ）も抽出する。これにより、出力文書６ａ、６ｂにおける要素間の関係（文書の階層構造における上位−下位関係と姉妹関係）が元の入力文書５ａ、５ｂと等価となるため、構造化文書アプリケーションの処理に適した文書を生成することができる。
また、内容については、命令２に従い、基点要素の内容を抽出する。なお、基点要素の内容には、基点要素の下位の要素（子孫要素）の内容も含む。
第３図は、入力文書５ａの例であり、第４図は、第３図の入力文書から第２図の出力命令に従って生成された出力文書６ａの例である。出力文書６ａのｂｏｄｙ要素で囲まれた部分では、テキストデータ（内容）と、ｂｏｄｙ要素の下にあるｋｅｙタグだけが出力され、その他のタグは出力されない。また、基点要素以外のタグとして「ルート要素からｋｅｙ要素までのパス（第３図ではａｒｔｉｃｌｅタグとｐタグ）」が出力される。
以上、本発明の基本原理を説明したが、次に、第１図と同じ構成を用いて、別の出力命令により配信すべき文書が指定された場合の例を示す。第５図は「非出力」指示を含む出力命令の一例である。第５図に示されるように、構造情報に関する出力命令（命令１）は第２図と同じであるが、内容に関する出力命令において非出力を意味する「×」を含んでいる（命令３）。このように本発明によれば、内容それぞれに出力／非出力の指定を行うことができるため、余計なテキストデータを配信せずにすむ。
第６図は、第５図における内容に関する出力命令の範囲の重複状態を示した図である。図示されるように、第５図の出力命令では、内容に関する出力命令の影響範囲に重複があるが、ここでは、下位要素の内容は、特にその要素の内容に対しての出力指定がなければ、上位要素の出力指定を継承することとしている。すなわち、第５図では、ｈｅａｄｅｒ要素の内容はａｒｔｉｃｌｅ要素の内容の出力指示を継承し、ｐ要素の内容（ｋｅｙ要素の内容以外）はｂｏｄｙ要素の内容の出力指示に従う。このような指示により生成された出力文書例を第７図に示す。第７図の出力文書は、第３図の入力文書に対し第５図の出力命令に従って生成した出力文書の例であり、ｂｏｄｙ要素の下のｋｅｙ要素の内容と、ｂｏｄｙ要素以外のａｒｔｉｃｌｅ要素の内容が出力されている。
なお、本発明の原理を用いた最良の実施の形態は実施の形態１にて詳述する。
さらにまた、本発明に係る文書配信装置において、前記構造化文書には、文書構造に関する定義情報が定められており、前記生成手段は、前記指定手段の指定に加え、前記定義情報に基づき構造化文書を生成することを特徴とするものである。
このような構成によれば、必要に応じて、文書構造に関する定義情報を参照し、定義情報で必須指定とされている要素（タグ・属性）が、配信文書に追加されるため、配信文書が、定義情報に正しく合致した文書となることが保証される。これにより、文書構造に関する定義情報を使って構造化文書の構造を検証するタイプのアプリケーションに対して、処理可能な文書を配信することができる。
以下、上述の第１図と同様の構成を用いて、構造化文書の構造に関する定義情報に基づいた出力命令を生成する場合の原理を簡単に説明する。ここでは、文書構造に関する定義情報としてＸＭＬのＤＴＤを用いる。第８図は、第３図の入力文書のＤＴＤの一例を示した図である。〈！ＥＬＥＭＥＮＴ〉に示された要素について、その下位に含まれる要素が定義され（図では（）内）、更に各要素について「？」「＊」「＋」等の記号を付加するか或いは記号を付加しないことにより、省略が可能であるか（？、＊）、必須構成要素であるか（＋、記号なし）等を定義している。図では「ａｒｔｉｃｌｅ要素はｈｅａｄｅｒとｂｏｄｙ要素を持つ（必須）」「ｈｅａｄｅｒ要素はｔｉｔｌｅ要素を持ち（必須）、その他は省略可能である」「ｂｏｄｙ要素はテキストデータとｐ要素を持つが省略可能である」等が定義されている。
このようなＤＴＤが予め備えられている場合には、部分構造抽出部３は配信すべき文書を作成する際に、出力命令の他にＤＴＤも読み込み、ＤＴＤで必須とされている要素を構造情報として出力する。
第９図は、第８図のＤＴＤを参照して、第２図の出力命令に基づいて生成された出力文書の一例である。図示されるように、第２図の出力命令には指定がないｈｅａｄｅｒタグやｔｉｔｌｅタグが出力されている。
なお、本発明の原理を用いた最良の実施の形態は実施の形態１にて詳述する。
更に、文書配信装置において、前記配信手段は、前記生成手段により生成された構造化文書を構造情報と内容とに分け、構造情報を優先して配信することを特徴とするものである。更にまた、本発明に係る文書配信装置において、前記配信手段は、前記生成手段により生成された構造化文書を構成する各要素の内容について配信順位を判断する判断手段を備え、前記構造情報を配信した後、前記判断手段が判断した順位に基づいて、前記要素の内容を配信することを特徴とするものである。
また、本発明に係る文書配信装置において、前記指定手段は、前記配信すべき構造化文書を構成する各要素の内容に対し配信順位を指定する配信順位指定手段を備え、前記配信手段は、前記構造情報を配信した後、前記配信順位指定手段による指定に基づいて、前記生成手段により生成された構造化文書を構成する要素の内容を配信することを特徴とするものである。
このような構成によれば、配信手段は、まず配信文書の構造情報を配信し、続いて優先順位の高い順に要素の内容を配信することができるため、特に長い内容を含むような文書を配信する場合に、アプリケーションの配信待ち時間を短縮することができる。
以下、このような発明の原理を、上述の第１図と同様の構成を用いて、簡単に説明する。部分構造抽出部３によって生成された出力文書は、部分構造配信部４によって、構造化文書アプリケーションが受け取れる形式に変換され、構造化文書アプリケーションに配信される。本発明において、部分構造配信部４では、出力文書を段階的に配信する手段を持ち、初めに構造情報だけを配信し、続いて優先順位の高い順に要素の内容を配信することもできる。
第１０図に、優先順位付きの出力命令の一例を示す。第１０図では、内容に関する出力命令の出力指示に優先順位が指定されており、番号の若い順に優先順位が高い状態を表している。第１１図は段階的配信処理の原理を示した図である。第１０図の出力命令に対し、部分構造配信部４は、まず出力文書の構造情報を配信し（第１１図、▲１▼）、続いて第１０図の優先順位に従って、ｋｅｙ要素の内容（第１１図、▲２▼）、ｋｅｙ要素以外の内容（第１１図、▲３▼）を配信する。
なお、本発明の原理を用いた最良の実施の形態は実施の形態３にて後述する。
また、本発明は、前述の文書配信装置から配信された構造化文書を受信する文書受信手段と、前記文書受信手段により受信された構造化文書を前記アプリケーションに出力する出力手段とを備えた文書受信装置を提供する。
さらに、本発明に係る文書受信装置は、前記文書受信手段が複数のブロックに分割された構造化文書を受信した場合、配信された構造化文書となるよう各ブロックを合成する合成手段を備え、前記出力手段は、前記合成手段により合成された構造化文書を前記アプリケーションに出力することを特徴とするものである。
このような構成によれば、特に長い内容を含むような文書が、複数のブロックにわかれて配信された場合に、それら配信されたデータを元の構造化文書に組み立て、アプリケーションに出力することができ、結果としてアプリケーションの配信待ち時間を短縮しつつ、アプリケーションが処理可能な形式で配信文書を受け取ることが可能となる。
さらにまた、本発明に係る文書受信装置において、前記内容は、前記構造化文書を構成する要素の内容であり、前記配信要求を行うアプリケーションに対し、前記要素の内容の配信順位を指示する配信順位指示手段を備えたことを特徴とするものである。
このような構成によれば、アプリケーションが文書配信装置に対して配信要求を行う場合、配信順位を指定して配信要求することができるため、アプリケーションの処理に都合の良い順序で必要なデータ取得することができ、結果として、配信待ち時間を短縮することができる。
本発明に係る文書受信装置は、上述した構造化文書配信装置１において部分構造配信部４が段階的配信を行なう場合には、第１１図に示されるように構造化文書アプリケーション９の受け口に、文書受信装置の機能を有する部分構造受信部８を備えておく。この部分構造受信部８が段階的に配信されたデータ（▲１▼から▲３▼まで）を構造化文書アプリケーション９が処理できるような構造化文書に組み立てて構造化文書アプリケーション９に対して出力することで、確実に構造化文書アプリケーションの処理に必要な構造化文書を配信することができる。
なお、受信処理の一例として、例えば、配信された要素を受信する場合に、まず、構造化文書アプリケーションからの要求受け付けを停止した状態で、構造情報を受信し、次に構造情報の受信が終わった段階で、構造化文書アプリケーションからの要求受け付けを再開し、並行して、残りの情報の受信を継続し、構造化文書アプリケーションから、まだ受信していない内容に対する参照要求が来た場合には、その部分が受信されるまで待ってから、構造化文書アプリケーションの要求を満たす操作を行うようにしてもよい。
また本発明は、構造化文書を配信する文書配信方法において、前記構造化文書について所定の処理を行うアプリケーションから文書配信要求を送信する配信要求送信ステップと、前記配信要求を受信する配信要求受信ステップと、前記受信した配信要求に基づいて、配信すべき構造化文書の構造情報と内容とを区別して指定する指定ステップと、前記指定ステップによる指定に基づき、構造情報又は内容を所定の記憶部から取得して配信すべき構造化文書を生成する生成ステップと、前記生成ステップにより生成された構造化文書を前記アプリケーションに配信する配信ステップとを備えたことを特徴とする文書配信方法を提供する。
更に本発明は、コンピュータが読み取り可能な記録媒体に記録され、構造化文書を配信するための処理をコンピュータに実行させる文書配信プログラムにおいて、前記構造化文書について所定の処理を行うアプリケーションからの配信要求を受信する配信要求受信ステップと、前記受信した配信要求に基づいて、配信すべき構造化文書の構造情報と内容とを区別して指定する指定ステップと、前記指定ステップによる指定に基づき、構造情報又は内容を所定の記憶部から取得して配信すべき構造化文書を生成する生成ステップと、前記生成ステップにより生成された構造化文書を前記アプリケーションに配信する配信ステップとを備えたことを特徴とする文書配信プログラムを提供する。
さらにまた、本発明は、構造化文書について所定の処理を行うアプリケーションに対し、前記所定の処理に必要な構造化文書を配信する文書配信装置であって、前記アプリケーションからの配信要求を受信する受信手段と、前記受信手段により受信された配信要求に基づいて、配信すべき構造化文書の構造情報と内容とを区別して指定する指定手段と、前記指定手段による指定に基づき、構造情報又は内容を所定の記憶部から取得して配信すべき構造化文書を生成する生成手段と、前記生成手段により生成された構造化文書を前記アプリケーションに配信する配信手段とを備えてなる文書配信装置と、前記文書配信装置から配信された構造化文書を受信する文書受信装置とから構成される文書配信システムを提供する。
発明を実施するための最良の形態
以下、本発明の実施の形態を図を用いて詳細に説明する。
実施の形態１．
本実施の形態では、構造化文書アプリケーションからの配信要求に応じてＸＭＬ形式の構造化文書を配信する構造化文書配信システムを例にとり、その動作を詳述する。第１２図は、本実施の形態の基本構成を示したブロック図である。図において、サーバマシン１００とクライアントマシン２００が電気通信回線３００を介して接続されており、サーバマシン１００に備えられた構造化文書配信装置１０からクライアントマシン２００に存在する、構造化文書アプリケーション２１に対して構造化文書が配信される。
サーバマシン１００には、構造化文書配信装置１０に加え、ＸＭＬ形式の構造化文書を格納しているデータベース（構造化文書格納庫）１７が備えられており、構造化文書配信装置１０がこのデータベース１７から構造化文書（入力文書）１５を読み出し、配信すべき文書（出力文書）１６を生成して、クライアントマシン２００に配信する。本実施の形態で取り扱う構造化文書には文書構造に関する定義情報（事前定義情報）１８が予め設定されており、出力文書１６を生成する際には、この事前定義情報１８が参照される。この事前定義情報１８は、サーバマシン１００上の所定の記憶領域に記憶され、参照される。
なお、構造化文書配信装置１０は、「発明の開示」において示した原理図と同様に、出力命令生成部１１と、部分構造抽出部１２と、部分構造配信部１３とから構成される。出力命令生成部１１は、構造化文書アプリケーションの参照情報１４を受信して、受信した参照情報を解析し、配信すべき構造化文書の構造情報と内容の指定を出力命令１９という形で指定する。部分構造抽出部１２はこの出力命令１９を参照して、データベース１７から入力文書１５を読み出し、出力文書１６を生成する。部分構造配信部１３は、出力文書１６を構造化文書アプリケーション２１に配信する。本実施の形態における構造化文書配信装置１０の基本的機能は、発明の開示において示した原理と同様である。なお、本発明においては、入力文書１５及び出力文書１６は、テキスト形式、ＤＯＭ形式のいずれの形式で表現されていてもよく、特に限定されない。
また、本実施の形態では、クライアントマシン２００の構造化文書アプリケーション２１は、ＸＳＬＴ（ＸＭＬ  ＳｔｙｌｅＳｈｅｅｔ  Ｌａｎｇｕａｇｅ  Ｔｒａｎｓｆｏｒｍａｔｉｏｎｓ；Ｗ３Ｃ  Ｒｅｃｏｍｍｅｎｄａｔｉｏｎ１６−Ｎｏｖ−１９９９）プロセッサとし、ＸＳＬＴプロセッサ（構造化文書アプリケーション）２１の出力を決定するＸＳＬＴスタイルシートを構造化文書アプリケーションの参照情報１４として利用する。ＸＳＬＴスタイルシートは、配信要求として電気通信回線３００を介してサーバマシン１００の構造化文書配信装置１０に送信される。
第１３図は、本実施の形態における全体の処理の流れを示したフローチャートである。本フローチャートに沿って、本システムの動作を詳細に説明する。
まず、構造化文書配信装置１０の出力命令生成部１１は、クライアントマシン２００の構造化文書アプリケーション（ＸＳＬＴプロセッサ）２１から構造化文書アプリケーションの参照情報１４（ＸＳＬＴスタイルシート）を受信し、該参照情報１４を読み込んで、解析を行なう（Ｓ１）。第１４図にＸＳＬＴスタイルシート１４の一例を示す。出力命令生成部２は、第１４図のＸＳＬＴスタイルシート１４から、「ＸＳＬＴプロセッサ２１において、ｐｒｏｄｕｃｔ要素を手掛かりに、ｐｒｏｄｕｃｔ／ｎａｍｅ要素の内容と、ｐｒｏｄｕｃｔ／／ｄｏｍｅｓｔｉｃ要素（’／／’は子孫関係）の内容を抽出する」ことを解析し、出力命令１９を生成する（Ｓ２）。以下、構造化文書アプリケーション（ＸＳＬＴプロセッサ）２１が必要とする要素を基点要素と呼称する。
第１４図のＸＳＬＴスタイルシート１４から生成される出力命令１９の例を第１５図に示す。上段の３つの命令が構造情報に関する出力命令であり、下段の４つが内容に関する出力命令である。命令１から命令３では、それぞれ構造情報として、ＸＳＬＴプロセッサ２１が必要とするｐｒｏｄｕｃｔ、ｐｒｏｄｕｃｔ／ｎａｍｅ、ｐｒｏｄｕｃｔ／／ｄｏｍｅｓｔｉｃのタグを出力することを意味している。また、命令５から命令７では、「ｐｒｏｄｕｃｔ／ｎａｍｅ、ｐｒｏｄｕｃｔ／／ｄｏｍｅｓｔｉｃの内容を必要とするが、（その他の）ｐｒｏｄｕｃｔの内容を必要としない」ことを意味している。また、命令４はＸＳＬＴプロセッサ２１固有の参照情報である「ｐｒｏｄｕｃｔ要素以外の内容を出力」するための出力命令である。ここで、上位条件の「／」は文書のルートを意味し、「＊」は全てのタグ名を意味する。つまり、命令４の照合条件は、「どのようなタグ名のルート要素でも基点要素とする」ことを意味している。
第１６図は、第１４図のＸＳＬＴスタイルシート１４から第１５図の出力命令１９を生成する処理の流れの詳細を示したフローチャートである。なお、このフローチャートは、構造化文書アプリケーションの参照情報１４がＸＳＬＴスタイルシートの場合の処理の流れの一例を示したものであり、構造化文書アプリケーション２１の参照情報や動作仕様がＸＳＬＴスタイルシートと異なる場合には、異なるフローチャートとなる。
まず、第１６図のＳ２０、Ｓ２１において、ＸＳＬＴの仕様におけるビルドインテンプレート規則（ｂｕｉｌｄ−ｉｎ  ｔｅｍｐｌａｔｅ  ｒｕｌｅ）に関する処理を行う。第１４図のスタイルシートには”／”に関するテンプレート規則（〈ｘｓｌ：ｔｅｍｐｌａｔｅ  ｍａｔｃｈ＝”／”〉）がないため（Ｓ２０、ＮＯ）、上位条件”／”、基点要素”＊”、出力指示「○」の出力命令を生成する（Ｓ２１）。これにより第１５図の命令４が生成される。
続いて、テンプレート規則（〈ｘｓｌ：ｔｅｍｐｌａｔｅ〉要素）毎に処理する。まず、ＸＳＬＴスタイルシート１４にｍａｔｃｈ属性をもつテンプレート規則がある場合（Ｓ２２、ＹＥＳ）、ｍａｔｃｈ属性に記述されているロケーションパスパターンにマッチするノードを基点要素とし、その他の条件を照合条件（上位もしくは下位条件）として、構造情報に関する出力命令を生成する（Ｓ２３）。第１４図のスタイルシートでは”ｐｒｏｄｕｃｔ”（基点要素のみ）がこれに該当し、第１５図の命令１が生成される。このテンプレート規則（〈ｘｓｌ：ｔｅｍｐｌａｔｅ  ｍａｔｃｈ＝“ｐｒｏｄｕｃｔ”〉）は、ｓｅｌｅｃｔ属性の無いｘｓｌ：ａｐｐｌｙ−ｔｅｍｐｌａｔｅｓ要素を持たないため（Ｓ２４、ＮＯ）、ｍａｔｃｈ属性”ｐｒｏｄｕｃｔ”に関し、出力指示が×である命令５が生成される（Ｓ２５）。
最後にテンプレート規則中のｘｓｌ：ａｐｐｌｙ−ｔｅｍｐｌａｔｅｓ要素やｘｓｌ：ｖａｌｕｅ−ｏｆ要素のｓｅｌｅｃｔ属性、｛｝で囲まれた要素名に対し、構造情報と内容に関する出力命令を生成する（Ｓ２６）。第１４図のスタイルシートでは、”ｎａｍｅ”や”ｄｏｍｅｓｔｉｃ”がこれに該当し、第１５図の命令２、３、６、７が生成される。この時、テンプレート規則のｍａｔｃｈ属性やｓｅｌｅｃｔ属性に記述されているロケーションパス（基点要素以外のパス）が、各出力命令の照合条件に追加される。例えば、第１５図の命令２では、ｎａｍｅが基点要素となり、ｎａｍｅ以外のパス（ｐｒｏｄｕｃｔ／）が上位条件として設定される。また、ｓｅｌｅｃｔ属性がカレントノード（”．”）であった場合には、Ｓ２５で生成した出力命令を無効にし、ｍａｔｃｈ属性に対する内容に関する出力命令を生成する。上記の処理を全てのテンプレート規則に対して行い、最終的な出力命令（第１５図）を得る。
こうして配信すべき構造化文書を指定する出力命令１９が生成されると、次に、処理対象となる構造化文書（入力文書１５）がデータベース１７から読み込まれる（第１３図：Ｓ３）。第１７図は、読み込まれた入力文書１５の一例であり、第１８図は、第１７図の入力文書１５を木構造で表現した図である。
部分構造抽出部１２は、第１７図の入力文書１５に対し、第１５図の出力命令１９の照合条件に合致する基点要素を探索する（第１３図：Ｓ５）。基点要素の探索手法は、入力文書１５の形式によって異なるが、ＤＯＭ形式ならば、入力形式をそのまま内部形式として利用し、ＤＯＭツリー内をトラバースすることにより、照合条件に該当する要素を探索すればよい。
照合条件に合致する基点要素が入力文書中に存在した場合（Ｓ６、ＹＥＳ）、出力命令１９に従って、入力文書中の要素や要素の内容に対応して、出力対象であることを意味するマークを付ける。例えば、構造情報に関する出力命令ならば、基点要素と、ルート要素から基点要素までの中間要素のタグにマークを付け、内容に関する出力命令であれば、基点要素の内容にマークを付ける（Ｓ７）。この時、非出力指示「×」が指定されている基点要素の場合については、その内容にはマークを付けずに出力対象から外す。このマーク付加処理は、メモリ上に展開された入力文書中の各要素或いは内容に対応して、所定の記憶領域にフラグを立てることにより行われてもよいし、その処理手法は特に限定されない。
上記の基点要素の探索処理（Ｓ４〜８）は、全ての出力命令の照合条件に合致する入力文書中の全ての基点要素に対して繰り返す。
基点要素の探索処理が終了した段階（Ｓ４、ＹＥＳ）で、事前定義情報１８に合致する出力文書を生成しない場合には（Ｓ９、ＮＯ）、上述のマークされた要素或いは内容のみを抽出して出力文書を生成する（Ｓ１２）。
なお、同一の要素に対して異なる出力指示が指定された場合には、出力指示があるものは全て出力するか、出力命令に優先度を付け、優先度の高い出力指示に従えばよい。例えば、予め「後ろの出力命令ほど優先度が高い」というルールを設けておけば、第１５図に示される出力命令においては、「全ての要素の内容の出力（命令４）」よりも「ｐｒｏｄｕｃｔ要素の内容の非出力（命令５）」の優先度が高く、それよりも「ｎａｍｅ要素の内容の出力（命令６）」の優先度が高く、さらに「ｄｏｍｅｓｔｉｃ要素の内容の出力（命令７）」の優先度が最も高いことになる。
第１９図は、第１７図の入力文書１５に対し、第１５図の出力命令１９に従って生成された出力文書１６の例であり、第２０図は、第１９図の文書を木構造で表現した図である。第２０図において、太枠は出力命令１９によって出力された構造情報と内容であり、細枠はルート要素から基点要素までのパスとして出力された構造情報である。本実施の形態では、出力命令１９によって構造情報と内容を指定する他、ルート要素から基点要素までのパスも構造情報の出力要素として含むことを予め部分構造抽出部１２のプログラム中に規定しておき、最終的に出力される出力文書１６には、この規定が反映されるよう処理される。
このように生成された出力文書１６を、部分構造配信部４が、構造化文書アプリケーション２１が処理可能な形式に変換（第１３図：Ｓ１３）し、構造化文書アプリケーション２１に配信する（Ｓ１４）。
本実施の形態では、ＸＳＬＴプロセッサ２１には、第１４図のＸＳＬＴスタイルシート１４と第１９図の出力文書１６が入力され、ＸＭＬの構造変換処理が行われる。この構造変換処理の出力結果は、第１９図の出力文書１６を入力した場合でも、第１７図の入力文書１５を入力した場合と同様の出力結果となる。
なお、構造化文書アプリケーション２１の中には、文書構造を定義した事前定義情報１８により、構造化文書の文書構造の検証を行なうものもある。構造化文書アプリケーション２１側において、事前定義情報１８に合致する構造化文書が必要な場合には、部分構造抽出部１２において、事前定義情報１８を解析し（第１３図：Ｓ１０）、事前定義情報１８で必須とされている要素を出力対象に追加する（Ｓ１１）。
第２１図に、第１７図の入力文書１５に対する事前定義情報１８の例を示す。第２１図に示された事前定義情報１８は、ＸＭＬにおいて文書型定義（ＤＴＤ）と呼ばれるものであり、ルート要素や文書中に出現する要素の種類や出現位置・出現回数などがリストで定義される。さらに、ある要素の出現回数が”＊”、”＋”、”？”といった記号で定義される。例えば、”？”は「０回または１回出現」を意味し、その要素は出現しても、出現しなくてもよい（省略可能）。また、記号なしは常に「１回出現」を意味し、その要素は必ず１回出現しなければならない（省略不可）。
このような定義に基づいて、第２１図の事前定義情報１８を解析すると、以下のような省略可能・省略不可情報が得られる。
１  ｐｒｄｕｃｔｓ要素を出力する場合、ｐｒｏｄｕｃｔ要素は省略可能
２  ｐｒｏｄｕｃｔ要素を出力する場合、ｎａｍｅ要素は省略不可、その他は省略可能
３  ｓａｌｅｓ要素を出力する場合、ｄｏｍｅｓｔｉｃ要素とｆｏｒｅｉｇｎ要素は省略不可
・・・
部分構造抽出部１２は、第１３図のＳ４からＳ８において出力対象としてマーク付けを行なった全ての要素に対し、その要素を出力する場合に省略不可の要素があるか否かを上述の事前定義情報１８に基づいてチェックする。ここで、省略不可の要素があった場合には、その要素を出力対象に追加する（マーク付けを行なう）。
例えば、事前定義情報１８では「ｐｒｏｄｕｃｔを出力する場合、ｎａｍｅは省略不可」、「ｓａｌｅｓを出力する場合、ｄｏｍｅｓｔｉｃ、ｆｏｒｅｉｇｎは省略不可であるため、ｎａｍｅ、ｄｏｍｅｓｔｉｃ、ｆｏｒｅｉｇｎ要素が出力対象に追加される。この場合、ｎａｍｅ，ｄｏｍｅｓｔｉｃ要素は出力命令１９で既に出力対象となっているため、ｆｏｒｅｉｇｎ要素が新規に追加される。
こうして出力対象となっている全ての要素のチェックが終了した段階で、出力文書１６を生成する（第１３図：Ｓ１２）。第２２図は、生成された出力文書１６の例であり、第２３図は、第２２図を木構造で表現した図である。第２２図の出力文書１６は、第２１図の事前定義情報１８に合致しているため、配信対象が文書構造の検証を行なう構造化文書アプリケーションであっても、配信された文書は正しく解析され、処理される。
実施の形態２．
実施の形態１では、基点要素と上位条件のみで構成され下位条件を含まない出力命令を例として挙げたが、本実施の形態では、下位条件を含む出力命令の一例を示す。構造化配信システムの基本構成は、実施の形態１と同様とする。
第２４図は、下位条件を含む出力命令の例である。本図は、第５図の命令１に下位条件が追加された出力命令となっている。なお、”＠”は属性であること（正確には基点要素”ｋｅｙ”の属性）を表わし”＝”は属性ｌｅｖｅｌの値が”３”であることを示している。また、本実施の形態では、第２５図に示される入力文書を用いて出力文書を生成する。
第２４図に示された出力命令により、第２６図の出力文書が生成される。第７図の出力文書と比較すると、属性ｌｅｖｅｌの値が３のｋｅｙタグだけが出力されており、その他のｋｅｙタグは出力されていない。また、出力されているｋｅｙタグにおいても、ｌｅｖｅｌ属性は出力されない。ｌｅｖｅｌ属性を出力させたい場合には、ｌｅｖｅｌ属性を基点要素とした構造情報及び内容の出力命令を、別途、指定するようにする。
このように、本発明に係る実施の形態では、様々な条件により構成された出力命令を生成することができるため、余計な要素が排除され、構造化文書アプリケーションが真に必要な要素のみで構成された文書を得ることができる。
実施の形態３．
本実施の形態では、優先順位付きで出力文書を構造化文書アプリケーションに配信する例を説明する。第２７図は、本実施の形態における構造化文書配信システムの基本構成を示したブロック図である。
実施の形態１と同様に、サーバマシン１００ａとクライアントマシン２００ａが電気通信回線３００ａを介して接続される。そしてサーバマシン１００ａには、実施の形態１と同様、構造化配信装置１０ａが備えられているが、本実施の形態では、構造化配信装置１０ａはデータベース（構造化文書格納庫）１７ａの中に組み込まれ、部分構造抽出部１２ａがデータベース１７ａの内部形式２３に直接アクセスする形態としている。
また、クライアントマシン２００ａには、優先順位の順に配信された出力文書を合成する部分構造受信部２０が備えられている。更に本実施の形態では、ＤＯＭ形式で構造化文書が配信されるため、構造化文書アプリケーション２１ａには、ＤＯＭインタフェース２２が備えられ、部分構造受信部２０により合成された主記憶上の構造化文書にアクセスできる構成となっている。
本実施の形態において行なわれる処理手順は、基本的に出力文書を生成（第１３図：Ｓ１２）するまでは、実施の形態１と同様である。実施の形態１で部分構造抽出部１２がデータベース１７から入力文書を読み込み出力文書を生成するのに対し、本実施の形態では、まず入力文書の構造情報だけをデータベース１７ａの内部形式２３から読み出して生成するため、同時に全てのテキストデータを含めた入力文書を読み出す必要がない。そして、構造情報とは別に、出力対象となった要素の内容だけをデータベース１７ａの内部形式２３から読み出すようにする。すなわち、構造化文書配信装置１０ａをデータベース１７ａに組み込むことにより、データベース１７ａの内部形式２３に直接アクセスでき、且つ構造情報や内容を個別に取得できるため、データベース１７ａからデータを取り出すコストが削減できる。
また、本実施の形態では、出力命令の内容出力指示に優先順位が付いていた場合、部分構造配信部１３ａは、まず、出力文書の構造情報から配信し、続いて優先順位の高い順に要素の内容を配信する。第２８図に優先順位付きの出力命令の例を示す。なお本図は第１５図の出力命令に優先順位が付いたものであり、命令６、命令７、命令４の順に優先順位が高いことを表している（なお、命令５は非出力指示となっている）。
この優先順位は、構造化文書アプリケーションの参照情報１４ａにより予め定められたものであってもよく、例えば、参照情報１４ａにおいて、記述される順番に従って内容の優先順位が低くなるものとすれば、出力命令生成部２ａが参照情報１４ａを解析した時点でその優先順位を判断して出力命令を生成することができる。また、クライアントマシン２００ａに優先順位を判断する判断部（図示せず）を設けておき、構造化文書アプリケーション２１ａで参照情報１４ａが作成される段階で、該判断部の判断結果を参照情報１４ａに反映させるようにすることもできる。例えば、長いテキストの内容については配信順序が後になるよう、優先順位を指定して（参照情報における記述の順番を変更して）おけば、配信の順序を制御でき、構造化文書アプリケーション２１ａの配信待ち時間を短縮することができる。
クライアントマシン２００ａの部分構造受信部２０では、部分構造配信部１３ａから順に配信されるデータを１つの構造化文書に合成して、構造化文書アプリケーション２１ａに出力する。
第２９図は、構造化文書配信装置１０ａと構造化文書アプリケーション２１ａ間のシーケンス図である。構造化文書アプリケーション２１ａから文書要求があると（１）、構造化文書配信装置１０ａは構造化文書アプリケーション２１ａが必要とする部分のみを抽出した出力文書の構造情報を初めに送信する（２）。構造情報の送信が完了した段階で（３）、部分構造受信部２０は構造化文書アプリケーション２１ａに文書受信完了のメッセージが伝えられると（４）、構造化文書アプリケーション２１ａは要求した文書に対する処理を開始できる。次に、構造化文書配信装置１０ａは内容の送信を開始する。本実施の形態では、ある要素の内容の送信が完了する前に、構造化文書アプリケーション２１ａが、その内容を参照しようとした場合には、内容の送信が完了するまで部分構造受信部２０にてロック（待ち時間）が発生する。第２９図においては、ｎａｍｅ要素の内容送信が開始され（５）、送信が完了しないうちに構造化文書アプリケーション２１ａからｎａｍｅ要素への参照要求が発生した場合（６）、ｎａｍｅ要素の内容の送信が完了するまで、部分構造受信部２０は待ち状態となる。ｎａｍｅ要素の内容送信が完了すると（７）、その内容を構造化文書アプリケーション２１ａに返し（８）、次の内容送信処理に進む。なお、第２９図における（９）から（１２）のｄｏｍｅｓｔｉｃ要素の内容送信処理のように、部分構造受信部２０において、構造化文書アプリケーション２１ａから、既に内容の送信が完了している要素に対する参照要求を受信した場合には、ロック（待ち時間）は発生しない。
第３０図から第３２図は、第１９図と同じ出力文書が第２８図の優先順位で配信された場合に、部分構造受信部２０が構造化文書を合成する様子を示す。部分構造受信部２０は、まず出力文書の構造情報だけを受信し（第３０図）、続いてｎａｍｅ要素の内容（第３１図）、ｄｏｍｅｓｔｉｃ要素の内容（第３２図）を受信し、受信された順に構造化文書アプリケーション２１ａへの入力データとなる構造化文書を組み立てていく。
以上、実施の形態１から３を説明したが、本発明は、サーバ・クライアント形式で実現されるシステムに限定されるものではなく、構造化文書配信装置と構造化文書アプリケーションが同一マシン上にあってもよい。
同様に、上述した実施の形態において説明された構造化文書配信装置や、構造化文書を受信するクライアントマシンの構成及び動作は、本発明を実現するための一例であり、その構成は本発明の趣旨を逸脱しない範囲内において特に限定されず、適宜応用可能であることは言うまでもない。
産業上の利用の可能性
以上説明したように、本発明によれば、構造情報と内容を区別して、文書中の必要な要素を抽出して配信することができるため、構造化文書アプリケーションが真に必要とする情報のみが配信されることとなる。これにより配信コストが削減され、構造化文書アプリケーションが使用する計算機資源を節約することができる。
また、構造化文書アプリケーションが受け取る出力文書（配信文書）は、基点要素からルート要素までの構造が含まれるため、要素間の関係が入力文書（元の構造化文書）と等価であることが保証される。また、本発明によれば、ＤＴＤなどの文書構造を定義した定義情報に合致した出力文書も生成することができるため、構造化文書アプリケーションにおいて文書構造の検証を正しく実行することができる。
さらに、出力文書を段階的に配信する手段を用いることにより、構造化文書アプリケーションでは、全ての情報が配信済みになる前に処理を開始することができ、配信の待ち時間を減少させることができる。従って本発明は、特に長い内容を持つ文書を配信する場合には有効である。
【図面の簡単な説明】
第１図は、本発明の原理図である。
第２図は、出力命令生成部により生成された出力命令の一例である。
第３図は、入力文書の例である。
第４図は、第３図の入力文書から第２図の出力命令に従って生成された出力文書の例である。
第５図は、「非出力」指示を含む出力命令の一例である。
第６図は、第５図の内容に関する出力命令の範囲の重複状態を示した図である。
第７図は、第３図の入力文書に対し第５図の出力命令に従って生成した出力文書の例である。
第８図は、入力文書の事前定義情報（ＤＴＤ）の一例を示した図である。
第９図は、ＤＴＤに合致した出力文書の一例である。
第１０図は、配信に関する優先順位付きの出力命令の一例である。
第１１図は、段階的配信処理の原理を示した図である。
第１２図は、実施の形態１の基本構成を示したブロック図である。。
第１３図は、構造化文書配信処理の全体の流れを示したフローチャートである。
第１４図は、構造化文書アプリケーションの参照情報（ＸＳＬＴスタイルシート）の一例である。
第１５図は、第１４図のＸＳＬＴスタイルシートから生成される出力命令の一例である。
第１６図は、出力命令生成処理の流れの詳細を示したフローチャートである。
第１７図は、入力文書の一例である。
第１８図は、第１７図の入力文書を木構造で表現した図である。
第１９図は、第１７図の入力文書に対し、第１５図の出力命令に従って生成された出力文書の例である。
第２０図は、第１９図の文書を木構造で表現した図である。
第２１図は、第１７図の入力文書に対する事前定義情報（ＤＴＤ）の一例である。
第２２図は、生成された出力文書の一例である。
第２３図は、第２２図を木構造で表現した図である。
第２４図は、下位条件を含む出力命令の例である。
第２５図は、入力文書の一例である。
第２６図は、第２４図の出力命令により生成された出力文書の一例である
第２７図は、実施の形態３における構造化文書配信システムの基本構成を示したブロック図である。
第２８図は、優先順位付きの出力命令の例である。
第２９図は、優先順位付き配信を行う場合の、構造化文書配信装置と構造化文書アプリケーション間のシーケンス図である。
第３０図は、構造化文書が優先順位の順に配信された場合に、部分構造受信部が構造化文書を合成する様子を示す図である（構造情報）。
第３１図は、構造化文書が優先順位の順に配信された場合に、部分構造受信部が構造化文書を合成する様子を示す図である（ｎａｍｅ要素の内容）。
第３２図は、構造化文書が優先順位の順に配信された場合に、部分構造受信部が構造化文書を合成する様子を示す図である（ｄｏｍｅｓｔｉｃ要素の内容）。
【図１】
2003067470.tif 000003
【図２】
2003067470.tif 000004
【図３】
2003067470.tif 000005
【図４】
2003067470.tif 000006
【図５】
2003067470.tif 000007
【図６】
2003067470.tif 000008
【図７】
2003067470.tif 000009
【図８】
2003067470.tif 000010
【図９】
2003067470.tif 000011
【図１０】
2003067470.tif 000012
【図１１】
2003067470.tif 000013
【図１２】
2003067470.tif 000014
【図１３】
2003067470.tif 000015
【図１４】
2003067470.tif 000016
【図１５】
2003067470.tif 000017
【図１６】
2003067470.tif 000018
【図１７】
2003067470.tif 000019
【図１８】
2003067470.tif 000020
【図１９】
2003067470.tif 000021
【図２０】
2003067470.tif 000022
【図２１】
2003067470.tif 000023
【図２２】
2003067470.tif 000024
【図２３】
2003067470.tif 000025
【図２４】
2003067470.tif 000026
【図２５】
2003067470.tif 000027
【図２６】
2003067470.tif 000028
【図２７】
2003067470.tif 000029
【図２８】
2003067470.tif 000030
【図２９】
2003067470.tif 000031
【図３０】
2003067470.tif 000032
【図３１】
2003067470.tif 000033
【図３２】
2003067470.tif 000034
【国際調査報告】
2003067470.tif 000035
2003067470.tif 000036