(57)【特許請求の範囲】
【請求項１】
ポータル・ページ（１２５）及びポートレット（１２０）の階層構造体からなるウェブ・ポータルにポートレットを配置するためのコンピュータ・プログラムであって、コンピュータに、
ａ）ポータルに常駐するポートレットのポートレット・マークアップ、ポートレット記述又はポートレット相互作用記述のいずれか１つ、若しくは２つ又は全部から、前記ポートレット（１２０）に関連するデータ・マイニング入力データを検索するステップ（４１０）と、
ｂ）前記データ・マイニング入力データに対してデータ・マイニング機能を実施し、前記ポートレット（１２０）の間のそれぞれの意味構造的類似度又はそれぞれの機能的類似度のいずれか一方又は両方を明らかにするデータ・マイニング結果をもたらすステップ（４２０）と、
ｃ）前記データ・マイニング結果から、意味構造的及び機能的に類似するポートレットを前記ページ上に配置する新規のコンテンツ構造体を算出するステップと、
ｄ）前記新規のコンテンツ構造体を伴う新規のページを提供するステップ（４４０）と、を実行させ、
クラスタＸと異なるクラスタＹとの間のクラスタ間距離Ｄが、前記クラスタＸの中のポートレットＡと前記クラスタＹの中のポートレットＢの対の距離値を集約することによって定められ、単一のウェブ・ページ上で表わされるポートレット（１２０）の所定の距離閾値を含む所定のウェブ・ページ・レイアウト要件を満たしているウェブ・ページが提案される、コンピュータ・プログラム。
【請求項２】
算出されたポートレット配置が新規のウェブ・ポータル・バージョンの基本バージョンとして容認されるか否かを示す管理者フィードバックを受信するステップを更に含む、請求項１に記載のコンピュータ・プログラム。
【請求項３】
前記データ・マイニングが、前記ポートレットＡが前記クラスタＸに入り、前記ポートレットＢが前記クラスタＹに入るように、関連する前記ポートレットＡ、Ｂの前記クラスタＸ、Ｙへのクラスタリングを行うことを含む、請求項１に記載のコンピュータ・プログラム。
【請求項４】
前記ウェブ・ページのレイアウト提案が、クラスタＸ及びクラスタＹに含まれたポートレット（１２０）から集約したマークアップの視覚表現のサイズ及び図形に従う、請求項１から３のいずれか１項に記載のコンピュータ・プログラム。
【請求項５】
前記クラスタ間距離Ｄが、２つの異なるクラスタに常駐する全ての既存のポートレット対間の距離の最大値を、Ｄ＝ｍａｘ｛ｄ（Ａ、Ｂ）、ここでポートレットＡはクラスタＸに存在し、ポートレットＢはクラスタＹに存在する｝、及びｄがポートレット間の距離である式に従い計算することによって、算出される、請求項１から４のいずれか１項に記載のコンピュータ・プログラム。
【請求項６】
前記ポートレットＡが前記ポートレットＢによって公開された属性を取り扱うことができる場合に、前記ポートレットＡと前記ポートレットＢの間の相互作用係数（ＩＦＡＣ）が増分され、前記ポートレットＡと前記ポートレットＢの間の距離が、前記相互作用係数に従って計算される、請求項１から４のいずれか１項に記載のコンピュータ・プログラム。
【請求項７】
前記提案されたウェブ・ページに対して手作業で実施された訂正を含んでいる管理者フィードバックを受信するステップを更に含む、請求項１から６のいずれか１項に記載のコンピュータ・プログラム。
【請求項８】
新規のポートレットがページ上にインストールされるべき時に、前記新規のコンテンツ構造体を算出するステップが実施される、請求項１から７のいずれか１項に記載のコンピュータ・プログラム。
【請求項９】
前記新規のコンテンツ構造体を既存のコンテンツ構造体とは別々に格納するステップと、
所定のユーザ・アクションに際して、新規の構造体を導くことになる既存の構造体の修正を判断するステップと、
前記修正に従って、既存の構造体及びそれぞれのウェブ・ページ・レイアウトを選択的に適応させるためのユーザ入力制御を提供するステップと、を更に含む、請求項１から８のいずれか１項に記載のコンピュータ・プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はネットワーク・コンピューティングの分野に関し、具体的には、ポータルを介してアクセス可能なウェブ・コンテンツ又は企業コンテンツにアクセスするためのポータル・ページ及びポートレットの階層構造体からなるウェブ・ポータル又は企業ポータルを設計するための方法及びシステムに関する。
【背景技術】
【０００２】
図１は、こうした従来技術のウェブ・ポータルを実装したポータル・サーバの概略的なシステム図を与える。
例えば上記のＩＢＭ  ＷｅｂＳｐｈｅｒｅ  Ｐｏｒｔａｌ、又はＪｅｔｓｐｅｅｄ２  Ｅｎｔｅｒｐｒｉｓｅ  Ｐｏｒｔａｌ＜ｗｗｗ．Ｐｏｒｔａｌｓ．ａｐａｃｈｅ．ｏｒｇ／ｊｅｔｓｐｅｅｄ−２／Ｐｏｒｔａｌ−ｄｅｓｉｇｎ．ｈｔｍｌ＞のような従来技術のポータルは、ネットワーク・サーバ、例えば、ウェブ・サーバ１００に実装された複雑な機能により構築され、そのうち最も重要な要素は、ユーザ認証１０５、状態処理１１０、フラグメントの集約１１５、ポートレットを共通のウェブ・ページ・コンテキストに設定するための各ポートレット・コンテナ・ソフトウェア１３５への複数の各ＡＰＩ１３０を伴う、各ページ１２５に与えられた以下で詳述する複数のポートレット１２０、及び幾つかのポータル・ストレージ・リソース１４０のための論理コンポーネントである。論理コンポーネントは、必要に応じて単一のコンポーネント間でデータを交換できるように作動的に接続される。このことは図１に概略的に図示されている。
【０００３】
より詳細には、図１のウェブ・サーバのポータル・エンジンは、基礎となるポータル・モデル１５０と、セキュリティ設定、ユーザ役割、カスタマイズ設定、デバイス機能などのポータル情報に基づいて、ポートレット１２０の集約を実行する。レンダリングされたページ内で、ポータルは、ポータル・モデルに基づいて適切なナビゲーション要素の組を自動的に生成する。ポータル・エンジンは、集約の間、必要に応じて必要な時にポートレットを起動し、キャッシングを用いてポートレットに対してなされる要求の数を減らす。従来技術のＩＢＭ  ＷｅｂＳｐｈｅｒｅポータルは、Ｊａｖａ  Ｐｏｒｔｌｅｔ  ＡＰＩ（アプリケーション・プログラミング・インターフェース）のようなオープン・スタンダードを利用する。それはまた、ＷＳＲＰ標準によってリモート・ポートレットの使用をサポートする。
【０００４】
ポートレット・コンテナ１３５は、全てのポートレット１２０に有用な単一の制御コンポーネントであり、ポートレットの各々に常駐するコードの実行を制御することができる。それは、ポートレットのランタイム環境を提供し、とりわけ、イベント処理、ポートレット間のメッセージング、及びポートレット・インスタンスと構成データへのアクセスを容易にする。ポータル・リソース１４０は、具体的には、ポートレット１２０自体と、ポートレットがフラグメントの集合体の形で集約されるページ１２５である。ポータル・データベース１２８は、詳細にはポートレット名、ポートレット記述、ポートレット・タイトル、ポートレット・ショート・タイトル、及びキーワードといった何らかの属性を表すポートレット記述であるポートレット記述と、しばしばＷＳＤＬ文書の形で格納されるポートレット相互作用インターフェース記述とを格納する。ポータル・データベースはまた、ポータル・コンテンツ構造体、即ち、ネストされたページを再び含む場合があるポータル・ページとポートレットの階層構造体を格納する。このデータは、リレーショナル・テーブルのような従来技術に基づいた適切な表現でデータベース１２８に格納される。
【０００５】
上述された集約論理１１５は、ページを組み立てるのに必要な全てのステップを含む。通例は、これらのステップは、単一のページに組み立てられる出力を得るために、ストレージからコンテンツ構造体をロードすること、それを全検索すること、及び、構造体において参照されるインスタンスを呼び出すことである。コンテンツ構造体は、例えば管理者又はユーザによるポートレットのカスタマイズを通じて定めるか、又は例えば、スクリプト、ｘｍｌインポートなどの他の方法で定めて、データベースに保存することができる。
【０００６】
グラフィカル・ユーザ・インターフェース・コンポーネント１６０は、複数のレンダリングされたページのレイアウトを手作業で制御するために提供される。このインターフェース１６０により、ポータル管理者は、ウェブ・ページの外観を制御することが可能になる。具体的には、管理者は、与えられたウェブ・ページにおいて、どのポータルがどの位置で他のどのポータルと隣接してレンダリングされるのかを決定することができる。
【０００７】
本発明の焦点へ具体的に言及すると、ポータルの背後の構造体は、図２において、旅行者情報ポータルの例の形で図示される。こうした従来技術のポータルは、２０１から２０６に見られるようにネストされたページを再び含む場合がある、例えば円２０１から２１０のポータル・ページと、ポートレット２１１から２１７との階層構造体２００から形成される。こうした構造体は、ここでは一般に「コンテンツ構造体」と呼ばれる。言うまでもないが、ポートレット２１１から２１７は、（図２に図示されたように）１つの同じ階層レベルに配置されるとは限らず、いかなるレベルにわたって分散させることも可能である。
【０００８】
図２及び図３をより詳細に参照すると、ページ２０１は、ポータルのホームページである。ホームページ２０１は、数あるグラフィカル要素の中で、ページ２０２、２０３、及び２０４に通じる３つのリンクを備える。ページ２０２はまた、ページ２０５に通じる別のリンクを備え、該ページはまた、ページ２０７及び２０８に通じるリンクを備える。同様の構造が、ページ２０６、２０９、及び２１０に通じるページ２０４でも繰り返されている。同様の構造はページ２０３の下にも付加することができるが、ここでは図面のわかりやすさを増すために省略されている。
【０００９】
この例示的なページ２０７は、ポートレット２１１、２１２を備える。ポートレット２１１は列車時刻表を示し、ポートレット２１２はユーザがオンライン乗車券の購入を望む時にその案内をするポートレットである。ページ２０８の下には、レンタカーに関連したポートレット２１３が提供される。更にページ２０８の下には、旅行計画ポートレット２１４が提供される。更に、ページ２０９の下には、飛行機予約ポートレット２１５及びニュース・ポートレット２１６が提供される。最後に、ページ２０６の下には、電話帳ポートレット２１７を備えた更なるページ２１０が提供される。
【００１０】
従来技術においては、図２に簡略化された形で例示的に図示されたポータル・コンテンツ構造体は、ポータル管理者及びユーザにより、上記の図１のインターフェース１６０を用いて手作業で定められる。管理者は、「列車時刻表」ポートレット２１１を含んでいるページ２０７を編集する。従来技術においては、一般に、コンテンツ構造体を設定するためのシステム・サポートは存在しない。
【００１１】
図２において与えられたコンテンツ構造体は意図的に簡略化されているが、当業者であれば、ポートレットの数及びツリーの深さが増すときにポータルのウェブ・ページ上のポートレットを設定するタスクはもはや取るに足らないことを理解するであろう。
【００１２】
しかしながら、大企業のポータルは、例えば何千という多数のページ及びポートレットを含むのが通例である。企業ポータルの複雑さのため、手作業による管理は、時間がかかり、間違いを起こしやすく、従って費用がかかることから、非効率である。更に、複雑なポータルにおいては、人間の管理者がポートレット間の機能及び意味構造関係の全ての組を取り込むことは不可能であり、よって、管理者は、ポータルを訪れるユーザが互いに密接に関係する全てのポートレットを容易に見つけ出せるように全てのポートレットを適切に配置することができない場合が非常に多い。
【００１３】
相互に関係するポートレットの、例えばそれらが異なるページにわたって散在するときの複雑な配置を含む、不適切な配置は、複雑なコンテンツ構造体及び難解なナビゲーションをもたらす。これは、ユーザが２つ又はそれ以上の機能的に関係するポートレットを用いて作業するために、余りにも多くのページ間の切り替えを行わなければならないので、ポータルの使いやすさとユーザの生産性を低下させる場合がある。更に、例えばツリーの中で２ページ上位で呼び出しを待っている幾つかの関連ポートレットの存在にユーザが気づかないという事実に起因して、ユーザがポータルへの訪問を未完了のまま終了する危険がある。
【００１４】
よって、このような複雑なナビゲーション構造においては、ヘルプデスク・サポートの追加及びユーザ・トレーニングが必要になるか、又は少なくとも推奨されることが基本的に予見される。
【００１５】
【非特許文献１】Ｒｉｃａｒｄｏ  Ａ．  Ｂａｅｚａ−Ｙａｔｅｓ，  Ｂｅｒｔｈｉｅｒ  Ｒｉｂｅｉｒｏ−Ｎｅｔｏ，  Ｍｏｄｅｒｎ  Ｉｎｆｏｒｍａｔｉｏｎ  Ｒｅｔｒｉｅｖａｌ，  Ａｄｄｉｓｏｎ−Ｗｅｓｌｅｙ  Ｌｏｎｇｍａｎ  Ｐｕｂｌｉｓｈｉｎｇ  Ｃｏ．，Ｉｎｃ．，  Ｂｏｓｔｏｎ，  ＭＡ，  １９９９
【発明の開示】
【発明が解決しようとする課題】
【００１６】
よって、ポータルを介してアクセス可能なウェブ・コンテンツにアクセスするための、ポータル・ページ及びポートレットの階層構造体からなるウェブ・ポータルを設計するための改良された方法及びシステムを提供することが、本発明の目的である。
【課題を解決するための手段】
【００１７】
本発明のこの目的は、独立請求項に述べられた特徴によって達成される。本発明の更なる有益な配置及び実施形態は、それぞれのサブクレームに記載される。これより、添付の特許請求の範囲への参照がなされる。
【００１８】
略述すれば、本発明によるポータルは、ポートレット・マークアップ及び／又はポートレット記述に対し何らかのマイニングを実施して、自律的に計算を行い、改善されたポータル・コンテンツ構造体を提案する。このことは、ポートレット間の関係を良好に反映した使い勝手のよいコンテンツ構造体を提供するのに役立つ。このことは、相互に関係するポートレットを、好ましくは１つの同じページの上に近接して配置し、そのようにして、より良好にポートレットを集積するタスクを含む。このことは、ナビゲーション・アクション、具体的にはページ変更の数を減らし、また関連ポートレットのより集積されたビューを提示することから、ユーザ体験及び生産性を改善する。
【００１９】
マイニングは、ポートレット間の意味構造的及び機能的類似度を明らかにする。マイニング機能の結果として、グループ化されたポートレットが或る程度圧縮された形態となる。グループは、グループを構成するポートレットが互いに相互関係をもつ特性によって特徴付けられる。相互関係の近接度は、１つ又はそれ以上の開始パラメータによって予め設定することができる。ここで、これらのグループを取り上げて手作業で改良し、更に編集して、前から存在するコンテンツ構造体をより良好に組織化することが可能となる。
【００２０】
ポータル・サーバにおける本発明の最も広範な態様によれば、ポータル・ページ及びポートレットの階層構造体からなるウェブ・ポータルにポートレットを配置するための方法であって、ａ）ポータルに常駐するポートレットのポートレット・マークアップ及び／又はポートレット記述及び／又はポートレット相互作用記述、好ましくはポータルに関連付けられたデータベース又は当該ポートレットへの要求から、ポートレットに関連するデータ・マイニング入力データを検索するステップと、ｂ）データ・マイニング入力データに対してデータ・マイニング機能を実施し、ポートレット間のそれぞれの意味構造的類似度及び／又はそれぞれの機能的類似度を明らかにするデータ・マイニング結果をもたらすステップと、ｃ）データ・マイニング結果から、意味構造的及び機能的に類似するポートレットをページ上に配置する、新規のコンテンツ構造体を算出するステップと、ｄ）新規のコンテンツ構造体と共に新規のページを提供するステップにより特徴付けられる方法が開示される。
【００２１】
更に有利なことに、ポートレット配置ソフトウェアは、算出されたポートレット配置が新規のウェブ・ポータル・バージョンの基本バージョンとして容認された場合に、管理者フィードバックを受信するステップを実装することができる。
【００２２】
更に、マイニングは、関連するポートレットのクラスタリングを実施することを含むことが好ましい。
【００２３】
更に有利なことに、ポートレット配置ソフトウェアは、提案されたウェブ・ページ構造体に対し手作業で実施された訂正を含んでいる管理者フィードバックを受信するステップを実装することができる。
【００２４】
更に、新規のポートレット配置を算出するステップは、反復に基づいており、既存のポートレット配置と共に開始する。
【００２５】
更に、新規のポートレットがページ上にインストールされるべき時に、新規のポートレット配置を算出するステップが実施される。
【００２６】
それにより、以下の利点を得ることが可能である。第一に、ポータル・ユーザはポートレット集積の改善と簡略化されたナビゲーションから便益を得る。第二に、ポータル管理者は、手作業でコンテンツ構造体を設定することから解放される。
【発明を実施するための最良の形態】
【００２７】
本発明は例示目的で図示され、添付の図面の形状に限定されない。
これより図面を全般的に参照し、特に図４及び図５を参照しながら、本発明の１つの好ましい実施形態が以下でより詳細に説明される。
【００２８】
図５は、基本的には、本発明の機能であるポートレットの半自動配置を実行するために提供された制御ブロック１８０が存在する点で、図１と異なる。より具体的には、この論理は、必要とされる範囲でポータル・データベース１２８、ポータル１２０にアクセスし、またユーザ・インターフェース１６０に接続するための、全ての関連インターフェースを備える。この論理１８０は、図４によって図示され、続いて以下で説明される、以下の本発明の方法を実行する。
【００２９】
図４においてブロック４１０として示される第１の準備段階ブロックにおいて、データ・マイニング入力データが検索される。好ましいデータ・ソースはポータル・データベース１２８である。以下の入力データ、即ち、ポートレット名、ポートレット記述、ポートレット・タイトル、ポートレット・ショート・タイトル、及びキーワードといった何らかの属性を表すポートレット記述、しばしばＷＳＤＬ文書の形で格納されるポートレット相互作用インターフェース記述、又は、例えばＨＴＭＬフラグメント、随意的にはＨＴＭＬ及びＪＳＰソース・ファイルなどのポートレット・マークアップが収集されることが好ましい。
【００３０】
更なるデータ・ソースはポートレット自体であり、例えば上述されたポートレット配置制御１８０がポートレット・コンテナを通してポートレットを起動することによりポートレットからマークアップを要求するときに、そのようにしてポートレットからもデータを要求することができる。
【００３１】
ステップ４１０の終了時には、後続のデータ・マイニング・ステップ４２０のための全ての関連入力データが存在する。
【００３２】
ブロック４２０において、上記のステップ４１０で収集された入力データに基づいてデータ・マイニングが実施される。このブロック４２０については、基本的な従来のデータ・マイニング技術を適用してもよい。このデータ・マイニング機能は、存在するデータに適用され、しかも関連するポートレット・クラスタの階層を戻す、従来技術のクラスタリング・アルゴリズムを含む。後のステップ４３０において、クラスタ階層はコンテンツ構造体とマッピングされる。
【００３３】
略述すれば、クラスタリングはクラスタの組を戻す、即ち全てのクラスタの組は全てのポートレットの関数である。当業者には公知のように、クラスタリングとは、オブジェクトの組を類似のオブジェクトのクラスにグループ化するプロセスである。クラスタリングの中心になるのは、個々のオブジェクト間及びクラスタ間の距離値で表わされる類似度（又は非類似度）を判断することである。
【００３４】
本発明の好ましいアルゴリズムは、類似するクラスタを反復的に互いに結合する、集約的階層クラスタリング技術を用いる。これは、図４のステップ４２２からステップ４２８に示されており、以下でより詳細に説明される。
【００３５】
ステップ４２２：本発明のアルゴリズムは各々のポートレットをクラスタに割当てることで開始し、Ｎ（Ｎは、例えば２００、５００、１０００などのいかなる現実的な数であってもよい）個のポートレットが存在する場合には、初めは、各々がポートレットを１つだけ含んでいるＮ個のクラスタが存在する。クラスタの各対について、そのクラスタ対間の距離（以下でより詳細に説明される）は、それらが含むポートレット間の距離と同じである。
ステップ４２４：ここでは、最も近い（最も類似している）一対のクラスタが判断される。次いで、これらはマージされて単一のクラスタにされ、後には数の減った（Ｎ−１個の）クラスタが残される。
ステップ４２６：次いで、新たなクラスタと以前のクラスタの各々との間の距離が計算される。
次いで、ループ条件４２８「距離値は所定の距離閾値Ｔを超えているか？」が実行され、距離値がこの所定の距離閾値Ｔを超えるまでステップ４２４及びステップ４２６が繰り返される、即ち、より多くのポートレットをグループ・メンバーとして含めるために、ユーザにより定義された距離Ｔに従って、ステップ４２４の更なる反復においてマージされる類似するクラスタがそれ以上存在しなくなるまで、ループが続行され、クラスタがマージされる。Ｔの値はユーザによって選ばれ、それにより、２つのクラスタの類似度がどの程度の時にそれら２つのクラスタをマージしてはならなくなるかを指定できるようになる。
【００３６】
教説的な理由から、ループの終了時に（少なくとも１回の反復の後に）ループを終了させるための確認がなされることに注意されたい。現実の適用においては、このテストはループの開始時になされることが好ましく、それによりゼロ回の反復が可能になる（即ちマージが全く起こらない場合を可能にする）。
【００３７】
このように、マイニング機能の最終結果は、一般にクラスタの数の減少であり、ここで各クラスタは、特定の複数の相互に関係するポートレットを含む。
【００３８】
次いで、ステップ４３０で、マイニング結果から新規のコンテンツ構造体が算出される。図２の図面を参照すると、図２で与えられたツリー構造体が書き直される。この書き直されたツリーに基づいて新規のポータル構造体が算出され、ここで最上位の相互に関係するポートレットを単一のページに配置する付加的なステップが実行される。新しい下書きページ・レイアウトに結合されたこの新規のツリー構造体は、次いで、ステップ４４０で管理者ユーザに表示され、どうすればポータルがより良好に機能することができるかの基本提案として提供される。
【００３９】
更に、随意的に、管理者は、図１のインターフェース１６０を用いて何らかの個人的な再書き直しを実施することができ、本発明のプログラムを動作させて、これらの新しい優先順位に従って書き直しを実施することができる。従ってステップ４５０において、本発明のプログラムにもフィードバックが供給される。
【００４０】
以下、本発明において適用される距離計算が次のようにより詳細に説明される。２つのポートレットＡ及びＢ間の距離ｄ（Ａ，Ｂ）は、ポートレット属性、即ち、ポートレットＡ及びＢのポートレット記述及びポートレット・マークアップの間の距離に基づく。従来技術のテキスト処理及びテキスト・マイニング方法は、例えば所謂「ＴＦ−ＩＤＦ加重」及びコサイン類似度のように、属性対の間の距離を計算するために用いられ、例えば非特許文献１を参照されたい。そこでは、検索語の出現頻度（ＴＦ）は、ある単語の文書内頻度の逆数ＩＤＦとして測定され、単語指定の関連性との関係で論じられている。本発明に適用される上記の属性は、そのような単語として使用可能である。この刊行物において言及された文書は、ここで用いられる既に上述されたデータ・マイニングについての関連するデータ・ソースの全体性に対応する。
【００４１】
ポートレット距離の基礎として、クラスタ間距離が定められる。２つのクラスタＸ、Ｙ間の距離Ｄ（Ｘ，Ｙ）は、例えば、２つのクラスタのポートレット対間の全距離の最大値を計算することで集約が実施される完全リンケージ法において、ＸとＹのポートレット対の距離値を集約することで算出される。即ち、
Ｄ（Ｘ，Ｙ）＝ｍａｘ｛ｄ（Ａ，Ｂ）ここでポートレットＡはクラスタＸに存在し、ポートレットＢはクラスタＹに存在する｝
クラスタが２つ以上のポートレットを含む場合には、それに応じた数の計算がなされる。
【００４２】
或いはまた、平均距離を計算してもよい。その場合、集約は、２つのクラスタのポートレット対間の全距離の平均値を計算することで実施される。即ち、
Ｄ（Ｘ，Ｙ）＝ａｖｇ｛ｄ（Ａ，Ｂ）ここでポートレットＡはクラスタＸに存在し、ポートレットＢはクラスタＹに存在する｝
【００４３】
更に、本発明のクラスタ距離値の計算は、サイズ超過のページをもたらすことになるサイズ超過のクラスタをなくすために、発見的方法を組み入れることが好ましい。１つの例は、単一のページ上のポートレットの数を、例えば６又は８などの所定の最大数に制限することである
【００４４】
更に、２つのクラスタの結合体がサイズ超過であると確認が示した場合には、上記のアルゴリズムで用いられたクラスタ距離計算を修正して、クラスタ間距離を大きくしてもよい。この確認は、パラメータ閾値１は１つのクラスタにおけるポートレットの数を制限し、パラメータ閾値２はクラスタに対応するページの大きさを制限する、という２つのパラメータの定義に基づく。１つのページは、与えられた１つのクラスタに含まれたポートレットのマークアップから集約されることに注意されたい。
【００４５】
よって、修正された距離Ｄ計算アルゴリズムは、以下のように説明することができ、有用なところで擬似コードが括弧の中に付加される。即ち、
まず、１つはクラスタＸに存在し、もう１つはクラスタＹに存在する２つのポートレット間の距離Ｄが、
Ｄ＝集約｛ｄ（Ａ，Ｂ）ここでポートレットＡはクラスタＸに存在し、ポートレットＢはクラスタＹに存在する｝
によって決定される。
次いで、クラスタＸ４Ｙ（クラスタＸとＹとの結合体）に割当てられるポートレットが判断される。
次いで、ポートレットの数が所定の閾値より大きい（＃ポートレット＞閾値１）かどうかの確認が実施され、計算された距離Ｄが所定の増分だけ増加される（Ｄ＝Ｄ＋増分；  Ｄを戻す）。
次いで、Ｘ４Ｙの中のポートレットのプレビュー・マークアップが検索される。
次いで、ポートレットのプレビュー・マークアップの集約が実施され、そこからページ・プレビューがもたらされる。
次いで、必要なページ・サイズが全てのポートレットのマークアップを表示するには大きすぎるかどうか、即ち所定の閾値２より大きいかどうかの別の確認が実施され、計算された距離Ｄが増分される、例えば、（サイズ（ページ・プレビュー）＞閾値２、Ｄ＝Ｄ＋増分；Ｄを戻す）。
当業者であれば、更なるバリエーションを見出すことができるであろう。
【００４６】
サイズ超過のページを完全になくすために、パラメータ「増分」は、少なくとも所定の閾値Ｔに設定される。
【００４７】
クラスタリングから新規のコンテンツ構造体を算出するステップ４３０は、以下のように実施することができる。即ち、まず、クラスタ階層がページ階層とマッピングされ、したがって、ページとそれぞれの１つのクラスタとの間の全単射マッピングがなされる。従って、ページＩＤはクラスタＩＤに対応する。これにより、各々のポートレットをページにマッピングできるようになる。
【００４８】
ステップ４３０の結果は、新規のコンテンツ構造体モデルであり、このようにして、修正された図２の代表図を得ることができる。
最後に、得られたコンテンツ構造体モデルに従って、ポータル・コンテンツ構造体が修正される。このことは、コンテンツ構造体をデータベース（例えばリレーショナル・テーブル）に格納されるのに適した表現に変換し、この表現をポータル・データベースに書き込むことにより実現される。後続のポータル要求は、この新規のコンテンツ構造体を基礎として処理されることになる。
【００４９】
これは、新規のページを作成すること、廃止ページを削除すること、及び、ポートレットをページに割当てることを含むことができる。
【００５０】
次に、ポートレットの自動配置のための１つの実施例が図６から図１１を参照しながら与えられるが、ここではポートレット・タイトルとポートレット・キーワードのみが、データ・マイニング入力値として用いられる。更に、わかりやすさを増すために、非常に簡略化された距離計算が用いられる。即ち、
ポートレットＡ及びＢが少なくとも２つの共通キーワードをもつ場合には、距離ｄは１に等しく、ｄ（Ａ，Ｂ）＝１となる。
それ以外で、Ａ及びＢが少なくとも１つの共通キーワードをもつ場合には、ｄは３に等しく、ｄ（Ａ，Ｂ）＝３となり、
それ以外の場合には、
ｄは５に等しく、ｄ（Ａ，Ｂ）＝５となる。
【００５１】
図６からは、以下のことが明らかになる。
共通キーワードが「旅行」、「時刻」であるため、ｄ（列車時刻表、旅行計画）＝１、
ｄ（列車時刻表、列車乗車券）＝３（共通キーワードは「旅行」）、
ｄ（列車時刻表、電話帳）＝５（共通キーワードなし）。
上述された完全リンケージ法の距離計算は、
Ｄ（Ｘ，Ｙ）＝ｍａｘ｛ｄ（Ａ，Ｂ）ここでポートレットＡはクラスタＸに存在し、ポートレットＢはクラスタＹに存在する｝
を生み出す。
【００５２】
ポートレットの各々について、本発明のプログラム・コンポーネントは、ポートレット・ウィンドウのサイズをページの百分率（即ちスクリーン・サイズ）で示す。従って、例えば列車時刻表ポートレットは、ページの５０％を必要とし、５０％を同じページ上の他のポートレットのために残す。
【００５３】
サイズ超過のページをなくすために、増分は、増分＝ｍａｘ（Ｄ）＋１＝６に設定され、即ち、全てのポートレット距離値より高く設定される。
【００５４】
本発明の階層的クラスタリング・アルゴリズムは、図６に与えられたクラスタ構造体と共に開始する。図６においては、７つの開始クラスタが存在するが、これらは図２にあったポータル２１１から２１７と同一である。このように再び図２への参照がなされる。図６において、ポータル２１１から２１７の各々に与えられたキーワードは、上述されたデータ・マイニング・データ・ソース、この実施例においては、ポートレット記述、ポートレットの相互作用インターフェース記述、及びポートレットのマークアップから抽出される。更に、ページ割合に基づいて表されるポートレット・サイズの付加的な表示が、各ポートレットについて作成される。例えば、列車時刻表ポートレット２１１は、スクリーンの５０％のサイズを有する。
【００５５】
各反復ごとに、ステップ４２２からステップ４２８までのシーケンス（図４参照）が実行される。実行開始、即ち最初の反復において、ステップ４２２は、図６に与えられたクラスタ構造体を生み出し、各々のポートレットは単一のクラスタに関連付けられている、即ち、クラスタの数とポートレットの数は同一である。次いで、ステップ４２４において、最も近いクラスタが見つけ出されマージされる。このステップは、上述されたように、距離計算の補助により実施される。これは、図７に与えられているようなクラスタ構造体を生み出す。ここでは、ポートレット２１１及びポートレット２１４は、２つの共通キーワード、即ち「旅行」及び「時刻」を有することから、上記で算出されたように距離が１であるため、マージされる。
【００５６】
次いで、クラスタの各々とマージされたクラスタとの間の距離が算出されるステップ４２６が実施される。次いで、ステップ４２８において、類似のクラスタが存在するかどうかが確認される。ここでは、クラスタ間の距離計算は、上述されたように実施される。ステップ４２８におけるそれぞれの決定は、類似するクラスタが存在するということを生み出す。よって、それは、ＹＥＳ分岐において分岐されてステップ４２４に戻り、反復数２に入る。反復２は、列車乗車券クラスタ２１２とレンタカー・クラスタ２１３が類似していることを見つけ出し、それらを単純に結合する、即ちマージする。次いで、図４において与えられたアルゴリズムにより、次の反復に入る。
【００５７】
反復３に関しては図９が関連しており、本発明のプログラム・コンポーネントはクラスタ７１とポートレット２１５「飛行機予約」との間の距離を計算し、
Ｄ（クラスタ７１、飛行機予約）＝１＋増分＝１＋６＝７
を明らかにする。
【００５８】
この計算は、完全なページを表示するためにスクリーンの１００％より多くが使われなければならないという事態を回避するために、サイズ制限は増分を含めるという想定の下になされる。このことは、ポートレット２１１及び２１４がページの８０％を必要とし、それはスクリーンの３０％のサイズを有する飛行機予約ポートレット２１５を付加的に統合するには多すぎるので、ここでは当てはまる。よって、結果として合計サイズがページの１１０％となり、これは、上記の距離計算において増分が加えられることにつながる。このサイズ制限は、ポートレット２１５とクラスタ７１との間の有効距離を増加させる。
【００５９】
次に、クラスタ７２とポートレット２１５の間の距離が１、即ち、Ｄ（クラスタ７２、ポートレット２１５）＝１と算出される。更に、他の距離、即ち、Ｄ（ポートレット２１５、ポートレット２１７）＝５も算出される。ポートレット２１５は最も近い距離をもつクラスタとマージされるので、ポートレット２１５はクラスタ７２とマージされることになる。
【００６０】
図１０は、反復４から明らかになった次のクラスタ構造体を示す。この反復においては、ポートレット２１６及び２１７がマージされてクラスタ７３を生み出す。これらは共通キーワードを持たないポートレットであることに注意されたい。この時点で、各々のマージ動作が超過ページ（スクリーンの１００％以上を消費する）を生成してしまうことを主な理由として、それ以上のクラスタをマージさせることはできない。しかしながら、新たに作成されたクラスタを、各々１つがクラスタ・メンバーへのリンクの組を含み、各々１つがそのクラスタ・メンバーからキーワードを受け継いでいる、自動生成された新規のポートレットとして考えることができる。そしてここで、本発明のプログラム・コンポーネントは、再び、今回生成されたクラスタに対してアルゴリズムを再実行することができる。しかしながら、今回、プロシージャは、新規のクラスタ７４がメンバーとしてクラスタ７１、７２、及び７３を有する、図１１に示された２レベル構造体を得る１ステップの後で終了することになる。
【００６１】
本発明の方法は、幅広く変化させることが可能である。例えば、ポートレット相互作用係数を導入して、相互関係、特に特定のポートレットの入力／出力依存性を反映させることが可能である。そのためには、クラスタリング・アルゴリズムは、特定のポートレットが相互作用することができるという事実を認識するように修正される。このことは、ポートレット相互作用インターフェース記述（ＷＳＤＬ文書）の分析、及びポートレット・マークアップの分析によりなされる。この事前分析により、ポートレットの全プールから１つ又はそれ以上の相互作用ポートレットの組が抽出される。異なる組は、一般に、共通ポートレットを共有することはない。
【００６２】
相互作用が判断されたときには、その事実が、これらのポートレットの距離値を計算する時の（相互作用）パラメータとして計算に入力される。このことは、２つのポートレットの「相互作用係数」を計算するアルゴリズムによって達成される。このアルゴリズムは中立値と共に開始し、ポートレットｘがポートレットｙによって公開される特性を取り扱うことができる場合には、ポートレットｘとポートレットｙの間の相互作用係数（ＩＦＡＣ）を増分する。このことは、アルゴリズムが、ポートレットｘのインターフェース記述と、相互作用動作を参照するＪＳＰタグを含んだポートレットｙのマークアップとの間で、相互作用マッチングを実施することを意味する。
【００６３】
アルゴリズムは、以下のステップのシーケンスに基づいてもよい。即ち、
ＩＦＡＣ＝１
Ｘｉｎ＝｛ｘ｜特性ｘは、ポートレットＸの相互作用インターフェース記述において、入力特性として参照される｝
Ｘｏｕｔ＝｛ｘ｜特性ｘは、ポートレットＸの相互作用インターフェース記述において、出力特性として参照される｝
Ｙｉｎ＝｛ｙ｜特性ｙは、ポートレットＹの相互作用インターフェース記述において、入力特性として参照される｝
Ｙｏｕｔ＝｛ｙ｜特性ｙは、ポートレットＹの相互作用インターフェース記述において、出力特性として参照される｝
ｉｆｆ  ０  ＜＞  ｛Ｘｉｎ∩Ｙｏｕｔ｝  ｔｈｅｎ  ＩＦＡＣ＝ＩＦＡＣ＋増分
ｉｆｆ  ０  ＜＞  ｛Ｘｏｕｔ∩Ｙｉｎ｝  ｔｈｅｎ  ＩＦＡＣ＝ＩＦＡＣ＋増分
【００６４】
例えば、２つのポートレットＡ及びＢにおいて、増分＝２であり、
ＡとＢが相互作用しない場合は、その結果は、ＩＦＡＣ＝１である。
ＡがＢから特性を受け取る場合は、その結果は、ＩＦＡＣ＝３である。
ＢがＡから特性を受け取る場合は、その結果は、ＩＦＡＣ＝３である。
ＡがＢから特性を受け取り、ＢがＡから特性を受け取る場合は、その結果は、ＩＦＡＣ＝１＋２＋２＝５である。
距離値は、相互作用係数と相互依存関係にある。
【００６５】
更なる実施形態においては、新規のコンテンツ構造体は、ポータル・データベース１２８（図１）に独立して格納される、即ち、現行のコンテンツ構造体は修正されない。集約コンポーネント１１５は、ポータル・ユーザがポータルにログオンした時か、又はユーザがページを要求した時に確認を実施するように修正される。確認は、要求されたページの新規のコンテンツ構造体が、現行のコンテンツ構造体と比較して、修正されているかどうかをテストする。このテストが「修正済み」を出した場合には、集約コンポーネント１１５は、現行のコンテンツ構造体と新規のコンテンツ構造体の間の相違を計算し、変更に従って現行のコンテンツ構造体を選択的に適応させるアクションを準備し、アクションを起動させるためのリンクをページ・マークアップに挿入する。よって、ユーザは、それを用いて、例えば意味構造的に関連するか又は機能的に関連するポートレットをページに追加するなどのページ構造の改良が可能な、リンクを提示される。現行のコンテンツ構造体は、該当リンクをユーザが起動した時に変更される。この実施形態においては、ユーザはコンテンツ構造体に対するいかなる変更も完全に制御する。
【００６６】
このことは、例えば、以下のようにして実施することが可能である。即ち、
クライアントによって発行された要求が処理されている間の、第１のステップは、クライアントによって要求されたページのページ識別情報を得ることである。ページは従来技術を用いて処理される。
次いで、本発明のプログラム・コンポーネント１８０は、従来技術を用いて、そのページの現行のコンテンツ構造体を検索する。次いで、ポータル・データベースから新規のコンテンツ構造体を検索する。
次いで、現行のコンテンツ構造体と新規のコンテンツ構造体を比較する。
【００６７】
新規のコンテンツ構造体のみに含まれている全てのポートレットに関しては、以下のプロシージャが実行される。即ち、まず、本発明のプログラム・コンポーネントは、現行のページ、新規のポートレット、及びアクションの種類、即ち「ポートレットを追加する」の識別情報を含んだＵＲＬを作成する。ＵＲＬ作成は、従来技術を用いて実施されることに注意されたい。
【００６８】
現行のコンテンツ構造体のみに含まれている全てのポートレットに関しては、以下のプロシージャが実行される。即ち、まず、現行のページ、該当ポートレット、及びアクションの種類、即ち「ポートレットを削除する」の識別情報を含んだＵＲＬを作成する。ここでも、ＵＲＬ作成は、従来技術を用いて実施される。次いで、ＵＲＬを、クライアントに戻されるマークアップに含める。
【００６９】
クライアントは上述されたＵＲＬをポータルに対して発行することもできる。ポータルは、従来技術を用いて、ＵＲＬに含まれているアクションを処理する、即ち、指定のポートレットを追加するか、又はポートレットを削除することになる。
【００７０】
当業者であれば、特定のプロシージャ及び提案されたステップのシーケンスを示す上述の実施形態は、主として例示を目的として本発明の方法を実証するために与えられていると理解するであろう。よって、これらの実施例は、例えば、ステップの順序、ステップ間の並行度、単一のステップの実装詳細、データが格納される形式、ポートレットのグループ化が達成される方法、といった種々の態様において変えることができ、それぞれの更なる実施形態を得ることが可能であると了解されるであろう。
【００７１】
本発明は、ハードウェア、ソフトウェア、又はハードウェアとソフトウェアの組み合わせの形で実現することが可能である。本発明によるポートレット配置ツールは、１つのコンピュータ・システムに集中化した形で実現しても良く、異なる要素が幾つかの相互接続されたコンピュータ・システムにわたって散在する、分散した形で実現しても良い。いかなる種類のコンピュータ・システム、又は他の、ここで説明された方法を実行するように適応させられた装置も、適している。ハードウェアとソフトウェアとの典型的な組み合わせは、汎用コンピュータ・システムに、ロードされ実行された時にはそのコンピュータ・システムを制御して、ここで説明された方法を実行させる、コンピュータ・プログラムを伴ったものであろう。
【００７２】
本発明は、また、ここで説明された方法の実装を可能にする全ての特徴を備えており、また、コンピュータ・システムにロードされた時にはこれらの方法を実行する能力があるコンピュータ・プログラム製品に組み込んでも良い。
【００７３】
本内容におけるコンピュータ・プログラム手段又はコンピュータ・プログラムとは、情報処理能力を有するシステムに、特定の機能を、直接的に実施させるか、又は、
ａ）別の言語、コード、又は表記法への変換
ｂ）異なる資料形態における複製
のいずれか、又はその両方の後で実施させることを意図されている命令の組のいずれかの表現、いずれかの言語、コード、又は表記法を意味する。
【図面の簡単な説明】
【００７４】
【図１】相互作用ラインを含む、従来技術のポータル・サーバの構造体コンポーネントを示した概略図である。
【図２】階層的ツリー構造体に配置されたページ（円）及びポートレット（長方形）を含む概略的な例示のポータル構造体である。
【図３】１つのページの左側に示された従来技術のサンプル・ポータルの図（左側）と、図示されたページを構成するポートレットの拡大図（右側）である。
【図４】実装された機能コンポーネントを図示する、特定の実施形態による本発明の方法の制御フローの概略代表図である。
【図５】実装された構造コンポーネントを図示する。本発明の特定の実施形態によるポータル・サーバの概略ブロック図である。
【図６】本発明の方法において実施されるマイニング機能内でポートレットのクラスタリングを実施する間の、後続のステージにおけるクラスタ構造体の図である。
【図７】本発明の方法において実施されるマイニング機能内でポートレットのクラスタリングを実施する間の、後続のステージにおけるクラスタ構造体の図である。
【図８】本発明の方法において実施されるマイニング機能内でポートレットのクラスタリングを実施する間の、後続のステージにおけるクラスタ構造体の図である。
【図９】本発明の方法において実施されるマイニング機能内でポートレットのクラスタリングを実施する間の、後続のステージにおけるクラスタ構造体の図である。
【図１０】本発明の方法において実施されるマイニング機能内でポートレットのクラスタリングを実施する間の、後続のステージにおけるクラスタ構造体の図である。
【図１１】本発明の方法において実施されるマイニング機能内でポートレットのクラスタリングを実施する間の、後続のステージにおけるクラスタ構造体の図である。
【符号の説明】
【００７５】
１１５：集約
１２０：ポートレット
１２５：ポータル・ページ
１２８：ポータル・データベース
１３５：ポートレット・コンテナ
１６０：インターフェース
【図１】
0004848259.tif 000002
【図２】
0004848259.tif 000003
【図３】
0004848259.tif 000004
【図４】
0004848259.tif 000005
【図５】
0004848259.tif 000006
【図６】
0004848259.tif 000007
【図７】
0004848259.tif 000008
【図８】
0004848259.tif 000009
【図９】
0004848259.tif 000010
【図１０】
0004848259.tif 000011
【図１１】
0004848259.tif 000012