説明

コンテンツ変換システムおよびコンピュータプログラム

【課題】Webページ等のコンテンツを分割して携帯端末等に提供する際に、分割前の元のコンテンツの表示レイアウトに沿う適切な分割を行うことに寄与する。
【解決手段】コンテンツ部品の表示レイアウトに基づいてコンテンツデータを分割する1次分割部13と、データ記述上のコンテンツ部品間の距離に基づいてコンテンツデータを分割する2次分割部14とを備え、2次分割部14は1次分割部13による分割後の1次分割コンテンツデータを分割し、1次分割部13は2次分割部14による分割数に応じて1次分割コンテンツデータの再分割を行うことを特徴とする。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、コンテンツ変換システムおよびコンピュータプログラムに関する。
【背景技術】
【0002】
近年、携帯電話網からインターネットに接続することが実現されており、ユーザは携帯電話機などの携帯端末を使用してインターネット上のWebサイトにアクセスすることができる。一般的に、携帯端末はメモリ容量や表示画面サイズが小さいので、パーソナルコンピュータ向けの標準的なWebページをそのままのサイズで表示することはできない。このため、Webページを分割して携帯端末に順次提供するための従来技術が、特許文献1,2、非特許文献1等に開示されている。
【0003】
特許文献1記載の従来技術1では、HTML(HyperText Markup Language)で記述されたHTML文書からタグ構造の切れ目を検出し、携帯端末の容量上限に基づき、該タグの切れ目を境に前後にHTML文書を分割する。また、改行タグ又は見出しタグが存在する場合は、改行タグ又は見出しタグを境に前後に分割している。また、Webページ中のテーブルについては、携帯端末への容量上限に基づいて分割数を決定している。この従来技術1では、テキストとテーブルから成る単純なWebページ構成に対してはさほど問題なく分割することができるが、多様なWebページ構成に対して適切な分割を行うことが難しいという問題がある。これに対して、特許文献2記載の従来技術2では、画面表示されるコンテンツ部品から構成されるWebページを表示するためのHTML文書におけるデータ記述上のコンテンツ部品間の距離に基づいて、Webページ内の分割点を決定している。また、非特許文献1記載の従来技術3では、HTML文書におけるデータ記述上のコンテンツ部品間の距離の値の分散値に基づいて、Webページ内の分割点を判定するための判定基準を生成している。
【特許文献1】特開2001−229106号公報
【特許文献2】特開2006−155147号公報
【非特許文献1】服部元,松本一則,菅谷史昭、“コンテンツ間距離の標準偏差に基づくWebページ動的分割方式”、情報処理学会論文誌(トランザクション) データベース (TOD)、Vol.47 No.SIG8、2006年6月
【発明の開示】
【発明が解決しようとする課題】
【0004】
しかし、上述の従来技術1では、改行タグや見出しタグがない場合や、テーブルを利用した表形式の情報とテーブルを利用したコンテンツ部品のレイアウトとが混在している場合など、多様なWebページ構成に対して適切な分割を行うことが難しいという問題がある。一方、従来技術2,3では、改行タグや見出しタグがない場合や、テーブルを利用した表形式の情報とテーブルを利用したコンテンツ部品のレイアウトとが混在している場合などにおいても、適切な分割を行うことができる。但し、HTML文書におけるデータ記述上のコンテンツ部品間の距離と、実際に画面表示されたときのコンテンツ部品間の距離とが一致しない場合には、分割前の元のWebページの表示レイアウトに沿う適切な分割が行われない可能性がある。
【0005】
例えば、図11に例示される画面表示されたWebページ上においてコンテンツ部品(c),(d)間は離れているので、Webページ分割後は、コンテンツ部品(c)と(d)が異なる画面で表示されるようにWebページの分割点が決定されることが好ましい。ところが、当該Webページに対応した図12に示されるHTML文書においては、データ記述上、コンテンツ部品(c),(d)間はあまり離れていない。このため、データ記述上のコンテンツ部品間の距離に基づいてWebページの分割点を決定すると、コンテンツ部品(c),(d)は分割後も同じ画面上に表示されるように分割点が決定される可能性がある。すると、分割前の元のWebページの表示レイアウトにそぐわない表示結果となる恐れが生じる。
【0006】
本発明は、このような事情を考慮してなされたもので、その目的は、Webページ等のコンテンツが、画像、テキスト、ハイパーリンク等のコンテンツ部品から構成されており、且つ、HTML等のタグ記述を用いて該コンテンツ部品の表示レイアウトが指定されている場合において、該コンテンツを分割して携帯端末等に提供する際に、分割前の元のコンテンツの表示レイアウトに沿う適切な分割を行うことに寄与するコンテンツ変換システムを提供することにある。
【0007】
また、本発明の他の目的は、本発明のコンテンツ変換システムを、コンピュータを利用して実現するためのコンピュータプログラムを提供することにある。
【課題を解決するための手段】
【0008】
上記の課題を解決するために、本発明に係るコンテンツ変換システムは、画面表示されるコンテンツ部品から構成されるコンテンツを端末に表示するためのコンテンツデータであって、前記コンテンツ部品の表示レイアウトがタグを用いて記述されているコンテンツデータを分割するコンテンツ変換システムにおいて、コンテンツ部品の表示レイアウトに基づいてコンテンツデータを分割する1次分割手段と、データ記述上のコンテンツ部品間の距離に基づいてコンテンツデータを分割する2次分割手段と、を備え、前記2次分割手段は、前記1次分割手段による分割後の1次分割コンテンツデータを分割し、前記1次分割手段は、該2次分割手段による分割数に応じて1次分割コンテンツデータの再分割を行うことを特徴とする。
【0009】
本発明に係るコンテンツ変換システムにおいては、前記1次分割手段は、1次分割コンテンツデータに係る表示面積を前記2次分割手段による分割数で除した密度を計算し、該密度が所定条件を満足するまで再分割を繰り返すことを特徴とする。
【0010】
本発明に係るコンテンツ変換システムにおいては、前記1次分割手段は、コンテンツ部品の大きさを表すタグ属性値を用いて、1次分割コンテンツデータに係る表示面積を計算することを特徴とする。
【0011】
本発明に係るコンテンツ変換システムにおいては、コンテンツデータ中のレイアウト関連タグの有無を判定するレイアウト関連タグ判定手段を備え、コンテンツデータ中にレイアウト関連タグがない場合には、前記2次分割手段による分割のみを行うことを特徴とする。
【0012】
本発明に係るコンテンツ変換システムにおいては、前記レイアウト関連タグ判定手段は、コンテンツデータ中のレイアウト関連タグの記述が文法上、正しいか否かを判定し、レイアウト関連タグの記述が文法上、正しくない場合には、前記2次分割手段による分割のみを行うことを特徴とする。
【0013】
本発明に係るコンピュータプログラムは、画面表示されるコンテンツ部品から構成されるコンテンツを端末に表示するためのコンテンツデータであって、前記コンテンツ部品の表示レイアウトがタグを用いて記述されているコンテンツデータを分割するコンテンツ変換を行うためのコンピュータプログラムであって、コンテンツ部品の表示レイアウトに基づいてコンテンツデータを分割する1次分割機能と、データ記述上のコンテンツ部品間の距離に基づいてコンテンツデータを分割する2次分割機能と、をコンピュータに実現させるコンピュータプログラムであり、前記2次分割機能は、前記1次分割機能による分割後の1次分割コンテンツデータを分割し、前記1次分割機能は、該2次分割機能による分割数に応じて1次分割コンテンツデータの再分割を行うことを特徴とする。
これにより、前述のコンテンツ変換システムがコンピュータを利用して実現できるようになる。
【発明の効果】
【0014】
本発明によれば、Webページ等のコンテンツが、画像、テキスト、ハイパーリンク等のコンテンツ部品から構成されており、且つ、HTML等のタグ記述を用いて該コンテンツ部品の表示レイアウトが指定されている場合において、該コンテンツを分割して携帯端末等に提供する際に、分割前の元のコンテンツの表示レイアウトに沿う適切な分割を行うことに寄与するという効果が得られる。
【発明を実施するための最良の形態】
【0015】
以下、図面を参照し、本発明の実施形態について説明する。
本発明に係るコンテンツは、画像、テキスト、ハイパーリンク等のコンテンツ部品から構成されており、且つ、HTML等のタグ記述を用いて該コンテンツ部品の表示レイアウトが指定されている。本実施形態では、本発明に係るコンテンツの一例としてWebページを挙げて説明する。また、Webページ上に表示されるコンテンツ部品の表示レイアウトを指定するデータの一例として、HTML文書を挙げて説明する。
【0016】
図1は、本発明の一実施形態に係るコンテンツ変換サーバ1の構成を示すブロック図である。図1において、コンテンツ変換サーバ1は、コンテンツデータ取得部11とレイアウト関連タグ判定部12と第1次分割部13と第2次分割部14と再構成部15を備える。
【0017】
コンテンツ変換サーバ1は、インターネット等の通信ネットワークに接続されている。コンテンツ変換サーバ1は、通信ネットワーク上に設けられたWebサーバ2にアクセスし、該Webサーバ2が提供するWebページを表示するためのコンテンツデータを該Webサーバ2から取得することができる。
【0018】
コンテンツデータは、Webページ上に表示されるコンテンツ部品と、該コンテンツ部品の表示レイアウトを指定するHTML文書とを含む。コンテンツ部品としては、例えば、画像、テキスト、ハイパーリンクなどが挙げられる。コンテンツ部品は、HTML文書中に組み込まれてもよく、或いは、HTML文書とは別ファイルになっていてもよい。例えば、テキストおよびハイパーリンクは、一般的にHTML文書中に組み込まれる。一方、画像は、一般的にHTML文書とは別ファイルで用意され、HTML文書中には当該画像ファイルの所在を示す情報(例えばURL(Uniform Resource Locator))が含められる。
【0019】
また、コンテンツ変換サーバ1は、通信ネットワークを介して端末3との間でデータを送受信することができる。端末3は、移動通信用の携帯端末であってもよく、或いは固定通信用の固定端末であってもよい。端末3としては、例えば、携帯電話網の加入端末である携帯電話端末等が利用可能である。端末3は、各種のWebページの閲覧を実現するブラウザ31を有する。ブラウザ31は、端末3の使用者によるWebページ閲覧操作に従って閲覧対象のWebページのコンテンツデータを端末3により通信ネットワーク経由で取得し、該取得したコンテンツデータに基づいて当該Webページを端末3の表示装置に表示させる。
【0020】
図1のコンテンツ変換サーバ1において、コンテンツデータ取得部11は、端末3で動作するブラウザ31からのWebページ取得要求を受信し、この要求に従ってWebサーバ2からコンテンツデータを取得する。
【0021】
レイアウト関連タグ判定部12は、コンテンツデータ中のHTML文書に記述されているタグの構造を解析し、レイアウト関連タグの階層構造を示すツリーを作成する。このツリーは第1次分割部13に送られる。レイアウト関連タグは、コンテンツ部品の表示レイアウトに使用可能なタグである。HTMLにおけるレイアウト関連タグとしては、<table>,<tr>,<td>等のテーブル関連タグと、<div>等のレイアウトブロック定義関連タグとが挙げられる。
【0022】
第1次分割部13は、Webページ表示領域の密度に基づいてHTML文書の分割を行う。第1次分割部13は、レイアウト関連タグの構造の変わり目を境にして前後にHTML文書を分割する。第1次分割部13は、分割後のHTML文書に対応するWebページ表示領域の密度を一定値未満に抑えるように、HTML文書の分割点を決定する。このとき、第2次分割部14による分割結果を考慮する。第1次分割部13は、コンテンツ部品の表示レイアウトに基づいた、HTML文書の大まかな分割を行うものである。
【0023】
第2次分割部14は、HTML文書におけるデータ記述上のコンテンツ部品間の距離に基づいてHTML文書の分割を行う。
【0024】
再構成部15は、第1次分割部13と第2次分割部14による分割後のそれぞれのHTML文書に対してヘッダ付与等を行い、完全なHTML文書として再構成する。これら再構成されたHTML文書は、それぞれが一つのWebページに対応する。再構成部15は、再構成後のHTML文書をコンテンツ部品と共に、ブラウザ31からの要求に応じて、順次、端末3に返送する。これにより、端末3は、コンテンツ変換サーバ1から送られてくるHTML文書及びコンテンツ部品を受信し、分割されたWebページを表示することができる。
【0025】
次に、図1に示されるコンテンツ変換サーバ1の動作を詳細に説明する。
【0026】
はじめに、図2を参照して、図1のコンテンツ変換サーバ1におけるWebページ分割処理の全体の流れを説明する。
図2は、図1のコンテンツ変換サーバ1における処理の流れを示すフローチャートである。図2において、ステップS1では、コンテンツデータ取得部11がWebサーバ2からコンテンツデータを取得し、レイアウト関連タグ判定部12が該コンテンツデータ中のHTML文書に記述されているタグの構造を解析する。このとき、レイアウト関連タグ判定部12は、HTML文書中のレイアウト関連タグを浅い階層から深い階層へと順番に検出し、レイアウト関連タグの階層構造を示すツリーを作成する。このツリーは、第1次分割部13で使用される。
【0027】
次いで、ステップS2では、レイアウト関連タグ判定部12が、HTML文書において、レイアウト関連タグの文法上のエラーなし、且つ、レイアウト関連タグ有りを判定する。この判定の結果が真(YES)の場合にはステップS3,S4に進み、一方、偽(NO)の場合にはステップS5に進む。
【0028】
ステップS3,S4では、分割対象のHTML文書において、レイアウト関連タグの文法上のエラーなし、且つ、レイアウト関連タグ有りであるので、レイアウト関連タグ及びWebページ表示領域の密度に基づいたHTML文書の分割(1次分割)と、データ記述上のコンテンツ部品間の距離に基づいたHTML文書の分割(2次分割)とを組み合わせた分割を行う。
【0029】
まずステップS3では、第1次分割部13が、Webページ表示領域の密度に基づいてHTML文書を分割(1次分割)する。第1次分割部13による分割では、レイアウト関連タグの構造の変わり目を境にして前後にHTML文書を分割する。次いで、ステップS4では、第2次分割部14が、第1次分割部13による1次分割後のそれぞれのHTML文書(1次分割HTML文書)を分割対象とし、データ記述上のコンテンツ部品間の距離に基づいて1次分割HTML文書をさらに分割(2次分割)する。第2次分割部14は、1次分割HTML文書ごとの分割数Nkを第1次分割部13に通知する。
【0030】
第1次分割部13は、第2次分割部14から1次分割HTML文書ごとの分割数Nkを受け取ると、再度、ステップS3の処理を行う。このステップS3の処理では、第1次分割部13は、1次分割HTML文書ごとにWebページ表示領域の密度を分割数Nkに基づいて計算し、該密度が一定値以上の場合には当該1次分割HTML文書をさらに分割する。そして、その分割後のそれぞれのHTML文書を新たな1次分割HTML文書としてステップS4に進む。
【0031】
このステップS3,S4の処理については、1次分割後のHTML文書の全てがWebページ表示領域の密度条件を満足するまで、つまり、1次分割後の全てのHTML文書に対応するWebページ表示領域の密度が一定値未満になるまで、繰り返す。そして、第1次分割部13は、1次分割後の全てのHTML文書に対応するWebページ表示領域の密度が一定値未満になったら、その時点の2次分割の結果の全てを第2次分割部14から受信し、1次分割HTML文書を2次分割した後のHTML文書を再構成部15に送る。
【0032】
一方、ステップS5では、分割対象のHTML文書において、レイアウト関連タグの文法上のエラーあり、又は、レイアウト関連タグなしであるので、レイアウト関連タグを境にしたHTML文書の分割は行わず、データ記述上のコンテンツ部品間の距離に基づいたHTML文書の分割のみを行う。従って、ステップS5では、第2次分割部14が、分割対象のHTML文書のデータ記述上のコンテンツ部品間の距離に基づいて当該HTML文書を分割する。第2次分割部14は、分割後のHTML文書を再構成部15に送る。
【0033】
次いで、ステップS6では、再構成部15が、ステップS3,S4による分割後の各HTML文書、若しくはステップS5による分割後の各HTML文書を対象にして、ヘッダ付与等を行い、完全なHTML文書として再構成する。これら再構成後のHTML文書はコンテンツ部品と共に端末3に送られる。
【0034】
次に、図3を参照して、レイアウト関連タグ判定部12の動作を説明する。
図3は、図1のレイアウト関連タグ判定部12における処理の流れを示すフローチャートである。図3において、ステップS11では、コンテンツデータ取得部11によってWebサーバ2から取得されたコンテンツデータ中のHTML文書(HTMLファイル)を取得する。次いで、ステップS12では、HTML文書中のレイアウト関連タグを浅い階層から深い階層へと順番に検索する。
【0035】
ステップS13では、HTML文書中にレイアウト関連タグが存在するか否かを判断する。この結果、レイアウト関連タグが存在する場合にはステップS14に進み、一方、レイアウト関連タグが存在しない場合にはステップS17に進む。
【0036】
ステップS14では、浅い階層から深い階層へと順番に検出されたレイアウト関連タグを各々の検出階層に位置させたツリーを作成する。このレイアウト関連タグの階層構造を示すツリーは、第1次分割部13で使用される。次いで、ステップS15では、レイアウト関連タグの記述が文法上、正しいか否かを判定する。この文法の正しさの判定方法は、次の規則を全て遵守している場合に正しいと判定する。
(規則1)あるレイアウト関連タグに着目したときに、同一階層に開始タグと終了タグがペアで存在すること。例えば、tableタグの開始タグ「<table>」と終了タグ「</table>」はペアで存在していることが必須である。但し、終了タグが省略可能なもの(例えば<td>など)は本規則1の適用外とする。
(規則2)タグ名が定義された通りであること。従ってタグ名のスペルミスはエラーとする。但し、アルファベットの大文字と小文字は区別しない。
(規則3)タグが入れ子構造になっていること。従ってタグが交差している場合はエラーとする。
【0037】
レイアウト関連タグの記述が文法上、正しい場合にはステップS16に進み、一方、レイアウト関連タグの記述が文法上、正しくない場合にはステップS17に進む。
【0038】
ステップS16では、レイアウト関連タグの文法上のエラーなし、且つ、レイアウト関連タグ有りであるので、レイアウト関連タグを境にしたHTML文書の分割が可能であると判定する。これにより、レイアウト関連タグで区切られたWebページ表示領域の密度に基づいたHTML文書の分割と、データ記述上のコンテンツ部品間の距離に基づいたHTML文書の分割とを組み合わせた分割が行われる。
【0039】
ステップS17では、レイアウト関連タグの文法上のエラーあり、又は、レイアウト関連タグなしであるので、レイアウト関連タグを境にしたHTML文書の分割が不可能であると判定する。これにより、レイアウト関連タグを境にしたHTML文書の分割は行われず、データ記述上のコンテンツ部品間の距離に基づいたHTML文書の分割のみが行われる。
【0040】
次に、図4、図5を参照して、第1次分割部13の動作を説明する。
図4、図5は、図1の第1次分割部13における1次分割処理の流れを示すフローチャートである。図4において、ステップS21では、変数iを1に初期化する。変数iは、分割対象のHTML文書に係るレイアウト関連タグの階層構造を示すツリー上の階層の深さを表す。変数iの初期値「1」は、最も浅い第1階層を表す。変数iが「2」である場合は、2番目に浅い第2階層を表す。つまり、変数iはi番目に浅い第i階層を表す。
【0041】
次いで、ステップS22では、分割対象のHTML文書において、第i階層におけるレイアウト関連タグを検索し抽出する。ここで、レイアウト関連タグが検出されればステップS24に進み、一方、レイアウト関連タグが検出されなければ図5のステップS29に進む。
【0042】
ステップS24では、ステップS22で検出されたレイアウト関連タグを境にしてHTML文書を分割する。このときの分割数をMiとする。これにより、1次分割後のHTML文書(1次分割HTML文書)がMi個生成される。
【0043】
次いで、ステップS25では、Mi個の1次分割HTML文書を第2次分割部14へ送る。ステップS26では、第2次分割部14から、Mi個の1次分割HTML文書ごとの分割数Nk(但し、k=1,2,3,・・・,Mi)を受け取る。
【0044】
次いで、図5のステップS27では、変数jを1に初期化する。変数jは、第i階層における1次分割HTML文書の番号を表す。変数jの初期値「1」は、第i階層における1番目の1次分割HTML文書を表す。変数jが「2」である場合は、第i階層における2番目の1次分割HTML文書を表す。つまり、変数jは第i階層におけるj番目の1次分割HTML文書を表す。なお、jは1〜Miまでの値である。
【0045】
次いで、ステップS28では、第i階層におけるj番目の1次分割HTML文書に係る密度Djを計算し、密度Djと所定値Dbを比較し、密度Djが所定値Db未満であるか否かを判断する。密度Djは、第i階層におけるj番目の1次分割HTML文書に係る分割数Nk(但し、k=j)と、当該1次分割HTML文書に対応するWebページの表示面積Sjとから、次式で算出する。なお、表示面積Sjの算出方法については後述する。
Dj=Sj÷Nk
【0046】
ここで、密度Djは、第i階層におけるj番目の1次分割HTML文書を第2次分割部14の2次分割によって適切に分割することが可能かどうかを表す指標である。密度Djが大きい場合、すなわち表示面積が大きいわりに2次分割数が少ない場合は1次分割が不十分であったことを示す。1次分割が不十分であった場合には、1次分割をもう1段深い階層のレイアウト関連タグを境にしてさらに分割する。これにより、1次分割と2次分割を組み合わせた最適な分割を図るようにしている。
【0047】
第i階層におけるj番目の1次分割HTML文書に係る密度Djが所定値Db未満である場合にはステップS29に進み、一方、該密度Djが所定値Db以上である場合にはステップS30に進む。
【0048】
ステップS29では、第i階層におけるj番目の1次分割HTML文書に係る密度Djが所定値Db未満になったので、第i階層における次の(j+1)番目の1次分割HTML文書に係る密度Djが所定値Db未満であるかを検査するために、変数jに1加算する。ステップS31では、変数jと「Mi」を比較し、第i階層における全ての(Mi個の)1次分割HTML文書についての密度Djの検査が完了したか否かを判断する。Mi個の全ての1次分割HTML文書についての密度Djの検査が完了した場合にはステップS32に進み、一方、まだ検査されていない1次分割HTML文書がある場合にはステップS28に戻る。
【0049】
ステップS32では、変数iと「1」を比較し、第1階層よりも深い階層である場合にはステップS33に進み、一方、第1階層である場合には処理を終了する。
【0050】
ステップS33では、階層を1段階浅くするために、変数iから1減算し、ステップS29に戻る。
【0051】
ステップS30では、第i階層におけるj番目の1次分割HTML文書に係る密度Djが所定値Db以上であるので、階層を1段階深くするために、変数iに1加算し、図4のステップS22に戻る。
【0052】
この図4、図5の処理により、全ての1次分割HTML文書に係る密度Djが所定値Db未満になるまで、HTML文書の1次分割が繰り返される。
【0053】
次に、図6を参照して、1次分割HTML文書に対応するWebページの表示面積Sjの算出方法を説明する。
図6は、本実施形態に係る表示面積Sjの算出方法の手順を示すフローチャートである。図6において、ステップS41では、ポインタiを1に初期化する。ポインタiは、表示面積Sjの算出対象の1次分割HTML文書中のレイアウト関連タグの番号を表す。ポインタiの初期値「1」は、1次分割HTML文書中の1番目のレイアウト関連タグを表す。ポインタiが「2」である場合は、1次分割HTML文書中の2番目のレイアウト関連タグを表す。つまり、ポインタiは1次分割HTML文書中のi番目のレイアウト関連タグを表す。なお、図6に係るポインタiは、図4および図5に係る変数iとは別個のものである。
【0054】
次いで、ステップS42では、表示面積算出対象の1次分割HTML文書を検索し、i番目のレイアウト関連タグを検出する。次いで、ステップS43では、該検出されたi番目のレイアウト関連タグが「<table>」である場合にはステップS44に進み、一方、「<table>」でない場合にはステップS45に進む。
【0055】
ステップS44では、<table>タグに付加された「height属性」と「width属性」があるか否かを判断する。「height属性」と「width属性」が両方ともある場合にはステップS46に進み、一方、「height属性」又は「width属性」がない場合にはステップS45に進む。
【0056】
ステップS46では、<table>タグに付加された「height属性」と「width属性」から、テーブルに係る部分表示面積Siを計算する。「height属性」はテーブルの高さに対応する画素数(pixel)である。「width属性」はテーブルの幅に対応する画素数(pixel)である。テーブルに係る部分表示面積Siは、次式で算出する。
テーブルに係る部分表示面積Si=「height属性の画素数(pixel)」×「width属性の画素数(pixel)」
【0057】
次いで、ステップS47では、</table>タグにポインタiを移動させる。その後、ステップS48に進む。
【0058】
他方、ステップS43の結果、i番目のレイアウト関連タグが「<table>」ではない場合には、ステップS45において、i番目のレイアウト関連タグに対応付けられたテキスト及び画像に係る部分表示面積Siを計算する。なお、HTML文書中にテキスト形式で記述されたハイパーリンクについても、ここではテキストとして部分表示面積Siを計算する。
【0059】
テキストに係る部分表示面積Siは、テキスト(ハイパーリンクを含む)を修飾する<font>タグに付加された「size属性」を用いて算出される。「size属性」は、フォントサイズに対応する画素数(pixel)である。テキストに係る部分表示面積Siは、次式で算出する。
テキストに係る部分表示面積Si=「size属性の画素数(pixel)」×テキスト文字数
なお、「class属性」がある場合はスタイルシートからフォントサイズを取得する。
【0060】
画像に係る部分表示面積Siの算出には、画像ファイルを取得して当該画像の縦横の画素数(pixel)を取得する。ただし、画像表示用の<img>タグに付加された「width属性」及び「height属性」が有る場合はそれらを用いて算出される。「height属性」は画像の高さに対応する画素数(pixel)である。「width属性」は画像の幅に対応する画素数(pixel)である。画像に係る部分表示面積Siは、次式で算出する。
画像に係る部分表示面積Si=「height属性の画素数(pixel)」×「width属性の画素数(pixel)」
【0061】
次いで、ステップS48では、まだ続きにレイアウト関連タグがあるか否かを判断し、レイアウト関連タグがある場合にはステップS49でポインタiに1加算してステップS42に戻る。一方、1次分割HTML文書中の全てのレイアウト関連タグについて処理した場合には、ステップS50に進む。
【0062】
ステップS50では、テーブル、テキスト及び画像に係る部分表示面積Siを合計し、この合計値を当該1次分割HTML文書に係る表示面積Sjとする。
【0063】
上述の実施形態によれば、レイアウト関連タグを境にしWebページ表示領域の密度に基づいたHTML文書の1次分割と、データ記述上のコンテンツ部品間の距離に基づいたHTML文書の2次分割とを組み合わせている。そして、1次分割後の全てのHTML文書に対応するWebページ表示領域の密度が一定値未満になるようにしている。
【0064】
例えば、図7に示される分割前の元のWebページ表示画面40内には、コンテンツ部品(ijkl)と、コンテンツ部品(abdce)及び(xyz)と、コンテンツ部品(pqrs)とがテーブル形式でレイアウトされている。図8には図7のWebページに対応するHTML文書H40が示されている。HTML文書H40においては、第1階層の<table>タグに属する第3階層の<tr>タグでコンテンツ部品(ijkl)がレイアウトされている。また、第4階層の<table>タグに属する第6階層の2つの<td>タグでコンテンツ部品(abdce)及び(xyz)がそれぞれレイアウトされている。また、もう一つの第4階層の<table>タグに属する第6階層の<td>タグでコンテンツ部品(pqrs)がレイアウトされている。この例の場合、HTML文書H40は、第4階層の<table>タグを境にして2つの1次分割HTML文書に1次分割される。そして、各1次分割HTML文書を対象にして、データ記述上のコンテンツ部品間の距離に基づいた2次分割が行われ、この2次分割による分割数を用いて算出された1次分割HTML文書の密度に応じてさらに1次分割HTML文書が1次分割される。
【0065】
上述したように本実施形態によれば、1次分割及び2次分割によって、1次分割後の全てのHTML文書に対応するWebページ表示領域の密度が一定値未満に制限される。さらに、1次分割後のHTML文書に対して、データ記述上のコンテンツ部品間の距離に基づいた分割が行われる。これにより、分割後のWebページにおける1ページ当りのコンテンツ部品の表示密度を適度に調節することができるようになり、分割後の各Webページは端末上に表示された際に見やすくなる。これは、つまり、分割前の元のWebページの表示レイアウトに沿う分割が実現されたことによる。
【0066】
例えば、図9に示されるWebページ表示画面32ように、データ記述上のコンテンツ部品間の距離に基づいたHTML文書の分割のみでは図9中の破線で示される領域で分割されることになり、分割後のWebページでは1ページ当りのコンテンツ部品の表示密度がバラバラで見づらくなり、分割前の元のWebページの表示レイアウトにそぐわない結果となっている。特に、携帯電話端末のような画面が比較的小さい場合では、表示に適するデータ量は限りがあり、最適な表示面積のデータ量に分割することが重要である。本実施形態によれば、1次分割及び2次分割によって図9中の実線で示される領域で分割されることになり、分割後のWebページにおける1ページ当りのコンテンツ部品の表示密度が適度に調節される。これにより、分割後の各Webページは、端末上に表示された際に見やすくなり、分割前の元のWebページの表示レイアウトに沿う結果となる。
【0067】
次に、図1に示される第2次分割部14の一実施例を説明する。
第2次分割部14としては、特許文献2又は非特許文献1に記載の技術を利用することができる。
【0068】
第2次分割部14は、HTML文書中のコンテンツ部品間のHTML記述上の距離に基づいて、当該HTML文書中の分割点を決定する。コンテンツ部品間距離は、HTML文書中において、2つのコンテンツ部品の間に記述されている全タグのネストの深さを積分して得られる。タグのネストの深さは、Webページ内の表示レイアウトの区切り度合いを表す。
【0069】
従って、Webページ内の表示レイアウト上、密接なコンテンツ部品同士はその距離が短くなり、一方、疎遠なコンテンツ部品同士はその距離が長くなる。特に、Tableタグ等を多段に利用して複雑なレイアウトを実現しているWebページでは、その傾向が強い。このため、コンテンツ部品間距離が長いほどより疎遠なコンテンツ部品同士であるとして、HTML文書中の分割点を決定する。
【0070】
図10は、コンテンツ部品間距離を説明するためのグラフ図である。図10において、横軸はタグ順(x)を表し、縦軸はタグのネストの深さ(y)を表している。図10の例では、コンテンツ部品101,102間のコンテンツ部品間距離S(a,b)を算出している。具体的には、(1)式によりコンテンツ部品間距離S(a,b)を算出する。
【0071】
【数1】

