Accessible Rich Internet Applications (WAI.docx
AccessibleRichInternetApplications(WAIaria-keyshortcuts(property)Indicateskeyboardshortcutsthatanauthorhasimplementedtoactivateorgivefocustoanelement.Thevalueofthearia-keyshortcutsattributeisaspace-delimitedlistofkeyboardshortcutsthatcanbepressedtoactivateacommandortextboxwidget.Thekeysdefinedintheshortcutsrepresentthephysicalkeyspressedandnottheactualcharactersgenerated.Eachkeyboardshortcutconsistsofoneormoretokensdelimitedbytheplussign("+")representingzeroormoremodifierkeysandexactlyonenon-modifierkeythatmustbepressedsimultaneouslytoactivatethegivenshortcut.AuthorsMUSTspecifymodifierkeysexactlyaccordingtothespec-forexample,"Alt","Control","Shift","Meta",or"AltGraph".NotethatMetacorrespondstotheCommandkey,andAlttotheOptionkey,onApplecomputers.Thevalidnamesfornon-modifierkeysareanyprintablecharactersuchas"A","B","1","2","$","Plus"foraplussign,"Space"forthespacebar,orthenamesofanyothernon-modifierkeyspecifiedinthespec-forexample,"Enter","Tab","ArrowRight","PageDown","Escape",or"F1".Theuseof"Space"forthespacebarisanexceptiontothespecasthespaceorspacebarkeyisencodedas''andwouldbetreatedasawhitespacecharacter.AuthorsMUSTensuremodifierkeyscomefirstwhentheyarepartofakeyboardshortcut.AuthorsMUSTensurethatrequirednon-modifierkeyscomelastwhentheyarepartofashortcut.Theorderofthemodifierkeysisnototherwisesignificant,so"Alt+Shift+T"and"Shift+Alt+T"areequivalent,but"T+Shift+Alt"isnotvalidbecauseallofthemodifierkeysdon'tcomefirst,and"Alt"isnotvalidbecauseitdoesn'tincludeatleastonenon-modifierkey.Whenspecifyinganalphabetickey,boththeuppercaseandlowercasevariantsareconsideredequivalent:"a"and"A"arethesame.Whenimplementingkeyboardshortcutsauthorsshouldconsiderthekeyboardstheyintendtosupporttoavoidunintendedresults.Keyboarddesignsvarysignificantlybasedonthedeviceusedandthelanguagessupported.Forexample,manymodifierkeysareusedinconjunctionwithotherkeystocreatecommonpunctuationsymbols,createnumbercharacters,swapkeyboardsidesonbilingualkeyboardstoswitchlanguages,andperformanumberofotherfunctions.Formanysupportedkeyboards,authorscanpreventconflictsbyavoidingkeysotherthanASCIIletters,asnumbercharactersandcommonpunctuationoftenrequiremodifiers.Here,thekeyboardshortcutentereddoesnotequatetothekeygenerated.Forexample,inFrenchkeyboardlayouts,thenumbercharactersarenotavailableuntilyoupresstheControlkey,soakeyboardshortcutdefinedas"Control+2"wouldbeambiguousasthisishowonewouldtypethe"2"characteronaFrenchkeyboard.Ifthecharacterusedisdeterminedbyamodifierkey,theauthorMUSTspecifytheactualkeyusedtogeneratethecharacter,thatisgeneratedbythekey,andnottheresultingcharacter.Thisconventionenablestheassistivetechnologytoaccuratelyconveywhatkeysmustbeusedtogeneratetheshortcut.Forexample,onmostU.S.Englishkeyboards,thepercentsign"%"canbeinputbypressingShift+5.Thecorrectwaytospecifythisshortcutis"Shift+5".Itisincorrecttospecify"%"or"Shift+%".However,notethatonsomeinternationalkeyboardsthepercentsignmaybeanunmodifiedkey,inwhichcase"%"and"Shift+%"couldbecorrectonthosekeyboards.Ifthekeythatneedstobespecifiedisillegalinthehostlanguageorwouldcauseastringtobeterminated,authorsMUSTusethestringescapingsequenceofthehostlanguagetospecifyit.Forexample,thedouble-quotecharactercanbeencodedas"Shift+#39;"in.