===Current issues
Many elements are missing information about role, state and how the user can interact with it using keyboard navigation. Checkboxes in particular are lacking at the moment.
===Requirements
**Search field**
[] Role of search should be clearly defined, possibly done with landmark in T291281?
[] Placeholder text is not sufficient to explain what is being searched. For screen readers, the label should be "Filter both list of available and added parameters" //(Exact text TBD)//
**Parameter list**
[] When entire list is focused, it should be announced as "List of all available parameters, Template name". Possibly covered in T291281
[x] Role should make clear what the list is and how to interact with this. Currently announced as `list box`. This should be correct and imply navigation by arrow keys, so this instruction does not need to announced. (Check, is `multi-select` a better fit?)
**Checkboxes**
[] Checkboxes have the checkbox role
[] Checkbox state is announced (currently only unselected are announced but not selected)
[] Instructions for interaction are available (possibly under `aria-describedby` so that users can choose if they want to hear the instructions instead of it repeating every time)
- For selected checkboxes, "Press Enter to edit parameter value. Press Spacebar to remove parameter from template."
- For unselected checkboxes, "Press Spacebar to add to template. Press Enter to add to template and add value."
Note: ~~Required parameters are represented as disabled checkboxes in the sidebar. Make sure screenreader users can understand this. Possibly remove the checkbox. Possibly make use of OO.ui.mixin.RequiredElement (sets `aria-required`, see https://gerrit.wikimedia.org/r/711145 ).~~ From https://stackoverflow.com/q/34300154#comment85584639_34300154: //"For checkboxes, regardless if checked or not a value is passed to through the form. If you want to communicate that the user must check a checkbox to proceed / submit, then such a message should be associated through us of the aria-describedby attribute pointing to a text container (via that container's ID attribute)."
**Template names or Wikitext element** (in sidebar in multi-part template content only)
[] Label should be announced and instructions should be available (possibly under `aria-describedby` so that users can choose if they want to hear the instructions instead of it repeating every time)
- When in focus and unselected, "Press Enter to select and edit. Press Spacebar to select." //(Exact text TBD)//
- When in focus and selected, "Press Control-Delete to delete the entire element and all values. Press Control-Shift-Arrow up or down to move element order." //(Exact text TBD)//