【0072】
但し、xはコンテンツ部品101のタグ順、yはコンテンツ部品101のネストの深さ、xはコンテンツ部品102のタグ順、yはコンテンツ部品102のネストの深さである。また、f(x)はタグ順(x)に対応するタグのネストの深さ(y)を与える関数である。
【0073】
第2次分割部14は、HTML文書中の全てのコンテンツ部品間の距離をそれぞれ算出する。第2次分割部14は、その算出したコンテンツ部品間距離の大小比較を行い、HTML文書中の分割点を決定する。このとき、第2次分割部14は、分割パラメタ(閾値N1及びN2、但し、N1>N2)をコンテンツ部品間距離の判定基準に用いる。分割パラメタ(閾値N1及びN2)は、HTML文書中の分割点を判定するためのコンテンツ部品間距離の判定基準である。HTML文書中の分割点を決定する手順(ステップS111〜S115)を以下に示す。
【0074】
ステップS111;分割対象のHTML文書全体を一つのコンテンツオブジェクト(ObjectID=root)とする。
ステップS112;コンテンツオブジェクト内のコンテンツ部品間距離の最大値(Smax)が、コンテンツオブジェクト内のコンテンツ部品間距離の平均値(Saverage)のN1倍以上であれば、その最大値(Smax)に対応するコンテンツ部品の間の位置を分割点に決定する。
ステップS113;ステップS112の閾値N1による判定が真でない場合において、上記最大値(Smax)が上記平均値(Saverage)のN2倍以上であり、且つ、その最大値(Smax)に対応するコンテンツ部品の位置で分割したときの分割後の一コンテンツオブジェクト内のコンテンツ部品数が閾値M個以上であれば、その最大値(Smax)に対応するコンテンツ部品の間の位置を分割点に決定する。
【0075】
ステップS114;ステップS112又はステップS113でコンテンツオブジェクト(ObjectID=root)の分割点が新たに発見された場合、分割結果のコンテンツオブジェクトを対象(ObjectID=root)として上記ステップS112,S113の処理を行う。
ステップS115;ステップS112又はステップS113でコンテンツオブジェクトの分割点が新たに発見されない場合には、終了する。
【0076】
第2次分割部14は、第1次分割部13から受け取った1次分割HTML文書を対象にして、上記分割点決定処理(ステップS111〜S115)を行い、当該1次分割HTML文書中の分割点を決定する。第2次分割部14は、該分割点に従って1次分割HTML文書を分割する。また、第2次分割部14は、1次分割HTML文書に係る分割数Nkを第1次分割部13に通知する。
【0077】
なお、分割パラメタ(閾値N1及びN2)は、予め決定された固定値であってもよく、或いは、個々のWebページ毎に適した閾値N1及びN2を動的に算出するようにしてもよい。分割パラメタ(閾値N1及びN2)を動的に算出する方法については、非特許文献1に記載されている。
【0078】
なお、上述の実施形態において、コンテンツ変換サーバ1は、図1に示されるように独立した一装置として実現されてもよく、或いは、Webサーバ2内部もしくは端末3内部に実装されるものであってもよい。
【0079】
また、コンテンツ変換サーバ1は、専用のハードウェアにより実現されるものであってもよく、あるいはパーソナルコンピュータ等の汎用のコンピュータシステムにより構成され、図1に示されるコンテンツ変換サーバ1の各機能を実現するためのプログラムを実行することによりその機能を実現させるものであってもよい。
【0080】
また、図1に示すコンテンツ変換サーバ1の機能を実現するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することによりコンテンツ変換処理を行ってもよい。なお、ここでいう「コンピュータシステム」とは、OSや周辺機器等のハードウェアを含むものであってもよい。
また、「コンピュータシステム」は、WWWシステムを利用している場合であれば、ホームページ提供環境(あるいは表示環境)も含むものとする。
また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ROM、フラッシュメモリ等の書き込み可能な不揮発性メモリ、CD−ROM等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。
【0081】
さらに「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムが送信された場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリ(例えばDRAM(Dynamic Random Access Memory))のように、一定時間プログラムを保持しているものも含むものとする。
また、上記プログラムは、このプログラムを記憶装置等に格納したコンピュータシステムから、伝送媒体を介して、あるいは、伝送媒体中の伝送波により他のコンピュータシステムに伝送されてもよい。ここで、プログラムを伝送する「伝送媒体」は、インターネット等のネットワーク(通信網)や電話回線等の通信回線(通信線)のように情報を伝送する機能を有する媒体のことをいう。
また、上記プログラムは、前述した機能の一部を実現するためのものであっても良い。さらに、前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるもの、いわゆる差分ファイル(差分プログラム)であっても良い。
【0082】
以上、本発明の実施形態について図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、本発明の要旨を逸脱しない範囲の設計変更等も含まれる。
【図面の簡単な説明】
【0083】
【図1】本発明の一実施形態に係るコンテンツ変換サーバ1の構成を示すブロック図である。
【図2】図1のコンテンツ変換サーバ1における処理の流れを示すフローチャートである。
【図3】図1のレイアウト関連タグ判定部12における処理の流れを示すフローチャートである。
【図4】図1の第1次分割部13における1次分割処理の流れを示すフローチャートである。
【図5】図1の第1次分割部13における1次分割処理の流れを示すフローチャートである。
【図6】本発明の一実施形態に係る表示面積Sjの算出方法の手順を示すフローチャートである。
【図7】Webページ表示画面の一例である。
【図8】図7のWebページに対応するHTML文書の構成例である。
【図9】本発明に係る効果を説明するための概略のWebページ表示画面である。
【図10】本発明の一実施形態に係るコンテンツ部品間距離を説明するためのグラフ図である。
【図11】Webページ表示画面の一例である。
【図12】図12のWebページに対応するHTML文書の構成例である。
【符号の説明】
【0084】
1…コンテンツ変換サーバ(コンテンツ変換システム)、11…コンテンツデータ取得部、12…レイアウト関連タグ判定部、13…第1次分割部、14…第2次分割部、15…再構成部

