UI Automation pour la spécification des applications Internet riches accessibles par le W3C
Les sites Web augmentent leur utilitaire avec un contenu dynamique et des contrôles d’interface utilisateur avancés pris en charge par des technologies telles que Asynchronous JavaScript and XML (AJAX), DHTML et JavaScript. Toutefois, les technologies d’assistance ne peuvent pas interagir fréquemment avec ces contrôles complexes ni exposer du contenu dynamique aux utilisateurs. Les applications Internet riches accessibles (ARIA) sont une spécification technique de W3C pour le développement de contenu et d’applications Web afin qu’elles soient accessibles aux personnes handicapées.
Pour prendre en charge la spécification ARIA, la spécification d’automatisation d’interface utilisateur de Microsoft permet aux développeurs d’associer des attributs UI Automation AriaRole et AriaProperties aux rôles et aux États et aux propriétés du W3C ARIA. Cela permet aux applications utilisateur telles que Microsoft Internet Explorer de prendre en charge le modèle objet ARIA dans le contexte d’UI Automation tout en conservant un modèle objet d’accessibilité de base.
Cette annexe fournit le mappage suggéré des informations W3C aux spécifications de Microsoft Active Accessibility et d’UI Automation, en tirant parti des deux nouvelles propriétés UI Automation.
Cette rubrique contient les sections suivantes :
- Rôle ARIA du W3C mappé à Microsoft Active Accessibility et UI Automation
- États et propriétés ARIA du W3C mappés à Microsoft Active Accessibility et UI Automation
- Considérations supplémentaires
Rôle ARIA du W3C mappé à Microsoft Active Accessibility et UI Automation
Les rôles ARIA du W3C peuvent être mappés à des rôles Microsoft Active Accessibility ou à des types de contrôle UI Automation. Avec UI Automation, le rôle ARIA du W3C original peut également être pris en charge par la propriété AriaRole. Les agents utilisateurs peuvent fournir une description localisée du rôle ARIA du W3C avec la propriété UI Automation LocalizedControlType. Toutefois, cette option est facultative. Lorsqu’une chaîne localisée n’est pas spécifiée, le système fournit la chaîne LocalizedControlType par défaut. Les agents utilisateurs peuvent également offrir des rôles secondaires dans la propriété AriaRole en utilisant l’espace comme séparateur, tel que défini dans la norme du W3C ARIA.
États et propriétés ARIA du W3C mappés à Microsoft Active Accessibility et UI Automation
Les États et les propriétés ARIA du W3C sont mappés à différentes fonctions et propriétés de Microsoft Active Accessibility et UI Automation. La plupart des États et propriétés ARIA sont pris en charge par la propriété AriaProperties d’UI Automation. Les exceptions sont les propriétés ARIA qui prennent des références d’objet (par exemple, la propriété ARIA DescribedBy) et les propriétés ARIA qui sont prises en charge par le modèle objet d’accessibilité. Par exemple, la propriété ARIA activedescendent est supposée être représentée en tant qu’élément ayant le focus dans le modèle objet d’accessibilité. La propriété ARIA possède doit également être reflétée dans le modèle objet d’accessibilité lorsqu’elle est spécifiée.
AriaProperties est une propriété de type chaîne qui a une collection de paires nom/valeur dont les délimiteurs sont le signe égal (=) et le point-virgule (;), par exemple, « Checked = True ; Disabled = false ». Une barre oblique inverse ( \ ) est utilisée comme échappement lorsque ces caractères de délimitation, ou une barre oblique inverse, apparaissent dans les valeurs. Le code du fournisseur peut ajouter une vérification pour valider les propriétés ARIA d’origine dans le Document Object Model, mais ce n’est pas obligatoire.
| États et propriétés ARIA du W3C | Propriétés de Microsoft Active Accessibility | Propriétés UI Automation | Propriété AriaProperties d’UI Automation |
|---|---|---|---|
| activedescendent | État _ _Focus système (accState) | HasKeyboardFocus (une propriété de l’élément enfant qui est désignée pour recevoir le focus) | n/a |
| atomique | n/a | n/a | atomique |
| occupé | État _ SYSTÈME _ occupé (accState) | n/a | occupé |
| channel | n/a | n/a | channel |
| checked | État _ SYSTÈME _ activé (accState) | ToggleState (basculer le modèle de contrôle) | checked |
| controls | n/a | ControllerFor | n/a |
| DescribedBy | n/a | DescribedBy | n/a |
| disabled | État _ SYSTÈME _ non disponible (accState) | IsEnabled | disabled |
| dropeffect | n/a | n/a | dropeffect |
| développées | État _ Système _ réduit ou système d' _ état _ développé (accState) | ExpandCollapseState (modèle de contrôleExpandCollapse ) | développées |
| flowto | n/a | FlowsTo | n/a |
| Laissez | n/a | n/a | Laissez |
| haspopup | État _ _HASPOPUP système (accState) | n/a | haspopup |
| hidden | État _ SYSTÈME _ invisible (accState) | IsOffscreen | hidden |
| non valide | n/a | IsDataValidForForm | non valide |
| labelledby | n/a | LabeledBy | n/a |
| Level | accValue | n/a (représenté par la structure de l’arborescence des éléments Automation) | niveau |
| opérationnel | n/a | n/a | opérationnel |
| lambda | n/a | Document (type de contrôle) | lambda |
| multisélectionnable | État _ _EXTSELECTABLE système (accState) | CanSelectMultiple (modèle de contrôleSelection ) | multisélectionnable |
| appartient | n/a (doit être reflété dans l’arborescence des objets accessibles) | n/a (doit être reflété dans l’arborescence des éléments Automation) | n/a |
| Posinset | n/a (représenté dans l’arborescence de l’objet accessible ou par childId) | n/a (représenté dans la structure de l’arborescence des éléments Automation) | posinset |
| enfoncé | système d’état _ _ enfoncé | ToggleState (basculer le modèle de contrôle) | enfoncé |
| readonly | système d’État en _ _ lecture seule | IsReadOnly | readonly |
| nécessaire | n/a | n/a | nécessaire |
| obligatoire | n/a | IsRequiredForForm | obligatoire |
| secret | système d’état _ _ protégé | IsPassword | secret |
| activé | système d’état _ _ sélectionné | IsSelected (modèle de contrôleSelectionItem ) | activé |
| SetSize | n/a | n/a (nombre d’enfants dans l’arborescence des éléments Automation) | SetSize |
| sort | n/a | n/a | sort |
| TabIndex | système d’État pouvant être _ _ actif | IsKeyboardFocusable | TabIndex |
| valuemax | n/a | Maximum (modèle de contrôleRangeValue ) | valuemax |
| valuemin | n/a | Minimum (modèle de contrôleRangeValue ) | valuemin |
| valuenow | IAccessible :: _ accValue | Value (modèle de contrôleRangeValue ) | valuenow |
| ValueText | IAccessible :: _ accValue Remarque : lorsque les propriétés ARIA valuenow et ValueText sont définies, accValue contient les données de la propriété de l’ensemble de données ARIA. |
Value (modèle de contrôlevalue ) Remarque : les modèles de contrôle RangeValue et Value peuvent coexister avec UI Automation lorsque ValueText et valuenow sont spécifiés. |
ValueText |
Considérations supplémentaires
UI Automation offre également un modèle d’objet de texte simple avec le modèle de contrôle Text , qui prend en charge l’incorporation d’objets dans un objet document. Cela permet aux agents utilisateur et aux applications clientes de traiter le contenu Web comme un document HTML ou comme une interface utilisateur de bureau traditionnelle, en fonction des scénarios de l’utilisateur final.