(57)【要約】  【課題】  複数の既存のウェブサイトに対する変更を最小限に留めた状態にて、アクセシビリティを高めるなどの新たな価値を追加する。  【解決手段】  第１のウェブサーバ２０と、単一または複数からなる第２のウェブサーバ３０とを備え、この第１のウェブサーバ２０および第２のウェブサーバ３０にネットワーク４０を介して接続されるクライアント装置１０のウェブブラウザにウェブページを表示可能なシステムであって、第１のウェブサーバ２０は、同じ付加価値を持たせるウェブサーバの集合として定義された第１のウェブサーバ２０および第２のウェブサーバ３０のそれぞれに付加価値を提供するファイルのＵＲＬを登録し、第１のウェブサーバ２０および第２のウェブサーバ３０は、ウェブブラウザ内に既存のウェブページを表示し、他のフレームや他のウィンドウからＤＯＭを操作することによってウェブページに付加価値を提供する。  【選択図】  図１
2006185160.tif 000002
【特許請求の範囲】
【請求項１】
第１のウェブサーバと、単一または複数からなる第２のウェブサーバとを備え、当該第１のウェブサーバおよび当該第２のウェブサーバにネットワークを介して接続されるクライアント装置のウェブブラウザにウェブページを表示可能なシステムであって、
前記第１のウェブサーバは、同じ付加価値を持たせるウェブサーバの集合として定義された当該第１のウェブサーバおよび当該第２のウェブサーバのそれぞれに当該付加価値を提供するファイルのＵＲＬ(Uniform Resource Locators)を登録し、
前記第１のウェブサーバおよび前記第２のウェブサーバは、前記ウェブブラウザ内に既存のウェブページを表示し、他のフレームや他のウィンドウからＡＰＩ(Application Program Interface)を操作することによって当該ウェブページに前記付加価値を提供することを特徴とするシステム。
【請求項２】
前記第１のウェブサーバおよび前記第２のウェブサーバは、前記付加価値を持たせる他のウェブサーバのウェブページへのリンクがある場合に、フレーム内にウェブページをロードしたときに、当該他のウェブサーバ上の付加価値を提供するＵＲＬに遷移するようにＤＯＭ(Document Object Model)を操作することによりＡタグの属性を変更することを特徴とする請求項１記載のシステム。
【請求項３】
前記第１のウェブサーバおよび前記第２のウェブサーバの中から特定のウェブサーバが代表してクッキーを管理し、前記付加価値に関するパーソナライズのための情報は、当該特定のウェブサーバを通して当該クッキーにアクセスすることを特徴とする請求項１記載のシステム。
【請求項４】
第１のウェブサーバと、単一または複数からなる第２のウェブサーバとを備え、当該第１のウェブサーバおよび当該第２のウェブサーバにネットワークを介して接続されるクライアント装置のウェブブラウザにウェブページを表示可能なシステムであって、
前記第１のウェブサーバおよび前記第２のウェブサーバは、それぞれ固有のコンテンツが格納されると共に、当該固有のコンテンツに付加価値を持たせるためにフレームを用いた文書ファイルを生成するための生成手段を備え、
前記第１のウェブサーバは、当該第１のウェブサーバおよび前記第２のウェブサーバにて生成された前記文書ファイルから参照され、前記ウェブブラウザで付加価値を実行させるための文書ファイルを備えることを特徴とするシステム。
【請求項５】
前記第１のウェブサーバは、前記ウェブブラウザからパラメータとして渡されたＵＲＬが、同じ付加価値を持たせるウェブサーバの集合として事前に登録されたドメインのものである場合に、クッキーを読むためのスクリプトプログラムを含む文書ファイルを当該ウェブブラウザに送信することを特徴とする請求項４記載のシステム。
【請求項６】
前記第２のウェブサーバは、前記ウェブブラウザからパラメータとして渡された前記クッキーの情報に基づいてスクリプトプログラムを含む文書ファイルを当該ウェブブラウザに送信することを特徴とする請求項５記載のシステム。
【請求項７】
前記付加価値は、アクセシビリティを高めるものであることを特徴とする請求項４記載のシステム。
【請求項８】
ネットワークを介して接続されるウェブブラウザに同じ付加価値を提供する複数のウェブサーバの、主となるウェブサーバであって、
装置固有のオリジナルコンテンツを格納する格納手段と、
前記付加価値の提供のために、フレームを用いた文書ファイルを生成する生成手段と、
前記複数のウェブサーバにて生成された文書ファイルから参照され、前記ウェブブラウザで前記付加価値を実行させるための文書ファイルを送信する送信手段と
を含むウェブサーバ。
【請求項９】
前記付加価値を提供するウェブサーバの集合として定義された前記複数のウェブサーバのドメインと当該付加価値を提供するスクリプトプログラムのＵＲＬを登録する手段を更に備えたことを特徴とする請求項８記載のウェブサーバ。
【請求項１０】
前記ブラウザからパラメータとして渡されたＵＲＬが事前に登録された前記複数のウェブサーバのドメインのものかどうかを判断し、事前に登録されたものである場合に、自らが提供するクッキーを読むためのスクリプトプログラムを含む文書ファイルを当該ブラウザに送信する第２の送信手段を更に備えたことを特徴とする請求項９記載のウェブサーバ。
【請求項１１】
前記複数のウェブサーバを構成する他のウェブサーバのウェブページを表示している前記ウェブブラウザから前記クッキーを書くスクリプトプログラムの要求を受信した場合に、当該クッキーを書くスクリプトプログラムを含む文書ファイルを当該ウェブブラウザに送信する第３の送信手段を更に備えたことを特徴とする請求項１０記載のウェブサーバ。
【請求項１２】
複数のウェブサーバにネットワークを介してウェブブラウザが接続されるシステムにて、既存のコンテンツに修正を加えることなく付加価値を提供するための方法であって、
前記複数のウェブサーバを構成する特定のコンピュータ装置に、同じ付加価値を持たせる集合として定義された当該複数のウェブサーバのドメインと当該付加価値を提供するスクリプトプログラムのＵＲＬを予めメモリに格納し、
前記ウェブブラウザからパラメータとして渡されたＵＲＬが、前記メモリに予め格納されたものであるか否かを確認し、予め当該メモリに格納されたものである場合に、クッキーを読むためのスクリプトプログラムを含む文書ファイルを当該ウェブブラウザに送信することを特徴とする方法。
【請求項１３】
前記複数のウェブサーバの文書ファイルから参照され、アプリケーション固有の付加価値を前記ウェブブラウザにて実行させることを特徴とする請求項１２記載の方法。
【請求項１４】
前記複数のウェブサーバを構成する他のウェブサーバのウェブページを表示している前記ウェブブラウザからクッキーを書くスクリプトプログラムの要求を受信した場合に、当該クッキーを書くスクリプトプログラムを含む文書ファイルを当該ウェブブラウザに送信することを特徴とする請求項１２記載の方法。
【請求項１５】
複数のウェブサーバにネットワークを介してウェブブラウザが接続されるシステムにて、既存のコンテンツに修正を加えることなく付加価値を提供するための当該ウェブサーバとして機能するコンピュータに、
同じ付加価値を持たせる集合として定義された前記複数のウェブサーバのドメインと当該付加価値を提供するスクリプトプログラムのＵＲＬを、前記コンピュータが備えるメモリに予め格納させる機能と、
前記ウェブブラウザからパラメータとして渡されたＵＲＬが、前記メモリに予め格納されたものであるか否かを確認し、予め当該メモリに格納されたものである場合に、クッキーを読むためのスクリプトプログラムを含む文書ファイルを当該ウェブブラウザに送信する機能と
を実現させるプログラム。
【請求項１６】
前記複数のウェブサーバを構成する他のウェブサーバのウェブページを表示している前記ウェブブラウザからクッキーを書くスクリプトプログラムの要求を受信した場合に、当該クッキーを書くスクリプトプログラムを含む文書ファイルを当該ウェブブラウザに送信する機能を更に実現させる請求項１５記載のプログラム。
【請求項１７】
複数のウェブサーバにネットワークを介してウェブブラウザが接続されるシステムにて、既存のコンテンツに修正を加えることなく付加価値を提供するための当該ウェブサーバとして機能するコンピュータに、
前記ウェブブラウザ内に既存のウェブページを表示し、他のフレームや他のウィンドウからＤＯＭを操作することによって当該ウェブページに前記付加価値を提供する機能と、
前記付加価値を持たせる他のウェブサーバのウェブページへのリンクがある場合に、フレーム内にウェブページをロードしたときに、当該他のウェブサーバ上の付加価値を提供するＵＲＬに遷移するようにＤＯＭを操作することによりＡタグの属性を変更する機能と
を実現させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数のウェブ(Web)サイトにネットワークを介して接続されるウェブブラウザにてウェブページを表示可能なネットワークシステムに係り、より詳しくは、複数のウェブサイトにパーソナライズされた価値を追加するためのシステム等に関する。
【背景技術】
【０００２】
近年、ウェブページのアクセシビリティ(Accessibility)が大きく注目されている。これは、ウェブを利用する全ての人が、年齢や身体的制約、利用環境等の影響を受けることなく、ウェブ上で提供されている情報にアクセスでき、また、コンテンツや機能を利用できるようにする技術である。関連する従来技術として、例えば、ウェブサイトの読みたい文章の段落の冒頭にマウスを動かすだけで、自動的に音声で読み上げ、その文字を見易いように拡大表示させるものが存在する(例えば、非特許文献１参照。)。この非特許文献１に記載の技術では、読み上げるときの速度を変えたり、音量を調整することも可能である。色弱や白内障などの病気の方でも読み易いように、文字の色とその背景色を変えることもできる。そして、このソフトでは、ＰＣ(パーソナルコンピュータ)にインストールする手間を省くための数々の工夫がなされている。例えば、ＰＣのユーザによって最初に表示される使用条件に対する承諾がなされると、自動的にActiveX(登録商標)オブジェクトが起動し、前提ソフトウェアの有無をチェックして自動的にダウンロードおよびセットアップが行われる。これによって、ユーザの手間をかけることなく、このソフトを直ぐに使用することができる。そして、このソフトを用いると、既存のウェブサイトを変更することなく、画面の拡大や読み上げを行うことが可能となる。また、JavaScript(登録商標)とActiveXを用いたアクセシビリティへの他の配慮技術として、例えば非特許文献２も存在する。
【０００３】
また、従来、ドメインをJavaScriptで設定することにより、ドメインの範囲を広げる技術が存在する(例えば、非特許文献３参照。)。この技術では、フレームをまたがるセキュリティの実装として、同じドメイン内でホストされているページだけが、特定のページの内容を安全にスクリプトできる。例えば、それぞれのドキュメントにて、
document.domain = “ibm.com”;
を実行すれば、w3.trl.ibm.comとw3.watson.ibm.comとのドキュメント間で、互いに相手を制御することができる。
ここで、非特許文献４によると、document.domainは設定できないことになっているが、Internet Explorer(登録商標)やMozilla(登録商標)などのブラウザでもこの方法により、設定することが可能である。
【０００４】
更に、従来技術として、ファイルの拡張子を.htaとすることにより、セキュリティの制限を回避する技術が存在している(例えば、非特許文献５参照。)。
また、公報記載の従来技術として、パーソナル化サーバというものを設け、利用者は、複数のウェブサイトへアクセスするときに、このパーソナル化サーバを利用することで、共通のパーソナライズを可能とする技術が存在している(例えば、特許文献１参照。)。
更に、他の公報には、クッキー(Cookie)をサーバ側に保管することによって、複数のクライアントで同じクッキーを利用し、ウェブサイトにアクセスすることを可能とする技術が開示されている(例えば、特許文献２参照。)。
【０００５】
【非特許文献１】“インターネット閲覧支援ソフトウェア  「らくらくウェブ散策」”〔online〕、日本ＩＢＭ〔２００４年１２月１４日検索〕、インターネット＜http://www.research.ibm.com/trl/news/ibm_users/trltech_11.htm＞
【非特許文献２】“ソフトウェアＺｏｏｍＳｉｇｈｔ(ズームサイト)”〔online〕、日立公共システムエンジニアリング株式会社〔２００４年１２月１４日検索〕、インターネット＜http://www.gp.hitachi.co.jp/eigyo/product/zoomsight/＞
【非特許文献３】“[InetSDK] フレームをまたがってのスクリプトで "アクセス拒否"”〔online〕、Microsoft.com Japan サイト〔２００４年１２月１４日検索〕、インターネット＜http://support.microsoft.com/default.aspx?scid=kb;JA;167796＞
【非特許文献４】“Document Object Model (DOM) Level 2 ＨＴＭＬ Specification Version 1.0”〔online〕、W3C Recommendation〔２００４年１２月１４日検索〕、インターネット＜http://www.w3.org/TR/2003/REC-DOM-Level-2-ＨＴＭＬ-20030109/＞
【非特許文献５】“[InetSDK] クロスフレームスクリプトが可能なページを ＨＴＭＬ アプリケーションで作成する”〔online〕、Microsoft.com Japan サイト〔２００４年１２月１４日検索〕、インターネット＜http://support.microsoft.com/default.aspx?scid=kb;ja;241754＞
【特許文献１】特表２００３−５２０３６１号公報
【特許文献２】特開２００４−１０３０２２号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
ここで、非特許文献１や非特許文献２に記載された技術では、ActiveXを使うことから、ＯＳ(Operating System)にWindows(登録商標)を使い、ウェブブラウザにInternet Explorerを使う必要がある。そのために、それ以外のＯＳやウェブブラウザを使用できず、汎用性に欠ける問題がある。
また、非特許文献３を用いたドメインの設定方法では、それぞれのウェブページでこのJavaScriptを実行するように変更しなければならない。この変更をウェブサイト上の全てのウェブページに対して行おうとすると、非常に大きな手間がかかってしまう。また、非常に関連性の高いサイトであっても第２レベルのドメインが同じでなければ、この方法を用いることができないという問題も残る。
更に、非特許文献５を用いた方法では、ＯＳにWindowsを使う必要があり、それ以外のＯＳを使うことができない。また、セキュリティの制限を一切回避してしまうので、利用者が本当に信頼しているサイトでしかＨＴＭＬアプリケーションを実行することができないという問題もある。
【０００７】
一方、特許文献１に記載された方法では、サーバに利用者の個人情報を保管することになる。しかしながら、近年、個人情報の流出が大きな社会問題となっており、サーバで個人情報を保管する場合には、情報管理用の系を構築する必要性が生じ、情報の漏洩を防止するために、この管理を慎重に行うことが要求される。ここで注意すべき点は、ただ認証などの技術を用いた情報管理用の系を構築するだけでは不十分だという点である。問題になっている個人情報の流出事故では、個人情報にアクセスできる権限を持っている人が個人情報を不正に流出するということが多い。そのため、サーバに個人情報を保管することは非常に大きなリスクを抱えることになる。また、それぞれの利用者ごとの情報をサーバで保管するため、利用者の数が増えると、保管するデータが膨大になるという問題もある。
更に、特許文献２に記載された方法では、複数のウェブサイト間でパーソナライズのための情報を共有することができないという問題がある。また、サーバで個人情報を保管することから、上述の特許文献１で述べたものと同様な問題も抱えている。
【０００８】
このように、近年、アクセシビリティを高めることなどを目的として、既存ウェブサイトに修正を加えることなく新たな価値を追加するという要求が増えてきたが、このときに、ActiveXのように特定のクライアント環境でしか利用できない技術ではなく、JavaScriptのように多くのクライアント環境で利用できる技術を使うことが望ましい。しかしながら、JavaScriptを用いて別のフレームやウィンドウを制御しようとすると、ウェブブラウザのセキュリティの制限でそのフレームやウィンドウが同じドメインに存在する場合しか制御できない。そのため、複数のウェブサイトに統一的に価値を追加することができなかった。
【０００９】
また、このように付加価値を加えるときに、この付加価値をパーソナライズすることができれば更に価値を高めることができる。パーソナライズのための情報はサーバで保存する方法とクライアントのクッキーに保存する方法があるが、個人情報をサーバで管理するには情報管理用の系を構築する必要があるとともに、情報が漏洩しないようにするために、この管理を慎重に行わなければならない。パーソナライズのための情報をクッキーに保存すればサーバで保存する必要はないが、この方法ではドメイン間でパーソナライズのための情報を共有することができない。
【００１０】
本発明は、以上のような従来技術の問題点に鑑みてなされたものであって、その目的とするところは、複数の既存のウェブサイトに対する変更を最小限に留めた状態にて、アクセシビリティを高めるなどの新たな価値を追加(付加価値を提供)することにある。
また他の目的は、クライアントの環境が特定のＯＳやウェブブラウザに依存しないようにすることにある。
更に他の目的は、関連のある複数のウェブサイト間でページを遷移したときも利用者に負担をかけることなく、新たに追加した価値を利用できるようにすることにある。
また更に他の目的は、関連のある複数のウェブサイト間でパーソナライズのための情報をサーバに保管することなく共有することにある。
【課題を解決するための手段】
【００１１】
かかる目的のもと、本発明では、既存の複数のウェブサイトに少しのコンテンツを追加することで、既存のコンテンツに修正を加えることなく新たな価値を追加する。そのために、まず、同じ付加価値を持たせるウェブサイトの集合を定義しておき、それぞれのウェブサイトごとに、付加価値を提供するＵＲＬを登録しておく。そして、ウェブブラウザ内に既存のウェブページを表示し、そのウェブページについて別のフレームや別のウィンドウからＤＯＭを操作することにより、付加価値を提供する。また、同じ付加価値を持たせるウェブサイトのウェブページへのリンクがある場合には、フレーム内にページをロードしたときに、そのウェブサイト上の付加価値を提供するＵＲＬに遷移するように、ＤＯＭを変更する。そして、パーソナライズのための情報は、同じ付加価値を持たせるウェブサイトの集合の中から代表してクッキーを管理するウェブサイトを１つだけ選んでおき、そのサイトを通してクッキーにアクセスすることを特徴としている。
【００１２】
即ち、本発明は、第１のウェブサーバと、単一または複数からなる第２のウェブサーバとを備え、この第１のウェブサーバおよび第２のウェブサーバにネットワークを介して接続されるクライアント装置のウェブブラウザにウェブページを表示可能なシステムであって、この第１のウェブサーバは、同じ付加価値を持たせるウェブサーバの集合として定義された第１のウェブサーバおよび第２のウェブサーバのそれぞれに付加価値を提供するファイルのＵＲＬを登録し、この第１のウェブサーバおよび第２のウェブサーバは、ウェブブラウザ内に既存のウェブページを表示し、他のフレームや他のウィンドウからＤＯＭなどのＡＰＩ(アプリケーション・プログラム・インタフェース)を操作することによってウェブページに付加価値を提供することを特徴としている。
【００１３】
ここで、この第１のウェブサーバおよび第２のウェブサーバは、付加価値を持たせる他のウェブサーバのウェブページへのリンクがある場合に、フレーム内にウェブページをロードしたときに、この他のウェブサーバ上の付加価値を提供するＵＲＬに遷移するようにＡＰＩを変更することを特徴とすることができる。また、この第１のウェブサーバおよび第２のウェブサーバの中から特定のウェブサーバが代表してクッキーを管理し、付加価値に関するパーソナライズのための情報は、この特定のウェブサーバを通してクッキーにアクセスすることを特徴とすることができる。尚、以下では、第１のウェブサーバを、このクッキーを管理する特定のウェブサーバとして選んだものとして説明している。
【００１４】
他の観点から捉えると、本発明が適用されるシステムにて、第１のウェブサーバおよび第２のウェブサーバは、それぞれ固有のコンテンツが格納されると共に、この固有のコンテンツに付加価値を持たせるためにフレームを用いたＨＴＭＬなどの文書ファイルを生成するための生成手段を備え、この第１のウェブサーバは、第１のウェブサーバおよび第２のウェブサーバにて生成された文書ファイルから参照され、ウェブブラウザで付加価値を実行させるための文書ファイルを備えることを特徴としている。
【００１５】
ここで、この第１のウェブサーバは、ウェブブラウザからパラメータとして渡されたＵＲＬが、同じ付加価値を持たせるウェブサーバの集合として事前に登録されたドメインのものである場合に、クッキーを読むためのJavaScriptなどのスクリプトプログラムを含む文書ファイルをウェブブラウザに送信することを特徴としている。また、この第２のウェブサーバは、ウェブブラウザからパラメータとして渡されたクッキーの情報に基づいてスクリプトプログラムを含む文書ファイルをウェブブラウザに送信することを特徴としている。更に、この付加価値は、アクセシビリティを高めるものであることを特徴とすることができる。また、付加価値としては、翻訳や振り仮名表示、略語の展開なども考えられる。
【００１６】
一方、本発明は、ネットワークを介して接続されるウェブブラウザに同じ付加価値を提供する複数のウェブサーバの、主となるウェブサーバであって、装置固有のオリジナルコンテンツを格納する格納手段と、付加価値の提供のために、フレームを用いた文書ファイルを生成する生成手段と、この複数のウェブサーバにて生成された文書ファイルから参照され、ウェブブラウザで付加価値を実行させるための文書ファイルを送信する送信手段とを含む。
【００１７】
ここで、この付加価値を提供するウェブサーバの集合として定義された複数のウェブサーバのドメインと付加価値を提供するスクリプトプログラムのＵＲＬを登録する手段を更に備えたことを特徴とすることができる。また、ブラウザからパラメータとして渡されたＵＲＬが事前に登録された複数のウェブサーバのドメインのものかどうかを判断し、事前に登録されたものである場合に、自らが提供するクッキーを読むためのスクリプトプログラムを含む文書ファイルをブラウザに送信する第２の送信手段を更に備えたことを特徴とすることができる。それに加えて、この複数のウェブサーバを構成する他のウェブサーバのウェブページを表示しているウェブブラウザからクッキーを書くスクリプトプログラムの要求を受信した場合に、このクッキーを書くスクリプトプログラムを含む文書ファイルをウェブブラウザに送信する第３の送信手段を更に備えたことを特徴とすることができる。
【００１８】
本発明を方法のカテゴリから捉えると、本発明は、複数のウェブサーバにネットワークを介してウェブブラウザが接続されるシステムにて、既存のコンテンツに修正を加えることなく付加価値を提供するための方法であって、この複数のウェブサーバを構成する特定のコンピュータ装置に、同じ付加価値を持たせる集合として定義された複数のウェブサーバのドメインと付加価値を提供するスクリプトプログラムのＵＲＬを予めメモリに格納し、このウェブブラウザからパラメータとして渡されたＵＲＬが、メモリに予め格納されたものであるか否かを確認し、予めメモリに格納されたものである場合に、クッキーを読むためのスクリプトプログラムを含む文書ファイルをウェブブラウザに送信することを特徴としている。
【００１９】
ここで、この複数のウェブサーバの文書ファイルから参照され、アプリケーション固有の付加価値をウェブブラウザにて実行させることを特徴とすることができる。また、複数のウェブサーバを構成する他のウェブサーバのウェブページを表示しているウェブブラウザからクッキーを書くスクリプトプログラムの要求を受信した場合に、このクッキーを書くスクリプトプログラムを含む文書ファイルをウェブブラウザに送信することを特徴とすることができる。
【００２０】
更に本発明が適用されるプログラムは、複数のウェブサーバにネットワークを介してウェブブラウザが接続されるシステムにて、既存のコンテンツに修正を加えることなく付加価値を提供するためのウェブサーバとして機能するコンピュータに、同じ付加価値を持たせる集合として定義された複数のウェブサーバのドメインと付加価値を提供するスクリプトプログラムのＵＲＬをコンピュータが備えるメモリに予め格納させる機能と、このウェブブラウザからパラメータとして渡されたＵＲＬがメモリに予め格納されたものであるか否かを確認し、予めメモリに格納されたものである場合に、クッキーを読むためのスクリプトプログラムを含む文書ファイルをウェブブラウザに送信する機能と、複数のウェブサーバを構成する他のウェブサーバのウェブページを表示しているウェブブラウザからクッキーを書くスクリプトプログラムの要求を受信した場合に、このクッキーを書くスクリプトプログラムを含む文書ファイルをウェブブラウザに送信する機能を実現させる。
【００２１】
また他の観点から捉えると、本発明が適用されるプログラムは、ウェブブラウザ内に既存のウェブページを表示し、他のフレームや他のウィンドウからＤＯＭを操作することによってウェブページに付加価値を提供する機能と、この付加価値を持たせる他のウェブサーバのウェブページへのリンクがある場合に、フレーム内にウェブページをロードしたときに、他のウェブサーバ上の付加価値を提供するＵＲＬに遷移するようにＤＯＭを操作することによりＡタグの属性を変更する機能とを実現させる。
【００２２】
尚、これらのプログラムをウェブサーバとして機能するコンピュータに対して提供する際に、例えばウェブサーバにインストールされた状態にて提供される場合の他、コンピュータに実行させるプログラムをコンピュータが読取可能に記憶した記憶媒体にて提供する形態が考えられる。この記憶媒体としては、例えば各種ＤＶＤやＣＤ−ＲＯＭ媒体等が該当し、各種ＤＶＤやＣＤ−ＲＯＭ読取装置等によってプログラムが読み取られ、フラッシュＲＯＭ等にこのプログラムが格納されてＣＰＵにて実行される。また、これらのプログラムは、例えば、プログラム伝送装置によってネットワークを介して提供される形態がある。
【発明の効果】
【００２３】
本発明によれば、複数の既存のウェブサイトをほとんど変更することなく、アクセシビリティを高めるなどの新たな付加価値を提供することが可能となる。
【発明を実施するための最良の形態】
【００２４】
以下、添付図面を参照して、本発明の実施の形態について詳細に説明する。
図１は、本実施の形態が適用されるネットワークシステムの全体構成を示した図である。図１に示すネットワークシステムは、ウェブ(Web)サーバにアクセスしてアクセシビリティなどの付加価値のあるウェブページの提供を受けるクライアント装置１０と、付加価値のあるウェブページを提供する第１のウェブ(Web)サーバ２０および第２のウェブ(Web)サーバ３０とを備えている。そして、これらの各装置は、インターネットなどのＷＷＷ(World Wide Web)ベースのネットワーク４０に接続されている。クライアント装置１０の利用者は、ウェブブラウザ(後述)を用いて、HTTP(Hypertext Transfer Protocol)リクエストやHTTPS(Hypertext Transfer Protocol over SSL)リクエストを出力し、第１のウェブサーバ２０や第２のウェブサーバ３０に付加価値のあるウェブページを要求する。第１のウェブサーバ２０や第２のウェブサーバ３０は、HTTPレスポンス/HTTPSレスポンスによってクライアント装置１０のウェブブラウザに付加価値のあるウェブページを送信する。プロトコルとしてHTTPを用いるかHTTPSを用いるかは、付加価値を付ける先の既存のウェブサイトが用いているプロトコルに合わせる。
【００２５】
図２は、クライアント装置１０、第１のウェブサーバ２０、および第２のウェブサーバ３０を実現するのに好適なコンピュータ装置のハードウェア構成例を模式的に示した図である。クライアント装置１０、第１のウェブサーバ２０、および第２のウェブサーバ３０は、演算手段であるＣＰＵ(Central Processing Unit)１０１と、Ｍ/Ｂ(マザーボード)チップセット１０２およびＣＰＵバスを介してＣＰＵ１０１に接続されたメインメモリ１０３と、同じくＭ/Ｂチップセット１０２およびＡＧＰ(Accelerated Graphics Port)を介してＣＰＵ１１に接続されたビデオカード１０４とを備えている。また、ＰＣＩ(Peripheral Component Interconnect)バスを介してＭ/Ｂチップセット１０２に接続されたハードディスクドライブ(ＨＤＤ)１０６と、ネットワークインタフェース１０７とを備えている。更に、このＰＣＩバスからブリッジ回路１０５およびＩＳＡ(Industry Standard Architecture)バスなどの低速なバスを介してＭ/Ｂチップセット１０２に接続されたフレキシブルディスクドライブ１０８およびキーボード/マウス１０９を備える。
尚、図２は、本実施の形態を実現するコンピュータ装置のハードウェア構成を例示するに過ぎず、本実施の形態を適用可能であれば、他の種々の構成を取ることができる。例えば、ビデオカード１０４を設ける代わりに、ビデオメモリのみを搭載し、ＣＰＵ１０１にてイメージデータを処理する構成としてもよいし、外部記憶装置として、ＡＴＡ(AT Attachment)やＳＣＳＩ(Small Computer System Interface)などのインタフェースを介してＣＤ−Ｒ(Compact Disc Recordable)やＤＶＤ−ＲＡＭ(Digital Versatile Disc Random Access Memory)などのドライブを設けてもよい。
【００２６】
図３は、図１に示すシステムにて、図２に示すハードウェアを用いて実行される各装置の機能を示した図である。クライアント装置１０は、メインメモリ１０３をワークエリアとしてＣＰＵ１０１にて実行されるソフトウェアであるウェブ(Web)ブラウザ１１を備えており、第１のウェブサーバ２０や第２のウェブサーバ３０などのウェブサーバ上の情報に、ネットワークインタフェース１０７を用いネットワーク４０を介してアクセスする。また、ユーザ情報やアクセス履歴などの情報をウェブブラウザ１１とウェブサーバ(第１のウェブサーバ２０や第２のウェブサーバ３０など)との間でやりとりするための仕組みとして、クッキー(Cookie)１２を備えている。本実施の形態におけるクッキー１２は、第１のウェブサーバ２０が管理するヘッダ内容をクライアント装置１０のローカルのＨＤＤ１０６にテキストファイルで保存している。
【００２７】
第１のウェブサーバ２０および第２のウェブサーバ３０は、既存のウェブサイトにアクセシビリティなどの付加価値を持たせたものであり、ネットワーク４０に接続されている。第１のウェブサーバ２０は、例えば主となる単一のウェブサーバとして機能する。第２のウェブサーバ３０は、例えば従となる単一または複数のウェブサーバで構成される。この第１のウェブサーバ２０は、メインメモリ１０３をワークエリアとしてＣＰＵ１０１にて実行されるソフトウェアとして、ＨＴＴＰ/ＨＴＴＰＳ処理部２１と、付加価値用ＨＴＭＬ生成部２２と、個人情報処理部２３と、ドメイン登録処理部２４と、アプリケーション固有の付加価値の処理を行う付加価値処理部２７とを備えている。また、ＨＤＤ１０６には、オリジナルコンテンツ２５と、登録ドメイン情報２６とが格納される。これらのＨＤＤ１０６に格納される情報は、ＣＰＵ１０１にて実行される各種ソフトウェアの指示に基づいて格納や読み出しが実行される。
同様に、第２のウェブサーバ３０は、実行されるソフトウェアとして、ＨＴＴＰ/ＨＴＴＰＳ処理部３１と、付加価値用ＨＴＭＬ生成部３２と、個人情報処理部３３とを備えている。また、ＨＤＤ１０６には、オリジナルコンテンツ３５が格納されている。
【００２８】
ＨＴＴＰ/ＨＴＴＰＳ処理部２１,３１は、クライアント装置１０のウェブブラウザ１１からのHTTPリクエスト/HTTPSリクエストを受信し、ウェブブラウザ１１に対してHTTPレスポンス/HTTPSレスポンスを送信する。付加価値用ＨＴＭＬ生成部２２,３２は、付加価値を持たせるためにフレームを用いたＨＴＭＬなどの文書ファイルを生成するための、ウェブサーバで実行されるプログラムであり、各々のウェブサーバ(第１のウェブサーバ２０、第２のウェブサーバ３０)で持つものである。第１のウェブサーバ２０の個人情報処理部２３は、第１のウェブサーバ２０管理のクッキーを書くための各種処理を実行する。第２のウェブサーバ３０の個人情報処理部３３は、ウェブブラウザ１１からパラメータとして渡されたクッキーの情報を通知するJavaScriptなどのスクリプトプログラムを含むＨＴＭＬを送信するための各種処理を実行する。第１のウェブサーバ２０の登録ドメイン情報２６には、同じ付加価値を持つウェブサーバのドメインとＪＳＰ(Java Server Pages)のＵＲＬを登録するJavaScriptのコード情報が格納されている。ドメイン登録処理部２４では、この登録ドメイン情報２６に格納されたコード情報を用いて、パラメータとして渡されたＵＲＬが事前に登録されたドメインのものであるかどうかの確認処理が実行される。オリジナルコンテンツ２５,３５には、各々のウェブサーバ固有のオリジナルのコンテンツが格納される。付加価値処理部２７では、例えば、マウスの移動があったときにマウスのポインタが指すテキストを別フレームに拡大する、といったような付加価値の処理が実行される。この付加価値処理２７は、第１のウェブサーバ２０および第２のウェブサーバ３０を含め、全てのウェブサーバが生成したＨＴＭＬから参照され、ウェブブラウザ１１で実行されるプログラムで構成される。
【００２９】
クライアント装置１０の利用者は、ウェブブラウザ１１を用いて、HTTPリクエスト/HTTPSリクエストによって第１のウェブサーバ２０にアクセシビリティなどの付加価値のあるウェブページを要求する。第１のウェブサーバ２０のＨＴＴＰ/ＨＴＴＰＳ処理部２１は、HTTPレスポンス/HTTPSレスポンスによって、ウェブブラウザ１１に付加価値のあるウェブページを送信する。付加価値のあるウェブページを受信したウェブブラウザ１１では、単純にウェブページを表示するだけではなく、アクセシビリティのための機能などを実行することができる。付加価値としては、利用者がマウスで指し示す位置にある情報を別のフレームに拡大して表示することや音声で読み上げることなどが挙げられる。また、本実施の形態では、付加価値の機能をパーソナライズすることができる。例えば、キーボード/マウス１０９のマウスで指し示す位置にある情報を別のフレームに拡大して表示するときの倍率を利用者の好みにより指定することができる。この情報は、第１のウェブサーバ２０が管理するクッキー１２により保管される。
【００３０】
クライアント装置１０の利用者は、ウェブページ上のリンクをクリックすることにより、別のウェブページに移動する。このとき、移動先が第１のウェブサーバ２０上のウェブページであるか、第１のウェブサーバ２０の登録ドメイン情報２６に登録された同じ付加価値を持つウェブサーバ上のウェブページであれば、移動先でも同じ付加価値を利用することができる。例えば、利用者がウェブブラウザ１１上で第２のウェブサーバ３０上のウェブページへのリンクをクリックすると、HTTPリクエスト/HTTPSリクエストによって第２のウェブサーバ３０にアクセシビリティなどの付加価値のあるウェブページを要求する。第１のウェブサーバ２０と第２のウェブサーバ３０には、同じ付加価値を持つウェブサーバであることをお互いに登録してある。第２のウェブサーバ３０のＨＴＴＰ/ＨＴＴＰＳ処理部３１は、HTTPレスポンス/HTTPSレスポンスによってウェブブラウザ１１に付加価値のあるウェブページを送信する。
【００３１】
図４は、ウェブブラウザ１１の構成を示したブロック図である。図４に示す枠はフレームを持つＨＴＭＬを示しており、このフレームのＨＴＭＬに対してJavaScriptのコードが書かれている。ここでは、付加価値のための制御を行う制御部５１と、手を加えていないウェブコンテンツが嵌め込まれて表示されるコンテンツ部５２と、既存のウェブサイト上のウェブページに対して新たな価値を付加する付加価値部５３と、個人情報をクッキー１２によりクライアントで保存する個人情報管理部５４とを有している。
【００３２】
制御部５１では、コンテンツ部５２にウェブページが読み込まれたときに、手を加えられていないコンテンツ部５２のウェブページに対して必要な初期処理が行われる。この初期処理は、コンテンツ部５２のためのFRAMEタグの中で設定されるonloadの中で行われる。このonloadは、リンクされた先のコンテンツの中身が読み込まれ、読み込まれ終わったことを教える。“W3C Recommendation 24 December 1999、ＨＴＭＬ 4.01 Specification” 〔２００４年１２月１６日検索〕、インターネット＜http://www.w3.org/TR/ＨＴＭＬ4/＞によると、FRAMEタグにonloadのイベントハンドラを設定できないことになっているが、Internet ExplorerでもMozillaでも、この方法により設定することができる。
この初期処理では、以下の３項目が実行される。
１．同じ付加価値を持つウェブサイト上のウェブページへのリンクがあるときには、付加価値を持たせたウェブページへのリンクに変更する。
２．コンテンツ部のスタイルを動的に変更させるためのＣＳＳ(Cascading Style Sheets)を追加する。
３．付加価値の機能を持たせるために、コンテンツ部内のイベントハンドラを設定する。
例えば、onmouseoverとonmouseoutのイベントハンドラを設定しておけば、ＨＴＭＬのそれぞれのＤＯＭ(Document Object Model)要素の上に、マウスポインタが乗ったときとマウスカーソルが離れたときの処理を行うことができる。
【００３３】
コンテンツ部５２にて表示される既存のウェブサイト上のウェブページは、ウェブブラウザ１１のフレームとして表示される。ウェブページが読み込まれたときに、制御部５１によりイベントハンドラが設定される。ここで設定されたイベントハンドラは、必要に応じてDynamic ＨＴＭＬを用いて、コンテンツ部５２及び付加価値部５３の表示を変化させる。イベントハンドラを記述するプログラミング言語としては、現在広く使われているウェブブラウザで動作することから、JavaScriptを用いることが適当である。しかしながら、本実施の形態は、イベントハンドラとしてJavaScriptの利用に限定されるものではない。将来、多くのウェブブラウザで動作する別のプログラミング言語が現れた場合には、そのプログラミング言語を用いることも可能である。
付加価値部５３は、フレームや別ウィンドウ、あるいは両方として表示される。フレームや別ウィンドウの数は複数でも良い。単純な機能であれば、ＨＴＭＬとJavaScriptのみで実装できる。より複雑な機能が必要であれば、Javaアプレットなどを用いることになる。
個人情報管理部５４では、個人情報がクッキーによりクライアントで保存され、例えばサイズを０に設定したフレームとして実現される。
【００３４】
次に、これらの各機能によって実行される処理の流れについて説明する。
図５は、第２のウェブサーバ３０から送られたウェブページから第１のウェブサーバ２０管理のクッキーを読む方法を示した図である。尚、この図５および後述する図６では、クッキーを管理する特定のウェブサーバを第１のウェブサーバ２０、それ以外のウェブサーバを第２のウェブサーバ３０として取り扱っている。ウェブブラウザ１１の付加価値部５３は、第１のウェブサーバ２０に対するHTTPリクエスト/HTTPSリクエストによって、第１のウェブサーバ２０に対してクッキーを読むスクリプトプログラムを含むＨＴＭＬを要求する(ステップ１０１)。このとき、ターゲットとして個人情報管理部５４のフレームを指定する。また、パラメータとして、第２のウェブサーバ３０に対する個人情報管理部５４からのHTTPリクエスト/HTTPSリクエストの宛て先となるＵＲＬが渡される。
【００３５】
HTTPリクエスト/HTTPSリクエストを受けた第１のウェブサーバ２０のドメイン登録処理部２４は、パラメータとして渡されたＵＲＬが事前に登録されたドメインのものであるか否かを、ＨＤＤ１０６に格納される登録ドメイン情報２６を用いて確認する(ステップ１０２)。登録されているものであれば、HTTPレスポンス/HTTPSレスポンスによってスクリプトプログラムを含むＨＴＭＬを送信する(ステップ１０３)。そのスクリプトプログラムは、クッキーを読み、その値をパラメータとして渡されたＵＲＬに送るということを実行するコードが記述されている。登録されたドメインのものではない場合には、空のＨＴＭＬを送信する(ステップ１０４)。
【００３６】
個人情報管理部５４では、送られたスクリプトプログラムを実行することによりクッキーを読む(ステップ１０５)。そして、第２のウェブサーバ３０に対して、読んだクッキーの情報を付加価値部５３に通知するスクリプトプログラムを要求する(ステップ１０６)。このとき、ターゲットとして個人情報管理部５４のフレームを指定する。また、パラメータとして、読んだクッキーの情報が渡される。
【００３７】
このHTTPリクエスト/HTTPSリクエストを受けた第２のウェブサーバ３０は、パラメータとして渡されたクッキーの情報を付加価値部５３に通知するスクリプトプログラムを含むＨＴＭＬを、HTTPレスポンス/HTTPSレスポンスによって送信する(ステップ１０７)。そのスクリプトプログラムは、クッキーの情報を引数として、付加価値部５３のスクリプトプログラムの関数を呼び出すというコードが記述されている。
【００３８】
ここで、個人情報管理部５４が第２のウェブサーバ３０からのHTTPレスポンス/HTTPSレスポンスを受け取ると、個人情報管理部５４のフレームと付加価値部５３のフレームの両方に第２のウェブサーバ３０から送られたウェブページがあることになる。そのため、個人情報管理部５４は、クッキーの情報をパラメータとして、付加価値部５３のスクリプトプログラムを呼び出し(ステップ１０８)、第１のウェブサーバ２０管理のクッキーを付加価値部５３に知らせることができる。付加価値部５３では、得られたクッキーの情報を用いて、アプリケーション固有の処理を実行して(ステップ１０９)、処理が終了する。
【００３９】
尚、サーバで実行されるプログラムは、ＪＳＰの他に、ServletやＣＧＩなどの任意の技術を用いることができる。また、ウェブブラウザ１１で実行されるプログラムは、JavaScriptが代表的なものであるが、多くのウェブブラウザで動作する別のプログラミング言語が現れた場合には、そのプログラミング言語を用いても構わない。更に、同じ付加価値を持たせるウェブサイトの集合を変更する場合には、集合に追加あるいは削除されるウェブサイトと主となる単一のウェブサーバのみを変更すれば良い。この処理は、図３に示すドメイン登録処理部２４によって実行され、その結果は登録ドメイン情報２６に格納される。
【００４０】
図６は、第２のウェブサーバ３０から送られたウェブページから第１のウェブサーバ２０管理のクッキーを書く方法を示した図である。付加価値部５３は、第１のウェブサーバ２０に対するHTTPリクエスト/HTTPSリクエストによって、第１のウェブサーバ２０に対してクッキーを書くスクリプトプログラムを含むＨＴＭＬを要求する(ステップ２０１)。このとき、ターゲットとして個人情報管理部５４のフレームを指定する。また、パラメータとしてクッキーに書く値を渡す。第１のウェブサーバ２０は、HTTPレスポンス/HTTPSレスポンスによって、個人情報管理部５４に対してクッキーを書くスクリプトプログラムを含むＨＴＭＬを送信する(ステップ２０２)。個人情報管理部５４は、クッキーを書いても良いか否かを利用者に確認する(ステップ２０３)。確認が得られない場合には、クッキーを保存せずにクッキーを書くためのフローは終了し、次の処理へ移行する。確認が得られた場合には、クッキーを書き(ステップ２０４)、次の処理へ移行する。尚、クッキーを書くとき、悪意のあるウェブサイトから不正なHTTPリクエスト/HTTPSリクエストが第１のウェブサーバ２０に対して送られた場合には、クッキーを書かないようにしなければならない。そのためには、第１のウェブサーバ２０がHTTPリクエストのrefererフィールドを参照し、そのＵＲＬが事前に登録されたドメインのものであるかを確認し、登録されたものであればクッキーを書くという方法が考えられる。ただし、ウェブブラウザのバグなどでrefererフィールドを偽装されるという事態や、利用者がrefererフィールドを送信しないようにウェブブラウザを設定するということも考えられる。そこで、JavaScriptの中でクッキーを書く前にダイアログボックスを表示し、利用者にクッキーを保存しても良いかを確認する方法が確実である。尚、文字の拡大率などの、それほど重要でない情報をクッキーに書くときには、悪意のあるサイトにクッキーを書き換えられても影響が少ない。そこで、クッキーを書き換えるかどうかを利用者に確認する作業を省略することもできる。また、個人情報などの重要な情報をクッキーで扱うときには、図６に示す方法でクッキーを書くことはせず、特定のウェブサイトからだけクッキーを書くようにすることも望ましい。
【００４１】
次に、具体的な実施例について説明する。
図７は、ウェブブラウザ１１に、文字の拡大の付加価値のあるウェブサイト上のウェブページを表示した例を示した図である。図７に示す例では、目に見える３つのフレーム(第１のフレーム６１、第２のフレーム６２、および第３のフレーム６３)と、見えない第４のフレーム６４との４つのフレームを備えている。第１のフレーム６１は拡大率の変更などを行うフレームであり、付加価値部５３で用いられる。図示するような付加価値のためのボタン(拡大、縮小)などが配置される。第２のフレーム６２はコンテンツの表示を行うフレームであり、コンテンツ部５２で用いられる。ここでは、オリジナルのコンテンツが表示されている。第３のフレーム６３は付加価値が施された画像を表示するフレームであり、付加価値部５３で用いられる。ここでは、拡大された文字列が表示されている。更に、大きさを０にしているため見えないが、第４のフレーム６４を備えており、この第４のフレーム６４は個人情報管理部５４にて用いられる。図７の例では、第２のフレーム６２の所定の文字列にマウスがあるときに、その下のＤＯＭ要素を反転し、第３のフレーム６３に拡大表示している。
【００４２】
図８は、図７に示す例のＪＳＰのコードを示した図である。図８に示す例では、hrefというパラメータを用いてＨＴＭＬを生成している。ＪＳＰは、一般に、ＨＴＭＬファイルの内部にスクリプトで処理を記述し、ウェブブラウザからのリクエストのたびにスクリプトをサーバ側で実行し、ＨＴＭＬ中のスクリプト部分をその処理結果で置き換えてウェブブラウザに送り出す機構である。この図８に示されるようなＪＳＰは、主となる単一のウェブサーバである第１のウェブサーバ２０と、従となる単一または複数のウェブサーバである第２のウェブサーバ３０とに備えられる。図８では、コンテンツ部のFRAMEタグにonloadのイベントハンドラが設定されている。このイベントハンドラの引数としてFRAMEの名前が渡されている。コンテンツの指定には、hrefというパラメータでＵＲＬを渡すことがsrc属性に示されている。参照するスクリプトプログラム(JavaScript)は、それぞれのウェブサイトごとに置く必要はない。７行目の構成要素７１にて参照されるJavaScriptは、例えば第１のウェブサーバ２０などの単一のウェブサーバ(特定のウェブサイト)に置かれ、第１のウェブサーバ２０や第２のウェブサーバの中から何れか一つのサーバを選べば良い。この構成要素７１には、ＵＲＬを登録するJavaScriptのコードのありかが示されている。そして、１１行目に示す部分７２が置き換えられる。特定のウェブサイトは、元のテンプレートは同じであるが、特定のサーバの記述に変更することで、この特定のサーバのJavaScriptを利用することができる。
【００４３】
ここで、例えばフレームのページが第１のウェブサーバ２０から来たもので、中身だけが第２のウェブサーバ３０のコンテンツであるとすると、通常の方法であっては、その中身の情報を取得することができない。即ち、通常のセキュリティモデルによっては、ウェブサーバが異なる場合に、例えばマウスでポイントした箇所についてどのような文字列が書かれているか、ということを外のフレームから取得することができない。しかしながら、図８の例に示すような本実施の形態によれば、第１のウェブサーバ２０が提供するウェブページから第２のウェブサーバ３０にジャンプしたときには、第２のウェブサーバ３０から全体をロードし直すことで、第２のウェブサーバ３０のJavaScriptから第２のウェブサーバ３０のコンテンツにアクセスするように切り換えることが可能となる。このように本実施の形態では、異なるドメイン間をまたがるジャンプの場合には、全体をリロードすることで、ウェブページを提供するドメインのJavaScriptによってコンテンツの中に書かれている文字列の情報を取得することができる。これによって、全体のズームとか全体の色の置き換えだけではなく、ポイントした箇所だけを拡大して読み上げる等のアクセシビリティを実現可能としている。
【００４４】
図９は、同じ付加価値を持つウェブサーバのドメインとＪＳＰのＵＲＬを登録するJavaScriptのコードの例を示した図であり、図８の７行目で指定したJavaScriptファイルの内容の一部である。この図９に示すJavaScriptのコードは、図３に示す第１のウェブサーバ２０の登録ドメイン情報２６に格納されている。この図９に示す例では、
w3.trl.ibm.com
w3.watson.ibm.com
w3.almaden.ibm.com
が同じ付加価値を持つウェブサーバのドメインであり、これらのドメイン内のウェブページに付加価値を伴ってアクセスするには、それぞれ、
http://w3.trl.ibm.com/RakurakuWeb/rakuraku.jsp
http://w3.watson.ibm.com/RakurakuWeb/rakuraku.jsp
http://w3.almaden.ibm.com/RakurakuWeb/rakuraku.jsp
というＪＳＰを介してアクセスするということを示している。例えば、
http://w3.trl.ibm.com/
に付加価値を伴ってアクセスするには
http://w3.trl.ibm.com/RakurakuWeb/rakuraku.jsp?href=http://w3.trl.ibm.com/
と指定する。
【００４５】
図１０は、コンテンツ部のFRAMEタグに設定されたonloadのイベントハンドラのJavaScriptのコードを示した図である。現在のドメイン以外へ移動するＡタグのうちで、同じ付加価値を持つウェブサーバのドメイン上のウェブページに移動するものは、付加価値を持たせるためにhref属性を変更し、また、target属性も_topに変更しておく。更に、コンテンツ部のＤＯＭ要素を反転するために、ＣＳＳもこのコンテンツに追加する。更に、onmouseoverとonmouseoutのイベントハンドラを設定する。
onmouseoverのコードの詳細は省略するが、イベントのソースのＤＯＭ要素を得て、そのＤＯＭ要素にクラスを設定してＣＳＳを用いて反転表示し、また、下のフレームに拡大した文字を表示する。
onmouseoutのコードの詳細も省略するが、イベントのソースのＤＯＭ要素を得て、そのＤＯＭ要素に反転表示のために設定したクラスの設定を解除し、また、下のフレームに拡大して表示した文字の表示を取り消す。このように図１０の３行目から９行目に示す構成によって、同じ付加価値を持たせるウェブサイトのウェブページへのリンクがある場合には、フレーム内にページをロードしたときに、そのウェブサイト上の付加価値を提供するＵＲＬに遷移するようにＤＯＭが変更される。即ち、図８に示すcontentsFrameに新しいウェブページがロードされると、図１０のinitが実行される。そして、このウェブページの中の全てのＡタグを調べ、現在のページのホストとは別のページへのリンクだが、同じ付加価値を持たせるウェブサイトとして定義されているホスト上のページへのリンクについては、そのウェブサイト上の付加価値を提供するＵＲＬに遷移するように、ＤＯＭを操作することにより、Ａタグの属性を変更する。
尚、図１０には、必要に応じてテキストを分割するための構成要素８１として、splitText()が追加されている。
【００４６】
図１１は、図１０に示すＨＴＭＬ文書の元となった処理の流れを示すフローチャートである。ここでは、まず、現在のドメイン以外へ移動するＡタグの内、同じ付加価値を持つウェブサーバのドメイン上へ移動するものは、付加価値を持たせるためにhref属性を変更し、target属性も_topに変更する(ステップ３０１)。そして、ＣＳＳを追加し(ステップ３０２)、必要に応じてテキストを分割する(ステップ３０３)。そして、onmouseoverとonmouseoutのイベントハンドラを設定して(ステップ３０４)、処理が終了する。
【００４７】
図１２(ａ),(ｂ)は、ステップ３０３の、必要に応じてテキストを分割する場合の具体例を示した図である。オリジナルのＨＴＭＬよりも細かい単位で、マウスポインタの位置のテキストを検知するために、必要に応じてSPANタグを挿入する。このSPANタグの目的により、適切なclass属性も付けておく。どのような単位でSPANタグを挿入するのかということと、どのようなclass属性を用いるかということは、アプリケーションに依存する。図１２に示す例では、文ごとにSPANタグに分割し、更に漢字は、文のSPANタグの子のSPANタグとしている。即ち、図１２(ａ)に示すように、元の文章の「こんにちは。私の名前は、太郎です。」について、図１２(ｂ)に示すように、まず、「こんにちは。」と「私の名前は、太郎です。」２つのセンテンスに分割される。２つ目のセンテンスである「私の名前は、太郎です。」は、漢字とひらがなとに分け、漢字である「私」、「名前」、「太郎」は、文のSPANタグの子のSPANタグとされる。
【００４８】
図１３は、イベントのソースを得る関数のJavaScriptのコードを示した図である。onmouseoverとonmouseoutのイベントハンドラでは、処理を行うためにイベントのソースを得る必要があるが、ウェブブラウザごとにイベントのソースを得る方法が違うので、ここに示したようなコードが必要となる。図１３に示すJavaScriptのコードでは、まず、myWindow.eventを使えるか否かの判断がなされる。使える場合には、myWindow.event.srcElementをイベントソースとする。使えない場合には、e.Targetをイベントソースとし、イベントのソースを返して処理が終了する。マウスポインタの下のＨＴＭＬ要素を取り出す際に、図１２に示すようにSPANタグで分割しておけば、オリジナルのＨＴＭＬよりも細かい単位でＨＴＭＬ要素を取り出すことが可能となる。
【００４９】
尚、上述した実施の形態では、付加価値としてアクセシビリティを例に挙げたが、付加価値として、例えば、個人情報の入力補助にも利用できる。例えば、商取引のサイトで商品を購入しようとすると、氏名、住所、電話番号などの情報の入力を求められる。これらの情報について、商品を購入する度に入力することは非常に煩わしい。しかしながら、本実施の形態を応用すると、クライアントにクッキーとしてこれらの個人情報を保管しておき、フォーム内の項目を自動的に入力することができる。これらの個人情報の入力補助は、事前に登録してある複数のウェブサイトで共有することが可能である。例えば、個人情報を登録するには、利用者が登録ページを表示し必要な項目を入力し、登録ボタンを押すとクッキーに書き出される。この登録された個人情報を利用するウェブサイトでは、個人情報を入力すべきページを表示したときに、図５の方法によりクッキーを読み取る。そして、個人情報管理部５４から付加価値部５３に対して実行されるステップ１０８のJavaScript呼び出しの中で、個人情報を入力すべきフォームの要素に対して呼び出したクッキーの値を代入すれば良い。
【００５０】
また、他の応用例として、本実施の形態に示したものと同様な仕組みにより、文字の拡大の代わりに翻訳を行うように構成することもできる。文は、図１０の構成要素８１に示すsplitText()の処理で、図１２に示す<SPAN class=“sentence”>タグの中に入れておく。これによって、オリジナルのＨＴＭＬの構造単位だけではなく、アプリケーションにて必要な単位で翻訳を行うことが可能となる。
更に、同様な仕組みによって、文字の拡大の代わりに振り仮名の表示を行うことへの応用も可能である。漢字は、splitText()の処理で、図１２に示す<SPAN class=“kanji”>タグの中に入れておく。これによって、漢字だけを取り出して振り仮名表示をすることが可能となる。
また更に、同様な仕組みによって、文字の拡大の代わりに略語の展開を行うこともできる。略語は、splitText()の処理で<SPAN class=“abbreviation”>タグの中に入れておく。
【００５１】
以上、詳述したように、本実施の形態によれば、既存ウェブサイトをほとんど変更することなく、アクセシビリティを高めることや、上述した各種応用例などの新たな価値を追加(付加価値を提供)することができる。また、クライアントの環境が特定のＯＳやウェブブラウザに依存しないようにできる。更に、関連のある複数のウェブサイト間でページを遷移したときも利用者に負担をかけることなく、新たに追加した価値を利用可能とすることができる。また更に、関連のある複数のウェブサイト間でパーソナライズのための情報をサーバに保管することなく共有することも可能となる。
【図面の簡単な説明】
【００５２】
【図１】本実施の形態が適用されるネットワークシステムの全体構成を示した図である。
【図２】クライアント装置、第１のウェブサーバ、および第２のウェブサーバを実現するのに好適なコンピュータ装置のハードウェア構成例を模式的に示した図である。
【図３】図１に示すシステムにて、図２に示すハードウェアを用いて実行される各装置の機能を示した図である。
【図４】ウェブブラウザの構成を示したブロック図である。
【図５】第２のウェブサーバから送られたウェブページから第１のウェブサーバ管理のクッキーを読む方法を示した図である。
【図６】第２のウェブサーバから送られたウェブページから第１のウェブサーバ管理のクッキーを書く方法を示した図である。
【図７】ウェブブラウザに、文字の拡大の付加価値のあるウェブサイト上のウェブページを表示した例を示した図である。
【図８】図７に示す例のＪＳＰのコードを示した図である。
【図９】同じ付加価値を持つウェブサーバのドメインとＪＳＰのＵＲＬを登録するJavaScriptのコードの例を示した図である。
【図１０】コンテンツ部のFRAMEタグに設定されたonloadのイベントハンドラのJavaScriptのコードを示した図である。
【図１１】図１０に示すＨＴＭＬ文書の元となった処理の流れを示すフローチャートである。
【図１２】(ａ),(ｂ)は、ステップ３０３の、必要に応じてテキストを分割する場合の具体例を示した図である。
【図１３】イベントのソースを得る関数のJavaScriptのコードを示した図である。
【符号の説明】
【００５３】
１０…クライアント装置、１１…ウェブ(Web)ブラウザ、１２…クッキー(Cookie)、２０…第１のウェブ(Web)サーバ、２１…ＨＴＴＰ/ＨＴＴＰＳ処理部、２２…付加価値用ＨＴＭＬ生成部、２３…個人情報処理部、２４…ドメイン登録処理部、２５…オリジナルコンテンツ、２６…登録ドメイン情報、２７…付加価値処理部、３０…第２のウェブ(Web)サーバ、３１…ＨＴＴＰ/ＨＴＴＰＳ処理部、３２…付加価値用ＨＴＭＬ生成部、３３…個人情報処理部、３５…オリジナルコンテンツ、４０…ネットワーク、５１…制御部、５２…コンテンツ部、５３…付加価値部、５４…個人情報管理部
【図１】
2006185160.tif 000003
【図２】
2006185160.tif 000004
【図３】
2006185160.tif 000005
【図４】
2006185160.tif 000006
【図５】
2006185160.tif 000007
【図６】
2006185160.tif 000008
【図７】
2006185160.tif 000009
【図８】
2006185160.tif 000010
【図９】
2006185160.tif 000011
【図１０】
2006185160.tif 000012
【図１１】
2006185160.tif 000013
【図１２】
2006185160.tif 000014
【図１３】
2006185160.tif 000015