【特許請求の範囲】
【請求項1】
画面表示されるコンテンツ部品から構成されるコンテンツを端末に表示するためのコンテンツデータであって、前記コンテンツ部品の表示レイアウトがタグを用いて記述されているコンテンツデータを分割するコンテンツ変換システムにおいて、
コンテンツ部品の表示レイアウトに基づいてコンテンツデータを分割する1次分割手段と、
データ記述上のコンテンツ部品間の距離に基づいてコンテンツデータを分割する2次分割手段と、を備え、
前記2次分割手段は、前記1次分割手段による分割後の1次分割コンテンツデータを分割し、
前記1次分割手段は、該2次分割手段による分割数に応じて1次分割コンテンツデータの再分割を行う
ことを特徴とするコンテンツ変換システム。
【請求項2】
前記1次分割手段は、1次分割コンテンツデータに係る表示面積を前記2次分割手段による分割数で除した密度を計算し、該密度が所定条件を満足するまで再分割を繰り返すことを特徴とする請求項1に記載のコンテンツ変換システム。
【請求項3】
前記1次分割手段は、コンテンツ部品の大きさを表すタグ属性値を用いて、1次分割コンテンツデータに係る表示面積を計算することを特徴とする請求項2に記載のコンテンツ変換システム。
【請求項4】
コンテンツデータ中のレイアウト関連タグの有無を判定するレイアウト関連タグ判定手段を備え、
コンテンツデータ中にレイアウト関連タグがない場合には、前記2次分割手段による分割のみを行うことを特徴とする請求項1に記載のコンテンツ変換システム。
【請求項5】
前記レイアウト関連タグ判定手段は、コンテンツデータ中のレイアウト関連タグの記述が文法上、正しいか否かを判定し、
レイアウト関連タグの記述が文法上、正しくない場合には、前記2次分割手段による分割のみを行うことを特徴とする請求項4に記載のコンテンツ変換システム。
【請求項6】
画面表示されるコンテンツ部品から構成されるコンテンツを端末に表示するためのコンテンツデータであって、前記コンテンツ部品の表示レイアウトがタグを用いて記述されているコンテンツデータを分割するコンテンツ変換を行うためのコンピュータプログラムであって、
コンテンツ部品の表示レイアウトに基づいてコンテンツデータを分割する1次分割機能と、
データ記述上のコンテンツ部品間の距離に基づいてコンテンツデータを分割する2次分割機能と、をコンピュータに実現させるコンピュータプログラムであり、
前記2次分割機能は、前記1次分割機能による分割後の1次分割コンテンツデータを分割し、
前記1次分割機能は、該2次分割機能による分割数に応じて1次分割コンテンツデータの再分割を行う
ことを特徴とするコンピュータプログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate


【公開番号】特開2008−276694(P2008−276694A)
【公開日】平成20年11月13日(2008.11.13)
【国際特許分類】
【出願番号】特願2007−122527(P2007−122527)
【出願日】平成19年5月7日(2007.5.7)
【出願人】(000208891)KDDI株式会社 (2,700)
【Fターム(参考)】