JP2009093521A - アクセシビリティ情報を得る方法、コンピュータ・プログラム及びアクセシビリティ情報装置 - Google Patents

アクセシビリティ情報を得る方法、コンピュータ・プログラム及びアクセシビリティ情報装置 Download PDF

Info

Publication number
JP2009093521A
JP2009093521A JP2007265234A JP2007265234A JP2009093521A JP 2009093521 A JP2009093521 A JP 2009093521A JP 2007265234 A JP2007265234 A JP 2007265234A JP 2007265234 A JP2007265234 A JP 2007265234A JP 2009093521 A JP2009093521 A JP 2009093521A
Authority
JP
Japan
Prior art keywords
information
role
accessibility
output
accessibility information
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2007265234A
Other languages
English (en)
Other versions
JP5110640B2 (ja
Inventor
Daisuke Sato
大介 佐藤
Takashi Miyashita
尚 宮下
啓伸 ▲高▼木
Hironobu Takagi
Chieko Asakawa
智恵子 浅川
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Priority to JP2007265234A priority Critical patent/JP5110640B2/ja
Priority to US12/238,787 priority patent/US8132099B2/en
Publication of JP2009093521A publication Critical patent/JP2009093521A/ja
Application granted granted Critical
Publication of JP5110640B2 publication Critical patent/JP5110640B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/103Formatting, i.e. changing of presentation of documents

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Health & Medical Sciences (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Artificial Intelligence (AREA)
  • Information Transfer Between Computers (AREA)
  • Stored Programmes (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

【課題】リッチ・インターネット・アプリケーションのコンテンツにおけるアクセシビリティ情報を得る方法、コンピュータ・プログラム及びアクセシビリティ情報装置を提供すること。
【解決手段】アクセシビリティ情報を得る方法は、表示画面に表示されたコンテンツのオブジェクトを実験環境で実行するステップと、オブジェクトを実行したことに応じて、オブジェクトから出力された出力情報とオブジェクトの状態とに基づき、予め用意された複数のオブジェクトに関する参照モデル情報を用いてオブジェクトの役割を推定するステップと、推定されたオブジェクトの役割を、アクセシビリティ情報として出力するステップと、を含む。
【選択図】図1

Description

本発明は、リッチ・インターネット・アプリケーションのコンテンツにおけるアクセシビリティ情報を得る方法、コンピュータ・プログラム及びアクセシビリティ情報装置に関する。
近年、Flash(登録商標)やDynamic HTML(DHTML)に代表されるようなリッチ・インターネット・アプリケーション(RIA)が大幅に増加してきている。Ajax(Asynchronous Javascript(登録商標)+XML)の勃興により、DHTMLは多くのWebアプリケーションで積極的に活用されるようになってきている。また、1996年には単純なアニメーションを表現するだけだったFlashも、その後の10年間で98%以上のコンピュータにインストールされるようになっている。Flashは、音声出力、スクリプトによるユーザ・インタラクション、GUI(Graphical User Interface)コンポーネントの提供、高度な画像処理機能、ストリーミング動画等に対応し、インタラクティブなコンテンツを提供するためのプラットフォームとしての地位を確立している。
このように、RIAがWeb上で積極的に活用されている一方で、アクセシビリティの重要性も増している。DHTMLやFlash等のRIAでは、(1)視覚的な効果を重視するために、テキストを用いずにイメージで情報を表現することが多い(その際に、イメージ情報の注釈の役割をする代替テキストが用意されていないことも多い)。また、(2)Javascript(登録商標)の標準規格であるECMAScriptを用いて、ユーザ・インターフェースを設計するために、スクリプトによってプレゼンテーションが制御される。そのため、コンテンツの各オブジェクトがどのようなRole(役割)を持っているのかを知ることが難しい。
DHTMLにおいては、WAI−ARIA(http://www.w3.org/TR/aria−roadmap/)とよばれる標準制定活動が始まっており、アクセシビリティを確保するためのフレームワークが制定されつつある。しかし、WAI−ARIAは、コンテンツの作成者がスクリプトを用いて適切にRoleやState(状態)等の情報を付与する必要がある。そして、現状において、WAI−ARIAに対応しているコンテンツは、ほとんど存在しない。
Flashについても、アクセシビリティの機構が用意されており、RoleやStateの情報をMSAA(Microsoft(登録商標) Active Accessibility)とよばれるメカニズムを用いて通知する方法が用意されている。しかし、実際には、Flashのアクセシビリティに対する取り組みは少ない。そのため、インターネット上のほとんどのFlashコンテンツはアクセシブルではなく、画面の読み上げを行うスクリーン・リーダを使ってコンテンツにアクセスする視覚障害者のユーザにとっては、ほとんど操作することができない。
Microsoft Corporation、"Microsoft Active Accessibility"、[online]、[2007年9月27日検索]、インターネット<URL:http://msdn2.microsoft.com/en−us/library/ms697707.aspx>
このように、RIAでは、多くのコンテンツがアクセシブルでないのは、以下の主に3つの問題から引き起こされている。第1に、オブジェクトに対して、ボタンやリンク等のRoleやStateの情報が正しく提供されないことである。第2に、代替テキストが提供されていないことである。そして、第3に、スクリプトとしてコンテンツが提供されるため、アクセシビリティの問題を発見し、修復することが難しいことである。
本発明は、リッチ・インターネット・アプリケーションのコンテンツにおけるアクセシビリティ情報を得る方法、コンピュータ・プログラム及びアクセシビリティ情報装置を提供することを目的とする。
本発明の1つの態様では、以下のような解決手段を提供する。
本発明の第1の形態によると、リッチ・インターネット・アプリケーションのコンテンツにおけるアクセシビリティ情報を得る方法を提供する。アクセシビリティ情報を得る方法は、表示画面に表示されたコンテンツのオブジェクトを実験環境で実行する。そして、実行したことによりオブジェクトから出力された出力情報とオブジェクトの状態とに基づき、予め用意された複数のオブジェクトに関する参照モデル情報を用いてオブジェクトの役割を推定する。また、オブジェクトの状態は、推定されたオブジェクトの役割を、アクセシビリティ情報として出力する。出力は内部モデルに対して行われる。なお、リッチ・インターネット・アプリケーションは、Flash及びDynamic HTMLの少なくともいずれか一方を用いて作成される。
本発明の第2の形態によると、オブジェクトと、オブジェクトの近傍に表示されるテキスト・オブジェクトとの位置関係に基づき、テキスト・オブジェクトを、オブジェクトを表す代替テキストと推定する。位置関係は、オブジェクトのサイズを計測し、オブジェクトのサイズがゼロか否かに応じて、所定の条件式を満たすテキスト・オブジェクトを代替テキストと推定する。また、位置関係に基づき代替テキストが推定されない場合において、オブジェクトを実験環境で実行したことに応じてコンテンツを形成するプログラムから取得した、オブジェクトに割当てられたシンボル情報を、オブジェクトの代替テキストと推定する。
本発明の第3の形態によると、オブジェクトの役割が推定された場合であって、代替テキストが推定されない場合に、オブジェクトのサイズを計測し、オブジェクトのサイズが所定の大きさを満たしたことを条件に、オブジェクトの役割を判断する。そして、判断結果に応じて、既に推定されたオブジェクトの役割に関する推定を取り消す。
本発明の第4の形態によると、オブジェクトの役割は、様々な検証の結果推定される。実験環境を初期化し、オブジェクトの状態を記録し、記録したオブジェクトの状態と、参照モデル情報の状態とを照合し、照合された参照モデル情報の次にとりうる遷移に対する状態を取得し、取得した参照モデル情報の状態における出力情報と、オブジェクトを実行したことに応じてオブジェクトから出力された出力情報とを検証し、検証結果に応じて、参照モデル情報に基づきオブジェクトの役割を推定する。また、オブジェクトの実行に関して、オブジェクトを実行する前に、実験環境を保存し、オブジェクトの入力の送出に応じて、オブジェクトの状態を記録し、オブジェクトを実行した後に、実験環境を復帰することを含むものである。更に、取得した参照モデル情報の出力情報を、実行したオブジェクトの出力情報が含むか否かを検証する。
また、本発明は、別の態様として、コンピュータにおいて実行されるコンピュータ・プログラムあるいはアクセシビリティ情報取得装置としても提供できる。
本発明の利点は以下の通りである。
第1に、表示画面に表示されたコンテンツのオブジェクトを実験環境で実行したことによりオブジェクトから出力された出力情報と、オブジェクトの状態とに基づき、予め用意された複数のオブジェクトに関する参照モデル情報を用いてオブジェクトの役割を推定する。よって、オブジェクトにアクセシビリティ情報を有していなくても、実行時の出力及び内部状態から、アクセシビリティ情報を得ることができる。また、出力は内部モデルに対して行われるので、内部モデルを用いてアクセシビリティ情報を音声で出力することができ、視覚障害者にとって有益な情報を得ることができる。更に、内部モデルを用いてコンテンツ作成時にアクセシビリティ情報を予め入力することができる。
第2に、オブジェクトと、オブジェクトの近傍に表示されるテキスト・オブジェクトとの位置関係に基づき、テキスト・オブジェクトを、オブジェクトを表す代替テキストと推定することができる。よって、オブジェクトにアクセシビリティ情報を有していなくても、オブジェクトとテキスト・オブジェクトとによって代替テキストを推定することで、アクセシビリティ情報を得ることができる。また、オブジェクトのサイズがゼロの場合を考慮して、アクセシビリティ情報を得ることができる。更に、オブジェクトを実験環境で実行することにより、プログラムからオブジェクトのシンボル情報を取得することができる。このシンボル情報を、オブジェクトの代替テキストと推定することができるので、オブジェクトを表すアクセシビリティ情報を得ることができる。
第3に、オブジェクトの役割の推定について、代替テキストが推定されない場合に、オブジェクトのサイズを計測し、オブジェクトのサイズが所定の大きさを満たしたことを条件に、オブジェクトの役割を判断し、判断結果に応じて、既に推定されたオブジェクトの役割に関する推定を取り消す。つまり、誤ってオブジェクトの役割を推定したもののうち、特定のものに関して、所定の処理により役割の推定を取り消すことができる。よって、推定の誤りを少なくすることができる。
第4に、オブジェクトの役割の推定を、実験環境でオブジェクトを実行し、参照モデルを用いた検証処理により、オブジェクトの役割を検証することができる。よって、推定されたオブジェクトの役割の正当性を確認することができる。役割をアクセシビリティ情報として出力するので、ユーザにとって有益なアクセシビリティ情報を得ることができる割合を向上させることができる。
本発明によれば、リッチ・インターネット・アプリケーションのコンテンツにおいて、オブジェクトの代替テキスト及び役割を推定し、推定した代替テキスト及び役割を用いることで、アクセシビリティ情報を得る方法、コンピュータ・プログラム及びアクセシビリティ情報装置を提供することができる。
以下、本発明の実施形態について、図面に基づいて以下に説明する。図1は、本発明の実施形態に係るアクセシビリティ情報取得システム100の構成の一例を示す図である。アクセシビリティ情報取得システム100は、RIAのコンテンツにおけるオブジェクト(以下、コンテンツのオブジェクト、又は単にオブジェクトという)のアクセシビリティ情報を取得するアクセシビリティ情報取得装置1と、取得したアクセシビリティ情報を音声データとしてユーザに通知する音声部8とからなるシステムである。アクセシビリティ情報取得装置1は、制御部10として、実験環境制御部11、視覚情報解析部12及び役割推定部13を有する。また、コンテンツ実行エンジン14、参照モデル記憶部15及び内部モデル16を有する。
実験環境制御部11は、各ユーザが使用するパソコン等の表示部(図示せず)に、コンテンツ実行エンジン14として、例えば、ブラウザを介して表示されたコンテンツのオブジェクトを実行する実験環境を制御する。他に影響を与えずに実行可能なこのような実験環境を、Sandbox環境という。実験環境にてコンテンツのオブジェクトを実行することで、アクセシビリティ情報となる代替テキスト及びRoleを推定する。視覚情報解析部12は、オブジェクトと、当該オブジェクトの近傍に表示される情報とから、オブジェクトに関連する情報か否かを解析する。より具体的には、オブジェクトと、当該オブジェクトの近傍に表示されるテキスト・オブジェクトとの位置関係に基づき、テキスト・オブジェクトを、オブジェクトを表す代替テキストとして推定する。役割推定部13は、参照モデル記憶部15の複数の参照モデルを用いて、該当のオブジェクトの役割を推定する。参照モデル記憶部15は、予め用意した複数の参照モデルを記憶する。内部モデル16は、制御部10により取得したアクセシビリティ情報を受け付ける。
次に、アクセシビリティ情報を代替テキストにより推定する処理について説明する。図2は、オブジェクトの代替テキストを推定する処理のフローチャートを示す。図3は、図2のフローチャートの内容を説明するための図である。
まず、図2のステップS11において、視覚情報解析部12は、オブジェクトと、画面(図示せず)上に表示されているテキスト・オブジェクトとの視覚的関係による代替テキストの推定を行う。あるテキスト・オブジェクトがオブジェクトの代替テキストであるか否かは、当該オブジェクトとテキスト・オブジェクトとの視覚的な関係を調べることで推定する。あるオブジェクトWに対する代替テキストtとの関係は、以下の数式で決定する。
Figure 2009093521
図3を用いて、より具体的に説明する。図3(a)は、オブジェクトWがボタンであり、オブジェクトWのサイズがある(サイズがゼロではなく、一定の範囲を有する)場合を示している。オブジェクトWの範囲であるボタンの領域31は、面積を有するため、ボタンのオブジェクトWの近傍に表示されるテキスト・オブジェクトt1の範囲である領域32と、一定の重なり領域33を有する(図3(a)右図参照)。このように、あるオブジェクトWとテキスト・オブジェクトt1との重なりが一定以上ある場合は、オブジェクトWの近傍に有するテキスト・オブジェクトt1を代替テキストtと推定することができる。
他方、図3(b)は、オブジェクトWはボタンであるが、オブジェクトWのサイズがない(サイズがゼロである)場合を示している。例えば、Flashにより作成されたコンテンツのオブジェクトには、サイズがゼロのボタンのオブジェクトが存在する。この場合、オブジェクトWが有する相対位置を用いる。まず、ボタンを示すオブジェクトWの位置34とオブジェクトWの位置34から右下に表示されたテキスト・オブジェクトt1の領域32との位置関係を検討する。そして、オブジェクトWの位置34からテキスト・オブジェクトt1へ、最短となる直線を引いたときの長さDと、テキスト・オブジェクトt1の領域32の対角線の長さdとを比較し、D<dである場合にテキスト・オブジェクトt1を代替テキストtと推定することができる。これは、オブジェクトWについてのテキスト・オブジェクトt1は、一般的に、オブジェクトWに十分に近く、かつオブジェクトWの右下に存在する、との経験則に基づく。
図2に戻って、次に、ステップS13では、制御部10は、代替テキストを推定できたか否かを判断する。上述の図3(a)及び(b)のいずれにも該当するテキスト・オブジェクトが存在しない場合には、代替テキストが推定できていない。代替テキストが推定できた場合(ステップS13:Y)には、制御部10は、代替テキストが推定できたため、本処理を終了する。他方、代替テキストが推定できていない場合(ステップS13:N)には、制御部10は、ステップS15において、オブジェクトにコンテンツ作成者が付けた名前(シンボル)による代替テキストの推定を行う。
プログラマ等のコンテンツ作成者は、オブジェクトに任意に名前を付けてプログラミングに利用する。プログラムを組む上で操作の対象となるオブジェクトを参照するには、オブジェクトに名前を付ける必要があるためである。コンテンツ作成者は、例えば、ビデオを再生するためのボタンに、「play_button」という名前を付ける。このようにして付けられた名前は、オブジェクトを端的に表すことが多いという経験則に基づき、名前を利用するのである。名前は、コンテンツ作成者自身の理解のために必要なのは当然のこと、コンテンツ作成者以外の人にも理解の助けになると考えられるため、オブジェクトの代替テキストとして利用する。ただし、プログラム上で操作されないオブジェクトには名前を付ける必要がないため、ランタイムの都合上「instance#」(#は1,2,…)等の名前が自動的に付くことがあるが、代替テキストとしては不適切である。そのため、「instance#」等の明らかにオブジェクトの意味を表さない名前は、予め記憶部(図示せず)に、例えばリスト形式で記憶することで、代替テキストから除外する。この名前は、実験環境制御部11による実験環境での実行時に、役割推定部13がインタプリタの助けを借りて取得し、視覚情報解析部12が名前に基づき代替テキストを推定する。
ステップS15の処理の後、制御部10は、本処理を終了する。本処理により、代替テキストのないオブジェクトに対して、代替テキストを推定することができる。
次に、アクセシビリティ情報をRoleにより推定する処理について説明する。図4は、オブジェクトのRoleを推定する処理のフローチャートを示す。図5から図7は、図4のフローチャートの内容を説明するための図である。
まず、図4のステップS31において、制御部10(実験環境制御部11、役割推定部13)は、オブジェクトの実行時の出力及び内部状態からRoleを推定する。
ここで、Roleの推定方法について説明する。Flash及びDHTMLは、実行時に型情報が決定されるECMAScriptという言語を用いているため、静的にアクセシビリティ情報を検出することは難しい。そこで、実験環境でスクリプトを実行する際に解析することで、シミュレーションによって参照モデルからアクセシビリティ情報を推測する。シミュレーションは、参照モデルと実行時モデルとの等価性や包含関係を検証するための技法である。本発明では、オブジェクトに対して実際にクリック等の入力を行い、状態がどのように変化するか、また、それが参照モデルとどのように対応するかを検証することによって、アクセシビリティ情報を推定する。
より詳細に説明すると、まず、アクセシビリティ情報を推測したいオブジェクトの内部の状態に着目する。ECMAScriptでは、オブジェクトの状態sは、プロパティ(property)とバリュー(value)とのペアで表現されている。これ以外の実行時に用いられる状態は、全て「環境(Environment)」とみなす。図5(a)に、シミュレーションにおける実行モデルの概念図を示す。オブジェクトのプロパティとバリューとのペアが、オブジェクトの状態41であり、オブジェクトの状態41以外が環境42である。
また、本発明では、オブジェクトのアクセシビリティで必要なRoleや状態を推定するために、参照モデルを用意する。参照モデルは、例えば、図5(b)及び(c)に示すようなミーリ・マシン(Mealy Machine)と等価なモデルで定義することができる。図5(b)及び(c)は、一般的な意味でのボタンの参照モデルの例である。図5(b)は、オブジェクトがp1から「click」されたことによって、別の状態p2に遷移したことを意味している。なお、「click」の次に書かれた「ε」は、出力を表すが、「ε」自体は外部に何も出力しないことを示す。図5(c)は、オブジェクトがp1から「click」されたことによって外部に何らかの出力「o1」をしたことを意味している。オブジェクトの状態は明示的にモデル中に指定することもできるが、モデル中で別々の状態は別々のオブジェクトの状態を指すとゆるく指定することもできる。
実際のオブジェクトに対しても、「click」イベントを送るシミュレーションを行うことで、これらのモデルとの適合関係を見て、ボタンであるかどうかを推測することができる。例えば、図5(b)のモデルにしたがっているボタンは、クリックするとオブジェクトそのものが何らかの影響を与えることがわかる。図5(c)のモデルは、クリックすることによって環境に対して何らかの出力を出すものであることがわかる。例えば、出力が「getURL」メソッドの呼び出しであったならば、ブラウザ上では何らかのページ遷移が発生することがわかる。あるボタンがページ遷移を引き起こすことは、視覚障害者にとっては非常に有益な情報である。このとき、URL(Uniform Resource Locator)を取得して、読み上げを行うことができれば、視覚障害者にとってどのようなボタンであるかを理解する助けとなる。図5(b)及び(c)において例として示した参照モデルは、参照モデル記憶部15(図1参照)に記憶される。
図6に、参照モデル記憶部15に記憶される参照モデルテーブル150を示す。参照モデルテーブル150は、Role151と参照モデル152とからなり、Role毎に参照モデルが1又は複数記憶されている。例えば、Role151が「ボタン」である場合は、「click」をするモデルと「onPress」をするモデルの2つの参照モデルが定義されている。なお、図4のステップS31により推定したRoleの検証方法については、後述する。
図4に戻って、次に、ステップS33では、制御部10(視覚情報解析部12)は、オブジェクトとテキスト・オブジェクトとの視覚的関係により、代替テキストが推定されたか否かを判断する。オブジェクトとテキスト・オブジェクトとの視覚的関係により代替テキストを推定する処理は、上述の図2のステップS11の結果を用いる。代替テキストが推定された場合(ステップS33の処理でYESが判断される場合)には、制御部10は、本処理を終了する。他方、代替テキストが推定されなかった場合(ステップS33の処理でNOが判断される場合)には、制御部10は、ステップS35に処理を移す。
ステップS35では、制御部10は、Roleが、オブジェクトに関するクリックによる操作が必要なRoleではないと判断されたか否かを判断する。これは、オブジェクトとテキスト・オブジェクトとの視覚的関係により、代替テキストが推定されなかったオブジェクトWについて、次の条件で、オブジェクトWに関するクリックのみで動作するRole(例えば、ボタンやチェックボックス、ラジオボタン等)ではないと判断する。
Figure 2009093521
この式の意味するところは、ボタン等のRoleを持つオブジェクトは、ユーザの操作対象となる。そのため、Roleが、ある一定以上の大きさを持ち、かつ形状が細長すぎないことを条件としたものである。例えば、図7に示すオブジェクトのうち、タイムライン51、ボリューム52及び測定表示53は、各オブジェクトを操作するための、onPress等のイベントハンドラを持つ。上述のボタン等のRoleを持つオブジェクトも、同様にonPress等のイベントハンドラを持つため、何の考慮もしないと、ボタンではない種類のオブジェクトをボタンと誤認してしまう。そのため、ある一定以上の大きさを持たないもの、又は、ある一定以上細長い形状をしたオブジェクトは、ボタン等のRoleを持つオブジェクトではないと推定する。
ステップS35で、クリックによる操作が必要ではないと判断された場合(ステップS35の処理でYESが判断される場合)には、制御部10は、処理をステップS37に移す。他方、クリックによる操作が必要であると判断された場合(ステップS35の処理でNOが判断される場合)には、制御部10は、本処理を終了する。
ステップS37では、制御部10は、ステップS31で推定されたRoleの候補から、当該オブジェクトをはずす処理を行う。その後、制御部10は、本処理を終了する。本処理により、オブジェクトのRoleを推定することができ、推定されたRoleをアクセシビリティ情報とすることができる。
次に、図4のステップS31で推定したRoleを検証するフローチャートについて説明する。図8から図10は、実際のオブジェクトが参照モデルを含んでいるかをチェックするフローチャートを示す。ここで、チェック対象となるオブジェクトを、対象オブジェクトoとする。
まず、図8のステップS51において、制御部10(実験環境制御部11)は、対象コンテンツの初期化を行う。具体的には、Sandbox環境で、対象オブジェクトoを含むコンテンツを、検証を行いたい状態に戻す。そして、Oexで示される出力リストを空にする。Oexは、実際のオブジェクトを実行したことにより出力された情報を格納する領域である。
次に、ステップS52では、制御部10は、参照モデルの初期化を行う。具体的には、検証を行う参照モデルの現在の状態を初期状態(init)にし、Orefで示される出力リストを空にする。Orefは、参照モデルの出力情報を格納する領域である。
次に、ステップS53では、制御部10(役割推定部13)は、初期状態である参照モデルの状態sについての検証を行う。ここで、参照モデルの状態sについての検証について、図9を用いて説明する。
まず、図9のステップS101では、制御部10は、対象オブジェクトoの状態が辞書に記録済か否か、つまり、対象オブジェクトoの状態が記憶部に記憶された辞書に既に記録されているか否かを判断する。記録済である場合(ステップS101:Y)には、制御部10は、処理をステップS102に移し、他方、記録済でない場合(ステップS101:N)には、制御部10は、処理をステップS103に移す。
ステップS102では、制御部10は、対象オブジェクトと参照モデルとを照合し、参照モデルの現在の状態sと、辞書に記録されている状態s’とが一致するか否かを判断する。状態が一致する場合(ステップS102:Y)には、制御部10は、処理をステップS104に移す。他方、状態が一致しない場合(ステップS102:N)には、制御部10は、処理をステップS109に移し、参照モデルには適合しないと判定(false)した後に、本検証処理を終了する。
ステップS103では、制御部10は、辞書に対象オブジェクトの新規状態を記録する。具体的には、辞書に新たな項目を追加し、対象オブジェクトoの状態と、参照モデルの現在の状態sとを結び付けて記録する。
ステップS104では、制御部10は、現在の状態から次にとりうる遷移の集合を取得する。そして、各々の遷移に対して、出力out、入力in、次の状態sを取得する。これは、次にとりうる遷移が複数ある場合は、その各々に対して処理を行う。次に、ステップS105では、制御部10は、ステップS104で取得したデータを用いて遷移の評価を行う。ここで、遷移の評価について、図10を用いて説明する。
図10のステップS121では、制御部10は、評価しようとする遷移が検証済か否かを判断する。検証済である場合(ステップS121:Y)には、制御部10は、処理をステップS129に移し、参照モデルに適合すると判定(true)した後に、本評価処理を終了する。他方、検証済ではない場合(ステップS121:N)には、制御部10は、処理をステップS122に移す。
ステップS122では、制御部10は、Sandbox環境を保存する。具体的には、Oref及びOexを保存した上で、Orefに対してステップS105からパラメータである出力outを追加する。次に、ステップS123では、対象オブジェクトoへの入力の送出を行う。具体的には、対象オブジェクトoに対して入力inを送出し、出力の集合をOexに追加する。
次に、ステップS124では、ステップS123によって得られる状態sについて、検証を行う。つまり、再度、図9を呼び出す。つまり、処理を入れ子とすることで、検証済となるまで評価と遷移を繰り返して、対象オブジェクトoを検証する。次に、ステップS125では、評価結果が適合(true)か否かを判断する。評価結果が適合すると判断された場合(ステップS125:Y)には、制御部10は、処理をステップS126に移す。他方、評価結果が適合しないと判断された場合(ステップS125:N)には、制御部10は、処理をステップS127に移し、参照モデルには適合しないと判定(false)した後、本遷移処理を終了する。
他方、ステップS126では、制御部10は、OrefがOexと等しいか又はOrefがOexに含まれるか否かを判断する。OexがOrefに含まれるとしたのは、Oexの方が、イベントが発生した際に生じる状態が様々存在することを考慮したからである。上記の条件に合致した場合(ステップS126:Y)には、制御部10は、処理をステップS128に移す。他方、上記の条件に合致しなかった場合(ステップS126:N)には、制御部10は、上述のステップS127の処理を行った後、本遷移処理を終了する。
ステップS128では、制御部10は、Sandbox環境を復帰する。すなわち、保存されたOref及びOexを復帰する。その後、上述のステップS129の処理を行い、本評価処理を終了する。
図9に戻って、ステップS106において、制御部10は、遷移の評価結果が適合(true)か否かを判断する。遷移の評価結果が適合する場合(ステップS106:Y)には、制御部10は、処理をステップS107に移す。他方、遷移の評価結果が適合しない場合(ステップS106:N)には、制御部10は、上述のステップS109の処理を行い、本検証処理を終了する。
ステップS107では、制御部10は、全ての遷移について行ったか否かを判断する。全てとは、上述のステップS104にて次にとりうる遷移が複数存在した場合に、その全てをいう。全ての遷移について行った場合(ステップS107:Y)には、処理をステップS108に移す。他方、全ての遷移について行っていない場合(ステップS107:N)には、処理をステップS104に移し、他の遷移についても評価処理を行う。
ステップS108では、制御部10は、参照モデルに適合すると判定(true)し、本検証処理を終了する。
図8に戻って、ステップS54では、制御部10は、評価結果が適合(true)か否かを判断する。検証の評価結果が適合である場合(ステップS54:Y)には、制御部10は、ステップS55にて参照モデルに適合すると判定(true)した後、本処理を終了する。他方、検証の評価結果が適合でない場合(ステップS54:N)には、制御部10は、ステップS56にて参照モデルに適合しないと判定(false)した後、本処理を終了する。
図8から図10で説明したフローチャートをより理解するため、具体例を示す。図11は、checkboxの参照モデルである。この参照モデルについて、図8から図10で説明したフローチャートを適用する。ここで、検証するコンテンツのcheckboxを対象オブジェクトoとする。この対象オブジェクトoは、例えば、checkboxをon/offするたびに、別window側でコンテンツがロードされて表示されたり、表示されなくなったりするものである。
1.対象コンテンツの初期化。これは、対象オブジェクトoがdragやマウス操作等を受け付ける状態にまでコンテンツの状態を戻すことをさす。また、Oexを空にする。
2.参照モデルの初期化。初期状態はp1であるため、現在の状態をp1とする。また、Orefを空にする。
3.check(o,p1)を評価する。以降、check()の説明に移る。
4.対象オブジェクトoの状態を記録する。例えば、oにはcheckedプロパティが定義されており、初期値がfalseであったとする。そこで、checked:falseのペアを状態として記録する。
5.先ほどの状態(checked:false)は、記録済みではないため、辞書に新たに項目を追加し、現在の状態であるp1と結び付けて記録する。
6.p1から遷移できる状態は図11よりp2のみであるため、trans(φ,click,p2)を評価する(ここでφは出力がないことを示す)。以降trans()の説明に移る。
7.(click,p2)はまだ検証されていないため、評価を継続する。
8.Sandbox環境を保存し、Oref、Oexを保存する。Orefに対しては、outがφであるため、何も追加しない。
9.対象オブジェクトoに対して、clickを送出する。コンテンツが動作し、何らかの出力を出す。ここでは、例えば、getURLが出力されるものとする。そこで、Oex={getURL}となる。
10.再帰的にcheck(o,p2)を評価する。以降、同様にcheck()の説明に移る。
11.対象オブジェクトoの状態を記録する。ここで、checkedプロパティの値がtrueであったとする。そこで、checked:trueのペアを状態として記録する。
12.先ほどの状態(checked:true)は、記録済みではないため、辞書に新たに項目を追加し、現在の状態であるp2と結び付けて記録する。
13.p2から遷移できる状態は、図11よりp1のみであるため、trans(φ,click,p1)を評価する。以降、再度trans()アルゴリズムの説明に移る。
14.(click,p1)はまだ検証されていないため、評価を継続する。
15.Sandbox環境を保存し、Oref、Oexを保存する。Orefに対しては、outがφであるため、何も追加しない。
16.対象オブジェクトoに対して、clickを送出する。コンテンツが動作し、何らかの出力を出す。ここでは、例えば、getURLが出力されるものとする。そこで、Oex={getURL,getURL}となる。
17.再帰的にcheck(o,p1)を評価する。以降、同様にcheck()の説明に移る。
18.対象オブジェクトの状態を記録する。ここで、checkedプロパティの値がfalseであったとする。そこで、checked:falseのペアを状態として記録する。
19.先ほどの状態(checked:true)は、記録済みであり、辞書中にp1として記録されており、現在の状態であるp1と一致するため、評価は継続される。
20.p1から遷移できる状態は、p2のみであるため、trans(φ,click,p2)を評価する。以降、三度trans()アルゴリズムの説明に移る。
21.(click,p2)は検証済みであるため、検証は適合となる。
22.3番目のcheck()アルゴリズムの評価に戻る。結果は適合であり、全ての遷移について行ったため適合となる。
23.2番目のtrans()の評価に戻る。check()の結果は適合であるため、Oref⊆Oexをチェックする。Oref=φであるため、評価は継続される。
24.Sandbox環境を元に戻す。Oref及びOexを元に戻す。Oref=φとなり、Oex={getURL}となる。最終的に、trans()は適合となる。
25.2番目のcheck()アルゴリズムの評価に戻る。結果は適合であり、全ての遷移について行ったため適合となる。
26.1番目のtrans()の評価に戻る。check()の結果は適合であるため、Oref⊆Oexをチェックする。Oref=φであるため、評価は継続される。
27.Sandbox環境を元に戻す。Oref及びOexを元に戻す。Oref=φとなり、Oex=φとなる。最終的に、trans()は適合となる。
28.1番目のcheck()アルゴリズムの評価に戻る。結果は適合であり、全ての遷移について行ったため適合となる。
29.1番目のcheck()アルゴリズムが適合と返してきたため、最終的に対象オブジェクトはcheckbox参照モデルに適合していると判定する。
次に、上述の説明により得ることができるアクセシビリティを、Flashのコンテンツの場合を例に説明する。図12は、Flashコンテンツにおけるアクセシビリティ情報の取得方法を示す図である。
Flashは、ファイル・フォーマットのライセンス上、実験環境を作成することが難しい。ここで説明するのは、FlashプレーヤであるFlash VMに実験環境を構築できない場合であっても、Flashコンテンツの内部構造を解析してアクセシビリティ情報を推測する方法である。ここで、Webブラウザは、プロキシを経由してインターネットに接続する。方法の詳細は、以下の通りである。
まず、Webブラウザはインターネットに対してHTMLコンテンツの要求を行い、HTMLコンテンツを得る(図中(1))。次に、取得したHTMLコンテンツの<object>タグにより、Flashプレーヤが作成される(図中(2))。そして、Flashプレーヤは、Flashコンテンツに対する要求を行う過程で、プロキシからコンテンツ・ローダ(Content Loader)を得る(図中(3))。コンテンツ・ローダは、リペア・スクリプト(Repair Script)を要求し、プロキシからリペア・スクリプトを得る(図中(4))。また、コンテンツ・ローダが、Flashコンテンツを要求し、インターネットからFlashコンテンツを得る(図中(5))。
ここで、図中(4)でのリペア・スクリプトによりObjectのprototype propertyに関数を挿入することで、内部オブジェクト・モデルの情報の取得及び実験環境を構築する。Flashの内部状態と外部への出力を観測するため、置き換えが可能な副作用を持つ関数をフックすることで、値が変更される等の副作用が起こらないようにする。また、プロパティの変更や、視覚情報は、ActionScriptでのwatch関数を利用することによって観測することで、アクセシビリティ情報を推測する。
上述の説明により得たアクセシビリティ情報の、Flashコンテンツでの出力について説明する。Flashコンテンツの各オブジェクトには_accPropsや_accImplと呼ばれる属性があり、Roleや代替テキスト等のアクセシビリティのための情報をセットすることができる。したがって、これらの属性を設定することで、推測したアクセシビリティ情報を出力することができる。出力したアクセシビリティ情報は、スクリーン・リーダを介してユーザに音声で提供する。
しかし、Flashプレーヤにおいては、ボタンRoleを適切に設定するために、やや特別な処理が必要となる。それは、例えば、Flashコンテンツでは、Buttonオブジェクトと呼ばれるボタンRoleを表現するためのオブジェクトが存在し、これにおいて必要となる。Buttonオブジェクトは、Up−frameやOver−frameと呼ばれるフレームを持つ。Up−frame及びOver−frameは、それぞれ、マウスがオブジェクトに当たっていない状態及びマウスがオブジェクトに当たった状態のButtonのグラフィクスを保持している。図13に、Buttonオブジェクトと呼ばれるボタンのRoleを表現する例を示す。図13(a)は、Up−frame及びOver−frameのButtonオブジェクト64、テキスト・オブジェクト65、及びテキスト・オブジェクト65にButtonオブジェクト64を重ねた全体63を説明する図である。ここで、テキスト・オブジェクトは、例えば、リンク先情報が書かれた画像データである。Up−frameの場合、つまりマウスがオブジェクトに接していない場合は、矢印61として表示され、Over−frameの場合、つまりマウスがオブジェクトに接している場合は、手型矢印62として表示される。また、Over−frameでは、Buttonオブジェクトに下線が付される。図13(b)は、実際の使用例を示す。図中(A)のButtonオブジェクトは、手型矢印62と接することにより図中(B)で示すように、下線が引かれる。
Flashプレーヤは、Up−frameにグラフィックが設定されていない場合には、ボタンのサイズが0×0であると判断し、ボタンとしてアクセシビリティ情報を提供しない。このようなUp−frameの問題を持ったボタンが検出された場合、正常にアクセシビリティ情報が出力されるプロキシとなるButtonオブジェクトを作成し、そのプロキシとなるボタンに「click」イベントが送られた場合、対象となる(Up−frameの問題を持った)ボタンに対して「click」イベントを送る。
次に、DHTMLのコンテンツの場合を例に説明する。DHTMLの環境では、スクリプトの実行は、ECMAScriptを実行するブラウザ上のECMAScript VMによって行われる。そのため、実験環境をVM上に構築することは容易である。すなわち、VM上で、オブジェクトを監視するための機構、及び外部環境への操作を制御できるようにする。図14は、DHTMLのコンテンツにおけるアクセシビリティ情報の取得方法を示す図である。図14に示すように、ECMAScript VMにフック・コードを入れ込み、そこからアクセシビリティ情報を得るようにする。具体的には、部分的なオブジェクト監視機構であれば、Webブラウザの1つであるMozillaで、拡張機能を実装することで行うことができる。また、視覚情報については、各オブジェクトのスタイル・プロパティを参照することによって取得する。
上述の説明により得た推測したアクセシビリティ情報の、DHTMLコンテンツでの出力について説明する。DHTMLコンテンツでは、alt属性や、title属性を修正することによって代替テキストを出力することができる。また、オブジェクトのRole情報については、WAI−ARIAの仕様にしたがい、Role属性を追加することによって、出力することができる。したがって、これらの属性を設定することで、推測したアクセシビリティ情報を出力することができる。
次に、図15及び図16を用いて、世界で有名なサイトのうちから、実際に本発明を利用した結果を説明する。図15は、アクセシビリティ情報を得る前(Before)と、アクセシビリティ情報を取得して自動的に修正を実施した後(After)での、代表的なスクリーン・リーダの読み上げの例を示す。また、図16は、(1)修正の前後でのボタンの総数、(2)出力されていないボタンの数、(3)キーボードで操作できず、出力すべきではないボタンの数、(4)代替テキストを持たないボタンの数を示している。これは、「×○△1」及び「○△□2」のあるWebページ上のコンテンツを用いる。「×○△1」では、修正前には4つのボタンが出力されたが、どのボタンにも「Button」とあるだけで、何のボタンであるかを示す代替テキストはついていなかった。また、「○△□2」では、19のボタンのうち15のボタンに代替テキストがなく、代替テキストのある4つのボタンのうち1つは、キーボードで操作できないボタンであった。これらのコンテンツを自動修正した結果、「×○△1」では、出力されていなかった8つのボタンを出力することができ、それぞれのボタンに、代替テキストを付与することができた。しかし、修正前から出力されていた4つのボタンには適切な代替テキストを付与することができなかった。また、「○△□2」では、15の代替テキストがないボタンのうち、12のボタンに代替テキストを付与することができた。「○△□2」の場合では、キーボードで操作できないボタンを出力させないように修正することはできなかったが、全体として、自動的な修正によってアクセシビリティを改善させることが可能であることを証明することができた。
本発明によって、自動的にFlashコンテンツやDHTMLコンテンツ等のRIAのコンテンツにおけるアクセシビリティを向上することが可能になり、スクリーン・リーダを使ってそれらのコンテンツにアクセスするユーザに大きなメリットをもたらすことができる。例えば、「×○△1」及び「○△□2」では、本発明を利用しない場合には、ほとんどのオブジェクトについて代替テキストが存在せず、本来クリックすることができないボタンにすら「ボタン」とスクリーン・リーダが読み上げる。そのため、ユーザは、事実上全く操作することができない。しかし、本発明を適用した場合には、図15及び図16に示すように、多くのアクセシブルではないオブジェクトに対しても、ボタンであることの適切な情報及び代替テキストを付与することに成功している。このため、スクリーン・リーダの利用者も、これらのボタンを操作することができるようになる。
本発明によって、全てのオブジェクトに対してアクセシビリティを改善させることができるとは限らない。しかし、現在インターネットで配信されているほとんどのFlashコンテンツやDHTMLコンテンツは、アクセシブルではなく、コンテンツの作成者自らがアクセシビリティを改善させることは期待しにくい。本発明によって、そういったコンテンツに対しても、完全ではないにせよ、自動的にアクセシビリティを確保することができる。
また、スクリーン・リーダを使うユーザへのメリットだけではなく、コンテンツの作成者にとっても、コンテンツをアクセシブルにするための手間を軽減させることができるというメリットがある。図17は、アクセシビリティ情報取得装置2をコンテンツの作成に用いる例を示す。アクセシビリティ情報取得装置2は、視覚情報解析部22及び役割推定部23から、実行による解析ログ28を取得し、アクセシビリティ情報取得装置2が有するログ解析部27でログを解析することにより、編集時内部モデル26にアクセシビリティ情報を出力する。コンテンツ作成者は、編集ツール9により編集時内部モデル26を用いてコンテンツを作成することにより、WAI−ARIAの仕様にしたがったコンテンツを作成することができる。
FlashコンテンツやDHTMLコンテンツは、今後とも、リッチ・インターネット・アプリケーション(RIA)において、重要なクライアント技術となることが予想され、アクセシビリティの改善は重要な課題である。本発明は、上述で詳細を説明したように、(1)オブジェクトの視覚的表示情報及び画面上に表示されているテキスト情報、(2)オブジェクトに割り当てられているシンボル情報、(3)オブジェクトの出力及び内部状態の変化、の主に3つの情報を利用してオブジェクトのアクセシビリティ情報を推定できるものである。このような本発明は、自動的に既存コンテンツのアクセシビリティを改善させるにとどまらず、今後開発されるコンテンツのアクセシビリティ確保にも貢献することができるため、本発明の重要性は、将来において更に大きくなるものと予測される。
図18は、本発明の実施形態に係るアクセシビリティ情報取得装置1のハードウェア構成を示す図である。以下は、コンピュータを典型とする情報処理装置として全般的な構成を説明するが、専用機や組み込み型装置の場合、その環境に応じて必要最小限な構成を選択できることはいうまでもない。
アクセシビリティ情報取得装置1は、CPU(Central Processing Unit)1010、バスライン1005、通信I/F1040、メインメモリ1050、BIOS(Basic Input Output System)1060、パラレルポート1080、USBポート1090、グラフィック・コントローラ1020、VRAM1024、音声プロセッサ1030、I/Oコントローラ1070、ならびにキーボード及びマウス・アダプタ等1100の入力手段を備える。I/Oコントローラ1070には、フレキシブル・ディスク(FD)ドライブ1072、ハード・ディスク1074、光ディスク・ドライブ1076、半導体メモリ1078、等の記憶手段を接続することができる。グラフィック・コントローラ1020には、表示装置1022が接続されている。また、オプションとして、音声プロセッサ1030には、増幅回路1032及びスピーカ1034が接続される。
BIOS1060は、アクセシビリティ情報取得装置1の起動時にCPU1010が実行するブートプログラムや、アクセシビリティ情報取得装置1のハードウェアに依存するプログラム等を格納する。FDドライブ1072は、フレキシブル・ディスク1071からプログラム又はデータを読み取り、I/Oコントローラ1070を介してメインメモリ1050又はハード・ディスク1074に提供する。
光ディスク・ドライブ1076としては、例えば、DVD−ROMドライブ、CD−ROMドライブ、DVD−RAMドライブ、CD−RAMドライブを使用することができる。この際は各ドライブに対応した光ディスク1077を使用する必要がある。光ディスク・ドライブ1076は光ディスク1077からプログラム又はデータを読み取り、I/Oコントローラ1070を介してメインメモリ1050又はハード・ディスク1074に提供することもできる。
アクセシビリティ情報取得装置1に提供されるコンピュータ・プログラムは、フレキシブル・ディスク1071、光ディスク1077、又はメモリカード等の記録媒体に格納されて利用者によって提供される。このコンピュータ・プログラムは、I/Oコントローラ1070を介して、記録媒体から読み出され、又は通信I/F1040を介してダウンロードされることによって、アクセシビリティ情報取得装置1にインストールされ実行される。コンピュータ・プログラムが情報処理装置に働きかけて行わせる動作は、既に説明した装置における動作と同一であるので省略する。
上述のコンピュータ・プログラムは、外部の記憶媒体に格納されてもよい。記憶媒体としてはフレキシブル・ディスク1071、光ディスク1077、又はメモリカードの他に、MD等の光磁気記録媒体、テープ媒体を用いることができる。また、専用通信回線やインターネットに接続されたサーバシステムに設けたハード・ディスク又は光ディスク・ライブラリ等の記憶装置を記録媒体として使用し、通信回線を介してコンピュータ・プログラムをアクセシビリティ情報取得装置1に提供してもよい。
以上の例は、アクセシビリティ情報取得装置1について主に説明したが、コンピュータに、情報処理装置で説明した機能を有するプログラムをインストールして、そのコンピュータを情報処理装置として動作させることにより上記で説明した情報処理装置と同様な機能を実現することができる。したがって、本発明において1つの実施形態として説明した情報処理装置は、方法及びそのコンピュータ・プログラムによっても実現可能である。
本発明のアクセシビリティ情報取得装置1は、ハードウェア、ソフトウェア、又はハードウェア及びソフトウェアの組み合わせとして実現可能である。ハードウェアとソフトウェアの組み合わせによる実施では、所定のプログラムを有するコンピュータ・システムでの実施が典型的な例として挙げられる。係る場合、該所定のプログラムが該コンピュータ・システムにロードされ実行されることにより、該プログラムは、コンピュータ・システムに本発明に係る処理を実行させる。このプログラムは、任意の言語、コード、又は表記によって表現可能な命令群から構成される。そのような命令群は、システムが特定の機能を直接実行すること、又は(1)他の言語、コード、もしくは表記への変換、(2)他の媒体への複製、のいずれか一方もしくは双方が行われた後に、実行することを可能にするものである。もちろん、本発明は、そのようなプログラム自体のみならず、プログラムを記録した媒体を含むプログラム製品もその範囲に含むものである。本発明の機能を実行するためのプログラムは、フレキシブル・ディスク、MO、CD−ROM、DVD、ハード・ディスク装置、ROM、MRAM、RAM等の任意のコンピュータ可読媒体に格納することができる。係るプログラムは、コンピュータ可読媒体への格納のために、通信回線で接続する他のコンピュータ・システムからダウンロードしたり、他の媒体から複製したりすることができる。また、係るプログラムは、圧縮し、又は複数に分割して、単一又は複数の記録媒体に格納することもできる。
以上、本発明を実施形態に則して説明したが、本発明は上述した実施形態に限るものではない。また、本発明の実施形態に記載された効果は、本発明から生じる最も好適な効果を列挙したに過ぎず、本発明による効果は、本発明の実施形態又は実施例に記載されたものに限定されるものではない。
本発明の実施形態に係るアクセシビリティ情報取得システムの構成の一例を示す図である。 オブジェクトの代替テキストを推定する処理のフローチャートである。 図2のフローチャートの内容を説明するための図である。 オブジェクトのRoleを推定する処理のフローチャートである。 図4のフローチャートの内容を説明するための図である。 図4のフローチャートの内容を説明するための図である。 図4のフローチャートの内容を説明するための図である。 実際のオブジェクトが参照モデルを含んでいるかをチェックするフローチャートである。 実際のオブジェクトが参照モデルを含んでいるかをチェックするフローチャートである。 実際のオブジェクトが参照モデルを含んでいるかをチェックするフローチャートである。 checkboxの参照モデルを示す図である。 Flashコンテンツにおけるアクセシビリティ情報の取得方法を示す図である。 ButtonオブジェクトのRoleを表現する例を示す図である。 DHTMLのコンテンツにおけるアクセシビリティ情報の取得方法を示す図である。 本発明を利用した結果を説明するための図である。 本発明を利用した結果を説明するための図である。 アクセシビリティ情報取得装置をコンテンツの作成に用いる例を示す図である。 アクセシビリティ情報取得装置のハードウェア構成を示す図である。
符号の説明
1,2 アクセシビリティ情報取得装置
8 音声部
10,20 制御部
11,21 実験環境制御部
12,22 視覚情報解析部
13,23 役割推定部
14,24 コンテンツ実行エンジン
15,25 参照モデル記憶部
16 内部モデル
26 編集時内部モデル
27 ログ解析部
28 解析ログ
150 参照モデルテーブル

Claims (20)

  1. リッチ・インターネット・アプリケーションのコンテンツにおけるアクセシビリティ情報を得る方法であって、
    表示画面に表示された前記コンテンツのオブジェクトを実験環境で実行するステップと、
    前記オブジェクトを実行したことに応じて、前記オブジェクトから出力された出力情報と前記オブジェクトの状態とに基づき、予め用意された複数のオブジェクトに関する参照モデル情報を用いて前記オブジェクトの役割を推定するステップと、
    推定された前記オブジェクトの役割を、前記アクセシビリティ情報として出力するステップと、
    を含む、アクセシビリティ情報を得る方法。
  2. 前記オブジェクトと、前記オブジェクトの近傍に表示されるテキスト・オブジェクトとの位置関係に基づき、前記テキスト・オブジェクトを用いて前記オブジェクトを表す代替テキストを推定するステップを含み、
    前記出力するステップは、推定された前記代替テキストを、前記アクセシビリティ情報として出力する、
    請求項1に記載のアクセシビリティ情報を得る方法。
  3. 前記代替テキストを推定するステップは、前記オブジェクトを前記実験環境で実行したことに応じて前記コンテンツを形成するプログラムから取得した、前記オブジェクトに割当てられたシンボル情報に基づき、前記オブジェクトの前記代替テキストを推定する、
    請求項2に記載のアクセシビリティ情報を得る方法。
  4. 前記代替テキストが推定されないことに応じて前記オブジェクトのサイズを計測するステップと、
    計測された前記オブジェクトのサイズが所定の大きさを満たしたことを条件に、前記オブジェクトの役割を判断するステップと、
    判断結果に応じて、推定された前記オブジェクトの役割に関する前記推定を取り消すステップと、
    を含む、
    請求項2に記載のアクセシビリティ情報を得る方法。
  5. 前記オブジェクトのサイズを計測するステップを含み、
    前記代替テキストを推定するステップは、
    前記オブジェクトのサイズがゼロであることに応じて、
    Figure 2009093521
    を満たす前記テキスト・オブジェクトを、前記代替テキストと推定し、
    前記オブジェクトのサイズがゼロでないことに応じて、
    Figure 2009093521
    を満たす前記テキスト・オブジェクトを、前記代替テキストと推定することを含む、
    請求項2に記載のアクセシビリティ情報を得る方法。
  6. 前記役割を推定するステップは、
    前記実験環境を初期化し、
    前記オブジェクトの状態を記録し、
    記録した前記オブジェクトの状態と、前記参照モデル情報の状態とを照合し、
    照合された前記参照モデル情報の次にとりうる遷移に対する状態を取得し、
    取得した前記参照モデル情報の状態における出力情報と、前記オブジェクトを実行したことに応じて前記オブジェクトから出力された前記出力情報とを検証し、
    検証結果に応じて、前記参照モデル情報に基づき前記オブジェクトの役割を推定することを含む、
    請求項1に記載のアクセシビリティ情報を得る方法。
  7. 前記役割を推定するステップは、
    前記オブジェクトを実行する前に、前記実験環境を保存し、
    前記オブジェクトの入力の送出に応じて、前記オブジェクトの状態を記録し、
    前記オブジェクトを実行した後に、前記実験環境を復帰することを更に含む、
    請求項6に記載のアクセシビリティ情報を得る方法。
  8. 前記役割を推定するステップは、
    取得した前記参照モデル情報の前記出力情報を、実行した前記オブジェクトの前記出力情報が含むか否かを検証することを更に含む、
    請求項6に記載のアクセシビリティ情報を得る方法。
  9. 前記リッチ・インターネット・アプリケーションは、Flash(登録商標)及びDynamic HTMLの少なくともいずれか一方を用いて作成される、
    請求項1に記載のアクセシビリティ情報を得る方法。
  10. 請求項1から9のいずれかに1項に記載の各ステップを、コンピュータに実行させるためのコンピュータ・プログラム。
  11. リッチ・インターネット・アプリケーションのコンテンツにおけるアクセシビリティ情報装置であって、
    表示部に表示された前記コンテンツのオブジェクトを実行する実験環境を制御する実験環境制御部と、
    予め用意された複数のオブジェクトに関する参照モデル情報を記憶する参照モデル記憶部と、
    前記オブジェクトを実行したことに応じて、前記オブジェクトから出力された出力情報と前記オブジェクトの状態とに基づき、前記参照モデル記憶部に記憶された前記参照モデル情報を用いて前記オブジェクトの役割を推定する役割推定部と、
    前記役割推定部により推定された前記オブジェクトの役割を、アクセシビリティ情報として出力する出力部と、
    を備える、アクセシビリティ情報取得装置。
  12. 前記オブジェクトと、前記オブジェクトの近傍に表示されるテキスト・オブジェクトとの位置関係に基づき、前記テキスト・オブジェクトを用いて前記オブジェクトを表す代替テキストを推定する視覚情報解析部を備え、
    前記出力部は、前記視覚情報解析部により推定された前記代替テキストを、前記アクセシビリティ情報として出力する、
    請求項11に記載のアクセシビリティ情報取得装置。
  13. 前記役割推定部は、前記オブジェクトを前記実験環境で実行したことに応じて前記コンテンツを形成するプログラムから前記オブジェクトに割当てられたシンボル情報を取得し、
    前記視覚情報解析部は、前記役割推定部により取得された前記シンボル情報に基づき、前記オブジェクトの前記代替テキストを推定する、
    請求項12に記載のアクセシビリティ情報取得装置。
  14. 前記視覚情報解析部は、
    前記代替テキストが推定されないことに応じて前記オブジェクトのサイズを計測し、
    計測された前記オブジェクトのサイズが所定の大きさを満たしたことを条件に、前記オブジェクトの役割を判断し、
    判断結果に応じて、推定された前記オブジェクトの役割に関する前記推定を取り消す、
    請求項12に記載のアクセシビリティ情報取得装置。
  15. 前記視覚情報解析部は、
    前記オブジェクトのサイズを計測し、
    前記オブジェクトのサイズがゼロであることに応じて、
    Figure 2009093521
    を満たす前記テキスト・オブジェクトを、前記代替テキストと推定し、
    前記オブジェクトのサイズがゼロでないことに応じて、
    Figure 2009093521
    を満たす前記テキスト・オブジェクトを、前記代替テキストと推定することを含む、
    請求項12に記載のアクセシビリティ情報取得装置。
  16. 前記役割推定部は、
    前記実験環境を初期化し、
    前記オブジェクトの状態を記録し、
    記録した前記オブジェクトの状態と、前記参照モデル記憶部に記憶された前記参照モデル情報の状態とを照合し、
    照合された前記参照モデル情報の次にとりうる遷移に対する状態を取得し、
    取得した前記参照モデル情報の状態における出力情報と、前記オブジェクトを実行したことに応じて前記オブジェクトから出力された前記出力情報とを検証し、
    検証結果に応じて、前記参照モデル情報に基づき前記オブジェクトの役割を推定することを含む、
    請求項11に記載のアクセシビリティ情報取得装置。
  17. 前記役割推定部は、
    前記オブジェクトを実行する前に、前記実験環境を保存し、
    前記オブジェクトの入力の送出に応じて、前記オブジェクトの状態を記録し、
    前記オブジェクトを実行した後に、前記実験環境を復帰することを更に含む、
    請求項16に記載のアクセシビリティ情報取得装置。
  18. 前記出力部は、内部モデルである、
    請求項11に記載のアクセシビリティ情報取得装置。
  19. 前記出力部に出力された前記アクセシビリティ情報は、音声情報として出力可能である、
    請求項11に記載のアクセシビリティ情報取得装置。
  20. 前記視覚情報解析部及び前記役割推定部により出力されたログ情報を解析するログ解析部を備え、
    前記出力部は、前記ログ解析部による解析結果を用いて、前記アクセシビリティ情報を出力する、
    請求項12に記載のアクセシビリティ情報取得装置。
JP2007265234A 2007-10-11 2007-10-11 アクセシビリティ情報を得る方法、コンピュータ・プログラム及びアクセシビリティ情報装置 Expired - Fee Related JP5110640B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2007265234A JP5110640B2 (ja) 2007-10-11 2007-10-11 アクセシビリティ情報を得る方法、コンピュータ・プログラム及びアクセシビリティ情報装置
US12/238,787 US8132099B2 (en) 2007-10-11 2008-09-26 Method for obtaining accessibility information, computer program and accessibility information device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2007265234A JP5110640B2 (ja) 2007-10-11 2007-10-11 アクセシビリティ情報を得る方法、コンピュータ・プログラム及びアクセシビリティ情報装置

Publications (2)

Publication Number Publication Date
JP2009093521A true JP2009093521A (ja) 2009-04-30
JP5110640B2 JP5110640B2 (ja) 2012-12-26

Family

ID=40535381

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007265234A Expired - Fee Related JP5110640B2 (ja) 2007-10-11 2007-10-11 アクセシビリティ情報を得る方法、コンピュータ・プログラム及びアクセシビリティ情報装置

Country Status (2)

Country Link
US (1) US8132099B2 (ja)
JP (1) JP5110640B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2010113962A1 (ja) * 2009-04-03 2010-10-07 インターナショナル・ビジネス・マシーンズ・コーポレーション コラボラティブクローリングによるリッチインターネットアプリケーションのためのアクセシビリティを向上させる方法及びそのコンピュータ・プログラム

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8397215B2 (en) * 2009-05-18 2013-03-12 National Instruments Corporation Executing a physical model with multiple physical domains in a web browser
US20110137977A1 (en) * 2009-12-07 2011-06-09 Sap Ag Method and system for generating rich client applications for administrators and translators
US9535651B2 (en) 2009-12-18 2017-01-03 Oracle International Corporation Co-browsing systems and methods
US9418353B2 (en) * 2010-12-20 2016-08-16 Akamai Technologies, Inc. Methods and systems for delivering content to differentiated client devices
US9874990B2 (en) 2012-02-10 2018-01-23 Oracle International Corporation System and method of concurrent unobstructed co-browsing and chat messaging
US9967399B2 (en) 2014-12-19 2018-05-08 Oracle International Corporation Co-browsing preview of queued customer contacts
US10671337B2 (en) 2015-09-25 2020-06-02 Oracle International Corporation Automatic sizing of agent's screen for html co-browsing applications
US10038788B1 (en) 2017-05-09 2018-07-31 Oracle International Corporation Self-learning adaptive routing system
US11720621B2 (en) * 2019-03-18 2023-08-08 Apple Inc. Systems and methods for naming objects based on object content
CN117746195B (zh) * 2023-12-12 2024-08-09 沐曦科技(北京)有限公司 一种三角形光栅化的验证方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007140642A (ja) * 2005-11-15 2007-06-07 Nippon Telegr & Teleph Corp <Ntt> 履歴情報記録装置およびプログラム
JP2007172377A (ja) * 2005-12-22 2007-07-05 Internatl Business Mach Corp <Ibm> Webページにおける状態遷移解析手法
JP2007249754A (ja) * 2006-03-17 2007-09-27 Internatl Business Mach Corp <Ibm> 情報処理装置、情報処理方法およびプログラム

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7194411B2 (en) * 2001-02-26 2007-03-20 Benjamin Slotznick Method of displaying web pages to enable user access to text information that the user has difficulty reading
CA2517189A1 (en) * 2003-03-17 2004-09-30 British Telecommunications Public Limited Company Web content adaption process and system
US20060277044A1 (en) * 2005-06-02 2006-12-07 Mckay Martin Client-based speech enabled web content

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007140642A (ja) * 2005-11-15 2007-06-07 Nippon Telegr & Teleph Corp <Ntt> 履歴情報記録装置およびプログラム
JP2007172377A (ja) * 2005-12-22 2007-07-05 Internatl Business Mach Corp <Ibm> Webページにおける状態遷移解析手法
JP2007249754A (ja) * 2006-03-17 2007-09-27 Internatl Business Mach Corp <Ibm> 情報処理装置、情報処理方法およびプログラム

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2010113962A1 (ja) * 2009-04-03 2010-10-07 インターナショナル・ビジネス・マシーンズ・コーポレーション コラボラティブクローリングによるリッチインターネットアプリケーションのためのアクセシビリティを向上させる方法及びそのコンピュータ・プログラム
US9104777B2 (en) 2009-04-03 2015-08-11 International Business Machines Corporation Method for improving accessibility to rich internet applications through collaborative crawling and computer program for the same

Also Published As

Publication number Publication date
US20090100328A1 (en) 2009-04-16
JP5110640B2 (ja) 2012-12-26
US8132099B2 (en) 2012-03-06

Similar Documents

Publication Publication Date Title
JP5110640B2 (ja) アクセシビリティ情報を得る方法、コンピュータ・プログラム及びアクセシビリティ情報装置
JP7503671B2 (ja) ソースコード上で動作するソフトウェアツールのための機械学習モデルの自動生成
CN105190548B (zh) 用于自动分析软件风险的方法和系统
JP4148527B2 (ja) 機能テスト・スクリプト生成装置
JP4140916B2 (ja) Webページにおける状態遷移を解析する方法
US8650553B2 (en) System and method for localizing assets using automatic generation of alerts
CN103810089B (zh) 自动测试基于姿态的应用
KR101076867B1 (ko) 콘텐츠를 생성하기 위한 자동 이미지 캡처
JP5991695B2 (ja) 文書オブジェクトモデルツリーとカスケーディング・スタイル・シートとが取り出されることが可能なアプリケーションのソースコードを変更することによって生じる影響を検知するための方法、並びに、当該影響を検知するためのコンピュータ及びそのコンピュータ・プログラム
US9015666B2 (en) Updating product documentation using automated test scripts
US12086202B2 (en) Webpage accessibility compliance
US9471286B2 (en) System and method for providing code completion features for code modules
US20220107882A1 (en) Rendering engine component abstraction system
JP2006244195A (ja) プログラムテスト支援装置およびその方法
CN110990264A (zh) Ui自动化测试的元素识别方法、装置、设备及存储介质
JP5038036B2 (ja) テスト実行システム、テスト実行装置、情報処理装置、テスト実行方法、プログラム、及び記憶媒体
US20140059521A1 (en) Systems and Methods for Editing A Computer Application From Within A Runtime Environment
JP2009098872A (ja) ソースプログラム解析装置、ソースプログラム解析方法及びコンピュータプログラム
CN114579461A (zh) 浏览器兼容性检测方法及相关设备
JP7168532B2 (ja) 情報処理システム、情報処理方法、開発装置、および開発装置用のプログラム
KR20070014219A (ko) 이미지 내의 상품 자동 검출 방법 및 상품에 연관 웹 소스생성 방법
US20220197776A1 (en) Information processing apparatus, information processing method, and storage medium
WO2024176363A1 (ja) テスト支援システム、テスト支援方法及びプログラム
JP6503724B2 (ja) スタブ化方法、プログラム及び装置
JP2005316685A (ja) プログラム管理装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20100623

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20120530

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120612

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120827

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20120918

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

RD14 Notification of resignation of power of sub attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7434

Effective date: 20120919

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20121004

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20151019

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 5110640

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees