forked from w3c/core-aam
-
Notifications
You must be signed in to change notification settings - Fork 0
/
out.html
7374 lines (7265 loc) · 671 KB
/
out.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
<!DOCTYPE html><html xmlns="http://www.w3.org/1999/xhtml" lang="en-US" xml:lang="en-US"><head>
<meta content="text/html; charset=utf-8" http-equiv="Content-Type">
<meta name="generator" content="ReSpec 32.1.6">
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
<style>
.issue-label{text-transform:initial}
.warning>p:first-child{margin-top:0}
.warning{padding:.5em;border-left-width:.5em;border-left-style:solid}
span.warning{padding:.1em .5em .15em}
.issue.closed span.issue-number{text-decoration:line-through}
.warning{border-color:#f11;border-width:.2em;border-style:solid;background:#fbe9e9}
.warning-title:before{content:"⚠";font-size:1.3em;float:left;padding-right:.3em;margin-top:-.3em}
li.task-list-item{list-style:none}
input.task-list-item-checkbox{margin:0 .35em .25em -1.6em;vertical-align:middle}
.issue a.respec-gh-label{padding:5px;margin:0 2px 0 2px;font-size:10px;text-transform:none;text-decoration:none;font-weight:700;border-radius:4px;position:relative;bottom:2px;border:none;display:inline-block}
</style>
<style>
dfn{cursor:pointer}
.dfn-panel{position:absolute;z-index:35;min-width:300px;max-width:500px;padding:.5em .75em;margin-top:.6em;font-family:"Helvetica Neue",sans-serif;font-size:small;background:#fff;color:#000;box-shadow:0 1em 3em -.4em rgba(0,0,0,.3),0 0 1px 1px rgba(0,0,0,.05);border-radius:2px}
.dfn-panel:not(.docked)>.caret{position:absolute;top:-9px}
.dfn-panel:not(.docked)>.caret::after,.dfn-panel:not(.docked)>.caret::before{content:"";position:absolute;border:10px solid transparent;border-top:0;border-bottom:10px solid #fff;top:0}
.dfn-panel:not(.docked)>.caret::before{border-bottom:9px solid #a2a9b1}
.dfn-panel *{margin:0}
.dfn-panel b{display:block;color:#000;margin-top:.25em}
.dfn-panel ul a[href]{color:#333}
.dfn-panel>div{display:flex}
.dfn-panel a.self-link{font-weight:700;margin-right:auto}
.dfn-panel .marker{padding:.1em;margin-left:.5em;border-radius:.2em;text-align:center;white-space:nowrap;font-size:90%;color:#040b1c}
.dfn-panel .marker.dfn-exported{background:#d1edfd;box-shadow:0 0 0 .125em #1ca5f940}
.dfn-panel .marker.idl-block{background:#8ccbf2;box-shadow:0 0 0 .125em #0670b161}
.dfn-panel a:not(:hover){text-decoration:none!important;border-bottom:none!important}
.dfn-panel a[href]:hover{border-bottom-width:1px}
.dfn-panel ul{padding:0}
.dfn-panel li{margin-left:1em}
.dfn-panel.docked{position:fixed;left:.5em;top:unset;bottom:2em;margin:0 auto;max-width:calc(100vw - .75em * 2 - .5em - .2em * 2);max-height:30vh;overflow:auto}
</style>
<title>Core Accessibility API Mappings 1.2</title>
<style id="respec-mainstyle">
@keyframes pop{
0%{transform:scale(1,1)}
25%{transform:scale(1.25,1.25);opacity:.75}
100%{transform:scale(1,1)}
}
:is(h1,h2,h3,h4,h5,h6,a) abbr{border:none}
dfn{font-weight:700}
a.internalDFN{color:inherit;border-bottom:1px solid #99c;text-decoration:none}
a.externalDFN{color:inherit;border-bottom:1px dotted #ccc;text-decoration:none}
a.bibref{text-decoration:none}
.respec-offending-element:target{animation:pop .25s ease-in-out 0s 1}
.respec-offending-element,a[href].respec-offending-element{text-decoration:red wavy underline}
@supports not (text-decoration:red wavy underline){
.respec-offending-element:not(pre){display:inline-block}
.respec-offending-element{background:url(data:image/gif;base64,R0lGODdhBAADAPEAANv///8AAP///wAAACwAAAAABAADAEACBZQjmIAFADs=) bottom repeat-x}
}
#references :target{background:#eaf3ff;animation:pop .4s ease-in-out 0s 1}
cite .bibref{font-style:normal}
code{color:#c63501}
th code{color:inherit}
a[href].orcid{padding-left:4px;padding-right:4px}
a[href].orcid>svg{margin-bottom:-2px}
.toc a,.tof a{text-decoration:none}
a .figno,a .secno{color:#000}
ol.tof,ul.tof{list-style:none outside none}
.caption{margin-top:.5em;font-style:italic}
table.simple{border-spacing:0;border-collapse:collapse;border-bottom:3px solid #005a9c}
.simple th{background:#005a9c;color:#fff;padding:3px 5px;text-align:left}
.simple th a{color:#fff;padding:3px 5px;text-align:left}
.simple th[scope=row]{background:inherit;color:inherit;border-top:1px solid #ddd}
.simple td{padding:3px 10px;border-top:1px solid #ddd}
.simple tr:nth-child(even){background:#f0f6ff}
.section dd>p:first-child{margin-top:0}
.section dd>p:last-child{margin-bottom:0}
.section dd{margin-bottom:1em}
.section dl.attrs dd,.section dl.eldef dd{margin-bottom:0}
#issue-summary>ul{column-count:2}
#issue-summary li{list-style:none;display:inline-block}
details.respec-tests-details{margin-left:1em;display:inline-block;vertical-align:top}
details.respec-tests-details>*{padding-right:2em}
details.respec-tests-details[open]{z-index:999999;position:absolute;border:thin solid #cad3e2;border-radius:.3em;background-color:#fff;padding-bottom:.5em}
details.respec-tests-details[open]>summary{border-bottom:thin solid #cad3e2;padding-left:1em;margin-bottom:1em;line-height:2em}
details.respec-tests-details>ul{width:100%;margin-top:-.3em}
details.respec-tests-details>li{padding-left:1em}
.self-link:hover{opacity:1;text-decoration:none;background-color:transparent}
aside.example .marker>a.self-link{color:inherit}
.header-wrapper{display:flex;align-items:baseline}
:is(h2,h3,h4,h5,h6):not(#toc>h2,#abstract>h2,#sotd>h2,.head>h2){position:relative;left:-.5em}
:is(h2,h3,h4,h5,h6):not(#toch2)+a.self-link{color:inherit;order:-1;position:relative;left:-1.1em;font-size:1rem;opacity:.5}
:is(h2,h3,h4,h5,h6)+a.self-link::before{content:"§";text-decoration:none;color:var(--heading-text)}
:is(h2,h3)+a.self-link{top:-.2em}
:is(h4,h5,h6)+a.self-link::before{color:#000}
@media (max-width:767px){
dd{margin-left:0}
}
@media print{
.removeOnSave{display:none}
}
</style>
<script src="common/script/mapping-tables.js"></script>
<link href="common/css/mapping-tables.css" rel="stylesheet" type="text/css">
<link href="common/css/common.css" rel="stylesheet" type="text/css">
<link href="css/core-aam.css" rel="stylesheet" type="text/css">
<script type="text/javascript">
var mappingTableLabels = {
viewByTable: "View as a single table",
expand: "Expand all",
collapse: "Collapse all",
showHideCols: "Show/Hide Columns:",
showActionText: "Show",
hideActionText: "Hide",
showToolTipText: "Show column",
hideToolTipText: "Hide column",
// map where keys are @id of associated mapping table:
viewByLabels: {
"role-mapping-table": "View by roles",
"state-property-mapping-table": "View by state/property",
"event-mapping-table": "View by state/property"
}
}
</script>
<meta name="description" content="This document describes how user agents should expose semantics of web content languages to accessibility APIs. This helps users with disabilities to obtain and interact with information using assistive technologies. Documenting these mappings promotes interoperable exposure of roles, states, properties, and events implemented by accessibility APIs and helps to ensure that this information appears in a manner consistent with author intent.">
<style>
var{position:relative;cursor:pointer}
var[data-type]::after,var[data-type]::before{position:absolute;left:50%;top:-6px;opacity:0;transition:opacity .4s;pointer-events:none}
var[data-type]::before{content:"";transform:translateX(-50%);border-width:4px 6px 0 6px;border-style:solid;border-color:transparent;border-top-color:#000}
var[data-type]::after{content:attr(data-type);transform:translateX(-50%) translateY(-100%);background:#000;text-align:center;font-family:"Dank Mono","Fira Code",monospace;font-style:normal;padding:6px;border-radius:3px;color:#daca88;text-indent:0;font-weight:400}
var[data-type]:hover::after,var[data-type]:hover::before{opacity:1}
</style>
<script id="initialUserConfig" type="application/json">{
"github": "w3c/core-aam",
"doJsonLd": true,
"lint": true,
"specStatus": "ED",
"shortName": "core-aam-1.2",
"copyrightStart": "2014",
"prevRecURI": "https://www.w3.org/TR/core-aam-1.1/",
"edDraftURI": "https://w3c.github.io/core-aam/",
"editors": [
{
"name": "Joanmarie Diggs",
"company": "Igalia, S.L.",
"companyURL": "https://www.igalia.com",
"w3cid": 68182
},
{
"name": "Alexander Surkov",
"company": "Igalia, S.L.",
"companyURL": "https://www.igalia.com",
"w3cid": 51089
},
{
"name": "Michael Cooper",
"company": "W3C",
"companyURL": "https://www.w3.org",
"w3cid": 34017
}
],
"formerEditors": [
{
"name": "Richard Schwerdtfeger",
"company": "Knowbility",
"companyURL": "https://www.knowbility.org/",
"w3cid": 2460,
"note": "Editor until October 2017"
},
{
"name": "Joseph Scheuhammer",
"company": "Inclusive Design Research Centre, OCAD University",
"companyURL": "http://idrc.ocad.ca",
"w3cid": 42279,
"note": "Editor until May 2017"
},
{
"name": "Andi Snow-Weaver",
"company": "IBM",
"companyURL": "http://www.ibm.com",
"w3cid": 35445,
"note": "Editor until December 2012"
},
{
"name": "Aaron Leventhal",
"company": "IBM",
"companyURL": "http://www.ibm.com",
"w3cid": 34329,
"note": "Editor until January 2009"
}
],
"authors": [
{
"name": "Melanie Richards",
"company": "Microsoft Corp.",
"companyURL": "https://microsoft.com/",
"note": "UIA",
"w3cid": 96078
},
{
"name": "James Craig",
"company": "Apple, Inc.",
"companyURL": "https://apple.com/accessibility",
"note": "AX API",
"w3cid": 42459
},
{
"name": "Joanmarie Diggs",
"company": "Igalia, S.L.",
"companyURL": "https://www.igalia.com",
"w3cid": 68182,
"note": "ATK / AT-SPI"
},
{
"name": "Alexander Surkov",
"company": "Igalia, S.L.",
"companyURL": "https://www.igalia.com",
"note": "MSAA, IAccessible2",
"w3cid": 51089
}
],
"group": "aria",
"tocIntroductory": true,
"ariaSpecURLs": {
"ED": "https://w3c.github.io/aria/",
"WD": "https://www.w3.org/TR/wai-aria-1.1/",
"CR": "https://www.w3.org/TR/wai-aria-1.1/",
"PR": "https://www.w3.org/TR/wai-aria-1.1/",
"REC": "https://www.w3.org/TR/wai-aria/"
},
"accNameURLs": {
"ED": "https://w3c.github.io/accname/",
"WD": "https://www.w3.org/TR/accname-aam-1.1/",
"FPWD": "https://www.w3.org/TR/accname-aam-1.1/",
"CR": "https://www.w3.org/TR/accname-aam-1.1/",
"PR": "https://www.w3.org/TR/accname-aam-1.1/",
"REC": "https://www.w3.org/TR/accname-aam-1.1/"
},
"preProcess": [
null,
null
],
"postProcess": [
null
],
"xref": [
"core-aam",
"accname",
"wai-aria"
],
"localBiblio": {
"ACCNAME-AAM": {
"aliasOf": "ACCNAME-AAM-1.1"
},
"ARIA-PRACTICES": {
"aliasOf": "WAI-ARIA-PRACTICES-1.2"
},
"CORE-AAM": {
"aliasOf": "CORE-AAM-1.1"
},
"DPUB-ARIA": {
"aliasOf": "DPUB-ARIA-1.0"
},
"GRAPHICS-ARIA": {
"aliasOf": "GRAPHICS-ARIA-1.0"
},
"GRAPHICS-AAM": {
"aliasOf": "GRAPHICS-AAM-1.0"
},
"EPUB-Content": {
"href": "http://www.idpf.org/epub/31/spec/epub-contentdocs.html",
"title": "EPUB Content Documents 3.1",
"publisher": "IDPF"
},
"HTML-AAM": {
"aliasOf": "HTML-AAM-1.0"
},
"MathML-Core": {
"href": "https://mathml-refresh.github.io/mathml-core/",
"title": "MathML Core",
"authors": [
"David Carlisle",
"Frédéric Wang"
]
},
"SVG-AAM": {
"aliasOf": "SVG-AAM-1.0"
},
"SVG1": {
"aliasOf": "SVG"
},
"WAI-ARIA": {
"aliasOf": "WAI-ARIA-1.1"
}
},
"publishISODate": "2022-05-17T00:00:00.000Z",
"generatedSubtitle": "W3C Editor's Draft 17 May 2022"
}</script>
<link rel="stylesheet" href="https://www.w3.org/StyleSheets/TR/2021/W3C-ED"></head>
<body class="h-entry" data-cite="core-aam accname wai-aria"><div class="head">
<p class="logos"><a class="logo" href="https://www.w3.org/"><img crossorigin="" alt="W3C" height="48" src="https://www.w3.org/StyleSheets/TR/2021/logos/W3C" width="72">
</a></p>
<h1 id="title" class="title">Core Accessibility API Mappings 1.2</h1>
<p id="w3c-state"><a href="https://www.w3.org/standards/types#ED">W3C Editor's Draft</a> <time class="dt-published" datetime="2022-05-17">17 May 2022</time></p>
<details open="">
<summary>More details about this document</summary>
<dl>
<dt>This version:</dt><dd>
<a class="u-url" href="https://w3c.github.io/core-aam/">https://w3c.github.io/core-aam/</a>
</dd>
<dt>Latest published version:</dt><dd>
<a href="https://www.w3.org/TR/core-aam-1.2/">https://www.w3.org/TR/core-aam-1.2/</a>
</dd>
<dt>Latest editor's draft:</dt><dd><a href="https://w3c.github.io/core-aam/">https://w3c.github.io/core-aam/</a></dd>
<dt>History:</dt><dd>
<a href="https://www.w3.org/standards/history/core-aam-1.2">https://www.w3.org/standards/history/core-aam-1.2</a>
</dd><dd>
<a href="https://github.com/w3c/core-aam/commits/">Commit history</a>
</dd>
<dt>Latest Recommendation:</dt><dd><a href="https://www.w3.org/TR/core-aam-1.1/">https://www.w3.org/TR/core-aam-1.1/</a></dd>
<dt>Editors:</dt><dd class="editor p-author h-card vcard" data-editor-id="68182">
<span class="p-name fn">Joanmarie Diggs</span> (<a class="p-org org h-org" href="https://www.igalia.com">Igalia, S.L.</a>)
</dd><dd class="editor p-author h-card vcard" data-editor-id="51089">
<span class="p-name fn">Alexander Surkov</span> (<a class="p-org org h-org" href="https://www.igalia.com">Igalia, S.L.</a>)
</dd><dd class="editor p-author h-card vcard" data-editor-id="34017">
<span class="p-name fn">Michael Cooper</span> (<a class="p-org org h-org" href="https://www.w3.org">W3C</a>)
</dd>
<dt>
Former editors:
</dt><dd class="editor p-author h-card vcard" data-editor-id="2460">
<span class="p-name fn">Richard Schwerdtfeger</span> (<a class="p-org org h-org" href="https://www.knowbility.org/">Knowbility</a>) (Editor until October 2017)
</dd><dd class="editor p-author h-card vcard" data-editor-id="42279">
<span class="p-name fn">Joseph Scheuhammer</span> (<a class="p-org org h-org" href="http://idrc.ocad.ca">Inclusive Design Research Centre, OCAD University</a>) (Editor until May 2017)
</dd><dd class="editor p-author h-card vcard" data-editor-id="35445">
<span class="p-name fn">Andi Snow-Weaver</span> (<a class="p-org org h-org" href="http://www.ibm.com">IBM</a>) (Editor until December 2012)
</dd><dd class="editor p-author h-card vcard" data-editor-id="34329">
<span class="p-name fn">Aaron Leventhal</span> (<a class="p-org org h-org" href="http://www.ibm.com">IBM</a>) (Editor until January 2009)
</dd>
<dt>Platform Mapping Maintainers:</dt><dd class="editor p-author h-card vcard" data-editor-id="96078">
<span class="p-name fn">Melanie Richards</span> (<a class="p-org org h-org" href="https://microsoft.com/">Microsoft Corp.</a>) (UIA)
</dd><dd class="editor p-author h-card vcard" data-editor-id="42459">
<span class="p-name fn">James Craig</span> (<a class="p-org org h-org" href="https://apple.com/accessibility">Apple, Inc.</a>) (AX API)
</dd><dd class="editor p-author h-card vcard" data-editor-id="68182">
<span class="p-name fn">Joanmarie Diggs</span> (<a class="p-org org h-org" href="https://www.igalia.com">Igalia, S.L.</a>) (ATK / AT-SPI)
</dd><dd class="editor p-author h-card vcard" data-editor-id="51089">
<span class="p-name fn">Alexander Surkov</span> (<a class="p-org org h-org" href="https://www.igalia.com">Igalia, S.L.</a>) (MSAA, IAccessible2)
</dd>
<dt>Feedback:</dt><dd>
<a href="https://github.com/w3c/core-aam/">GitHub w3c/core-aam</a>
(<a href="https://github.com/w3c/core-aam/pulls/">pull requests</a>,
<a href="https://github.com/w3c/core-aam/issues/new/choose">new issue</a>,
<a href="https://github.com/w3c/core-aam/issues/">open issues</a>)
</dd>
</dl>
</details>
<p class="copyright">
<a href="https://www.w3.org/Consortium/Legal/ipr-notice#Copyright">Copyright</a>
©
2014-2022
<a href="https://www.w3.org/"><abbr title="World Wide Web Consortium">W3C</abbr></a><sup>®</sup> (<a href="https://www.csail.mit.edu/"><abbr title="Massachusetts Institute of Technology">MIT</abbr></a>,
<a href="https://www.ercim.eu/"><abbr title="European Research Consortium for Informatics and Mathematics">ERCIM</abbr></a>, <a href="https://www.keio.ac.jp/">Keio</a>,
<a href="https://ev.buaa.edu.cn/">Beihang</a>). W3C
<a href="https://www.w3.org/Consortium/Legal/ipr-notice#Legal_Disclaimer">liability</a>,
<a href="https://www.w3.org/Consortium/Legal/ipr-notice#W3C_Trademarks">trademark</a> and
<a rel="license" href="https://www.w3.org/Consortium/Legal/2015/copyright-software-and-document" title="W3C Software and Document Notice and License">permissive document license</a> rules apply.
</p>
<hr title="Separator for header">
</div>
<section id="abstract" class="introductory"><h2>Abstract</h2>
<p>This document describes how <a class="termref informative" data-type="dfn" href="https://www.w3.org/TR/wai-aria-1.2/#dfn-user-agent">user agents</a> should expose semantics of web content languages to <a class="termref informative" data-type="dfn" href="https://www.w3.org/TR/wai-aria-1.2/#dfn-accessibility-api">accessibility <abbr title="Application Programming Interfaces">APIs</abbr></a>. This helps users with disabilities to obtain and interact with information using <a class="termref informative" data-type="dfn" href="https://www.w3.org/TR/wai-aria-1.2/#dfn-assistive-technology">assistive technologies</a>. Documenting these mappings promotes interoperable exposure of roles, states, properties, and events implemented by accessibility <abbr title="Application Programming Interfaces">APIs</abbr> and helps to ensure that this information appears in a manner consistent with author intent. </p>
<p>This Core Accessibility <abbr title="Application Programming Interface">API</abbr> Mappings specification defines support that applies across multiple content technologies, including general keyboard navigation support and mapping of general-purpose <a class="termref informative" data-type="dfn" href="https://www.w3.org/TR/wai-aria-1.2/#dfn-role">roles</a>, states, and <a class="termref informative" data-type="dfn" href="https://www.w3.org/TR/wai-aria-1.2/#dfn-property">properties</a> provided in Web content via <cite><a href="http://www.w3.org/TR/wai-aria-1.2/"><abbr title="Accessible Rich Internet Applications">WAI-ARIA</abbr></a></cite> [<cite><a class="bibref" data-link-type="biblio" href="#bib-wai-aria-1.2" title="Accessible Rich Internet Applications (WAI-ARIA) 1.2">WAI-ARIA-1.2</a></cite>]. Other Accessibility <abbr title="Application Programming Interface">API</abbr> Mappings specifications depend on and extend this Core specification for specific technologies, including native technology features and <abbr title="Accessible Rich Internet Application">WAI-ARIA</abbr> extensions. This document updates and will eventually supersede the guidance in the <a href="http://www.w3.org/TR/core-aam-1.1/">Core Accessibility <abbr title="Application Programming Interface">API</abbr> Mappings 1.1</a> [<cite><a class="bibref" data-link-type="biblio" href="#bib-core-aam-1.1" title="Core Accessibility API Mappings 1.1">CORE-AAM-1.1</a></cite>] <abbr title="World Wide Web Consortium">W3C</abbr> Recommendation. It is part of the <abbr title="Accessible Rich Internet Applications">WAI-ARIA</abbr> suite described in the <a href="http://www.w3.org/WAI/intro/aria.php"><abbr title="Accessible Rich Internet Application">WAI-ARIA</abbr> Overview</a>.</p>
</section>
<section id="sotd" class="introductory"><h2>Status of This Document</h2><p><em>This section describes the status of this
document at the time of its publication. A list of current <abbr title="World Wide Web Consortium">W3C</abbr>
publications and the latest revision of this technical report can be found
in the <a href="https://www.w3.org/TR/"><abbr title="World Wide Web Consortium">W3C</abbr> technical reports index</a> at
https://www.w3.org/TR/.</em></p>
<p>The Accessible Rich Internet Applications Working Group seeks feedback on any aspect of the specification. When submitting feedback, please consider issues in the context of the companion documents. To comment, <a href="https://github.com/w3c/core-aam/issues/new">file an issue in the <abbr title="World Wide Web Consortium">W3C</abbr> core-aam GitHub repository</a>. If this is not feasible, send email to <a href="mailto:[email protected]?subject=Comment%20on%20Core-AAM%201.2">[email protected]</a> (<a href="http://lists.w3.org/Archives/Public/public-aria/">comment archive</a>). In-progress updates to the document may be viewed in the <a href="http://w3c.github.io/core-aam/">publicly visible editors' draft</a>.</p>
<p>
This document was published by the <a href="https://www.w3.org/groups/wg/aria">Accessible Rich Internet Applications Working Group</a> as
an Editor's Draft.
</p><p>Publication as an Editor's Draft does not
imply endorsement by <abbr title="World Wide Web Consortium">W3C</abbr> and its Members. </p><p>
This is a draft document and may be updated, replaced or obsoleted by other
documents at any time. It is inappropriate to cite this document as other
than work in progress.
</p><p>
This document was produced by a group
operating under the
<a href="https://www.w3.org/Consortium/Patent-Policy/"><abbr title="World Wide Web Consortium">W3C</abbr> Patent
Policy</a>.
<abbr title="World Wide Web Consortium">W3C</abbr> maintains a
<a rel="disclosure" href="https://www.w3.org/groups/wg/aria/ipr">public list of any patent disclosures</a>
made in connection with the deliverables of
the group; that page also includes
instructions for disclosing a patent. An individual who has actual
knowledge of a patent which the individual believes contains
<a href="https://www.w3.org/Consortium/Patent-Policy/#def-essential">Essential Claim(s)</a>
must disclose the information in accordance with
<a href="https://www.w3.org/Consortium/Patent-Policy/#sec-Disclosure">section 6 of the <abbr title="World Wide Web Consortium">W3C</abbr> Patent Policy</a>.
</p><p>
This document is governed by the
<a id="w3c_process_revision" href="https://www.w3.org/2021/Process-20211102/">2 November 2021 <abbr title="World Wide Web Consortium">W3C</abbr> Process Document</a>.
</p></section><nav id="toc"><h2 class="introductory" id="table-of-contents">Table of Contents</h2><ol class="toc"><li class="tocline"><a class="tocxref" href="#abstract">Abstract</a></li><li class="tocline"><a class="tocxref" href="#sotd">Status of This Document</a></li><li class="tocline"><a class="tocxref" href="#intro"><bdi class="secno">1. </bdi>Introduction</a><ol class="toc"><li class="tocline"><a class="tocxref" href="#intro_aapi"><bdi class="secno">1.1 </bdi>Accessibility <abbr title="Application Programming Interfaces">APIs</abbr> </a></li><li class="tocline"><a class="tocxref" href="#comparing-accessibility-apis"><bdi class="secno">1.2 </bdi>Comparing Accessibility <abbr title="Application Programming Interfaces">APIs</abbr></a><ol class="toc"><li class="tocline"><a class="tocxref" href="#atk-at-spi"><bdi class="secno">1.2.1 </bdi><abbr title="Accessibility Toolkit">ATK</abbr>/<abbr title="assistive technology">AT</abbr>-SPI</a></li><li class="tocline"><a class="tocxref" href="#uia-ui-automation"><bdi class="secno">1.2.2 </bdi><abbr title="User Interface Automation">UIA</abbr> (<abbr title="user interface">UI</abbr> Automation)</a></li><li class="tocline"><a class="tocxref" href="#accessible-names-and-descriptions"><bdi class="secno">1.2.3 </bdi>Accessible Names and Descriptions</a></li></ol></li></ol></li><li class="tocline"><a class="tocxref" href="#conformance"><bdi class="secno">2. </bdi>Conformance</a><ol class="toc"><li class="tocline"><a class="tocxref" href="#rfc-2119-keywords"><bdi class="secno">2.1 </bdi>RFC-2119 Keywords</a></li><li class="tocline"><a class="tocxref" href="#normative-and-informative-sections"><bdi class="secno">2.2 </bdi>Normative and Informative Sections</a></li><li class="tocline"><a class="tocxref" href="#features-deprecated-in-wai-aria"><bdi class="secno">2.3 </bdi>Features Deprecated in <abbr title="Accessible Rich Internet Application">WAI-ARIA</abbr></a></li></ol></li><li class="tocline"><a class="tocxref" href="#glossary"><bdi class="secno">3. </bdi>Important Terms</a></li><li class="tocline"><a class="tocxref" href="#mapping"><bdi class="secno">4. </bdi>Mapping <abbr title="Accessible Rich Internet Application">WAI-ARIA</abbr> to Accessibility <abbr title="Application Programming Interfaces">APIs</abbr></a><ol class="toc"><li class="tocline"><a class="tocxref" href="#mapping_general"><bdi class="secno">4.1 </bdi>General rules for exposing <abbr title="Accessible Rich Internet Application">WAI-ARIA</abbr> semantics</a></li><li class="tocline"><a class="tocxref" href="#mapping_conflicts"><bdi class="secno">4.2 </bdi>Conflicts between native markup semantics and <abbr title="Accessible Rich Internet Application">WAI-ARIA</abbr></a></li><li class="tocline"><a class="tocxref" href="#mapping_nodirect"><bdi class="secno">4.3 </bdi>Exposing attributes that do not directly map to accessibility <abbr title="application programming interface">API</abbr> properties</a></li><li class="tocline"><a class="tocxref" href="#mapping_role"><bdi class="secno">4.4 </bdi>Role mapping</a><ol class="toc"><li class="tocline"><a class="tocxref" href="#roleMappingGeneralRules"><bdi class="secno">4.4.1 </bdi>General rules</a></li><li class="tocline"><a class="tocxref" href="#mapping_role_table"><bdi class="secno">4.4.2 </bdi>Role Mapping Table</a></li></ol></li><li class="tocline"><a class="tocxref" href="#mapping_state-property"><bdi class="secno">4.5 </bdi>State and Property Mapping</a><ol class="toc"><li class="tocline"><a class="tocxref" href="#statePropertyMappingGeneralRules"><bdi class="secno">4.5.1 </bdi>General rules</a></li><li class="tocline"><a class="tocxref" href="#mapping_state-property_table"><bdi class="secno">4.5.2 </bdi>State and Property Mapping Table</a><ol class="toc"><li class="tocline"><a class="tocxref" href="#not_mapped"><bdi class="secno">4.5.2.1 </bdi>Not Mapped</a></li></ol></li></ol></li><li class="tocline"><a class="tocxref" href="#mapping_additional"><bdi class="secno">4.6 </bdi>Special Processing Requiring Additional Computation</a><ol class="toc"><li class="tocline"><a class="tocxref" href="#mapping_additional_nd"><bdi class="secno">4.6.1 </bdi>Name and Description</a></li><li class="tocline"><a class="tocxref" href="#mapping_additional_relations"><bdi class="secno">4.6.2 </bdi>Relations</a><ol class="toc"><li class="tocline"><a class="tocxref" href="#mapping_additional_relations_reverse_relations"><bdi class="secno">4.6.2.1 </bdi>Reverse Relations</a></li><li class="tocline"><a class="tocxref" href="#mapping_additional_relations_implied"><bdi class="secno">4.6.2.2 </bdi>Implied reverse relations</a></li></ol></li><li class="tocline"><a class="tocxref" href="#mapping_additional_position"><bdi class="secno">4.6.3 </bdi>Group Position</a></li></ol></li><li class="tocline"><a class="tocxref" href="#mapping_actions"><bdi class="secno">4.7 </bdi>Actions</a></li><li class="tocline"><a class="tocxref" href="#mapping_events"><bdi class="secno">4.8 </bdi>Events</a><ol class="toc"><li class="tocline"><a class="tocxref" href="#mapping_events_state-change"><bdi class="secno">4.8.1 </bdi>State and Property Change Events</a></li><li class="tocline"><a class="tocxref" href="#mapping_events_visibility"><bdi class="secno">4.8.2 </bdi>Changes to document content or node visibility</a></li><li class="tocline"><a class="tocxref" href="#focus_state_event_table"><bdi class="secno">4.8.3 </bdi>Focus Changes</a></li><li class="tocline"><a class="tocxref" href="#mapping_events_selection"><bdi class="secno">4.8.4 </bdi>Selection</a></li><li class="tocline"><a class="tocxref" href="#mapping_events_menus"><bdi class="secno">4.8.5 </bdi>Special Events for Menus</a></li></ol></li></ol></li><li class="tocline"><a class="tocxref" href="#changelog"><bdi class="secno">A. </bdi>Change Log</a><ol class="toc"><li class="tocline"><a class="tocxref" href="#substantive-changes-since-the-last-public-working-draft"><bdi class="secno">A.1 </bdi>Substantive changes since the last public working draft</a></li><li class="tocline"><a class="tocxref" href="#substantive-changes-since-the-core-accessibility-api-mappings-1-1-recommendation"><bdi class="secno">A.2 </bdi>Substantive changes since the <span class="formerLink">Core Accessibility <abbr title="Application Programming Interface">API</abbr> Mappings 1.1 Recommendation</span></a></li></ol></li><li class="tocline"><a class="tocxref" href="#acknowledgements"><bdi class="secno">B. </bdi>Acknowledgments</a></li><li class="tocline"><a class="tocxref" href="#references"><bdi class="secno">C. </bdi>References</a><ol class="toc"><li class="tocline"><a class="tocxref" href="#normative-references"><bdi class="secno">C.1 </bdi>Normative references</a></li><li class="tocline"><a class="tocxref" href="#informative-references"><bdi class="secno">C.2 </bdi>Informative references</a></li></ol></li></ol></nav>
<section id="intro" class="informative"><div class="header-wrapper"><h2 id="x1-introduction"><bdi class="secno">1. </bdi>Introduction</h2><a class="self-link" href="#intro" aria-label="Permalink for Section 1."></a></div><p><em>This section is non-normative.</em></p>
<p>The Core Accessibility <abbr title="Application Programming Interface">API</abbr> Mappings specifies how <abbr title="Accessible Rich Internet Applications">WAI-ARIA</abbr> <a class="termref informative" data-type="dfn" href="https://www.w3.org/TR/wai-aria-1.2/#dfn-role">roles</a>, <a class="termref informative" data-type="dfn" href="https://www.w3.org/TR/wai-aria-1.2/#dfn-state">states</a>, and <a class="termref informative" data-type="dfn" href="https://www.w3.org/TR/wai-aria-1.2/#dfn-property">properties</a> are expected to be exposed by user agents via platform accessibility <abbr title="Application Programming Interfaces">APIs</abbr>. It is part of a set of resources that define and support the <abbr title="Accessible Rich Internet Applications">WAI-ARIA</abbr> specification which includes the following documents:</p>
<ul>
<li><cite><a class="specref" href="https://w3c.github.io/aria/">Accessible Rich Internet Applications (<abbr title="Accessible Rich Internet Application">WAI-ARIA</abbr>) 1.2</a></cite> [<cite><a class="bibref" data-link-type="biblio" href="#bib-wai-aria-1.2" title="Accessible Rich Internet Applications (WAI-ARIA) 1.2">WAI-ARIA-1.2</a></cite>], a planned <abbr title="World Wide Web Consortium">W3C</abbr> recommendation, defines the <abbr title="Accessible Rich Internet Applications">WAI-ARIA</abbr> standard.</li>
<li><cite><a href="http://www.w3.org/TR/wai-aria-practices/"><abbr title="Accessible Rich Internet Applications">WAI-ARIA</abbr> Authoring Practices Guide</a></cite> [<cite><a class="bibref" data-link-type="biblio" href="#bib-wai-aria-practices-1.2" title="WAI-ARIA Authoring Practices 1.2">WAI-ARIA-PRACTICES-1.2</a></cite>], a planned <abbr title="World Wide Web Consortium">W3C</abbr> Working Group Note, describes how web content developers can develop accessible rich internet applications using <abbr title="Accessible Rich Internet Applications">WAI-ARIA</abbr>. It provides detailed advice and examples directed primarily to web application developers, yet also useful to user agent and developers of assistive technologies.</li>
<li><cite><a href="http://www.w3.org/TR/wai-aria-roadmap/">Roadmap for Accessible Rich Internet Applications (<abbr title="Accessible Rich Internet Applications">WAI-ARIA</abbr> Roadmap)</a></cite> [<cite><a class="bibref" data-link-type="biblio" href="#bib-wai-aria-roadmap" title="Roadmap for Accessible Rich Internet Applications (WAI-ARIA Roadmap)">WAI-ARIA-ROADMAP</a></cite>], a planned <abbr title="World Wide Web Consortium">W3C</abbr> Working Group Note, defines the path to make rich web content accessible, including steps already taken, remaining future steps, and a time line.</li>
</ul>
<p>For an introduction to <abbr title="Accessible Rich Internet Applications">WAI-ARIA</abbr>, see the <a href="http://www.w3.org/WAI/intro/aria.php"><abbr title="Accessible Rich Internet Applications">WAI-ARIA</abbr> Overview</a>.</p>
<section id="intro_aapi"><div class="header-wrapper"><h3 id="x1-1-accessibility-apis"><bdi class="secno">1.1 </bdi>Accessibility <abbr title="Application Programming Interfaces">APIs</abbr> </h3><a class="self-link" href="#intro_aapi" aria-label="Permalink for Section 1.1"></a></div>
<p><a class="termref informative" data-type="dfn" href="https://www.w3.org/TR/wai-aria/#dfn-accessibility-api">Accessibility <abbr title="Application Programming Interfaces">APIs</abbr></a> make it possible to communicate accessibility information about user interfaces to assistive technologies. This information includes:</p>
<ol>
<li>Descriptive properties (role, name, value, position, etc.)</li>
<li>Transient states (pressed, focused, etc.)</li>
<li>Events (text changed, button was clicked, checkbox was toggled)</li>
<li>Actions the user might take (click, check/toggle, drag, etc.)</li>
<li>Relationships (parent/child, description/described object, previous object/next object, etc.)</li>
<li>Textual content</li>
</ol>
<p>Accessibility <abbr title="Application Programming Interfaces">APIs</abbr> covered by this specification are:</p>
<ul>
<li><abbr title="Microsoft Active Accessibility">MSAA</abbr> with <cite><a href="http://www.linuxfoundation.org/collaborate/workgroups/accessibility/iaccessible2">IAccessible2 1.3</a></cite> [<cite><a class="bibref" data-link-type="biblio" href="#bib-iaccessible2" title="IAccessible2">IAccessible2</a></cite>]</li>
<li><cite><a href="https://msdn.microsoft.com/en-us/library/ee684013%28VS.85%29.aspx">User Interface Automation</a></cite> [<cite><a class="bibref" data-link-type="biblio" href="#bib-ui-automation" title="UI Automation">UI-AUTOMATION</a></cite>]</li>
<li><cite><a href="https://developer.gnome.org/atk/stable/"><abbr title="Accessibility Toolkit">ATK</abbr> - Accessibility Toolkit</a></cite> [<cite><a class="bibref" data-link-type="biblio" href="#bib-atk" title="ATK - Accessibility Toolkit">ATK</a></cite>] and <cite><a href="https://developer.gnome.org/libatspi/stable/">Assistive Technology Service Provider Interface</a></cite> [<cite><a class="bibref" data-link-type="biblio" href="#bib-at-spi" title="Assistive Technology Service Provider Interface">AT-SPI</a></cite>], referred to hereafter as "<abbr title="Accessibility Toolkit">ATK</abbr>/<abbr title="assistive technology">AT</abbr>-SPI"</li>
<li><cite><a href="https://developer.apple.com/library/mac/documentation/Cocoa/Reference/ApplicationKit/Protocols/NSAccessibility_Protocol/index.html">macOS Accessibility Protocol</a></cite> [<cite><a class="bibref" data-link-type="biblio" href="#bib-axapi" title="The NSAccessibility Protocol for macOS">AXAPI</a></cite>]</li>
</ul>
<p>The <cite><a href="http://www.w3.org/TR/wai-aria-implementation/"><abbr title="Accessible Rich Internet Application">WAI-ARIA</abbr> 1.0 User Agent Implementation Guide</a></cite> included mappings for <cite><a href="https://msdn.microsoft.com/en-us/library/windows/desktop/dd561898%28v=vs.85%29.aspx"><abbr title="User Interface Automation">UIA</abbr> Express</a>, also known as IAccessibleEx</cite>, which was implemented in Microsoft Internet Explorer 8.0 - 11. New implementations are strongly encouraged to use <cite><a href="https://msdn.microsoft.com/en-us/library/ee684013%28VS.85%29.aspx">User Interface Automation</a></cite> instead.</p>
<p>If user agent developers need to expose information using other accessibility <abbr title="Application Programming Interfaces">APIs</abbr>, it is recommended that they work closely with the developer of the platform where the <abbr title="application programming interface">API</abbr> runs, and assistive technology developers on that platform.</p>
</section>
<section id="comparing-accessibility-apis"><div class="header-wrapper"><h3 id="x1-2-comparing-accessibility-apis"><bdi class="secno">1.2 </bdi>Comparing Accessibility <abbr title="Application Programming Interfaces">APIs</abbr></h3><a class="self-link" href="#comparing-accessibility-apis" aria-label="Permalink for Section 1.2"></a></div>
<p>For various technological and historical reasons, accessibility <abbr title="Application Programming Interfaces">APIs</abbr> do not all work in the same way. In many cases, there is no simple one-to-one relationship between how each of them names or exposes roles, states, and properties to user agents. The following subsections describe a few of the distinguishing characteristics of some of the <abbr title="Application Programming Interfaces">APIs</abbr>.</p>
<section id="atk-at-spi"><div class="header-wrapper"><h4 id="x1-2-1-atk-at-spi"><bdi class="secno">1.2.1 </bdi><abbr title="Accessibility Toolkit">ATK</abbr>/<abbr title="assistive technology">AT</abbr>-SPI</h4><a class="self-link" href="#atk-at-spi" aria-label="Permalink for Section 1.2.1"></a></div>
<p><abbr title="Microsoft Active Accessibility">MSAA</abbr>, IAccessible2, <abbr title="User Interface Automation">UIA</abbr>, and <abbr title="macOS Accessibility Protocol">AX API</abbr> each define an <abbr title="Application Programming Interface">API</abbr> that is shared by both the software application exposing information about its content and interactive components, and the user agent (assistive technology) consuming that information. Conversely, Linux/GNOME separates that shared interface into its two aspects, each represented by a different accessibility <abbr title="Application Programming Interface">API</abbr>: <abbr title="Accessibility Toolkit">ATK</abbr> or <abbr title="assistive technology">AT</abbr>-SPI.</p>
<p><abbr title="Accessibility Toolkit">ATK</abbr> defines an interface that is implemented by software in order to expose accessibility information, whereas <abbr title="assistive technology">AT</abbr>-SPI is a desktop service that gathers accessibility information from active applications and relays it to other interested applications, usually assistive technologies.</p>
<p>For example, the GNOME <abbr title="Graphical User Interface">GUI</abbr> toolkit [GTK], implements the relevant aspects of <abbr title="Accessibility Toolkit">ATK</abbr> for each widget (menu, combobox, checkbox, etc.) in order that GTK widgets expose accessibility information about themselves. <abbr title="assistive technology">AT</abbr>-SPI then acquires the information from applications built with GTK and makes it available to interested parties.</p>
<p><abbr title="Accessibility Toolkit">ATK</abbr> is most relevant to implementors, whereas <abbr title="assistive technology">AT</abbr>-SPI is relevant to consumers. In the context of mapping <abbr title="Accessible Rich Internet Application">WAI-ARIA</abbr> roles, states and properties, user agents are implementors and use <abbr title="Accessibility Toolkit">ATK</abbr>. Assistive Technologies are consumers, and use <abbr title="assistive technology">AT</abbr>-SPI.</p>
</section>
<section id="uia-ui-automation"><div class="header-wrapper"><h4 id="x1-2-2-uia-ui-automation"><bdi class="secno">1.2.2 </bdi><abbr title="User Interface Automation">UIA</abbr> (<abbr title="user interface">UI</abbr> Automation)</h4><a class="self-link" href="#uia-ui-automation" aria-label="Permalink for Section 1.2.2"></a></div>
<p><abbr title="user interface">UI</abbr> Automation expresses every element of the application user interface as an automation element. Automation elements form the nodes of the application accessibility tree, that can be queried, traversed and interacted with by automation clients.</p>
<p>There are several concepts central to <abbr title="user interface">UI</abbr> Automation:</p>
<ul>
<li>Automation element - controls and some application content are presented as automation elements.</li>
<li>Element properties - Automation elements have several common properties describing native framework element characteristics in an agnostic way that all automation clients can understand. There are several ways to access element property values, described below.</li>
<li>Control Patterns - Some common interactivity in different frameworks is expressed as control patterns in <abbr title="User Interface Automation">UIA</abbr>, allowing different automation clients to interact with controls using common programmatic interfaces.</li>
<li>Events - Similar to other accessibility <abbr title="Application Programming Interfaces">APIs</abbr>, automation elements support various events that allow automation providers to notify clients on important state changes.</li>
</ul>
<p>All automation elements inherit from the <code>IUIAutomationElement</code> interface and all properties that are not specific to a particular control pattern can be queried through that interface. There are several ways to access <abbr title="user interface">UI</abbr> Automation element properties:</p>
<ul>
<li>Direct property accessors to the current values - <code>Current{PropertyName}</code>, e.g. <code>IUIAutomationElement::CurrentName</code> for the <code>Name</code> property</li>
<li>Cached property accessors - <code>Cached{PropertyName}</code>, e.g. <code>IUIAutomationElement::CachedName</code> for the <code>Name</code> property. Using cached values is preferred when providers and clients are used in remote environments.</li>
<li><code>GetCurrentPropertyValue</code> and passing the <abbr title="User Interface Automation">UIA</abbr> Property ID enumeration value corresponding to that property to get the current value, e.g. <code>IUIAutomationElement::GetCurrentPropertyValue(UIA_NamePropertyId)</code> for the <code>Name</code> property.</li>
<li><code>GetCachedPropertyValue</code> and passing the <abbr title="User Interface Automation">UIA</abbr> Property ID enumeration value corresponding to that property to get the cached value, e.g. <code>IUIAutomationElement::GetCachedPropertyValue(UIA_NamePropertyId)</code> for the <code>Name</code> property.</li>
</ul>
<p>Properties for specific <abbr title="User Interface Automation">UIA</abbr> control patterns are queried the same way using relevant control pattern interfaces. Taking Toggle Pattern as an example, to query the ToggleState property clients can use IUIAutomationTogglePattern::CurrentToggleState or IUIAutomationTogglePattern::GetCurrentPropertyValue(UIA_ToggleToggleStatePropertyId) to get the current value.</p>
<p>The property mappings in this specification provide the <code>{PropertyName}</code> and do not specify all specific ways to access the property value. Automation clients can access current or cached values using conventions described above, depending on specific needs and coding style conventions.</p>
</section>
<section id="accessible-names-and-descriptions"><div class="header-wrapper"><h4 id="x1-2-3-accessible-names-and-descriptions"><bdi class="secno">1.2.3 </bdi>Accessible Names and Descriptions</h4><a class="self-link" href="#accessible-names-and-descriptions" aria-label="Permalink for Section 1.2.3"></a></div>
<p>Each platform accessibility <abbr title="Application Programming Interface">API</abbr> includes a way to assign and retrieve <a class="termref informative" href="https://www.w3.org/TR/wai-aria/#dfn-accessible-name">accessible name</a> and <a class="termref informative" href="https://www.w3.org/TR/wai-aria/#dfn-accessible-description">accessible description</a> properties for each <a class="termref informative" data-type="dfn" href="https://www.w3.org/TR/wai-aria/#dfn-accessible-object">accessible object</a> created in the <a class="termref informative internalDFN" href="#dfn-accessibility-tree" data-link-type="dfn" id="ref-for-dfn-accessibility-tree-1">accessibility tree</a>. How these properties are implemented and what they are called vary depending on the <abbr title="Application Programming Interface">API</abbr>.</p>
<p>For instance, in <abbr title="Microsoft Active Accessibility">MSAA</abbr>, all <a class="termref informative" data-type="dfn" href="https://www.w3.org/TR/wai-aria/#dfn-accessible-object">accessible objects</a> support the <code>accName</code> property, which stores the object's <a class="termref informative" href="https://www.w3.org/TR/wai-aria/#dfn-accessible-name">accessible name</a>. Where the object also supports having an <a class="termref informative" href="https://www.w3.org/TR/wai-aria/#dfn-accessible-description">accessible description</a>, <abbr title="Microsoft Active Accessibility">MSAA</abbr> stores this property in the object's <code>accDescription</code> property.</p>
<p>Software using <abbr title="Accessibility Toolkit">ATK</abbr> can read and write to an object's <code>accessible-name</code> and <code>accessible-description</code> properties. In turn, <abbr title="assistive technology">AT</abbr>-SPI can query the values of those properties through its <code>atspi_accessible_get_name</code> and <code>atspi_accessible_get_description</code> functions.</p>
<p>Automation elements in the <abbr title="User Interface Automation">UIA</abbr> accessibility tree have a <code>Name</code> property. Where the object also supports having an <a class="termref informative" href="https://www.w3.org/TR/wai-aria/#dfn-accessible-description">accessible description</a>, <abbr title="User Interface Automation">UIA</abbr> stores this property in the object's <code>FullDescription</code> property.</p>
<p>The approach to <a class="termref informative" href="https://www.w3.org/TR/wai-aria/#dfn-accessible-name">accessible names</a> and <a class="termref informative" data-lt="accessible description" href="https://www.w3.org/TR/wai-aria/#dfn-accessible-description">accessible descriptions</a> in <abbr title="macOS Accessibility Protocol">AX API</abbr> is somewhat different to the other platform <abbr title="Application Programming Interfaces">APIs</abbr>. <a class="termref informative" href="https://www.w3.org/TR/wai-aria/#dfn-accessible-name">Accessible names</a> are exposed using the <code>AXTitle</code> property when the name is visually rendered, while the <code>AXDescription</code> property is used when the object's name is not rendered visually. An object's <a class="termref informative" href="https://www.w3.org/TR/wai-aria/#dfn-accessible-description">accessible description</a>, where provided, should always be exposed in the <code>AXHelp</code> property.</p>
<p>For more detail, see the <a class="accname" href="https://w3c.github.io/accname/">Accessible Name and Description Computation</a> specification.</p>
</section>
</section>
</section>
<section id="conformance"><div class="header-wrapper"><h2 id="x2-conformance"><bdi class="secno">2. </bdi>Conformance</h2><a class="self-link" href="#conformance" aria-label="Permalink for Section 2."></a></div><p>As well as sections marked as non-normative, all authoring guidelines, diagrams, examples, and notes in this specification are non-normative. Everything else in this specification is normative.</p><p>
The key words <em class="rfc2119">MAY</em>, <em class="rfc2119">MUST</em>, <em class="rfc2119">SHOULD</em>, and <em class="rfc2119">SHOULD NOT</em> in this document
are to be interpreted as described in
<a href="https://datatracker.ietf.org/doc/html/bcp14">BCP 14</a>
[<cite><a class="bibref" data-link-type="biblio" href="#bib-rfc2119" title="Key words for use in RFCs to Indicate Requirement Levels">RFC2119</a></cite>] [<cite><a class="bibref" data-link-type="biblio" href="#bib-rfc8174" title="Ambiguity of Uppercase vs Lowercase in RFC 2119 Key Words">RFC8174</a></cite>]
when, and only when, they appear in all capitals, as shown here.
</p>
<section id="rfc-2119-keywords"><div class="header-wrapper"><h3 id="x2-1-rfc-2119-keywords"><bdi class="secno">2.1 </bdi>RFC-2119 Keywords</h3><a class="self-link" href="#rfc-2119-keywords" aria-label="Permalink for Section 2.1"></a></div>
<p>RFC-2119 keywords are formatted in uppercase and contained in a <code>strong</code> element with <code>class="rfc2119"</code>. When the keywords shown above are used, but do not share this format, they do not convey formal information in the RFC 2119 sense, and are merely explanatory, i.e., informative. As much as possible, such usages are avoided in this specification.</p>
</section>
<section id="normative-and-informative-sections"><div class="header-wrapper"><h3 id="x2-2-normative-and-informative-sections"><bdi class="secno">2.2 </bdi>Normative and Informative Sections</h3><a class="self-link" href="#normative-and-informative-sections" aria-label="Permalink for Section 2.2"></a></div>
<p>The indication whether a section is <a class="termref informative" data-type="dfn" href="https://www.w3.org/TR/wai-aria/#dfn-normative">normative</a> or <a class="termref informative" data-type="dfn" href="https://www.w3.org/TR/wai-aria/#dfn-informative">non-normative</a> (informative) applies to the entire section including sub-sections.</p>
<p>Informative sections provide information useful to understanding the specification. Such sections may contain examples of recommended practice, but it is not required to follow such recommendations in order to conform to this specification.</p>
</section>
<section id="features-deprecated-in-wai-aria"><div class="header-wrapper"><h3 id="x2-3-features-deprecated-in-wai-aria"><bdi class="secno">2.3 </bdi>Features Deprecated in <abbr title="Accessible Rich Internet Application">WAI-ARIA</abbr></h3><a class="self-link" href="#features-deprecated-in-wai-aria" aria-label="Permalink for Section 2.3"></a></div>
<p>The <abbr title="Accessible Rich Internet Application">WAI-ARIA</abbr> specification <a href="https://w3c.github.io/aria/#deprecated" class="specref">lists some features as deprecated</a>. Although this means authors are encouraged not to use such features, it is expected that the features could still be used in legacy content. Therefore, it is important that user agents continue to map these features to accessibility <abbr title="Application Programming Interfaces">APIs</abbr>, and doing so is part of conformance to this specification. When future versions of the <abbr title="Accessible Rich Internet Application">WAI-ARIA</abbr> specification change such features from deprecated to removed, they will be removed from the mappings as well and user agents will no longer be asked to continue support for those features.</p>
</section>
</section>
<section class="informative" id="glossary"><div class="header-wrapper"><h2 id="x3-important-terms"><bdi class="secno">3. </bdi>Important Terms</h2><a class="self-link" href="#glossary" aria-label="Permalink for Section 3."></a></div><p><em>This section is non-normative.</em></p>
<div>
<p>While some terms are defined in place, the following definitions are used throughout this document. </p>
<dl class="termlist">
<dt><dfn data-export="" id="dfn-accessibility-subtree" tabindex="0" aria-haspopup="dialog" data-dfn-type="dfn">Accessibility Subtree</dfn></dt>
<dd>
<p>An <a data-link-type="dfn" data-type="dfn" href="https://www.w3.org/TR/wai-aria/#dfn-accessible-object">accessible object</a> in the <a href="#dfn-accessibility-tree" class="internalDFN" data-link-type="dfn" id="ref-for-dfn-accessibility-tree-2">accessibility tree</a> and its descendants in that tree. It does not include objects which have relationships other than parent-child in that tree. For example, it does not include objects linked via <a class="specref" href="https://w3c.github.io/aria/#aria-flowto">aria-flowto</a> unless those objects are also descendants in the <a href="#dfn-accessibility-tree" class="internalDFN" data-link-type="dfn" id="ref-for-dfn-accessibility-tree-3">accessibility tree</a>.</p>
</dd>
<dt><dfn data-export="" id="dfn-accessibility-tree" tabindex="0" aria-haspopup="dialog" data-dfn-type="dfn">Accessibility Tree</dfn></dt>
<dd>
<p>Tree of <a class="termref informative" data-lt="accessible object" data-type="dfn" href="https://www.w3.org/TR/wai-aria/#dfn-accessible-object">accessible objects</a> that represents the structure of the user interface (<abbr title="user interface">UI</abbr>). Each node in the accessibility tree represents an element in the <abbr title="user interface">UI</abbr> as exposed through the <a data-type="dfn" href="https://www.w3.org/TR/wai-aria/#dfn-accessibility-api">accessibility <abbr title="Application Programming Interface">API</abbr></a>; for example, a push button, a check box, or container.</p>
</dd>
<dt><dfn data-export="" id="dfn-activation-behavior" tabindex="0" aria-haspopup="dialog" data-dfn-type="dfn">Activation behavior</dfn></dt>
<dd>
<p>The action taken when an <a data-type="dfn" href="https://www.w3.org/TR/wai-aria/#dfn-event">event</a>, typically initiated by users through an input device, causes an element to fulfill a defined role. The role may be defined for that element by the host language, or by author-defined variables, or both. The role for any given element may be a generic action, or may be unique to that element. For example, the activation behavior of an <abbr title="Hypertext Markup Language">HTML</abbr> or <abbr title="Scalable Vector Graphics">SVG</abbr> <code><a></code> element shall be to cause the user agent to traverse the link specified in the <code>href</code> attribute, with the further optional parameter of specifying the browsing context for the traversal (such as the current window or tab, a named window, or a new window); the activation behavior of an <abbr title="Hypertext Markup Language">HTML</abbr> <code><input></code> element with the <code>type</code> attribute value <code>submit</code> shall be to send the values of the form elements to an author-defined <abbr title="Internationalized Resource Identifiers">IRI</abbr> by the author-defined <abbr title="Hypertext Transfer Protocol">HTTP</abbr> method.</p>
</dd>
</dl>
</div>
</section>
<section id="mapping"><div class="header-wrapper"><h2 id="x4-mapping-wai-aria-to-accessibility-apis"><bdi class="secno">4. </bdi>Mapping <abbr title="Accessible Rich Internet Application">WAI-ARIA</abbr> to Accessibility <abbr title="Application Programming Interfaces">APIs</abbr></h2><a class="self-link" href="#mapping" aria-label="Permalink for Section 4."></a></div>
<section id="mapping_general"><div class="header-wrapper"><h3 id="x4-1-general-rules-for-exposing-wai-aria-semantics"><bdi class="secno">4.1 </bdi>General rules for exposing <abbr title="Accessible Rich Internet Application">WAI-ARIA</abbr> semantics</h3><a class="self-link" href="#mapping_general" aria-label="Permalink for Section 4.1"></a></div>
<p>Where supported by the platform <a class="termref informative" data-type="dfn" href="https://www.w3.org/TR/wai-aria/#dfn-accessibility-api">Accessibility <abbr title="Application Programming Interface">API</abbr></a>, <a class="termref informative" data-type="dfn" href="https://www.w3.org/TR/wai-aria/#dfn-user-agent">user agents</a> expose <abbr title="Accessible Rich Internet Application">WAI-ARIA</abbr> <a class="termref informative" data-type="dfn" href="https://www.w3.org/TR/wai-aria/#dfn-semantics">semantics</a> through the standard mechanisms of the desktop accessibility <abbr title="application programming interface">API</abbr>. For example, for <abbr title="Accessible Rich Internet Application">WAI-ARIA</abbr> <a class="termref informative" data-type="dfn" href="https://www.w3.org/TR/wai-aria/#dfn-widget">widgets</a>, compare how the widget is exposed in a similar desktop widget. In general most <abbr title="Accessible Rich Internet Application">WAI-ARIA</abbr> widget capabilities are exposed through the <a class="termref informative" data-type="dfn" href="https://www.w3.org/TR/wai-aria/#dfn-role">role</a>, value, Boolean <a class="termref informative" data-type="dfn" href="https://www.w3.org/TR/wai-aria/#dfn-state">states</a>, and relations of the accessibility <abbr title="application programming interface">API</abbr>.</p>
<p>With respect to <abbr title="Accessible Rich Internet Applications">WAI-ARIA</abbr> 1.0 and 1.1, accessibility <abbr title="application programming interfaces">APIs</abbr> operate in one direction only. User agents publish <abbr title="Accessible Rich Internet Applications">WAI-ARIA</abbr> information (roles, states, and properties) via an accessibility <abbr title="application programming interface">API</abbr>, and an <abbr title="assistive technology">AT</abbr> can acquire that information using the same <abbr title="application programming interface">API</abbr>. However, the other direction is not supported. <abbr title="Accessible Rich Internet Applications">WAI-ARIA</abbr> 1.0 and 1.1 do not define mechanisms for assistive technologies to directly modify <abbr title="Accessible Rich Internet Applications">WAI-ARIA</abbr> information.</p>
<p>The terms "exposing", "mapping", and "including" refer to the creation of <a class="termref informative" data-type="dfn" href="https://www.w3.org/TR/wai-aria/#dfn-accessible-object">accessible object</a> <a class="termref informative" data-lt="node" data-type="dfn" href="https://www.w3.org/TR/wai-aria/#dfn-node">nodes</a> within the <a class="termref informative internalDFN" href="#dfn-accessibility-tree" data-link-type="dfn" id="ref-for-dfn-accessibility-tree-4">accessibility tree</a>, and populating these objects with <a class="termref informative" data-type="dfn" href="https://www.w3.org/TR/wai-aria/#dfn-accessibility-api">Accessibility <abbr title="Application Programming Interface">API</abbr></a> specific <a class="termref informative" data-type="dfn" href="https://www.w3.org/TR/wai-aria/#dfn-state">states</a> and <a class="termref informative" data-type="dfn" href="https://www.w3.org/TR/wai-aria/#dfn-property">properties</a>.</p>
</section>
<section id="mapping_conflicts"><div class="header-wrapper"><h3 id="x4-2-conflicts-between-native-markup-semantics-and-wai-aria"><bdi class="secno">4.2 </bdi>Conflicts between native markup semantics and <abbr title="Accessible Rich Internet Application">WAI-ARIA</abbr></h3><a class="self-link" href="#mapping_conflicts" aria-label="Permalink for Section 4.2"></a></div>
<p><abbr title="Accessible Rich Internet Application">WAI-ARIA</abbr> roles, states, and properties are intended to add <a class="termref informative" data-type="dfn" href="https://www.w3.org/TR/wai-aria/#dfn-semantics">semantic</a> information when native host language <a class="termref informative" data-type="dfn" href="https://www.w3.org/TR/wai-aria/#dfn-element">elements</a> with these semantics are not available, and are generally used on elements that have no native semantics of their own. They can also be used on elements that have similar but not identical semantics to the intended object (for instance, a nested list could be used to represent a tree structure). This method can be part of a fallback strategy for older browsers that have no <abbr title="Accessible Rich Internet Application">WAI-ARIA</abbr> implementation, or because native presentation of the repurposed element reduces the amount of style and/or script needed. Except for the cases outlined below, <a class="termref informative" data-type="dfn" href="https://www.w3.org/TR/wai-aria/#dfn-user-agent">user agents</a> <em class="rfc2119">MUST</em> always use the <abbr title="Accessible Rich Internet Application">WAI-ARIA</abbr> semantics to define how it exposes the element to <a class="termref informative" data-type="dfn" href="https://www.w3.org/TR/wai-aria/#dfn-accessibility-api">accessibility <abbr title="Application Programming Interfaces">APIs</abbr></a>, rather than using the host language semantics.</p>
<p>Host languages can have features that have implicit <abbr title="Accessible Rich Internet Application">WAI-ARIA</abbr> semantics corresponding to <a class="termref informative" data-type="dfn" href="https://www.w3.org/TR/wai-aria/#dfn-role">roles</a>. When a <abbr title="Accessible Rich Internet Application">WAI-ARIA</abbr> role is provided that has a corresponding role in the accessibility <abbr title="Application Programming Interface">API</abbr>, user agents <em class="rfc2119">MUST</em> use the semantic of the <abbr title="Accessible Rich Internet Application">WAI-ARIA</abbr> role for processing, not the native semantic, unless the role requires <abbr title="Accessible Rich Internet Applications">WAI-ARIA</abbr> states and properties whose attributes are explicitly forbidden on the native element by the host language. Values for roles do not conflict in the same way as values for states and properties, and because authors are expected to have a valid reason to provide a <abbr title="Accessible Rich Internet Application">WAI-ARIA</abbr> role even on elements that would not normally be repurposed. For example, spin buttons are typically constructed from text fields (<code><input type="text"></code>) in order to get most of the default keyboard support. But, the native role, "text field", is not correct because it does not properly communicate the additional features of a spin button. The author adds the <abbr title="Accessible Rich Internet Applications">WAI-ARIA</abbr> role of <code>spinbutton</code> (<code><input type="text" role="spinbutton" ...></code>) so that the control is properly mapped in the accessibility <abbr title="Application Programming Interface">API</abbr>. When a <abbr title="Accessible Rich Internet Application">WAI-ARIA</abbr> role is provided that does not have a corresponding role in the accessibility <abbr title="Application Programming Interface">API</abbr>, user agents <em class="rfc2119">MAY</em> expose the native semantic in addition to the <abbr title="Accessible Rich Internet Application">WAI-ARIA</abbr> role. If the host language element is overridden by a <abbr title="Accessible Rich Internet Application">WAI-ARIA</abbr> role whose semantics or structure is not equivalent to the native host language semantics or to a subclass of those semantics, then treat any required <a class="termref informative" data-type="dfn" href="https://www.w3.org/TR/wai-aria/#dfn-owned-element">owned</a> elements of the native role as having role <a href="#role-map-presentation">presentation</a> or <a href="#role-map-none">none</a>.</p>
<div class="note" role="note" id="issue-container-generatedID"><div role="heading" class="note-title marker" id="h-note" aria-level="4"><span>Note</span></div><p class="">The above text differs slightly from the <abbr title="Accessible Rich Internet Application">WAI-ARIA</abbr> specification. The requirement for user agents to expose the <abbr title="Accessible Rich Internet Application">WAI-ARIA</abbr> role instead of the native role was intended to only apply in cases where there is a direct mapping from the <abbr title="Accessible Rich Internet Application">WAI-ARIA</abbr> role to a corresponding role in the accessibility <abbr title="Application Programming Interface">API</abbr>. The wording of the requirement is not clear in the <abbr title="Accessible Rich Internet Application">WAI-ARIA</abbr> specification, however, and has been interpreted differently by implementers. The requirement has been clarified here and an additional statement added to indicate that user agents may expose native semantics if there is not a direct mapping to a role in the accessibility <abbr title="Application Programming Interface">API</abbr>. Because there are differing implementations, authors will be advised against adding such <abbr title="Accessible Rich Internet Application">WAI-ARIA</abbr> roles to native elements that have their own semantics in the <abbr title="Accessible Rich Internet Application">WAI-ARIA</abbr> Authoring Practices Guide.</p></div>
<p>When <abbr title="Accessible Rich Internet Applications">WAI-ARIA</abbr> states and properties correspond to host language features that have the same implicit <abbr title="Accessible Rich Internet Applications">WAI-ARIA</abbr> semantic, it can be problematic if the values become out of sync. For example, the <abbr title="Hypertext Markup Language">HTML</abbr> <code>checked</code> attribute and the <code>aria-checked</code> attribute could have conflicting values. Therefore to prevent providing conflicting states and properties to assistive technologies, host languages will explicitly declare where the use of <abbr title="Accessible Rich Internet Applications">WAI-ARIA</abbr> attributes on a host language element conflict with native attributes for that element. When a host language declares a <abbr title="Accessible Rich Internet Applications">WAI-ARIA</abbr> <a class="termref informative" data-type="dfn" href="https://www.w3.org/TR/wai-aria/#dfn-attribute">attribute</a> to be in direct semantic conflict with a native attribute for a given element, user agents <em class="rfc2119">MUST</em> ignore the <abbr title="Accessible Rich Internet Applications">WAI-ARIA</abbr> attribute and instead use the host language attribute with the same implicit semantic. </p>
<p>Host languages might also document features that cannot be overridden with <abbr title="Accessible Rich Internet Applications">WAI-ARIA</abbr> (these are called "strong native semantics"). These can be features that have implicit <abbr title="Accessible Rich Internet Applications">WAI-ARIA</abbr> semantics as well as features where the processing would be uncertain if the semantics were changed with <abbr title="Accessible Rich Internet Applications">WAI-ARIA</abbr>. While conformance checkers might signal an error or warning when a <abbr title="Accessible Rich Internet Applications">WAI-ARIA</abbr> role is used on elements with strong native semantics, user agents <em class="rfc2119">MUST</em> still use the value of the semantic of the <abbr title="Accessible Rich Internet Applications">WAI-ARIA</abbr> role when exposing the element to accessibility <abbr title="Application Programming Interfaces">APIs</abbr>.</p>
</section>
<section id="mapping_nodirect"><div class="header-wrapper"><h3 id="x4-3-exposing-attributes-that-do-not-directly-map-to-accessibility-api-properties"><bdi class="secno">4.3 </bdi>Exposing attributes that do not directly map to accessibility <abbr title="application programming interface">API</abbr> properties</h3><a class="self-link" href="#mapping_nodirect" aria-label="Permalink for Section 4.3"></a></div>
<p>Platform <a class="termref informative" data-type="dfn" href="https://www.w3.org/TR/wai-aria/#dfn-accessibility-api">accessibility <abbr title="Application Programming Interfaces">APIs</abbr></a> might have features that are not in <abbr title="Accessible Rich Internet Application">WAI-ARIA</abbr>. Likewise, <abbr title="Accessible Rich Internet Application">WAI-ARIA</abbr> exposes capabilities that are not supported by accessibility <abbr title="Application Programming Interfaces">APIs</abbr> at the time of publication. There typically is not a one to one relationship between all <abbr title="Accessible Rich Internet Application">WAI-ARIA</abbr> <a class="termref informative" data-type="dfn" href="https://www.w3.org/TR/wai-aria/#dfn-attribute">attributes</a> and platform accessibility <abbr title="application programming interfaces">APIs</abbr>. When <abbr title="Accessible Rich Internet Application">WAI-ARIA</abbr> <a class="termref informative" data-type="dfn" href="https://www.w3.org/TR/wai-aria/#dfn-role">roles</a>, <a class="termref informative" data-type="dfn" href="https://www.w3.org/TR/wai-aria/#dfn-state">states</a> and <a class="termref informative" data-type="dfn" href="https://www.w3.org/TR/wai-aria/#dfn-property">properties</a> do not directly map to an accessibility <abbr title="application programming interface">API</abbr>, and there is a mechanism in the <abbr title="application programming interface">API</abbr> to expose the <abbr title="Accessible Rich Internet Application">WAI-ARIA</abbr> role, states, and properties and their values, <a class="termref informative" data-type="dfn" href="https://www.w3.org/TR/wai-aria/#dfn-user-agent">user agents</a> <em class="rfc2119">MUST</em> expose the <abbr title="Accessible Rich Internet Application">WAI-ARIA</abbr> data using that mechanism as follows: </p>
<ul>
<li>In IAccessible2 and <abbr title="Accessibility Toolkit">ATK</abbr>/<abbr title="Assistive Technology - Service Provider Interface">AT-SPI</abbr>, use object attributes to expose <a class="termref informative" data-type="dfn" href="https://www.w3.org/TR/wai-aria/#dfn-semantics">semantics</a> that are not directly supported in the <abbr title="application programming interfaces">APIs</abbr>. Object attributes are name-value pairs that are loosely specified, and very flexible for exposing things where there is no specific interface in an accessibility <abbr title="application programming interface">API</abbr>. For example, at this time, the <a class="property-reference" href="https://w3c.github.io/aria/#aria-live"><code>aria-live</code></a> attribute can be exposed via an object attribute because accessibility <abbr title="application programming interfaces">APIs</abbr> have no such property available. Specific rules for exposing object attribute name-value pairs are described throughout this document, and rules for the general cases are in <a href="#mapping_state-property">State and Property Mapping</a>.</li>
<li>In Microsoft <abbr title="User Interface Automation">UIA</abbr>, use the <code>AriaRole</code> and <code>AriaProperties</code> properties to expose semantics that are not directly supported in the control type.</li>
</ul>
<div class="note" role="note" id="issue-container-generatedID-0"><div role="heading" class="note-title marker" id="h-note-0" aria-level="4"><span>Note</span></div><p class=""><abbr title="Microsoft Active Accessibility">MSAA</abbr> does not provide a mechanism for exposing attributes that do not map directly to the <abbr title="application programming interface">API</abbr> and among implementers, there is no agreement on how to do it.</p></div>
<p>User agents <em class="rfc2119">MUST</em> also expose the entire role string through this mechanism and <em class="rfc2119">MAY</em> also expose <abbr title="Accessible Rich Internet Applications">WAI-ARIA</abbr> attributes and values through this mechanism even when there is a direct mapping to an accessibility <abbr title="application programming interface">API</abbr>.</p>
<p>Browser implementers are advised to publicly document their <abbr title="application programming interface">API</abbr> methods for exposing any relevant information, so that <a class="termref informative" data-type="dfn" href="https://www.w3.org/TR/wai-aria/#dfn-assistive-technology">assistive technology</a> developers can use the <abbr title="application programming interface">API</abbr> to support user features.</p>
</section>
<section id="mapping_role"><div class="header-wrapper"><h3 id="x4-4-role-mapping"><bdi class="secno">4.4 </bdi>Role mapping</h3><a class="self-link" href="#mapping_role" aria-label="Permalink for Section 4.4"></a></div>
<p>Platform <a class="termref informative" data-type="dfn" href="https://www.w3.org/TR/wai-aria/#dfn-accessibility-api">accessibility <abbr title="Application Programming Interfaces">APIs</abbr></a> traditionally have had a finite set of predefined <a class="termref informative" data-type="dfn" href="https://www.w3.org/TR/wai-aria/#dfn-role">roles</a> that are expected by <a class="termref informative" data-type="dfn" href="https://www.w3.org/TR/wai-aria/#dfn-assistive-technology">assistive technologies</a> on that platform and only one or two roles may be exposed. In contrast, <abbr title="Accessible Rich Internet Application">WAI-ARIA</abbr> allows multiple roles to be specified as an ordered set of space-separated valid role tokens. The additional roles are fallback roles similar to the concept of specifying multiple fonts in case the first choice font type is not supported.</p>
<section id="roleMappingGeneralRules"><div class="header-wrapper"><h4 id="x4-4-1-general-rules"><bdi class="secno">4.4.1 </bdi>General rules</h4><a class="self-link" href="#roleMappingGeneralRules" aria-label="Permalink for Section 4.4.1"></a></div>
<p id="exposeRoleString">User agents <em class="rfc2119">MUST</em> expose the <abbr title="Accessible Rich Internet Application">WAI-ARIA</abbr> role string if the <abbr title="application programming interface">API</abbr> supports a mechanism to do so. This allows assistive technologies to do their own additional processing of roles. </p>
<ul>
<li><abbr title="Microsoft Active Accessibility">MSAA</abbr>: <a href="https://msdn.microsoft.com/en-us/library/windows/desktop/dd373608(v=vs.85).aspx" title="Object Roles (Windows)">not supported</a>. User agents <em class="rfc2119">SHOULD NOT</em> expose a custom role in <abbr title="Microsoft Active Accessibility">MSAA</abbr>'s <code>accRole</code> property.</li>
<li>IAccessible2: expose as an object attribute pair (<code>xml-roles:"string"</code>)</li>
<li><abbr title="User Interface Automation">UIA</abbr>: expose as <code>AriaRole</code> property. The <code>AriaRole property</code> can also support secondary roles using a space as a separator.</li>
<li><abbr title="Accessibility Toolkit">ATK</abbr>/<abbr title="Assistive Technology - Service Provider Interface">AT-SPI</abbr>: expose as an object attribute pair (<code>xml-roles:"string"</code>)</li>
</ul>
</section>
<section id="mapping_role_table"><div class="header-wrapper"><h4 id="x4-4-2-role-mapping-table"><bdi class="secno">4.4.2 </bdi>Role Mapping Table</h4><a class="self-link" href="#mapping_role_table" aria-label="Permalink for Section 4.4.2"></a></div>
<div class="note" role="note" id="issue-container-generatedID-1"><div role="heading" class="note-title marker" id="h-note-1" aria-level="5"><span>Note</span></div><p class="">Translators: For label text associated with the following table and its toggle buttons, see the <code>mappingTableLabels</code> object in the <code><head></code> section of this document.</p></div>
<button class="switch-view">View as a single table</button><div class="table-container" style="display: none;">
<table class="map-table elements" id="role-mapping-table">
<caption>Table describing mapping of <abbr title="Accessible Rich Internet Applications">WAI-ARIA</abbr> roles to accessibility <abbr title="application programming interfaces">APIs</abbr>.</caption>
<thead>
<tr>
<th><abbr title="Accessible Rich Internet Application">WAI-ARIA</abbr> Role</th>
<th><abbr title="Microsoft Active Accessibility">MSAA</abbr> + IAccessible2</th>
<th><abbr title="User Interface Automation">UIA</abbr></th>
<th><abbr title="Accessibility Toolkit">ATK</abbr>/<abbr title="Assistive Technology - Service Provider Interface">AT-SPI</abbr></th>
<th><abbr title="macOS Accessibility Protocol">AX API</abbr><sup>[<a href="#ftn.note1">Note 1</a>]</sup></th>
</tr>
</thead>
<tbody>
<tr data-id="role-map-alert">
<th><a class="role-reference" href="https://w3c.github.io/aria/#alert"><code>alert</code></a></th>
<td class="role-msaa-ia2">
<span class="property">Role: <code>ROLE_SYSTEM_ALERT</code></span><br>
<span class="event">Event: The user agent <em class="rfc2119">SHOULD</em> fire <code>EVENT_SYSTEM_ALERT</code>. <sup>[<a href="#ftn.note2">Note 2</a>]</sup></span>
</td>
<td class="role-uia">
<span class="property">Control Type: <code>Group</code></span><br>
<span class="property">Localized Control Type: <code>alert</code></span><br>
<span class="property">LiveSetting: <code>Assertive (2)</code></span><br>
<span class="event">Event: The user agent <em class="rfc2119">SHOULD</em> fire a system alert <a class="termref informative" data-type="dfn" href="https://www.w3.org/TR/wai-aria/#dfn-event">event</a>. <sup>[<a href="#ftn.note2">Note 2</a>]</sup></span>
</td>
<td class="role-atk">
<span class="property">Role: <code>ROLE_NOTIFICATION</code></span><br>
<span class="event">Event: The user agent <em class="rfc2119">SHOULD</em> fire a system alert <a class="termref informative" data-type="dfn" href="https://www.w3.org/TR/wai-aria/#dfn-event">event</a>. <sup>[<a href="#ftn.note2">Note 2</a>]</sup></span>
</td>
<td class="role-axapi">
<span class="property">AXRole: <code>AXGroup</code></span><br>
<span class="property">AXSubrole: <code>AXApplicationAlert</code></span><br>
<span class="event">Event: The user agent <em class="rfc2119">SHOULD</em> fire a system alert <a class="termref informative" data-type="dfn" href="https://www.w3.org/TR/wai-aria/#dfn-event">event</a>. <sup>[<a href="#ftn.note2">Note 2</a>]</sup></span>
</td>
</tr>
<tr data-id="role-map-alertdialog">
<th><a class="role-reference" href="https://w3c.github.io/aria/#alertdialog"><code>alertdialog</code></a></th>
<td class="role-msaa-ia2">
<span class="property">Role: <code>ROLE_SYSTEM_DIALOG</code></span><br>
<span class="event">Event: The user agent <em class="rfc2119">SHOULD</em> fire <code>EVENT_SYSTEM_ALERT</code>. <sup>[<a href="#ftn.note2">Note 2</a>]</sup></span>
</td>
<td class="role-uia">
<span class="property">Control Type: <code>Pane</code></span><br>
<span class="event">Event: The user agent <em class="rfc2119">SHOULD</em> fire a system alert <a class="termref informative" data-type="dfn" href="https://www.w3.org/TR/wai-aria/#dfn-event">event</a>. <sup>[<a href="#ftn.note2">Note 2</a>]</sup></span>
</td>
<td class="role-atk">
<span class="property">Role: <code>ROLE_ALERT</code></span><br>
<span class="property">Interface: <code>Window</code></span><br>
<span class="event">Event: The user agent <em class="rfc2119">SHOULD</em> fire a system alert <a class="termref informative" data-type="dfn" href="https://www.w3.org/TR/wai-aria/#dfn-event">event</a>. <sup>[<a href="#ftn.note2">Note 2</a>]</sup></span>
</td>
<td class="role-axapi">
<span class="property">AXRole: <code>AXGroup</code></span><br>
<span class="property">AXSubrole: <code>AXApplicationAlertDialog</code></span><br>
<span class="event">Event: The user agent <em class="rfc2119">SHOULD</em> fire a system alert <a class="termref informative" data-type="dfn" href="https://www.w3.org/TR/wai-aria/#dfn-event">event</a>. <sup>[<a href="#ftn.note2">Note 2</a>]</sup></span>
</td>
</tr>
<tr data-id="role-map-application">
<th><a class="role-reference" href="https://w3c.github.io/aria/#application"><code>application</code></a></th>
<td class="role-msaa-ia2">
<span class="property">Role: <code>ROLE_SYSTEM_APPLICATION</code></span>
</td>
<td class="role-uia">
<span class="property">Control Type: <code>Pane</code></span><br>
<span class="property">Localized Control Type: <code>application</code></span>
</td>
<td class="role-atk">
<span class="property">Role: <code>ROLE_EMBEDDED</code></span>
</td>
<td class="role-axapi">
<span class="property">AXRole: <code>AXGroup</code></span><br>
<span class="property">AXSubrole: <code>AXWebApplication</code></span><br>
</td>
</tr>
<tr data-id="role-map-article">
<th><a class="role-reference" href="https://w3c.github.io/aria/#article"><code>article</code></a></th>
<td class="role-msaa-ia2">
<span class="property">Role: <code>ROLE_SYSTEM_DOCUMENT</code></span><br>
<span class="property">State: <code>STATE_SYSTEM_READONLY</code></span><br>
<span class="property">Object Attribute: <code>xml-roles:article</code></span>
</td>
<td class="role-uia">
<span class="property">Control Type: <code>Group</code></span><br>
<span class="property">Localized Control Type: <code>article</code></span>
</td>
<td class="role-atk">
<span class="property">Role: <code>ROLE_ARTICLE</code></span><br>
<span class="property">Object Attribute: <code>xml-roles:article</code></span>
</td>
<td class="role-axapi">
<span class="property">AXRole: <code>AXGroup</code></span><br>
<span class="property">AXSubrole: <code>AXDocumentArticle</code></span><br>
</td>
</tr>
<tr data-id="role-map-banner">
<th><a class="role-reference" href="https://w3c.github.io/aria/#banner"><code>banner</code></a></th>
<td class="role-msaa-ia2">
<span class="property">Role: <code>IA2_ROLE_LANDMARK</code></span><br>
<span class="property">Object Attribute: <code>xml-roles:banner</code></span>
</td>
<td class="role-uia">
<span class="property">Control Type: <code>Group</code></span><br>
<span class="property">Localized Control Type: <code>banner</code></span><br>
<span class="property">Landmark Type: <code>Custom</code></span><br>
<span class="property">Localized Landmark Type: <code>banner</code></span>
</td>
<td class="role-atk">
<span class="property">Role: <code>ROLE_LANDMARK</code></span><br>
<span class="property">Object Attribute: <code>xml-roles:banner</code></span>
</td>
<td class="role-axapi">
<span class="property">AXRole: <code>AXGroup</code></span><br>
<span class="property">AXSubrole: <code>AXLandmarkBanner</code></span><br>
</td>
</tr>
<tr data-id="role-map-blockquote">
<th><a class="role-reference" href="https://w3c.github.io/aria/#blockquote"><code>blockquote</code></a></th>
<td class="role-msaa-ia2">
<span class="property">Role: <code>ROLE_SYSTEM_GROUPING</code></span><br>
<span class="property">Role: <code>IA2_ROLE_SECTION</code></span>
</td>
<td class="role-uia">
<span class="property">Control Type: <code>Group</code></span><br>
<span class="property">Localized Control Type: <code>blockquote</code></span>
</td>
<td class="role-atk">
<span class="property">Role: <code>ROLE_BLOCK_QUOTE</code></span><br>
</td>
<td class="role-axapi">
<span class="property">AXRole: <code>AXGroup</code></span><br>
<span class="property">AXSubrole: <code><nil></code></span><br>
</td>
</tr>
<tr data-id="role-map-button">
<th><a class="role-reference" href="https://w3c.github.io/aria/#button"><code>button</code></a> with default values for <a class="property-reference" href="https://w3c.github.io/aria/#aria-pressed"><code>aria-pressed</code></a> and <a class="property-reference" href="https://w3c.github.io/aria/#aria-haspopup"><code>aria-haspopup</code></a></th>
<td class="role-msaa-ia2">
<span class="property">Role: <code>ROLE_SYSTEM_PUSHBUTTON</code></span>
</td>
<td class="role-uia">
<span class="property">Control Type: <code>Button</code></span>
</td>
<td class="role-atk">
<span class="property">Role: <code>ROLE_PUSH_BUTTON</code></span>
</td>
<td class="role-axapi">
<span class="property">AXRole: <code>AXButton</code></span><br>
<span class="property">AXSubrole: <code><nil></code></span><br>
</td>
</tr>
<tr data-id="role-map-button-haspopup">
<th><a class="role-reference" href="https://w3c.github.io/aria/#button"><code>button</code></a> with non-<code>false</code> value for <code>aria-haspopup</code></th>
<td class="role-msaa-ia2">
<span class="property">Role: <code>ROLE_SYSTEM_BUTTONMENU</code></span>
</td>
<td class="role-uia">
<span class="property">Control Type: <code>Button</code></span>
</td>
<td class="role-atk">
<span class="property">Role: <code>ROLE_PUSH_BUTTON</code></span>
</td>
<td class="role-axapi">
<span class="property">AXRole: <code>AXPopUpButton</code></span><br>
<span class="property">AXSubrole: <code><nil></code></span><br>
</td>
</tr>
<tr data-id="role-map-button-pressed">
<th><a class="role-reference" href="https://w3c.github.io/aria/#button"><code>button</code></a> with defined value for <a class="property-reference" href="https://w3c.github.io/aria/#aria-pressed"><code>aria-pressed</code></a></th>
<td class="role-msaa-ia2">
<span class="property">Role: <code>ROLE_SYSTEM_PUSHBUTTON</code></span><br>
<span class="property">Role: <code>IA2_ROLE_TOGGLE_BUTTON</code></span>
</td>
<td class="role-uia">
<span class="property">Control Type: <code>Button</code></span>
</td>
<td class="role-atk">
<span class="property">Role: <code>ROLE_TOGGLE_BUTTON</code></span>
</td>
<td class="role-axapi">
<span class="property">AXRole: <code>AXCheckBox</code></span><br>
<span class="property">AXSubrole: <code>AXToggle</code></span><br>
</td>
</tr>
<tr data-id="role-map-caption">
<th><a class="role-reference" href="https://w3c.github.io/aria/#caption"><code>caption</code></a></th>
<td class="role-msaa-ia2">
<span class="property">Role: <code>ROLE_SYSTEM_TEXT</code></span><br>
<span class="property">Role: <code>IA2_ROLE_CAPTION</code></span>
</td>
<td class="role-uia">
<span class="property">Control Type: <code>Text</code></span>
</td>
<td class="role-atk">
<span class="property">Role: <code>ROLE_CAPTION</code></span>
</td>
<td class="role-axapi">
<span class="property">AXRole: <code>AXGroup</code></span><br>
<span class="property">AXSubrole: <code><nil></code></span><br>
</td>
</tr>
<tr data-id="role-map-cell">
<th><a class="role-reference" href="https://w3c.github.io/aria/#cell"><code>cell</code></a></th>
<td class="role-msaa-ia2">
<span class="property">Role: <code>ROLE_SYSTEM_CELL</code></span><br>
<span class="property">Interface: <code>IAccessibleTableCell</code></span>
</td>
<td class="role-uia">
<span class="property">Control Type: <code>DataItem</code></span><br>
<span class="property">Localized Control Type: <code>item</code></span><br>
<span class="property">Control Pattern: <code>GridItem</code></span><br>
<span class="property">Control Pattern: <code>TableItem</code></span>
</td>
<td class="role-atk">
<span class="property">Role: <code>ROLE_TABLE_CELL</code></span><br>
<span class="property">Interface: <code>TableCell</code></span>
</td>
<td class="role-axapi">
<span class="property">AXRole: <code>AXCell</code></span><br>
<span class="property">AXSubrole: <code><nil></code></span><br>
</td>
</tr>
<tr data-id="role-map-checkbox">
<th><a class="role-reference" href="https://w3c.github.io/aria/#checkbox"><code>checkbox</code></a></th>
<td class="role-msaa-ia2">
<span class="property">Role: <code>ROLE_SYSTEM_CHECKBUTTON</code></span><br>
<span class="seealso">See also: <code>aria-checked</code> in the <a href="#mapping_state-property_table">State and Property Mapping Table</a></span>
</td>
<td class="role-uia">
<span class="property">Control Type: <code>Checkbox</code></span><br>
<span class="seealso">See also: <code>aria-checked</code> in the <a href="#mapping_state-property_table">State and Property Mapping Table</a></span>
</td>
<td class="role-atk">
<span class="property">Role: <code>ROLE_CHECK_BOX</code></span><br>
<span class="seealso">See also: <code>aria-checked</code> in the <a href="#mapping_state-property_table">State and Property Mapping Table</a></span>
</td>
<td class="role-axapi">
<span class="property">AXRole: <code>AXCheckBox</code></span><br>
<span class="property">AXSubrole: <code><nil></code></span><br>
<span class="seealso">See also: <code>aria-checked</code> in the <a href="#mapping_state-property_table">State and Property Mapping Table</a></span>
</td>
</tr>
<tr data-id="role-map-code">
<th><a class="role-reference" href="https://w3c.github.io/aria/#code"><code>code</code></a></th>
<td class="role-msaa-ia2">
<span class="property">Role: <code>IA2_ROLE_TEXT_FRAME</code></span><br>
<span class="property">Object Attribute: <code>xml-roles:code</code></span>
</td>
<td class="role-uia">
<span class="property">Control Type: <code>Text</code></span><br>
<span class="property">Localized Control Type: <code>code</code></span>
</td>
<td class="role-atk">
<span class="property">Role: <code>ROLE_STATIC</code></span><br>
<span class="property">Object Attribute: <code>xml-roles:code</code></span>
</td>
<td class="role-axapi">
<span class="property">AXRole: <code>AXGroup</code></span><br>
<span class="property">AXSubrole: <code>AXCodeStyleGroup</code></span><br>
</td>
</tr>
<tr data-id="role-map-columnheader">
<th><a class="role-reference" href="https://w3c.github.io/aria/#columnheader"><code>columnheader</code></a></th>
<td class="role-msaa-ia2">
<span class="property">Role: <code>ROLE_SYSTEM_COLUMNHEADER</code></span><br>
<span class="property">Interface: <code>IAccessibleTableCell</code></span>
</td>
<td class="role-uia">
<span class="property">Control Type: <code>DataItem</code></span><br>
<span class="property">Localized Control Type: <code>column header</code></span><br>
<span class="property">Control Pattern: <code>GridItem</code></span><br>
<span class="property">Control Pattern: <code>TableItem</code></span>
</td>
<td class="role-atk">
<span class="property">Role: <code>ROLE_COLUMN_HEADER</code></span><br>
<span class="property">Interface: <code>TableCell</code></span>
</td>
<td class="role-axapi">
<span class="property">AXRole: <code>AXCell</code></span><br>
<span class="property">AXSubrole: <code><nil></code></span><br>
</td>
</tr>
<tr data-id="role-map-combobox">
<th><a class="role-reference" href="https://w3c.github.io/aria/#combobox"><code>combobox</code></a></th>
<td class="role-msaa-ia2">
<span class="property">Role: <code>ROLE_SYSTEM_COMBOBOX</code></span><br>
<span class="property">State: <code>STATE_SYSTEM_HASPOPUP</code></span><br>
<span class="property">State: <code>STATE_SYSTEM_COLLAPSED</code> if <a class="state-reference" href="https://w3c.github.io/aria/#aria-expanded"><code>aria-expanded</code></a> is not <code>"true"</code></span>
</td>
<td class="role-uia">
<span class="property">Control Type: <code>Combobox</code></span>
</td>
<td class="role-atk">
<span class="property">Role: <code>ROLE_COMBO_BOX</code></span><br>
<span class="property">State: <code>STATE_EXPANDABLE</code></span><br>
<span class="property">State: <code>STATE_HAS_POPUP</code></span>
</td>
<td class="role-axapi">
<span class="property">AXRole: <code>AXComboBox</code></span><br>
<span class="property">AXSubrole: <code><nil></code></span><br>
</td>
</tr>
<tr data-id="role-map-comment">
<th><a class="role-reference" href="https://w3c.github.io/aria/#comment"><code>comment</code></a></th>
<td class="role-msaa-ia2">
<span class="property">Role: <code>IA2_ROLE_COMMENT</code></span><br>
<span class="property">Object Attribute: <code>xml-roles:comment</code></span>
</td>
<td class="role-uia">
<span class="property">Control Type: <code>Group</code></span><br>
<span class="property">Localized Control Type: <code>comment</code></span><br>
</td>
<td class="role-atk">
<span class="property">Role: <code>ROLE_COMMENT</code></span><br>
<span class="property">Object Attribute: <code>xml-roles:comment</code></span>
</td>
<td class="role-axapi">
<span class="property">AXRole: <code>AXGroup</code></span><br>
</td>
</tr>
<tr data-id="role-map-complementary">
<th><a class="role-reference" href="https://w3c.github.io/aria/#complementary"><code>complementary</code></a></th>
<td class="role-msaa-ia2">
<span class="property">Role: <code>IA2_ROLE_LANDMARK</code></span><br>
<span class="property">Object Attribute: <code>xml-roles:complementary</code></span>
</td>
<td class="role-uia">
<span class="property">Control Type: <code>Group</code></span><br>
<span class="property">Localized Control Type: <code>complementary</code></span><br>
<span class="property">Landmark Type: <code>Custom</code></span><br>
<span class="property">Localized Landmark Type: <code>complementary</code></span>
</td>
<td class="role-atk">
<span class="property">Role: <code>ROLE_LANDMARK</code></span><br>
<span class="property">Object Attribute: <code>xml-roles:complementary</code></span>
</td>
<td class="role-axapi">
<span class="property">AXRole: <code>AXGroup</code></span><br>
<span class="property">AXSubrole: <code>AXLandmarkComplementary</code></span><br>
</td>
</tr>
<tr data-id="role-map-contentinfo">
<th><a class="role-reference" href="https://w3c.github.io/aria/#contentinfo"><code>contentinfo</code></a></th>
<td class="role-msaa-ia2">
<span class="property">Role: <code>IA2_ROLE_LANDMARK</code></span><br>
<span class="property">Object Attribute: <code>xml-roles:contentinfo</code></span>
</td>
<td class="role-uia">
<span class="property">Control Type: <code>Group</code></span><br>
<span class="property">Localized Control Type: <code>content information</code></span><br>
<span class="property">Landmark Type: <code>Custom</code></span><br>
<span class="property">Localized Landmark Type: <code>content information</code></span>
</td>
<td class="role-atk">
<span class="property">Role: <code>ROLE_LANDMARK</code></span><br>
<span class="property">Object Attribute: <code>xml-roles:contentinfo</code></span>
</td>
<td class="role-axapi">
<span class="property">AXRole: <code>AXGroup</code></span><br>
<span class="property">AXSubrole: <code>AXLandmarkContentInfo</code></span><br>
</td>
</tr>
<tr data-id="role-map-definition">
<th><a class="role-reference" href="https://w3c.github.io/aria/#definition"><code>definition</code></a></th>
<td class="role-msaa-ia2">
<span class="property">Object Attribute: <code>xml-roles:definition</code></span>
</td>
<td class="role-uia">
<span class="property">Control Type: <code>Group</code></span><br>
<span class="property">Localized Control Type: <code>definition</code></span>
</td>
<td class="role-atk">
<span class="property">Role: <code>ROLE_DESCRIPTION_VALUE</code></span><br>
<span class="property">Object Attribute: <code>xml-roles:definition</code></span>
</td>
<td class="role-axapi">
<span class="property">AXRole: <code>AXGroup</code></span><br>
<span class="property">AXSubrole: <code>AXDefinition</code></span><br>
</td>
</tr>
<tr data-id="role-map-deletion">
<th><a class="role-reference" href="https://w3c.github.io/aria/#deletion"><code>deletion</code></a></th>
<td class="role-msaa-ia2">
<span class="property">Role: <code>IA2_ROLE_CONTENT_DELETION</code></span>
</td>
<td class="role-uia">
<span class="property">Control Type: <code>Text</code></span><br>
<span class="property">Localized Control Type: <code>del</code></span>
</td>
<td class="role-atk">
<span class="property">Role: <code>ROLE_CONTENT_DELETION</code></span><br>
<span class="property">Object Attribute: <code>xml-roles:deletion</code></span>
</td>
<td class="role-axapi">
<span class="property">AXRole: <code>AXGroup</code></span><br>
<span class="property">AXSubrole: <code>AXDeleteStyleGroup</code></span><br>
</td>
</tr>
<tr data-id="role-map-dialog">
<th><a class="role-reference" href="https://w3c.github.io/aria/#dialog"><code>dialog</code></a></th>
<td class="role-msaa-ia2">
<span class="property">Role: <code>ROLE_SYSTEM_DIALOG</code></span>
</td>
<td class="role-uia">
<span class="property">Control Type: <code>Pane</code></span>
</td>
<td class="role-atk">
<span class="property">Role: <code>ROLE_DIALOG</code></span><br>
<span class="property">Interface: <code>Window</code></span>
</td>
<td class="role-axapi">
<span class="property">AXRole: <code>AXGroup</code></span><br>
<span class="property">AXSubrole: <code>AXApplicationDialog</code></span><br>
</td>
</tr>
<tr data-id="role-map-directory">
<th><a class="role-reference" href="https://w3c.github.io/aria/#directory"><code>directory</code></a></th>