(57)【要約】【課題】効率的に高精度なデータ放送の視聴履歴を取得する。【解決手段】視聴者が視聴したデータ放送コンテンツを視聴履歴として取得するためのデータ放送コンテンツを制作するデータ放送制作装置において、前記視聴履歴の取得するために前記データ放送コンテンツを受信する受信側の条件を設定する取得設定部と、前記取得設定部により設定された取得条件に基づき、前記視聴者に送出される前記データ放送コンテンツに前記視聴履歴を取得するためのスクリプトを付加するスクリプト付加部とを有することにより、上記課題を解決する。【選択図】        図１
2005020432.tif 000002
【特許請求の範囲】
【請求項１】
視聴者が視聴したデータ放送コンテンツを視聴履歴として取得するためのデータ放送コンテンツを制作するデータ放送制作装置において、
前記視聴履歴の取得するために前記データ放送コンテンツを受信する受信側の条件を設定する取得設定部と、
前記取得設定部により設定された取得条件に基づき、前記視聴者に送出される前記データ放送コンテンツに前記視聴履歴を取得するためのスクリプトを付加するスクリプト付加部とを有することを特徴とするデータ放送制作装置。
【請求項２】
前記スクリプト付加部は、
前記視聴履歴の取得対象である前記データ放送コンテンツにのみに前記スクリプトを付加することを特徴とする請求項１に記載のデータ放送制作装置。
【請求項３】
前記スクリプト付加部は、
前記データ放送コンテンツのページ毎に視聴回数を取得するスクリプトを付加することを特徴とする請求項１又は２に記載のデータ放送制作装置。
【請求項４】
前記スクリプト付加部は、
前記データ放送コンテンツのページ毎に前記視聴者に視聴された視聴時間を取得するスクリプトを付加することを特徴とする請求項１乃至３の何れか１項に記載のデータ放送制作装置。
【請求項５】
前記スクリプト付加部は、
前記データ放送コンテンツのページの遷移順と視聴時間とを対応付けて取得するスクリプトを付加することを特徴とする請求項１乃至４の何れか１項に記載のデータ放送制作装置。
【請求項６】
前記スクリプト付加部は、
前記データ放送コンテンツのページ内における表示内容の変更履歴を取得するスクリプトを付加することを特徴とする請求項１乃至５の何れか１項に記載のデータ放送制作装置。
【請求項７】
前記スクリプト付加部は、
前記データ放送コンテンツを受信する受信側で一時的に蓄積されてから視聴されることを意図して制作されたデータ放送コンテンツの視聴履歴を取得することを特徴とする請求項１乃至６の何れか１項に記載のデータ放送制作装置。
【請求項８】
前記スクリプト付加部は、
前記視聴者に対して視聴履歴取得の確認を行うスクリプトを付加することを特徴とする請求項１乃至７の何れか１項に記載のデータ放送制作装置。
【請求項９】
前記スクリプト付加部は、
前記データ放送コンテンツ毎に視聴履歴を取得するかしないかを受信機毎に設定する受信機識別情報を有するスクリプトを付加することを特徴とする請求項１乃至８の何れか１項に記載のデータ放送制作装置。
【請求項１０】
前記スクリプト付加部は、
受信側より前記視聴履歴を送信させるスクリプトを付加することを特徴とする請求項１乃至９の何れか１項に記載のデータ放送制作装置。
【請求項１１】
前記スクリプト付加部は、
前記データ放送コンテンツにおけるコンテンツ毎、又はコンテンツの含まれるページが切り換わる毎に前記視聴履歴を送信させるスクリプトを付加することを特徴とする請求項１乃至１０の何れか１項に記載のデータ放送制作装置。
【請求項１２】
前記スクリプト付加部は、
受信側で提示されている前記データ放送コンテンツの提示内容、又は受信側で記録されている視聴履歴を送信させるスクリプトを付加することを特徴とする請求項１乃至１１の何れか１項に記載のデータ放送制作装置。
【請求項１３】
前記スクリプト付加部は、
前記データ放送コンテンツを受信する受信側で蓄積されている視聴履歴の蓄積容量に基づいて前記視聴履歴を送信させるスクリプトを付加することを特徴とする請求項１乃至１２の何れか１項に記載のデータ放送制作装置。
【請求項１４】
前記データ放送コンテンツを送出するコンテンツ送出部を有し、
前記コンテンツ送出部は、予め設定された前記データ放送コンテンツの編成情報に基づいて、前記データ放送コンテンツの送出を行うことを特徴とする請求項１乃至１３の何れか１項に記載のデータ放送制作装置。
【請求項１５】
視聴者が視聴したデータ放送コンテンツを視聴履歴として取得するためのデータ放送コンテンツを制作するデータ放送制作方法において、
前記視聴履歴の取得するために前記データ放送コンテンツを受信する受信側の条件を設定する取得設定段階と、
前記取得設定段階により設定された取得条件に基づき、前記視聴者に送出される前記データ放送コンテンツに前記視聴履歴を取得するためのスクリプトを付加するスクリプト付加段階とを有することを特徴とするデータ放送制作方法。
【請求項１６】
前記データ放送コンテンツを送出するコンテンツ送出段階を有し、
前記コンテンツ送出段階は、予め設定された前記データ放送コンテンツの編成情報に基づいて、前記データ放送コンテンツの送出を行うことを特徴とする請求項１５項に記載のデータ放送制作方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、データ放送制作装置及びデータ放送制作方法に係り、特に、ＢＳ（Ｂｒｏａｄｃａｓｔｉｎｇ  Ｓａｔｅｌｌｉｔｅ）、ＣＳ（Ｃｏｍｍｕｎｉｃａｔｉｏｎ  Ｓａｔｅｌｌｉｔｅ）、地上波、ケーブル等を用いたデジタル放送においてデータ放送の視聴履歴を調査するために利用することができるデータ放送制作装置及びデータ放送制作方法に関する。
【０００２】
【従来の技術】
従来、放送において、いつ、誰が、どの番組を、どのくらいの時間視聴していたか等、番組に対する視聴状況を定性的なデータとして取得することは、放送番組の編成やコマーシャル提供にとって非常に重要な情報となる。
【０００３】
デジタル放送では、従来のアナログ放送では難しかった大容量のデータ放送を可能としたが、通常の番組と同様にデータ放送に対する視聴状況の定性的な把握も重要である。
【０００４】
そこで、最近では、データ放送における視聴率調査方法として、データ放送に対応した一定時間間隔で視聴放送局又は視聴番組の識別情報をその時の時刻と共に不揮発性記憶部に記録させ、更により大きな一定時間間隔で前記不揮発性記憶部に記録させたデータを、通信回線インタフェースを通じてセンターサーバーに転送させることにより視聴調査データを収集するものがある（例えば、特許文献１参照。）。
【０００５】
【特許文献１】
特開２００２−２７１２８６号公報
【０００６】
【発明が解決しようとする課題】
しかしながら、データ放送では、視聴者の操作によりコンテンツの様々なページを、所望する時間や回数に制限なく視聴することができるため、データ放送の視聴率を調査する場合においても従来のテレビジョン放送の視聴率調査のように放送時間を基準としたチャンネルだけの調査では、正確な番組の視聴履歴情報を取得することができない。
【０００７】
また、特許文献１では、一定時間間隔で視聴情報を記録しているため、視聴者がインタラクティブに操作するデータ放送の細かな視聴行動を把握しきれない。また、全てのデータ放送コンテンツに一律に、視聴率調査用の処理を埋め込む必要があるため、放送事業者間の同意が必要になると共に、実現のためのコストも高い。特に、一部のコンテンツのみについての視聴履歴を得たい場合には、この点が大きな問題になる。
【０００８】
本発明は、上記の点に鑑みなされたものであり、効率的に高精度なデータ放送視聴履歴情報を取得することができるデータ放送制作装置及びデータ放送制作方法を提供することを特徴とする。
【０００９】
【課題を解決するための手段】
上記課題を解決するために、本件発明は、以下の特徴を有する課題を解決するための手段を採用している。
【００１０】
請求項１に記載された発明は、視聴者が視聴したデータ放送コンテンツを視聴履歴として取得するためのデータ放送コンテンツを制作するデータ放送制作装置において、前記視聴履歴の取得するために前記データ放送コンテンツを受信する受信側の条件を設定する取得設定部と、前記取得設定部により設定された取得条件に基づき、前記視聴者に送出される前記データ放送コンテンツに前記視聴履歴を取得するためのスクリプトを付加するスクリプト付加部とを有することを特徴とする。
【００１１】
請求項１記載の発明によれば、スクリプトにより視聴履歴を取得するため、新たな装置構成を必要とせず、従来の受信機をそのまま使用することができるため、効率的に高精度な視聴履歴を取得することができる。
【００１２】
請求項２に記載された発明は、前記スクリプト付加部は、前記視聴履歴の取得対象である前記データ放送コンテンツにのみに前記スクリプトを付加することを特徴とする。
【００１３】
請求項２記載の発明によれば、一部のコンテンツのみについての視聴履歴を効率的に取得することができる。
【００１４】
請求項３に記載された発明は、前記スクリプト付加部は、前記データ放送コンテンツのページ毎に視聴回数を取得するスクリプトを付加することを特徴とする。
【００１５】
請求項３記載の発明によれば、データ放送コンテンツにおける詳細な視聴履歴を取得することができる。
【００１６】
請求項４に記載された発明は、前記スクリプト付加部は、前記データ放送コンテンツのページ毎に前記視聴者に視聴された視聴時間を取得するスクリプトを付加することを特徴とする。
【００１７】
請求項４記載の発明によれば、時間を基準にしたデータ放送コンテンツにおける詳細な視聴履歴を取得することができる。
【００１８】
請求項５に記載された発明は、前記スクリプト付加部は、前記データ放送コンテンツのページの遷移順と視聴時間とを対応付けて取得するスクリプトを付加することを特徴とする。
【００１９】
請求項５記載の発明によれば、データ放送コンテンツにおける詳細な視聴履歴を取得することができる。また、視聴者の視聴傾向を把握することができ、その傾向からサービス性を向上させたデータ放送を提供することができる。
【００２０】
請求項６に記載された発明は、前記スクリプト付加部は、前記データ放送コンテンツのページ内における表示内容の変更履歴を取得するスクリプトを付加することを特徴とする。
【００２１】
請求項６記載の発明によれば、データ放送コンテンツにおけるページ単位の詳細な視聴履歴を取得することができる。
【００２２】
請求項７に記載された発明は、前記スクリプト付加部は、前記データ放送コンテンツを受信する受信側で一時的に蓄積されてから視聴されることを意図して制作されたデータ放送コンテンツの視聴履歴を取得することを特徴とする
請求項７記載の発明によれば、データ放送コンテンツが、受信側で受信された後、一時的に受信機内蔵のハードディスク等に記録され、後に視聴されるような「蓄積型データ放送サービス」においても、視聴履歴を取得することができる。
【００２３】
請求項８に記載された発明は、前記スクリプト付加部は、前記視聴者に対して視聴履歴取得の確認を行うスクリプトを付加することを特徴とする。
【００２４】
請求項８記載の発明によれば、視聴者の意思に反して視聴履歴が取得されることを防ぎ、視聴者のプライバシーを尊重した上で、視聴履歴を許可した視聴者の受信機のみから視聴履歴を取得することができる。
【００２５】
請求項９に記載された発明は、前記スクリプト付加部は、前記データ放送コンテンツ毎に視聴履歴を取得するかしないかを受信機毎に設定する受信機識別情報を有するスクリプトを付加することを特徴とする。
【００２６】
請求項９記載の発明によれば、視聴履歴を取得する対象を受信機毎に設定することができ、効率的な視聴履歴の取得を行うことができる。
【００２７】
請求項１０に記載された発明は、前記スクリプト付加部は、受信側より前記視聴履歴を送信させるスクリプトを付加することを特徴とする。
【００２８】
請求項１０記載の発明によれば、効率的に視聴履歴の取得を行うことができる。また、スクリプトを用いることで、送信指示を容易に行うことができる。
【００２９】
請求項１１に記載された発明は、前記スクリプト付加部は、前記データ放送コンテンツにおけるコンテンツ毎、又はコンテンツの含まれるページが切り換わる毎に前記視聴履歴を送信させるスクリプトを付加することを特徴とする。
【００３０】
請求項１１記載の発明によれば、より詳細な視聴履歴を取得することができ、また、視聴履歴の集計を容易に行うことができる。また、取得した視聴履歴を集計して、データ放送をあらゆる観点から分析することができる。
【００３１】
請求項１２に記載された発明は、前記スクリプト付加部は、受信側で提示されている前記データ放送コンテンツの提示内容、又は受信側で記録されている視聴履歴を送信させるスクリプトを付加することを特徴とする。
【００３２】
請求項１２記載の発明によれば、詳細な視聴履歴を取得することができる。これにより、取得した視聴履歴を集計して、データ放送をあらゆる観点から分析することができる。
【００３３】
請求項１３に記載された発明は、前記スクリプト付加部は、前記データ放送コンテンツを受信する受信側で蓄積されている視聴履歴の蓄積容量に基づいて前記視聴履歴を送信させるスクリプトを付加することを特徴とする。
【００３４】
請求項１３記載の発明によれば、効率的に視聴履歴の送信を行うよう指示することができる。これにより、視聴履歴の蓄積容量が受信側の記憶容量をオーバーすることで視聴履歴データが消去されることがなく、視聴履歴を取得することができる。
【００３５】
請求項１４に記載された発明は、前記データ放送コンテンツを送出するコンテンツ送出部を有し、前記コンテンツ送出部は、予め設定された前記データ放送コンテンツの編成情報に基づいて、前記データ放送コンテンツの送出を行うことを特徴とする。
【００３６】
請求項１４記載の発明によれば、効率的なデータ放送コンテンツの送出を行うことができる。
【００３７】
請求項１５に記載された発明は、視聴者が視聴したデータ放送コンテンツを視聴履歴として取得するためのデータ放送コンテンツを制作するデータ放送制作方法において、前記視聴履歴の取得するために前記データ放送コンテンツを受信する受信側の条件を設定する取得設定段階と、前記取得設定段階により設定された取得条件に基づき、前記視聴者に送出される前記データ放送コンテンツに前記視聴履歴を取得するためのスクリプトを付加するスクリプト付加段階とを有することを特徴とする。
【００３８】
請求項１５記載の発明によれば、スクリプトにより視聴履歴を取得するため、新たな装置構成を必要とせず、従来の受信機をそのまま使用することができるため、効率的に高精度な視聴履歴を取得することができる。
【００３９】
請求項１６に記載された発明は、前記データ放送コンテンツを送出するコンテンツ送出段階を有し、前記コンテンツ送出段階は、予め設定された前記データ放送コンテンツの編成情報に基づいて、前記データ放送コンテンツの送出を行うことを特徴とする。
【００４０】
請求項１６記載の発明によれば、効率的なデータ放送コンテンツの送出を行うことができる。
【００４１】
【発明の実施の形態】
本発明は、データ放送コンテンツの視聴された時間及びコンテンツ表示内容等が示される視聴履歴を、通常放送しているデータ放送コンテンツの中に、特定の処理をスクリプトとして埋め込んで放送することにより取得を行う。
【００４２】
具体的には、データコンテンツ内に、視聴者の操作を検出する処理、検出した操作履歴を受信機メモリに蓄積保存する処理を含め、更に蓄積されたデータを通信ネットワークを用いて、視聴履歴データを必要とするデータ放送コンテンツ制作装置や集計サーバ等に送信する処理、又は履歴取得対象の視聴者（受信機）であるかどうかを判別する処理等をデータ放送制作装置にて記述することにより効率的に高精度な視聴履歴の取得を行う。
【００４３】
次に、本発明の実施の形態について、図を用いて説明する。
【００４４】
（データ放送送出装置）
図１は、本発明におけるデータ放送コンテンツ制作装置の一構成例を示す図である。図１のデータ放送コンテンツ制作装置１は、データ放送コンテンツ制作部２と、送出用コンテンツ一時蓄積部３と、視聴履歴取得条件設定部４と、視聴履歴取得スクリプト付加部５と、データ放送コンテンツ編成設定部６と、データ放送コンテンツ送出部７とを有するよう構成されている。
【００４５】
まず、データ放送コンテンツ制作部２は、視聴者に提供するデータ放送の各コンテンツの制作を行い、送出用コンテンツ一時蓄積部３に蓄積される。次に、視聴履歴取得条件設定部４は、後述する視聴履歴の取得基準に基づいて視聴履歴取得の対象とするデータ放送受信機の設定をデータ放送コンテンツ制作装置１の操作により行い、その設定情報を視聴履歴取得スクリプト付加部５に出力する。
【００４６】
ここで、データ放送編成設定部６は、送出されるデータ放送コンテンツの編成内容を設定し、その編成情報を視聴履歴取得スクリプト付加部５、及びデータ放送コンテンツ送出部７に出力する。
【００４７】
視聴履歴取得スクリプト付加部５は、データ放送コンテンツ編成設定部６により得られる編成情報に基づき、視聴履歴取得条件設定部４により得られる視聴履歴取得のためのコンテンツ内に埋め込まれる設定情報に対応した処理を、スクリプトとして作成しコンテンツ一時蓄積部３に保持されているコンテンツに付加する。
【００４８】
送出用コンテンツ一時蓄積部３に保持されたコンテンツに視聴履歴取得条件をスクリプトとして付加させることにより、受信機には特別な構成を設けることなく、高精度な視聴履歴の取得を実現することができる。なお、スクリプトの付加は、例えば、ＢＭＬ（Ｂｒｏａｄｃａｓｔ  Ｍａｒｋｕｐ  Ｌａｎｇｕａｇｅ）文書内に視聴履歴取得条件に対応したスクリプトを付加させることにより行う。
【００４９】
次に、設定情報が付加されたコンテンツは、データ放送コンテンツ送出部７へ出力される。データ放送コンテンツ送出部７は、送出用コンテンツ一時蓄積部３により得られるコンテンツ群から、データ放送コンテンツ編成設定部６により得られる編成情報に基づき、データ放送コンテンツの送出を行う。
【００５０】
上述したように、データ放送コンテンツに視聴履歴取得スクリプトを付加することにより、受信機側では、そのスクリプトに基づいて視聴履歴を蓄積させる等の処理を行うことができ、また蓄積した視聴履歴情報を取得することができる。
【００５１】
ここで、上述した視聴履歴取得条件設定部４による設定に基づく、視聴履歴取得スクリプト付加部５の処理について説明する。
【００５２】
（取得設定例１：ページ毎の視聴回数を取得する例）
まず、ページ毎の視聴回数を取得する例について説明する。この場合は、視聴履歴の取得対象であるデータ放送コンテンツを、コンテンツを構成するページ単位、例えば、ＢＭＬ文書の場合はＢＭＬ文書毎に視聴回数を取得するようスクリプトを作成する方法である。
【００５３】
ここで、上述の手続を含むＢＭＬ文書（ソースコード）の例について図を用いて説明する。図２は、ページ毎に視聴回数を取得する場合のＢＭＬ文書の一例を示す図である。なお、図２では、１コンテンツに５ページ分のカウンタが受信機側のｎｖｒａｍ（履歴保持領域）に確保される状態（ａ［０］，ａ［１］，ａ［２］，ａ［３］，ａ［４］）において、４番目（ａ［３］）のページのカウンタを１増加させるものである（図２▲１▼）。図２の例では、ＢＭＬ文書の最初に対象視聴者であるかの判断を行う文（図２▲２▼）と、４番目のページカウンタが予め設定した値（図２では、２５５）に達した場合に、視聴履歴データを取得する装置の一例である集計サーバへ送信する部分（図２▲３▼）が記述されている。また、図２▲２▼、及び図２▲３▼に呼び出される関数は別部分で定義されているものとする。
【００５４】
これにより、受信機側では、容易にページ毎の視聴回数を取得することができ、また、そのデータを集計サーバへ送信することができる。
【００５５】
（取得設定例２：ページ毎の視聴時間を取得する例）
次に、ページ毎の視聴時間を取得する例について説明する。この場合は、視聴履歴の取得対象であるデータ放送コンテンツを、コンテンツを構成するページ単位、例えば、ＢＭＬ文書の場合は、ＢＭＬ文書毎に視聴時間を取得する。
【００５６】
ここで、上述の手続を含むＢＭＬ文書（ソースコード）の例について図３を用いて説明する。図３は、ページ毎に視聴時間を取得する場合のＢＭＬ文書の一例を示す図である。図３では、図２と同様に１コンテンツに５ページ分のカウンタがｎｖｒａｍ（履歴保持領域）に確保される状態において４番目（ａ［３］）のページのカウンタの累計時間カウンタをコンテンツの視聴を開始してから終了するまでの相対時間を取得して（図３▲１▼）、既にある累計視聴時間カウンタに加算する（図３▲２▼）。
【００５７】
なお、図３の例では、ＢＭＬ文書の最初に対象視聴者であるかの判断を行う部分（図３▲３▼）と、３番目の累計視聴時間のカウンタが予め設定した時間（図３では、６００００（秒））を超えた場合に集計サーバへ送信する部分（図６▲４▼）が記述されている。また、図３▲３▼、及び図３▲４▼に呼び出される関数は別部分で定義されているものとする。
【００５８】
（取得設定例３：ページの遷移順と視聴時間を取得する例）
次に、ページの遷移順と視聴時間を取得する例について説明する。この場合は、視聴履歴の取得対象であるデータ放送コンテンツを、ページ毎で視聴開始時刻と視聴終了時刻を取得する方法である。これにより、調査対象ページ間での遷移の発生した順序と、夫々の視聴時間を取得することができる。
【００５９】
ここで、上述の手続を含むＢＭＬ文書（ソースコード）の例について図４を用いて説明する。図４は、ページ遷移順と視聴時間を取得する場合のＢＭＬ文書の一例を示す図である。ここで、図４に示すページのＩＤ値を「３」とし、視聴開始時の呼び出される関数群（図４▲１▼）と、視聴終了時に呼び出される関数群（図４▲２▼）とからなる。図４▲１▼では、最初に対象視聴者であるかの判断を行い、番組視聴開始時間を取得する（図４▲３▼）。その後、ｎｖｒａｍ（履歴保持領域）から今まで格納していた履歴データを読み出し、そこに取得した番組視聴開始時間を追記する（図４▲４▼）。なお、履歴保持領域におけるデータの記憶容量が予め設定された容量を越えた場合（図４では、９５０（バイト））に集計サーバへ送信する部分（図４▲５▼）が記述されている。
【００６０】
一方、視聴終了時（図４▲２▼）は、まず、対象視聴者であるかの判定を行い、その後、視聴履歴の取得対象であるページへの遷移かどうかを判定する。ここで、対象ページへの遷移であれば、終了時間を格納する必要がない。対象ページでない場合は、視聴者が取得対象ページの視聴を終了したと判断し、終了時間の取得を行う（図４▲６▼）。その後、ｎｖｒａｍ（履歴保持領域）から今まで格納していた履歴データを読み出し、そこに取得した番組視聴開始時間を追記する（図４▲７▼）。なお、履歴保持領域におけるデータの記憶容量が予め設定された容量を越えた場合（図４では、９５０（バイト））に集計サーバへ送信する部分（図４▲８▼）が記述されている。
【００６１】
このように、取得対象ＢＭＬ文書以外のＢＭＬ文書へ遷移する場合や、受信機電源を切る操作が行われた場合や、他の放送チャンネルが選局された場合を検知するため、ＢＭＬ文書を視聴終了するときに必ず実行されるスクリプト（ｏｎｕｎｌｏａｄイベントに対応する関数）において、当該ＢＭＬ文書の終了する原因が、調査対象文書への遷移であるかどうかを判定し、調査対象文書への遷移でない場合には、調査対象文書以外への遷移を表す値であるＩＤｘ（図４では、０ｘｆｆｆｆ）と視聴終了時刻のデータをｎｖｒａｍ内の履歴に追記するという手続きを記述する。
【００６２】
具体的には、取得対象文書へ遷移を行う場合には特定のフラグ変数に値をセットし、ｏｎｕｎｌｏａｄイベントから呼び出される関数にて判定基準となるようにする（図４▲９▼）。なお、集計サーバへ視聴履歴データを送信した後、それまで保持されていた履歴データはリセットする。
【００６３】
（取得設定例４：ページ内の表示変更を取得する例）
次に、ページ内の表示変更を取得する例について説明する。この場合は、視聴履歴の取得対象であるデータ放送コンテンツを、ページ内での表示内容変更を取得する方法である。具体的には、スクリプト処理等によって表示内容が変更されたことについて検知し履歴を取得する。
【００６４】
ここで、ＢＭＬ文書による上述したページ内での表示内容を取得する場合の記述例について図を用いて説明する。図５は、ページ内での表示内容を取得する場合のＢＭＬ文書の一例を示す図である。図５の例では、視聴履歴取得と関係ない通常のコンテンツ動作である画面表示を変更するための処理等がＤＯＭ等を使用して記述される（図５▲１▼）。次に、上述したＢＭＬと同様に対象視聴者であるかどうかの判定を行い（図５▲２▼）、次に、ページＩＤ（ＰａｇｅＩＤ）を設定するが、ここでは、ページ内で今までされていた表示状態と異なる表示状態となった場合に新たにＩＤ値をセットする。このページでは、ｎ個目の配列から追加して割り当てられるＩＤであるため、変数ｍにｎを加算した値（ｍ＋ｎ）を新たなページＩＤとする（図５▲３▼）。
【００６５】
その後、ｎｖｒａｍ（履歴保持領域）から今まで格納していたページＩＤに対応する履歴データを読み出し、そこに取得した番組視聴回数を１増加する（図５▲４▼）。なお、履歴保持領域におけるデータの記憶容量が予め設定された容量を越えた場合（図５では、２５５（バイト））に集計サーバへ送信する部分（図５▲５▼）を記述している。
【００６６】
これにより、ページ内での表示変更の履歴を取得することができ、視聴履歴情報を詳細に記録することができる。
【００６７】
（取得設定例５：取得例１〜４の組合せにより取得する例）
次に、上述した取得設定例１〜４で示した方法を適宜組み合わせることによって、調査対象ページ間で発生した遷移の回数を遷移元別や遷移先別に集計する等、より詳細な履歴を取得することも可能である。
【００６８】
なお、上述のような視聴履歴の取得設定の他に、受信機側から通信ネットワーク等を用いて視聴履歴情報を集計する場合に、受信機側での通信プロトコルについてもスクリプトとしてＢＭＬで設定することもできる。ここで、送信設定例について、いくつかの例をあげて説明する。
【００６９】
（送信設定例１：ＢＡＳＩＣ手順通信ＡＰＩを用いての送信）
データ放送受信機に設けられるモデムを介し、ＢＭＬのＢＡＳＩＣ手順通信ＡＰＩを使用して、サーバへの接続、必要な場合には個人認証や暗号化、保持している履歴データの送信、接続の切断を行う。
【００７０】
ここで、ＢＡＳＩＣ手順を使用して送信される場合のＢＭＬ記述例を図６に示す。図６では、受信者ＩＤを送信し（図６▲１▼）、その後履歴データの送信を行う（図６▲２▼）。
【００７１】
（送信設定例２：ＴＣＰ／ＩＰ手順通信ＡＰＩを用いての送信）
また同様に、データ放送受信機に設けられるモデムにおけるインターネット接続機能を介して、ＢＭＬのＴＣＰ／ＩＰ通信ＡＰＩを使用して、サーバへの接続、必要な場合には個人認証や暗号化、保持している履歴データの送信、接続の切断を行う。この場合、データ放送受信機の設定によっては、サーバへの接続、切断は自動的に行われる場合もある。
【００７２】
ここで、ＴＣＰ／ＩＰ手順を使用して送信される場合のＢＭＬ記述例を図７に示す。図７では、集計サーバへの接続をＢＭＬに記載された条件等に基づいて自動で接続を行い（図７▲１▼）、その後履歴データの送信を行う（図７▲２▼）。
【００７３】
（送信設定例３：ＳＭＴＰプロトコルを用いての送信）
受信機側に設けられているメール送信機能を使用して、ある特定のアドレスに対して、保持している履歴データを送信する。必要な場合には、データの暗号化を行ってから送信する。ＳＭＴＰプロトコルを使用するため、集計サーバへの瞬間的な輻輳による過大な負荷を回避できることが期待できる。
【００７４】
ここで、ＳＭＴＰプロトコルを使用して送信される場合のＢＭＬ記述例を図８に示す。図８では、集計サーバへの接続をＢＭＬに記載された条件等に基づいて自動で接続を行い（図８▲１▼）、その後、メール本文中に履歴データをセットし、予め設定されたメールアドレスに対して送信を行う（図８▲２▼）。
【００７５】
なお、上述した送信方法以外でも、回線を用いて受信機内のデータを送信できる機能が備わっているデータ放送受信機であれば、どのようなデータ放送受信機でも履歴データの送信が可能である。
【００７６】
また、受信機側からの視聴履歴を集計するために視聴履歴情報を送信する送信タイミングにおいても、スクリプトを用いて設定することが可能であるが、詳細な説明は、受信機における動作説明にて説明する。なお、以下に説明するデータ放送受信機の機器構成は、既存の受信機と同じ構成であり、後述する受信機の視聴履歴取得動作は全て視聴履歴取得スクリプト付加部５で付加されるスクリプト処理によって可能となる。
【００７７】
（データ放送受信機）
図９は、データ放送受信機の一構成例を示す図である。図９のデータ放送受信機１０は、データ放送受信部１１と、データ放送コンテンツ実行エンジン部１２と、ＵＩ部１３と、双方向通信部１４と、データ放送コンテンツ蓄積部１５と、データ放送コンテンツ実行用ワークメモリ部１６と、不揮発記憶部１７と、大容量蓄積部１８とを有するよう構成されている。
【００７８】
データ放送受信部１１は、デジタル信号復調手順、ＭＰＥＧ２―ＴＳ分離手順、データカルーセル受信手順等によりデータ放送の受信を行い、データ放送コンテンツ実行エンジン部１２は、ＣＰＵ、データ放送ブラウザから構成されデータ放送コンテンツの提示内容を制御する。ＵＩ部１３は、表示部及び入力部等のユーザインタフェース部分であり、双方向通信部１４は、インターネット等の通信ネットワーク１９を介してデータの送受信を行うことができる。
【００７９】
また、記憶部としては、データ放送コンテンツをそのまま蓄積するためのデータ放送コンテンツ蓄積部１５と、データ放送コンテンツ実行中のコンテンツに関する情報の一時的な記録を行うデータ放送コンテンツ実行用ワークメモリ部１６と、番組を視聴する際に使用されるためのｎｖｒａｍ（ＮｏｎｖｏｌａｔｉｌｅＲＡＭ）等のようなメモリからなる不揮発性記憶部１７と、ＨＤＤ（ＨａｒｄＤｉｓｋ  Ｄｒｉｖｅ）からなる大容量蓄積部１８とを有している。
【００８０】
次に、データ放送受信機１０における視聴履歴取得手順についてフローチャートを用いて説明する。図１０は、本発明における視聴履歴取得手順の一例のフローチャートを示す図である。
【００８１】
まず、放送局（データ放送コンテンツ制作装置）から送信された調査対象のコンテンツを含むデータ放送コンテンツ群をデータ放送受信機１０で受信する（Ｓ０１）。受信したデータ放送コンテンツは、データ放送コンテンツ蓄積部１５又は大容量蓄積部１８に蓄積される。視聴者（利用者）は、ＵＩ部１３から視聴したいデータ放送の視聴選択指示を行い、データ放送コンテンツ実行エンジン部１２は、その指示信号に基づきデータ放送コンテンツ蓄積部１５又は大容量蓄積部１８から該当するデータコンテンツを取得してデータ放送コンテンツ実行用ワークメモリ部１６に記録させながら、ＵＩ部１３に設けられているモニタ等からデータ放送コンテンツの提示が開始される。
【００８２】
この時、データ放送実行エンジンコンテンツ部１２は、視聴者が選択したコンテンツが、視聴履歴の取得対象ページであるかを受信したデータ放送コンテンツに付加された視聴履歴スクリプトにより判断し（Ｓ０２）、取得対象で無い場合は（Ｓ０２において、ＮＯ）、通常の視聴させるためにＵＩ部１３のモニタ等の出力部により、コンテンツを提示する（Ｓ０３）。また、視聴者によりページが遷移されれば（Ｓ０４）、再びＳ０２に戻り取得対象ページかの判断が行われる。
【００８３】
また、Ｓ０２において、取得対象ページである場合は（Ｓ０２において、ＹＥＳ）、視聴者が調査対象者であるかどうか、又はデータ放送受信機１０が調査対象の受信機であるかどうかの認証を行う（Ｓ０５）。なお、Ｓ０５のステップは実行されなくてもよく、必要に応じて行うよう設定することができる。
【００８４】
次に、コンテンツをＵＩ部１３から視聴者に出力させると共に視聴しているコンテンツやスクリプトの内容を取得し、揮発性メモリであるデータ放送コンテンツ実行用ワークメモリ部１６、あるいは不揮発記録部１７に視聴された時刻と共に保持し、必要に応じて通信ネットワーク１９上に設置されている集計サーバへ蓄積されている視聴履歴情報の送信を行う（Ｓ０６）。
【００８５】
この視聴内容をある程度の時間蓄積することで、視聴履歴を取得することができる。なお、視聴履歴データは、視聴者の視聴操作に従って視聴履歴を取得するが、操作に基づく視聴内容の取得方法については後述する。また、視聴履歴の保持方法についても後述する。
【００８６】
なお、視聴履歴を集計サーバへ送信する方法としては、例えば、データ放送コンテンツ実行用ワークメモリ部１６（揮発性メモリ）に保持されている場合は、データ放送の視聴を終了する直前、又は調査対象コンテンツ以外のコンテンツに遷移する直前に、保持している視聴履歴データを集計サーバに送信する。また、不揮発性記憶部１７に保持されている場合は、一定の期間毎、又は履歴保持領域の容量が予め設定された容量を越えた場合等の条件に基づいて、保持している履歴データを双方向通信部１４から通信ネットワーク１９を介して集計サーバに送信する。
【００８７】
次に、視聴者の選択指示等によりコンテンツ内のページが遷移されると（Ｓ０７）、取得対象ページであるかの判断を行う（Ｓ０８）。取得対象ページである場合は（Ｓ０８において、ＹＥＳ）、Ｓ０６に戻り視聴履歴の取得を行う。また、取得対象ページでなかった場合は（Ｓ０８において、ＮＯ）、切り換わった時間と共に、今まで視聴者が視聴していたコンテンツの内容を視聴情報として不揮発記憶部１７へ記録を行う（Ｓ０９）。
【００８８】
次に、コンテンツが終了しているかを判断し（Ｓ１０）、終了した場合は（Ｓ１０において、ＹＥＳ）、処理を終了する。また、終了していない場合は（Ｓ１０において、ＮＯ）、Ｓ０２に戻りコンテンツ毎に構成される複数のページについて、継続して視聴履歴を取得するための処理を行う。これによりコンテンツ毎に階層構造を有する各ページについて、視聴履歴を取得する対象とするか否かを設定することができると共に、コンテンツ内の視聴者の視聴情報を詳細に取得することができる。
【００８９】
ここで、本発明における視聴履歴の取得内容について、例をあげて説明する。
【００９０】
（取得例１：ページ毎の視聴回数を取得する例）
まず、ページ毎の視聴回数を取得する例について説明する。ここで、視聴回数を取得する手順についてフローチャートを用いて説明する。
【００９１】
図１１は、本発明におけるページ毎に視聴回数を取得する手順の一例を示すフローチャートである。
【００９２】
最初に、取得対象となるページの総数をＮｐページとするとき、予めデータ放送コンテンツ実行用ワークメモリ部１６や不揮発記憶部１７等の履歴保持領域にＮｐ個分のカウンタ領域を確保しておく。このとき、一度に保持可能なページ毎の最高カウント数をｍとしたとき、数値ｍを表すのに必要なビット数をＮｍとすると、最低でもＮｍ×Ｎｐビット分の領域を用意しておく必要がある。これは、Ｎｍビットの要素をＮｐ個持つ配列で表すことができる。
【００９３】
また、取得方法としては、調査対象とするページ全てに特定の手続き言語が記述されており、視聴者がページを視聴する度に該当するページのカウンタ値を増加させる。
【００９４】
視聴者により取得対象ページの視聴が開始されると（Ｓ１１）、ＢＭＬ文書を視聴したときに必ず実行されるスクリプトコード（グローバルコード、またはｏｎｌｏａｄイベントに対応する関数）に記述されている配列要素ｎのカウンタ値を、履歴保持領域内に設けられている配列中の対応領域部分から読み出し（Ｓ１２）、その値を１増加（Ｓ１３）し、再び不揮発性記憶部１７の同じ位置に値を書き戻すという手続き行う（Ｓ１４）。
【００９５】
次に、集計サーバに履歴データを送信する必要があるかを判断し（Ｓ１５）、送信しない場合は（Ｓ１５において、ＮＯ）、処理を終了し、送信する場合は（Ｓ１５において、ＹＥＳ）、双方向通信部１４から通信ネットワーク１９を介して集計サーバに履歴データを送信する処理を行い（Ｓ１６）、処理を終了する。なお、送信した配列要素ｎのカウンタ値は０にリセットする。また、集計サーバへの履歴データ送信は、該当する１ページ分の履歴データのみを送信するか、それまでに集計された全ての調査対象ページ分の履歴データを送信する。
【００９６】
これにより、容易にページ毎の視聴回数を取得することができ、また、そのデータを集計サーバへ送信することができる。
【００９７】
（取得例２：ページ毎の視聴時間を取得する例）
次に、ページ毎の視聴時間を取得する例について説明する。ここで、視聴時間を取得する手順についてフローチャートを用いて説明する。図１２は、本発明におけるページ毎に視聴時間を取得する手順の一例を示すフローチャートである。
【００９８】
最初に、調査対象となるページの総数をＮｐページとするとき、データ放送コンテンツ実行用ワークメモリ部１６や不揮発記憶部１７等の記憶デバイスに予め履歴保持領域にＮｐ個分の時間保持領域を確保しておく。このとき、一度に保持可能なページ毎の最高累計視聴時間をｔ秒、視聴時間を測定する際の最小単位をｕ秒としたとき、ｔ／ｕを表すのに必要なビット数をＮｔｕとすると、最低でもＮｔｕ×Ｎｐビット分の領域を用意しておく必要がある。これは、Ｎｔｕビットの要素をＮｐ個持つ配列で表すことができる。
【００９９】
また、取得方法としては、取得対象とするページ全てに特定の手続き言語が記述されており、視聴者がページを視聴する度に、その開始から終了までの視聴時間を、それまでに保持されていた累計視聴時間に加算する。
【０１００】
視聴者により取得対象ページの視聴が開始されると（Ｓ２１）、ＢＭＬ文書を視聴したときに必ず実行されるスクリプトコード（グローバルコード又はｏｎｌｏａｄイベントに対応する関数）により、ページ視聴開始時刻を履歴保持領域にある変数ａに格納し（Ｓ２２）、ＵＩ部１３からコンテンツを提示して視聴者にページを視聴させる（Ｓ２３）。
【０１０１】
次に、ＢＭＬ文書を視聴終了するときに必ず実行されるスクリプトコード（ｏｎｕｎｌｏａｄイベントに対応する関数や、他文書へリンクするボタンに指定されたｏｎｃｌｉｃｋイベントに対応する関数）により判断し、そのときの時刻を取得して履歴保持領域にある変数ｂに格納する（Ｓ２４）。
【０１０２】
更に、履歴保持領域内の累計視聴時間の読み出しを行い（Ｓ２５）、視聴時間Ｔｂａを変数ｂと変数ａの差分（ｂ−ａ）により算出し、読み出したＢＭＬに対応する累計時間に視聴時間Ｔｂａを加算して（Ｓ２６）、履歴保持領域の同じ位置に値を書き戻すという手続を記述する（Ｓ２７）。
【０１０３】
次に、集計サーバに履歴データを送信する必要があるかを判断し（Ｓ２８）、送信しない場合は（Ｓ２８において、ＮＯ）、処理を終了し、送信する場合は（Ｓ２８において、ＹＥＳ）、双方向通信部１４から通信ネットワーク１９を介して集計サーバに履歴データを送信する処理を行い（Ｓ２９）、処理を終了する。なお、送信した直後、送信済みの累計時間値を０にリセットする。また、集計サーバへの履歴データ送信は、該当する１ページ分の履歴データのみを送信するか、それまでに集計された全ての調査対象ページ分の履歴データを送信することができる。
【０１０４】
ここで、ページの実質的な視聴時間を取得する例について図を用いて説明する。
【０１０５】
図１３は、ページ単位の視聴時間の取得に関する一例の図である。図１３では、ページＡ，Ｂ，Ｃの３ページについての視聴時間を時間時間軸ｔに基づいて算出する。なお、図１３において、ａはページ描画開始地点を示し、ｂはページ描画終了地点（実質的な視聴時間の開始地点）を示す。更に、ｃは視聴者によるページ遷移操作された地点（実質的な視聴時間の終了地点）を示し、ｄはページ表示の終了又はデータ提示終了を示す。
【０１０６】
ここで、コンテンツの実質的な視聴時間は、あるページが画面上での初期描画処理を完了した瞬間から、視聴者が他のページへの遷移を行う意図を持ってボタンを選択する等の操作を行った瞬間までの時間であると考えられる。
【０１０７】
したがって、図１３では、ページＡの視聴時間は、ｔ２−ｔ１で算出することができ、同様にページＢはｔ４−ｔ３、ページＣはｔ６−ｔ５で算出することができる。
【０１０８】
ここで、ＢＭＬの場合は、視聴開始時刻をｏｎｌｏａｄイベントに対応する関数の先頭で行い、視聴終了時刻を他文書へリンクするボタンに指定されたｏｎｃｌｉｃｋイベントやｏｎｋｅｙｄｏｗｎイベントに対応する関数の先頭で行うことで、この実質的な視聴時間をより正確に取得することが可能である。
【０１０９】
これにより、容易にページ毎の視聴時間を取得することができ、また、そのデータを集計サーバへ送信することができる。
【０１１０】
（取得例３：ページの遷移順と視聴時間を取得する例）
次に、ページの遷移順と視聴時間を取得する例について説明する。ここで、遷移順と視聴時間を取得する手順についてフローチャートを用いて説明する。図１４は、本発明における遷移順と視聴時間を取得する手順の一例を示すフローチャートである。
【０１１１】
最初に、取得対象のページ総数をＮｐページとするとき、予め各ページに固有のＩＤ値（ＩＤ１〜ＩＤｎｐ）を割り当てておく。更に、調査対象ページ以外のページであること示すＩＤ値（ＩＤｘ）を用意しておく。取得したい時刻の単位に応じて、その時刻を表現するのに必要なビット数をＢｔとするとき、値（Ｎｐ＋１）を表すのに必要なビット数Ｂｎｐとして（Ｂｔ＋Ｂｎｐ）ビットが１回のページ視聴の記録単位となる。このとき、一度に保持可能な履歴データ数をＮｒｅｃとした場合、（Ｂｔ＋Ｂｎｐ）×Ｎｒｅｃビット分の領域をデータ放送コンテンツ実行用ワークメモリ部１６又は不揮発記憶部１７等の履歴保持領域として用意しておく必要がある。
【０１１２】
また、取得方法としては、取得対象とするページ全てに特定の手続きが記述されており、遷移が発生するたびに遷移先のページのＩＤ値と遷移発生時刻を保持する。
【０１１３】
視聴者が取得対象ページの視聴が開始されると（Ｓ３１）、ＢＭＬ文書を視聴したときに必ず実行されるスクリプトコード（グローバルコード又はｏｎｌｏａｄイベントに対応する関数）に、ページ視聴開始時刻を履歴保持領域にある変数Ｔｓに格納し（Ｓ３２）、更に変数値ＴｓとページのＩＤ値（ＩＤｎ）を履歴保持領域に追加し（Ｓ３３）、ＵＩ部１３からコンテンツを提示して視聴者にページを視聴させる（Ｓ３４）。
【０１１４】
次に、ＢＭＬ文書を視聴終了するときに必ず実行されるスクリプトコード（ｏｎｕｎｌｏａｄイベントに対応する関数や、他文書へリンクするボタンに指定されたｏｎｃｌｉｃｋイベントに対応する関数）によりページの視聴が終了しページが遷移した際に、取得対象ページへの遷移かを判断する（Ｓ３５）。取得対象ページである場合は（Ｓ３５において、ＹＥＳ）、Ｓ３２に戻り時刻の取得を行う。また、取得対象ページでない場合は（Ｓ３５において、ＮＯ）、その時点の時刻を取得して変数Ｔｅに格納し（Ｓ３６）、更に変数ＴｅとＩＤ値（ＩＤｘ）を履歴保持領域に追加する（Ｓ３７）。
【０１１５】
つまり、取得対象ページ間での遷移の場合、遷移元の視聴終了時刻と遷移先の視聴開始時刻は同時とみなせるため、遷移先のＩＤ値と遷移発生時刻（すなわち視聴開始時刻）を保持するのみで十分である。取得対象ページ以外のページに遷移する場合や、データコンテンツの視聴が終了される場合には、取得対象ページ外であることを示す値（ＩＤｘ）とその遷移発生時刻（すなわち視聴終了時刻）を保持する。
【０１１６】
次に、集計サーバに履歴データを送信する必要があるかを判断し（Ｓ３８）、送信しない場合は（Ｓ３８において、ＮＯ）、処理を終了し、送信する場合は（Ｓ３８において、ＹＥＳ）、双方向通信部１４から通信ネットワーク１９を介して集計サーバに履歴データを送信する処理を行い（Ｓ３９）、処理を終了する。なお、送信した後、それまで保持されていた履歴データはリセットする。
【０１１７】
具体的な例としては、ＢＭＬの場合、ＢＭＬ文書を視聴開始したときに必ず実行されるスクリプト（グローバルコード又はｏｎｌｏａｄイベントに対応する関数）に、不揮発記憶部１７から履歴保持領域の内容を読み出し、読み出した内容の末尾に視聴中のＢＭＬ文書のＩＤ値と視聴開始時刻のデータを追加し、再び不揮発記憶部１７の同一領域に書き込むという手続きを記述する。
【０１１８】
（取得例４：ページ内の表示変更を取得する例）
次に、ページ内の表示変更を取得する例について説明する。ここで、ページ内の表示変更を取得する手順について説明する。最初に、調査対象のページの各々において、ページ内での表示状態毎に、その状態を表すＩＤ値を割り当てておく。このＩＤ値の使用と、上述の取得例１〜３の方法を組み合わせることによって、その表示状態が視聴された回数、その表示状態での視聴時間、その表示状態への遷移順と視聴時間を取得することができる。
【０１１９】
ページ内で表示状態が変更される場合、コンテンツ内部には必ず変更を行うための手続き記述が存在する。その手続きの直前及び直後に取得例１〜３に示した方法と同様な手順を記述することによってページ内での表示内容変更履歴を取得できる。
【０１２０】
具体的には、ＢＭＬの場合、ページ内で表示状態が変更される際には、必ずスクリプト処理によってＤＯＭ（Ｄｏｃｕｍｅｎｔ  Ｏｂｊｅｃｔ  Ｍｏｄｅ）のＡＰＩ（Ａｐｐｌｉｃａｔｉｏｎ  Ｐｒｏｇｒａｍ  Ｉｎｔｅｒｆａｃｅ）が呼びだされ画面提示内容が書き換えられる。その一連のスクリプト処理の直前、もしくは直後に、取得例１〜３に示したような、履歴保持領域から履歴データを読み出し、更新し、再び書き戻すという手続きを記述することによって、ページ内での表示状態変更の履歴を保持することが可能である。
【０１２１】
これにより、ページ内での表示変更の履歴を取得することができ、視聴履歴情報を詳細に記録することができる。
【０１２２】
（取得例５：取得例１〜４の組合せにより取得する例）
次に、上述した取得例１〜４で示した方法を適宜組み合わせることによって、調査対象ページ間で発生した遷移の回数を遷移元別や遷移先別に集計する等、より詳細な履歴を取得することも可能である。
【０１２３】
また、上述の取得例４の方法を使って、ページ内での視聴者の操作履歴を、誤操作等も含めて全て逐一記録することで、データ放送コンテンツの構成が視聴者にとって使い易いか等を分析するためのデータを取得することも可能である。
【０１２４】
（取得例６：蓄積データコンテンツの視聴率を取得する例）
データ放送コンテンツが、受信後、一時的に受信機内蔵のハードディスク等に記録され、後に視聴されるような「蓄積型データサービス」においても、上述した取得例１〜５に示す取得方法で視聴履歴の取得が可能である。この場合、時間経過に応じて内容変更されるコンテンツについてはページ単位だけでなく時間軸に対してもユニークなＩＤ値を割り振ることで実現できる。
【０１２５】
（取得例７：マルチタスク処理可能なデータコンテンツ実行環境における視聴履歴の取得）
次に、マルチタスク処理可能なデータコンテンツ実行環境における視聴履歴の取得方法について説明する。
【０１２６】
ＤＶＢ−ＭＨＰ（Ｄｉｇｉｔａｌ  Ｖｉｄｅｏ  Ｂｒｏａｄｃａｓｔｉｎｇ―Ｍｕｌｔｉｍｅｄｉａ  Ｈｏｍｅ  Ｐｌａｔｆｏｒｍ）等で採用されているアプリケーション実行エンジン方式によるデータ放送の場合、１台のデータ放送受信機内で同時に、複数のデータ放送コンテンツを実行可能な場合がある。このような場合に、上述した実施例に示したＢＭＬでの記述例のように通常のデータ放送コンテンツの中に履歴取得用のスクリプトを記述する必要はなく、視聴者から意識されない、履歴取得専用のアプリケーション（データ放送コンテンツ）を放送し、常にバックグラウンドで動作するように構成することによって、通常のデータ放送コンテンツに変更を加えることなしに視聴履歴が取得し、集計サーバに送信することができる。
【０１２７】
ここで、上述した視聴履歴の取得例を図を用いて説明する。図１５は、アプリケーションによる視聴履歴の取得手順を示す一例のフローチャートである。
【０１２８】
図１５において、データ放送受信機は、アプリケーションＡ，Ｂ，Ｃ，Ｄを並列に起動させることができる。ここで、アプリケーションＤが視聴履歴取得用のアプリケーションであるとすると、アプリケーションＡ，Ｂ，Ｃの視聴状況をバックグラウンドで監視を行い、視聴者の視聴履歴を容易に取得することができる。
【０１２９】
次に、上述した視聴履歴データの記録保持方法についていくつか例をあげて説明する。
【０１３０】
（保持例１：ＲＡＭ領域に保持）
まず、データ放送コンテンツ実行用ワークメモリ部１６で示す揮発性メモリであるＲＡＭに保持する方法である。具体的にはＢＭＬの場合、スクリプトコード内の変数に保持し、文書間遷移時には文書間で共有可能なＵｒｅｇ変数を用いてデータを引き継ぐことができる。
【０１３１】
（保持例２：不揮発性メモリ領域に保持）
次に、不揮発記憶部１７で示すｎｖｒａｍ等の不揮発性メモリ領域に保持する方法である。具体的にはＢＭＬの場合、ｎｖｒａｍ領域にアクセスする拡張ＡＰＩ：ｗｒｉｔｅＰｅｒｓｉｓｉｔｅｎｔＡｒｒａｙ（）やｒｅａｄＰｅｒｓｉｓｔｅｎｔＡｒｒａｙ（）を用いて読み出しおよび書き込みを行う。
【０１３２】
（保持例３：ハードディスクに保持）
これは、大容量蓄積部１８で示す大容量な記録装置であるハードディスク等に保持する方法である。ハードディスク内蔵型のデータ放送受信機の場合にこの方法が可能であり、大容量データの記録が可能なため、詳細な視聴履歴データを長期間分保持しておくことが可能である。
【０１３３】
具体的にはＢＭＬの場合、受信機ハードディスクにアクセスする拡張ＡＰＩであるｗｒｉｔｅＡｒｒａｙ（）やｒｅａｄＡｒｒａｙ（）等を用いて読み出しおよび書き込みを行う。
【０１３４】
（保持例４：可搬型記憶デバイスに保持）
これはデータ放送受信機に脱着可能な、メモリカード等の可搬型記憶デバイスに保持する方法である。具体的には、上述の保持例３に準ずるものとなる。この場合、視聴者個人がメモリカードを常時携帯することによって、複数の受信機で視聴する場合にも、１つ（１人）の視聴履歴として記録保持することが可能である。また１台の受信機を複数人で使用している場合に、個人毎に視聴履歴を取得することも可能である。なお、可搬型記憶デバイスに対してデータの読み出し、及び書き出しを行うドライブはＵＩ部１３に設けることができる。
【０１３５】
（保持例５：不揮発性メモリと揮発性メモリの組合せによる保持）
これはｎｖｒａｍ等の不揮発性メモリに対して書き込みを頻繁に行うことは、不揮発性メモリの特性によりその寿命を縮めることになるため望ましくない。このため、不揮発性メモリを使用する場合は、調査対象コンテンツの視聴終了前の最終的な記録のみを不揮発性メモリに対して行い、調査対象コンテンツ視聴中はＲＡＭに保持するという方法を取ることによって可能な限り書き込み回数を減らすことが有効である。
【０１３６】
ここで、上述の保持例５における保持手順についてフローチャートを用いて説明する。図１６は、不揮発性メモリと揮発性メモリの組合せによる保持手順を示す一例のフローチャートである。
【０１３７】
まず、視聴者により取得対象ページの視聴が開始されると（Ｓ４１）、ＢＭＬ文書を視聴したときに必ず実行されるスクリプトコード（グローバルコード又はｏｎｌｏａｄイベントに対応する関数）により、ページ視聴データの格納領域をｎｖｒａｍ（履歴保持領域）から読み出しを行うが、この際ＲＡＭに格納領域を設定し、そこに履歴データの書き出しを行う（Ｓ４２）。
【０１３８】
次に、視聴履歴に関する更新がある場合は、ＲＡＭから読み出しを行い、再度ＲＡＭの同じ位置に値を書き戻し（Ｓ４３）、ＵＩ部１３からコンテンツを提示しして視聴者にページを視聴させる（Ｓ４４）。
【０１３９】
次に、ＢＭＬ文書を視聴終了するときに必ず実行されるスクリプトコード（ｏｎｕｎｌｏａｄイベントに対応する関数や、他文書へリンクするボタンに指定されたｏｎｃｌｉｃｋイベントに対応する関数）によりページの視聴が終了しページが遷移した際に、取得対象ページへの遷移かを判断する（Ｓ４５）。取得対象ページである場合は（Ｓ４５において、ＹＥＳ）、Ｓ４３に戻り、上述の処理を繰り返し行う。また、取得対象ページでない場合は（Ｓ４５において、ＮＯ）、ＲＡＭに格納されていた履歴データを履歴保持領域（ｎｖｒａｍ）に出力する（Ｓ４６）。これにより、履歴保持領域の使用回数を削減することができ、効率的にメモリを利用することができる。なお、上述の保持例にて記載のＲＡＭ、及びｎｖｒａｍは、データ放送コンテンツ実行用ワークメモリ部１６、及び不揮発記憶部１７に対応している。
【０１４０】
次に、視聴履歴データを送信するタイミングの例について説明する。
【０１４１】
（送信タイミング例１：視聴対象コンテンツ群の視聴を終了するタイミングで集計サーバに送信）
まず、視聴対象コンテンツ群の視聴を終了するタイミングで集計サーバに送信する方法について説明する。
【０１４２】
この方法では、履歴取得対象ページ群から出るとき、つまり、取得対象ページ以外のページに遷移する場合、データ放送の視聴が終了する場合、他のチャンネルが選局される場合、及びデータ放送受信機１０の電源がＯＦＦにされる場合に、その直前に集計サーバに送信する。また、この方法では、視聴履歴データを不揮発性メモリに保持しておく必要がないため、受信機のＲＡＭ領域を十分に活用して高速動作が期待でき、より柔軟なコンテンツ記述が可能である。
【０１４３】
具体的には、履歴取得対象ページ以外へのページへのリンクが選択された場合に実行されるスクリプト（履歴取得対象外ページへのｌａｕｎｃｈＤｏｃｕｍｅｎｔ関数等）の直前部分に、または、データ放送の視聴が終了するか受信機の電源がＯＦＦになるか他局への選局がされた場合に実行されるスクリプト（ｏｎｕｎｌｏａｄイベントに関連付けられた関数）に、上述した送信例１〜３の方法によってデータの送信を行う。
【０１４４】
ここで、上述の送信手順についてフローチャートを用いて説明する。
【０１４５】
図１７は、本発明における送信タイミングの第１の送信手順を示すフローチャートである。
【０１４６】
視聴者により取得対象ページの視聴が開始されると（Ｓ５１）、上述の取得例１〜７に示したような方法でページ視聴履歴の取得を行い、上述の保持例１〜５に示すような方法で視聴履歴情報の記録を行う（Ｓ５２）。
【０１４７】
次に、ＢＭＬ文書を視聴終了するときに必ず実行されるスクリプトコード（ｏｎｕｎｌｏａｄイベントに対応する関数や、他文書へリンクするボタンに指定されたｏｎｃｌｉｃｋイベントに対応する関数）により、ページの視聴が終了しページが遷移した際に、取得対象ページへの遷移かを判断する（Ｓ５３）。取得対象ページである場合は（Ｓ５３において、ＹＥＳ）、視聴履歴の送信は行わずに処理を終了する。また、取得対象ページでない場合は（Ｓ５３において、ＮＯ）、上述の送信例１〜３に基づいて視聴履歴データの送信を行う（Ｓ５４）。
【０１４８】
（送信タイミング例２：履歴保持領域の記録量に基づいて集計サーバに送信）次に、予め用意しておいた履歴保持領域における視聴履歴情報の記録量に基づいて設定した記録量を超えた場合に集計サーバに送信する方法について説明する。
【０１４９】
この方法では、例えば、各ページに用意した視聴回数カウンタのどれか１つにおいて、各カウンタに用意されたビット数で表現できる最大値に達した場合、又は最大値に十分近い値に達した場合、あるいは各ページに用意した視聴時間保持領域のどれか１つにおいて、各視聴時間保持領域に用意されたビット数で表現できる最大値に達した場合、又は最大値に十分近い値に達した場合にデータの送信する。
【０１５０】
また、視聴したページのＩＤ値とその時刻を保持する履歴保持領域において、履歴の数が用意された領域で保持できる最大数に達した場合、又は最大数に十分近い値に達した場合にデータを送信する。
【０１５１】
ここで、上述の送信手順についてフローチャートを用いて説明する。
【０１５２】
図１８は、本発明における送信タイミングの第２の送信手順を示すフローチャートである。
【０１５３】
視聴者により取得対象ページの視聴が開始されると（Ｓ６１）、上述の取得例１〜７に示したような方法でページ視聴履歴の取得を行い、上述の保持例１〜５に示すような方法で、視聴履歴情報の記録を行い視聴履歴の作成を行う（Ｓ６２）。
【０１５４】
次に、履歴保持領域の容量が設定値を越えているかを判断し（Ｓ６３）、容量が設定値を超えている場合（Ｓ６３において、ＹＥＳ）、上述した送信例１〜３に示すように視聴履歴データの送信処理を行う（Ｓ６４）。なお、Ｓ６４の処理が終了後、視聴履歴データは消去される。Ｓ６４の処理が終了後又はＳ６３にて容量がオーバーしていなかった場合は（Ｓ６３において、ＮＯ）、ページ視聴を継続する（Ｓ６５）。
【０１５５】
次に、ＢＭＬ文書を視聴終了するときに必ず実行されるスクリプトコード（ｏｎｕｎｌｏａｄイベントに対応する関数や、他文書へリンクするボタンに指定されたｏｎｃｌｉｃｋイベントに対応する関数）によりページの視聴が終了しページが遷移した際に、取得対象ページへの遷移かを判断する（Ｓ６６）。取得対象ページでない場合は（Ｓ６６において、ＮＯ）、処理を終了する。また、取得対象ページである場合は（Ｓ６６において、ＹＥＳ）、Ｓ６２に戻り履歴情報の取得を継続して行う。これにより、容量を基準とした送信を容易に行うことができる。
【０１５６】
なお、上述では、設定値として、最大値を用いたが本発明においてはこの限りではなく、どの値でも設定することができる。また、履歴保持領域の残容量が設定値以下になった場合にデータを送信するようスクリプトにより設定することもできる。
【０１５７】
上述した方法に不揮発性メモリの使用量を組み合わせることで、視聴履歴情報がメモリの容量が許容最大値にならない限りは視聴履歴情報をデータ放送受信機内に長期的に保持することが可能になり、データ送信のためにサーバ接続するためのコストを極力抑えることが可能である。更に、サーバに接続される回数も減少するため、輻輳回避、サーバ負荷の低減の効果もある。
【０１５８】
（送信タイミング例３：集計サーバからの制御により送信）
次に、例えば、集計サーバを設けた放送局等の設置機関の制御によって、ある時期にまとめて視聴履歴調査対象者からの視聴履歴データを収集するための履歴を送信させる方法について説明する。
【０１５９】
この場合、データ放送コンテンツ中に視聴履歴を送信するような指示を挿入し、データ放送受信機１０で、そのコンテンツを視聴した場合に直ちに視聴情報を送信するようデータコンテンツを構成する方法である。これにより、視聴されたコンテンツと相当数の履歴を取得することができる。
【０１６０】
また、この場合、調査対象コンテンツ以外のコンテンツにも、データ放送受信機に現時点で保持されている視聴履歴を送信するための手続きを埋め込んで送出することにより、より多くの履歴データをまとめて取得することもできる。
【０１６１】
次に、本発明における視聴履歴を取得する他の実施例について説明する。
【０１６２】
（視聴者の意思による視聴履歴調査への参加による取得）
ここでは、視聴者の意思による視聴履歴調査への参加による取得方法について説明する。この方法では、データ放送コンテンツの一部として、視聴率調査に参加して視聴履歴を収集されることを許可することを視聴者に促すコンテンツを放送し、視聴者が履歴収集を許可することを意図した操作を行った場合に、データ放送受信機の不揮発性メモリ部（ｎｖｒａｍやハードディスク等）に相当するフラグ等の視聴履歴の取得許可情報を記録しておき、後でデータ放送受信機が視聴履歴調査対象のコンテンツを受信した場合に、記録したフラグの内容から判断して、視聴履歴取得動作を開始する方法である。また、視聴者に視聴履歴取得の許可を促すコンテンツにおいて視聴者が許可した場合に、その視聴者の個人データ（名前、性別、年齢、職業、住所等）を、そのデータ放送コンテンツを用いて入力し、双方向通信部１４等を用いて入力された個人データと、その受信機の固有ＩＤ（ＩＲＤＩＤ（Ｉｎｔｅｇｒａｔｅｄ  Ｒｅｃｅｉｖｅｒ  ＤｅｃｏｄｅｒＩＤ）やそれに類するＩＤ値等）を集計サーバに収集することによって、その後取得される視聴履歴データについて視聴者プロファイルデータを関連づけて収集することができる。
【０１６３】
ここで、上述の視聴者許可型による視聴履歴の取得手順についてフローチャートを用いて説明する。
【０１６４】
図１９は、本発明における視聴者許可型による視聴履歴の取得手順を示す一例のフローチャートである。なお、図１９では、視聴者に参加を促す部分のステップ（Ｓ７１〜Ｓ７５）と、視聴履歴を取得するためのステップ（Ｓ７６〜Ｓ７８）に分かれている。
【０１６５】
まず、参加を促すステップでは、視聴者に提供するコンテンツの画面表示において、視聴者に視聴履歴の取得の参加と許可を確認させるためのメッセージがスクリプトとして受信したデータ放送コンテンツに付加されていた場合に、ＵＩ部１３にて参加の確認をするコンテンツ表示を行い視聴者に告知する（Ｓ７１）。
【０１６６】
データ放送コンテンツ実行エンジン部１２は、参加確認の返事をもらう入力部分をコンテンツ内に設け、参加者（視聴者）からの回答を確認し、参加許可されたかどうかを判断する（Ｓ７２）。参加許可されていなかった場合（Ｓ７２において、ＮＯ）、処理を終了し、その後の視聴履歴を取得するためのステップも行わない。また、参加の許可があった場合は（Ｓ７２において、ＹＥＳ）、視聴履歴の取得許可情報として参加フラグを不揮発メモリに設けた視聴履歴調査参加フラグ保持領域に記憶する（Ｓ７３）。
【０１６７】
Ｓ７３が終了後、更に、データ放送コンテンツ実行エンジン部１２は、上述した視聴者の個人データの入力エリアをコンテンツ上に表示し、視聴者から個人データが入力されているかを判断する（Ｓ７４）。なお、この画面では、入力しないことも可能とする。個人データで入力されていなかった場合は（Ｓ７４において、ＮＯ）、そのまま処理を終了し、個人データが入力されていた場合は（Ｓ７４において、ＹＥＳ）、視聴者に入力してもらった個人データ及びデータ放送受信機の固有ＩＤを双方向通信部１４から通信ネットワークを介して集計サーバ等に送信する（Ｓ７５）。これにより、集計サーバからデータ放送受信機を特定する受信機ＩＤが送信され、その受信機ＩＤを用いて視聴者の個人データを含めて視聴履歴情報を記録し、集計サーバに送り返すことで、地域別、又は年齢別でのコンテンツの視聴情報等、詳細な視聴履歴を取得することができる。
【０１６８】
次に、視聴履歴取得のステップについて説明する。視聴者が取得対象ページの視聴が開始されると（Ｓ７６）、不揮発メモリ等に記憶されている視聴履歴調査参加フラグ保持領域を読み出し、参加フラグが付与されているかを判断する（Ｓ７７）。参加フラグが付与されていない場合は（Ｓ７７において、ＮＯ）、視聴履歴取得処理を終了し通常の視聴が行われる。また、参加フラグが付与されている場合は（Ｓ７７において、ＹＥＳ）、上述の取得例１〜７に示したような方法でページ視聴履歴の取得を行い、上述の保持例１〜５に示すような方法で、視聴履歴情報の記録を行い視聴履歴の作成を行う（Ｓ７８）。
【０１６９】
これにより、視聴者の意思に反して視聴履歴が取得されることを防ぎ、視聴者のプライバシーを尊重した上で、視聴履歴取得を許可した視聴者の受信機のみから視聴履歴を取得することができる。
【０１７０】
（放送局からの対象視聴者の指定による取得）
次に、放送局等のコンテンツ提供機関からの対象視聴者の指定による取得について説明する。この場合は、視聴履歴取得対象情報として視聴履歴調査の対象とするデータ放送受信機（又は視聴者）の固有ＩＤ（ＩＲＤＩＤやそれに類するＩＤ値）のリストを放送し、視聴履歴調査処理の開始時にリストをチェックするような手続きのスクリプトをコンテンツに埋め込むことで、対象とするデータ放送受信機を、放送局の意図によって、限定したり動的な変更を行うことができる。
【０１７１】
具体的には、ＢＭＬの場合、視聴履歴の取得対象のデータ放送受信機ＩＤ（ＩＲＤＩＤ）のリストを保持するバイナリテーブルを、通常のデータ放送コンテンツと同時に放送し、視聴率調査対象コンテンツにおいて調査開始時に当該バイナリテーブルをチェックすることによって、取得対象受信機を絞り込むことができる。
【０１７２】
ここで、上述の対象視聴者指定による視聴履歴の取得手順についてフローチャートを用いて説明する。図２０は、本発明における対象視聴者指定による視聴履歴の取得手順を示す一例のフローチャートである。
【０１７３】
まず、視聴者により取得対象ページの視聴が開始されると（Ｓ８１）、データ放送コンテンツ実行エンジン部１２は、コンテンツと共に送信された対象受信者リストを読み込み（Ｓ８２）、リスト内にある受信機固有ＩＤ等の識別情報から対象受信機かを判断する（Ｓ８３）、対象受信機でなかった場合は（Ｓ８３において、ＮＯ）、そのまま処理を終了しコンテンツを視聴者に視聴させる。また、対象受信機であった場合は（Ｓ８３において、ＹＥＳ）、上述の取得例１〜７に示したような方法でページ視聴履歴の取得を行い、上述の保持例１〜５に示すような方法で、視聴履歴情報の記録を行い視聴履歴の作成を行う（Ｓ８４）。
【０１７４】
これにより、放送局の意思によって、視聴履歴取得対象とする受信機や視聴者を制御することが可能となる。具体的には、視聴履歴取得の対象とする受信機の数を制限することによって、効率的な取得が可能になる。
【０１７５】
上述したように本発明によれば、スクリプトによる視聴履歴の取得を行うため、市販されている一般的なデータ放送受信機を使用可能であり、視聴履歴取得のための特別な構成部を追加する必要がない。また、視聴履歴の取得対象とするコンテンツを絞り込むことができ、取得対象としたいコンテンツのみにスクリプト埋め込めばよく、コンテンツ制作上の負担が少なくすることができる。
【０１７６】
また、放送局の要求する視聴履歴の内容に応じた詳細な履歴情報の取得ができ、例えば、ページ視聴回数、ページ視聴時間の累計、ページ遷移の履歴、実質的な視聴時間、同一ページ内での操作による表示変更等、高精度な視聴履歴を容易に取得することができる。
【０１７７】
また、放送局側から、視聴率対象者を指定でき、また対象者を随時動的に変更することができるため、効率的に視聴履歴を取得することができる。
【０１７８】
更に、本発明により取得した視聴履歴を集計して、データ放送をあらゆる観点から分析することができ、例えば、各番組の視聴履歴により広告料を決定したり、データサービスの画面レイアウトを改良したり、視聴者の嗜好を把握する等のサービスの付加価値化を行い、視聴者に有効なデータ放送を実現することができる。
【０１７９】
以上、本発明の好ましい実施例について詳述したが、本発明は係る特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形、変更が可能である。
【０１８０】
【発明の効果】
上述の如く本発明によれば、効率的に高精度なデータ放送の視聴履歴を取得することができる。
【図面の簡単な説明】
【図１】本発明におけるデータ放送コンテンツ制作装置の一構成例を示す図である。
【図２】ページ毎に視聴回数を取得する場合のＢＭＬ文書の一例を示す図である。
【図３】ページ毎に視聴時間を取得する場合のＢＭＬ文書の一例を示す図である。
【図４】ページ遷移順と視聴時間を取得する場合のＢＭＬ文書の一例を示す図である。
【図５】ページ内での表示内容を取得する場合のＢＭＬ文書の一例を示す図である。
【図６】ＢＡＳＩＣ手順を使用して送信される場合のＢＭＬ記述例を示す図である。
【図７】ＴＣＰ／ＩＰ手順を使用して送信される場合のＢＭＬ記述例を示す図である。
【図８】ＳＭＴＰプロトコルを使用して送信される場合のＢＭＬ記述例を示す図である。
【図９】データ放送受信機の一構成例を示す図である。
【図１０】本発明における視聴履歴取得手順の一例のフローチャートを示す図である。
【図１１】本発明におけるページ毎に視聴回数を取得する手順の一例を示すフローチャートである。
【図１２】本発明におけるページ毎に視聴時間を取得する手順の一例を示すフローチャートである。
【図１３】ページ単位の視聴時間の取得に関する一例の図である。
【図１４】本発明における遷移順と視聴時間を取得する手順の一例を示すフローチャートである。
【図１５】アプリケーションによる視聴履歴の取得手順を示す一例のフローチャートである。
【図１６】不揮発性メモリと揮発性メモリの組合せによる保持手順を示す一例のフローチャートである。
【図１７】本発明における送信タイミングの第１の送信手順を示すフローチャートである。
【図１８】本発明における送信タイミングの第２の送信手順を示すフローチャートである。
【図１９】本発明における視聴者許可型による視聴履歴の取得手順を示す一例のフローチャートである。
【図２０】本発明における対象視聴者指定による視聴履歴の取得手順を示す一例のフローチャートである。
【符号の説明】
１  データ放送コンテンツ制作装置
２  データ放送コンテンツ制作部
３  送出用コンテンツ一時蓄積部
４  視聴履歴取得条件設定部
５  視聴履歴取得スクリプト付加部
６  データ放送コンテンツ編成設定部
７  データ放送コンテンツ送出部
１０  データ放送受信機
１１  データ放送受信部
１２  データ放送コンテンツ実行エンジン部
１３  ＵＩ部
１４  双方向通信部
１５  データ放送コンテンツ蓄積部
１６  データ放送コンテンツ実行用ワークメモリ部
１７  不揮発記憶部
１８  大容量蓄積部
１９  通信ネットワーク
【図１】
2005020432.tif 000003
【図２】
2005020432.tif 000004
【図３】
2005020432.tif 000005
【図４】
2005020432.tif 000006
【図５】
2005020432.tif 000007
【図６】
2005020432.tif 000008
【図７】
2005020432.tif 000009
【図８】
2005020432.tif 000010
【図９】
2005020432.tif 000011
【図１０】
2005020432.tif 000012
【図１１】
2005020432.tif 000013
【図１２】
2005020432.tif 000014
【図１３】
2005020432.tif 000015
【図１４】
2005020432.tif 000016
【図１５】
2005020432.tif 000017
【図１６】
2005020432.tif 000018
【図１７】
2005020432.tif 000019
【図１８】
2005020432.tif 000020
【図１９】
2005020432.tif 000021
【図２０】
2005020432.tif 000022