Benutzeroberflächenautomatisierung für W3C Accessible Rich Internet Applications Specification
Websites erhöhen ihr Dienstprogramm mit dynamischen Inhalten und erweiterten UI-Steuerelementen, die von Technologien wie asynchronem JavaScript und XML (AJAX), DHTML und JavaScript unterstützt werden. Hilfstechnologien können jedoch häufig nicht mit diesen komplexen Steuerelementen interagieren oder benutzern dynamische Inhalte zur Verfügung stellen. Accessible Rich Internet Applications (ARIA) ist eine technische W3C-Spezifikation für die Entwicklung von Webinhalten und -anwendungen, damit sie für Menschen mit Behinderungen zugänglich sind.
Um die ARIA-Spezifikation zu unterstützen, ermöglicht die Microsoft-Benutzeroberflächenautomatisierungs-Spezifikation Entwicklern das Zuordnen von Ui Automation AriaRole- und AriaProperties-Attributen zu W3C ARIA-Rollen und -Zuständen oder -eigenschaften. Auf diese Weise können Benutzeranwendungen wie Microsoft Internet Explorer das ARIA-Objektmodell im Kontext der Benutzeroberflächenautomatisierung unterstützen und gleichzeitig ein grundlegendes Objektmodell für Barrierefreiheit beibehalten.
Dieser Anhang enthält die vorgeschlagene Zuordnung von W3C-Informationen zu Microsoft Active Accessibility and UI Automation-Spezifikationen, wobei die beiden neuen Benutzeroberflächenautomatisierungs-Eigenschaften genutzt werden.
Dieses Thema enthält die folgenden Abschnitte:
- W3C ARIA-Rolle, die Microsoft Active Accessibility and UI Automation
- W3C ARIA-Zustände und Eigenschaften, die Microsoft Active Accessibility and UI Automation
- zusätzliche Überlegungen
W3C ARIA-Rolle zugeordnete Microsoft Active Accessibility and UI Automation
W3C ARIA-Rollen können Microsoft Active Accessibility-Rollen oder Steuerelementtypen der Benutzeroberflächenautomatisierung zugeordnet werden. Bei der Benutzeroberflächenautomatisierung kann die ursprüngliche W3C ARIA-Rolle auch von der AriaRole-Eigenschaft unterstützt werden. Benutzer-Agents können eine lokalisierte Beschreibung der W3C ARIA-Rolle mit der LocalizedControlType-Eigenschaft der Benutzeroberflächenautomatisierung anbieten; Dies ist jedoch optional. Wenn keine lokalisierte Zeichenfolge angegeben wird, gibt das System die localizedControlType-Standardzeichenfolge an. Benutzer-Agents können auch sekundäre Rollen in der AriaRole-Eigenschaft anbieten, indem Leerzeichen als Trennzeichen verwendet werden, wie im ARIA W3C-Standard definiert.
W3C ARIA-Zustände und -Eigenschaften, die microsoft Active Accessibility and UI Automation zugeordnet sind
W3C ARIA-Zustände und -Eigenschaften werden verschiedenen Microsoft Active Accessibility and UI Automation-Eigenschaften und -Funktionen zugeordnet. Die meisten ARIA-Zustände und -Eigenschaften werden von der AriaProperties-Eigenschaft der Benutzeroberflächenautomatisierung unterstützt. Die Ausnahmen sind ARIA-Eigenschaften, die Objektverweise verwenden (z. B. die beschriebene ARIA-Eigenschaft) und ARIA-Eigenschaften, die vom Barrierefreiheitsobjektmodell unterstützt werden. Die ARIA activedescendent-Eigenschaft wird beispielsweise als Element mit Fokus im Barrierefreiheitsobjektmodell dargestellt. Die ARIA-Eigenschaft sollte auch im Barrierefreiheitsobjektmodell widerzuspiegeln sein, wenn sie angegeben wird.
AriaProperties ist eine Zeichenfolgeneigenschaft, die eine Sammlung von Name/Wert-Paaren enthält, deren Trennzeichen das Gleichheitszeichen (=) und das Semikolon (;), z. B. "checked=true; disabled=false". Ein umgekehrter Schrägstrich (\) wird als Escape verwendet, wenn diese Trennzeichen oder ein umgekehrter Schrägstrich in den Werten angezeigt werden. Der Anbietercode kann die Überprüfung hinzufügen, um die ursprünglichen ARIA-Eigenschaften im Dokumentobjektmodell zu überprüfen, ist jedoch nicht erforderlich.
W3C ARIA-Zustände und -Eigenschaften | Microsoft Active Accessibility-Eigenschaften | Benutzeroberflächenautomatisierungs-Eigenschaften | AriaProperties-Eigenschaft für die Benutzeroberflächenautomatisierung |
---|---|---|---|
activedescendent | STATE_SYSTEM_FOCUSED (accState) | HasKeyboardFocus (eine Eigenschaft des untergeordneten Elements, das für den Empfang des Fokus festgelegt ist) | n/a |
atomar | n/a | n/a | atomar |
beschäftigt | STATE_SYSTEM_BUSY (accState) | n/a | beschäftigt |
Kanal | n/a | n/a | Kanal |
geprüft | STATE_SYSTEM_CHECKED (accState) | ToggleState (Umschalten Steuerelementmuster) | geprüft |
Steuerung | n/a | ControllerFor | n/a |
beschrieben nach | n/a | DescribedBy | n/a |
arbeitsunfähig | STATE_SYSTEM_UNAVAILABLE (accState) | IsEnabled | arbeitsunfähig |
dropeffect | n/a | n/a | dropeffect |
erweitert | STATE_SYSTEM_COLLAPSED oder STATE_SYSTEM_EXPANDED (accState) | ExpandCollapseState (ExpandCollapse Steuerelementmuster) | erweitert |
flowto | n/a | FlowsTo | n/a |
packen | n/a | n/a | packen |
haspopup | STATE_SYSTEM_HASPOPUP (accState) | n/a | haspopup |
versteckt | STATE_SYSTEM_INVISIBLE (accState) | IsOffscreen | versteckt |
Ungültig | n/a | IsDataValidForForm | Ungültig |
labelby | n/a | LabeledBy | n/a |
Niveau | accValue | n/a (dargestellt durch Automatisierungselementstruktur) | Niveau |
leben | n/a | n/a | leben |
Mehrzeile | n/a | Steuerelementtyp "Document" | Mehrzeile |
Mehrfachauswahl | STATE_SYSTEM_EXTSELECTABLE (accState) | CanSelectMultiple (Selection Steuerelementmuster) | Mehrfachauswahl |
Besitzt | n/a (sollte in der barrierefreien Objektstruktur widerzuspiegeln sein) | n/a (sollte in der Automatisierungselementstruktur widerzuspiegeln sein) | n/a |
Posinset | n/a (dargestellt in der Struktur der barrierefreien Objektstruktur oder durch childId) | n/a (dargestellt in der Struktur der Automatisierungselementstruktur) | posinset |
gedrückt | STATE_SYSTEM_PRESSED | ToggleState (Umschalten Steuerelementmuster) | gedrückt |
readonly | STATE_SYSTEM_READONLY | IsReadOnly | readonly |
einschlägig | n/a | n/a | einschlägig |
Erforderlich | n/a | IsRequiredForForm | Erforderlich |
geheim | STATE_SYSTEM_PROTECTED | IsPassword | geheim |
ausgewählt | STATE_SYSTEM_SELECTED | IsSelected (SelectionItem Steuerelementmuster) | ausgewählt |
setsize | n/a | n/a (untergeordnete Anzahl in der Struktur der Automatisierungselementstruktur) | setsize |
sortieren | n/a | n/a | sortieren |
tabindex | STATE_SYSTEM_FOCUSABLE | IsKeyboardFocusable | tabindex |
valuemax | n/a | Maximum (RangeValue Steuerelementmuster) | valuemax |
valuemin | n/a | Minimum (RangeValue Steuerelementmuster) | valuemin |
valuenow | IAccessible::get_accValue | Wert (RangeValue Steuerelementmuster) | valuenow |
Werttext |
IAccessible::get_accValue HINWEIS: Wenn sowohl die Valuenow- als auch die Valuetext-ARIA-Eigenschaft festgelegt sind, enthält accValue die Daten aus der ARIA-Werttexteigenschaft. |
Wert ( Steuerelementmuster) HINWEIS: Die RangeValue- und Wertsteuerelementmuster können mit der Benutzeroberflächenautomatisierung koexistieren, wenn sowohl Werttext als auch Wertnow angegeben werden. |
Werttext |
Weitere Überlegungen
Die Benutzeroberflächenautomatisierung bietet auch ein einfaches Textobjektmodell mit dem Text Steuerelementmuster, das das Einbetten von Objekten in ein Document-Objekt unterstützt. Auf diese Weise können Benutzer-Agents und Clientanwendungen Webinhalte abhängig von den Endbenutzerszenarien als HTML-Dokument oder als herkömmliche Desktop-UI behandeln.