データ放送用記述言語であるBMLは,2000年12月に始まったBSデジタル放送に合わせて,1999年に社団法人電波産業会(ARIB:Association of Radio Industries and Businesses)によって策定された。最初はBSデジタル放送のデータ放送用だったが,現在ではCS110度デジタル放送(広帯域CSデジタル放送)や地上デジタル放送などにも利用されている。
さらに,2006年4月から始まった携帯端末向け地上デジタルテレビジョン放送のワンセグ放送サービスや,2006年秋に開始予定の地上デジタル音声放送(地上デジタルラジオ放送)でのデータ放送にもBMLが用いられる。
BMLは,HTMLとの親和性を考慮しXTHML(Extensible HyperText Markup Language,拡張可能なハイパーテキスト記述言語) 1.0で定義されたタグ・セットを基本に,ページ・レイアウトと画面表示にCSS(Cascading Style sheets,HTMLやXML文書の表示方法を指定する仕組みでW3Cによって標準化されている)を利用する。また,制御用のスクリプト言語にECMAScript(European Computer Manufactures Association Script,ヨーロッパ・コンピュータ製造業者協会によって標準化されたスクリプト言語でJavaScriptをベースにしている)を採用している。さらに,ECMAScriptで記述されたプログラムからBML文書の呼び出しに使用するインタフェースには,DOM(Document Object Model)が採用されている。
ただし,受信機性能を考慮し,全てのXHTML,CSSやECMAScriptの仕様をサポートしているのではなく,基本サービスを実現するために必要最低限の仕様(ベーシックプロファイル)を,運用規定(ARIB TR-B14 地上デジタルテレビジョン放送運用規定)で決めている。
この地上デジタルテレビジョン放送運用規定では,地上デジタルテレビジョン放送が据え置き型テレビやSTB以外に車載テレビや携帯端末などをターゲットとしたデータ放送サービスが想定されることから,それぞれのサービス形態に対応したプロファイルを規定し,それぞれのプロファイルごとに運用規定を定めている。さらに,地上デジタル音声放送(デジタルラジオ放送)においても,先に開始されたワンセグ放送サービスとの機器の互換性を考慮したプロファイルが用意されている。
地上デジタルテレビジョン放送用プロファイルと地上デジタル音声放送用プロファイルは,以下の通りである。
[1] 地上デジタルテレビジョン放送用プロファイル
Aプロファイル:主として固定受信機(据え置き型テレビやSTBなど)を対象としたデータ放送サービスの基本運用プロファイル
Bプロファイル:主として移動体受信機(カーナビ,ポータブルテレビ,PDAなど)を対象としたデータ放送サービスの基本運用プロファイル
Cプロファイル:主として携帯受信機(携帯電話機やPDAなど)を対象としたデータ放送サービスの基本運用プロファイル(ワンセグ放送サービス用プロファイル)
[2] 地上デジタル音声放送用プロファイル
携帯Pプロファイル:主として携帯受信機(携帯電話機やPDAなど)を対象としたデータ放送サービスの基本運用プロファイル
携帯P2プロファイル:主として携帯端末向け地上デジタルテレビジョン放送(ワンセグ放送)受信端末との互換性を考慮し,携帯受信機(携帯電話機やPDAなど)を対象としたデータ放送サービスの基本運用プロファイル
移動体プロファイル:主として移動体受信機(カーナビ,ポータブルテレビ,PDAなど)を対象としたデータ放送サービスの基本運用プロファイル
固定型受信端末(テレビ)向けのプロファイル(Aプロファイル)における,ベーシックプロファイルは,17種類のタグセットが規定されている。また,ワンセグ放送用Cプロファイルでは,現在15種類のタグセットがベーシックプロファイルとして規定されている(表1)。
表1 BMLの基本要素(タグセット)
要 素 | 概 要 | Aプロ ファイル |
Cプロ ファイル |
body | 文章の内容を指定する | ○ | ○ |
head | 文章のヘッダー部分 | ○ | ○ |
title | タイトル | ○ | ○ |
html | html要素を指定 | × | ○ |
br | 改行 | ○ | ○ |
div | 文章を構造化する | ○ | ○ |
p | 段落 | ○ | ○ |
pre | 固定ピッチの指定 | × | ○ |
span | 文書内のテキストの任意の範囲を定める | ○ | ○ |
a | ハイパーテキストのアンカー | ○ | ○ |
form | フォーム | × | ○ |
input | 文字入力 | ○ | ○ |
textarea | フォーム内に複数行のテキスト入力フィールドを作成 | × | ○ |
img | 画像の挿入に用いる | × | ○ |
object | オブジェクト | ○ | ○ |
meta | メタ情報 | ○ | ○ |
script | スクリプト(ECMAScript)の定義 | ○ | ○ |
style | スタイルシート(CSS)の定義 | ○ | ○ |
link | スクリプト・ファイルへのリンク | ○ | ○ |
bml | BML文章全体を表す | ○ | × |
bevent | beitem要素をグループ化するための要素 | ○ | ○ |
beitem | ここの割り込み事象および手続きの対応づけを表す | ○ | ○ |
図1は,ワンセグのデータ放送の一例である。ワンセグ放送用BMLは,バージョン 12.0が使われれいる。簡単な画面表示を指示するときはWebページで使われているHTMLとあまり変わらないが,画像や文字の絶対位置を指定できるのが特徴である。
図1 BMLサンプル![]() ![]() |
ワンセグのデータ放送サービスは,固定端末向けデータ放送の機能を限定し,表示に関する仕様を変更している。ワンセグ・サービス用に追加された要素としては,textarea要素,pre要素,img要素,form要素がある。またBML文書は,XHTMLで定義されているタグセット以外に,放送用に拡張された要素がある。
代表的な要素は,以下の通りである。
[1] 割り込み事象制御用タグ(bevent要素)
放送で送られてくる割り込み事象(イベント・メッセージ)を検知し,指定されたBML 文章の表示を行うなどの割り込み事象制御をハンドリングする
[2] BML文書間での映像や音声の提示を継続する制御タグ(remain要素)
複数のBML文書が切り替わる時に,提示されている映像や音声が継続して提示されるように制御する