ページのリージョンが、アシスティブ・テクノロジのユーザーに対して十分なナビゲーション情報を提供するようにします。
トピック:
アシスティブ・テクノロジを利用するには、各ページの構造が明確に定義されている必要があります。ページのロード後、スクリーン・リーダーのユーザーはページのすべてのヘッダー要素を確認します。ヘッダーが正しく定義されていると、ページの構造化された概要を提供することによってユーザーを導くことができます。ページのコンテンツを一意に識別するには、ページに1つのH1があり、H2がネストし、H3がネストするなどとなるように、ページのヘッダーをネストする必要があります。
この構造は、Oracle Application Expressのリージョンを使用して実現します。アプリケーションでページを構造化するには、ベストプラクティスとして次のガイドラインの1つ以上に従います。
H1ヘッダー
ページにブレッドクラム・リージョンを含めて一意のH1を作成します。アプリケーションの作成ウィザードを使用して、ウィザードで定義されたページの階層に基づいてブレッドクラムを自動的に生成するか、手動でアプリケーションにブレッドクラムを構成できます。デフォルトでは、ページの最後のブレッドクラム・エントリはH1となります。
あるいは、ユニバーサル・テーマのヒーロー・リージョン・テンプレートを使用します。リージョン・テンプレートでは、デフォルトでページにリージョン・タイトルをH1テキストとしてレンダリングします。これは、現在のアプリケーションのレイアウトおよびデザインがブレッドクラムを保証しない場合に便利です。
ヒント:
2つ以上のH1要素を作成しないよう、各ページに1つのみのヒーロー・リージョンを使用してください。
H2ヘッダー
H1の後、ユニバーサル・テーマのリージョン・テンプレートの多くは、ページのその他のコンテンをツリージョン・タイトルのまわりにH2でレンダリングします
H1: Charts H2: region 1 H2: region 2 H2: region 3 H2: region 4このセマンティック構造は、すべてのユーザーが、現在のページを目で視覚的に、またスクリーン・リーダーを使用して聴覚的にざっと読み取るうえで役に立ちます。
H3およびその他のサブリージョン・ヘッダー
ユニバーサル・テーマでは、H2リージョン内でネストされたサブリージョンがある場合など、H2より後のヘッダーは自動的にサポートしません。
デフォルトでは、Application Expressは、H2を標準リージョン・テンプレート内のネストされたサブリージョン(上の例ではリージョン4.1および4.2)に適用します。これは、スクリーン・リーダーのユーザーがこれらのサブリージョンが親リージョンと同様に重要である、またはリージョンが親リージョンの祖先ではないと間違って信じてしまう可能性があるため、アクセシビリティの問題が生じます。
H1: Charts H2: region 1 H2: region 2 H2: region 3 H2: region 4 H2: region 4.1 H2: region 4.2
これらのサブリージョンを適切に構造化するには、標準リージョン・テンプレートを複製し、コード・エディタを使用してテンプレート定義のH2タグをH3に手動で置き換える必要があります。
ヒント:
リージョンをコピーするには、Oracle Application Expressアプリケーション・ビルダー・ユーザーズ・ガイドの「新規テンプレートの作成」を参照し、「既存のテンプレートのコピーとして」オプションを選択します。
サブリージョンをH3に変更すると、要素(スタイルではない)の構造にのみ影響するため、アクセシビリティに対して望ましいものとなります。
この結果、次のヘッダー構造になります。
H1: Charts H2: region 1 H2: region 2 H2: region 3 H2: region 4 H3: region 4.1 H3: region 4.2
重要:
コピーされたテンプレートがテーマのサブスクリプション(Oracle Application Expressがアップグレードされるときにテーマをリフレッシュできる)を保持している間は、コピーされたテンプレートはリフレッシュ時に自動的にアップグレードしません。このテンプレートにマークアップの変更がある場合には、手動で変更するか、リフレッシュ後にテンプレートを再コピーする必要がある場合があります。
アプリケーションのさらに深いヘッダー・レベル(H3, H4, H5...)のそれぞれに対して、手動でテンプレートを追加する必要があります。今後のOracle Application Expressリリースでは、テンプレートを追加しなくてもヘッダー・レベルを容易に制御できるようにすることを計画しています。
リージョン・タイトル
ユニバーサル・テーマはリージョン・タイトルをリージョンのヘッダー・テキストとして使用するため、ほとんどのリージョン・タイプに対して意味のあるタイトルを定義する必要があります。
わかりやすいタイトルはアクセシビリティにとって不可欠です。デフォルトでは、タイトルは画面に表示されます。ただし、目の見えるユーザーがリージョンのコンテンツを周囲のページ・コンテンツから一目ですばやく見分けられるときなど、リージョン用のタイトルが不要な場合があります。このような場合にも、スクリーン・リーダーのユーザーに対してはヘッダー・テキストを提供する必要があります。このようなページをアクセスしやすくするには、リージョンを選択し、プロパティ・エディタで「テンプレート・オプション」を開き、ヘッダーの属性をHidden but accessibleに設定します。
ヒント:
「すべてのリージョン・タイトルのグリッド編集」ページを使用して、アプリケーション内のすべてのリージョン・タイトルを確認および更新できます。すべてのタイトル、特にコンテキストに応じて問題となる可能性のある同じページにある同じタイトルの付いたリージョンに対して、正確性および意味を確認する必要があります。
関連項目:
Oracle Application Expressアプリケーション・ビルダー・ユーザーズ・ガイドの「ページ固有のユーティリティのアクセス」
Oracle Application Express 5.1で導入された対話グリッドは、強力なレポートとグリッドベースの編集を1つのコンポーネントに結合します。ユーザーはすべての対話グリッド機能にキーボードのみでアクセスできるため、すべてのユーザーがグリッドをナビゲートして、キーボードを使用してデータを編集できます。対話グリッドのキーボード・サポートの完全なリストは、対話グリッド・リージョンのキーボード・ショートカットを参照してください。
対話グリッドには、スクリーン・リーダーのユーザーに影響の及ぶアクセシビリティ・バグがいくつか含まれています。すべてのバグは、現在のOracle Database関連製品向けのVPATにリストされています。
複数行編集用にスクリーン・リーダーをうまくサポートするには、対話グリッドのかわりに表形式のリージョンを使用することをお薦めします。
データ表のアクセスしやすいラベル
対話モード・レポートによってレンダリングされた基礎となるデータ表に、アクセスしやすいラベルがあるようにするには、スクリーン・リーダー・モードを有効にする必要があります。有効にされると、Oracle Application Expressはレンダリングされたデータ表に対して次のSUMMARYテキストを生成します。
Region = [region title], Report = [current saved report name], View = [current View], Displayed Rows Start = [current start of rows displayed, Displayed Rows End = [current end of rows displayed], Total Rows = [total number of rows]
このテキストはデータ表を識別するため、アシスティブ・テクノロジのユーザーに対して多くのコンテキスト情報を提供します。
編集アイコン・リンク・テキスト
レポートとフォームを作成する際、Oracle Application Expressでは2つのページ間にリンクを生成して、特定のレコードを編集できるようにします。すべての行に対して生成されたリンク・テキストは、デフォルトでEdit
となります。このテキストは、(現在のページのすべてのリンクを聞く)スクリーン・リーダーのユーザーが、リンクの目的およびリンクがどこに飛ぶかを理解できるように、意味のあるラベルにする必要があります。リンク・テキストは、レポートの現在の行に固有のものである必要があります。たとえば、お客様のレポートに対しては、リンク・テキストはEdit Customer: SMITH
などとすることができます。
「属性」ノードを選択して対話モード・レポートのリージョンのリンク・テキストを定義し、プロパティ・エディタで「リンク」列を開き、「リンク列」を「単一行ビューへのリンク」または「カスタム・ターゲットへのリンク」に設定して、「リンク・アイコン」フィールドの代替テキストを更新できます。
見えるリンク・テキストが使用されていないため、リンクはインライン・イメージの代替テキストをリンク用のテキストとして使用します。#CUSTOMER_NAME#などの置換文字列を使用して、現在の行を最適に識別している列をターゲットにできます。
関連項目:
Oracle Application Expressアプリケーション・ビルダー・ユーザーズ・ガイドの「対話モード・レポート属性の編集」
データ表
デフォルトでは、Oracle Application Expressはリージョン・タイトルと同じSUMMARYテキストを生成します。これは、アシスティブ・テクノロジのユーザーに対してデータ表を特定します。
注意:
対話モード・レポートとは異なり、クラシック・レポートではレポート状態についての追加情報は提供されません。これはアプリケーションの機能を制限する可能性があります。
リンクの編集テキスト
レポートとフォームを作成する際、Oracle Application Expressでは2つのページ間にリンクを生成して、特定のレコードを編集できるようにします。すべての行に対して生成されたリンク・テキストは、デフォルトでEdit
となります。このテキストは、(現在のページのすべてのリンクを聞く)スクリーン・リーダーのユーザーが、リンクの目的およびリンクがどこに飛ぶかを理解できるように、意味のあるラベルにする必要があります。リンク・テキストは、レポートの現在の行に固有のものである必要があります。たとえば、お客様のレポートに対しては、リンク・テキストはEdit Customer: SMITH
などとすることができます
「属性」ノードを選択して対話モード・レポートのリージョンのリンク・テキストを定義し、プロパティ・エディタで「リンク」列を開き、「リンク列」を「単一行ビューへのリンク」または「カスタム・ターゲットへのリンク」に設定して、「リンク・アイコン」フィールドの代替テキストを更新できます。
見えるリンク・テキストが使用されていないため、リンクはインライン・イメージの代替テキストをリンク用のテキストとして使用します。#ENAME#などの置換文字列を使用して、現在の行を最適に識別している列をターゲットにできます。
注意:
クラシック・レポート・リージョンは、レポート内の列ヘッダーをサポートしますが、現在Oracle Application Expressではレポート内の行ヘッダー列を定義する機能をサポートしていません。レポート内の新しい行にナビゲートするときに、スクリーン・リーダーが行ヘッダーを通知するため(上の例ではENAME値)、行ヘッダーはデータ表のアクセシビリティにとって重要です。詳細および関連バグ番号は、VPATを参照してください。
表形式では、アプリケーションでのシンプルな複数行編集機能が提供されます。
データ表
デフォルトでは、Oracle Application Expressはリージョン・タイトルと同じSUMMARYテキストを生成します。これは、アシスティブ・テクノロジのユーザーに対してデータ表を特定します。
行ヘッダーとして使用
列を行のヘッダーとして使用するかどうかを指定します。列の値を含めると、表形式でレンダリングされたフォーム・フィールドに対するアクセシビリティを大幅に向上できます。指定時にOracle Application Expressは、行ヘッダーを列ヘッダーと一緒に使用して、レポート内のフォーム・フィールドに対する一意のラベルを形式: <Column Header> : <Row Header>
でレンダリングします
たとえば、EMP表のレポートに対してENAME列を行ヘッダーとして定義します。ENAMEが「'JONES,」である行に対して、その行のSalaryフィールドのラベルはSalary : JONES
となります。このアプローチでは、スクリーン・リーダーのユーザーがレポート内のフォーム・フィールドによってナビゲートでき、さらにどのフォーム・フィールドがどの行に関連するのかを理解できます。
Oracle Application Express 5.1では、Oracle JETデータ視覚化コンポーネントに基づくチャート(JETチャート)を導入しています。5.1より前のリリースではAnyChartに基づくチャートが使用されていましたが、多くのアクセシビリティの問題がありました。
キーボードおよびタッチのサポートを含むOracle JETデータ視覚化コンポーネントの詳細は、Oracle JETドキュメントを参照してください。
次の項では、チャートのアクセシビリティを確保するために特に役立つチャート設定の一部を説明します。
チャート・タイトル
チャート・タイトルは、チャートの横のチャート・リージョンに表示されます。これは、チャート・ページ・セクションに対するアクセスしやすいラベルでもあります。ページ・デザイナでは、チャート・タイトルはチャートの「属性」ノードに定義されます。
リージョン内に1つのみのチャートが表示されている場合には、視覚的な重複を避けるため、リージョン・タイトルを非表示にすることを検討してください。「テンプレート・オプション」ダイアログのヘッダー・リージョンの外観設定を「Hidden but accessible」に変更してリージョン・タイトルを変更できます。これにより、リージョン・タイトルがページから消えますが、アシスティブ・テクノロジのヘッダーは保持されます(ユーザーがページの現在のヘッダーをざっと読み取って理解する場合、このタイトルを認識できます)。
ツールチップ
ツールチップは、マウスが特定のチャート・セクション上に重ねられるか、キーボードがこのセクションにフォーカスがあるときに表示されます。さらに、ツールチップはチャートのセクションに対するアクセスしやすいラベルです。たとえば、スクリーン・リーダーのユーザーがチャート・セクションをナビゲートしてるときには、このツールチップが通知されます。
ページ・デザイナの「ツールチップ」グループに表示されたその他の属性を調整します。これにより、必要に応じてチャートに対する「シリーズ名」、「グループ名」、「値」および「ラベル」情報の表示を制御できます。たとえば、チャートにシリーズが1つのみで、ツールチップのシリーズ名を除外する場合には、「シリーズ名の表示」を「いいえ」に設定します。
高度にカスタマイズされたツールチップには、データベース表の列がツールチップのソースとして使用されるように設定します。これは、「Rendering」ツリーのチャートの下にネストされた個々の「シリーズ」ノードで構成できます。