JP2002183116A - 文書合成方法および文書合成装置 - Google Patents

文書合成方法および文書合成装置

Info

Publication number
JP2002183116A
JP2002183116A JP2000383625A JP2000383625A JP2002183116A JP 2002183116 A JP2002183116 A JP 2002183116A JP 2000383625 A JP2000383625 A JP 2000383625A JP 2000383625 A JP2000383625 A JP 2000383625A JP 2002183116 A JP2002183116 A JP 2002183116A
Authority
JP
Japan
Prior art keywords
document
xml
partial
web
interpretation
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.)
Granted
Application number
JP2000383625A
Other languages
English (en)
Other versions
JP3943830B2 (ja
Inventor
Shinichiro Hamada
伸一郎 浜田
Toshibumi Seki
俊文 關
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.)
Toshiba Corp
Original Assignee
Toshiba Corp
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 Toshiba Corp filed Critical Toshiba Corp
Priority to JP2000383625A priority Critical patent/JP3943830B2/ja
Priority to US10/015,604 priority patent/US20020078105A1/en
Publication of JP2002183116A publication Critical patent/JP2002183116A/ja
Application granted granted Critical
Publication of JP3943830B2 publication Critical patent/JP3943830B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/958Organisation or management of web site content, e.g. publishing, maintaining pages or automatic linking

