36 CFR Part 1194 Electronic and Information Technology Accessibility Standards (Section 508 Standards) - Preamble
Section 1194.21 Software Applications and Operating Systems (Preamble, Section-by-Section Analysis)
Paragraphs (a) through (l) address provisions for software applications and operating systems. Electronic and information technology products operate by following programming instructions referred to as software. Software refers to a set of logical steps (or programming instructions) that control the actions or operations of most forms of electronic and information technology products. For instance, when a pager receives a radio signal, the software embedded inside the pager determines whether the signal is a "page" and how it should display the information it receives. The circuitry inside the pager, including the display unit, merely follows the instructions encoded in the software. Software can be divided into two broad categories: software that is embedded in a chip mounted in a product and non-embedded software that is loaded onto a storage device such as a hard disk and can be erased, replaced, or updated. For instance, a word processing program that is installed onto a computer's hard drive and which may be easily erased, replaced, or updated is typically "non-embedded" software. By contrast, the set of instructions installed on a chip inside a pager and which cannot be erased, replaced, or updated is typically embedded software. The proposed rule included provisions for non-embedded software. However, as pointed out by commenters, as technology changes, the distinction between embedded software and non-embedded software is increasingly becoming less clear. These provisions apply to all software products.
Paragraph (a) requires that when software is designed to run on a system that has a keyboard, the software shall provide a way to control features which are identifiable by text, from the keyboard. For example, if a computer program included a "print" command or a "save" command (both can be readily discerned textually), the program must provide a means of invoking these commands from the keyboard. For people who cannot accurately control a mouse, having access to the software's controls through keyboard alternatives is essential. For example, rather than pointing to a particular selection on the screen, a user may move through the choices in a dialogue box by pressing the tab key. (See §1194.23(a)(4) and §1194.23(b)(1) in the NPRM.)
Comment. The NPRM required that products must provide logical navigation among interface elements through the use of keystrokes. Commenters questioned the meaning of "logical" and whether the provisions, as proposed, were requiring that each system have a keyboard. Commenters were concerned that requiring that all features of every software program be accessible from a keyboard was not feasible because some programs that allow an individual to draw lines and create designs using a mouse could not be replicated with keystrokes.
Response. This provision applies to products which are intended to be run on a system with a keyboard. It does not require that a keyboard be added. The term "logical navigation" has been deleted. Only those actions which can be discerned textually are required to be executable from a keyboard. For example, most of the menu functions in common drawing programs that allow a user to open, save, size, rotate, and perform other actions on a graphic image can all be performed from the keyboard. However, providing keyboard alternatives for creating an image by selecting a paintbrush, picking a color, and actually drawing a design would be extremely difficult. Such detailed procedures require the fine level of control afforded by a pointing device (e.g., a mouse) and thus cannot be discerned textually without a lengthy description. Accordingly, in the final rule, keyboard alternatives are required when the function (e.g., rotate figure) or the result of performing a function (e.g., save file confirmation) can be represented with words.
Paragraph (b) prohibits applications from disrupting or disabling activated features of other products that are identified as accessibility features, where those features are developed and documented according to industry standards. Applications also shall not disrupt or disable activated features of any operating system that are identified as accessibility features where the application programming interface for those accessibility features has been documented by the manufacturer of the operating system and is available to the product developer. The application programming interface refers to a standard way for programs to communicate with each other, including the operating system, and with input and output devices. For instance, the application programming interface affects how programs have to display information on a monitor or receive keyboard input via the operating system.
Many commercially available software applications and operating systems have features built-into the program that are labeled as access features. These features can typically be turned on or off by a user. Examples of these features may include, reversing the color scheme (to assist people with low vision), showing a visual prompt when an error tone is sounded (to assist persons who are deaf or hard of hearing), or providing "sticky keys" that allow a user to press key combinations (such as control-C) sequentially rather than simultaneously (to assist persons with dexterity disabilities). This provision prohibits software programs from disabling these features when selected. (See §1194.23(b)(2) in the NPRM.)
Comment. The proposed rule only specified that software not interfere with features that affect the usability for persons with disabilities. Commenters from industry noted that the provision in the NPRM did not provide any method of identifying what features are considered access features and further stated that this provision was not achievable. These commenters pointed out that it was impossible for a software producer to be aware of all of the features in all software packages that could be considered an access feature by persons with disabilities. Sun Microsystems recommended that this provision address access features that have been developed using standard programming techniques and that have been documented by the manufacturer.
Response. This provision has been modified in the final rule to reference access features which have been developed and documented according to industry standards. No other changes have been made in the final rule.
Paragraph (c) requires that software applications place on the screen a visual indication of where some action may occur if a mouse click or keystroke takes place. This point on a screen indicating where an action will take place is commonly referred to as the "focus". This provision also requires that the focus be readable by other software programs such as screen readers used by computer users who are blind. (See §1194.23(b)(3) in the NPRM.) No substantive comments were received and no changes have been made to this section in the final rule.
Paragraph (d) requires that software programs, through the use of program code, make information about the program's controls readable by assistive technology. Simply stated, this paragraph requires that information that can be delivered to or received from the user must be made available to assistive technology, such as screen reading software. Examples of controls would include button checkboxes, menus, and toolbars. For assistive technology to operate efficiently, it must have access to the information about a program's controls to be able to inform the user of the existence, location, and status of all controls. If an image is used to represent a program function, the information conveyed by the image must also be available in text. (See §1194.23(b)(4) and §1194.23(b)(5) in the NPRM.) No substantive comments were received and no changes have been made to this section, other than editorial changes.
Paragraph (e) requires that when bitmap images are used by a program to identify programmatic features, such as controls, the meaning of that image shall not change during the operation of a program. "Bitmap images" refer to a type of computer image commonly used in "icons" (e.g., a small picture of a printer to activate the print command). Most screen reading programs allow users to assign text names to bitmap images. If the bitmap image changes meaning during a program's execution, the assigned identifier is no longer valid and is confusing to the user. (See §1194.23(b)(6) in the NPRM.)
Comment. As proposed, this provision did not identify which images had to remain consistent during the application. The AFB commented that the provision should be modified to indicate the type of image that needs to hold a consistent meaning during the running of an application. AFB noted that this provision should apply only to those bitmaps that represent a program function, and not to all images.
Response. The final rule applies the provision to those images which are used to identify controls, status indicators, or other programmatic elements. No other changes have been made to this section in the final rule.
Paragraph (f) provides that software programs use the functions provided by an operating system when displaying text. The operating system is the "core" computer software that controls basic functions, such as receiving information from the keyboard, displaying information on the computer screen, and storing data on the hard disk. Other software programs use the standard protocols dictated by the operating system for displaying their own information or processing the output of other computer programs. When programs are written using unique schemes for writing text on the screen or use graphics, other programs such as software for assistive technology may not be able to interpret the information. This provision does not prohibit or limit an application programmer from developing unique display techniques. It requires that when a unique method is used, the text be consistently written throughout the operating system. (See §1194.23(b)(7) in the NPRM.)
Comment. The proposed rule did not specify that software programs must use the functions provided by an operating system when displaying text. The NPRM required that the text would be provided through an application programming interface that supported interaction with assistive technology or that it would use system text writing tools. Commenters raised several concerns regarding this provision. Some commenters were concerned that without a recognized interface standard, there was no assurance that assistive technology would be able to access the text provided by an application. Software producers felt that the provision should not unduly restrict how programs create or display text. Baum Electronics and GW Micro pointed out that the only way to ensure that both assistive technology and applications are using a common interface, was to use the text displaying functions of the operating system.
Response. The Board agrees that using operating system functions is one approach that would be available to all programmers. The final rule has been modified to require that textual information be provided through the operating system functions so that it will be compatible with assistive technology. This provision does not restrict programmers from developing unique methods of displaying text on a screen. It requires that when those methods are used, the software also sends the information through the operating systems functions for displaying text.
Paragraph (g) prohibits applications from overriding user selected contrast and color selections and other individual display attributes. As described above, the operating system provides the basic functions for receiving, displaying, transmitting, or receiving information in a computer or similar product. Thus, the operating system would appear the logical choice for "system-wide" settings that would be respected by all computer programs on a computer. Many modern operating systems incorporate the ability to make settings system-wide as an accessibility feature. This permits, for instance, users to display all text in very large characters. Often, persons with disabilities prefer to select color, contrast, keyboard repeat rate, and keyboard sensitivity settings provided by an operating system. When an application disables these system-wide settings, accessibility is reduced. This provision allows the user to select personalized settings which cannot be disabled by software programs. (See §1194.23(b)(9) in the NPRM.) No substantive comments were received and no changes have been made to this section in the final rule.
Paragraph (h) addresses animated text or objects. The use of animation on a screen can pose serious access problems for users of screen readers or other assistive technology applications. When important elements such as push-buttons or relevant text are animated, the user of assistive technology cannot access the application. This provision requires that in addition to the animation, an application provide the elements in a non-animated form. (See §1194.23(b)(11)in the NPRM.) No substantive comments were received and no changes have been made to this section in the final rule.
Paragraph (i) prohibits the use of color as the single method for indicating important information. For instance, a computer program that requires a user to distinguish between otherwise identical red and blue squares for different functions (e.g., printing a document versus saving a file) would not comply with this provision. Relying on color as the only method for identifying screen elements or controls poses problems, not only for people with limited or no vision, but also for those people who are color blind. This provision does not prohibit the use of color to enhance identification of important features. It does, however, require that some other method of identification, such as text labels, be combined with the use of color. (See §1194.21(a) in the NPRM.) No substantive comments were received and no changes have been made to this section in the final rule.
Paragraph (j) requires software applications to provide users with a variety of color settings that can be used to set a range of contrast levels. (See §1194.23(b)(8) in the NPRM.)
Comment. The NPRM specified a minimum number of color settings. Some commenters were concerned that the proposed provision was too specific, while others felt it was too general because it failed to measure how different levels of contrast would be produced. Several commenters suggested requiring "a wide variety" of color settings as recommended by the EITAAC. One commenter noted that, as proposed, the provision forbids a monochrome display. Commenters also stated that some systems do not provide users with color selection capabilities.
Response. The provision in the final rule is limited to those circumstances where the system allows a user to select colors. This provision requires more than just providing color choices. The available choices must also allow for different levels of contrast. Many people experience a high degree of sensitivity to bright displays. People with this condition cannot focus on a bright screen for long because they will soon be unable to distinguish individual letters. An overly bright background causes a visual "white-out". To alleviate this problem, the user must be able to select a softer background and appropriate foreground colors. The provision has been revised as a performance standard rather than a specific design standard by removing the requirement for 8 foreground and 8 background color selections.
Paragraph (k) limits the flashing or blinking rate of screen items. (See §1194.21(c) in the NPRM.)
Comment. The Trace Center expressed concern that research supported a limit of 3 Hz, not 2 Hz as described in the NPRM. Trace suggested that the flash or blink rate avoid any flickering between (but not including) 3 Hz and 55 Hz, which is the power frequency for Europe.
Response. This provision is necessary because some individuals with photosensitive epilepsy can have a seizure triggered by displays which flicker or flash, particularly if the flash has a high intensity and is within certain frequency ranges. The 2 Hz limit was chosen to be consistent with proposed revisions to the ADA Accessibility Guidelines which, in turn, are being harmonized with the International Code Council (ICC)/ANSI A117 standard, "Accessible and Usable Buildings and Facilities", ICC/ANSI A117.1-1998 which references a 2 Hz limit. The Board agrees that an upper limit is needed, since all electrically powered equipment, even an incandescent light bulb, has a "flicker" due to the alternating current line voltage frequency (60 Hz in the U.S., 55 Hz in Europe). There does not appear to be any significant incidence of photosensitive seizures being induced by the line voltage frequency of ordinary lights. Therefore, the provision has been changed to prohibit flash or blink frequencies between 2 Hz and 55 Hz.
Paragraph (l) requires that people with disabilities have access to electronic forms. This section is a result of the reorganization of the final rule and is identical to section 1194.22(n) discussed below. (See §1194.23(b)(10) in the NPRM.)
User Comments/Questions
Add Comment/Question