(57)【要約】【課題】自動音声読上げの際の音声読上げ順に影響があるセル連結を検出することができるテーブル判定方式を備えたコンテンツ検査システムを提供する。【解決手段】テーブル検出手段１０１は、記録装置２００が記録するコンテンツから、テーブル要素を検出する。セル構成マッピング手段１０２は、検出されたテーブル要素におけるセル構成をマッピングする。またがりセル判定手段１０３は、左隣のセルを２つ以上縦方向にまたぐセルの存在を判定する。検査結果出力手段１０４は、またがりセル判定手段１０３によって、左隣のセルを２つ以上縦方向にまたぐセルが存在すると判定されると、映像出力装置３００に、音声読上げ順に影響があるテーブルが存在する旨を表示する。【選択図】図１
2008015141.tif 000002
【特許請求の範囲】
【請求項１】
検査対象となるコンテンツ内のテーブル要素を検出するテーブル検出手段と、
前記検出したテーブル要素におけるセル構成をマッピングするセル構成マッピング手段と、
前記マッピングしたセル構成で、左隣のセルを縦方向に２つ以上またぐセルが存在するか否かを判定するまたがりセル判定手段と、
前記またがりセル判定手段の判定結果を出力する検査結果出力手段とを備えたことを特徴とするコンテンツ検査システム。
【請求項２】
前記テーブル検出手段は、検査対象となるコンテンツ内に記述されているＨＴＭＬ（Hyper Text Markup Language）テキストを検査しＨＴＭＬテキストからテーブル要素を検出する、請求項１に記載のコンテンツ検査システム。
【請求項３】
前記テーブル検出手段は、ＨＴＭＬテキストの最終行まで検査が終了すると、前記検査結果出力手段に、判定結果を出力させる、請求項２に記載のコンテンツ検査システム。
【請求項４】
前記テーブル検出手段は、テーブル要素を検出すると、テーブル要素の開始位置から終了位置までのＨＴＭＬテキストの記述内容を出力する、請求項２に記載のコンテンツ検査システム。
【請求項５】
前記セル構成マッピング手段は、前記テーブル検出手段が出力したＨＴＭＬテキストの記述内容について、ＨＴＭＬテキストで１次元記述されたテーブルのセル構成を行単位で２次元配置にマッピングし、各セルの縦方向の連結の状態を、セル単位で数値に置き換えた対象マッピング数列を生成する、請求項４に記載のコンテンツ検査システム。
【請求項６】
前記またがりセル判定手段は、前記対象マッピング数列に基づいて、左隣のセルを縦方向に２つ以上またぐセルが存在するか否かを判定する、請求項５に記載のコンテンツ検査システム。
【請求項７】
前記またがりセル判定手段は、前記対象マッピング数列における隣接する２つの数値について、左側の数値と右側の数値とを比較し、左側の数値よりも右側の数値が大きいと、左隣のセルを縦方向に２つ以上またぐセルが存在すると判定する、請求項６に記載のコンテンツ検査システム。
【請求項８】
前記またがりセル判定手段は、左隣のセルを縦方向に２つ以上またぐセルが存在すると判定すると、左隣のセルを縦方向に２つ以上またぐセルが存在するテーブルの行の記述位置情報を検査結果出力手段に出力する、請求項７に記載のコンテンツ検査システム。
【請求項９】
前記検査結果出力手段は、前記またがりセル判定手段が、左隣のセルを縦方向に２つ以上またぐセルが存在するテーブルの行の記述位置情報を出力すると、該記述位置情報を蓄積し、前記テーブル検出手段が、ＨＴＭＬテキストの最終行まで検査を終了すると、前記蓄積した記述位置情報を前記映像表示装置に表示させる、請求項８に記載のコンテンツ検査システム。
【請求項１０】
コンピュータを用いて、コンテンツを検査する方法であって、
前記コンピュータが、検査対象となるコンテンツ内のテーブル要素を検出するステップと、
前記コンピュータが、前記検出したテーブル要素におけるセル構成をマッピングするステップと、
前記コンピュータが、前記マッピングしたセル構成で、左隣のセルを縦方向に２つ以上またぐセルが存在するか否かを判定するステップと、
前記コンピュータが、前記またがりセル判定ステップの判定結果を出力するステップとを有することを特徴とするコンテンツ検査方法。
【請求項１１】
コンピュータに、コンテンツを検査する処理を実行させるプログラムであって、前記コンピュータに、
検査対象となるコンテンツ内のテーブル要素を検出する処理と、
前記検出したテーブル要素におけるセル構成をマッピングする処理と、
前記マッピングしたセル構成で、左隣のセルを縦方向に２つ以上またぐセルが存在するか否かを判定する処理と、
前記またがりセル判定ステップの判定結果を出力する処理とを実行させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、コンテンツ検査システム、方法、及び、プログラムに関し、特に、テーブル要素を含むコンテンツのアクセシビリティを検査するコンテンツ検査システム、方法、及び、プログラムに関する。
【背景技術】
【０００２】
インターネット技術を用いて作成されたＷｅｂコンテンツとして、健常者だけでなく、高齢者や障害者でも利用できるように設計されたコンテンツがある。このようなコンテンツは、Ｗｅｂアクセシビリティに配慮したコンテンツと呼ばれ、高齢者や障害者の利用を想定して作成されたＷｅｂコンテンツである。日本国内でも、日本工業規格（ＪＩＳ）の規定により、Ｗｅｂアクセシビリティの標準化が定められている（Ｗｅｂアクセシビリティについては、非特許文献１及び非特許文献２を参照）。Ｗｅｂアクセシビリティでは、Ｗｅｂアクセシビリティのための配慮の一つとして、Ｗｅｂコンテンツが、視覚障害者向け音声読上げソフトや音声読上げブラウザでも、コンテンツ製作者の意図したとおりに読み上げられるように配慮し設計するという規定がある。
【０００３】
Ｗｅｂコンテンツは、通常、ＨＴＭＬ（Hyper Text Markup Language）テキストを用いて記述される。Ｗｅｂコンテンツには、通常のテキスト文に加えて、ＨＴＭＬのｔａｂｌｅタグを用いて記述されたテーブル要素（表）が含まれることがある。Ｗｅｂコンテンツ内のテーブル要素に関して、テーブルのレイアウト解析を行う技術としては、特許文献１〜３に記載された技術がある。特許文献１では、画面の大きさに合わせてテーブルの大きさを調整し、変換表示するために、テーブルのセル構成を解析する。特許文献２では、テキストにて罫線や記号を用いた図形表現を、Ｗｅｂコンテンツのテーブルに変換する構造化処理を行う。特許文献３では、Ｗｅｂコンテンツ内のテーブルを、意味ごとにわかりやすく分割するレイアウト解析を行う。
【０００４】
【特許文献１】特開２００４−２６５３９０号公報
【特許文献２】特開２００２−３３４０７０号公報
【特許文献３】特開２０００−３３９３０１号公報
【非特許文献１】ＪＩＳ  Ｘ８３４１−３  高齢者・障害者等配慮設計指針−情報通信における機器、ソフトウェア及びサービス
【非特許文献２】安藤昌也、ＷｅｂアクセシビリティＪＩＳ規格完全ガイド、日経ＢＰ、２００４年
【発明の開示】
【発明が解決しようとする課題】
【０００５】
ここで、コンテンツ内に構成されたテーブル要素には、セルを縦方向に連結した縦方向連結セルや、セルを横方向に連結した横連結セルが含まれることがある。このような連結セルを含むテーブル要素を音声読上げ装置で読み上げる場合、音声読上げ装置は、テーブル要素に記述されたセルを示すタグを１つずつ順次に取得し、取得したタグの内容を、タグの取得順序に従って読み上げるので、コンテンツ製作者が視覚的な配置から意図して設計したテーブル内のセルの閲覧順序と、音声読上げ順とが一致しない事態が発生することがある。
【０００６】
上記問題を、具体例を用いて説明する。図７に、コンテンツ製作者が意図した閲覧順序と、音声読上げ装置による読上げ順序とが一致しないテーブルの一例を示す。この例では、コンテンツ製作者は、同図（ａ）に示すテーブルのセル内に示す番号順に閲覧することを期待してコンテンツを作成している。しかし、音声読上げで、単純にタグの取得順序に従って、テーブルの左上から右下に向けてセルの読上げ順序を決定すると、同図（ｂ）に示すように、コンテンツ製作者の意図に反して、縦方向に３つのセルが連結されたセルが４番目に読み上げられることになる。この場合、コンテンツの内容を、コンテンツ製作者の意図どおりに理解してもらえないという問題が発生する。
【０００７】
図７では、縦方向に連結されたセルの存在により、意図した閲覧順と、音声読上げ順とに不一致が生じているが、この不一致は、縦方向に連結されたセルが存在する場合に、常に発生するわけではない。図８は、連結セルを含むテーブルの別の例を示している。この例では、同図（ａ）に示すコンテンツ製作者が意図した閲覧順と、同図（ｂ）に示す音声読上げ順とは一致している。このように、意図した閲覧順と音声読上げ順との不一致の発生は、単に、テーブルに縦方向の連結セルが含まれるか否かのみでは判断することはできない。
【０００８】
テーブルにおける音声読上げ順への影響について、ＪＩＳ規格についての非特許文献１や、アクセシビリティ設計について書かれた非特許文献２などでは、テーブルの構造を極力単純にして影響を回避するよう規定しているのみであり、読上げ順に影響のあるセル構成の判別方法については具体的に示されていない。また、特許文献１〜３においても、同様に、読上げ順に影響のあるセル構成の判別については記載されていない。例えば、これから公開しようとするＷｅｂコンテンツ、或いは、既に公開しているコンテンツに含まれるテーブル要素が、読上げ順に影響のあるセル構成となっているときには、そのテーブル要素のセル構成を修正することで、Ｗｅｂアクセシビリティを向上することができるが、従来、テーブル要素が読上げ順に影響のあるセル構成となっているか否かを検査する技術は知られていなかった。
【０００９】
本発明は、テーブル要素を含むコンテンツについて、自動音声読上げの際の音声読上げ順に影響があるセル構成を検出することができるテーブル判定方式を備えたコンテンツ検査システム、方法、及び、プログラムを提供することを目的とする。
【課題を解決するための手段】
【００１０】
上記目的を達成するために、本発明のコンテンツ検査システムは、検査対象となるコンテンツ内のテーブル要素を検出するテーブル検出手段と、前記検出したテーブル要素におけるセル構成をマッピングするセル構成マッピング手段と、前記マッピングしたセル構成で、左隣のセルを縦方向に２つ以上またぐセルが存在するか否かを判定するまたがりセル判定手段と、前記またがりセル判定手段の判定結果を出力する検査結果出力手段とを備えたことを特徴とする。
【００１１】
本発明のコンテンツ検査方法は、コンピュータを用いて、コンテンツを検査する方法であって、前記コンピュータが、検査対象となるコンテンツ内のテーブル要素を検出するステップと、前記コンピュータが、前記検出したテーブル要素におけるセル構成をマッピングするステップと、前記コンピュータが、前記マッピングしたセル構成で、左隣のセルを縦方向に２つ以上またぐセルが存在するか否かを判定するステップと、前記コンピュータが、前記またがりセル判定ステップの判定結果を出力するステップとを有することを特徴とする。
【００１２】
本発明のプログラムは、コンピュータに、コンテンツを検査する処理を実行させるプログラムであって、前記コンピュータに、検査対象となるコンテンツ内のテーブル要素を検出する処理と、前記検出したテーブル要素におけるセル構成をマッピングする処理と、前記マッピングしたセル構成で、左隣のセルを縦方向に２つ以上またぐセルが存在するか否かを判定する処理と、前記またがりセル判定ステップの判定結果を出力する処理とを実行させることを特徴とする。
【００１３】
本発明のコンテンツ検査システム、方法、及び、プログラムでは、検査対象のコンテンツからテーブル要素を検出し、検出されたテーブルにおけるセル構成をマッピングし、左隣のセルを縦方向に２つ以上またぐセルが存在するか否かを判定する。コンテンツ自動読上げ装置で、テーブル要素を読み上げる際に、単純に、左上のセルから右下のセルにかけて読上げ順序を決定していく場合、左隣のセルを縦方向に２つ以上またぐセルが存在すると、コンテンツ製作者の意図した読上げ順で読み上げることができない場合がある。このようなセルを検出することで、自動読上げの際の読上げ順序に影響があるセルの存在を、事前に知ることができる。
【００１４】
本発明のコンテンツ検査システムでは、前記テーブル検出手段は、検査対象となるコンテンツ内に記述されているＨＴＭＬ（Hyper Text Markup Language）テキストを検査しＨＴＭＬテキストからテーブル要素を検出する構成を採用できる。ＨＴＭＬでは、テーブル要素は、ｔａｂｌｅタグを用いて記述されており、ｔａｂｌｅタグの開始位置から終了位置までの記述内容を取得することで、テーブル要素を検出できる。
【００１５】
本発明のコンテンツ検査システムでは、前記テーブル検出手段は、ＨＴＭＬテキストの最終行まで検査が終了すると、前記検査結果出力手段に、判定結果を出力させる構成を採用できる。判定結果の出力は、ＨＴＭＬテキストの最終行まで検査を終えた後に行う構成を採用できる。或いは、これに代えて、左隣のセルを縦方向に２つ以上またぐセルを検出した段階で、判定結果の出力を行う構成を採用することもできる。
【００１６】
本発明のコンテンツ検査システムでは、前記テーブル検出手段は、テーブル要素を検出すると、テーブル要素の開始位置から終了位置までのＨＴＭＬテキストの記述内容を出力する構成を採用できる。この場合、セル構成マッピング手段で、出力されたテーブル要素の記述内容に対応するセル構成をマッピングし、またがりセル判定手段で、マッピングされたセル構成について、左隣のセルを縦方向に２つ以上またぐセルが存在するか否かを判定すればよい。
【００１７】
本発明のコンテンツ検査システムでは、前記セル構成マッピング手段は、前記テーブル検出手段が出力したＨＴＭＬテキストの記述内容について、ＨＴＭＬテキストで１次元記述されたテーブルのセル構成を行単位で２次元配置にマッピングし、各セルの縦方向の連結の状態を、セル単位で数値に置き換えた対象マッピング数列を生成する構成を採用できる。対象マッピング数列の数値は、セルが、縦方向にいくつ続くかを示しているので、対象マッピング数列で、隣接する２つの数値同士を順次に比較することで、左右方向に隣接するセル間で、縦方向に２つ以上のセルをまたぐか否かを判断することができる。
【００１８】
本発明のコンテンツ検査システムでは、前記またがりセル判定手段は、前記対象マッピング数列に基づいて、左隣のセルを縦方向に２つ以上またぐセルが存在するか否かを判定する構成を採用することができる。この場合、前記またがりセル判定手段は、前記対象マッピング数列における隣接する２つの数値について、左側の数値と右側の数値とを比較し、左側の数値よりも右側の数値が大きいと、左隣のセルを縦方向に２つ以上またぐセルが存在すると判定する構成を採用できる。
【００１９】
本発明のコンテンツ検査システムでは、前記またがりセル判定手段は、左隣のセルを縦方向に２つ以上またぐセルが存在すると判定すると、左隣のセルを縦方向に２つ以上またぐセルが存在するテーブルの行の記述位置情報を検査結果出力手段に出力する構成を採用できる。この場合、前記検査結果出力手段は、前記またがりセル判定手段が、左隣のセルを縦方向に２つ以上またぐセルが存在するテーブルの行の記述位置情報を出力すると、該記述位置情報を蓄積し、前記テーブル検出手段が、ＨＴＭＬテキストの最終行まで検査を終了すると、前記蓄積した記述位置情報を前記映像表示装置に表示させる構成を採用できる。
【発明の効果】
【００２０】
本発明のコンテンツ検査システム、方法、及び、プログラムでは、検査対象のコンテンツからテーブル要素を検出し、検出されたテーブルにおけるセル構成をマッピングし、左隣のセルを縦方向に２つ以上またぐセルが存在するか否かを判定し、その判定結果を出力する。この判定結果を参照することで、自動読上げの際の読上げ順序に影響があるテーブルを見つけ出すことができる。
【発明を実施するための最良の形態】
【００２１】
以下、図面を参照し、本発明の実施の形態を詳細に説明する。図１は、本発明の一実施形態のコンテンツ検査システムの構成を示している。コンテンツ検査システム１０は、プログラム制御により動作するコンピュータ（中央処理装置、プロセッサ、データ処理装置）１００と、ＨＴＭＬで記述されたＷｅｂコンテンツを格納する記録装置２００と、映像出力装置（モニタ）３００とを備える。このコンテンツ検査システム１０は、例えば、コンテンツ製作者が、検査対象のコンテンツに、自動音声読上げの際の音声読上げ順に影響があるセル構成のテーブルが含まれるか否かを検査する際に使用される。検査対象のコンテンツとしては、これから公開しようとするＷｅｂコンテンツや、既に公開済みのＷｅｂコンテンツが考えられる。或いは、作成途中のＷｅｂコンテンツであってもよい。
【００２２】
コンピュータ１００は、テーブル検出手段１０１、セル構成マッピング手段１０２、またがりセル判定手段１０３、及び、検査結果出力手段１０４を備える。記憶装置２００は、検査対象のＷｅｂコンテンツを記憶している。記録装置２００とコンピュータ１００とは、コンピュータ１００の内部バスや外部Ｉ／Ｆで接続される。或いは、ローカルネットワークやインターネットを介して、別のコンピュータにある記録装置２００とコンピュータ１００とを接続する形態でも良い。テーブル検出手段１０１は、記録装置２００から、検査対象のＷｅｂコンテンツを読み出し、そのソース（ＨＴＭＬテキスト）を検査して、Ｗｅｂコンテンツに含まれるテーブル要素を検出する。セル構成マッピング手段１０２は、テーブル検出手段１０１が検出したテーブル要素について、１次元記述されたテーブルのセル構成を２次元配置にマッピングする。
【００２３】
またがりセル判定手段１０３は、セル構成マッピング手段１０２がマッピングしたセル構成から、注目セルが、その左隣のセルをまたいでいるか否かを判定する。またがりセル判定手段１０３は、テーブル内に、左隣の複数のセルを縦方向にまたいでいるセルが含まれると判定すると、音声読上げに影響があると判断し、その旨を、検査結果出力手段１０４に出力する。検査結果出力手段１０４は、音声読上げ順に影響のあるセルの有無を映像出力装置３００に出力する。コンテンツ検査システム１０の利用者は、映像出力装置３００に出力された検査結果を参照し、必要に応じて、音声読上げ順に影響があると判断されたセルを有するテーブル要素のセル構成を、作成し直す。
【００２４】
図２は、コンテンツ検査システムの動作手順を示している。テーブル検出手段１０１は、記録装置２００からＷｅｂコンテンツ（ソースファイル）を読み出し、ソースファイル（ＨＴＭＬテキスト）から、１つ目のタグを取得する。テーブル検出手段１０１は、最終行（最終タグ）まで検査したか否かを判断し（ステップＳ１）、最終行まで検査を終えていないと判断すると、取得したタグが、テーブル要素を示すタグであるか否かを判断する（ステップＳ２）。取得したタグが、テーブル要素を示すタグでないと判断したときには、次のタグを取得して、ステップＳ１に戻る。テーブル検出手段１０１は、取得したタグがテーブル要素を示すタグであると判断すると、ＨＴＭＬテキストの検査を中断し、ＨＴＭＬテキストからテーブル要素に対応する部分を取り出して、セル構成マッピング手段１０２に出力する。
【００２５】
セル構成マッピング手段１０２は、テーブル検出手段１０１からテーブル部分を受け取り、ＨＴＭＬで１次元記述されたテーブルのセル構成を２次元配置にマッピングする（ステップＳ３）。またがりセル判定手段１０３は、ステップＳ３でマッピングされたセル構成について、テーブルに、左隣のセルを縦方向に２つ以上またいでいるセルが含まれるか否かを判断する（ステップＳ４）。またがりセル判定手段１０３は、２つ以上のセルをまたぐセルが含まれると判断すると、検査結果出力手段１０４に、音声読上げ順に影響があるセルが検出された旨を出力する（ステップＳ６）。その際、またがりセル判定手段１０３は、音声読上げ順に影響があるセルのＨＴＭＬテキスト内での位置情報を、検査結果出力手段１０４に出力する。その後、テーブル検出手段１０１に、ＨＴＭＬの検査再開を指示し、ステップＳ１に戻って、以降の処理を実行させる。
【００２６】
ステップＳ４で、またがりセル判定手段１０３が、２以上のセルをまたぐセルが存在しないと判断すると、セル構成マッピング手段１０２は、テーブルの最後まで、ステップＳ３のセル構成マッピング処理を行ったか否かを判断する（ステップＳ５）。セル構成マッピング手段１０２は、テーブルの最後まで処理を終えていないと判断すると、テーブルの次の行を取得して、ステップＳ３へ戻る。セル構成マッピング手段１０２は、テーブルの最後まで処理を終えたと判断すると、テーブル検出手段１０１に、ＨＴＭＬの検出再開を指示し、ステップＳ１に戻って、以降の処理を実行させる。ステップＳ３からステップＳ５を繰り返し実行することにより、テーブル内の各行について、左隣のセルを縦方向に２つ以上またぐセルが存在するか否かを判断する。
【００２７】
検査結果出力手段１０４は、ステップＳ６で、またがりセル判定手段１０３が、音声読上げ順に影響があるセルが存在する旨を出力すると、これを蓄積していく。テーブル検出手段１０１は、ステップＳ１で、ＨＴＭＬの最終行まで検査を終えたと判断すると、検査結果出力手段１０４に、検査結果の出力を指示する。検査結果出力手段１０４は、この指示に従って、蓄積した検査結果、すなわち音声読上げ順に影響があるセルが存在する旨とそのセルの記述位置情報とを、映像出力装置３００に出力する（ステップＳ７）。検査結果出力手段１０４は、ステップＳ４で、一度も、「またがりあり」と判定されなかったときには、ステップＳ７では、音声読上げ順に影響があるセルが存在しない旨の検査結果を出力する。
【００２８】
以下、具体例を用いて説明する。図３は、検査対象のＷｅｂコンテンツのＨＴＭＬテキストの記述内容の具体例を示している。同図における左側の数字は、行番号を示している。テーブル検出手段１０１は、ＨＴＭＬテキストの先頭から順に、書かれているＨＴＭＬタグを１つずつ取り出し、取り出したＨＴＭＬタグが、テーブルを表示するためのｔａｂｌｅタグであるか否かを判定する。その際、テーブル検出手段１０１は、タグの記述位置情報（例えば、ＨＴＭＬ内の行位置と行内の文字位置）を保持しながら、ｔａｂｌｅタグの判定を行う。テーブル検出手段１０１は、３０行目で、テーブル要素の開始位置を示すｔａｂｌｅタグを検出すると、ｔａｂｌｅタグの記述開始位置情報（３０行目）と、ｔａｂｌｅタグの開始位置から終了タグ＜／ｔａｂｌｅ＞の位置までの記述内容とを、セル構成マッピング手段１０２に受け渡す。
【００２９】
セル構成マッピング手段１０２は、テーブル検出手段１０１から、検出されたｔａｂｌｅタグの記述開始位置情報と、テーブル要素の記述内容とを受け取ると、ステップＳ３のセル構成のマッピング処理を開始する。このセル構成のマッピング処理は、テーブルの行単位で行う。タグで説明すると、ｔａｂｌｅタグの開始位置から終了位置までに書かれた、テーブルの行を表すｔｒタグの開始（＜ｔｒ＞）から終了（＜／ｔｒ＞）までを１つの単位として、マッピング処理を行う。セル構成のマッピング処理では、セル構成マッピング手段１０２は、まず、３１行目のｔｒタグを検出する。セル構成マッピング手段１０２は、ｔｒタグを検出すると、テーブル内のｔｒタグの位置が、テーブルの何行目に相当するかを、行位置情報として記録する。３１行目のｔｒタグは、テーブル要素内の最初のｔｒタグであるので、セル構成マッピング手段１０２は、これを、１行目と認識する。このとき、セル構成マッピング手段１０２は、ｔａｂｌｅの記述開始位置情報を基に、検出したｔｒタグの記述位置情報、例えばＨＴＭＬ内の行位置と行内の文字位置とを記録しておく。
【００３０】
セル構成マッピング手段１０２は、ｔｒタグを検出すると、検出したｔｒタグの開始位置（＜ｔｒ＞）から終了位置（＜／ｔｒ＞）までに書かれている、セルを表すｔｈタグ、又は、ｔｄタグ（以下では、ｔｄタグとして説明する）を検出する。セルの検出後、セル構成マッピング手段１０２は、各セルに対応して、縦方向にセルがいくつ続くのかを算出し、これを並べたものを、対象マッピング数列として生成する。対象マッピング数列は、例えば、テーブルの横方向のセル数が５個であれば、「１，１，０，０，１」というように、セルの数だけ数値を順に並べたものである。この例では、数値が“１”のセルは、縦方向に１つ下のセルまで連結されていることを示し、数値が“０”のセルは、縦方向に連結されたセルがないことを示している。
【００３１】
対象マッピング数列の生成では、セル構成マッピング手段１０２は、ｔｄタグの縦連結を表すｒｏｗｓｐａｎ属性に基づいて、各セルに対応する数値を算出する。ｔｄタグがｒｏｗｓｐａｎ属性を持たないときには、縦方向に連結されるセルがないので、そのセルに対応する数値は“０”となる。ｒｏｗｓｐａｎ属性を持つ場合には、ｒｏｗｓｐａｎ属性の値から１を引いた値を、そのセルに対応する数値とする。例えば、ｒｏｗｓｐａｎ＝３であれば、対象マッピング数列の値は“２”とし、ｒｏｗｓｐａｎ＝５であれば、“４”とする。また、ｔｄタグが、横連結を表すｃｏｌｓｐａｎ属性を持つ場合には、そのｔｄタグの縦連結の数値を、ｃｏｌｓｐａｎ属性の値と同じだけ繰り返す。例えば、ｒｏｗｓｐａｎ＝３で、かつ、ｃｏｌｓｐａｎ＝４の場合には、２，２，２，２と、４つのセルが同じ縦連結の長さ“２”を持つようにする。
【００３２】
図４は、図３の３０行目から３５行目までの記述内容に従って作成されるテーブルを示している。セル構成マッピング手段１０２は、テーブルの１行目の対象マッピング数列の生成では、初めに、図３の３１行目に記述されたｔｒタグ内の最初のタグであるｔｄタグを検出する。このｔｄタグのｒｏｗｓｐａｎ属性は“４”であるので、セル構成マッピング手段１０２は、このｔｄタグ（セル）に対応した対象マッピング数列の値を“３”とする。また、２つ目のｔｄタグは、ｒｏｗｓｐａｎ属性が“２”で、かつ、ｃｏｌｓｐａｎ属性が“３”であるので、セル構成マッピング手段１０２は、このｔｄタグに対応した対象マッピング数列の値を、“１，１，１”とする。３つ目のｔｄタグは、ｒｏｗｓｐａｎ属性及びｃｏｌｓｐａｎ属性を持たないので、セル構成マッピング手段１０２は、このｔｄタグに対応した対象マッピング数列の値を“０”とする。その結果、テーブルの１行目に対応して生成される対象マッピング数列は、「３，１，１，１，０」となる。
【００３３】
セル構成マッピング手段１０２は、テーブルの１行目に対応する対象マッピング数列を作成すると、対象マッピング数列を、その対象マッピング数列に対応するｔｒタグの記述位置情報と共に、またがりセル判定手段１０３へ送る。またがりセル判定手段１０３は、セル構成マッピング手段１０２からのｔｒタグの記述位置情報と対象マッピング数列を受け、セルのまたがり判定処理を行う。またがり判定処理は、対象マッピング数列で隣接する２つの数値を、それぞれＡ、Ｂとして、ＡとＢとの大小関係を比較することで行う。例えば、対象マッピング数列が「４，３，２，１，０」であった場合には、初めにＡ＝４、Ｂ＝３としてＡとＢの比較を行い、次いで、Ａ＝３、Ｂ＝２としてＡとＢの比較を行う。以降、同様に、対象マッピング数列の最後まで、隣接する値同士の比較を行う。
【００３４】
対象マッピング数列において、Ａの値がＢの値よりも小さい、すなわちＡ＜Ｂという状態は、Ａの数値に該当するセルの縦方向の長さが、Ｂの数値に対応するセルの縦方向の長さよりも短いことを意味している。この場合には、Ｂの数値に対応するセルが、Ａの数値に対応するセルを、縦方向に２つ以上またぐことになるので、「またがりあり」と判定する。この「またがりあり」と判定されたセル構成では、Ａの数値に対応するセルと、Ｂの数値に対応するセルとの間の親子関係（従属関係）が明確ではないので、この部分が、自動音声読上げの際の音声読上げ順に影響があるセルに該当する。一方、またがりセル判定手段１０３は、Ａ≧Ｂであれば、「またがりなし」と判定する。この場合は、左側のセルは、右側のセルより縦方向に長いか、又は、同じ長さなので、左右のセル間での対応関係（親子関係）が明確であり、音声読上げ順には影響がない。
【００３５】
図３の３１行目に対応する対象マッピング数列「３，１，１，１，０」（図４）について、またがり判定を行うと、数列における隣接する２つの数値は、左側が右側よりも大きいか、又は、同じ値であるため、またがりなしと判定される。セル構成マッピング手段１０２は、またがりセル判定手段１０３でのまたがりセルの判定（図２のステップＳ４）で、「またがりなし」と判定されると、テーブルの終了判定（ステップＳ５）を行い、次の行があるときには、テーブル内の行位置情報に１を加えて、次の行の対象マッピング数列を作成する。テーブル内の２行目以降の対象マッピング数列の作成では、１つ上の行で作成した対象マッピング数列を参照マッピング数列として利用し、対象マッピング数列を作成する。具体的には、参照マッピング数列における対応するセルの値が“０”以外であれば、１つ上の行からの影響を引き継いで、その値から１を引いた値を対象マッピング数列の値とする。また、参照マッピング数列の値が“０”であれば、現在の行のｔｒタグ内からｔｄタグを取得し、そのｒｏｗｓｐａｎ属性の値から１を引いた値を対象マッピング数列の値とする。
【００３６】
図５は、図４に示すテーブルの２行目に対応する対象マッピング数列の作成の様子を示している。テーブルの２行目の対象マッピング数列の作成では、その１つ上の１行目の対象マッピング数列「３，１，１，１，０」を参照マッピング数列として用いる。参照マッピング数列の先頭の値を参照すると、“３”であるので、その値から１引いた“２”を、２行目の対象マッピング数列の先頭の値とする。また、参照マッピング数列の２番目から４番目の値は“１”であるので、その値から１引いた“０”を、対象マッピング数列の２番目から４番目の値とする。参照マッピング数列の５番目の値は“０”であるので、セル構成マッピング手段１０２は、テーブルの２行目に対応するｔｒタグ（図３の３２行目）に含まれるｔｄタグを取得し、そのｒｏｗｓｐａｎ属性の値を調べる。このｔｄタグには、ｒｏｗｓｐａｎ属性が設定されていないので、対象マッピング数列の５番目の値は、“０”となる。結果として、２行目に対応する対象マッピング数列「２，０，０，０，０」が得られる。
【００３７】
上記得られた２行目の対象マッピング数列「２，０，０，０，０」について、またがり判定を行うと、数列における隣接する２つの数値は、左側が右側よりも大きいか、又は、同じ値であるため、またがりなしと判定され、次の行の対象マッピング数列の作成に移行する。図３の３０行目〜３５行目のテーブル要素では、左隣のセルを２つ以上またぐセルが存在しないため、またがり判定では、またがりなしと判定される。セル構成マッピング手段１０２は、図３の３４行目のｔｒタグの行に対するまたがり判定で「またがりなし」と判定されると、テーブルの終了判定（図２のステップＳ５）を行い、３５行目にｔｅｂｌｅタグの終了タグが記述されているため、テーブルが終了したと判断する。セル構成マッピング手段１０２は、テーブル検出手段１０１に、またがり判定を終えたｔｒタグの行位置（３４行目）及び行内でのタグ位置（１タグ目）を含む位置情報を通知すると共に、その位置からテーブルの検出を再開するように指示する。
【００３８】
テーブル検出手段１０１は、通知された位置情報に基づいて、その行位置から、テーブルの検出を再開し、図３の５０行目で、再びテーブル要素を検出する。図６は、図３の５０行目から５４行目までの記述内容に従って作成されるテーブルを示している。セル構成マッピング手段１０２にて、このテーブルの１行目（図３の５１行目のｔｒタグ）について対象マッピング数列を作成すると、このｔｒタグ内のｔｄタグのｒｏｗｓｐａｎ属性は、順に、「２，３，属性なし」となっているので、この行の対象マッピング数列は、「１，２，０」となる。この対象マッピング数列に対してまたがり判定を行うと、先頭の値“１”が２番目の値“２”よりも小さいため、またがりありと判定される。またがりセル判定手段１０３は、「またがりあり」と判定すると、検査結果出力手段１０４に、音声読上げ順に影響があるセルが検出された旨と、そのセルの記述位置情報とを出力する。具体的には、記述位置情報として、５１行目の１タグ目を、検査結果出力手段１０４に出力する。また、テーブル検出手段１０１に、音声読上げ順に影響があるセルの記述位置情報を通知すると共に、その位置からテーブルの検出を再開するように指示する。
【００３９】
テーブル検出手段１０１は、テーブル検出の再開を指示されると、セル構成マッピング手段１０２又はまたがりセル判定手段１０３から通知された記述位置、すなわちテーブルの終了位置、又は、音声読上げ順に影響があるセルの記述位置から、テーブル検出を再開する。テーブル検出手段１０１は、ステップＳ１で、ＨＴＭＬテキストの最終行まで検査を終えたと判断すると、テーブル検出を終了し、検査結果出力手段１０４に、検査結果の出力を指示する。
【００４０】
検査結果出力手段１０４は、またがりセル判定手段１０３で「またがりあり」と判定された行についてのｔｒタグの記述位置情報を内部に蓄積していく。検査結果出力手段１０４は、テーブル検出手段１０１でのテーブル検出が終了すると、蓄積したｔｒタグの記述位置情報を、映像出力装置３００で表示可能な形式で出力する。検査結果出力手段１０４は、映像出力装置３００に、例えば「検査の結果、音声読上げ順に影響のある、以下のセル連結を含むタグが見つかりました」という表示と共に、蓄積したｔｒタグの記述位置情報を表示させる。また、ｔｒタグの記述位置情報が蓄積されていなければ、映像出力装置３００に、例えば「検査の結果、音声読上げ順に影響のあるセル連結はありませんでした」などのメッセージを表示させる。このような表示を参照することで、コンテンツ製作者は、ＨＴＭＬテキスト中のテーブルのどの位置に、音声読上げ順に影響があるセルがあるのかを知ることができる。
【００４１】
本実施形態では、Ｗｅｂコンテンツからテーブル要素を検出し、検出したテーブル要素のセル構成をマッピングし、テーブル内に、左隣のセルを縦方向に２つ以上またぐセルが存在するか否かを調べる。左隣のセルを２つ以上またぐセルを含むテーブルが検出されたときには、映像出力装置３００に、音声読上げ順に影響があるテーブルが存在する旨を表示する。このようにすることで、コンテンツ製作者は、音声読上げ装置でＷｅｂコンテンツが読み上げられる際に、意図した順序と異なる順序で読み上げられるテーブルが存在することを知ることができ、そのようなテーブルにおけるセル構成を修正することで、アクセシビリティの高いＷｅｂコンテンツを提供することができる。
【００４２】
なお、上記実施形態では、音声読上げ順に影響があるセルがあると判定されたときには、その時点でテーブルの検査を終了し、テーブル検出手段１０１により次のテーブルの検出を行う例について示したが、その時点でテーブルの検査を終了せずに、テーブル内の検査、すなわち音声読上げ順に影響があるセルの判定を継続してもよい。上記実施形態では、テーブル検出手段１０１は、セル構成マッピング手段１０２又はまたがりセル判定手段１０３から通知された記述位置情報の位置からテーブル検出を再開する際について示したが、これには限定されない。例えば、テーブル検出手段１０１がテーブルを検出した際に、その検出したテーブルの終了位置を記憶しておき、テーブル検出の再開指示を受けて、その終了位置からテーブル検出を再開する構成とすることもできる。また、またがりセル判定手段１０３で、音声読上げ順位影響があるセルが存在すると判定されたときには、そのセルを含むテーブルの終了位置から、テーブル検出を再開する構成としてもよい。
【００４３】
以上、本発明をその好適な実施形態に基づいて説明したが、本発明のコンテンツ検査システム及び方法は、上記実施形態例にのみ限定されるものではなく、上記実施形態の構成から種々の修正及び変更を施したものも、本発明の範囲に含まれる。
【図面の簡単な説明】
【００４４】
【図１】本発明の一実施形態のコンテンツ検査システムの構成を示すブロック図。
【図２】コンテンツ検査システムの動作手順を示すフローチャート。
【図３】検査対象のＨＴＭＬテキストの具体例を示す図。
【図４】縦連結セルと横連結セルとを含んだテーブルの１行目を対象マッピング数列に置き換えた例を示す図。
【図５】図４に示すテーブルの２行目を対象マッピング数列に置き換えた例を示す図。
【図６】左隣のセルをまたぐセルが存在するテーブルの例を示す図。
【図７】（ａ）及び（ｂ）は、それぞれ縦方向連結セルを有するテーブルを示す図。
【図８】（ａ）及び（ｂ）は、それぞれ縦方向連結セルを含むテーブルの別の例を示す図。
【符号の説明】
【００４５】
１０：コンテンツ検査システム
１００：コンピュータ（中央処理装置、プロセッサ、データ処理装置）
１０１：テーブル検出手段
１０２：セル構成マッピング手段
１０３：またがりセル判定手段
１０４：検査結果出力手段
２００：記録装置
３００：映像出力装置（モニタ）
【図１】
2008015141.tif 000003
【図２】
2008015141.tif 000004
【図３】
2008015141.tif 000005
【図４】
2008015141.tif 000006
【図５】
2008015141.tif 000007
【図６】
2008015141.tif 000008
【図７】
2008015141.tif 000009
【図８】
2008015141.tif 000010