Landscapes

  • Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Document Processing Apparatus (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

(57)【要約】 【課題】複数のウェブサイトの情報を1つのウェブ文書
上に合成することが容易にしかも汎用的に行える文書合
成方法および文書合成装置を提供する。 【解決手段】少なくとも、インターネットにおけるWW
W上のマークアップ言語で記述された第1の文書のイン
ターネット上の所在と、第1の文書から抽出する部分文
書の範囲と、合成用の第2の文書上の前記部分文書の挿
入位置と、前記挿入位置に挿入される前記部分文書を含
む前記第2の文書上の文書構造を変換すべき範囲と、前
記文書構造を所望の文書構造に変換するための変換ルー
ルを記述したファイルの識別情報とをマークアップ言語
により記述した第2の文書に従って、前記第1の文書か
ら前記部分文書を抽出して、その部分文書を前記第2の
文書上の前記指定された合成位置に挿入するとともに、
前記変換ルールを用いて前記第2の文書上の前記指定さ
れた範囲の文書構造を変換する。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、複数のウェブ文書
を1つのウェブ文書上に合成するためのウェブ文書合成
方法およびそれを用いたウェブ文書合成装置に関する。
【0002】
【従来の技術】WWW(World Wide We
b)は効果的なプレゼンテーションを低コストで構築・
公開できる情報基盤として普及し、世界中のサイトで膨
大な情報資源が公開されている。またWWWはサーバク
ライアントシステムのためのインフラの側面を持ってい
る。特に電子商取引や最近ではASP(Applica
tion Service Providing)など
への応用が期待されており、本格的なコマースサイトが
急増しつつある状況にある。電子商取引では、ウェブペ
ージは、商取引を処理する企業内LANのバックエンド
システムとユーザとを結ぶ操作パネルとしての役割を果
たす。WWWはサイトを越えて世界中のコンピュータシ
ステムをつなぐ唯一のインフラであるが、今後もウェブ
トップ指向への流れは続くことが予想される。
【0003】WWWで交換される情報資源は増加の一途
をたどり、ウェブシステムに要求される処理はより複雑
で多様なものになるだろう。
【0004】特に、企業はWWWを積極的に活用してお
り、企業データやニュース・商品カタログ情報など自社
の持つ大量のデータをウェブページを通じて公開してい
るが、各ウェブページを一から作るにはあまりにも人手
がかかりすぎるため、定型的なコンテンツを含むウェブ
ページについては、データベースから静的あるいは動的
に機械生成する技術を導入しており、サイト構築および
運用を効率化している。このようなウェブサイトの構築
・運用ツールは、多くのソフトウェアベンダーから提供
されており、非常に充実している。しかしこれらの技術
はいずれも閉じた単一ウェブサイトの構築や運用の効率
化・高性能化に関するものである。
【0005】単一ウェブサイトの構築・運用環境が整備
された現在、次にWWWに求められるのはウェブサイト
間連携である。すなわちサーバクライアントシステムか
ら分散システムへの発展である。特に本格的な電子商取
引の時代を迎えるにあたり、各コマースサイトの電子商
取引システムの連携は必須となる。
【0006】電子商取引システムの連携には、商品プロ
ファイルなどのデータフォーマットや語彙の共通化、そ
して共通のビジネスモデル、それに従った共通のメッセ
ージフォーマットやプロトコルなど多くの取り決めが必
要である。これに対し、OASISやBizTalkな
ど業界団体が標準化を進めているが、企業間の利害の不
一致や商習慣の違いなど多くの壁があるため、その成果
が実を結ぶには、まだまだ時間を要することは間違いな
い。
【0007】一方でその火急のニーズに対応するため、
各ソフトウェアベンダーからは、上述のウェブサイト構
築・運用ツールにウェブサイトの連携機構を追加したパ
ッケージが提供されている。
【0008】しかし、データベースを中心に据えたアプ
リケーションロジック群を核とする従来的なシステム構
築手法は、単一ウェブサイトに対してはウェブページを
単なるユーザインターフェースとして位置付けることで
有効に機能したが、複数ウェブサイトにまたがるシステ
ムに対してはそのままでは適用できない。なぜなら、こ
の構築手法ではシステム連携を実現するためにアプリケ
ーションロジックを接続する必要があるが、サイト間は
ファイアウォールによってさえぎられており、ほとんど
の場合HTTP以外のメッセージが交換できないからで
ある。
【0009】従って、唯一のメッセージ交換のチャンネ
ルであるHTTPをベースとしたシステム統合モデルが
必要だが、パッケージの多くは従来のサイト構築技術に
HTTPアクセス機能を追加しただけであり、HTTP
およびWWWの機能を生かしきれていない状況にある。
【0010】このようにサイト間のシステム連携は、そ
れぞれのシステムが持つロジックを接続するために多く
の取り決めが必要であり本質的に難しい課題である。
【0011】そこで、ロジック接続ではなくコンテンツ
交換を用いたウェブサイト間連携を課題として着目して
みると、ウェブサイト間コンテンツ連携は、ウェブリソ
ースの構造変換程度の調節ですむため、ウェブサイト間
システム連携に比べて解決すべき課題は少ない。
【0012】しかし、その一方で、コンテンツ連携がも
たらす効果は十分に大きい。先に述べたようにWWWで
はすでに膨大なウェブリソースが公開されている。また
ウェブリソースはマルチメディアであり、あらゆるコン
テンツメディアを包括することができる。このようなウ
ェブリソースをサイト間で合意の下に互いに容易に再利
用できる環境があれば、WWWは格段に合理的で経済的
なものになり、WWWの応用に大きな進歩をもたらすだ
ろう。
【0013】例えば、本の売上情報やTV番組の視聴率
情報など、ウェブサイトを構成する情報資源の一部をア
ウトソーシングするといった、分散管理型のウェブサイ
ト構築スタイルが可能となり、大きなウェブパーツ市場
が生まれる可能性もある。また、各ショッピングサイト
が抱える商品カタログを1つのウェブページ上で比較表
示するショッピングモールや、複数の調達システムやオ
ークションシステムなどが抱える案件を統合したマーケ
ットプレースなどの仲介サービスを行うポータルサイト
が最近次々と登場してきており非常に注目されている。
これはウェブ情報が非常に氾濫してきている情勢におい
てウェブ情報を整理したり案内役を果たすサービスへ必
然的なニーズが高まっているからであり、その要求に応
える一つの形である。ウェブリソースを互いに再利用す
るための環境整備は、このようなポータルサイトの構築
に大きな貢献をするだろう。その視点から、電子商取引
システムなどウェブサイト間システム連携への足がかり
となる着実な技術移行という位置付けとも言える。
【0014】さて、ウェブページ検索サービスや各種商
品比較サービスなど、複数のウェブサイトの情報を取り
まとめる仲介サービスを行うポータルサイトが次々と登
場し、非常に注目を集めているわけだが、このような仲
介サービスは、さらに画像の収集やMP3の収集など機
能の専門化・多様化への発展を見せている。そのタスク
の本質は、分散したウェブリソースを収集して加工した
結果をウェブページとして提供するウェブサイト間のコ
ンテンツ連携である。
【0015】HTML技術では、ハイパーリンク機構を
用いることにより任意のウェブページへジャンプできる
ようにしたり、フレーム機構を用いることにより複数の
ウェブページ全体を独立したウィンドウとして表示する
ことはできるが、商品比較機能や合計値段見積もり機能
の提供といった有機的なコンテンツの連携を行うにはま
ったく不十分である。これらを実現するためには、任意
のウェブページを収集して柔軟に加工する機能が必要で
ある。HTMLのこのような機能欠如のため、CGI
(Common Gateway Interfac
e)やServletなどのプログラム起動機構によっ
て実行される外部プログラムやウェブサーバとは独立し
たデーモンプログラムにそれらの加工処理を行わせると
いう方法が取られている。この加工処理は概して次のよ
うな実行手続きが必要である。またデータベースを用い
ている場合は、さらにデータベースへのデータ登録や取
出しの処理が加わる。
【0016】 1.外部ウェブサイトのHTMLページを取得する処理 2.HTMLページから必要なテキストを抽出する処理 3.抽出されたテキストを所望の形式に変換する処理 4.テキストをつなぎ合わせて1つのHTMLを作成す
る処理 このような解決手法には欠点がある。すなわち、これら
の処理の多くは仲介サービス間で内容的に似通っている
にもかかわらず、それぞれサイト構築者が1からプログ
ラムを作成しているというのは生産効率および保守性が
悪い。また、作成されたプログラムはそのサイトの環境
に依存するものであり、必然的にそのサイト専用のプロ
グラム資産となってしまうため、他のサイト環境におい
て再利用することが出来ない。
【0017】このような欠点は、WWW技術においてコ
ンテンツ連携をターゲットに置き、それを容易に実現す
るためのツールあるいはシステムが存在しないことが原
因である。
【0018】
【発明が解決しようとする課題】このように、従来は、
複数のウェブページから必要とする情報を収集して、そ
れを特定の書式に変換するといった加工を行った後、1
つのウェブページ上に合成するための汎用的な手法がな
いという問題点があった。
【0019】今後、複数のウェブサイトの情報をとりま
とめるポータルサイトのような仲介サービスがより活発
化する状況下において、コンテンツ連携に特化した共通
のプラットフォームを提供することは、生産効率および
ポータビリティの面で有効な手段の1つである。
【0020】そこで、本発明は、上記問題点に鑑み、複
数のウェブサイトの情報を1つのウェブ文書上に合成す
ることが容易にしかも汎用的に行える文書合成方法およ
びそれを用いた文書合成装置を提供することを目的とす
る。
【0021】
【課題を解決するための手段】本発明は、インターネッ
トにおけるWWW(World Wide web)上
のマークアップ言語で記述された複数の第1の文書の内
容の一部をWWW上のマークアップ言語で記述された第
2の文書に合成するためのものであって、前記第1の文
書の該インターネット上の所在と、該第1の文書から抽
出する部分文書の範囲と、前記第2の文書上の前記部分
文書の挿入位置と、前記挿入位置に挿入される前記部分
文書を含む前記第2の文書上の文書構造を変換すべき範
囲と、前記文書構造を所望の文書構造に変換するための
変換ルールを記述したファイルの識別情報とをマークア
ップ言語により記述した第2の文書に従って、前記第1
の文書から前記部分文書を抽出して、その部分文書を前
記第2の文書上の前記指定された挿入位置に挿入すると
ともに、前記変換ルールを用いて前記第2の文書上の前
記指定された範囲の文書構造を変換することを特徴とす
る。
【0022】本発明によれば、複数のウェブサイトの情
報を1つのウェブ文書上に合成することが容易にしかも
汎用的に行える。
【0023】好ましくは、前記第2の文書は、前記第2
の文書上の前記部分文書の挿入位置とを指定するととも
に、前記第1の文書の所在と、該第1の文書から抽出す
る部分文書の範囲とを記述するため第1のタグ(挿入命
令タグpz:targets)と、前記変換ルールを用
いて文書構造を変換すべき範囲を指定するとともに、前
記変換ルールを記述したファイルの識別情報を記述する
ための第2のタグ(変換命令タグpz:conver
t)とを用いて記述されている。
【0024】また、好ましくは、前記第2の文書は、X
ML(Extensible Markup Lang
uage)で記述されている。
【0025】さらに、好ましくは、前記第1の文書がX
MLで記述されていないときは、まず、XMLによる記
述型式に変換した後、前記第1の文書から前記部分文書
を抽出して、その部分文書を前記第2の文書上の前記指
定された挿入位置に挿入する。
【0026】なお、上記手法をインターネット上のウェ
ブサーバに組み込み、クライアント装置(ウェブブラウ
ザ)から前記第2の文書の要求を受けたとき、この第2
の文書にの記述に従って1または複数の部分文書を合成
した第2の文書を要求元のウェブブラウザに提供するサ
ーバ装置を構成することができる。
【0027】
【発明の実施の形態】以下、本発明の実施形態について
図面を参照して説明する。
【0028】なお、以下の説明は、次に示す項目の順に
なされている。
【0029】(A)複数のウェブサイトの情報を1つの
ウェブ文書に合成するために必要とされる機能 (B)XML−P’z文書 (B−1)XML−P’z言語の仕様 (B−2)XML−P’z言語処理系の構成および動作 (C)複数のウェブ文書を1つのウェブ文書上に合成す
るための一連の動作 (D)ウェブ文書の合成処理のためのXML−P’zサ
ーバ間の協調動作 (E)追記 (A)複数のウェブサイトの情報を1つのウェブ文書に
合成するために必要とされる機能 まず、実施形態の説明する前に、複数のウェブサイトの
情報(ウェブ文書)を1つのウェブ文書に合成するため
に必要とされる機能について説明する。
【0030】複数のウェブ文書を1つのウェブ文書上に
合成するために必要な機能は、抽出・挿入・変換の3種
類に絞り込まれる。ただし、ウェブサイトの情報、すな
わち、コンテンツとしてのウェブ文書(例えばHTML
文書)の全てが必要となるわけではなく、そのうちの一
部のみが必要となるのが一般であることから、抽出機能
には任意のウェブ文書のうちの部分文書を取り込むこと
が要求される。また、抽出された複数の部分文書を組み
合わせて合成する際に、たとえば表の中に表を入れると
いうような柔軟な挿入機能が要求される。さらにそれだ
けでは不十分で、抽出してきた部分文書を一覧表型式に
合成する際に、形式が不均一である場合に、それらを同
じ形式に合わせるというように、文書の変換機能が要求
されることもある。
【0031】この分析に基づき、本発明は、次のような
記述モデルを採用する。まず、SSI(Server
Side Inclusion)およびその発展系であ
るASP(Active Server Pages)
やJSP(Java Server Pages)と同
じように、複数のウェブ文書(部分文書)を合成するた
めの合成用ウェブ文書内の任意位置にコマンドを配置
し、そのコマンド実行結果が当該位置に埋め込まれると
いう、パッチワーク的な文書処理方式を採用する。
【0032】そして、用意するコマンドとして、どのウ
ェブページのどの部分を抽出してどこに挿入するのかを
示す部分文書の挿入コマンドを用意する。この方法は、
抽出される部分文書の指定とその挿入位置を骨格となる
合成用ウェブ文書を用いて自由にそして感覚的に記述で
きる利点がある。それに加えて、骨格となる合成用ウェ
ブ文書の任意の範囲に対して、変換処理を施すことがで
きる変換コマンドを用意する。この変換コマンドは、範
囲情報と変換ルールを入力とし変換結果の文書を出力と
する。まとめると、合成用ウェブ文書内の任意の位置に
合成ロジックを埋め込むことが出来る記述形式を採用
し、合成ロジック用コマンドとして挿入および変換を用
意した。
【0033】また、採用した実行モデルの1つはSSI
と同様であり、この合成用ウェブ文書をウェブサーバに
配置しておき、ブラウザからそのURLへの要求があっ
た場合に、そのウェブサーバに配置された言語処理系が
その合成用ウェブ文書に含まれるコマンドを解釈実行
し、その結果をブラウザに返すというものである。この
方法では、サイト構築者は、合成用ウェブ文書をウェブ
サーバに配置しておくだけで解釈実行の起動について意
識しなくてよいという利点がある。ただし、そのような
実行方法だけではなく、ユーザが手動で解釈実行を行わ
せることも原理的に可能である。この場合、クライアン
ト側で任意の合成を行うことができる。
【0034】さて、このような合成用ウェブ文書の記述
においてXML(Extensible Markup
Language)は最適な言語である。XMLはタ
グ名や属性名を自由に定義し、それに対してアプリケー
ション側がセマンティクスを与えることが出来る。それ
に加えて、またXMLはツリー型の文書構造を持つこと
が保証されているため、ツリー構造で表現される文書構
造上における1つのノードとして表される特定のエレメ
ントを指し示すだけで部分文書(文書範囲)を指定する
ことができる。
【0035】また、XML自体はローレベルでの標準の
データ形式としての需要から、XSLT(Extens
ible Stylesheet Language
Transformations)(参考文献:htt
p://www.w3.org/TR/xslt)など
の変換系技術も整備されているし、今後のXML技術の
発展においても上記の合成用ウェブ文書を、このXML
言語を応用した言語(本発明に係るXML応用言語)で
記述することで拡張性およびツール利用などの利便性が
約束されることになる。
【0036】また、将来、HTML文書だけでなくXM
L文書がよく用いられるようになったときにも、抽出対
象として扱いやすいという利点がある。
【0037】そこで、本発明では、合成用ウェブ文書の
記述言語をXML応用言語として具体的に設計する。
【0038】本発明では、結合のためのベースとなる合
成用ウェブ文書(合成用ウェブページと呼ぶこともあ
る)をXMLで記述し、指定した他のウェブ文書から指
定した範囲の部分(部分文書)を抽出して、それを合成
用ウェブ文書の指定された位置に挿入し、合成用ウェブ
文書の指定した範囲に変換処理(所望の文書構造への変
換処理)を施す、挿入・変換の2つの合成ロジック命令
をその合成用ウェブ文書内にエレメントとして持たせる
方針を採る。
【0039】このような合成用ウェブ文書、すなわち、
XML文書(XMLページ)を、ここでは、XML−
P’z(XML−Pieces)文書(XML−P’z
ページ)と呼ぶものとする。
【0040】XML−P’z言語処理系をウェブサーバ
へ組み込みむことにより、図1に示すような動作が可能
になる。なお、XML−P’z言語処理系を組み込んだ
ウェブサ―バをXML−P’zサーバと呼ぶこともあ
る。具体的には、Microsoft社のウェブサーバ
であるIIS(Internet Informati
on Server)への組み込む場合を例にとり説明
する。
【0041】図1に示した基本的な動作原理において、 (ステップS101)クライアント端末B1のウェブブ
ラウザからXML−P’zサーバA1(以下、簡単にサ
ーバA1と呼ぶ)へのXML−P’z文書2の要求(G
ET/HTTP)が送信される。
【0042】(ステップS102)サーバA1は、要求
されたリソースがXML−P’z文書かどうかを判断す
る。
【0043】(ステップS103)XML−P’z文書
と判断した場合、サーバA1は、XML−P’z言語処
理系(図1の合成処理部1)を起動し、XML−P’z
文書2に記述されている、指定されたウェブサーバ(例
えば、ここでは、ウェブサーバA2、A3)のウェブ文
書(ページ)W2、W3から指定した範囲の部分(部分
文書)を抽出し、それをXML−P’z文書の指定位置
に挿入するとともに、XML−P’z文書に記述されて
いる指定された範囲に変換処理を施す。最終的に、XM
L−P’z言語処理系の処理結果としてのXML文書
(合成されたウェブ文書)W1を得る。
【0044】(ステップS104)得られたXML文書
を要求元への返答としてブラウザに送信する。
【0045】上記動作は、ウェブサーバの設定によって
実現する。ほとんどのウェブサーバには、URL文字列
のパターン(よくあるのがオブジェクトの拡張子)とそ
れを前処理するのに必要なアドインを対応付ける機能を
持っており、それを利用することにより(ステップS1
02)〜(ステップS103)を実現できる。
【0046】また、ウェブブラウザがXML文書を表示
できる場合はXML文書を、表示できない場合はサーバ
A1側でスタイルシートを処理してHTML文書を返す
という処理があってもよい。
【0047】(B)XML−P’z文書 XML−P’z文書では、挿入命令エレメント「pz:
targets」と変換命令エレメント「pz:con
vert」とを定義する。
【0048】挿入命令タグを用いることにより、XML
−P’z文書のツリー構造で表現される文書構造上にお
ける1つのエレメント下の子文書として他のXML文書
またはHTML文書の部分文書を挿入(合成)すること
ができる。挿入対象とする部分文書の指定としては、X
Pointer付URL(参考文献:http://w
ww.w3.org/TR/WD−xptr#uri−
escaping)を採用する。これにより1行で簡潔
に特定ウェブページの部分文書を指定することが出来
る。ただしXPointer規格はXMLのためのもの
であるため、HTMLを直接対象とすることが出来な
い。このことから、抽出する際に、HTML−DOM
(Document Object Model)およ
びXML−DOMを用いることにより、構造的に等価な
HTML−XML変換を行う機構を導入する。これによ
りHTML文書はXML文書として扱うことが出来るの
で、すべての加工処理はXMLとして行うことが出来る
ようになる。
【0049】またXML−P’z文書では、変換命令エ
レメントを用いることにより、任意のエレメント(ノー
ド)下の各子文書に対してXSLT(Extensib
leStyle Language transfor
mations)を用いた変換操作を実行することがで
きる。すなわち、変換命令エレメントによって指示され
た、変換命令エレメントの子ノードとして配置される各
子文書に対して指定されたXSLTが適用される。これ
を利用して、挿入命令タグによって挿入されたウェブ文
書を変換命令タグを用いて変換することができる。
【0050】以下は、挿入命令エレメントと変換命令エ
レメントとを用いた、挿入機能と変換機能を有するXM
L−P’z文書の単純な例である。
【0051】(XML−P’z文書の第1の例) 1.<?xml version=”1.0”?> 2.<root xmlns:pz=”http://www.shiba.co.jp/xmlp
z”> 3. <category>xxx</category> 4. <item_holder> 5. <pz:convert href=”xxx.xsl”> 6. <pz:targets href=”http://www.yyy.com/inde
x.xml#xpointer(//item)”/> 7. </pz:convert> 8. </item_holder> 9.</root> 図11(a)は、上記第1の例の文書構造を模式的に示
したもので、図11(b)は、上記第1の例を解釈した
後のXML文書の文書構造を模式的に示したものであ
る。
【0052】上記第1の例において、6行目の挿入命令
エレメント「pz:targets」で指定された挿入
対象の各XML部分文書(http://www.yy
y.com/index.xml#xpointer
(//item)で、以下、簡単に部分文書PD1と呼
ぶ)が、5行目の変換命令エレメント「pz:conv
ert」で指定されたXSLTの変換ルールが適用され
て変換され、4行目〜8行目にある「item_hol
der」エレメントの子エレメントとして、図11
(b)に示すように、挿入される。ただし、6行目の
「pz:targets」で指定されているウェブ文書
はXPointerにマッチするすべての部分文書であ
り(上記第1の例の場合は、「item」タグがルート
となる部分文書すべて)、一般的には複数のウェブ文書
となる。
【0053】上記の分散ウェブリソースのウェブ文書合
成手法は以下の優位性がある。
【0054】優位点の一つは構築容易性である。本手法
は、データベースを中心とした従来の方式と異なり、情
報資源の合成ロジックをプログラミング言語なしで簡潔
に記述できるので、ウェブ文書統合の構築・構成変更が
容易である。またブラウザからの要求時に解釈処理され
るインタプリタ型の実行モデルが採用されているので、
合成ロジックの変更はただちに反映される。
【0055】もう一つの優位点は高い再利用性にある。
XML−P’zのフレームワークでは、コンテンツ・変
換ルール・合成ロジックなどすべての構成要素がウェブ
リソースとして提供される。ウェブ文書の外にプログラ
ムとして合成ロジックを持たせていた従来の方法と異な
り、本方式ではURLを介してこれらすべての構成要素
にアクセスすることができるので、原理的に世界中のウ
ェブシステムから再利用することができる。このことは
ウェブサイトを越えた分散システムに必要な各リソース
を自由に配置することを意味し、運用に応じた柔軟なシ
ステム構築および変更が可能となる。
【0056】さらにXML−P’z文書が別サイトのX
ML−P’z文書を合成対象とすることでウェブサイト
間で合成ロジックを分業(連携)することができる。
【0057】またHTTP以外の特別なプロトコルをま
ったく用いておらず、ウェブリソースを提供する側ウェ
ブサイトは特別な処理システムを導入する必要がない。
したがってあらゆるウェブサイトの情報資源を再利用対
象とすることができる。言い換えれば、既存のウェブサ
イトはシステム資源をそのまま生かすことが出来、XM
L−P’z資源を別途作成するだけで合成することが出
来る。
【0058】ただし、このような高いアクセシビリティ
については、著作権問題など利用に関する実運用上の問
題がからむ。たとえば、XML−P’z技術を用いれ
ば、ウェブ検索サービスを行っている複数のウェブサイ
トの検索結果を合成するメタ検索ページを提供すること
が簡単にできるが、著作権問題に抵触する。このような
問題は、現在のWWWにおいてもハイパーリンクの許可
をめぐって問題となっており運用で乗り切っている現状
がある。これに対して、 Extranet構築技術な
どアクセスコントロールに関するWWW技術が提供され
ている一方、WWWで公開された著作物の取り扱いに関
する法整備が急ピッチで行われているところである。ま
たXML−P’zフレームワークにおいても、将来の課
題として著作権問題を包括的に取り扱うモデルを導入し
たいと考えている。
【0059】次に、以上、説明した分散ウェブリソース
のウェブ文書合成手法を次の2つのパートに分けて説明
する。
【0060】(B−1) XML−P’z言語の仕様 (B−2) XML−P’z言語処理系の構成および動
作 XML−P’z言語とは、合成ロジックを含むウェブペ
ージ記述言語であり本システムの中核をなす。まずその
言語仕様について(B−1)で説明する。次にXML−
P’z言語で記述されたXML−P’z文書を解釈処理
し、その結果を返す言語エンジンとしての言語処理系の
構成およびその動作について(B−2)で説明する。
【0061】(B−1)XML−P’z言語の仕様 XML−P’z言語とは、特定のタグ名に対してセマン
ティクスが与えられたXML応用言語の1つであり、分
散ウェブリソースの合成を目的としたウェブ文書記述言
語である。通常のXML文書と同様、コンテンツを記述
することができるのに加え、任意のエレメントに対し
て、ウェブリソースを操作する命令用のタグ名を記述す
ることにより、合成ロジックを内部に含めることができ
る。この合成ロジックの記述はHTMLのハイパーリン
クのように簡潔である。
【0062】このように合成ロジックを含むXML−
P’z言語にて記述されたXML−P’z文書は、その
合成ロジックに従い仮想的に分散リソースを統合・合成
したウェブ文書へと解釈される。
【0063】ウェブリソース操作に関する命令エレメン
トとして「targets」および「convert」
の2つが用意されており、XMLネームスペースとして
「pz」を予約している。これらの命令エレメントを組
み合わせ用いることにより、他のウェブ文書を含めた任
意の部分文書の抽出および自文書の挿入やXSLTを用
いた構造変換を行うことができる。以下に各命令エレメ
ント(pz:convertエレメント、pz:tar
getsエレメント)について説明する。
【0064】また、これらの命令エレメントは深さ優先
の探索順序で解釈されなければならない。たとえば、図
12に示すXML−P’z文書の文書構造において、p
z:convertエレメントの子エレメントとして、
pz:targetsエレメントが複数ある場合、各p
z:targetsエレメントが兄から弟へ順に解釈さ
れた後、pz:convertエレメントが解釈され
る。
【0065】また、各命令タグの項でも説明していると
おり、挿入命令エレメントによって挿入されるウェブ文
書および変換命令エレメントによって変換するウェブ文
書は、合成、変換する前にXML−P’z文書として解
釈されなければならない。すなわち、命令エレメントに
よって挿入、変換するウェブ文書内に命令エレメント
(挿入、変換命令エレメント)が含まれている場合、そ
れらが優先的に上述の順序で解釈されたのち、挿入先で
ある本XML−P’z文書の解釈実行が続行されるとい
う再帰的な解釈処理の流れとなる。
【0066】また、ウェブリソースの指定子としてXP
ointer付URLを導入している。これはXPoi
nter規格(参考文献:http://www.w
3.org/TR/WD−xptr)に準拠するもので
あるが、本規格ではXPointer付URLの相対指
定について未定義であるので、XML−P’z言語では
独自に規格を定めている。
【0067】以下にその規格を示す。
【0068】(XMLネームスペース)XML−P’z
の各命令タグを利用するためには、以下のネームスペー
スを宣言しなければならない。
【0069】・ネームスペース名 pz ・ネームスペースURI http://shiba.co.jp/xmlpz (pz:targetsエレメント)任意のウェブリソ
ースを抽出・挿入する 文法 <pz:targetshref=”web−reso
urces−url”> </pz:targets> ・属性 href 挿入対象となる複数のウェブリソースへのURL。UR
LがXPointer付である場合、URLのボディ部
のウェブ文書においてXPointerパターンにマッ
チするすべての部分文書が指定される。
【0070】・構造制約 親エレメント: 任意 子エレメント: なし ・注釈 pz:targetsエレメントは、href属性によ
って指定された単数あるいは複数のウェブリソースをX
ML−P’z文書として解釈したのち当該エレメントの
コンテクストに対して挿入し、pz:targetsエ
レメント自身は消滅する。href属性によって示され
るURLがXPointer付である場合、URLのボ
ディ部のウェブ文書においてXPointerパターン
にマッチするすべての部分文書が指定される。
【0071】・サンプル 以下の例は、自文書内に含まれている本のデータに加
え、「http://www.xxx.com/boo
klist.xml」ページ内に含まれる本データをす
べて取り込むXML−P’z文書である。
【0072】1.<?xml version=”1.0”?> 2.<bookstore specialty=”novel” 3. xmlns:pz=”http://www.shiba.co.jp/x
mlpz”> 4. <book style=”textbook”> 5. <author> 6. <first-name>Shinichiro</first-name> 7. <last-name>Hamada</last-name> 8. <publication>Selected Short Stories of 9. <first-name>Shinichiro</first-name> 10. <last-name>Hamada</last-name> 11. </publication> 12. </author> 13. <price>55</price> 14, </book> 15. <pz:targets href=”http://www.xxx.com/bookl
ist.xml#xpointer(//book)”/> 16.</bookstore> (pz:convertエレメント)任意の部分文書群
をXSLT文書を用いて変換する 文法 <pz:converthref=”xslt−ur
l”> </pz:targets> 属性 href 変換ルールを定義するXSLT文書へのURL。URL
がXPointer付である場合、URLのボディ部の
ウェブ文書においてXPointerパターンにマッチ
する部分文書のうち、文書順で先頭の部分文書が指定さ
れる。
【0073】構造制約 親エレメント: 任意 子エレメント: 任意 注釈 pz:convertエレメントは、当該エレメント下
の各子文書それぞれに対して、href属性によって指
定されたXSLT文書を適用して変換する。変換された
各子文書は、XML−P’z文書として解釈した後p
z:convertエレメントのコンテクストに挿入さ
れ、pz:convertエレメント自身は消滅する。
href属性によって示されるURLがXPointe
r付である場合、URLのボディ部のウェブ文書におい
てXPointerパターンにマッチする部分文書のう
ち、文書順で先頭の部分文書が指定される。
【0074】サンプル 以下の例は、「textbook」エレメントで表現さ
れている自文書内に含まれている教科書データに加え、
「http://www.xxx.com/bookl
ist.xml」ページ内に含まれるすべての教科書デ
ータを「textbook−book.xsl」という
XSLT文書に記述された変換ルールに従って、共通書
籍形式へ変換し、また、「http://www.yy
y.com/index.html」ページで公開され
ている本データを共通書籍形式へ変換したものをすべて
取り込むXML−P’z文書である。
【0075】1.<?xml version=”1.0”?> 2.<bookstore specialty=”novel”xmlns:pz=”http:
//www.shiba.co.jp/xmlpz”> 3. <pz:convert href=”textbook-book.xsl”> 4. <textbook> 5. <author> 6. <first-name>Shinichiro</first-name> 7. <last-name>Hamada</last-name> 8. <publication>Selected Short Stories of 9. <first-name>Shinichiro</first-name> 10. <last-name>Hamada</last-name> 11. </publication> 12. </author> 13. <price>55</price> 14. </textbook> 15. <pz:targets href=”http://www.xxx.com/bo
oklist.xml#xpointer(//textbook)”/> 16. </pz:convert> 17. <pz:convert href=”html-book.xsl”> 18. <pz:targets href=”http://www.yyy.com/in
dex.html#xpointer(//TABLE[2]//TR)”/> 19. </pz:convert> 20.</bookstore> (XPointer付URLの相対指定)ウェブリソー
スが他のウェブリソースを参照指定する際に、自ウェブ
リソースの持つURLをベースとして相対的なURLを
用いることができる。これを相対URLと言う。資源を
一意に区別するためには、処理系が相対URLを絶対U
RLへ展開しなければならない。その解決方法を以下に
示す。ただし以下の説明において、用語はIETF(h
ttp://www.ietf.org/rfc/rf
c1738.txt)に基づくものとする。
【0076】1.)ベースURLのオブジェクトと相対
URLのオブジェクトが異なる場合 ベースURLから(もしあれば)XPointerフラ
グメントを取り除いたボディ部と、相対URLから(も
しあれば)XPointerフラグメントを取り除いた
ボディ部との間で、IETF(http://www.
ietf.org/rfc/rfc1808.txt)
に基づいた相対URLの解決を行った結果に対して、
(もしあれば)相対URLのXPointerフラグメ
ントを与える。なお、XPointerフラグメントと
は、例えば、以下のサンプルの記述における「#xpo
inter」以下の部分で、「#xpointer(/
node1/node2)」や、「#xpointer
(./node3//node4)」である。
【0077】・サンプル (ベースURL) http://aaa.com/d
ir1/xxx.xml#xpointer(/nod
e1/node2) (相対URL) ./dir2/yyy.xml#
xpointer(./node3//node4) (解決結果) http://aaa.com/di
r1/dir2/yyy.xml#xpointe
r(./node3//node4) 2.)ベースURLのオブジェクトと相対URLのオブ
ジェクトが同じ場合 ベースURLがXPointerフラグメントを含んで
いる場合はXPointerが示す文書ノード、XPo
interフラグメントを含んでいない場合はルート文
書ノードを起点として、(もしあれば)相対URLのX
Pointerの示すノードを決定し、そのノードパス
を示すXPointerフラグメントを当該オブジェク
トのURLに与える。
【0078】・サンプル (ベースURL) http://aaa.com/d
ir1/xxx.xml#xpointer(/nod
e1/node2) (相対URL) http://aaa.com/
dir1/xxx.xml#xpointer(./n
ode3//node4) (解決結果) http://aaa.com/di
r1/xxx.xml#xpointer(/node
1/node2/node3//node4) 3.)相対URLにおいてオブジェクトが無指定である
場合 ベースURLがXPointerフラグメントを含んで
いる場合はXPointerが示す文書ノード、XPo
interフラグメントを含んでいない場合はルート文
書ノードを起点として、(もしあれば)相対URLのX
Pointerの示すノードを決定し、そのノードパス
を示すXPointerフラグメントをベースURLの
オブジェクトのURLに与える。
【0079】サンプル (ベースURL) http://aaa.com/d
ir1/xxx.xml#xpointer(/nod
e1/node2) (相対URL) #xpointer(./nod
e3//node4) (解決結果) http://aaa.com/di
r1/xxx.xml#xpointer(/node
1/node2/node3//node4) (B−2)XML−P’z言語処理系の構成および動作 次に、XML−P’z言語の解釈処理系について説明す
る。
【0080】XML−P’z言語処理系は、XML−
P’z文書の所在を示すURLまたはソースを入力と
し、その解釈結果のXML文書ソースを出力とするソフ
トウェアコンポーネントである。本処理系ではXML−
P’z言語の解釈処理を2パスで行う方式を取ってお
り、1パス目でXMLとして構文解析を行ってXML−
DOMツリーを作成し、続いて2パス目でXML−DO
Mツリーを深さ優先でたどりながら、XML−P’z言
語特有の命令エレメント(挿入、変換命令タグで囲まれ
た部分)の解釈処理を行う。この言語処理に際して、文
法逸脱を発見した場合やネットワークトラブルなどのラ
ンタイムエラーが発生した場合でも、解釈処理をそのま
ま続行することにより、可能な最良の結果を出力する処
理方針をとる。
【0081】またXML−P’z言語ではXPoint
er付URLを用いたウェブリソース指定が可能である
が、本処理系では、URLで示される文書全体をダウン
ロードした上で、XPointerで指定された部分文
書を切り出すという2段階の処理を行う方式を取る。こ
れにより、XPointer付URLに対応していない
ほとんどのウェブサーバに対しても、ウェブリソースを
要求することが出来る。
【0082】以上が基本的な処理方針である。この処理
方針に基づいた本処理系のシステム構成例について説明
する。
【0083】図2は、XML−P’z言語処理系100
(図1の合成処理部1に相当)の全体の構成例である。
図2において、この言語処理系100は、大きく分け
て、XML−P’z文書読込に関する処理モジュールで
ある、解釈バッファファクトリ101と、読み込まれた
文書を解釈した結果のXMLを返す処理モジュールであ
る、インタプリタ102の2つから構成されている。こ
れらは基本的に独立に動作する。なお、図2中の2つの
解釈バッファファクトリ101は同一物であるが見やす
くするため分けて書いている。
【0084】解釈バッファファクトリ101は、XML
−P’z文書の所在を示すURLまたはソースの入力を
トリガとして動作を開始し、まず、XMLノーマライザ
111において、入力文書がXMLならばそのまま、H
TMLならば同等の構造を持つXMLへの等価変換処理
を行った上で、XML−DOMパーサ114を用いてX
ML−DOMツリーを作成し、さらに、XPointe
rプロセッサ115において、URL内に含まれるXP
ointerフラグメントにしたがって部分文書を抽出
した結果をもとに、解釈バッファイニシャライザ116
は、解釈バッファ103,104を生成する。
【0085】さらに、URLまたはソースの入力が処理
系100外部からであった場合、生成する解釈バッファ
を、デフォルト解釈バッファ103として登録する。こ
こで解釈バッファとはXML−P’z言語解釈処理の状
態記憶でありインタプリタ102の解釈処理中に繁茂に
更新される。
【0086】一方、インタプリタ102は処理系100
外部からの解釈結果の要求があった場合に動作を開始
し、デフォルト解釈バッファ103の解釈用XML−D
OMツリー131を深さ優先でたどりながら、pz:t
argetsエレメントおよびpz:convertエ
レメントの2つの命令エレメントの解釈実行を行い、最
終的に得られた解釈結果のXML文書を出力する。
【0087】ただし、命令エレメントの解釈中に一時的
に生成される部分文書をXML−P’z解釈処理するた
め、解釈バッファファクトリ101を用いて、一時解釈
バッファ104を生成する。
【0088】次に、解釈バッファファクトリ101を構
成する各構成部(モジュール)の処理動作を説明する。
【0089】解釈バッファファクトリ101を構成す
る、XMLノーマライザ111は、HTML判定器11
2、および、HTML−XMLコンバータ113から構
成される。
【0090】HTML判定器112は、与えられたUR
Lが指し示すウェブリソース(ウェブ文書)がHTML
文書かXML文書かを判定する。その判定にはHTTP
ヘッダの「Content−type」を用いる方法と
URL内に含まれる拡張子を用いる方法の2段階のテス
トを行う。この処理動作を図3に示す。
【0091】図3において、まず、「Content−
Type」を取得する(ステップS1)。この取得の方
法として当該URLに対して、HEAD要求を行うのが
もっとも直接的である。しかしHEAD要求を理解でき
ないウェブサーバも世の中にたくさんある。代用として
GET要求を用いることもできる。次に、当該URLに
対してHTTP接続できたかどうか判定する(ステップ
S2)。もし接続に成功した場合は、ステップS3へ進
み、失敗した場合はステップS5に進む。
【0092】ステップS3では、「Content−T
ype」ヘッダを取り出し、その中に「text/ht
ml」という文字列が含まれているか判定する。もし含
まれていればHTMLと判定して終了し(ステップS
6)、そうでなければ、XMLと仮判定して終了する
(ステップS4)。
【0093】ステップS5では、URL内のオブジェク
トフィールドの拡張子が「html」または「htm」
であるかどうか判定する。もしそうであればHTMLと
判定して終了し(ステップS6)、そうでなければXM
Lと仮判定して終了する(ステップS7)。
【0094】HTML−XMLコンバータ113は、H
TML判定器112によってHTML文書と判断された
ウェブリソースを構造的に等価なXML文書へ変換す
る。これはHTML−DOMツリーからXML−DOM
ツリーへと各DOMのメソッドを用いて順次移していく
ことで実現できる。HTML−XMLコンバータ113
の処理動作を図4に示す。
【0095】まず、ステップS11において、与えられ
たHTML文書をHTMLパーサへ読み込ませ、HTM
L−DOMツリーを構築する。HTMLパーサはウェブ
ブラウザが内部的に用いているものが望ましい。なぜな
らウェブブラウザが使用するHTMLパーサは、HTM
L文法逸脱に対するエラーリカバリー機能がついている
からである。
【0096】次に、ステップS12において、XML−
DOMパーサを用いて空のXML−DOMツリーを構築
する。そして、ステップS13において、HTML−D
OMツリーを全探索しながら、立ち寄ったノードの値な
どを取り出しXML−DOMツリーにノードとして挿入
する。
【0097】以上の処理により、XMLノーマライザ1
11は、解釈バッファファクトリ101にURLとして
入力されたウェブリソースをすべてXML文書として出
力する。一方、ソースとして入力されたウェブリソース
はすべてXML文書と仮定して取り扱われる。
【0098】XMLノーマライザ111を通過したXM
L文書またはソースとして入力されたXML文書は、X
ML−DOMパーサ114に入力され、XML−DOM
ツリー化される。さらに、XPointerプロセッサ
115を用いて、URLのXPointerフラグメン
トで示されているXML文書内の部分文書のXML−D
OMツリーを得る。XPointerプロセッサ115
のXPointerフラグメントに対する処理動作を図
5に示す。
【0099】まず、ステップS21で、与えられたウェ
ブリソースがURLによるものだったのか、ソースによ
るものだったのかを判定する。ソースによるものであっ
た場合URLは存在しないので、この時点で終了する。
【0100】次に、ステップS22において、URLの
フラグメントからXPointerフラグメントを取り
出す。ただしXPointerが指定されていなかった
場合は空の文字列とする。続いて、ステップS23にお
いてXML−DOMツリーのルートエレメントを基点と
してXPointerが指し示すノードを同定する。こ
れには一般的なXPointer処理系を用いればよ
い。
【0101】次に、ステップS24において指し示され
たノードがエレメントであるかどうかを判定する。もし
エレメントでなければ異常終了する。続いて、ステップ
S25において、得られたエレメントをルートエレメン
トとした部分文書のXML−DOMツリーを切り出す。
さらに、ステップS26において、その切り出されたX
ML−DOMツリーを新しいXML文書のXML−DO
Mツリーとする。
【0102】さて、得られたXML−DOMツリーを基
に、解釈バッファイニシャライザ116は解釈バッファ
を生成する。このとき与えられたウェブリソースが言語
処理系100外部からの入力によるものであった場合、
その解釈バッファを、デフォルト解釈バッファ103と
して登録する。この解釈バッファ(メモリで構成されて
いる)の初期化処理動作を図6に示す。なお、部分文書
のXML−DOMツリーの場合は、一時解釈バッファ1
04を図6と同様にして初期化する。
【0103】まず、ステップS31では、与えられたX
ML−DOMツリーをソースXML−DOMツリー13
4にコピーする。なお、ソースXML−DOMツリー1
34は、以後のXML−P’z言語の解釈処理によって
変更される前のXML−DOMツリーの初期状態を記憶
するバッファであり、XML−P’z言語のソース提供
などの用途を想定しているが、本実施形態では利用され
ない。
【0104】次に、ステップS32では、与えられたX
ML−DOMツリーを解釈用XML−DOMツリー13
1へコピーする。解釈用XML−DOMツリー131
は、インタプリタ102が解釈処理において構造の読み
込みおよび解釈結果の書き込みに用いる。
【0105】ステップS33では、プログラムカウンタ
132を解釈用XML−DOMツリー131のルートエ
レメントにセットする。プログラムカウンタ132は、
インタプリタ102の解釈処理の進捗を記憶するポイン
タである。
【0106】最後に、ステップS34では、ロードフラ
グ133を「false」にセットする。ロードフラグ
133とは、当該解釈バッファ103がすでに解釈処理
済みかどうかを示すフラグである。インタプリタ102
は、このフラグ133を利用して過去に解釈処理を施し
た解釈バッファについて解釈処理をし直さないようにな
っている。
【0107】以上が、解釈バッファファクトリ101の
処理動作の説明である。
【0108】次に、インタプリタ102の処理動作につ
いて説明する。
【0109】インタプリタ102を構成するコンテクス
トマネージャ121は、解釈処理において中心的役割を
果たす。解釈バッファ103,104のプログラムカウ
ンタ132,142に従い、解釈用XML−DOMツリ
ー131,141の各ノードを深さ優先で立ち寄る際
に、命令エレメントを発見すると該当する処理モジュー
ル(targetsコマンドプロセッサ122,con
vertコマンドプロセッサ123)へ解釈処理を依頼
する。命令エレメントの解釈処理が終了すると立ち寄り
処理を続行する。すべての処理が終わると解釈結果とし
てXML文書を出力する。この処理動作を図7に示す。
以下、デフォルト解釈バッファ103を用いた解釈処理
の場合を説明するが、一時解釈バッファ104の場合も
同様である。
【0110】まず、ステップS41において、解釈バッ
ファ103のロードフラグ133を調べる。ロードフラ
グが「true」であればすでに解釈済みであり「fa
lse」ならば、まだ解釈処理が行われていない状態で
あることを意味する。「true」ならば、ステップS
49へ進み、「false」ならば、ステップS42へ
進む。
【0111】ステップS42では、プログラムカウンタ
132を読み込んで解釈処理対象とするエレメント(こ
れをカレントエレメントと呼ぶ)を決定する。
【0112】ステップS43では、カレントエレメント
のエレメント名が「pz:targets」かどうかを
チェックし、「pz:targets」だった場合は、
ステップS4へ進み、pz:targetsエレメント
の解釈処理をtargetsコマンドプロセッサ122
へ依頼する。
【0113】続いて、ステップS45では、カレントエ
レメントのエレメント名が「pz:convert」か
どうかチェックし、「pz:convert」だった場
合は、ステップS46へ進み、pz:convertエ
レメントの解釈処理をconvertコマンドプロセッ
サ123へ依頼する。
【0114】続いて、ステップS47で、深さ優先で移
動先エレメントを決定しプログラムカウンタにセットす
る。カレントエレメントの子エレメントのうち、まだ解
釈処理を行っていないエレメントがあれば、そのうちの
長兄エレメントをプログラムカウンタへセットする。す
べての子エレメントの解釈処理が行われているならば、
親エレメントにプログラムカウンタへセットする。ただ
し親エレメントがいない場合は、プログラムカウンタを
「NULL」にセットする。
【0115】ステップS8では、プログラムカウンタ1
32が「NULL」かどうかをチェックし、「NUL
L」でなければ、ステップS42へ戻る。「NULL」
であれば、解釈用XML−DOMツリー131の解釈は
終了したので、ステップS49へ進む。
【0116】ステップS49では、XML−DOMパー
サ151を用いて解釈バッファ103のXML−DOM
ツリー131を基にXML文書を生成し出力し、終了す
る。
【0117】インタプリタ102を構成するtarge
tsコマンドプロセッサ122は、pz:target
sエレメントを解釈し、その結果をカレントエレメント
に書き込む。この処理動作を図8に示す。
【0118】まず、ステップS51では、カレントエレ
メントであるpz:targetsエレメントのhre
f属性値を取り出し、ステップS52で、その属性値を
解釈バッファファクトリ101の入力URLとして、前
述したXMLノーマライザ111から解釈バッファイニ
シャライザ116による処理を経由して、一時解釈バッ
ファ104を生成する。ただし、対象とするURLが相
対URLであった場合は、前述の「XPointer付
URLの相対指定」の説明に基づき、挿入先の解釈バッ
ファのURLをベースとして絶対URLへ変換する。
【0119】次に、ステップS53へ進み、生成された
一時解釈バッファ104を、インタプリタ102を用い
て解釈処理し、その結果としてのXML文書を得る。
【0120】最後に、ステップS54では、DOMパー
サ152を用いて、得られたXML文書をXML−DO
Mツリーに変換して、カレントエレメントである「p
z:targets」エレメントと入れ替える。また、
生成した一時解釈バッファ104は破棄する。
【0121】インタプリタ102を構成するconve
rtコマンドプロセッサ123は、convertエレ
メントを解釈し、その結果をカレントエレメントに書き
込む。この処理動作を図9に示す。
【0122】まず、ステップS61では、カレントエレ
メントであるpz:convertエレメントのhre
f属性値を取り出し、ステップS62で、その属性値を
解釈バッファファクトリ101の入力URLとして、前
述したXMLノーマライザ111から解釈バッファイニ
シャライザ116による処理を経由して、一時解釈バッ
ファ104を生成する。ただし、対象とするURLが相
対URLであった場合は、前述の(XPointer付
URLの相対指定)の説明に基づき、挿入先の解釈バッ
ファのURLをベースとして絶対URLへ変換する。
【0123】次に、ステップS63へ進み、生成された
一時解釈バッファ104を、インタプリタ102を用い
て解釈処理し、その結果としてXSLT文書を得る。な
お、このような処理を行うのは、XSLT文書自体がX
ML−P’z言語でかかれている可能性があるからであ
る(すなわち合成結果としてXSLT文書が構成されて
いる可能性があるからである)。
【0124】続いて、ステップS64へ進み、XSLT
プロセッサ124により、カレントエレメントである
「pz:convert」エレメントの子エレメントの
うち、まだXLSTを適用していない長兄エレメント
(およびその子孫エレメントを含む部分文書)に、得ら
れたXSLT文書を用いて、当該部分文書の文書構造を
XSLT文書に記述された変換ルールを用いて変換し、
その変換して得られたXML−DOMツリーを、ステッ
プS65では、合成用ウェブ文書上の変換前の子エレメ
ント(およびその子孫エレメントを含む部分文書)と入
れ替える。
【0125】ステップS66において、もし未処理の子
エレメントがあるならば、ステップS64に戻る。すべ
ての子エレメントが処理済ならば、ステップS67へ進
み、pz:convertエレメントをpz:conv
ertエレメントの各子部分文書である文書構造の変換
されたものと入れ替える。
【0126】以上が、インタプリタ102の処理動作で
あり、以上をもってXML−P’z言語処理系の各構成
部についての説明は終了した。
【0127】(C)複数のウェブ文書を1つのウェブ文
書上に合成するための一連の動作 次に、図2に示した構成のXML−P’z言語処理系1
00をウェブサーバへ組み込み、図1に示した基本的な
動作を行って、実際に、ウェブサーバA2のウェブ文書
W2からその一部を抽出し、その抽出された各部分文書
を1つのウェブ文書上に合成し、合成されたウェブ文書
(XML文書)W1を出力するための一連の動作を図1
3〜図15に示すフローチャートを参照して説明する。
【0128】ここで、合成用ウェブ文書としてのXML
−P‘z文書2は、図16に示すものであるとする。な
お、図16に示すXML−P’z文書は、図1のXML
−P‘z文書2のうちの一部分を抜粋したものを示して
いる。
【0129】図16に示すXML−P‘z文書は、「t
extbook」エレメントE1で表現されている自文
書内に含まれている教科書データと、pz:targe
tsエレメントE2にて挿入される「http://w
ww.xxx.com/booklist.xml」の
ウェブ文書内に含まれるすべての教科書データとを、
「textbook−book.xsl」というXSL
T文書に記述された変換ルールに従って、共通書籍形式
へ変換して、合成されたウェブ文書(XML文書)W1
を出力するためのものである。
【0130】図1において、クライアント端末B1のウ
ェブブラウザからXML−P’zサーバA1(以下、簡
単にサーバA1と呼ぶ)へのXML−P’z文書2の要
求がなされたとする(ステップS201)。
【0131】サーバA1の言語処理系100は、要求さ
れた文書が自身が持つ合成用ウェブ文書(XML−P
‘z文書)2であるので、XML−DOMパーサ114
を用いて当該XML−P‘z文書のXML−DOMツリ
ーを作成する(ステップS202)。この作成されたX
ML−DOMツリーの図16に対応する部分は、例え
ば、図17に示すものである。なお、図17では、説明
の簡単のために概略的に示している。
【0132】この作成されたXML−DOMツリーをデ
フォルト解釈バッファ103のソースおよび解釈用DO
Mツリー134,131にコピーし、その他、図6に示
したようにして、デフォルト解釈バッファ103を初期
化する(ステップS203)。
【0133】次に、このデフォルト解釈バッファ103
の解釈処理をインタプリタ102にて行う。ここで、例
えば、図17に示したようなXML−DOMツリーを解
釈するものとする。
【0134】インタプリタ102は、前述したように、
命令エレメントを深さ優先で移動先のエレメントを決定
していくので、図17に示すDOMツリーにおいては、
まず、pz:targetsエレメントE2を解釈処理
する(ステップS204〜ステップS205)。その
後、エレメントE1,E2の親エレメントであるpz:
convertエレメントE3を解釈処理する(ステッ
プS206〜ステップS207)。その後、図17には
示していないが、pz:convertエレメントE3
の弟エレメント、あるいは、親エレメントへ、プログラ
ムカウンタ132を移動させて、プログラムカウンタが
「NULL」になるまで、このデフォルト解釈バッファ
103の解釈処理を進めていく(ステップS208)。
【0135】さて、ステップS205では、pz:ta
rgetsエレメントE2の解釈処理を行うわけだが、
ここでの処理動作を図14に示す。
【0136】targetsコマンドプロセッサ122
は、pz:targetsエレメントE3のhref属
性値、すなわち、「http://www.xxx.c
om/booklist.xml#xpointer
(//textbook)」を取り出し、その属性値を
解釈バッファファクトリ101の入力URLとする。X
MLノーマライザ111は、この入力URLにて指定さ
れた文書がXML文書でないならそれをXML文書に変
換した後(ステップS212)、XML−DOMパーサ
114にて、このXML文書のXML−DOMツリーを
作成する(ステップS213)。なお、ここでは、当該
指定された文書はXML文書であるので、そのまま、X
ML−DOMパーサ114にて、このXML文書のXM
L−DOMツリーを作成する。
【0137】この場合、上記入力URLが、サーバA2
のウェブ文書W2を示すXPointer付URLであ
るので、XPointerプロセッサ115が、XPo
interフラグメント、すなわち、「#xpoint
er(//textbook)」を取り出し、ステップ
S213で作成されたXML−DOMツリーから当該X
Pointerが指し示す「textbook」エレメ
ント(その子孫エレメントを含む部分文書)のXML−
DOMツリーを切り出す。「textbook」エレメ
ントが複数ある場合は、それぞれに対して行う。この切
り出されたXML−DOMツリーが挿入すべき部分文書
のXML−DOMツリーである(ステップS214)。
【0138】次に、解釈バッファイニシャライザ116
により、一時解釈バッファ104を初期化し、この部分
文書にpz:targetsエレメントや、pz:co
nvertエレメントが記述されているときは、それら
の解釈処理を行って、当該部分文書のXML文書を得
る。
【0139】記述されていないときは、そのまま一時解
釈バッファ104の解釈処理を終了し、コンテクストマ
ネージャ121は、DOMパーサ151を用いて、当該
部分文書のXML−DOMツリーからXML文書を生成
し(ステップS221)、targetsコマンドプロ
セッサ122は、DOMパーサ152を用いて、当該部
分文書のXML文書のXML−DOMツリーを作成し
て、これを部分文書郡E2´として、デフォルト解釈バ
ッファ103の解釈用XML−DOMツリー131のカ
レントエレメントであるpz:targetsエレメン
トE2と入れ替える。その結果、図18に示すように、
この部分文書郡E2´が、pz:convertエレメ
ントE3の子エレメントとなり、XML−DOMツリー
が更新される。生成した一時解釈バッファ104は破棄
する(ステップS222)。その後、図13のステップ
S208へ戻る。
【0140】図18に示すように、「http://w
ww.xxx.com/booklist.xml」の
ウェブ文書内には複数の教科書データが存在するので、
その全てが当該ウェブ文書の部分文書のXML−DOM
ツリーとして挿入されている。
【0141】一方、ステップS207では、pz:co
nvertエレメントE3の解釈処理を行うわけだが、
ここでの処理動作を図15に示す。
【0142】convertコマンドプロセッサ123
は、pz:convertエレメントE3のhref属
性値、すなわち、XSLT文書へのURL、「text
book−book.xsl」取り出し、その属性値を
解釈バッファファクトリ101の入力URLとする。以
下のステップS232〜ステップS240は、XLM文
書としてのXSLT文書を得るための処理であって、図
14のステップS212〜ステップS220と同様にし
て、図15のステップS241にて、図19に示したよ
うなXML文書としてのXSLT文書を得る。
【0143】図19に示すXSLT文書は、現在の部分
文書の「publication」エレメント、「pr
ice」エレメント、「author」エレメントを、
それぞれ「title」エレメント、「price」エ
レメント、「author」エレメントへ変換するため
の変換ルールを記述したものである。
【0144】図19に示したようなXSLT文書を用い
て、XSLTプロセッサ124は、デフォルト解釈バッ
ファ103の解釈用XML−DOMツリー131のカレ
ントエレメントである、pz:convertエレメン
トに含まれる部分文書(子部分文書とも呼ぶ)のXML
−DOMツリー上の各子エレメントを変換する(ステッ
プS242)。
【0145】ここでは、自文書内に含まれている教科書
データと、「http://www.xxx.com/
booklist.xml」のウェブ文書から抽出した
教科書データは同じ構造のデータであるので、エレメン
トE1の自文書内含まれていた教科書データの場合を例
にとり、図19のXSLT文書を用いて、その構造を変
換する場合を説明する。
【0146】図16に示すように、エレメントE1の子
エレメントである「publication」エレメン
トの値は、「Selected Short Stor
ies of Shinichiro Hamada」
であるが、これは、変換後では、「title」エレメ
ントの値となる。また、図16において、エレメントE
1の子エレメントである「author」エレメントの
値は「Shinichiro Hamada」である
が、これは変換後では、「author」エレメントと
なる。さらに、図16に示すように、エレメントE1の
子エレメントである「price」エレメントの値は、
「55」であるが、これは変換後も同じである。
【0147】convertコマンドプロセッサ123
は、変換後の部分文書のXML−DOMツリーを、新た
なエレメントE3´として、デフォルト解釈バッファ1
03の解釈用XML−DOMツリー131のカレントエ
レメントであるpz:convertエレメントE3と
入れ替えて、図20に示したような文書構造のXML−
DOMツリーが生成される。
【0148】なお、生成した一時解釈バッファ104は
破棄する(ステップS243)。その後、図13のステ
ップS208へ戻る。
【0149】以上のようにして、デフォルト解釈バッフ
ァ103のプログラムカウンタ132が「NULL」と
なり、XML−DOMツリー131の解釈が終了する
と、コンテクストマネージャ121は、XML−DOM
パーサ151を用いて、図20に示したXML−DOM
ツリーを含む解釈バッファ103のXML−DOMツリ
ー131を基に、目的とするウェブ文書W1としてのX
ML文書を生成し出力する。
【0150】なお、クライアント端末B1のウェブブラ
ウザがXML文書を表示できる場合は、XML文書のウ
ェブ文書W1をそのままクライアント端末B1のウェブ
ブラウザに返すが、表示できない場合は、サーバA1側
でスタイルシートを処理して、ウェブ文書W1をHTM
L文書に変換してからクライアント端末B1のウェブブ
ラウザへ返す(図13のステップS209)。
【0151】(D)ウェブ文書の合成処理のためのXM
L−P’zサーバ間の協調動作 次に、ウェブ文書の合成処理をXML−P’zサーバ間
で協調して行う場合について説明する。
【0152】例えば、あるXML−P’zサーバ上のX
ML−P’z文書を解釈処理中に他のXML−P’zサ
ーバのXML−P’z文書を挿入する場合に、その挿入
されるXML−P’z文書は、どちらのサーバが解釈す
るのかという問題がある。すなわち、GETコマンドに
よる要求があった場合に、XML−P’z文書そのもの
を返すのか、解釈処理した結果のXML文書を返すのか
という判断を行う必要があるということである。
【0153】HTTPサーバ(XML−P’z文書を要
求される側)とHTTPクライアント(XML−P’z
文書を要求する側)との間で、HTTPクライアントが
XML−P’z文書を解釈処理できない場合は、HTT
Pサーバ側でXML−P’z文書を解釈処理しなければ
ならないという制約がある。
【0154】この制約を判断の材料に導入するため、X
ML−P’z言語処理系100の解釈バッファファクト
リ101が、XML−P’z文書を要求する際に、GE
Tコマンドによる要求のヘッダに「XML−P’z:
enable」をつけるものとする。
【0155】また、HTTPサーバとしては、XML−
P’z文書の解釈処理をHTTPクライアントに委譲す
ることにより、サーバの負荷を下げることができる利点
もあるが、XML−P’z文書を公開したくない何らか
の理由があるかもしれない(含まれている合成ロジック
を公開したくないなど)ので、サーバ側でXML−P’
z言語を解釈処理するかどうかは設定次第である。
【0156】以上を踏まえて、HTTPサーバが解釈実
行するかどうかの判断処理動作について、図10の示す
フローチャートを参照して説明する。
【0157】まず、ステップS71では、GET要求の
ヘッダに「XML−P’z:enable」が含まれて
いるかどうかを調べ、含まれていないならば、ステップ
S72へ進み、HTTPサーバ上でXML−P’z文書
を解釈処理して終了する。含まれているならば、ステッ
プS73へ進み、HTTPサーバがXML−P’z文書
を処理する設定になっているかどうかをチェックし、そ
うであれば、ステップS74へ進み、HTTPサーバで
XML−P’z文書を解釈処理して終了し、そうでなけ
れば、ステップS75へ進み、解釈処理をしないでHT
TPクライアントにXML−P’z文書をそのまま送信
して終了する。
【0158】(E)追記 以上説明したように、上記実施形態によれば、合成のた
めのベースとなる合成用ウェブ文書をXMLで記述し、
指定した他のウェブ文書から指定した範囲の部分(部分
文書)を抽出して、それを合成用ウェブ文書の指定され
た位置に挿入し、合成用ウェブ文書の指定した範囲に変
換処理を施す、挿入・変換の2つの合成ロジック命令を
その合成用ウェブ文書内にエレメントとして持たせたX
ML−P’z(XML−Pieces)文書を定義す
る。言語処理系100は、XML−P’z文書に記述さ
れている、指定されたウェブサーバ(例えば、ここで
は、ウェブサーバA2、A3)のウェブ文書(ページ)
W2、W3から指定した範囲の部分(部分文書)を抽出
し、それをXML−P’z文書の指定位置に挿入すると
ともに、XML−P’z文書に記述されている指定され
た範囲に変換処理を施す。最終的に、XML−P’z言
語処理系100の処理結果としてのXML文書(合成さ
れたウェブ文書)W1を得ることにより、複数のウェブ
サイトの情報を1つのウェブ文書上に合成することが容
易にしかも汎用的に行える。
【0159】なお、上記実施形態に記載した手法は、コ
ンピュータに実行させることのできるプログラムとし
て、DVD、CD−ROM、フロッピディスク、個体メ
モリ、光ディスクなどの記録媒体に格納して頒布するこ
ともできる。
【0160】
【発明の効果】以上説明したように、本発明によれば、
複数のウェブサイトの情報を1つのウェブ文書上に合成
することが容易にしかも汎用的に行える。
【図面の簡単な説明】
【図1】本発明のXML−P’z言語処理系を組み込ん
だウェブサ―バ(XML−P’zサーバ)の基本的な動
作を説明するための図。
【図2】XML−P’z言語処理系の全体の構成例を示
した図。
【図3】HTML判定器において、与えられたURLに
て指定されるウェブ文書がHTML文書かXML文書か
を判定するための処理動作を示したフローチャート。
【図4】HTML−XMLコンバータのHTML文書か
らXML文書への変換処理動作を説明するためのフロー
チャート。
【図5】XPointerプロセッサのXPointe
rフラグメントに対する処理動作を説明するためのフロ
ーチャート。
【図6】解釈バッファイニシャライザの解釈バッファの
初期化処理動作を説明するためのフローチャート。
【図7】コンテクストマネージャの処理動作を説明する
ためのフローチャート。
【図8】targetsコマンドプロセッサのtarg
etsエレメントの解釈処理動作を説明するためのフロ
ーチャート。
【図9】convertコマンドプロセッサのconv
ertエレメントの解釈処理動作を説明するためのフロ
ーチャート。
【図10】XML−P’z文書の解釈処理をサーバ側で
行うかクライアント側で行うかを判断する判断処理動作
について説明するためのフローチャート。、
【図11】(a)図は、XML−P’z文書の第1の例
の文書構造を模式的に示した図で、(b)図は、XML
−P’z文書の解釈後のXML文書の文書構造を示した
図。
【図12】XML−P‘z文書の解釈順序について説明
するための図。
【図13】図2に示した構成の言語処理系が、複数のウ
ェブ文書を1つのウェブ文書上に合成するための連の動
作を説明するためのフローチャート。
【図14】図2に示した構成の言語処理系が、複数のウ
ェブ文書を1つのウェブ文書上に合成するための連の動
作を説明するためのフローチャート。
【図15】図2に示した構成の言語処理系が、複数のウ
ェブ文書を1つのウェブ文書上に合成するための連の動
作を説明するためのフローチャート。
【図16】合成用ウェブ文書としてのXML−P‘z文
書の一例であって、XML−P‘z文書の一部を示した
図。
【図17】図16のXML−P‘z文書に対応するXM
L−DOMツリーを概略的に示した図。
【図18】図16のpz:targetsエレメントを
解釈した結果のXML−DOMツリーを概略的に示した
図。
【図19】図16のXML−P‘z文書に記述されてい
るXSLT文書の一例を示した図。
【図20】図16のpz:targetsエレメントと
pz:convertエレメントを解釈した結果のXM
L−DOMツリーを概略的に示した図。
【符号の説明】
A1、A2、A3…サーバ B1…クライアント端末 W1…合成されたウェブ文書(XML文書) W2〜W3…ウェブ文書 1…XML−P’z言語処理系(合成処理部) 2…XML−P’z文書 100…XML−P’z言語処理系 101…解釈バッファファクトリ 102…インタプリタ 103…デフォルト解釈バッファ 104…一時解釈バッファ 111…XMLノーマライザ 112…HTML判定器 113…HTML−XMLコンバータ 114…XML−DOMパーサ 115…XPointerプロセッサ 116…解釈バッファイニシャライザ 121…コンテクストマネージャ 122…targetsコマンドマネージャ 123…convertコマンドマネージャ 124…XSLTプロセッサ 131…解釈用XML−DOMツリー 132…プログラムカウンタ 133…ロードフラグ 134…ソースXML−DOMツリー 141…解釈用XML−DOMツリー 142…プログラムカウンタ 143…ロードフラグ 144…ソースXML−DOMツリー 151〜153…DOMパーサ

Claims (8)

    【特許請求の範囲】
  1. 【請求項1】 インターネットにおけるWWW(Wor
    ld Wide web)上のマークアップ言語で記述
    された複数の第1の文書の内容の一部をWWW上のマー
    クアップ言語で記述された第2の文書に合成するための
    文書合成方法であって、 少なくとも、前記第1の文書の該インターネット上の所
    在と、該第1の文書から抽出する部分文書の範囲と、前
    記第2の文書上の前記部分文書の挿入位置と、前記挿入
    位置に挿入される前記部分文書を含む前記第2の文書上
    の文書構造を変換すべき範囲と、前記文書構造を所望の
    文書構造に変換するための変換ルールを記述したファイ
    ルの識別情報とをマークアップ言語により記述した第2
    の文書に従って、 前記第1の文書から前記部分文書を抽出して、その部分
    文書を前記第2の文書上の前記指定された合成位置に挿
    入するとともに、前記変換ルールを用いて前記第2の文
    書上の前記指定された範囲の文書構造を変換すること
    で、前記第2の文書上に1または複数の前記部分文書を
    合成することを特徴とする文書合成方法。
  2. 【請求項2】 前記第2の文書は、少なくとも、前記第
    2の文書上の前記部分文書の挿入位置とを指定するとと
    もに、前記第1の文書の所在と、該第1の文書から抽出
    する部分文書の範囲とを記述するため第1のタグと、 前記変換ルールを用いて文書構造を変換すべき範囲を指
    定するとともに、前記変換ルールを記述したファイルの
    識別情報を記述するための第2のタグと、 を用いて記述されていることを特徴とする請求項1記載
    の文書合成方法。
  3. 【請求項3】 前記第2の文書は、XML(Exten
    sible Markup Language)で記述
    され、前記第1の文書がXMLで記述されていないとき
    は、まず、XMLによる記述型式に変換した後、前記第
    1の文書から前記部分文書を抽出して、その部分文書を
    前記第2の文書上の前記指定された挿入位置に挿入する
    ことを特徴とする請求項1記載の文書合成方法。
  4. 【請求項4】 インターネットにおけるWWW(Wor
    ld Wide web)上のマークアップ言語で記述
    された複数の第1の文書の内容の一部をWWW上のマー
    クアップ言語で記述された第2の文書に合成する文書合
    成装置であって、 少なくとも、前記第1の文書の該インターネット上の所
    在と、該第1の文書から抽出する部分文書の範囲と、前
    記第2の文書上の前記部分文書の挿入位置と、前記挿入
    位置に挿入される前記部分文書を含む前記第2の文書上
    の文書構造を変換すべき範囲と、前記文書構造を所望の
    文書構造に変換するための変換ルールを記述したファイ
    ルの識別情報とをマークアップ言語により記述した第2
    の文書に従って、前記第1の文書から前記部分文書を抽
    出して、その部分文書を前記第2の文書上の前記指定さ
    れた挿入位置に挿入する挿入手段と、 前記第2の文書に従って、該第2の文書上の前記指定さ
    れた範囲の文書構造を、前記変換ルールを用いて所望の
    文書構造に変換する変換手段と、 を具備し、 前記第2の文書上に1または複数の前記部分文書を合成
    することを特徴とする文書合成装置。
  5. 【請求項5】 前記第2の文書は、少なくとも、前記第
    2の文書上の前記部分文書の挿入位置とを指定するとと
    もに、前記第1の文書の所在と、該第1の文書から抽出
    する部分文書の範囲とを記述するため第1のタグと、 前記変換ルールを用いて文書構造を変換すべき範囲を指
    定するとともに、前記変換ルールを記述したファイルの
    識別情報を記述するための第2のタグと、 を用いて記述されていることを特徴とする請求項4記載
    の文書合成装置。
  6. 【請求項6】 前記第2の文書は、XML(Exten
    sible Markup Language)で記述
    されていることを特徴とする請求項4記載の文書合成装
    置。
  7. 【請求項7】 前記第1の文書がXMLで記述されてい
    ないとき、該第1の文書をXMLによる記述型式に変換
    する第2の変換手段をさらに具備し、 前記挿入手段は、XML文書の前記第1の文書から前記
    部分文書を抽出して、その部分文書を前記第2の文書上
    の前記指定された挿入位置に挿入することを特徴とする
    請求項4記載の文書合成装置。
  8. 【請求項8】 インターネットにおけるWWW(Wor
    ld Wide web)上のマークアップ言語で記述
    された複数の第1の文書の内容の一部をマークアップ言
    語で記述された第2の文書に合成するための処理をコン
    ピュータに実行させるためのプログラムであって、 少なくとも、前記第1の文書の該インターネット上の所
    在と、該第1の文書から抽出する部分文書の範囲と、前
    記第2の文書上の前記部分文書の挿入位置と、前記挿入
    位置に挿入される前記部分文書を含む前記第2の文書上
    の文書構造を変換すべき範囲と、前記文書構造を所望の
    文書構造に変換するための変換ルールを記述したファイ
    ルの識別情報とをマークアップ言語により記述した第2
    の文書に従って、前記第1の文書から前記部分文書を抽
    出して、その部分文書を前記第2の文書上の前記指定さ
    れた挿入位置に挿入するための処理と、 前記第2の文書に基づき、該第2の文書上の前記指定さ
    れた範囲の文書構造を、前記変換ルールを用いて所望の
    文書構造に変換するための処理と、 をコンピュータに実行させるためのプログラム。
JP2000383625A 2000-12-18 2000-12-18 文書合成方法および文書合成装置 Expired - Fee Related JP3943830B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2000383625A JP3943830B2 (ja) 2000-12-18 2000-12-18 文書合成方法および文書合成装置
US10/015,604 US20020078105A1 (en) 2000-12-18 2001-12-17 Method and apparatus for editing web document from plurality of web site information

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2000383625A JP3943830B2 (ja) 2000-12-18 2000-12-18 文書合成方法および文書合成装置

Publications (2)

Publication Number Publication Date
JP2002183116A true JP2002183116A (ja) 2002-06-28
JP3943830B2 JP3943830B2 (ja) 2007-07-11

Family

ID=18851248

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000383625A Expired - Fee Related JP3943830B2 (ja) 2000-12-18 2000-12-18 文書合成方法および文書合成装置

Country Status (2)

Country Link
US (1) US20020078105A1 (ja)
JP (1) JP3943830B2 (ja)

Cited By (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004046357A (ja) * 2002-07-09 2004-02-12 Toshiba Corp 文書編集方法、文書編集システム、サーバ装置および文書編集プログラム
WO2004013765A1 (ja) * 2002-08-05 2004-02-12 Fujitsu Limited 情報複写装置、情報複写プログラムおよび情報複写方法
JP2005032230A (ja) * 2003-06-18 2005-02-03 Ricoh Co Ltd 電子装置及びWebページ生成方法
WO2006001392A1 (ja) * 2004-06-24 2006-01-05 Justsystems Corporation 文書処理方法および装置
JP2006154952A (ja) * 2004-11-25 2006-06-15 Canon Inc 構造化文書処理装置及び構造化文書処理方法、プログラム、記憶媒体
JP2007122609A (ja) * 2005-10-31 2007-05-17 Ricoh Co Ltd 構造化文書、コンテンツ配信サーバ装置及びコンテンツ配信システム
JP2007249619A (ja) * 2006-03-16 2007-09-27 Nec Corp 構造化文書符号化装置および構造化文書復号化装置
JP2007310564A (ja) * 2006-05-17 2007-11-29 Mie Prefecture 防災情報提供システム
JP2008538841A (ja) * 2005-04-19 2008-11-06 マイクロソフト コーポレーション 提示可能なファイルのためのフィールドと、文献一覧および引用のための拡張マークアップ言語スキーマとの決定
JP2008305180A (ja) * 2007-06-07 2008-12-18 Toshiba Corp 文書生成装置、文書生成プログラム及び文書生成方法
US7661063B2 (en) 2004-10-14 2010-02-09 Canon Kabushiki Kaisha Document processing apparatus and control method thereof
KR101065937B1 (ko) 2008-03-13 2011-09-19 캐논 가부시끼가이샤 서비스 플로우 처리 방법 및 장치
KR101251686B1 (ko) 2005-04-19 2013-04-05 마이크로소프트 코포레이션 표시 가능 파일의 필드 및 참조 문헌 및 인용문에 대한확장형 마크업 언어 스키마의 결정
JP2015108874A (ja) * 2013-12-03 2015-06-11 富士通株式会社 情報処理装置、情報処理方法および情報処理プログラム

Families Citing this family (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030121002A1 (en) * 2001-12-20 2003-06-26 Stuart Goose Method and system for exchanging information through speech via a packet-oriented network
US20040215665A1 (en) * 2002-01-09 2004-10-28 Edgar David A. System, method, and computer program product for providing accelerated and secure wireless data transmission over the internet
CN1628304A (zh) * 2002-02-07 2005-06-15 皇家飞利浦电子股份有限公司 用于管理终端多样性而上载的样式表
US7228496B2 (en) * 2002-07-09 2007-06-05 Kabushiki Kaisha Toshiba Document editing method, document editing system, server apparatus, and document editing program
JP2004062600A (ja) * 2002-07-30 2004-02-26 Fujitsu Ltd 構造型文書の変換方法、復元方法、変換及び復元方法及びプログラム
US20050114787A1 (en) * 2002-08-05 2005-05-26 Fujitsu Limited Method and apparatus for copying information, and computer product
US7523174B2 (en) * 2002-10-15 2009-04-21 International Business Machines Corporation Dynamic portal assembly
FI115083B (fi) * 2002-11-21 2005-02-28 Nokia Corp Hallintaobjektien priorisointi
US20050192771A1 (en) * 2002-12-20 2005-09-01 International Business Machines Corporation System and method for dynamically integrating remote portal fragments into a local portal
JP4348151B2 (ja) * 2003-09-19 2009-10-21 株式会社リコー 情報処理装置及び情報処理方法
JP2005234837A (ja) * 2004-02-19 2005-09-02 Fujitsu Ltd 構造化文書処理方法、構造化文書処理システム及びそのプログラム
JP2005301996A (ja) * 2004-03-16 2005-10-27 Canon Inc 文書統合装置、文書統合装置の文書統合方法及びプログラム及び記録媒体
EP1640880B1 (en) * 2004-07-20 2009-06-17 Alcatel Lucent A method, a web document description language, a web server, a web document transfer protocol and a computer software product for retrieving a web document
US20060026503A1 (en) * 2004-07-30 2006-02-02 Wireless Services Corporation Markup document appearance manager
US20110138266A1 (en) * 2004-08-02 2011-06-09 Clairvoyance Corporation Document processing and management approach for creating a tag or an attribute in a markup language document, and method thereof
JP4843208B2 (ja) * 2004-09-30 2011-12-21 株式会社東芝 デジタルコンテンツ編集装置、デジタルコンテンツ編集方法、デジタルコンテンツ編集プログラムおよびデジタルコンテンツ編集プログラムを記録した記録媒体
US8176081B2 (en) * 2005-11-18 2012-05-08 International Business Machines Corporation Forms integration of an external data model not implemented through a document object model (DOM) accessible application programming interface (API)
JP4564464B2 (ja) * 2006-01-05 2010-10-20 株式会社東芝 デジタルコンテンツ再生装置、方法およびプログラム
KR20080004011A (ko) * 2006-07-04 2008-01-09 삼성전자주식회사 마크업 문서를 기록한 정보저장매체, 마크업 문서 처리방법 및 장치
US8266524B2 (en) * 2008-02-25 2012-09-11 Microsoft Corporation Editing a document using a transitory editing surface
US9507651B2 (en) 2008-04-28 2016-11-29 Microsoft Technology Licensing, Llc Techniques to modify a document using a latent transfer surface
WO2011000165A1 (en) * 2009-07-03 2011-01-06 Hewlett-Packard Development Company,L.P. Apparatus and method for text extraction
US8442998B2 (en) * 2011-01-18 2013-05-14 Apple Inc. Storage of a document using multiple representations
US20130066943A1 (en) * 2011-09-13 2013-03-14 International Business Machines Corporation Application-Aware Quality Of Service In Network Applications
WO2013052601A1 (en) * 2011-10-04 2013-04-11 Chegg, Inc. Electronic content management and delivery platform

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5991782A (en) * 1994-02-18 1999-11-23 Fujitsu Limited Automated extraction and doubly linked reference marks for partialized document contents and version control
US6076088A (en) * 1996-02-09 2000-06-13 Paik; Woojin Information extraction system and method using concept relation concept (CRC) triples
US6006242A (en) * 1996-04-05 1999-12-21 Bankers Systems, Inc. Apparatus and method for dynamically creating a document
US6029182A (en) * 1996-10-04 2000-02-22 Canon Information Systems, Inc. System for generating a custom formatted hypertext document by using a personal profile to retrieve hierarchical documents
AUPO904597A0 (en) * 1997-09-08 1997-10-02 Canon Information Systems Research Australia Pty Ltd Method for non-linear document conversion and printing
US6366923B1 (en) * 1998-03-23 2002-04-02 Webivore Research, Llc Gathering selected information from the world wide web
US6397231B1 (en) * 1998-08-31 2002-05-28 Xerox Corporation Virtual documents generated via combined documents or portions of documents retrieved from data repositories
US6651218B1 (en) * 1998-12-22 2003-11-18 Xerox Corporation Dynamic content database for multiple document genres
US6535896B2 (en) * 1999-01-29 2003-03-18 International Business Machines Corporation Systems, methods and computer program products for tailoring web page content in hypertext markup language format for display within pervasive computing devices using extensible markup language tools
US6826597B1 (en) * 1999-03-17 2004-11-30 Oracle International Corporation Providing clients with services that retrieve data from data sources that do not necessarily support the format required by the clients
US6763388B1 (en) * 1999-08-10 2004-07-13 Akamai Technologies, Inc. Method and apparatus for selecting and viewing portions of web pages
US6976210B1 (en) * 1999-08-31 2005-12-13 Lucent Technologies Inc. Method and apparatus for web-site-independent personalization from multiple sites having user-determined extraction functionality
US6728685B1 (en) * 1999-11-05 2004-04-27 Ford Motor Company Communication schema of online reporting system and method related to online orders for consumer products having specific configurations
US7130821B1 (en) * 2000-01-14 2006-10-31 Trilogy Development Group, Inc. Method and apparatus for product comparison
US6865593B1 (en) * 2000-04-12 2005-03-08 Webcollege, Inc. Dynamic integration of web sites

Cited By (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004046357A (ja) * 2002-07-09 2004-02-12 Toshiba Corp 文書編集方法、文書編集システム、サーバ装置および文書編集プログラム
WO2004013765A1 (ja) * 2002-08-05 2004-02-12 Fujitsu Limited 情報複写装置、情報複写プログラムおよび情報複写方法
JP2005032230A (ja) * 2003-06-18 2005-02-03 Ricoh Co Ltd 電子装置及びWebページ生成方法
WO2006001392A1 (ja) * 2004-06-24 2006-01-05 Justsystems Corporation 文書処理方法および装置
US7661063B2 (en) 2004-10-14 2010-02-09 Canon Kabushiki Kaisha Document processing apparatus and control method thereof
JP2006154952A (ja) * 2004-11-25 2006-06-15 Canon Inc 構造化文書処理装置及び構造化文書処理方法、プログラム、記憶媒体
US7900136B2 (en) 2004-11-25 2011-03-01 Canon Kabushiki Kaisha Structured document processing apparatus and structured document processing method, and program
JP2008538841A (ja) * 2005-04-19 2008-11-06 マイクロソフト コーポレーション 提示可能なファイルのためのフィールドと、文献一覧および引用のための拡張マークアップ言語スキーマとの決定
US8086954B2 (en) 2005-04-19 2011-12-27 Microsoft Corporation Programmable object models for bibliographies and citations
KR101251686B1 (ko) 2005-04-19 2013-04-05 마이크로소프트 코포레이션 표시 가능 파일의 필드 및 참조 문헌 및 인용문에 대한확장형 마크업 언어 스키마의 결정
JP2007122609A (ja) * 2005-10-31 2007-05-17 Ricoh Co Ltd 構造化文書、コンテンツ配信サーバ装置及びコンテンツ配信システム
JP2007249619A (ja) * 2006-03-16 2007-09-27 Nec Corp 構造化文書符号化装置および構造化文書復号化装置
JP2007310564A (ja) * 2006-05-17 2007-11-29 Mie Prefecture 防災情報提供システム
JP2008305180A (ja) * 2007-06-07 2008-12-18 Toshiba Corp 文書生成装置、文書生成プログラム及び文書生成方法
KR101065937B1 (ko) 2008-03-13 2011-09-19 캐논 가부시끼가이샤 서비스 플로우 처리 방법 및 장치
JP2015108874A (ja) * 2013-12-03 2015-06-11 富士通株式会社 情報処理装置、情報処理方法および情報処理プログラム

Also Published As

Publication number Publication date
JP3943830B2 (ja) 2007-07-11
US20020078105A1 (en) 2002-06-20

Similar Documents

Publication Publication Date Title
JP3943830B2 (ja) 文書合成方法および文書合成装置
US7877682B2 (en) Modular distributed mobile data applications
EP1325432B1 (en) Method of and software for recordal and validation of changes to markup language files
US5745360A (en) Dynamic hypertext link converter system and process
TW571204B (en) Content publication system for supporting real-time integration and processing of multimedia content including dynamic data, and method thereof
US7634728B2 (en) System and method for providing a runtime environment for active web based document resources
EP0762297B1 (en) Use of proxy servers to provide annotation overlays
US7765464B2 (en) Method and system for dynamically assembling presentations of web pages
JP2004334866A (ja) タグリブを介するウェブサイトサマリの変換
US20140052778A1 (en) Method and apparatus for mapping a site on a wide area network
AU2001270901A1 (en) Method of and software for recordal and validation of changes to markup language files
JP5799795B2 (ja) 動的呼出サービスの実行結果のレンダリング方法、装置及びシステム
CN101149746A (zh) 在多个web服务中发现至少一个web服务的方法
JPH11502346A (ja) オンラインサービスの作成および保守用のコンピュータシステムおよびコンピュータ実行プロセス
US7107333B2 (en) Method and apparatus for processing workflow through a gateway
JPH11167584A (ja) ページ遷移方法及びその実施装置並びにその処理プログラムとデータを記録した媒体
Cope et al. UDDI for a manufactured product brokering service
WO2007132568A1 (ja) データ処理サーバ及びデータ処理方法
US7302492B1 (en) Method and apparatus for matching web service in applications using a data object exchange protocol
JP2006134102A (ja) ディレクトリ編集支援プログラム、ディレクトリ編集支援方法及びディレクトリ編集支援装置
JP4998558B2 (ja) リンク作成プログラム、リンク作成装置及びリンク作成方法
JP5712496B2 (ja) アノテーション復元方法、アノテーション付与方法、アノテーション復元プログラム及びアノテーション復元装置
KR100427681B1 (ko) 분산 데이터 처리 시스템에 있어서 동적 문서 생성용콤포넌트 모델 정의 장치 및 방법
Álvarez‐Sabucedo et al. Reusing web contents: a DOM approach
JP2003186788A (ja) 翻訳Webページ提供方法、翻訳Webページ提供システム及びプログラム

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20040913

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20051004

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20051130

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: 20070403

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20070406

LAPS Cancellation because of no payment of annual fees