(57)【要約】【課題】静的単位コンテンツと動的単位コンテンツとが混在するコンテンツから、未使用の装飾制御属性を適切に検出できるようにする。【解決手段】コンテンツを構成する静的単位コンテンツと動的単位コンテンツとのそれぞれに対応するコンテンツ内の構造化文書の構造及び装飾指定情報の構造を解析し、解析された構造化文書の構造における要素と装飾指定情報の構造における装飾制御属性との対応関係を特定し、構造化文書の構造における要素と対応関係のあることが特定された装飾指定情報の構造における装飾制御属性と、装飾指定情報における装飾制御属性とを比較した結果に基づき、装飾指定情報における装飾制御属性のうちから、静的単位コンテンツと動的単位コンテンツとのいずれにも使用されていない未使用装飾制御属性を検出するようにコンテンツ解析を行う。【選択図】図１０
2016170592.tif 000002
【特許請求の範囲】
【請求項１】
コンピュータに、
構造化文書と前記構造化文書における要素についての装飾を指定する装飾指定情報とを含むコンテンツを対象として、前記コンテンツを構成する静的単位コンテンツと動的単位コンテンツとのそれぞれに対応する前記構造化文書の構造及び前記装飾指定情報の構造を解析する文書解析ステップと、
前記文書解析ステップにより解析された前記構造化文書の構造における要素と前記装飾指定情報の構造における装飾制御属性との対応関係を特定する対応関係特定ステップと、
前記対応関係特定ステップにより前記構造化文書の構造における要素と対応関係のあることが特定された前記装飾指定情報の構造における装飾制御属性と、前記装飾指定情報における装飾制御属性とを比較した結果に基づいて、前記装飾指定情報における装飾制御属性のうちから、静的単位コンテンツと動的単位コンテンツとのいずれにも使用されていない未使用装飾制御属性を検出する未使用装飾制御属性検出ステップと
を実行させるためのプログラム。
【請求項２】
前記コンピュータに、前記未使用装飾制御属性検出ステップにより検出された未使用装飾制御属性の全てまたは一部を前記装飾指定情報から削除する装飾制御属性削除ステップ
をさらに実行させるための請求項１に記載のプログラム。
【請求項３】
前記装飾制御属性削除ステップは、前記装飾指定情報における削除対象の未使用装飾制御属性に対応する記述を削除する
請求項２に記載のプログラム。
【請求項４】
前記装飾制御属性削除ステップは、削除対象の未使用装飾制御属性が前記装飾指定情報において無効であることを示す削除指定情報を前記装飾指定情報の構造に付加する
請求項２に記載のプログラム。
【請求項５】
前記装飾制御属性削除ステップは、前記装飾指定情報の構造に付加された削除指定情報を削除することにより、前記装飾指定情報から削除された未使用装飾制御属性が前記装飾指定情報において復元されるようにする
請求項４に記載のプログラム。
【請求項６】
前記装飾制御属性削除ステップは、前記未使用装飾制御属性検出ステップにより検出された未使用装飾制御属性のうちから削除対象の未使用装飾制御属性を指定する操作に応じて、指定された削除対象の未使用装飾制御属性を前記装飾指定情報から削除する
請求項２から５のいずれか一項に記載のプログラム。
【請求項７】
前記装飾制御属性削除ステップは、前記未使用装飾制御属性検出ステップによる未使用装飾制御属性の検出に応じて、検出された未使用装飾制御属性の全てまたは一部を前記装飾指定情報から削除する
請求項２から５のいずれか一項に記載のプログラム。
【請求項８】
前記装飾制御属性削除ステップは、前記装飾指定情報からの未使用装飾制御属性の削除の履歴を示す削除履歴情報に基づいて、前記装飾指定情報から削除された未使用装飾制御属性が前記装飾指定情報において復元されるようにする
請求項２から７のいずれか一項に記載のプログラム。
【請求項９】
構造化文書と前記構造化文書における要素についての装飾を指定する装飾指定情報とを含むコンテンツを対象として、前記コンテンツを構成する静的単位コンテンツと動的単位コンテンツとのそれぞれに対応する前記構造化文書の構造及び前記装飾指定情報の構造を解析する文書解析部と、
前記文書解析部により解析された前記構造化文書の構造における要素と前記装飾指定情報の構造における装飾制御属性との対応関係を特定する対応関係特定部と、
前記対応関係特定部により前記構造化文書の構造における要素と対応関係のあることが特定された前記装飾指定情報の構造における装飾制御属性と、前記装飾指定情報における装飾制御属性とを比較した結果に基づいて、前記装飾指定情報における装飾制御属性のうちから、静的単位コンテンツと動的単位コンテンツとのいずれにも使用されていない未使用装飾制御属性を検出する未使用装飾制御属性検出部と
を備えるコンテンツ分析装置。
【請求項１０】
構造化文書と前記構造化文書における要素についての装飾を指定する装飾指定情報とを含むコンテンツを対象として、前記コンテンツを構成する静的単位コンテンツと動的単位コンテンツとのそれぞれに対応する前記構造化文書の構造及び前記装飾指定情報の構造を解析する文書解析ステップと、
前記文書解析ステップにより解析された前記構造化文書の構造における要素と前記装飾指定情報の構造における装飾制御属性との対応関係を特定する対応関係特定ステップと、
前記対応関係特定ステップにより前記構造化文書の構造における要素と対応関係のあることが特定された前記装飾指定情報の構造における装飾制御属性と、前記装飾指定情報における装飾制御属性とを比較した結果に基づいて、前記装飾指定情報における装飾制御属性のうちから、静的単位コンテンツと動的単位コンテンツとのいずれにも使用されていない未使用装飾制御属性を検出する未使用装飾制御属性検出ステップと
を含むコンテンツ分析方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、プログラム、コンテンツ分析装置及びコンテンツ分析方法に関する。
【背景技術】
【０００２】
ＷＷＷ（World Wide Web）システムを用いてインターネット上に公開されるＷｅｂサイトとしてのコンテンツは１以上のＷｅｂページの集合によって構成される。Ｗｅｂページは、例えばＨＴＭＬ（HyperText Markup Language）により構成される。ＨＴＭＬは文書の論理構造をタグで表現するマークアップ言語である。
このようなＷｅｂページは、閲覧ソフトウェアであるＷｅｂブラウザに内包されるレンダリングエンジンによってタグの解釈が行われ、Ｗｅｂブラウザ上での描画が行われる。
【０００３】
ＨＴＭＬで記述されたＷｅｂページに対してスタイルを定義する言語の１つとしてＣＳＳ（Cascading Style Sheets）が知られている。ＣＳＳはＨＴＭＬを構成する各タグに対して、レイアウトや、フォントの大きさ、色などをはじめ、どのように装飾を施すべきかを指定する。
【０００４】
Ｗｅｂサイトは、複数のＷｅｂページごとに対応するＨＴＭＬファイルと、ＷｅｂページのスタイルをＣＳＳにより定義したＣＳＳファイルとを有する。そのうえで、Ｗｅｂサイトを構成するＨＴＭＬファイルとＣＳＳファイルは、例えば特定のドメイン名のもとで管理される。
【０００５】
同じＷｅｂサイトに存在するＷｅｂページは、例えば見やすさなどの観点から統一的な装飾が施されることが多い。このために、同じＷｅｂサイトに存在する複数のＷｅｂページで使用される同一のタグには同じスタイルが指定されることが多い。
【０００６】
近年では、Ｗｅｂサイトが保持するＷｅｂページが大規模化しており、各Ｗｅｂページにおいて統一的なスタイルを必要とする箇所が増加している。そのため、予め考え得るスタイルを網羅的にテンプレートとしてＣＳＳファイルに登録することが一般的に行われるようになっている。
上記のようにＣＳＳファイルにテンプレートが含まれる場合、レンダリングエンジンは、Ｗｅｂページの描画処理をするにあたり、ＣＳＳファイルにおける全てのプロパティをメモリに読み込むようにしている。そのうえで、レンダリングエンジンは、読み込んだプロパティのうちから処理対象のタグに指定されたスタイルを検出し、検出したスタイルをタグの内容に適用するという出力処理をしている。この場合、実際にはＷｅｂページの出力に使用されていない無駄なスタイル情報も多く含むＣＳＳの情報のうちから必要なスタイルを検出していることになり、処理効率が低下する。
【０００７】
そこで、Ｗｅｂページの出力に必要なスタイル情報を保持した定義ファイルを用意し、定義ファイルに基づいて特定したスタイルのみを使用してＷｅｂページを出力するようにした構成が知られている（例えば、特許文献１参照）。
【先行技術文献】
【特許文献】
【０００８】
【特許文献１】特開２００５−２２２４５８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００９】
しかし、上記の構成においては、予め使用するスタイルを定義した情報を作成しておく必要があり、大規模化に伴って複数のＷｅｂページの追加、編集、削除が求められるような状況に柔軟に対応することが困難である。
【００１０】
また、近年では、Ｗｅｂブラウザのプラグイン機能として、スタイルの編集機能を持つメンテナンスツールが提供されている。編集機能では、例えばＣＳＳにおけるスタイル情報（プロパティとも呼ばれる）の値の追加、変更、削除等を行うことが可能とされており、即座にＷｅｂブラウザ上でスタイルの反映結果を確認することができる。
【００１１】
しかし、近年のＷｅｂサイトでは、Ｗｅｂページとして、静的Ｗｅｂページに加えて動的Ｗｅｂページも多く使用されるようになってきている。静的Ｗｅｂページは、クライアントからの要求に応答して、Ｗｅｂサーバからクライアントに送信される内容が常に同じとなるＷｅｂページである。動的Ｗｅｂページは、例えばＪａｖａＳｃｒｉｐｔ（登録商標）などのスクリプト言語を用いて、クライアントからの要求に応じた内容となるように動的に生成されたＷｅｂページである。
動的Ｗｅｂページでは、静的Ｗｅｂページでは利用していないスタイルが適用される場合がある。しかし、上記のようなメンテナンスツールは、静的Ｗｅｂページに対応した未使用のプロパティの検出は可能であるが、動的Ｗｅｂページのみで利用されるプロパティの検出を行うことができない。このために、動的Ｗｅｂページのみで使用されるプロパティが未使用のプロパティとして検出されてしまう可能性があった。
【００１２】
本発明は、このような事情に鑑みてなされたもので、静的単位コンテンツと動的単位コンテンツとが混在するコンテンツから、未使用の装飾制御属性を適切に検出できるようにすることを目的とする。
【課題を解決するための手段】
【００１３】
上述した課題を解決するために、本発明の一態様は、コンピュータに、構造化文書と前記構造化文書における要素についての装飾を指定する装飾指定情報とを含むコンテンツを対象として、前記コンテンツを構成する静的単位コンテンツと動的単位コンテンツとのそれぞれに対応する前記構造化文書の構造及び前記装飾指定情報の構造を解析する文書解析ステップと、前記文書解析ステップにより解析された前記構造化文書の構造における要素と前記装飾指定情報の構造における装飾制御属性との対応関係を特定する対応関係特定ステップと、前記対応関係特定ステップにより前記構造化文書の構造における要素と対応関係のあることが特定された前記装飾指定情報の構造における装飾制御属性と、前記装飾指定情報における装飾制御属性とを比較した結果に基づいて、前記装飾指定情報における装飾制御属性のうちから、静的単位コンテンツと動的単位コンテンツとのいずれにも使用されていない未使用装飾制御属性を検出する未使用装飾制御属性検出ステップとを実行させるためのプログラムである。
【００１４】
本発明の一態様は、上記のプログラムであって、前記コンピュータに、前記未使用装飾制御属性検出ステップにより検出された未使用装飾制御属性の全てまたは一部を前記装飾指定情報から削除する装飾制御属性削除ステップをさらに実行させるためのプログラムである。
【００１５】
本発明の一態様は、上記のプログラムであって、前記装飾制御属性削除ステップは、前記装飾指定情報における削除対象の未使用装飾制御属性に対応する記述を削除してもよい。
【００１６】
本発明の一態様は、上記のプログラムであって、前記装飾制御属性削除ステップは、削除対象の未使用装飾制御属性が前記装飾指定情報において無効であることを示す削除指定情報を前記装飾指定情報の構造に付加してもよい。
【００１７】
本発明の一態様は、上記のプログラムであって、前記装飾制御属性削除ステップは、前記装飾指定情報の構造に付加された削除指定情報を削除することにより、前記装飾指定情報から削除された未使用装飾制御属性が前記装飾指定情報において復元されるようにしてもよい。
【００１８】
本発明の一態様は、上記のプログラムであって、前記装飾制御属性削除ステップは、前記未使用装飾制御属性検出ステップにより検出された未使用装飾制御属性のうちから削除対象の未使用装飾制御属性を指定する操作に応じて、指定された削除対象の未使用装飾制御属性を前記装飾指定情報から削除してもよい。
【００１９】
本発明の一態様は、上記のプログラムであって、前記装飾制御属性削除ステップは、前記未使用装飾制御属性検出ステップによる未使用装飾制御属性の検出に応じて、検出された未使用装飾制御属性の全てまたは一部を前記装飾指定情報から削除してもよい。
【００２０】
本発明の一態様は、上記のプログラムであって、前記装飾制御属性削除ステップは、前記装飾指定情報からの未使用装飾制御属性の削除の履歴を示す削除履歴情報に基づいて、前記装飾指定情報から削除された未使用装飾制御属性が前記装飾指定情報において復元されるようにしてもよい。
【００２１】
本発明の一態様は、構造化文書と前記構造化文書における要素についての装飾を指定する装飾指定情報とを含むコンテンツを対象として、前記コンテンツを構成する静的単位コンテンツと動的単位コンテンツとのそれぞれに対応する前記構造化文書の構造及び前記装飾指定情報の構造を解析する文書解析部と、前記文書解析部により解析された前記構造化文書の構造における要素と前記装飾指定情報の構造における装飾制御属性との対応関係を特定する対応関係特定部と、前記対応関係特定部により前記構造化文書の構造における要素と対応関係のあることが特定された前記装飾指定情報の構造における装飾制御属性と、前記装飾指定情報における装飾制御属性とを比較した結果に基づいて、前記装飾指定情報における装飾制御属性のうちから、静的単位コンテンツと動的単位コンテンツとのいずれにも使用されていない未使用装飾制御属性を検出する未使用装飾制御属性検出部とを備えるコンテンツ分析装置である。
【００２２】
本発明の一態様は、構造化文書と前記構造化文書における要素についての装飾を指定する装飾指定情報とを含むコンテンツを対象として、前記コンテンツを構成する静的単位コンテンツと動的単位コンテンツとのそれぞれに対応する前記構造化文書の構造及び前記装飾指定情報の構造を解析する文書解析ステップと、前記文書解析ステップにより解析された前記構造化文書の構造における要素と前記装飾指定情報の構造における装飾制御属性との対応関係を特定する対応関係特定ステップと、前記対応関係特定ステップにより前記構造化文書の構造における要素と対応関係のあることが特定された前記装飾指定情報の構造における装飾制御属性と、前記装飾指定情報における装飾制御属性とを比較した結果に基づいて、前記装飾指定情報における装飾制御属性のうちから、静的単位コンテンツと動的単位コンテンツとのいずれにも使用されていない未使用装飾制御属性を検出する未使用装飾制御属性検出ステップとを含むコンテンツ分析方法である。
【発明の効果】
【００２３】
以上説明したように、本発明によれば、静的単位コンテンツと動的単位コンテンツとが混在するコンテンツから、適切に未使用の装飾制御属性を検出できるようになるという効果が得られる。
【図面の簡単な説明】
【００２４】
【図１】第１実施形態におけるコンテンツ分析装置の設置環境例を示す図である。
【図２】第１実施形態におけるＷｅｂコンテンツの構造例を示す図である。
【図３】第１実施形態におけるコンテンツ分析装置の構成例を示す図である。
【図４】第１実施形態における文書解析部の構成例を示す図である。
【図５】第１実施形態における対応関係特定部の構成例を示す図である。
【図６】第１実施形態における対応関係リストの一例を示す図である。
【図７】第１実施形態における未使用プロパティ検出部の構成例を示す図である。
【図８】第１実施形態におけるプロパティ削除部の構成例を示す図である。
【図９】第１実施形態におけるプロパティ編集画面の一例を示す図である。
【図１０】第１実施形態におけるコンテンツ分析装置が実行する処理手順例を示すフローチャートである。
【図１１】第２実施形態におけるプロパティ編集画面の一例を示す図である。
【図１２】第２実施形態におけるプロパティ編集画面の一例を示す図である。
【図１３】第２実施形態におけるコンテンツ分析装置が実行する処理手順例を示すフローチャートである。
【図１４】第３実施形態におけるコンテンツ分析装置が実行する処理手順例を示すフローチャートである。
【図１５】第４実施形態におけるコンテンツ分析装置の構成例を示す図である。
【図１６】第４実施形態におけるコンテンツ分析装置が実行する処理手順例を示すフローチャートである。
【発明を実施するための形態】
【００２５】
＜第１実施形態＞
［コンテンツ分析装置の設置環境例］
図１は、本実施形態におけるコンテンツ分析装置１００の設置環境例を示している。同図に示すように、本実施形態のコンテンツ分析装置１００は、ネットワーク３００を介してＷｅｂサーバ２００と接続されている。ネットワーク３００は、例えばインターネット、ＬＡＮ（Local Area Network）などである。
Ｗｅｂサーバ２００は、Ｗｅｂコンテンツ４００（コンテンツの一例）を記憶している。Ｗｅｂサーバ２００は、Ｗｅｂコンテンツ４００により構築されるＷｅｂサイトを公開するサーバである。
【００２６】
図２は、Ｗｅｂコンテンツ４００の構造例を示している。同図に示すＷｅｂコンテンツ４００は、ＨＴＭＬファイル４０１とＣＳＳファイル４０２とＪａｖａＳｃｒｉｐｔファイル４０３とを有する。
ＨＴＭＬファイル４０１は、マークアップ言語であるＨＴＭＬ（HyperText Markup Language）により記述された文書のファイルである。ＨＴＭＬファイル４０１は、テキストによる文書と、文書構造を定義した情報とで形成されるファイルである。ＨＴＭＬファイル４０１における文書構造の定義は、文書を形成する要素（ノード）をタグとして定義することによって行われる。ＨＴＭＬファイル４０１のように文書構造が定義された文書は構造化文書とも呼ばれる。
【００２７】
なお、Ｗｅｂコンテンツ４００が含む構造化文書としては、ＨＴＭＬファイル４０１に限定されるものではなく、例えばＸＭＬ（Extensible Markup Language）、ＳＧＭＬ（Standard Generalized Markup Language）などのように、他のマークアップ言語により記述されたファイルなどであってもよい。
【００２８】
ＣＳＳファイル４０２は、ＨＴＭＬファイル４０１において記述される要素についての装飾（スタイル）を指定する情報（装飾指定情報の一例）である。具体的に、ＣＳＳファイル４０２は、構造化文書などにおける表示形式を制御するスタイルシートの１つであるＣＳＳ（Cascading Style Sheets）に従って記述される。
なお、装飾指定情報としては、ＣＳＳファイル４０２に限定されることなく、他のスタイルシートであってもよい。
【００２９】
ＪａｖａＳｃｒｉｐｔファイル４０３は、ＨＴＭＬファイル４０１の再生に動的機能を与える情報である。ＪａｖａＳｃｒｉｐｔ（登録商標）によって記述されたプログラムのファイルである。
ＨＴＭＬファイル４０１によっては静的な状態が表現される。そのうえで、本実施形態のＷｅｂコンテンツ４００のようにＪａｖａＳｃｒｉｐｔファイル４０３が含められることで、ＨＴＭＬファイル４０１を再生して得られるコンテンツの態様に、動きや対話性などの動的な機能を与えることができる。
【００３０】
即ち、本実施形態におけるＷｅｂコンテンツは、Ｗｅｂページ（単位コンテンツ）として、ＨＴＭＬファイル４０１とＣＳＳファイル４０２によって出力される静的Ｗｅｂページ（静的単位コンテンツの一例）と、ＨＴＭＬファイル４０１とＣＳＳファイル４０２とＪａｖａＳｃｒｉｐｔファイル４０３によって出力される動的Ｗｅｂページ（動的単位コンテンツの一例）とを含む。
ここで、静的Ｗｅｂページは、クライアントからの要求に応答して、Ｗｅｂサーバ２００からクライアントに送信される内容が常に同じとなるＷｅｂページである。このようなＷｅｂページは、ＨＴＭＬファイル４０１とＣＳＳファイル４０２によって再現される。
一方、動的Ｗｅｂページは、クライアントからの要求に応じた内容を有するように動的に生成されるＷｅｂページである。本実施形態において、動的Ｗｅｂページの生成は、ＪａｖａＳｃｒｉｐｔによって行われる。ＪａｖａＳｃｒｉｐｔは、動的Ｗｅｂページを生成するにあたり、生成するＷｅｂページに対して指定されたＣＳＳのプロパティ（装飾制御属性の一例）をＣＳＳファイル４０２から読み出して適用する。なお、動的Ｗｅｂページの生成は、クライアントからのリクエストの内容に応じてＷｅｂサーバ２００で行われる場合と、Ｗｅｂブラウザ上で動作するＪａｖａＳｃｒｉｐｔなどによりクライアント端末上で行われる場合とがある。
本実施形態において、ＣＳＳファイル４０２におけるプロパティは、装飾（スタイル）についての属性を示す情報である。
【００３１】
図１において、コンテンツ分析装置１００は、ネットワーク３００経由でＷｅｂサーバ２００にアクセスし、Ｗｅｂサーバ２００が記憶するＷｅｂコンテンツ４００を分析対象として取得する。
そして、コンテンツ分析装置１００は、以下に説明する構成によって、取得した分析対象のＷｅｂコンテンツ４００について分析を行う。ここでの分析は、Ｗｅｂコンテンツ４００のＣＳＳファイル４０２に含まれるＣＳＳのプロパティのうちで、Ｗｅｂページの生成に使用されていない未使用プロパティを検出することである。また、未使用プロパティを検出するにあたり、コンテンツ分析装置１００は、分析として、Ｗｅｂコンテンツ４００に含まれるＨＴＭＬファイル４０１の文書解析と、文書解析によって解析されたＨＴＭＬファイル４０１の構造におけるタグとＣＳＳファイルの構造におけるプロパティとの対応関係を特定する処理を行う。
そのうえで、本実施形態のコンテンツ分析装置１００は、ユーザの操作によって削除対象として指定された未使用プロパティをＣＳＳファイル４０２から削除するプロパティ編集機能を備える。
【００３２】
コンテンツ分析装置１００は、未使用プロパティが削除された編集後のＣＳＳファイル４０２を含むＷｅｂコンテンツ４００をＷｅｂサーバ２００に送信する。Ｗｅｂサーバ２００は、コンテンツ分析装置１００から受信したＷｅｂコンテンツ４００を記憶する。これにより、以降においては、Ｗｅｂサーバ２００から不要なプロパティが削除されたＣＳＳファイル４０２を含むＷｅｂコンテンツ４００によるＷｅｂサイトが公開される。
【００３３】
本実施形態におけるＣＳＳファイル４０２は、例えば予め使用される可能性のある全てのスタイルに対応するプロパティが用意されたテンプレートを有する。このために、ＣＳＳファイル４０２に含まれるプロパティには、静的Ｗｅｂページと動的Ｗｅｂページとのいずれにも使用されないプロパティが含まれている。
即ち、Ｗｅｂコンテンツ４００は、未使用のプロパティという無駄なデータが含まれている。このようなＷｅｂコンテンツ４００がネットワーク３００上で伝送されることによっては、無駄なデータも伝送されることになり、例えば無駄なトラフィックの増加を招くことになる。
【００３４】
また、ＷｅｂブラウザがＷｅｂコンテンツ４００を再生する際には、無駄なプロパティを多く含むＣＳＳファイル４０２からＷｅｂページの生成に使用するプロパティを抽出する処理を行うことになるので、Ｗｅｂページ生成処理効率の点で不利である。
また、ＷｅｂブラウザがＷｅｂコンテンツ４００を再生する際には、Ｗｅｂコンテンツ４００に含まれるＣＳＳファイル４０２から全てのプロパティを読み出してメモリに読み込んでいる。この場合、ＷｅｂコンテンツにおけるＷｅｂページの出力に使用されない無駄なプロパティまでが読み込まれていることになる。即ち、この場合には、メモリの容量を無駄に使用していることになり、メモリの使用効率は高いとはいえない。
【００３５】
このように、Ｗｅｂコンテンツ４００においてＷｅｂページの生成に使用されないＣＳＳファイル４０２のプロパティが存在することは、データ伝送、Ｗｅｂページ生成処理、メモリの使用などの側面において効率を低下させる要因となる。
【００３６】
そこで、上記のようにしてコンテンツ分析装置１００によりＷｅｂコンテンツ４００においてＣＳＳファイル４０２の不要なプロパティが削除されることで、Ｗｅｂコンテンツの利用にあたっての効率化が図られる。
具体的には、Ｗｅｂコンテンツ４００をネットワーク３００上で伝送する際のトラフィックが軽減される。また、Ｗｅｂコンテンツ４００をクライアントで再生するにあたり、処理負荷が軽減される。また、メモリに読み込むべきデータ量が削減され、メモリの使用効率が向上する。
【００３７】
なお、同図においては、ネットワーク３００を介した通信によりＷｅｂサーバ２００から分析対象のＷｅｂコンテンツ４００を取得するようにされたコンテンツ分析装置１００の設置環境が示されている。
しかし、コンテンツ分析装置１００の設置環境は上記の例に限定されない。例えば、Ｗｅｂサーバ２００に代えて、ネットワーク３００経由で接続されたストレージデバイスに記憶されたＷｅｂコンテンツ４００をコンテンツ分析装置１００が取得するようにされた設置環境であってもよい。
また、コンテンツ分析装置１００に直接接続可能なストレージデバイスに記憶されたＷｅｂコンテンツ４００をコンテンツ分析装置１００が取得するようにされた設置環境であってもよい。
また、コンテンツ分析装置１００内に設けられたストレージ領域に記憶されたＷｅｂコンテンツ４００をコンテンツ分析装置１００が取得するようにされた設置環境であってもよい。
【００３８】
また、本実施形態におけるコンテンツ分析装置１００としての機能は、例えばＷｅｂブラウザなどのＷｅｂコンテンツを再生可能なアプリケーションにおけるプラグイン機能として実装されればよい。あるいは、コンテンツ分析装置１００としての機能は、本実施形態におけるＷｅｂコンテンツの分析機能と、プロパティ編集機能とを備える専用のアプリケーションにより実現されてもよい。
【００３９】
［コンテンツ分析装置の構成例］
図３を参照して、本実施形態におけるコンテンツ分析装置１００の構成例について説明する。同図に示すコンテンツ分析装置１００は、制御部１０１、表示部１０２及び操作部１０３を備える。
【００４０】
制御部１０１は、コンテンツ分析装置１００における各種の制御を実行する。制御部１０１としての機能は、コンテンツ分析装置１００が備えるＣＰＵ（Central Processing Unit）がプログラムを実行することにより実現される。
本実施形態における制御部１０１は、同図に示されるように、文書解析部１１１、対応関係特定部１１２、未使用プロパティ検出部１１３及びプロパティ削除部１１４を備える。
【００４１】
文書解析部１１１は、ＨＴＭＬファイル４０１と、ＨＴＭＬファイル４０１における要素についての装飾を指定するＣＳＳファイル４０２とを含むＷｅｂコンテンツ４００を対象として、Ｗｅｂコンテンツ４００を構成する動的Ｗｅｂページと静的Ｗｅｂページとのそれぞれに対応するＨＴＭＬファイル４０１の構造とＣＳＳファイル４０２の構造とを解析する。また、動的Ｗｅｂページは、ＨＴＭＬファイル４０１にＪａｖａＳｃｒｉｐｔファイル４０３が作用することにより生成される。そこで、文書解析部１１１は、動的Ｗｅｂページに対しては、ＨＴＭＬファイル４０１にＪａｖａＳｃｒｉｐｔファイル４０３を作用させることで解析結果（ＤＯＭツリー）を得る。
対応関係特定部１１２は、文書解析部１１１により解析されたＨＴＭＬファイル４０１の構造におけるタグとＣＳＳファイル４０２の構造におけるプロパティとの対応関係を特定する。
【００４２】
未使用プロパティ検出部１１３は、対応関係特定部１１２によりＨＴＭＬファイル４０１の構造におけるタグと対応関係のあることが特定されたＣＳＳファイル４０２の構造におけるプロパティ（以下、「使用プロパティ」とも呼ぶ）と、ＣＳＳファイル４０２におけるプロパティ（以下、「原文対応プロパティ」とを比較する。
未使用プロパティ検出部１１３は、使用プロパティと原文対応プロパティとを比較した結果に基づいて、ＣＳＳファイル４０２におけるプロパティのうちから、静的Ｗｅｂページと動的Ｗｅｂページとのいずれにも使用されていない未使用プロパティを検出する。
プロパティ削除部１１４は、未使用プロパティ検出部１１３により検出された未使用プロパティの全てまたは一部をＣＳＳファイル４０２から削除する。
【００４３】
表示部１０２は、ディスプレイデバイスを備え、制御部１０１の制御に応じて画像を表示する。
操作部１０３は、コンテンツ分析装置１００が備える操作子や入力デバイスを一括して示す。具体的に、操作部１０３には、例えばマウス、キーボード、ペンタブレットなどが含まれる。また、表示部１０２がタッチパネルとして構成されている場合には、タッチパネルも操作部１０３に含まれる。
【００４４】
以下に、制御部１０１における文書解析部１１１、対応関係特定部１１２、未使用プロパティ検出部１１３及びプロパティ削除部１１４の各構成について説明する。
【００４５】
図４は、文書解析部１１１の構成例を示している。文書解析部１１１は、ＨＴＭＬファイル解析部１１１１とＣＳＳファイル解析部１１１２とを備える。
ＨＴＭＬファイル解析部１１１１は、Ｗｅｂコンテンツ４００が含むＨＴＭＬファイル４０１とＪａｖａＳｃｒｉｐｔファイル４０３からＷｅｂページ単位の記述を入力する。本実施形態において、ＨＴＭＬファイル解析部１１１１は、Ｗｅｂコンテンツ４００を構成する全てのＷｅｂページ（静的Ｗｅｂページ及び全ての動的Ｗｅｂページ）ごとに対応する記述をＨＴＭＬファイル４０１とＪａｖａＳｃｒｉｐｔファイル４０３から入力する。
【００４６】
ＨＴＭＬファイル解析部１１１１は、入力したＷｅｂページ単位の記述について構文解析を行う。具体的に、ＨＴＭＬファイル解析部１１１１は、ＨＴＭＬファイル４０１におけるＷｅｂページ単位の記述におけるタグの階層と出現順を解析し、解析結果としてＷｅｂページ単位に対応するＤＯＭツリー５０１を生成する。ＤＯＭツリー５０１は解析結果に基づいてタグをツリー構造で表した情報である。１つのＤＯＭツリー５０１は、種別としては、ＨＴＭＬファイル４０１から直接的に出力される静的Ｗｅｂページに対応するＤＯＭツリー５０１と、ＪａｖａＳｃｒｉｐｔファイル４０３がＨＴＭＬファイル４０１に作用することにより生成される動的Ｗｅｂページに対応するＤＯＭツリー５０１との２種類が存在する。従って、ＨＴＭＬファイル解析部１１１１によっては、上記の２つの種類が混在する複数のＤＯＭツリー５０１が生成される。
本実施形態のＨＴＭＬファイル解析部１１１１は、例えばＨＴＭＬパーサ（構文解析器）と呼ばれるプログラムによってＤＯＭツリー５０１を生成する。ＤＯＭ（Document Object Model）は、ＨＴＭＬやＸＭＬなどによる構造化文書をアプリケーションから利用するためのＡＰＩ（Application Program Interface）の１つである。
【００４７】
ＣＳＳファイル解析部１１１２は、Ｗｅｂコンテンツ４００が含むＣＳＳファイル４０２の記述を入力する。本実施形態において、ＣＳＳファイル解析部１１１２は、Ｗｅｂコンテンツ４００を構成する全てのＣＳＳファイル４０２から入力する。即ち、ＣＳＳファイル解析部１１１２は、ＨＴＭＬファイル４０１から呼び出される全てのＣＳＳファイル４０２を入力とする。
ＣＳＳファイル解析部１１１２は、入力した全てのＣＳＳファイル４０２の記述について構文解析を行う。具体的に、ＣＳＳファイル解析部１１１２は、ＣＳＳファイル４０２の記述におけるプロパティと、プロパティの値と、プロパティに対応するタグとを解析し、解析結果としてＣＳＳスタイルルール５０２を生成する。ＣＳＳスタイルルール５０２は、解析結果に基づいて、ＣＳＳファイルに含まれる全てのプロパティと、プロパティの値と、プロパティに対応するタグとがツリー構造で表された情報である。従って、Ｗｅｂコンテンツ４００に対応して生成されるＣＳＳスタイルルール５０２は１つである。
本実施形態のＣＳＳファイル解析部１１１２は、例えばＣＳＳパーサ（構文解析器）と呼ばれるプログラムによってＣＳＳスタイルルールを生成する。
【００４８】
上記のようにＨＴＭＬファイル解析部１１１１とＣＳＳファイル解析部１１１２とが解析を行うことで、Ｗｅｂコンテンツ４００に応じて、複数のＤＯＭツリー５０１と１つのＣＳＳスタイルルール５０２が生成される。ＤＯＭツリー５０１とＣＳＳスタイルルール５０２は、例えば制御部１０１が備えるメモリ上で生成される。
【００４９】
図５は、対応関係特定部１１２の構成例を示している。同図に示す対応関係特定部１１２は、レンダーツリー生成部１１２１と対応関係リスト作成部１１２２とを備える。
【００５０】
レンダーツリー生成部１１２１は、ＤＯＭツリー５０１とＣＳＳスタイルルール５０２とを入力する。レンダーツリー生成部１１２１は、入力したＤＯＭツリー５０１ごとに、ＤＯＭツリー５０１におけるタグと、ＣＳＳスタイルルール５０２におけるプロパティとの関連付けを行う。１つのタグに関連付けられるプロパティとは、対応のタグにより定義される要素の装飾を指定するプロパティである。また、タグに関連付けられたプロパティには、プロパティの値が付加されている。
【００５１】
レンダーツリー生成部１１２１は、ＤＯＭツリー５０１ごとのタグとプロパティとの関連付けの結果を、それぞれレンダーツリー６００として生成する。つまり、レンダーツリー６００は、入力したＤＯＭツリー５０１と同じ数が生成される。
レンダーツリー６００は、上記のように関連付けられたタグとプロパティの組み合わせのうち、視覚的な要素に対応するタグとプロパティの組み合わせの描画順をツリー構造により表したものである。このようなレンダーツリー６００は、視覚的要素としてのタグの集合によるタグ群６０１と、タグ群６０１に含まれるタグごとに関連付けられたプロパティ群６０２とを含む構造を有する。
なお、レンダーツリー６００は、Ｗｅｂページ単位で生成されるものであり、Ｗｅｂページには静的Ｗｅｂページと動的Ｗｅｂページとが含まれる。
【００５２】
対応関係リスト作成部１１２２は、レンダーツリー６００を利用して、タグ群６０１に含まれるタグごとに関連付けられたプロパティ群６０２との対応関係を示す対応関係リスト７００を作成する。本実施形態の対応関係リスト作成部１１２２は、静的Ｗｅｂページと動的Ｗｅｂページのそれぞれに対応する対応関係リストを作成する。
【００５３】
図６は、対応関係リスト作成部１１２２により作成される対応関係リスト７００の内容例を模式的に示している。
同図に示す対応関係リスト７００は、静的Ｗｅｂページに対応する静的Ｗｅｂページ対応関係リストと、動的Ｗｅｂページに対応する動的Ｗｅｂページ対応関係リストとを含む。
静的Ｗｅｂページ対応関係リストは、Ｗｅｂコンテンツ４００を構成するＷｅｂページのうち、静的Ｗｅｂページに対応するタグごとにプロパティを対応付けた構造を有する。なお、プロパティには値も付加されている。また、リストの順番によって表示順が表される。
また、動的Ｗｅｂページ対応関係リストは、Ｗｅｂコンテンツ４００を構成するＷｅｂページのうち、動的Ｗｅｂページに対応するタグごとにプロパティを対応付けた構造である。なお、動的Ｗｅｂページ対応関係リストにおいても、プロパティに値が付加される。また、動的Ｗｅｂページ対応関係リストにおいても、リストの順番によって表示順が表される。
【００５４】
図７は、未使用プロパティ検出部１１３の構成例を示している。同図に示す未使用プロパティ検出部１１３は、リスト作成部１１３１及び比較処理部１１３２を備える。
リスト作成部１１３１は、ＣＳＳファイル解析部１１１２が行ったＣＳＳファイル４０２についての解析結果であるＣＳＳスタイルルール５０２を入力する。リスト作成部１１３１は、入力したＣＳＳスタイルルール５０２のツリー構造において記述される全てのプロパティを対応の値及びタグとともに抽出する。リスト作成部１１３１は、上記のように抽出したプロパティと、プロパティの値と、プロパティに対応するタグとの組み合わせによるリストを作成する。作成されたリストは原文対応プロパティリスト８００として比較処理部１１３２に対して入力される。
【００５５】
比較処理部１１３２は、対応関係リスト７００の静的Ｗｅｂページ対応関係リストと動的Ｗｅｂページ対応関係リストとのそれぞれに含まれる全てのプロパティを抽出する。このように抽出されるプロパティにも対応の値及びタグが付加されている。
上記のように対応関係リスト７００から取得されたプロパティと、プロパティの値と、プロパティに対応するタグとの組み合わせによるリストが使用プロパティリスト７５０である。つまり、比較処理部１１３２は、対応関係リスト７００を利用して使用プロパティリスト７５０を作成する。
【００５６】
比較処理部１１３２は、使用プロパティリスト７５０に含まれるプロパティ及びプロパティに対応するタグと、原文対応プロパティリスト８００に含まれるプロパティ及びプロパティに対応するタグとを比較する。比較処理部１１３２は、比較結果に基づいて、原文対応プロパティリスト８００に含まれるプロパティのうちから、未使用プロパティを検出する。また、比較処理部１１３２は、未使用プロパティの検出とともに、未使用プロパティに対応するタグを検出する。未使用プロパティは、前述のように、Ｗｅｂコンテンツ４００を構成する静的Ｗｅｂページと動的Ｗｅｂページとのいずれにも使用されていないプロパティである。
具体的に、比較処理部１１３２は、比較処理として、使用プロパティリスト７５０に含まれるプロパティと一致するプロパティを原文対応プロパティリスト８００から探索していく。そして、比較処理部１１３２は、原文対応プロパティリスト８００に含まれるプロパティのうちで、使用プロパティリストに含まれるプロパティと一致しなかったプロパティを未使用プロパティとして検出する。
本実施形態の比較処理部１１３２は、検出した未使用プロパティをリスト化した未使用プロパティリスト９００を作成する。
【００５７】
図８は、プロパティ削除部１１４の構成例を示している。同図に示すプロパティ削除部１１４は、編集画面表示制御部１１４１及び削除処理部１１４２を備える。
編集画面表示制御部１１４１は、未使用プロパティリスト９００を入力し、入力した未使用プロパティリスト９００の内容が反映されたプロパティ編集画面を表示部１０２に表示させる制御を行う。
また、編集画面表示制御部１１４１は、削除処理部１１４２により未使用プロパティのうちからユーザ（ＣＳＳファイル４０２の編集者）の操作により指定されたプロパティが削除されると、プロパティの削除結果が反映されるようにプロパティ編集画面を変更する。
【００５８】
ユーザは、操作部１０３を用いることで、プロパティ編集画面にて表示されるプロパティのうちから任意のプロパティを削除対象として選択し、選択した削除対象のプロパティの削除を指示する操作を行うことができる。
本実施形態の削除処理部１１４２は、操作部１０３に対する操作によってプロパティの削除が指示されると、Ｗｅｂコンテンツ４００におけるＣＳＳファイル４０２から、指定されたプロパティを削除する。
【００５９】
図９は、プロパティ編集画面の一態様例を示している。同図に示されるプロパティ編集画面においては、３行のリスト項目領域ＬＮ１、ＬＮ２、ＬＮ３が配置されている。なお、以降においてリスト項目領域ＬＮ１、ＬＮ２、ＬＮ３について特に区別しない場合にはリスト項目領域ＬＮと記載する。
【００６０】
１つのリスト項目領域ＬＮは、プロパティ領域ＰＡＲとチェックボックスＣＨＢを含む。プロパティ領域ＰＡＲには、未使用プロパティリスト９００に含まれる未使用プロパティにおける１つの未使用プロパティの記述内容が示される。チェックボックスＣＨＢにおいては、操作に応じてチェックマークの表示、非表示が切り替わる。
【００６１】
同図のプロパティ編集画面においては、３行のリスト項目領域ＬＮ１、ＬＮ２、ＬＮ３が表示された例を示しているが、一度に表示されるリスト項目領域ＬＮの数については特に限定されない。また、プロパティ編集画面において表示されていない残りのプロパティに対応するリスト項目領域ＬＮは、例えばスクロールバーを操作してプロパティ編集画面のウィンドウ内をスクロールさせることによって表示させることができる。
【００６２】
ユーザは、プロパティ編集画面においてリスト項目領域ＬＮごとに表示されるプロパティの内容を確認し、ＣＳＳファイル４０２から削除対象プロパティを判断する。例えばユーザは、将来的にも使用する可能性が無く、不要であると判断したプロパティを削除対象のプロパティとして判断すればよい。
ユーザは、削除すべきと判断したプロパティを示すプロパティ領域ＰＡＲを含むリスト項目領域ＬＮにおけるチェックボックスＣＨＢにチェックマークを付す操作を行う。
同図では、リスト項目領域ＬＮ１、ＬＮ２、ＬＮ３のうち、リスト項目領域ＬＮ１、ＬＮ３におけるチェックボックスＣＨＢにチェックマークが付された例が示されている。チェックマークが付されたリスト項目領域ＬＮに対応するプロパティは、削除対象のプロパティとして選択されていることを示す。
【００６３】
ユーザは、上記のように削除対象のプロパティを選択したうえで、削除ボタンＢＴ１に対する操作によりプロパティの削除を指示する。削除ボタンＢＴ１の操作に応じて、前述のように削除処理部１１４２は、削除対象として選択されたプロパティをＣＳＳファイル４０２から削除する処理を実行する。
また、上記のようにプロパティの削除が行われると、プロパティ編集画面は、削除されたプロパティに対応するリスト項目領域ＬＮが消去されるようにして表示が変化する。つまり、プロパティ編集画面においては、消去されることなくＣＳＳファイル４０２において残存している未使用プロパティだけが示される。
ユーザは、プロパティの編集を終了させる場合には、終了ボタンＢＴ２を操作する。終了ボタンＢＴ２が操作されると、例えば同図に示すプロパティ編集画面のウィンドウが閉じられる。
なお、削除ボタンＢＴ１に対する操作が行われた際に、削除処理部１１４２が削除対象として選択されたプロパティをＣＳＳファイル４０２から削除する処理を実行する前に、ユーザに対して、削除を実行してもよいか否かを確認するメッセージを表示してもよい。
【００６４】
このようにして、本実施形態においては、ユーザが未使用プロパティのうちから削除すべきプロパティを指定して削除を指示する操作を行うことによって、ＣＳＳファイル４０２から不要なプロパティを削除することができる。
【００６５】
［処理手順例］
図１０のフローチャートを参照して、本実施形態のコンテンツ分析装置１００が実行する処理手順例について説明する。
コンテンツ分析装置１００において、文書解析部１１１は、Ｗｅｂコンテンツ４００を入力する（ステップＳ１０１）。文書解析部１１１が入力したＷｅｂコンテンツ４００は、例えばコンテンツ分析装置１００が備えるＲＡＭ（Random Access Memory、図示せず）に記憶されればよい。
【００６６】
次に、文書解析部１１１におけるＨＴＭＬファイル解析部１１１１は、入力されたＷｅｂコンテンツ４００に含まれるＨＴＭＬファイル４０１とＪａｖａＳｃｒｉｐｔファイル４０３とを解析して、Ｗｅｂページ単位でＤＯＭツリー５０１を生成する（ステップＳ１０２）。
また、文書解析部１１１におけるＣＳＳファイル解析部１１１２は、入力されたＷｅｂコンテンツ４００に含まれるＣＳＳファイル４０２を解析して、ＣＳＳスタイルルール５０２を生成する（ステップＳ１０３）。
【００６７】
次に、対応関係特定部１１２におけるレンダーツリー生成部１１２１は、ステップＳ１０２により生成されたＤＯＭツリー５０１と、ステップＳ１０３により生成されたＣＳＳスタイルルール５０２とを利用して、図５にて説明したように、Ｗｅｂページごとにレンダーツリー６００を生成する（ステップＳ１０４）。即ち、対応関係特定部１１２は、ステップＳ１０４により、Ｗｅｂページ単位でタグとプロパティとの関連付けを行う。
また、対応関係特定部１１２における対応関係リスト作成部１１２２は、ステップＳ１０４により生成されたレンダーツリー６００に基づいて、図５にて説明したように、Ｗｅｂページごとに対応関係リスト７００を作成する（ステップＳ１０５）。
【００６８】
次に、未使用プロパティ検出部１１３におけるリスト作成部１１３１は、ステップＳ１０３にて生成されたＣＳＳスタイルルール５０２を利用して、原文対応プロパティリストを作成する（ステップＳ１０６）。つまり、リスト作成部１１３１は、ＣＳＳスタイルルール５０２のツリー構造において記述されたプロパティと、プロパティの値と、プロパティに対応するタグとを抽出し、抽出したプロパティと、プロパティの値と、プロパティに対応するタグとをリスト化して原文対応プロパティリストを作成する。
【００６９】
次に、未使用プロパティ検出部１１３における比較処理部１１３２は、ステップＳ１０５により作成された対応関係リスト７００から抽出した全てのＷｅｂページにおけるタグと、プロパティと、プロパティの値との組み合わせによる使用プロパティリスト７５０を作成する。そのうえで、比較処理部１１３２は、使用プロパティリスト７５０と、ステップＳ１０６により作成された原文対応プロパティリスト８００とを利用して、図７にて説明したように未使用プロパティと未使用プロパティに対応するタグとを検出する（ステップＳ１０７）。
未使用プロパティ検出部１１３は、ステップＳ１０７により検出された未使用プロパティをリスト化することで未使用プロパティリスト９００を作成する（ステップＳ１０８）。
【００７０】
次に、プロパティ削除部１１４における編集画面表示制御部１１４１は、ステップＳ１０８により作成された未使用プロパティリスト９００を利用してプロパティ編集画面を表示部１０２に表示させる制御を行う（ステップＳ１０９）。ステップＳ１０９によりプロパティ編集画面の初期表示が行われる。
【００７１】
プロパティ編集画面が表示されている状態において、プロパティ削除部１１４における削除処理部１１４２は、削除対象として選択されたプロパティの削除を指示する操作（プロパティ削除指示操作）が行われたか否かについて判定する（ステップＳ１１０）。
削除対象のプロパティを選択する操作は、図９にて説明したように削除対象とする未使用プロパティに対応するリスト項目領域ＬＮのチェックボックスＣＨＢにチェックマークを付す操作である。
また、削除対象として選択されたプロパティの削除を指示する操作は、削除ボタンＢＴ１に対する操作である。
【００７２】
プロパティ削除指示操作が行われたことを判定した場合（ステップＳ１１０−ＹＥＳ）、削除処理部１１４２は、プロパティ編集画面上で削除対象として選択されていたプロパティを、Ｗｅｂコンテンツ４００に含まれるＣＳＳファイル４０２から削除する（ステップＳ１１１）。
また、編集画面表示制御部１１４１は、ステップＳ１１１による削除結果が反映されるようにプロパティ編集画面を変更する（ステップＳ１１２）。つまり、編集画面表示制御部１１４１は、ステップＳ１１１により削除されたプロパティに対応するリスト項目領域ＬＮが表示されないようにプロパティ編集画面を変更する。
【００７３】
ステップＳ１１０にてプロパティ削除指示操作が行われていないと判定された場合（ステップＳ１１０−ＮＯ）、あるいはステップＳ１１２の処理を実行した後、編集画面表示制御部１１４１は、プロパティ編集の終了が指示されたか否かについて判定する（ステップＳ１１３）。
プロパティ編集の終了の指示は、図９にて説明したようにプロパティ編集画面における終了ボタンＢＴ２に対する操作によって行われる。
【００７４】
プロパティ編集終了の指示が行われていないことが判定された場合（ステップＳ１１３−ＮＯ）、編集画面表示制御部１１４１は、ステップＳ１１０に処理を戻す。これにより、以降においても、ユーザによるプロパティ削除のための操作に応じて、ＣＳＳファイル４０２におけるプロパティの削除の処理が行われる。
【００７５】
一方、プロパティ削除の編集終了の指示が行われたことが判定された場合（ステップＳ１１３−ＹＥＳ）、削除処理部１１４２は、編集後のＷｅｂコンテンツ４００をＷｅｂサーバ２００に送信することで、Ｗｅｂサーバ２００において記憶されるＷｅｂコンテンツ４００について編集後の内容に更新させる（ステップＳ１１４）。
【００７６】
このような処理によって、本実施形態においては、Ｗｅｂコンテンツ４００を構成する静的Ｗｅｂページ及び動的Ｗｅｂページのいずれにおいても使用されていない未使用プロパティを示すプロパティ編集画面が表示される。そしてプロパティ編集画面に対する操作によって、未使用プロパティのうちから選択されたプロパティをＣＳＳファイル４０２から削除することができる。
【００７７】
＜第２実施形態＞
［概要］
続いて、第２実施形態について説明する。先の第１実施形態においては、ＣＳＳファイル４０２の構造から未使用プロパティを削除するようにされていた。従って、第１実施形態においては、削除された未使用プロパティはＣＳＳファイル４０２において存在しない。
これに対して第２実施形態では、削除すべきことが指定された未使用プロパティについて、ＣＳＳファイル４０２において無効であることを示す削除指定情報をＣＳＳファイル４０２の構造に含めることにより未使用プロパティの無効化を行う。即ち、本実施形態においては、ＣＳＳファイル４０２において未使用プロパティを無効化することにより、未使用プロパティの削除が行われるものである。
削除指定情報は、例えばＣＳＳファイル４０２内の指定されたプロパティについての記述をコメントアウトする記述であってもよい。
【００７８】
例えばＷｅｂブラウザは、Ｗｅｂコンテンツ４００を解釈してＷｅｂページを生成するにあたり、削除指定情報によりＣＳＳファイル４０２において無効であることが示されているプロパティについては、ＣＳＳファイル４０２において記述されていないものとして処理を行う。従って、この場合のＷｅｂコンテンツ４００は、ＣＳＳファイル４０２において削除指定情報により指定された未使用プロパティが実質的に削除されている場合と同等の処理効率によってＷｅｂページの生成を行うことが可能である。
【００７９】
ここで、本実施形態のように削除指定情報をＣＳＳファイル４０２の構造に含めて未使用プロパティを削除する処理について「間接削除」と呼ぶ。一方、第１実施形態のようにＣＳＳファイル４０２の構造から未使用プロパティを削除する処理については、「直接削除」と呼ぶ。
【００８０】
また、本実施形態のように間接削除が行われる場合、ＣＳＳファイル４０２においては、削除すべきことが指定された未使用プロパティは無効化された状態で残存している。このために、一旦削除してしまった未使用プロパティであっても、対応の削除指定情報を削除することで、ＣＳＳファイル４０２において記述されているものとして復元（有効化）させることが容易に行える。つまり、本実施形態においては、一旦削除した未使用プロパティについての削除の取り消しを容易に行うことができる。
【００８１】
本実施形態において、上記のような未使用プロパティの削除の取り消しは、プロパティ編集画面に対するユーザの操作に応じて行われる。
図１１は、本実施形態におけるプロパティ編集画面の一例を示している。なお、同図において図９と同一部分には同一符号を付して説明を省略する。
同図のプロパティ編集画面において、１つのリスト項目領域ＬＮは、左から右にかけて、チェックボックスＣＨＢ、プロパティ領域ＰＡＲ、削除日時領域ＴＡＲが配置される。
【００８２】
チェックボックスＣＨＢは、対応のプロパティ領域ＰＡＲにて示される未使用プロパティが、無効化の対象として選択されているか否かを示す。チェックボックスＣＨＢにおいては、操作に応じてチェックマークの表示、非表示が切り替わる。チェックボックスＣＨＢにチェックマークが付されて（表示されて）いれば、対応の未使用プロパティが無効化の対象として選択されていることを示す。チェックボックスＣＨＢにチェックマークが付されていなければ、対応の未使用プロパティが無効化の対象として選択されていないことを示す。
また、リスト項目領域ＬＮのうちで、グレーアウトしていない状態のリスト項目領域ＬＮは、対応の未使用プロパティが有効であることを示し、グレーアウトの状態のリスト項目領域ＬＮは、対応の未使用プロパティが無効化されている状態にあることを示す。
削除日時領域ＴＡＲは、対応のプロパティ領域ＰＡＲにて示される未使用プロパティが無効化された日時を示す。
【００８３】
まず、同図に示すプロパティ編集画面上で未使用プロパティを無効化する操作の一例について説明する。
プロパティ編集画面において、無効化されていない未使用プロパティに対応するリスト項目領域ＬＮにおけるチェックボックスＣＨＢにはチェックマークが付されていない。
ユーザは、チェックボックスＣＨＢにはチェックマークが付されていないリスト項目領域ＬＮのうちから、新たに無効化させたい未使用プロパティに対応するリスト項目領域ＬＮを選ぶ。ユーザは、選んだリスト項目領域ＬＮにおけるチェックボックスＣＨＢにチェックマークを付す操作を行う。この際、ユーザは、リスト項目領域ＬＮにおけるチェックボックスＣＨＢにチェックマークを付すことができる。つまり、ユーザは、新たに無効化させたい未使用プロパティとして複数を指定できる。そして、ユーザは、上記のようにチェックボックスＣＨＢにチェックマークを付す操作を行うと、次に削除ボタンＢＴ１に対する操作を行う。
なお、チェックボックスＣＨＢにチェックマークを付す操作や削除ボタンＢＴ１に対する操作などは、表示部１０２がタッチパネルとして構成されている場合には、チェックボックスＣＨＢ、削除ボタンＢＴ１の領域に対するタップ操作などであればよい。
【００８４】
削除ボタンＢＴ１に対する操作に応じて、チェックボックスＣＨＢにチェックマークが付されたリスト項目領域ＬＮに対応する未使用プロパティがＣＳＳファイル４０２において無効化される。つまり、ＣＳＳファイル４０２において、選択されていたリスト項目領域ＬＮに対応する未使用プロパティについての削除指定情報が付加される。
【００８５】
また、上記のように削除ボタンＢＴ１が操作されると、チェックボックスＣＨＢにチェックマークが付されたリスト項目領域ＬＮはグレーアウトした状態に変化し、無効化されたことを示す。
【００８６】
未使用プロパティ無効化の操作の一具体例として、図１１の場合であれば、ユーザは、リスト項目領域ＬＮ１、ＬＮ２、ＬＮ３のうちからチェックボックスＣＨＢにチェックマークが付されていないリスト項目領域ＬＮ２を選択することができる。
ユーザは、リスト項目領域ＬＮ２のチェックボックスＣＨＢに対してチェックマークを付す操作を行ったうえで、削除ボタンＢＴ１に対する操作を行う。
上記の操作に応じて、リスト項目領域ＬＮ２に対応する未使用プロパティはＣＳＳファイル４０２において無効化される。また、リスト項目領域ＬＮ２は、図１１におけるリスト項目領域ＬＮ１、ＬＮ３と同様にグレーアウトの状態に変化する。
【００８７】
次に、同図に示すプロパティ編集画面において、削除された状態にあった未使用プロパティをＣＳＳファイル４０２に復元（有効化）させるための操作（削除取消操作）の一例について説明する。
この場合、ユーザは、プロパティ編集画面において、グレーアウトによって無効化された状態であることが示されているリスト項目領域ＬＮのうちから、無効化を取り消したい未使用プロパティに対応するリスト項目領域ＬＮを選ぶ。具体例として、ここではユーザが、図１１のプロパティ編集画面においてグレーアウトの状態となっているリスト項目領域ＬＮ１、ＬＮ３のうち、リスト項目領域ＬＮ１を選んだ場合を例に挙げる。
ユーザは、選んだリスト項目領域ＬＮ１におけるチェックボックスＣＨＢに付されているチェックマークを外す操作を行う。そのうえで、ユーザは、削除取消ボタンＢＴ３に対する操作を行う。
なお、上記の例では１つのリスト項目領域ＬＮにおけるチェックマークを外す操作を行っているが、ユーザは、複数のリスト項目領域ＬＮのそれぞれにおけるチェックボックスＣＨＢに対してチェックマークを外す操作を行うことができる。
【００８８】
削除取消ボタンＢＴ３に対する操作に応じて、チェックマークが外されたリスト項目領域ＬＮ１に対応する未使用プロパティは、ＣＳＳファイル４０２に存在するものとして復元（有効化）される。このとき、ＣＳＳファイル４０２においては、選択されていたリスト項目領域ＬＮに対応するプロパティについて付加されていた削除指定情報が削除される。
【００８９】
また、上記のように未使用プロパティの有効化が行われると、リスト項目領域ＬＮ１は、これまでのグレーアウトの状態からグレーアウトしていない状態に変化し、ＣＳＳファイル４０２において有効な状態であることを示す。
【００９０】
また、本実施形態におけるプロパティ編集画面に対しては、削除ボタンＢＴ１または削除取消ボタンＢＴ３の操作を行う前の段階において、以下のような操作も可能である。
つまり、ユーザは、或るリスト項目領域ＬＮについてはチェックマークを付して無効化対象として指定する操作を行う。その一方で、他の或るリスト項目領域ＬＮについてはチェックマークを外して復元対象として指定する操作を行うことができる。
上記のような操作の具体例として、図１１のプロパティ編集画面に対して、リスト項目領域ＬＮ１におけるチェックボックスＣＨＢのチェックマークを外し、一方でリスト項目領域ＬＮ２におけるチェックボックスＣＨＢにチェックマークを新たに付す操作を行った場合について説明する。
【００９１】
図１２は、上記のように図１１のプロパティ編集画面に対してリスト項目領域ＬＮ１におけるチェックマークを外し、リスト項目領域ＬＮ２にチェックマークを新たに付す操作を行った場合のプロパティ編集画面を示している。
同図に示されるプロパティ編集画面の状態のもとで、削除ボタンＢＴ１がユーザによって操作された場合には、新たにチェックマークが付されたリスト項目領域ＬＮ２に対応する未使用プロパティがＣＳＳファイル４０２において無効化される。
また、プロパティ編集画面は、同図の状態から、リスト項目領域ＬＮ２が新たにグレーアウトした状態に変化し、対応の未使用プロパティが無効化されていることを示す。
【００９２】
また、同図に示されるプロパティ編集画面の状態のもとで、削除取消ボタンＢＴ３がユーザによって操作された場合には、チェックマークが外されたリスト項目領域ＬＮ１に対応する未使用プロパティがＣＳＳファイル４０２において復元される。
また、プロパティ編集画面は、同図の状態から、リスト項目領域Ｌ１がグレーアウトの状態からグレーアウトしていない状態に変化し、対応の未使用プロパティがＣＳＳファイル４０２において有効であることが示される。
【００９３】
このように、本実施形態においては、ＣＳＳファイル４０２における未使用プロパティの削除について間接削除とすることにより、未使用プロパティの削除の取り消し（有効化）を簡単な操作で行うことが可能になる。また、削除を取り消す処理についても、ＣＳＳファイル４０２における削除取消対象のプロパティに付加された削除指定情報を削除するという簡易なものでよい。
【００９４】
［処理手順例］
図１３のフローチャートを参照して、本実施形態におけるコンテンツ分析装置１００が実行する処理手順例について説明する。なお、同図において図１０と同様の処理となるステップについては同一符号を付して説明を省略し、主に図１０との相違点について説明する。
同図においては、図１０のステップＳ１０９、Ｓ１１１、Ｓ１１２に代えて、ステップＳ１０９Ａ、Ｓ１１１Ａ、Ｓ１１２Ａが実行される。また、同図の処理は、ステップＳ１２１〜Ｓ１２３の各処理を含む。
【００９５】
同図において、ステップＳ１０１〜Ｓ１０８は図１０と同様の処理となる。
そして、ステップＳ１０９Ａにおいて、編集画面表示制御部１１４１は、図１１にて説明したように、リスト項目領域ＬＮにおけるチェックボックスＣＨＢへのチェックマークの表示及びグレーアウト表示の有無によりプロパティごとに無効化された状態にあるか否かが反映されたプロパティ編集画面を表示部１０２に表示させる。
このために、編集画面表示制御部１１４１は、例えば以下の処理を実行する。つまり、編集画面表示制御部１１４１は、ステップＳ１０８にて作成された未使用プロパティリストごとに対応するリスト項目領域ＬＮを表示する。
本実施形態の場合、未使用プロパティリストに含まれる未使用プロパティは、ＣＳＳファイル４０２において削除指定情報が付加されていたか否かを示す削除指定情報フラグが付与されている。
そこで、編集画面表示制御部１１４１は、削除指定情報が付加されていたことを示す削除指定情報フラグが付与されている未使用プロパティに対応するリスト項目領域ＬＮについては、チェックボックスＣＨＢにチェックマークを表示させる。また、編集画面表示制御部１１４１は、削除指定情報フラグが付与されている未使用プロパティに対応するリスト項目領域ＬＮについて、上記のチェックボックスＣＨＢへのチェックマークの表示とともに、グレーアウトの状態で表示させる。
また、プロパティ編集画面における削除日時領域ＴＡＲについては、削除指定情報に削除日時が含められるようにしたうえで、編集画面表示制御部１１４１が、削除指定情報から取得した削除日時を利用して表示を行えばよい。
【００９６】
また、ステップＳ１１０においてプロパティ削除指示操作の行われたことが判定された場合（ステップＳ１１０−ＹＥＳ）、プロパティ削除部１１４における削除処理部１１４２は、以下の処理を実行する。つまり、削除処理部１１４２は、プロパティ編集画面上で削除対象として選択されていたプロパティがＣＳＳファイル４０２において無効であることを示す削除指定情報をＣＳＳファイル４０２に付加する（ステップＳ１１１Ａ）。
【００９７】
次に、編集画面表示制御部１１４１は、ステップＳ１１１Ａにより削除指定情報が付加されたプロパティについて、無効化された状態であることが示されるようにプロパティ編集画面を変更する（ステップＳ１１２Ａ）。
具体的に、編集画面表示制御部１１４１は、削除指定情報が付加されたプロパティに対応するリスト項目領域ＬＮについて、チェックボックスＣＨＢにチェックマークが表示される状態に変更するとともに、グレーアウトの状態に変更する。
【００９８】
ステップＳ１１２Ａの処理を終了した場合、あるいはステップＳ１１０においてプロパティ削除指示操作が行われなかったことが判定された場合（ステップＳ１１０−ＮＯ）、削除処理部１１４２は、削除取消指示操作が行われたか否かについて判定する（ステップＳ１２１）。
ステップＳ１２１において判定対象とされる削除取消指示操作は、プロパティ編集画面上で削除取消対象のプロパティを選択し、選択されたプロパティの削除取消を指示する操作である。
削除取消対象のプロパティを選択する操作は、前述のように、プロパティ編集画面上で、無効化された状態にある未使用プロパティのうちから削除取消対象の未使用プロパティに対応するリスト項目領域ＬＮのチェックボックスＣＨＢに対してチェックマークを外す操作である。
また、削除取消対象として選択されたプロパティの削除取消を指示する操作は、削除取消ボタンＢＴ３をタッチする操作である。
【００９９】
削除取消指示操作が行われたことが判定された場合（ステップＳ１２１−ＹＥＳ）、削除処理部１１４２は、削除取消対象として選択されたプロパティに対応する削除指定情報をＣＳＳファイル４０２から削除する（ステップＳ１２２）。
【０１００】
次に、編集画面表示制御部１１４１は、ステップＳ１２２により削除指定情報が削除されたプロパティについて、無効化されていない状態であることが示されるようにプロパティ編集画面を変更する（ステップＳ１２３）。
具体的に、編集画面表示制御部１１４１は、削除指定情報が削除されたプロパティに対応するリスト項目領域ＬＮについて、チェックボックスＣＨＢに表示されていたチェックマークを非表示とするとともに、グレーアウトしていない状態に変更する。
この場合の編集画面表示制御部１１４１は、ステップＳ１２３の処理を終了した後、あるいは削除取消指示操作が行われなかったことが判定された場合（ステップＳ１２１−ＮＯ）、ステップＳ１１３によりプロパティ削除の編集終了が指示されたか否かについて判定する。
【０１０１】
上記のような処理によって、未使用プロパティの削除としてＣＳＳファイル４０２に削除指定情報を付加する間接削除が実現されるとともに、削除取消指示操作に応じて、一旦無効化された未使用プロパティをＣＳＳファイル４０２に戻すことができる。
【０１０２】
なお、プロパティ削除部１１４について、第１実施形態に対応する直接削除によるプロパティの削除を行う直接削除モードと、本実施形態に対応する間接削除によるプロパティの削除を行う間接削除モードとで切り替えが行われるように構成してもよい。切り替えは、ユーザの操作によって行えるようにすればよい。
【０１０３】
＜第３実施形態＞
先の第１実施形態及び第２実施形態においては、プロパティ編集画面に対する操作によりユーザによって選択された未使用プロパティをＣＳＳファイル４０２から削除するように構成されている。
これに対して、本実施形態においては、プロパティ削除部１１４が、未使用プロパティ検出部１１３による未使用プロパティの検出に応じて、検出された未使用プロパティをＣＳＳファイル４０２から削除するように構成される。
このような構成であれば、ユーザが特に操作を行わなくとも、静的Ｗｅｂページと動的Ｗｅｂページとのいずれにも使用されない未使用プロパティを自動で削除することができる。
なお、上記の構成の場合には、未使用プロパティ検出部１１３により検出された未使用プロパティの全てがＣＳＳファイル４０２から削除される。しかし、未使用プロパティは、静的Ｗｅｂページと動的Ｗｅｂページとのいずれにも使用されておらず、現状では不要なプロパティである。従って、全ての未使用プロパティがＣＳＳファイル４０２から削除されても、生成に支障が生じるＷｅｂページは無く、特に問題にはならない。
【０１０４】
本実施形態におけるコンテンツ分析装置１００の場合、図８に示したプロパティ削除部１１４における編集画面表示制御部１１４１については省略されてよい。
【０１０５】
図１４のフローチャートを参照して、本実施形態におけるコンテンツ分析装置１００が実行する処理手順例について説明する。なお、図１０と同様の処理となるステップについては同一符号を付して説明を省略する。
同図において、ステップＳ１０１〜Ｓ１０７は、図１０と同様の処理となる。
そして、プロパティ削除部１１４における削除処理部１１４２は、ステップＳ１０７による未使用プロパティの検出に応じて、検出された未使用プロパティをＷｅｂコンテンツ４００のＣＳＳファイル４０２から削除する（ステップＳ１１１Ｂ）。
【０１０６】
そして、この場合の削除処理部１１４２は、ステップＳ１１１Ｂにより未使用プロパティの削除が行われると、以下のようにステップＳ１１４の処理を実行する。
つまり、削除処理部１１４２は、ステップＳ１１４による編集後のＷｅｂコンテンツ４００をＷｅｂサーバ２００に送信することで、Ｗｅｂサーバ２００において記憶されるＷｅｂコンテンツ４００を編集後の内容に更新させる。
【０１０７】
このような処理によって、ユーザがプロパティを削除する操作を行うことなく、未使用プロパティが削除されたＣＳＳファイル４０２を有するＷｅｂコンテンツ４００を得ることができる。
【０１０８】
なお、上記の構成では、削除処理部１１４２は、ステップＳ１０７により検出された全ての未使用プロパティをＣＳＳファイル４０２から削除している。しかし、例えば削除処理部１１４２は、ステップＳ１０７により検出された未使用プロパティのうちから所定の条件を満たす未使用プロパティを削除対象として選択したうえで、選択した削除対象の未使用プロパティをＣＳＳファイル４０２から削除してもよい。つまり、未使用プロパティのうちの一部がＣＳＳファイル４０２から削除されるようにしてもよい。
【０１０９】
また、図１４の処理は、第１実施形態と同様に直接削除により削除対象のプロパティをＣＳＳファイル４０２から削除する場合に対応する。しかし、本実施形態においても間接削除によるプロパティの無効化が行われてもよい。この場合、図１４におけるステップＳ１１１Ｂの処理に代えて、削除処理部１１４２が、未使用プロパティに対応する削除指定情報をＣＳＳファイル４０２に付加する処理を行うように構成すればよい。
【０１１０】
＜第４実施形態＞
続いて、第４実施形態について説明する。第１実施形態のように直接削除によりＣＳＳファイル４０２から未使用プロパティを削除した場合、例えばＷｅｂコンテンツ４００において削除済みのプロパティに関する情報は存在していない。この場合、どのプロパティが削除されたのかを特定することが困難であることから、削除済みのプロパティを復元することは容易ではない。
しかし、コンテンツ分析装置１００がプロパティの削除に関する履歴を示す削除履歴情報を管理するようにすれば、直接削除により未使用プロパティが削除されたＣＳＳファイル４０２であっても、削除履歴情報を利用して一旦削除されたプロパティを復元することが容易に可能となる。
【０１１１】
図１５は、本実施形態におけるコンテンツ分析装置１００の構成例を示している。なお、図３と同一部分については同一符号を付して説明を省略する。
同図に示すように、本実施形態におけるコンテンツ分析装置１００は、削除履歴情報記憶部１０４をさらに備える。削除履歴情報記憶部１０４は、削除履歴情報を記憶する。
削除履歴情報は、例えば、これまでに削除されたプロパティの記述ごとに、ＣＳＳファイル４０２における記述位置、削除日時などを対応付けた構造を有する。
【０１１２】
本実施形態におけるプロパティの削除の取り消しは、第２実施形態と同様にプロパティ編集画面に対する操作によって行われればよい。また、プロパティ編集画面の態様及びプロパティ編集画面に対するプロパティの削除及び削除取消指示操作も、図１１及び図１２による説明と同様でよい。
【０１１３】
図１６のフローチャートを参照して、本実施形態におけるコンテンツ分析装置１００が実行する処理手順例について説明する。なお、同図において図１０と同様の処理となるステップについては同一符号を付して説明を省略する。同図においては、ステップＳ１３１〜Ｓ１３５の各処理を含む。
【０１１４】
同図において、ステップＳ１０１〜Ｓ１１１の処理は、図１０と同様となる。
ステップＳ１１１により削除対象として選択されたプロパティがＣＳＳファイル４０２から削除される。
次に、編集画面表示制御部１１４１は、ステップＳ１１１により削除されたプロパティについて、削除された状態であることが示されるようにプロパティ編集画面を変更する（ステップＳ１１２Ｃ）。
具体的に、編集画面表示制御部１１４１は、削除されたプロパティに対応するリスト項目領域ＬＮについて、グレーアウトの状態に変更する。
ステップＳ１１２Ｃによる削除結果に応じたプロパティ編集画面の変更とともに以下の処理が実行される。
つまり、削除処理部１１４２は、ステップＳ１１１による未使用プロパティの削除結果が反映されるように、プロパティ削除履歴情報を更新する（ステップＳ１３１）。つまり、削除処理部１１４２は、今回削除された未使用プロパティに関する情報をプロパティ削除履歴情報に登録する。
【０１１５】
ステップＳ１３１の処理を終了した場合、あるいはステップＳ１１０においてプロパティ削除指示操作が行われなかったことが判定された場合（ステップＳ１１０−ＮＯ）、削除処理部１１４２は、削除取消指示操作が行われたか否かについて判定する（ステップＳ１３２）。
【０１１６】
削除取消指示操作が行われたことが判定された場合（ステップＳ１３２−ＹＥＳ）、削除処理部１１４２は、削除取消対象として選択された未使用プロパティの情報（プロパティの記述、記述位置）を削除履歴情報から取得する。そして、取得した未使用プロパティの情報を利用して、未使用プロパティをＣＳＳファイル４０２に復元する（ステップＳ１３３）。
【０１１７】
次に、削除処理部１１４２は、ステップＳ１３３による未使用プロパティの復元結果が反映されるように、プロパティ削除履歴情報を更新する（ステップＳ１３４）。このために、削除処理部１１４２は、例えば復元された未使用プロパティに関する情報を削除履歴情報から削除する。あるいは、削除処理部１１４２は、削除履歴情報における復元された未使用プロパティに関する情報に、復元された状態にあることを示す状態フラグを格納してもよい。このように状態フラグを用いる場合、例えば一旦復元された未使用プロパティを再度削除する場合には、削除処理部１１４２は、削除された状態にあることを示す状態フラグを格納すればよい。
【０１１８】
また、編集画面表示制御部１１４１は、ステップＳ１３３による復元結果が反映されるようにプロパティ編集画面を変更する（ステップＳ１３５）。つまり、編集画面表示制御部１１４１は、ステップＳ１３３により復元されたプロパティに対応するリスト項目領域ＬＮがグレーアウトしていない状態に変化するようにプロパティ編集画面を変更する。
【０１１９】
ステップＳ１３５の処理を終了した後、あるいは削除取消指示操作が行われなかったことが判定された場合（ステップＳ１３２−ＮＯ）、編集画面表示制御部１１４１は、ステップＳ１１３によりプロパティ削除の編集終了が指示されたか否かについて判定する。
【０１２０】
このような処理によって、直接削除により未使用プロパティをＣＳＳファイル４０２から削除する場合においても、未使用プロパティの削除の取り消しを容易に実現することが可能になる。
なお、本実施形態のように削除履歴情報を利用する構成は、第３実施形態のようにユーザが未使用プロパティを削除するための操作を行うことなくＣＳＳファイル４０２から未使用プロパティが削除される場合にも適用できる。
【０１２１】
また、本実施形態のように削除履歴情報を利用する構成は、第２実施形態のように間接削除によって未使用プロパティを無効化する構成のもとでも適用できる。
この場合、例えば未使用プロパティの無効化の状態が反映されたプロパティ編集画面の表示にあたっては削除履歴情報を利用することができる。そのうえで、ＣＳＳファイル４０２において削除指定情報を付加あるいは削除することで未使用プロパティを削除、復元を行うように構成することができる。また、ＣＳＳファイル４０２における未使用プロパティの復元については、削除指定情報の削除によって簡単な処理で行うことができる。
【０１２２】
なお、上述のコンテンツ分析装置１００としての機能を実現するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することにより上述のコンテンツ分析装置１００としての処理を行ってもよい。ここで、「記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行する」とは、コンピュータシステムにプログラムをインストールすることを含む。ここでいう「コンピュータシステム」とは、ＯＳや周辺機器等のハードウェアを含むものとする。また、「コンピュータシステム」は、インターネットやＷＡＮ、ＬＡＮ、専用回線等の通信回線を含むネットワークを介して接続された複数のコンピュータ装置を含んでもよい。また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ＲＯＭ、ＣＤ−ＲＯＭ等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。このように、プログラムを記憶した記録媒体は、ＣＤ−ＲＯＭ等の非一過性の記録媒体であってもよい。また、記録媒体には、当該プログラムを配信するために配信サーバからアクセス可能な内部または外部に設けられた記録媒体も含まれる。配信サーバの記録媒体に記憶されるプログラムのコードは、端末装置で実行可能な形式のプログラムのコードと異なるものでもよい。すなわち、配信サーバからダウンロードされて端末装置で実行可能な形でインストールができるものであれば、配信サーバで記憶される形式は問わない。なお、プログラムを複数に分割し、それぞれ異なるタイミングでダウンロードした後に端末装置で合体される構成や、分割されたプログラムのそれぞれを配信する配信サーバが異なっていてもよい。さらに「コンピュータ読み取り可能な記録媒体」とは、ネットワークを介してプログラムが送信された場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリ（ＲＡＭ）のように、一定時間プログラムを保持しているものも含むものとする。また、上記プログラムは、上述した機能の一部を実現するためのものであってもよい。さらに、上述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるもの、いわゆる差分ファイル（差分プログラム）であってもよい。
【符号の説明】
【０１２３】
１００  コンテンツ分析装置、１０１  制御部、１０２  表示部、１０３  操作部、１０４  削除履歴情報記憶部、１１１  文書解析部、１１２  対応関係特定部、１１３  未使用プロパティ検出部、１１４  プロパティ削除部、２００  Ｗｅｂサーバ、３００  ネットワーク、４００  Ｗｅｂコンテンツ、４０１  ＨＴＭＬファイル、４０２  ＣＳＳファイル、４０３  ＪａｖａＳｃｒｉｐｔファイル、５０１  ＤＯＭツリー、５０２  ＣＳＳスタイルルール、６００  レンダーツリー、６０１  タグ群、６０２  プロパティ群、７００  対応関係リスト、８００  原文対応プロパティリスト、９００  未使用プロパティリスト、１１１１  ＨＴＭＬファイル解析部、１１１２  ＣＳＳファイル解析部、１１２１  レンダーツリー生成部、１１２２  対応関係リスト作成部、１１３１  リスト作成部、１１３２  比較処理部、１１４１  編集画面表示制御部、１１４２  削除処理部、ＬＮ  リスト項目領域、ＰＡＲ  プロパティ領域、ＣＨＢ  チェックボックス、ＢＴ  ボタン、ＴＡＲ  削除日時領域
【図１】
2016170592.tif 000003
【図２】
2016170592.tif 000004
【図３】
2016170592.tif 000005
【図４】
2016170592.tif 000006
【図５】
2016170592.tif 000007
【図６】
2016170592.tif 000008
【図７】
2016170592.tif 000009
【図８】
2016170592.tif 000010
【図９】
2016170592.tif 000011
【図１０】
2016170592.tif 000012
【図１１】
2016170592.tif 000013
【図１２】
2016170592.tif 000014
【図１３】
2016170592.tif 000015
【図１４】
2016170592.tif 000016
【図１５】
2016170592.tif 000017
【図１６】
2016170592.tif 000018