(57)【要約】【課題】遠隔の通信端末においてセキュリティを確保しつつＤＯＭオブジェクトのメソッドを実行させる。【解決手段】通信端末１が、ディジタルコンテンツの内容を記述したファイルを読み込み、ファイルをＤＯＭツリー１０として記憶し、通信端末１が、ＤＯＭツリーにより、通信端末２で生成されるＤＯＭオブジェクト２３に対応するＤＯＭツリー２４の部分であるエレメントを示すセレクタ、ＤＯＭオブジェクト２３に実行させるメソッドのメソッド名ならびにメソッドに引き渡す引数を得て、通信端末２に送信する。通信端末２が、ＤＯＭツリー２４からセレクタに対応するエレメントを検索し、エレメントからＤＯＭオブジェクト２３を生成する。通信端末２が、メソッド名に対応するメソッドをＤＯＭオブジェクト２３に実行させるとともに引数をメソッドに引き渡し、メソッドによる処理で返り値が得られた場合、返り値を通信端末１に送信する。【選択図】図１
2016031636.tif 000002
【特許請求の範囲】
【請求項１】
第１の通信端末が、ディジタルコンテンツの内容を記述したファイルを読み込み、前記ファイルをＤＯＭツリーとして記憶し、
前記第１の通信端末が、前記ＤＯＭツリーにより、前記第１の通信端末と異なる第２の通信端末で生成されるＤＯＭオブジェクトに対応するＤＯＭツリーの部分であるエレメントを示すセレクタ、当該ＤＯＭオブジェクトに実行させるメソッドのメソッド名ならびに当該メソッドに引き渡す引数を得て、前記第２の通信端末に送信し、
前記第２の通信端末が、当該第２の通信端末に保持されたＤＯＭツリーから当該セレクタに対応するエレメントを検索し、当該エレメントからＤＯＭオブジェクトを生成し、当該第２の通信端末に記憶し、
前記第２の通信端末が、当該メソッド名に対応するメソッドを当該ＤＯＭオブジェクトに実行させるとともに当該引数を当該メソッドに引き渡し、当該メソッドによる処理で返り値が得られた場合、当該返り値を前記第１の通信端末に送信する
ことを特徴とする情報処理方法。
【請求項２】
第１の通信端末が、ディジタルコンテンツの内容を記述したファイルを読み込み、前記ファイルをＤＯＭツリーとして記憶し、
前記第１の通信端末が、前記ＤＯＭツリーにより、前記第１の通信端末と異なる第２の通信端末で生成されるＤＯＭオブジェクトに対応するＤＯＭツリーの部分であるエレメントを示すセレクタ、当該ＤＯＭオブジェクトに実行させるメソッドのメソッド名ならびに当該メソッドに引き渡す引数を得て、前記第１の通信端末と異なる第２の通信端末に送信する
ことを特徴とする情報処理方法。
【請求項３】
前記第１の通信端末が、前記ＤＯＭオブジェクトのインタフェースおよびメソッドを継承して有し且つ当該メソッドが呼び出された際に当該メソッドが当該メソッドのメソッド名および当該メソッドに引き渡される引数を返すように定義されたダミーＤＯＭオブジェクトを生成し、当該メソッドを呼び出し、前記第２の通信端末に送信すべきメソッド名と引数を当該メソッドから得る
ことを特徴とする請求項１または２記載の情報処理方法。
【請求項４】
第１の通信端末と異なる第２の通信端末が、当該第２の通信端末に保持されたＤＯＭツリーの部分であるエレメントを示すセレクタ、当該エレメントから生成されるＤＯＭオブジェクトに実行させるメソッドのメソッド名ならびに当該メソッドに引き渡す引数を前記第１の通信端末から受信し、
前記第２の通信端末が、当該第２の通信端末に保持されたＤＯＭツリーから当該セレクタに対応するエレメントを検索し、当該エレメントからＤＯＭオブジェクトを生成し、当該第２の通信端末に記憶し、
前記第２の通信端末が、当該メソッド名に対応するメソッドを当該ＤＯＭオブジェクトに実行させるとともに当該引数を当該メソッドに引き渡し、当該メソッドによる処理で返り値が得られた場合、当該返り値を前記第１の通信端末に送信する
ことを特徴とする情報処理方法。
【請求項５】
通信端末であって、
ディジタルコンテンツの内容を記述したファイルをＤＯＭツリーとして記憶する手段と、
前記ＤＯＭツリーにより、当該通信端末と異なる第２の通信端末で生成されるＤＯＭオブジェクトに対応するＤＯＭツリーの部分であるエレメントを示すセレクタ、当該ＤＯＭオブジェクトに実行させるメソッドのメソッド名ならびに当該メソッドに引き渡す引数を得て、前記第２の通信端末に送信する手段と
を備えることを特徴とする通信端末。
【請求項６】
第１の通信端末と異なる第２の通信端末としての通信端末であって、
当該第２の通信端末に保持されたＤＯＭツリーの部分であるエレメントを示すセレクタ、当該エレメントから生成されるＤＯＭオブジェクトに実行させるメソッドのメソッド名ならびに当該メソッドに引き渡す引数を前記第１の通信端末から受信する手段と、
当該第２の通信端末に保持されたＤＯＭツリーから当該セレクタに対応するエレメントを検索し、当該エレメントからＤＯＭオブジェクトを生成する手段と、
当該ＤＯＭオブジェクトを記憶する手段と、
当該メソッド名に対応するメソッドを当該ＤＯＭオブジェクトに実行させるとともに当該引数を当該メソッドに引き渡す手段と、
当該メソッドによる処理で返り値が得られた場合、当該返り値を前記第１の通信端末に送信する手段と
を備えることを特徴とする通信端末。
【請求項７】
第１の通信端末が、ディジタルコンテンツの内容を記述したファイルを読み込み、前記ファイルをＤＯＭツリーとして記憶し、
前記第１の通信端末が、前記ＤＯＭツリーにより、前記第１の通信端末と異なる第２の通信端末で生成されるＤＯＭオブジェクトに対応するＤＯＭツリーの部分であるエレメントを示すセレクタ、当該ＤＯＭオブジェクトに実行させるメソッドのメソッド名ならびに当該メソッドに引き渡す引数を得て、前記第２の通信端末に送信し、
前記第２の通信端末が、当該第２の通信端末に保持されたＤＯＭツリーから当該セレクタに対応するエレメントを検索し、当該エレメントからＤＯＭオブジェクトを生成し、当該第２の通信端末に記憶し、
前記第２の通信端末が、当該メソッド名に対応するメソッドを当該ＤＯＭオブジェクトに実行させるとともに当該引数を当該メソッドに引き渡し、当該メソッドによる処理で返り値が得られた場合、当該返り値を前記第１の通信端末に送信する
ように前記第１の通信端末と前記第２の通信端末を動作させるための情報処理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理方法、通信端末およびコンピュータプログラムに関するものである。
【背景技術】
【０００２】
ウェブテクノロジによる情報提供の形式において、文書情報の構造を記述するとともに映像やその他のディジタルコンテンツを提供する手段としてマークアップ言語が使用される。ハイパーテキストマークアップ言語（ＨＴＭＬ）は最も普及したウェブのマークアップ言語であり、山括弧で囲まれたタグの形態のエレメントが記述される。ＨＴＭＬは、ウェブコンテンツの構造を記述でき、ウェブブラウザ及び他のＨＴＭＬプロセッサの振舞いに影響する埋め込み型スクリプト言語コードＪａｖａＳｃｒｉｐｔ（登録商標）を含むことができる。ウェブブラウザにはスクリプト言語で記述されたコードからＨＴＭＬの各エレメントにアクセスするために、ＤＯＭと呼ばれる木構造データに変換して制御するＡＰＩが提供されている。
【０００３】
また、スクリプト言語を使って異なるウェブコンテンツ間で双方向に通信させる方法として、ｗｅｂＲＴＣやＷｅｂＳｏｃｋｅｔといったウェブテクノロジが用いられる。ｗｅｂＲＴＣはブラウザ間において映像や音声、データをピア・ツー・ピアで送受信できる仕組みであり，ＷｅｂＳｏｃｋｅｔはサーバを介して非同期にメッセージを送受信できる仕組みである．
このような通信端末同士が双方向に通信する技術を活用して、ローカルの通信端末から遠隔の通信端末のＤＯＭオブジェクトを操作する技術が提案されている。例えば、非特許文献１には、遠隔の通信端末のＤＯＭオブジェクトを制御するために、ＪａｖａＳｃｒｉｐｔのコードを文字列にして転送し、遠隔の通信端末内で評価関数（ｅｖａｌ関数）を用いて実行させるＡＰＩの仕様が公開されている。
【０００４】
これらの技術はクリエイターが通信方式やサーバーサイドのプログラムを意識せずとも利用できるようにフレームワーク化されている。
【先行技術文献】
【非特許文献】
【０００５】
【非特許文献１】「Remote UI API」、［ｏｎｌｉｎｅ］、［平成２６年７月２２日検索］、インターネット＜ＵＲＬ：http://dev.webinos.org/specifications/api/remoteui.html＞
【発明の概要】
【発明が解決しようとする課題】
【０００６】
非特許文献１では、遠隔の通信端末のＤＯＭオブジェクトを操作するために、Ｗ３Ｃ標準ではなく独自にＡＰＩ仕様を定めており、制作者はそのＡＰＩに定められた手順でウェブコンテンツを記述することが求められる。ウェブコンテンツの制作者にとっては、ローカルの通信端末のＤＯＭオブジェクトを操作すると同じ操作性で遠隔の通信端末のＤＯＭオブジェクトを操作できれば利便性が高い。しかしながら、非特許文献１に開示される方法は、ＪａｖａＳｃｒｉｐｔのコードを遠隔の通信端末に直接転送するに留まり、開発者の利便性を考慮してＡＰＩが設計されているとは言えない。
【０００７】
また、転送するＪａｖａＳｃｒｉｐｔのプログラムに誤ったコードが含まれていた場合，遠隔の通信端末でユーザの意図しない動作が生じるリスクや不正なコードが含まれるセキュリティのリスクがある。
【０００８】
このように従来の方法では、ＡＰＩとしての利便性やセキュリティの観点において課題がある。
【０００９】
本発明は、上記に鑑みてなされたものであり、遠隔の通信端末においてセキュリティを確保しつつＤＯＭオブジェクトのメソッドを実行させる技術を提供することを目的とする。
【課題を解決するための手段】
【００１０】
上記の課題を解決するために、第１の本発明は、第１の通信端末が、ディジタルコンテンツの内容を記述したファイルを読み込み、前記ファイルをＤＯＭツリーとして記憶し、前記第１の通信端末が、前記ＤＯＭツリーにより、前記第１の通信端末と異なる第２の通信端末で生成されるＤＯＭオブジェクトに対応するＤＯＭツリーの部分であるエレメントを示すセレクタ、当該ＤＯＭオブジェクトに実行させるメソッドのメソッド名ならびに当該メソッドに引き渡す引数を得て、前記第２の通信端末に送信し、前記第２の通信端末が、当該第２の通信端末に保持されたＤＯＭツリーから当該セレクタに対応するエレメントを検索し、当該エレメントからＤＯＭオブジェクトを生成し、当該第２の通信端末に記憶し、前記第２の通信端末が、当該メソッド名に対応するメソッドを当該ＤＯＭオブジェクトに実行させるとともに当該引数を当該メソッドに引き渡し、当該メソッドによる処理で返り値が得られた場合、当該返り値を前記第１の通信端末に送信することを特徴とする。
【００１１】
第２の本発明は、第１の通信端末が、ディジタルコンテンツの内容を記述したファイルを読み込み、前記ファイルをＤＯＭツリーとして記憶し、前記第１の通信端末が、前記ＤＯＭツリーにより、前記第１の通信端末と異なる第２の通信端末で生成されるＤＯＭオブジェクトに対応するＤＯＭツリーの部分であるエレメントを示すセレクタ、当該ＤＯＭオブジェクトに実行させるメソッドのメソッド名ならびに当該メソッドに引き渡す引数を得て、前記第１の通信端末と異なる第２の通信端末に送信することを特徴とする。
【００１２】
第３の本発明は、第１の通信端末と異なる第２の通信端末が、当該第２の通信端末に保持されたＤＯＭツリーの部分であるエレメントを示すセレクタ、当該エレメントから生成されるＤＯＭオブジェクトに実行させるメソッドのメソッド名ならびに当該メソッドに引き渡す引数を前記第１の通信端末から受信し、前記第２の通信端末が、当該第２の通信端末に保持されたＤＯＭツリーから当該セレクタに対応するエレメントを検索し、当該エレメントからＤＯＭオブジェクトを生成し、当該第２の通信端末に記憶し、前記第２の通信端末が、当該メソッド名に対応するメソッドを当該ＤＯＭオブジェクトに実行させるとともに当該引数を当該メソッドに引き渡し、当該メソッドによる処理で返り値が得られた場合、当該返り値を前記第１の通信端末に送信することを特徴とする。
【００１３】
第４の本発明は、通信端末であって、ディジタルコンテンツの内容を記述したファイルをＤＯＭツリーとして記憶する手段と、前記ＤＯＭツリーにより、当該通信端末と異なる第２の通信端末で生成されるＤＯＭオブジェクトに対応するＤＯＭツリーの部分であるエレメントを示すセレクタ、当該ＤＯＭオブジェクトに実行させるメソッドのメソッド名ならびに当該メソッドに引き渡す引数を得て、前記第２の通信端末に送信する手段とを備えることを特徴とする。
【００１４】
第５の本発明は、第１の通信端末と異なる第２の通信端末としての通信端末であって、当該第２の通信端末に保持されたＤＯＭツリーの部分であるエレメントを示すセレクタ、当該エレメントから生成されるＤＯＭオブジェクトに実行させるメソッドのメソッド名ならびに当該メソッドに引き渡す引数を前記第１の通信端末から受信する手段と、当該第２の通信端末に保持されたＤＯＭツリーから当該セレクタに対応するエレメントを検索し、当該エレメントからＤＯＭオブジェクトを生成する手段と、当該ＤＯＭオブジェクトを記憶する手段と、当該メソッド名に対応するメソッドを当該ＤＯＭオブジェクトに実行させるとともに当該引数を当該メソッドに引き渡す手段と、当該メソッドによる処理で返り値が得られた場合、当該返り値を前記第１の通信端末に送信する手段とを備えることを特徴とする。
【００１５】
第６の本発明は、第１の通信端末が、ディジタルコンテンツの内容を記述したファイルを読み込み、前記ファイルをＤＯＭツリーとして記憶し、前記第１の通信端末が、前記ＤＯＭツリーにより、前記第１の通信端末と異なる第２の通信端末で生成されるＤＯＭオブジェクトに対応するＤＯＭツリーの部分であるエレメントを示すセレクタ、当該ＤＯＭオブジェクトに実行させるメソッドのメソッド名ならびに当該メソッドに引き渡す引数を得て、前記第２の通信端末に送信し、前記第２の通信端末が、当該第２の通信端末に保持されたＤＯＭツリーから当該セレクタに対応するエレメントを検索し、当該エレメントからＤＯＭオブジェクトを生成し、当該第２の通信端末に記憶し、前記第２の通信端末が、当該メソッド名に対応するメソッドを当該ＤＯＭオブジェクトに実行させるとともに当該引数を当該メソッドに引き渡し、当該メソッドによる処理で返り値が得られた場合、当該返り値を前記第１の通信端末に送信するように前記第１の通信端末と前記第２の通信端末を動作させるための情報処理プログラムである。
【発明の効果】
【００１６】
本発明によれば、第１の通信端末から第２の通信端末を操作する場合、第２の通信端末すなわち遠隔の通信端末では、該通信端末に保持されたＤＯＭツリーに含まれるエレメントから生成されたＤＯＭオブジェクトのメソッドが実行されるので、不正なコードや誤ったコードが当該通信端末に送信される虞がなく、よってセキュリティが確保され、また、ＤＯＭオブジェクトのメソッドを実行させることができる。
【図面の簡単な説明】
【００１７】
【図１】本実施の形態に係る情報処理システムの構成を示す図である。
【図２】通信端末１、２が行う通信の通信方式の例を示す図である。
【図３】セレクタが‘ｂｏｄｙ’の場合におけるセレクタの指定方法の一例を示す図である。
【図４】実施例１において通信端末１で読み込まれるＨＴＭＬファイルとスクリプト（スクリプト１５）の例を示す図である。
【図５】実施例１において通信端末２で読み込まれるＨＴＭＬファイルとスクリプトの例を示す図である。
【図６】実施例１においてＤＯＭオブジェクト２３を操作する前の通信端末１、２の画面を示す図である。
【図７】実施例１においてＤＯＭオブジェクト２３を操作した後の通信端末１、２の画面を示す図である。
【図８】実施例２で使用されるＰＣやテレビの画面とスマートフォンの画面を示す図である。
【図９】実施例２においてスマートフォン（通信端末１）で読み込まれるＨＴＭＬファイルとスクリプト（スクリプト１５）の例を示す図である。
【図１０】実施例２においてＰＣ等（通信端末２）で読み込まれるＨＴＭＬファイルとスクリプトの例を示す図である。
【発明を実施するための形態】
【００１８】
以下、本発明の実施の形態について図面を参照して説明する。
【００１９】
図１は、本実施の形態に係る情報処理システムの構成を示す図である。
【００２０】
情報処理システムは、通信端末１（第１の通信端末）と通信端末２（第２の通信端末）を含んで構成される。通信端末２は、通信端末１から離れた場所で使用され、すなわち、遠隔の通信端末である。
【００２１】
通信端末１は、ディジタルコンテンツの内容を記述した例えばＨＴＭＬファイルを読み込み、ファイルをＤＯＭツリー１０として記憶している。
【００２２】
ＤＯＭツリー１０は、スクリプト１５を含み、通信端末１のブラウザ（図示せず）がスクリプト１５を実行することで、セレクタ受信部１１と通信部１４を含む処理部１６が通信端末１に形成される。
【００２３】
セレクタ受信部１１は、ダミーＤＯＭオブジェクト生成部１２を備え、通信部１４は、セレクタ送信部１４１、メソッド名送信部１４２および返り値受信部１４３を備える。
【００２４】
ダミーＤＯＭオブジェクト１３は、ダミーＤＯＭオブジェクト生成部１２により生成され、メモリに格納される。
【００２５】
通信端末２は、ディジタルコンテンツである例えばＨＴＭＬファイルをＤＯＭツリー２４として記憶している。通信端末２のブラウザ（図示せず）が所定のスクリプトを実行することで、通信部２１とＤＯＭ探索部２２を含む処理部２６が通信端末２に形成される。通信部２１は、セレクタ受信部２１１、メソッド名受信部２１２および返り値送信部２１３を備える。
【００２６】
ＤＯＭツリー２４の一部分であるエレメントからＤＯＭオブジェクト２３が生成され、メモリに格納される。
【００２７】
スクリプト１５は、このエレメントを示す情報であるセレクタを含んでいる。
【００２８】
図１の構成は、通信端末１からＤＯＭオブジェクト２３を操作するためのものであるが、通信端末２から通信端末１のＤＯＭオブジェクトも操作できるように、各通信端末１、２が処理部１６、２６を備えてもよい。
【００２９】
図２は、通信端末１、２が行う通信の通信方式の例を示す図である。
【００３０】
通信端末１、２は、例えばｗｅｂＲＴＣ等を利用したＰ２Ｐ双方向通信で通信する。または、通信端末１、２は、例えばＷｅｂＳｏｃｋｅｔ等を利用した非同期方向通信で通信する。または、通信端末１、２は、このような１：１の通信形態でなく、１：Ｎの通信形態で例えばＷｅｂＳｏｃｋｅｔ等を利用した非同期方向通信で通信する。
【００３１】
以下、情報処理システムの動作について説明する。
【００３２】
セレクタ受信部１１のダミーＤＯＭオブジェクト生成部１２は、スクリプト１５からセレクタを受信する。
【００３３】
スクリプト１５がセレクタ受信部１１にセレクタを送信する際に、セレクタが遠隔の通信端末２に送信すべきものであることを識別しなければならない。そのためには、セレクタを条件（引数）によって識別したり、遠隔の通信端末２に送信すべきセレクタであることを明示的に示すメソッドを用意したり、様々な記法が考えられる。
【００３４】
図３は、セレクタが‘ｂｏｄｙ’の場合におけるセレクタの指定方法の一例を示す図である。
【００３５】
符号３１、３２の例では、遠隔の通信端末２に送信すべきセレクタであることを明示的に示すべく、識別記号としてｒｍｔやｒｅｍｏｔｅという文字列を指定する。符号３１の例のようにセレクタの接頭に‘ｒｍｔ‘を付与したり、符号３２の例のように第２引数として値’ｒｅｍｏｔｅ’を付与する。
【００３６】
符号３３、３４の例では、遠隔の通信端末２に送信すべきセレクタであることを明示的に示すメソッドｒｅｍｏｔｅ（）やｒｍｔ（）を用意し、それぞれの指定方法でメソッドを呼び出し、遠隔の通信端末２に送信すべきセレクタであることを明示する。
【００３７】
ダミーＤＯＭオブジェクト生成部１２は、セレクタ受信部１１がセレクタを受信した際、ＤＯＭオブジェクト２３のインタフェースおよびメソッドを継承して有し且つ当該メソッドが呼び出された際に当該メソッドが当該メソッドのメソッド名および当該メソッドに引き渡される引数を返すように定義されたダミーＤＯＭオブジェクト１３を生成し、通信端末１のメモリに記憶させる。また、ダミーＤＯＭオブジェクト生成部１２は、セレクタ受信部１１が受信したセレクタをセレクタ送信部１４１に送信する。
【００３８】
ＤＯＭオブジェクト２３は、例えば基本的なエレメントインタフェースを備えたＨＴＭＬエレメントオブジェクトであり、ダミーＤＯＭオブジェクト１３は、このエレメントインタフェースを継承して有する。
【００３９】
または、ＤＯＭオブジェクト２３は、通信端末１から遠隔の通信端末２で操作したいタグの種類やメソッドに応じて、独自の機能を備えたエレメントインタフェースを備え、ダミーＤＯＭオブジェクト１３は、このエレメントインタフェースを継承して有する。
【００４０】
例えば、「ＤＩＶ」タグはＨＴＭＬＤｉｖエレメントオブジェクトであり、「ＶＩＤＥＯ」タグはＨＴＭＬＭｅｄｉａエレメントオブジェクトであり、基本的なエレメントインタフェースに対して、それぞれ専用の機能や、メソッド、プロパティが追加されている。
【００４１】
ダミーＤＯＭオブジェクト１３がどのタグのオブジェクトを継承するかは、ＤＯＭツリー２４を参照して手動で設定してもよいし、事前にＤＯＭツリー２４を解析して自動で指定してもよい。
【００４２】
また、ＤＯＭオブジェクト２３は、例えばＷ３Ｃの仕様に準拠したものであるが、そうでなく、このＤＯＭオブジェクトを包含し、機能を拡張したものでもよく（例えばｊＱｕｅｒｙオブジェクト）、ダミーＤＯＭオブジェクト１３は、このＤＯＭオブジェクト２３を継承してもよい。
【００４３】
ダミーＤＯＭオブジェクト１３が有する各メソッドの内部は、ダミーＤＯＭオブジェクト１３を操作できないように書き換えられており、メソッドが呼び出された際に自信のメソッド名とその引数を通信部１４に渡すように定義される。このダミーＤＯＭオブジェクト１３により、ディジタルコンテンツの制作者は、通信端末１のＤＯＭオブジェクトのメソッドを呼び出す場合と同様にＤＯＭオブジェクト２３のメソッドを呼び出すことができる。
【００４４】
ＤＯＭオブジェクト２３は、ＤＯＭオブジェクトを内包するラッパーオブジェクトでもよく、ダミーＤＯＭオブジェクト１３は、このラッパーオブジェクトを継承したものでもよい。
【００４５】
セレクタ送信部１４１は、ダミーＤＯＭオブジェクト生成部１２から受信したセレクタを通信端末２に送信する。
【００４６】
メソッド名送信部１４２は、ダミーＤＯＭオブジェクト１３からメソッド名と引数を受信し、通信端末２に送信する。
【００４７】
なお、端末ごとの識別子や送信元の情報を送信してもよい。
【００４８】
セレクタ受信部２１１は、セレクタ送信部１４１からセレクタを受信し、ＤＯＭ探索部２２に送信する。
【００４９】
メソッド名受信部２１２は、メソッド名送信部１４２からメソッド名と引数を受信する。
【００５０】
ＤＯＭ探索部２２は、ＤＯＭツリー２４からセレクタに対応するエレメントを検索し、エレメントからＤＯＭオブジェクト２３を生成し、通信端末２のメモリに記憶させる。
【００５１】
メソッド名受信部２１２は、受信したメソッド名に対応するメソッドをＤＯＭオブジェクト２３に実行させるとともに、受信した引数をメソッドに引き渡す。これにより、メソッドが引数に基づく処理を行い、場合によっては、処理で得た返り値を返り値送信部２１３に送信する。
【００５２】
返り値送信部２１３は、返り値を通信端末１に送信する。
【００５３】
返り値受信部１４３は、返り値送信部２１３から返り値を受信する。
【００５４】
例えば、セレクタに対応するエレメントがＤＯＭツリー２４にない場合、ＤＯＭオブジェクト２３がメソッド名に対応するメソッドを実行できない場合、通信端末１に対してエラーが送信される。
【００５５】
（実施例１）
次に、具体的な例を説明する。
【００５６】
図４は、通信端末１で読み込まれるＨＴＭＬファイルとスクリプト（スクリプト１５）の例を示す図であり、図５は、通信端末２で読み込まれるＨＴＭＬファイルとスクリプトの例を示す図である。
【００５７】
図４において、ＪａｖａＳｃｒｉｐｔ（登録商標）として実行される＜ｓｃｒｉｐｔ＞＜／ｓｃｒｉｐｔ＞タグで囲まれた範囲に記述されたコードがスクリプト１５である。
【００５８】
図５において、ｒｅｍｏｔｅ．ｊｓは、処理部１６、２６の機能を外部から通信端末２に提供するものであり、つまり、通信端末２は、図１とは異なり、処理部１６、２６を有する。
【００５９】
また、本例では、セレクタを利用してＤＯＭオブジェクト２３を操作する方法として、ｊＱｕｅｒｙライブラリで提供されるセレクタＡＰＩを利用する。そのため、ＤＯＭオブジェクト２３は、ＤＯＭオブジェクトを内包するラッパーオブジェクト（ｊＱｕｅｒｙオブジェクト）である。よって、ダミーＤＯＭオブジェクト１３は、このｊＱｕｅｒｙオブジェクトを継承したものである。ｊＱｕｅｒｙライブラリも外部スクリプトとして読み込まれる。
【００６０】
図６は、ＤＯＭオブジェクト２３を操作する前の通信端末１、２の画面を示す図である。
【００６１】
図６（ａ）に示すように、通信端末１のブラウザは、図４のＨＴＭＬファイルを読み込んだ際、文字列「Ｌｏｃａｌ  Ｄｅｖｉｃｅ」と「Ｓｈｏｗ  Ｍｅｓｓａｇｅ」と表記されたボタンを表示する。
【００６２】
図６（ｂ）に示すように、通信端末２のブラウザは、図５のＨＴＭＬファイルを読み込んだ際、文字列「Ｌｏｃａｌ  Ｄｅｖｉｃｅ」を表示する。
【００６３】
図６（ａ）のボタンが押されると、図４の＄（”＃ｒｅｍｏｔｅ”）．ｒｍｔ（）が実行され、ダミーＤＯＭオブジェクト生成部１２がダミーＤＯＭオブジェクト１３を生成し、変数ｄｕｍｍｙに格納する。この場合、セレクタは、”＃ｒｅｍｏｔｅ”であり、セレクタは通信端末２に送信される。
【００６４】
このセレクタにより、図５において＜ｄｉｖ  ｉｄ＝”ｒｅｍｏｔｅ”＞と表記されたエレメントが検索され、このエレメントからＤＯＭオブジェクト２３が生成される。
【００６５】
ダミーＤＯＭオブジェクト１３は、ｊＱｕｅｒｙオブジェクトのメソッド名を継承したオブジェクトであるので、ｄｕｍｍｙはｊＱｕｅｒｙオブジェクトのメソッドであるａｐｐｅｎｄ（）を呼び出すことができる。ａｐｐｅｎｄ（）は、継承の際、本来の動作を実行しないように書き換えられており、メソッド名”ａｐｐｅｎｄ”とその引数”＜ｈ２＞Ｔｈｉｓ  ｉｓ  ｄｉｓｐｌａｙｅｄ  ｏｎ  ｔｈｅ  ｒｅｍｏｔｅ  ｄｅｖｉｃｅ＜／ｈ２＞”を返し、このメソッド名と引数は通信端末２に送信される。
【００６６】
通信端末２では、ＤＯＭオブジェクト２３が、このメソッド名に対応するメソッドを実行し、メソッドは、引数に応じた処理を行う。
【００６７】
図７は、このようにＤＯＭオブジェクト２３を操作した後の通信端末１、２の画面を示す図である。
【００６８】
図７（ａ）に示すように、通信端末１の画面はＤＯＭオブジェクト２３の操作前と同じである。
【００６９】
図７（ｂ）に示すように、通信端末１の画面には、ＤＯＭオブジェクト２３の操作の結果、文字列「Ｔｈｉｓ  ｉｓ  ｄｉｓｐｌａｙｅｄ  ｏｎ  ｔｈｅ  ｒｅｍｏｔｅ  ｄｅｖｉｃｅ」が追加されている。
【００７０】
（実施例２）
次に、別の具体的な例を説明する。
【００７１】
本実施の形態の技術を活用すれば、スマートフォンを通信端末１とし、ＰＣ（パーソナルコンピュータ）やテレビを通信端末２とし、スマートフォンでのタップ操作で、ＰＣ（パーソナルコンピュータ）やテレビの画面を操作できる。
【００７２】
図８は、ＰＣやテレビの画面とスマートフォンの画面を示す図である。
【００７３】
ＰＣ等は、動画共有サイトにアクセスしており、画面には、動画を表示する領域、動画の再生や停止を制御するコントローラ、動画を全画面表示にするボタン、関連動画を表示するボタンが表示される。
【００７４】
スマートフォンの画面には、動画の再生や停止を制御するコントローラ、動画を全画面表示にするボタン、関連動画を表示するボタンが表示される。
【００７５】
コントローラ同士、全画面表示にするボタン同士、関連動画を表示するＰＣ等とスマートフォンのボタン同士は関連づけられている。
【００７６】
例えば、スマートフォンにおいて全画面表示にするボタンを押すと、これに関連するボタン、つまりＰＣ等において全画面表示にするボタンが押されたことなり、動画が全画面表示される。
【００７７】
図９は、スマートフォン（通信端末１）で読み込まれるＨＴＭＬファイルとスクリプト（スクリプト１５）の例を示す図であり、図１０は、ＰＣ等（通信端末２）で読み込まれるＨＴＭＬファイルとスクリプトの例を示す図である。
【００７８】
図１０において、＜ｂｕｔｔｏｎ  ｔｙｐｅ＝ｂｕｔｔｏｎ  ｉｄ＝”ｆｕｌｌ”  ｏｎ  ｃｌｉｃｋ＝”ｆｕｌｌＳｃｒｅｅｎ（）”＞と表記されるエレメントは、ＰＣ等の画面における全画面表示にするボタンを示すものであり、識別するｉｄとして”ｆｕｌｌ”が割り振られている。全画面表示にするボタンを押すとｆｕｌｌＳｃｒｅｅｎと称されるメソッドが呼び出される。このメソッドは動画を全画面表示する機能を備える。
【００７９】
図９において、＜ｂｕｔｔｏｎ  ｔｙｐｅ＝ｂｕｔｔｏｎ  ｏｎ  ｃｌｉｃｋ＝”ｂｔｎＣｌｉｃｋｅｄ（）”＞と表記されるエレメントは、スマートフォンの画面における全画面表示にするボタンを示すものであり、全画面表示にするボタンを押すとｂｔｎＣｌｉｃｋｅｄと称されるメソッドが呼び出される。このメソッドは、ＰＣ等のＤＯＭオブジェクト２３を操作し、ＰＣ等の画面における全画面表示にするボタンを押すイベントを呼び出し、全画面表示を実行させる。
【００８０】
具体的には、スマートフォンの画面における全画面表示にするボタンが押されると、図９の＄（”＃ｆｕｌｌ”）．ｒｍｔ（）が実行され、ダミーＤＯＭオブジェクト生成部１２がダミーＤＯＭオブジェクト１３を生成し、変数ｄｕｍｍｙに格納する。この場合、セレクタは、”＃ｆｕｌｌ”であり、セレクタは通信端末２に送信される。
【００８１】
このセレクタにより、図１０において、＜ｂｕｔｔｏｎ  ｔｙｐｅ＝ｂｕｔｔｏｎ  ｉｄ＝”ｆｕｌｌ”  ｏｎ  ｃｌｉｃｋ＝”ｆｕｌｌＳｃｒｅｅｎ（）”＞と表記されるエレメントが検索され、このエレメントからＤＯＭオブジェクト２３が生成される。
【００８２】
ダミーＤＯＭオブジェクト１３は、ｊＱｕｅｒｙオブジェクトのメソッド名を継承したオブジェクトであるので、ｄｕｍｍｙはｊＱｕｅｒｙオブジェクトのメソッドであるｃｌｉｃｋ（）を呼び出すことができる。ｃｌｉｃｋ（）のメソッド名は、ＰＣ等に送信される。
【００８３】
ＰＣ等では、ＤＯＭオブジェクト２３が、このメソッド名に対応するメソッドであるｃｌｉｃｋ（）を実行し、メソッドは処理を行う。これにより、ＰＣ等において動画が全画面表示される。
【００８４】
以上のように、本実施の形態に係る情報処理システムによれば、通信端末２すなわち遠隔の通信端末では、通信端末に保持されたＤＯＭツリーに含まれるエレメントから生成されたＤＯＭオブジェクトのメソッドが実行されるので、不正なコードや誤ったコードが通信端末に送信される虞がなく、よってセキュリティが確保され、また、ＤＯＭオブジェクトのメソッドを実行させることができる。
【００８５】
なお、通信端末１、２を動作させるための情報処理プログラム（コンピュータプログラム）は、半導体メモリ、磁気ディスク、光ディスク、光磁気ディスク、磁気テープなどのコンピュータ読み取り可能な記録媒体に記録でき、また、インターネットなどの通信網を介して伝送させて、広く流通させることができる。
【符号の説明】
【００８６】
１、２…通信端末
１０、２４…ＤＯＭツリー
１１…セレクタ受信部
１２…オブジェクト生成部
１３…ダミーＤＯＭオブジェクト
１４、２１…通信部
１５…スクリプト
１６、２６…処理部
２２…ＤＯＭ探索部
２３…ＤＯＭオブジェクト
１４１…セレクタ送信部
１４２…メソッド名送信部
１４３…返り値受信部
２１１…セレクタ受信部
２１２…メソッド名受信部
２１３…返り値送信部
【図１】
2016031636.tif 000003
【図２】
2016031636.tif 000004
【図３】
2016031636.tif 000005
【図４】
2016031636.tif 000006
【図５】
2016031636.tif 000007
【図６】
2016031636.tif 000008
【図７】
2016031636.tif 000009
【図８】
2016031636.tif 000010
【図９】
2016031636.tif 000011
【図１０】
2016031636.tif 000012