| IMS Learner Information Package Accessibility for LIP Information Model Version 1.0 Final Specification

Copyright © 2003 IMS Global Learning Consortium, Inc. All Rights Reserved.
The IMS Logo is a trademark of IMS Global Learning Consortium, Inc.
Document Name: IMS Learner Information Package Accessibility for LIP Information Model
Revision: 18 June 2003

IPR and Distribution Notices

Recipients of this document are requested to submit, with their comments, notification of any relevant patent claims or other intellectual property rights of which they may be aware that might be infringed by any implementation of the specification set forth in this document, and to provide supporting documentation.

IMS takes no position regarding the validity or scope of any intellectual property or other rights that might be claimed to pertain to the implementation or use of the technology described in this document or the extent to which any license under such rights might or might not be available; neither does it represent that it has made any effort to identify any such rights. Information on IMS's procedures with respect to rights in IMS specifications can be found at the IMS Intellectual Property Rights web page: http://www.imsglobal.org/ipr/imsipr_policyFinal.pdf.

Copyright © 2003 IMS Global Learning Consortium. All Rights Reserved.

If you wish to copy or distribute this document, you must complete a valid Registered User license registration with IMS and receive an email from IMS granting the license to distribute the specification. To register, follow the instructions on the IMS website: http://www.imsglobal.org/specificationdownload.cfm.

This document may be copied and furnished to others by Registered Users who have registered on the IMS website provided that the above copyright notice and this paragraph are included on all such copies. However, this document itself may not be modified in any way, such as by removing the copyright notice or references to IMS, except as needed for the purpose of developing IMS specifications, under the auspices of a chartered IMS project group.

Use of this specification to develop products or services is governed by the license with IMS found on the IMS website: http://www.imsglobal.org/license.html.

The limited permissions granted above are perpetual and will not be revoked by IMS or its successors or assigns.

THIS SPECIFICATION IS BEING OFFERED WITHOUT ANY WARRANTY WHATSOEVER, AND IN PARTICULAR, ANY WARRANTY OF NONINFRINGEMENT IS EXPRESSLY DISCLAIMED. ANY USE OF THIS SPECIFICATION SHALL BE MADE ENTIRELY AT THE IMPLEMENTER'S OWN RISK, AND NEITHER THE CONSORTIUM, NOR ANY OF ITS MEMBERS OR SUBMITTERS, SHALL HAVE ANY LIABILITY WHATSOEVER TO ANY IMPLEMENTER OR THIRD PARTY FOR ANY DAMAGES OF ANY NATURE WHATSOEVER, DIRECTLY OR INDIRECTLY, ARISING FROM THE USE OF THIS SPECIFICATION.

# Table of Contents

1. Introduction
1.1 Overview
1.2 IMS ACCLIP Components
1.3 Accessibility for LIP and Other Specifications
1.4 Future Meta-Data Work
1.5 Context, Scope, and Assumptions
1.5.1 Context
1.5.2 Scope
1.5.3 Assumptions
1.6 Nomenclature
1.7 Abbreviations
2. Information Model
2.1 Inherited LIP Meta-data
2.2 Changes to the <accessibility> Element Formatting
2.2.1 The 'usage' Information Model
2.2.2 The <accessForAll> Information Model
2.2.3 The <context> Information Model
2.2.4 The <application> Information Model
2.2.5 The <display> Information Model
2.2.6 The <control> Information Model
2.2.7 The <content> Information Model
2.3 Changes to the <eligibility> Element
3. Object Model for Accessibility Preferences
3.1 Path Specification
3.2 Error Definition
3.3 accessForAll Class
3.3.1 Data Structures
3.3.2 Methods
3.4 Context Class
3.4.1 Data Structures
3.4.2 Methods
3.5 Display Class
3.5.1 Data Structures
3.5.2 Methods
3.6 Control Class
3.6.1 Data Structures
3.6.2 Methods
3.7 Content Class
3.7.1 Data Structures
3.7.2 Methods
4. Extensibility
4.1 Extensibility Statement
5. Conformance
Appendix A - Glossary
About This Document
List of Contributors
Revision History
Index

# 1. Introduction

## 1.1 Overview

Accessibility for LIP (ACCLIP) provides a means to describe how learners can interact with an on-line learning environment based on their preferences and needs. These preferences will likely have a considerable impact on the user interface of learning delivery, tools, and managers and how content is selected. Two new elements (plus sub-elements) have been added: <accessForAll> is added, <disability> is deprecated, and <accommodation> has been added to <eligibility> in the LIP Information Model.

The <accessForAll> element defines accessibility preferences that were left for future work in the IMS Learner Information Package (LIP) specification version 1.0. The "accessibility" data structure includes the following elements: <language>, <preference>, <eligibility>, and <disability> in the LIP. This specification adds the <accessForAll> element under <accessibility> because it is intended to address the needs of learners beyond those with disabilities. The <disability> element is deprecated henceforth.

As the name implies, <accessForAll> is meant to serve the needs and preferences of all users, not only those with a disability. In this model, accessibility extends beyond disability to benefit users in learning situations which require alternative modes of use, such as in an extremely noisy environment where captions are needed for a video or a "hands-busy, eyes-busy" application like just-in-time training while repairing an aircraft engine. The user preferences that have been defined herein will aid the user in displaying learning material in the style best suited to their particular needs and in specifying an interface that they can interact with effectively which allows the accessible display and control of the learning material.

The purpose of <accessForAll> is to allow information to be gathered from users regarding their needs and preferences so that the user interface and content can be appropriately adapted. Students with disabilities may have specific requirements for the format in which information is presented and the way in which they provide input to the system. For example, learners can specify whether they require use of a screen reader with speech, require use of a screen reader with a Braille display, or prefer one but can optionally use the other.

The information collected in <accessForAll> is associated with the student's functional abilities and the assistive technology or other non-standard technology in use as well as other user preferences (a functional approach), rather than with the name and other details of the disability (a medical approach). If the structure were based on information about users' disabilities it would still need to address their functional abilities at some stage, as it is this information that is needed by learning systems to adapt content and navigation. A medical approach would exclude many of the details that the system would require. One example would be a user with a learning disability: because learning disabilities are so varied, that classification does not capture the range of options that can be offered in a functional description. Another example would be the preferences of a blind user: knowing that a user is blind (the medical terminology of the disability) does not indicate whether or not they can read Braille and whether they need output to a Braille display or to a screen reader with speech; only a functional approach can accommodate this. Many users with disabilities and users with alternate preferences will require the user interface to be compatible with the assistive or non-standard technology that they use, so <accessForAll> focuses on the hardware and software used by the user.

In addition to the <accessForAll> element, an extension to the LIP <eligibility> section is included here. The <accommodation> element allows a description of the accommodations made for interactions with a particular learning object (or set of them). Also included is a means to represent who authorized this accommodation, when it was authorized and when it expires. These extensions represent the start of a more systematic approach to describe eligibility and accommodations.

Learning technology is moving toward a more service oriented approach to defining what is available to systems, applications, and users. As such, Accessibility for LIP includes an object model which defines an Accessibility Preference Manager, which is part of a larger abstract Profile Manager. The Profile Manager was defined after the creation of the LIP as part of the IMS Abstract Framework documents. This document is an early attempt to define some aspects of a profile manager, i.e., those which deal with accessibility preferences. The object model attempts to go beyond a data model of interoperability by defining which pieces of the <accessForAll> data structure can be accessed independently. This, in turn, allows applications to be optimized by drawing on the preferences needed to adapt the user interface and content according to situational context.

## 1.2 IMS ACCLIP Components

The ACCLIP documents deal only with accessibility preferences. They are a subset of the whole IMS Learning Information Package (LIP), described in the following set of interrelated documents:

- Accessibility for LIP Information Model (this document) - the normative reference that defines the data elements needed to represent accessibility preferences in a LIP Profile. The document also describes a set of services that provide accessibility support via preferences included in a Learner Information Package. It includes examples of the kinds of transactions that are likely to occur with a Profile Manager and the objects associated with it. This portion of the document uses the terminology and structures defined by the IMS Abstract Framework document.
- Accessibility for LIP XML Schema Binding - describes how the information model is represented as additional elements in the Learner Information Package XML Schema set.
- Accessibility for LIP Best Practice Guide - describes considerations and examples for using the accessibility preferences defined in the Information Model. This includes examples drawn from the ACCLIP Use Cases.
- Accessibility for LIP Use Cases - describes use cases from which requirements used as the basis for Accessibility for LIP development.

## 1.3 Accessibility for LIP and Other Specifications

ACCLIP provides a means to describe how learners prefer to interact with an on-line learning environment. These preferences will likely have a considerable impact on the user interface of learning delivery, tools, and managers and the content delivered by them.

The need to identify and access alternative forms of content for accessibility purposes has been identified. Currently, there are limited provisions for this in the IMS Content Packaging specification. Selection of alternative content forms also has an impact on learning activity sequencing as defined in the IMS Simple Sequencing specification. Accessibility preferences will likely have an impact on how assessments are delivered. These are not currently included in either QTI or this specification. Similarly, Learning Design has the need to identify alternative content, but has no specific provisions for it at this time.

## 1.4 Future Meta-Data Work

Besides providing a means to adapt user interfaces to the needs of a particular user, accessibility preferences can also be used to guide the learner in selection of learning material that supports his or her style of learning and accessibility needs. A means is required to enable content to be marked in a manner that supports content search and selection based on accessibility preferences. This will be an extension to IMS Meta-Data but is outside of the scope of this project.

As a guide to this future work, the following meta-data information has been identified as likely to support the Access For All LIP extensions. This does not address the need to identify the accessibility of content using Meta-data.

No. | Name | Description | Meta-Data Required
--- | --- | --- | ---
1 | content | Preferences regarding the content, specifying any desired transformations or enhancements. | (container)
1.1 | alternativesToVisual | Modality preference. How to present visual content in a different modality. | (container)
1.1.1 | audioDescription | Audio descriptions of visual elements | Meta-data on audio description that includes pointer to primary video and a label of either "expanded" or "standard"
1.1.1.1 | xml:lang | Language to use for audio descriptions | Meta-data specifying the language.of the audio description
1.1.2 | altTextLang | Language to use for alt text. | Meta-data on alt-text identifying language of alt-text
1.1.3 | longDescriptionLang | Language to use for long descriptions | Meta-data identifying language of long-desc.
1.1.4 | colorAvoidance | Preferences regarding the use of color in display of information. | (container)
1.1.4.1 | avoidRed | Avoid the use of red to display information. | Meta-data on content specifying that red is avoided or is used.
1.1.4.2 | avoidRedGreen | Avoid the use of red and green to display information. | Meta-data on content specifying that red and green in combination are avoided or are used.
1.1.4.3 | avoidBlueYellow | Avoid the use of blue and yellow to display information. | Meta-data on content specifying that blue and yellow in combination are avoided or are used.
1.1.4.4 | avoidGreenYellow | Avoid the use of green and yellow to display information. | Meta-data on content specifying that green and yellow in combination are avoided or are used.
1.1.4.5 | avoidOrange | Avoid the use of orange to display information | Meta-data on content specifying that orange is avoided or is used.
1.1.4.6 | avoidRedBlack | Avoid the use of red and black to display information | Meta-data on content specifying that red and black in combination are avoided or are used.
1.1.4.7 | avoidPurpleGray | Avoid the use of purple and gray to display information. | Meta-data on content specifying that purple and gray in combination are avoided or are used.
1.1.4.8 | useMaximumContrastMonochrome | Use monochromatic displays at maximum contrast. | Meta-data on content specifying maximum contrast monochrome
1.2 | alternativesToText | Modality preference. How to present textual content in a different modality. | (container)
1.2.1 | graphicAlternative | Use a graphic alternative if available | Meta-data on content stating graphic system used (e.g., Bliss, PicSyms, etc.) also whether text is blended with graphics and whether animation is used
1.2.2 | signLanguage | Language to use for sign language alternatives | Meta-data on sign language interpretation video with pointer to primary text and identification of language used
1.3 | alternativesToAuditory | How to present auditory content in a different modality. | (container)
1.3.1 | captionType | What form of text caption is preferred. | (container)
1.3.1.2 | verbatim | Enable verbatim captions which may include descriptions of sound effects. Mutually exclusive with reducedReadingLevel | Meta-data on caption that includes pointer to primary video, synchronization file if necessary and a label verbatim.
1.3.1.3 | reducedReadingLevel | Reduce the reading level. Mutually exclusive with verbatim | Meta-data on caption that includes pointer to primary video, synchronization file if necessary and a label of reduced reading level.
1.3.1.4 | reducedSpeed | Reduce the speed of captions as expressed in a words -per -minute 'value' rate. | This is handled by the interface; no metadata is needed.
1.3.1.4.2 | captionRate | Reduced rate of captions. | This is handled by the interface; no metadata is needed.
1.3.1.5 | enhancedCaption | Enhance the captions to include more information. This includes the use of video layers to provide information about the paralinguistic content of speech, music, and other non-speech sounds. | Meta-data on caption that includes pointer to primary video, synchronization file if necessary and a label of enhanced
1.3.2 | signLanguage | Language to use for sign language alternatives | Meta-data on sign language interpretation video with pointer to primary video, audio or text and identification of language used
1.4 | learnerScaffold | Analogous to a bookbag, a scaffold is a place to carry common tools. | Meta-data on learner scaffold specifying: dictionary, calculator noteTaking, peerInteraction, abacus thesaurus, spellchecker, homophoneChecker, mindMappingSoftware outlineTool.
1.5 | personalStylesheet | URI to a style sheet | If URI provided in preferences no need for metadata but if stylesheets can be reused we may want to re-examine this
1.6 | extraTime | Allows the user to request extra time when viewing content or responding to requests for information, such as during a test. Expressed as a multiplier of the time allowed. | This is handled by the interface; no metadata is needed.
1.7 | structuralPresentation | Settings for how the structure of the content is displayed. | (container)
1.7.4 | showTranscript | Display a transcript of the audio presentation when available. | Meta-data on transcript of audio pointing to primary content.
1.7.5 | showNotes | Display annotations (notes) when available. | Meta-data on annotations with pointer to primary content annotated and synchronization or link file.

## 1.5 Context, Scope, and Assumptions

### 1.5.1 Context

The ACCLIP information contained here extends the IMS LIP v1.0 Specification by adding substantial descriptive material that define accessibility preferences. These new elements are intended to be completely compatible with all of the LIP work done previously, especially with regard to privacy, access, and information integrity.

This new work is also intended to be compatible with the terminology and structures defined by the IMS Abstract Framework. The Abstract Framework describes a layered system of services and how those services are accessed by higher level services, applications, and users.

### 1.5.2 Scope

The ACCLIP elements provide a means to describe how a learner desires to access online learning content and related applications via a set of preference elements. These elements are grouped into three main types: display information, control information, and content information. Taken together, they provide a way that allows a learner to create preferences in how content is delivered in a particular context.

Later development of Accessibility for LIP may include support for describing user characteristics independently of accessibility preferences. These characteristics may include descriptions of various conditions, abilities, etc. While the group felt that this was an important part of accessibility preferences, especially given an expressed business need, there was insufficient time to develop the safeguards needed to prevent these extensions from being misused. The ACCLIP recommends that this be considered for follow on work.

The <accommodation> element under the <eligibility> element allows one to specify accommodations for which a learner is eligible when using a learning object, particularly a test.

### 1.5.3 Assumptions

In designing the <accessForAll> element and sub-elements it is assumed that content to be presented to the learner is compliant with basic accessibility specifications delineated in the World Wide Web Consortium Web Accessibility Guidelines (W3C WCAG). Compliance with W3C WCAG priority 1 and 2 would insure that the presentation and control of text is transformable. This would negate the need to provide multiple static presentations of textual material to accommodate the varying needs of learners.

This document assumes that all users are likely to have accessibility preferences, not just individuals with disabilities. With the increasing variety of interface choices and environments in which on-line learning occurs, learners will need to be able to control how they interact. Some of these may be considered personal preferences, while others will be required to permit access to learning content in unusual environments such as noisy locations, hands free operation, etc.

It is assumed that learners will need different preferences at different times and locations.

Accessibility preferences are intended to describe aspects of a computer system (including networked systems) that can be adjusted to improve accessibility. It is not intended to address larger systems that may include physical location, other people, external processes, etc.

## 1.6 Nomenclature

Several of the definitions below were drawn from the IMS Abstract Framework Glossary, v1.0.

Access
An access is any action (such as a query or direct hyperlink) by either a human or machine enabling the retrieval of data.

Accessibility
Accessibility is concerned with ensuring that products and technologies are capable of supporting people with disabilities. The term disability is accepted in its broadest sense and so both physical and cognitive accessibility must be addressed.

Accommodation
Accommodation is a change from the default conditions (content, format, and/or administration procedure) that is intended to enable a learning object to fulfill its intended purpose for individuals who cannot use the learning object under default conditions. The term use is often used in the context of assessments and tests used by individuals with disabilities or other special populations. For example, the provision to use a spellchecker during examinations, or the provision of a private room for those students who may require the use of text-to-speech which may not be acceptable to use in an examination hall.

Learner Profile
A learner's profile is a collection of information about a learner. This information may include performance data, accessibility and language preferences, and other characteristics defined by the IMS LIP specification.

Learning Content Management System (LCMS)
An LCMS is a multi-user environment where learning developers can create, store, reuse, manage, and deliver digital learning content from a central object repository. LCMS products allow organizations to create and reuse units of digital instructional content. An LCMS manages the process of creating and delivering learning content, just as the names indicate.

Preference
An element or set of data which describes how a user desires to interact with a learning application or environment.

Profile Manager
A service that enables access and manipulation of a learner's profile, including a Life Long Learning Log or Life Long Learning Profile. This service enables a single point of management access to a profile that may be replicated and or distributed in partial form across many Profile Repositories.

Service Access Point
A service access point is an interface between two adjacent layers of the abstract framework. The SAP is an abstract representation of the service available through the interface and as such its implementation could be referred to as an API.

## 1.7 Abbreviations

The following abbreviations and acronyms are used in this document.

ACCLIP | Accessibility for Learner Information Package
ADL | Advanced Distributed Learning
AICC | Aviation Industry CBT Committee
API | Application Programming Interface
ANSI | American National Standards Institute
ATRC | Adaptive Technology Resource Centre, University of Toronto, Canada
CBT | Computer Based Training
CMI | Computer Managed Instruction
CPI | Content Packaging Interchange
DTD | Document Type Definition
IEEE | Institute of Electronic & Electrical Engineering
ISO | International Standards Organization
JTC | Joint Technical Committee
LCMS | Learning Content Management System
LIP | IMS Learner Information Package
LTS | Learning Technology System
LTSC | Learning Technology Standards Committee
SCORM | Shareable Content Object Reference Model
SS | Simple Sequencing
W3C | World Wide Web Consortium
XML | Extensible Mark-up Language
XSD | XML Schema Document

# 2. Information Model

The Accessibility for LIP Information Model extends the previous version of the IMS LIP by adding a new element under <accessibility> called <accessForAll>, by deprecating the <disability> element previously defined, and by adding a new element under <eligibility> called <accommodation>.

Figure 2.1 - Old Sub-elements of the LIP Accessibility Element.

Figure 2.2 - New Sub-elements of the LIP Accessibility Element.

## 2.1 Inherited LIP Meta-data

The Learner Information Package defined a set of meta-data elements to be associated with all LIP elements. Since <accessForAll> and <accommodation> are name spaced extensions of that specification, they both are required to support LIP meta-data, as well.

The learning information meta-data is broken into three categories:

- Time Information: Time of creation and time of expiration of a piece of data; Temporal Information.
- Index and Source: Supports a pair consisting of a source and an ID assigned by that source, a local index that is used for cross-referencing, and a URI; Referential Information.
- Privacy and data protection information: Unstructured data to be determined by practice and implementation. Privacy Information.

All LIP and ACCLIP data elements have meta-data sub-elements with the exception of atomic elements that can always inherit their meta-data. The following information is excerpted from the IMS LIP v1.0.

No. | Name | Description | Mult | Data Type | Value Space | Default Value
--- | --- | --- | --- | --- | --- | ---
1 | contentype | The data that is used to describe the contents of the learner information structures. | [0..1] |  |  |
1.1 | referential | Reference information that is used to uniquely identify the learner information and the data structures within it. | [1..*] |  |  |
1.1.1 | sourcedid | The initiating system's source identification for the learner information. | [0..1] |  |  |
1.1.1.1 | source | The name of the source system creating the learner information. | [1] | string |  |
1.1.1.2 | id | A unique identifier for the learner information record assigned by the creating entity. | [1] | id |  |
1.1.2 | indexid | A unique identifier for the actual data structure containing the learner information content. This identifier is persistent and so mapping tables should be maintained to allow the identifier to be used in subsequent transactions. | [1] | id |  |
1.2 | temporal | Data describing time-based information about the data structure e.g. time of creation, date of expiry, etc. | [0..*] |  |  |
1.2.1 | typename | The type of temporal relationship. | [0..1] | string |  |
1.2.2 | temporalfield | The fields defined to contain the temporal data structures. | [0..*] |  |  |
1.2.2.1 | fieldlabel | The field type that will contain the temporal definition data. | [0..1] | string |  |
1.2.2.2 | fielddata | The field type that will contain the temporal data. | [0..1] | string |  |
1.3 | privacy | Data that is to be used to describe the access to and to ensure the integrity of the learner information. | [0..1] |  |  |
1.3.1 | privacyfield | The fields defined to contain the privacy data structures. | [0..*] |  |  |
1.3.1.1 | fieldlabel | The field type that will contain the privacy definition data. | [0..1] | string |  |
1.3.1.2 | fielddata | The field type that will contain the privacy data. | [0..1] | string |  |
1.3.2 | date | Dates appropriate to the privacy information e.g. expiry. | [0..*] | date |  |

See IMS Learner Information Package v1.0 for more information.

## 2.2 Changes to the <accessibility> Element Formatting

The ACCLIP Information Model defines user preferences in a hierarchy of data elements. The top level of this hierarchy has <accessForAll> at the root, which is a new element as a child of <accessibility>. The <disability> preference is no longer used and is deprecated.

### 2.2.1 The 'usage' Information Model

The term 'usage' applies to an attribute that many of the <accessForAll> elements include. It allows the user to specify that this element is required, preferred, optionally used, or not used. Interpretation of these terms may vary depending on the context of use and on the specific element the attribute is applied to. Some examples are given below. These terms are defined as follows:

- required: The learner cannot use content or tools that do not provide this feature or allow this transformation.
- preferred: The learner prefers content or tools that provide this feature or allow this transformation.
- optionallyUse: The learner would use this setting if the content or tool they have selected for other reasons provides or allows it.
- notUse: The learner cannot use content or tools that include this feature or require this transformation; this feature should be turned off if possible, or content that includes this feature should not be offered.

### 2.2.2 The <accessForAll> Information Model

The <accessForAll> element defines accessibility preferences for a user collected into named contexts.

No. | Name | Description | Mult | Data Type | Value Space | Default Value
--- | --- | --- | --- | --- | --- | ---
1 | accessForAll | Root element that groups the user's accessibility preferences. | [0..1] |  |  |
1.1 | context | Defined below. | [1..*] |  |  |

### 2.2.3 The <context> Information Model

The <context> element defines a named preference set that allows learners to create multiple preference sets to suit varying conditions. The first context defined is considered the default context if none is specified.

A context may have an external context reference. If an external context is specified, preferences are used from the remote context definition. Context identifiers of the local and remotely defined context must be identical. Fully specified preference values included locally will override the externally defined ones. Locally defined container elements do not cause externally defined preferences to revert to defaults. Circular external references are not allowed. Multiple levels of external references are allowed.

No. | Name | Description | Mult | Data Type | Value Space | Default Value
--- | --- | --- | --- | --- | --- | ---
1 | context | For defining different sets of preferences depending on different situations (e.g., time of day). | [1..*] |  |  |
1.1 | identifier | Identifies the context. | [1] | string | unique user-assigned name |
1.2 | external | A link to an external context definition which may be used as a group, or shared settings. Sub-elements contained in a context with an external reference override those in the externally defined context. The local and external identifiers must agree. | [0..1] | URI |  |
1.3 | language | The user's preferred language for this context. | [0..1] | xml:lang | ISO LanguageID ISO 639:1988 | en
1.4 | display | Defined below. | [0..1] |  |  |
1.5 | control | Defined below. | [0..1] |  |  |
1.6 | content | Defined below | [0..1] |  |  |

### 2.2.4 The <application> Information Model

The <application> element allows application specific preferences to be defined. Each generic <display> and <control> preference elements have a corresponding <application> element referenced in the information model tables that follow.

No. | Name | Description | Mult | Data Type | Value Space | Default Value
--- | --- | --- | --- | --- | --- | ---
1 | application | 1. Declare a specific technology that implements screen enhancement. 2. Optionally allow for additional settings for that specific technology. | [0..*] |  | . |
1.1 | name | The name of the application to use, such as "JAWS" | [1] | string |  |
1.2 | version | The version of the application to use, such as "1.0" | [0..1] | string |  |
1.3 | priority | How high a priority this is. | [1] | integer | positive, nonzero 1 is the highest priority. |
1.4 | param | Name/value pair for specifying a setting for a specific technology. These values are understood only by their corresponding applications. | [0..*] |  |  |
1.4.1 | name | An application specific parameter name. | [1] | string |  | -
1.4.2 | value | An application specific parameter value. | [0..1] | string |  | -

### 2.2.5 The <display> Information Model

The <display> element allows preferences in how material is displayed or communicated to a learner.

No. | Name | Description | Mult | Data Type | Value Space | Default Value
--- | --- | --- | --- | --- | --- | ---
1 | display | Display technology preferences: how the user interface and content should be presented. | [0..1] |  |  |
1.1 | screenReader | Display technology that presents text using a speech synthesizer. | [0..1] |  |  |
1.1.1 | screenReaderGeneric | Common settings for screen readers. | [1] |  |  |
1.1.1.1 | link | How to present a hyperlink. The screen reader can say the word, 'Link', or speak in a different voice, or use a sound effect, or do nothing special. It can also do more than one of these, such as say 'Link' and use a sound effect, so more than one link element is permitted. | [1..*] | vocabulary | speakLink differentVoice soundEffect none | speakLink
1.1.1.1.1 | usage | Indication of how this preference is to be used. | [0..1] | vocabulary | required preferred optionallyUse notUse | preferred
1.1.1.2 | speechRate | Words per minute. Applications which do not support either the high end of the range or the low should play at the maximum or minimum rate possible. | [1] | integer | [1 - 1000] | 180
1.1.1.2.1 | usage | Indication of how this preference is to be used. | [0..1] | vocabulary | required preferred optionallyUse notUse | preferred
1.1.1.3 | pitch | The pitch of the voice. | [1] | float | [0.0 - 1.0] where, 0.0 = "low" 0.5 = "medium" 1.0 = "high" | 0.5
1.1.1.3.1 | usage | Indication of how this preference is to be used. | [0..1] | vocabulary | required preferred optionallyUse notUse | preferred
1.1.1.4 | volume | The loudness of the voice. | [1] | float | [0.0 - 1.0] where, 0.0 = "quiet" 0.5 = "medium" 1.0 = "loud" | 0.5
1.1.1.4.1 | usage | Indication of how this preference is to be used. | [0..1] | vocabulary | required preferred optionallyUse notUse | preferred
1.1.2 | application | Defined above. | [0..*] |  |  | -
1.2 | screenEnhance | Technology that makes the display easier to see. For example, display text in a larger font, and/or with greater contrast. Screen magnifiers are a type of screen enhancer. | [0..1] |  |  |
1.2.1 | screenEnhanceGeneric | Common settings for screen enhancers. | [1] |  |  |
1.2.1.1 | fontFace | What type of font to be used in a screen enhancer. | [1] |  |  |
1.2.1.1.1 | fontName | A font name. | [0..*] | string |  |
1.2.1.1.1.1 | usage | Indication of how this preference is to be used. | [0..1] | vocabulary | required preferred optionallyUse notUse | preferred
1.2.1.1.2 | genericFace | One of the five defined generics. | [1] | vocabulary | serif sansSerif monospaced cursive fantasy | sansSerif
1.2.1.1.2.1 | usage | Indication of how this preference is to be used. | [0..1] | vocabulary | required preferred optionallyUse notUse | preferred
1.2.1.2 | fontSize | Point size of the font. | [1] | positiveInteger |  | 12
1.2.1.2.1 | usage | Indication of how this preference is to be used. | [0..1] | vocabulary | required preferred optionallyUse notUse | preferred
1.2.1.3 | foregroundColor | The foreground color. This is often used as the color of text. | [1] | color | RGB plus Alpha | ff000000 (black)
1.2.1.3.1 | usage | Indication of how this preference is to be used. | [0..1] | vocabulary | required preferred optionallyUse notUse | preferred
1.2.1.4 | backgroundColor | The background color. The background color shall not be the same color as the foreground color. | [1] | color | RGB plus Alpha | ffffffff (white)
1.2.1.4.1 | usage | Indication of how this preference is to be used. | [0..1] | vocabulary | required preferred optionallyUse notUse | preferred
1.2.1.5 | highlightColor | The highlight color to be used. The highlight color shall not be the same as the foreground or background colors. | [1] | color | RGB plus Alpha | ffff0000 (red)
1.2.1.5.1 | usage | Indication of how this preference is to be used. | [0..1] | vocabulary | required preferred optionallyUse notUse | preferred
1.2.1.6 | cursorSize | Size of the cursor. | [1] | float | [0.0 - 1.0] where, 0.0 = "standard" 0.5 = "large" 1.0 = "extra large" | 0.5
1.2.1.6.1 | usage | Indication of how this preference is to be used. | [0..1] | vocabulary | required preferred optionallyUse notUse | preferred
1.2.1.7 | cursorColor | The color of the cursor. | [1] | color | RGB plus Alpha | fffffff (white)
1.2.1.7.1 | usage | Indication of how this preference is to be used. | [0..1] | vocabulary | required preferred optionallyUse notUse | preferred
1.2.1.8 | cursorTrails | Length of cursor trail where 0.0 is no trail at all and 1.0 is the maximum allowed by the system. | [1] | float | [0.0 - 1.0] where, 0.0 = "no trail" 0.5 = "medium" 1.0 = "longest" | 0.5
1.2.1.8.1 | usage | Indication of how this preference is to be used. | [0..1] | vocabulary | required preferred optionallyUse notUse | preferred
1.2.2 | invertColorChoice | Invert the choice of colors for better readability. | [1] | boolean |  | false
1.2.2.1 | usage | Indication of how this preference is to be used. | [0..1] | vocabulary | required preferred optionallyUse notUse | preferred
1.2.3 | tracking | What the screen enhancer tracks | [0..1] |  |  |
1.2.3.1 | mouse | Track the mouse. | [1] | boolean |  | true
1.2.3.1.1 | usage | Indication of how this preference is to be used. | [0..1] | vocabulary | required preferred optionallyUse notUse | preferred
1.2.3.2 | caret | Track the caret (text insertion point) | [1] | boolean |  | true
1.2.3.2.1 | usage | Indication of how this preference is to be used. | [0..1] | vocabulary | required preferred optionallyUse notUse | preferred
1.2.3.3 | focus | Track the focus. | [1] | boolean |  | true
1.2.3.3.1 | usage | Indication of how this preference is to be used. | [0..1] | vocabulary | required preferred optionallyUse notUse | preferred
1.2.4 | magnification | Magnify the screen content by an integer amount. The default of 1x means no magnification. | [0..1] | integer | [1 - 20] | 1
1.2.4.1 | usage | Indication of how this preference is to be used. | [0..1] | vocabulary | required preferred optionallyUse notUse | preferred
1.2.5 | application | 1. Declare a specific technology that implements screen enhancement. 2. Optionally allow for additional settings for that specific technology. | [0..*] |  | Defined above. |
1.3 | textReadingHighlight | Highlight the text as it is read by a speech synthesizer. | [0..1] |  |  |
1.3.1 | textReadingHighlightGeneric | Common settings for text reading with highlighting. | [1] |  |  |
1.3.1.1 | speechRate | Words per minute. Applications which do not support either the high end of the range or the low should play at the maximum or minimum rate possible. | [1] | integer | [1 - 1000] | 180
1.3.1.1.1 | usage | Indication of how this preference is to be used. | [0..1] | vocabulary | required preferred optionallyUse notUse | preferred
1.3.1.2 | pitch | The pitch of the voice. | [1] | float | [0.0 - 1.0] where, 0.0 = "low" 0.5 = "medium" 1.0 = "high" | 0.5
1.3.1.2.1 | usage | Indication of how this preference is to be used. | [0..1] | vocabulary | required preferred optionallyUse notUse | preferred
1.3.1.3 | volume | The loudness of the voice. | [1] | float | [0.0 - 1.0] where, 0.0 = "quiet" 0.5 = "medium" 1.0 = "loud" | 0.5
1.3.1.3.1 | usage | Indication of how this preference is to be used. | [0..1] | vocabulary | required preferred optionallyUse notUse | preferred
1.3.1.4 | highlight | Highlight by word, line, sentence, or by paragraph. | [1] | vocabulary | word line sentence paragraph | word
1.3.1.4.1 | usage | Indication of how this preference is to be used. | [0..1] | vocabulary | required preferred optionallyUse notUse | preferred
1.3.1.5 | speakAltText | Speak the alternative text. | [1] | boolean |  | true
1.3.1.5.1 | usage | Indication of how this preference is to be used. | [0..1] | vocabulary | required preferred optionallyUse notUse | preferred
1.3.1.6 | speakWhenTabbing | Speak controls such as links, buttons, form elements, etc. when tabbing. | [1] | boolean |  | true
1.3.1.6.1 | usage | Indication of how this preference is to be used. | [0..1] | vocabulary | required preferred optionallyUse notUse | preferred
1.3.1.7 | readingUnit | Unit of reading to be spoken | [1] | vocabulary | word line sentence paragraph | word
1.3.1.7.1 | usage | Indication of how this preference is to be used. | [0..1] | vocabulary | required preferred optionallyUse notUse | preferred
1.3.2 | application | 1. Declare a specific technology that implements a text reader that highlights. 2. Optionally allow for additional settings for that specific technology. | [0..*] |  | Defined above. | -
1.4 | braille | A Braille display is a device that presents text, and other information, using Braille. | [0..1] |  |  |
1.4.1 | brailleGeneric | Common settings for Braille displays. | [1] |  |  |
1.4.1.1 | grade | Grade of Braille to use. Grade 2 supports contractions and other possible extensions. Grade 1 corresponds to "uncontracted" Braille, and Grade 2 corresponds to "contracted" Braille. | [1] | vocabulary | 1 2 uncontracted contracted | 1
1.4.1.1.1 | usage | Indication of how this preference is to be used. | [0..1] | vocabulary | required preferred optionallyUse notUse | preferred
1.4.1.2 | numDots | Number of dots in a cell. | [1] | integer | 6 8 (6 or 8) | 6
1.4.1.2.1 | usage | Indication of how this preference is to be used. | [0..1] | vocabulary | required preferred optionallyUse notUse | preferred
1.4.1.3 | numCells | Number of active cells. | [1] | integer | [8 - 120] | 80
1.4.1.3.1 | usage | Indication of how this preference is to be used. | [0..1] | vocabulary | required preferred optionallyUse notUse | preferred
1.4.1.4 | markHighlight | Mark highlighted text. | [1] | boolean |  | false
1.4.1.4.1 | usage | Indication of how this preference is to be used. | [0..1] | vocabulary | required preferred optionallyUse notUse | preferred
1.4.1.5 | markBold | Mark bold text. | [1] | boolean |  | false
1.4.1.5.1 | usage | Indication of how this preference is to be used. | [0..1] | vocabulary | required preferred optionallyUse notUse | preferred
1.4.1.6 | markUnderline | Mark underlined text. | [1] | boolean |  | false
1.4.1.6.1 | usage | Indication of how this preference is to be used. | [0..1] | vocabulary | required preferred optionallyUse notUse | preferred
1.4.1.7 | markItalic | Mark italic text. | [1] | boolean |  | false
1.4.1.7.1 | usage | Indication of how this preference is to be used. | [0..1] | vocabulary | required preferred optionallyUse notUse | preferred
1.4.1.8 | markStrikeout | Mark strikeout text. | [1] | boolean |  | false
1.4.1.8.1 | usage | Indication of how this preference is to be used. | [0..1] | vocabulary | required preferred optionallyUse notUse | preferred
1.4.1.9 | markColor | Mark colored text. | [1] | boolean |  | false
1.4.1.9.1 | usage | Indication of how this preference is to be used. | [0..1] | vocabulary | required preferred optionallyUse notUse | preferred
1.4.1.10 | dotPressure | Back pressure on Braille pins. The pins depress when touched. This pressure controls reading sensitivity. | [1] | float | [0.0 - 1.0] where, 0.0 = "low" 0.5 = "medium" 1.0 = "high" | 0.5
1.4.1.10.1 | usage | Indication of how this preference is to be used. | [0..1] | vocabulary | required preferred optionallyUse notUse | preferred
1.4.1.11 | statusCell | Presence or location of the status. | [1] | vocabulary | off left right | off
1.4.1.11.1 | usage | Indication of how this preference is to be used. | [0..1] | vocabulary | required preferred optionallyUse notUse | preferred
1.4.2 | application | 1. Declare a specific technology that implements a Braille display. 2. Optionally allow for additional settings for that specific technology. | [0..*] |  | Defined above. | -
1.5 | tactile | Technology that uses touch or haptics as the means of rendering information. | [0..1] |  |  |
1.5.1 | tactileGeneric | Common settings for tactile displays. | [1] |  |  |
1.5.2 | application | 1. Declare a specific technology that implements a tactile display. 2. Optionally allow for additional settings for that specific technology. | [0..*] |  | Defined above. |
1.6 | visualAlert | Technology that provides visual alternatives for audio alerts. | [0..1] |  |  |
1.6.1 | visualAlertGeneric | Common settings for visual alerts. | [1] |  |  |
1.6.1.1 | systemSounds | Provide visual alternatives to system alert sounds by flashing the desktop, the active window, or caption bar. | [1] Note that these are the Windows options. Mac OSX offers only "flash screen" prob equiv to "desktop". | vocabulary | none desktop window captionBar | none
1.6.1.1.1 | usage | Indication of how this preference is to be used. | [0..1] | vocabulary | required preferred optionallyUse notUse | preferred
1.6.1.2 | captions | Provide captions for system-generated audio. | [1] | boolean |  | false
1.6.1.2.1 | usage | Indication of how this preference is to be used. | [0..1] | vocabulary | required preferred optionallyUse notUse | preferred
1.6.2 | application | 1. Declare a specific technology that implements visual alerts. 2. Optionally allow for additional settings for that specific technology. | [0..*] |  | Defined above. | -
1.7 | structuralPresentation | Settings for how the structure of the content is displayed. | [0..1] |  |  |
1.7.1 | contentDensity | How much detail to provide at any given time. This is intended to support automatic transformation by the system or application. | [0..1] | vocabulary | overview detailed | overview
1.7.1.1 | usage | Indication of how this preference is to be used. | [0..1] | vocabulary | required preferred optionallyUse notUse | preferred
1.7.2 | contentViews | Display content using images or text. System switches between display of images vs. the altText or longDesc text associated with it. | [0..1] | vocabulary | imageIntensive textIntensive | imageIntensive
1.7.2.1 | usage | Indication of how this preference is to be used. | [0..1] | vocabulary | required preferred optionallyUse notUse | preferred
1.7.3 | showLinks | Display a persistent separate list of hyperlinks present in the content. | [0..1] | boolean |  | false
1.7.3.1 | usage | Indication of how this preference is to be used. | [0..1] | vocabulary | required preferred optionallyUse notUse | preferred
1.7.4 | showTranscript | Display a transcript of the audio presentation when available. | [0..1] | boolean |  | false
1.7.4.1 | usage | Indication of how this preference is to be used. | [0..1] | vocabulary | required preferred optionallyUse notUse | preferred
1.7.5 | showNotes | Display annotations (notes) when available. | [0..1] | boolean |  | true
1.7.5.1 | usage | Indication of how this preference is to be used. | [0..1] | vocabulary | required preferred optionallyUse notUse | preferred
1.7.6 | windowLayout | How windows should be displayed. Tiled means windows are next to each other, while overlap means that the windows may overlap. frontMost indicates that the active window should be on top. | [0..1] | vocabulary | tiled overlap frontMost | frontMost
1.7.6.1 | usage | Indication of how this preference is to be used. | [0..1] | vocabulary | required preferred optionallyUse notUse | preferred
1.8 | futureTechnology | Allows for extensibility. Use to declare settings for future display technologies. | [0..*] |  |  |
1.8.1 | application | 1. Declare a specific future technology. 2. Optionally allow for additional settings for that technology. | [0..*] |  | Defined above. |

### 2.2.6 The <control> Information Model

The <control> element allows preferences to be defined for how the learner interacts with a system and responds to it.

No. | Name | Description | Mult | Data Type | Value Space | Default Value
--- | --- | --- | --- | --- | --- | ---
1 | control | Technologies that provide for alternative ways of controlling a device. | [0..1] |  |  |
1.1 | keyboardEnhanced | Accessibility enhancements for a standard keyboard. | [0..1] |  |  |
1.1.1 | keyboardEnhancedGeneric | Common keyboard enhancements. | [1] |  |  |
1.1.1.1 | alphaLayoutInternal | Layout of the alphabetic keyboard. This element is mutually exclusive with alphaLayoutExternal. | [0..1] | vocabulary | standard sequential frequency | standard
1.1.1.1.1 | usage | Indication of how this preference is to be used. | [0..1] | vocabulary | required preferred optionallyUse notUse | preferred
1.1.1.2 | alphaLayoutExternal | External file that describes the layout. This element is mutually exclusive with alphaLayoutInternal. | [0..1] | URI |  | -
1.1.1.2.1 | usage | Indication of how this preference is to be used. | [0..1] | vocabulary | required preferred optionallyUse notUse | preferred
1.1.1.2 | stickyKeys | Modifier keys, such as shift, remain active when pressed. | [1] | boolean |  | true
1.1.1.2.1 | usage | Indication of how this preference is to be used. | [0..1] | vocabulary | required preferred optionallyUse notUse | preferred
1.1.1.2.2 | playSound | If stickyKeys is on, play a sound when a modifier key is pressed. | [0..1] | boolean |  | false
1.1.1.2.2.1 | usage | Indication of how this preference is to be used. | [0..1] | vocabulary | required preferred optionallyUse notUse | preferred
1.1.1.3 | repeatKeys | Sets whether keys auto-repeat when held down. | [1] | boolean |  | true
1.1.1.3.1 | usage | Indication of how this preference is to be used. | [0..1] | vocabulary | required preferred optionallyUse notUse | preferred
1.1.1.3.2 | autoDelay | If repeat-keys is on, sets how long before auto-repeat engages. | [0..1] | float | [0.0 - 1.0] where, 0.0 = "short" 0.5 = "medium" 1.0 = "long" | 0.5
1.1.1.3.2.1 | usage | Indication of how this preference is to be used. | [0..1] | vocabulary | required preferred optionallyUse notUse | preferred
1.1.1.3.2.2 | autoRate | The auto-repeat rate. | [0..1] | float | [0.0 - 1.0] where, 0.0 = "slow" 0.5 = "medium" 1.0 = "fast" | 0.5
1.1.1.3.2.2.1 | usage | Indication of how this preference is to be used. | [0..1] | vocabulary | required preferred optionallyUse notUse | preferred
1.1.1.4 | slowKeys | Specified that slow keys being used. | [1] | boolean |  | true
1.1.1.4.1 | usage | Indication of how this preference is to be used. | [0..1] | vocabulary | required preferred optionallyUse notUse | preferred
1.1.1.4.1 | slowKeysInterval | Specifies interval before a key press is detected. | [0..1] | float | [0.0 - 1.0] where, 0.0 = "slow" 0.5 = "medium" 1.0 = "fast" | 0.2
1.1.1.4.1.1 | usage | Indication of how this preference is to be used. | [0..1] | vocabulary | required preferred optionallyUse notUse | preferred
1.1.1.5 | debounce | Specifies that debouncing is being used to ignore multiple, rapid keystrokes on a single key. | [1] | boolean |  | false
1.1.1.5.1 | usage | Indication of how this preference is to be used. | [0..1] | vocabulary | required preferred optionallyUse notUse | preferred
1.1.1.5.2 | debounceInterval | If debounce is being used (see above), this sSpecifies the interval in seconds in during which repeated keystrokes presses of the same character key are ignored. | [0..1] | float | [0.0 - 5.0] | 0.5
1.1.1.5.2.1 | usage | Indication of how this preference is to be used. | [0..1] | vocabulary | required preferred optionallyUse notUse | preferred
1.1.2 | application | 1. Declare a specific technology that implements keyboard enhancements. 2. Optionally allow for additional settings for that specific technology. | [0..*] |  | Defined above. | -
1.2 | onscreenKeyboard | Virtual keyboard displayed on a screen used to control other applications. | [0..1] |  |  |
1.2.1 | onscreenKeyboardGeneric | Common settings for onscreen keyboards. | [1] |  |  |
1.2.1.1 | alphaLayoutInternal | Layout of the alphabetic keyboard. This element is mutually exclusive with alphaLayoutExternal | [0..1] | vocabulary | standard sequential frequency | standard
1.2.1.1.1 | usage | Indication of how this preference is to be used. | [0..1] | vocabulary | required preferred optionallyUse notUse | preferred
1.2.1.2 | alphaLayoutExternal | External file that describes the layout. This element is mutually exclusive with alphaLayoutInternal. | [0..1] | URI |  |
1.2.1.2.1 | usage | Indication of how this preference is to be used. | [0..1] | vocabulary | required preferred optionallyUse notUse | preferred
1.2.1.3 | pointAndClick | Selection method. User points toclicks an onscreen key and clicks on it. This element is mutually exclusive with pointAndDwell, autoScanning, inverseScanning, directedScanning, codeSelection. | [0..1] |  |  |
1.2.1.3.1 | usage | Indication of how this preference is to be used. | [0..1] | vocabulary | required preferred optionallyUse notUse | preferred
1.2.1.3.2 | switchDelay | Delay in seconds before recognizing a switch press. | [1] | float | [0.0 - 30.0] | 0
1.2.1.3.2.1 | usage | Indication of how this preference is to be used. | [0..1] | vocabulary | required preferred optionallyUse notUse | preferred
1.2.1.4 | pointAndDwell | Selection method. Hover over an onscreen key and dwell on it to select it. This element is mutually exclusive with pointAndClick, autoScanning, inverseScanning, directedScanning, codeSelection. | [0..1] |  |  |
1.2.1.4.1 | usage | Indication of how this preference is to be used. | [0..1] | vocabulary | required preferred optionallyUse notUse | preferred
1.2.1.4.2 | dwellTime | Time in seconds to dwell in order to deem that a selection has been made. This is required if directSelection is set to pointAndDwell and is ignored if not. | [1] | float | [0.0 - 3.0] | 0.5
1.2.1.4.2.1 | usage | Indication of how this preference is to be used. | [0..1] | vocabulary | required preferred optionallyUse notUse | preferred
1.2.1.5 | autoScanning | Selection method. Automatically scan keys on the keyboard. This element is mutually exclusive with pointAndClick, pointAndDwell, inverseScanning, directedScanning, codeSelection. | [0..1] |  |  |
1.2.1.5.1 | usage | Indication of how this preference is to be used. | [0..1] | vocabulary | required preferred optionallyUse notUse | preferred
1.2.1.5.1 | scanSpeed | Scanning speed in seconds before the system moves on to the next item or row. scanSpeed may not be less than scanSwitchDelay. | [1] | float | [0.0 - 30.0] | 0.0
1.2.1.5.1.1 | usage | Indication of how this preference is to be used. | [0..1] | vocabulary | required preferred optionallyUse notUse | preferred
1.2.1.5.2 | scanSwitchDelay | Delay in seconds before initiating scan. | [1] | float | [0.0 - 30.0] | 0.0
1.2.1.5.2.1 | usage | Indication of how this preference is to be used. | [0..1] | vocabulary | required preferred optionallyUse notUse | preferred
1.2.1.5.3 | switchType | Type of switch or port input used. | [1] | vocabulary | mouse game serial usb firewire infrared bluetooth | mouse
1.2.1.5.3.1 | usage | Indication of how this preference is to be used. | [0..1] | vocabulary | required preferred optionallyUse notUse | preferred
1.2.1.5.4 | autoScanInitDelay | Delay in seconds before initiating scan. | [1] | float | positive unbounded | 0.0
1.2.1.5.4.1 | usage | Indication of how this preference is to be used. | [0..1] | vocabulary | required preferred optionallyUse notUse | preferred
1.2.1.5.5 | autoScanRepeat | Number of times to repeat a row before escaping to a higher level and continuing the scan. | [1] | integer | [1 - 5] or "infinity" | 1
1.2.1.5.5.1 | usage | Indication of how this preference is to be used. | [0..1] | vocabulary | required preferred optionallyUse notUse | preferred
1.2.1.5.6 | switchAssignment | Responsibility of a numbered switch. Note: there must be one switchAssignment of value "select." | [1..*] | vocabulary | select cancel scan | select
1.2.1.5.6.1 | number | The switch number. | [1] | positive integer |  |
1.2.1.5.6.2 | usage | Indication of how this preference is to be used. | [0..1] | vocabulary | required preferred optionallyUse notUse | preferred
1.2.1.6 | inverseScanning | Selection method. Scan keys on the keyboard while a switch is engaged. This element is mutually exclusive with pointAndClick, pointAndDwell, autoScanning, directedScanning, codeSelection. | [0..1] |  |  |
1.2.1.6.1 | usage | Indication of how this preference is to be used. | [0..1] | vocabulary | required preferred optionallyUse notUse | preferred
1.2.1.6.1 | scanSpeed | Scanning speed in seconds before the system moves on to the next item or row. scanSpeed may not be less than scanSwitchDelay. | [1] | float | [0.0 - 30.0] | 0.0
1.2.1.6.1.1 | usage | Indication of how this preference is to be used. | [0..1] | vocabulary | required preferred optionallyUse notUse | preferred
1.2.1.6.2 | scanSwitchDelay | Delay in seconds before initiating scan. | [1] | float | [0.0 - 30.0] | 0.0
1.2.1.6.2.1 | usage | Indication of how this preference is to be used. | [0..1] | vocabulary | required preferred optionallyUse notUse | preferred
1.2.1.6.3 | switchType | Type of switch or port input used. | [1] | vocabulary | mouse game serial usb firewire infrared bluetooth | mouse
1.2.1.6.3.1 | usage | Indication of how this preference is to be used. | [0..1] | vocabulary | required preferred optionallyUse notUse | preferred
1.2.1.6.4 | dwellTime | Time in seconds to dwell in order to deem that a selection has been made. | [0..1] | float | [0.0 - 3.0] | 0.5
1.2.1.6.4.1 | usage | Indication of how this preference is to be used. | [0..1] | vocabulary | required preferred optionallyUse notUse | preferred
1.2.1.6.5 | switchAssignment | Responsibility of a numbered switch. Note: there must be one switchAssignment of value "scan." If no switchAssignment is of value "select," keys are selected by dwelling. | [1..*] | vocabulary | select cancel scan | select
1.2.1.6.5.1 | number | The switch number. | [1] | positive integer |  |
1.2.1.6.5.1.2 | usage | Indication of how this preference is to be used. | [0..1] | vocabulary | required preferred optionallyUse notUse | preferred
1.2.1.7 | directedScanning | Selection method. User directs the scanning with switches. This element is mutually exclusive with pointAndClick, pointAndDwell, autoScanning, inverseScanning, codeSelection. | [0..1] |  |  |
1.2.1.7.1 | usage | Indication of how this preference is to be used. | [0..1] | vocabulary | required preferred optionallyUse notUse | preferred
1.2.1.7.1 | scanSpeed | Scanning speed in seconds before the system moves on to the next item or row. scanSpeed may not be less than scanSwitchDelay. | [1] | float | [0.0 - 30.0] | 0.0
1.2.1.7.1.1 | usage | Indication of how this preference is to be used. | [0..1] | vocabulary | required preferred optionallyUse notUse | preferred
1.2.1.7.2 | scanSwitchDelay | Delay in seconds before initiating scan. | [1] | float | [0.0 - 30.0] | 0.0
1.2.1.7.2.1 | usage | Indication of how this preference is to be used. | [0..1] | vocabulary | required preferred optionallyUse notUse | preferred
1.2.1.7.3 | switchType | Type of switch or port input used. | [1] | vocabulary | mouse game serial usb firewire infrared bluetooth | mouse
1.2.1.7.3.1 | usage | Indication of how this preference is to be used. | [0..1] | vocabulary | required preferred optionallyUse notUse | preferred
1.2.1.7.4 | dwellTime | Time in seconds to dwell in order to deem that a selection has been made. | [0..1] | float | [0.0 - 3.0] | 0.5
1.2.1.7.4.1 | usage | Indication of how this preference is to be used. | [0..1] | vocabulary | required preferred optionallyUse notUse | preferred
1.2.1.7.5 | switchAssignment | Binding of a numbered switch. Note: there must be one switchAssignment defined for "scan" or two switchAssignment's defined for horizontal and vertical movement. If no switchAssignment is of value "select," keys are selected by dwelling. | [1..*] | vocabulary | select cancel right left up down horizontal vertical scan | select
1.2.1.7.5.1 | number | The switch number. | [1] | positive integer |  |
1.2.1.7.5.2 | usage | Indication of how this preference is to be used. | [0..1] | vocabulary | required preferred optionallyUse notUse | preferred
1.2.1.8 | codeSelection | Selection method. User controls the keyboard through input codes signaled through a switch. Note: If a user selects codeSelection, codedInput must also be present within the implementation and the codeSelection values are specified there. This element is mutually exclusive with pointAndClick, pointAndDwell, autoScanning, inverseScanning, directedScanning. | [0..1] | . |  |
1.2.1.9 | keyHeight | Key height as a percentage of the screen height. | [1] | float | [0.0 - 1.0] where 0.0 maps to 0% and 1.0 maps to 100%. | 0.03
1.2.1.9.1 | usage | Indication of how this preference is to be used. | [0..1] | vocabulary | required preferred optionallyUse notUse | preferred
1.2.1.10 | keyWidth | Key width as a percentage of screen width. | [1] | float | [0.0 - 1.0] where 0.0 maps to 0% and 1.0 maps to 100%. | 0.04
1.2.1.10.1 | usage | Indication of how this preference is to be used. | [0..1] | vocabulary | required preferred optionallyUse notUse | preferred
1.2.1.11 | keySpacing | Key spacing as a percentage of screen width. | [1] | float | [0.0 - 1.0] where 0.0 maps to 0% and 1.0 maps to 100%. | 0.0
1.2.1.11.1 | usage | Indication of how this preference is to be used. | [0..1] | vocabulary | required preferred optionallyUse notUse | preferred
1.2.1.12 | sound | Whether sound feedback is played when a key is selected. | [1] | boolean |  | true
1.2.1.12.1 | usage | Indication of how this preference is to be used. | [0..1] | vocabulary | required preferred optionallyUse notUse | preferred
1.2.2 | application | Declare a specific technology that implements an onscreen keyboard. Optionally allow for additional settings for that specific technology. | [0..*] |  | Defined above. | -
1.3 | alternativeKeyboard | Hardware that functions like a standard keyboard, but is a separate external device. | [0..1] |  |  |
1.3.1 | alternativeKeyboardGeneric | Common settings for alternative keyboards. | [1] |  |  |
1.3.1.1 | alphaLayoutInternal | Layout of the alphabetic keyboard. This element is mutually exclusive with alphaLayoutExternal. | [0..1] | vocabulary | standard sequential frequency | standard
1.3.1.1.1 | usage | Indication of how this preference is to be used. | [0..1] | vocabulary | required preferred optionallyUse notUse | preferred
1.3.1.2 | alphaLayoutExternal | External file that describes the layout. This element is mutually exclusive with alphaLayoutInternal. | [0..1] | URI |  | -
1.3.1.2.1 | usage | Indication of how this preference is to be used. | [0..1] | vocabulary | required preferred optionallyUse notUse | preferred
1.3.1.2 | stickyKeys | Modifier keys, such as shift, stick when pressed. | [1] | boolean |  | true
1.3.1.2.1 | usage | Indication of how this preference is to be used. | [0..1] | vocabulary | required preferred optionallyUse notUse | preferred
1.3.1.3 | repeatKeys | Sets whether keys auto-repeat when held down. | [1] | boolean |  | true
1.3.1.3.1 | usage | Indication of how this preference is to be used. | [0..1] | vocabulary | required preferred optionallyUse notUse | preferred
1.3.1.3.2 | autoRepeatDelay | If repeat-keys is on, time before auto-repeat engages. | [0..1] | float | [0.0 - 1.0] where, 0.0 = "short" 0.5 = "medium" 1.0 = "long" | 0.5
1.3.1.3.2.1 | usage | Indication of how this preference is to be used. | [0..1] | vocabulary | required preferred optionallyUse notUse | preferred
1.3.1.3.3 | autoRepeatRate | Auto-repeat rate. | [0..1] | float | [0.0 - 1.0] where, 0.0 = "slow" 0.5 = "medium" 1.0 = "fast" | 0.5
1.3.1.3.3.1 | usage | Indication of how this preference is to be used. | [0..1] | vocabulary | required preferred optionallyUse notUse | preferred
1.3.1.4 | slowKeys | Specifies that slow keys are used. | [1] | boolean |  | true
1.3.1.4.1 | usage | Indication of how this preference is to be used. | [0..1] | vocabulary | required preferred optionallyUse notUse | preferred
1.3.1.4.2 | slowKeysInterval | Specifies how longtime before a key press is detected. | [0..1] | float | [0.0 - 1.0] where, 0.0 = "slow" 0.5 = "medium" 1.0 = "fast" | 0.2
1.3.1.4.2.1 | usage | Indication of how this preference is to be used. | [0..1] | vocabulary | required preferred optionallyUse notUse | preferred
1.3.1.5 | debounce | Specifies that multiple, rapid strokes of a single key are ignored. | [1] | boolean |  | false
1.3.1.5.1 | usage | Indication of how this preference is to be used. | [0..1] | vocabulary | required preferred optionallyUse notUse | preferred
1.3.1.5.2 | debounceInterval | Specifies the interval in seconds in during which repeated keystrokes of the same character are ignored. | [0..1] | float | [0.0 - 5.0] | 0.5
1.3.1.5.2.1 | usage | Indication of how this preference is to be used. | [0..1] | vocabulary | required preferred optionallyUse notUse | preferred
1.3.1.6 | resizableKeys | This element is true if the alternative keyboard is resizable (such as a membrane keyboard). Otherwise, false. | [1] | boolean |  | false
1.3.1.6.1 | usage | Indication of how this preference is to be used. | [0..1] | vocabulary | required preferred optionallyUse notUse | preferred
1.3.1.6.2 | keyWidth | Width of key in millimeters. | [0..1] | positive integer |  | 10
1.3.1.6.2.1 | usage | Indication of how this preference is to be used. | [0..1] | vocabulary | required preferred optionallyUse notUse | preferred
1.3.1.6.3 | keyHeight | Height of key in millimeters. | [0..1] | integer | [1 - 100] | 10
1.3.1.6.3.1 | usage | Indication of how this preference is to be used. | [0..1] | vocabulary | required preferred optionallyUse notUse | preferred
1.3.1.6.4 | keySpacing | Space between keys in millimeters. | [0..1] | integer | [0 - 100] | 0
1.3.1.6.41 | usage | Indication of how this preference is to be used. | [0..1] | vocabulary | required preferred optionallyUse notUse | preferred
1.3.2 | application | Declare a specific technology that implements an alternative keyboard. Optionally allow for additional settings for that specific technology. | [0..*] |  | Defined above. |
1.4 | mouseEmulation | Replacement for a standard mouse, such as a keyboard, voice recognition, switch, or other non-pointing device. | [0..1] |  |  |
1.4.1 | mouseEmulationGeneric | Common settings for mouse emulators. | [1] |  |  |
1.4.1.1 | speed | Speed at which the mouse cursor moves across the screen. | [1] | float | [0.0 - 1.0] where, 0.0 = "slow" 0.5 = "medium" 1.0 = "fast" | 0.5
1.4.1.1.1 | usage | Indication of how this preference is to be used. | [0..1] | vocabulary | required preferred optionallyUse notUse | preferred
1.4.1.2 | acceleration | Initial acceleration of the mouse cursor from rest to its closing speed. | [1] | float | [0.0 - 1.0] where, 0.0 = "slow" 0.5 = "medium" 1.0 = "fast" | 0.5
1.4.1.2.1 | usage | Indication of how this preference is to be used. | [0..1] | vocabulary | required preferred optionallyUse notUse | preferred
1.4.1.3 | device | What to use to emulate the mouse. Single switches can be used to iteratively scan and select a point on the display. | [1] | vocabulary | keypad keyboard switch voice | keypad
1.4.1.3.1 | usage | Indication of how this preference is to be used. | [0..1] | vocabulary | required preferred optionallyUse notUse | preferred
1.4.2 | application | Declare a specific technology that implements a mouse emulator. Optionally allow for additional settings for that specific technology. | [0..*] |  | Defined above. |
1.5 | alternativePointing | Technology that replaces the mouse with a different pointing device, such as a trackball or eyegaze tracker. | [0..1] |  |  |
1.5.1 | alternativePointingGeneric | Common settings for alternative pointing devices. | [1] |  |  |
1.5.1.1 | relativePointing | Settings for a relative pointing device. This element is mutually exclusive with absolutePointing. | [0..1] |  |  |
1.5.1.1.1 | speed | Speed at which the pointing device cursor moves across the screen. | [1] | float | [0.0 - 1.0] where, 0.0 = "slow" 0.5 = "medium" 1.0 = "fast" | 0.5
1.5.1.1.1.1 | usage | Indication of how this preference is to be used. | [0..1] | vocabulary | required preferred optionallyUse notUse | preferred
1.5.1.1.2 | acceleration | Initial acceleration of the mouse cursor from rest to its closing speed. | [1] | float | [0.0 - 1.0] where, 0.0 = "slow" 0.5 = "medium" 1.0 = "fast" | 0.5
1.5.1.1.2.1 | usage | Indication of how this preference is to be used. | [0..1] | vocabulary | required preferred optionallyUse notUse | preferred
1.5.1.1 | absolutePointing | Use an absolute pointing device, not a relative one. This element is mutually exclusive with relativePointing. | [0..1] |  |  |
1.5.1.2 | handedness | Specifies left-handed or right-handed device. | [1] | vocabulary | left right | right
1.5.1.2.1 | usage | Indication of how this preference is to be used. | [0..1] | vocabulary | required preferred optionallyUse notUse | preferred
1.5.1.3 | doubleClickSpeed | clickSpeed at which two successive clicks must occur in order to be registered as a double click. | [1] | float | [0.1 - 1.0] | 0.4
1.5.1.3.1 | usage | Indication of how this preference is to be used. | [0..1] | vocabulary | required preferred optionallyUse notUse | preferred
1.5.1.4 | buttonAssignmentExternal | Button assignment for the device as fetched from a file. This element is mutually exclusive with buttonAssignmentInternal | [0..1] | URI |  | -
1.5.1.4.1 | usage | Indication of how this preference is to be used. | [0..1] | vocabulary | required preferred optionallyUse notUse | preferred
1.5.2 | application | Declare a specific technology that implements an alternative pointing device. Optionally allow for additional settings for that specific technology. | [0..*] |  | Defined above. | -
1.6 | voiceRecognition | Control settings for spoken commands and dictation. | [0..1] |  |  |
1.6.1 | voiceRecognitionGeneric | Generic setttings for voice recognition. | [1] |  |  |
1.6.1.1 | microphoneGain | Sensitivity of the microphone. | [1] | float | [0.0 - 1.0] where, 0.0 = "low" 0.5 = "medium" 1.0 = "high" | 0.5
1.6.1.1.1 | usage | Indication of how this preference is to be used. | [0..1] | vocabulary | required preferred optionallyUse notUse | preferred
1.6.1.2 | controlsWindow | Show or hide a controller window. | [1] | boolean |  | true
1.6.1.2.1 | usage | Indication of how this preference is to be used. | [0..1] | vocabulary | required preferred optionallyUse notUse | preferred
1.6.1.3 | dictation | Specifies whether or not dictation is in use. | [1] | boolean |  | false
1.6.1.3.1 | usage | Indication of how this preference is to be used. | [0..1] | vocabulary | required preferred optionallyUse notUse | preferred
1.6.1.3.2 | voiceProfileExternal | Optional external user defined voice profile file. | [0..1] | URI |  |
1.6.1.3.2.1 | usage | Indication of how this preference is to be used. | [0..1] | vocabulary | required preferred optionallyUse notUse | preferred
1.6.1.4 | commandControl | Specifies whether or not voice recognition is able to control the system through commands to it. Command and control settings: context, confirmation feedback, and mouse control. | [1] | boolean |  | false
1.6.1.4.1 | usage | Indication of how this preference is to be used. | [0..1] | vocabulary | required preferred optionallyUse notUse | preferred
1.6.1.4.2 | vocabulary | Default vocabulary for commands. | [0..1] | vocabulary | context natural | context
1.6.1.4.2.1 | usage | Indication of how this preference is to be used. | [0..1] | vocabulary | required preferred optionallyUse notUse | preferred
1.6.1.4.3 | feedback | Confirmation feedback (audio) for recognized commands. | [0..1] | boolean |  | true
1.6.1.4.3.1 | usage | Indication of how this preference is to be used. | [0..1] | vocabulary | required preferred optionallyUse notUse | preferred
1.6.1.4.4 | mouse | Use commands to control the mouse. | [0..1] | boolean |  | true
1.6.1.4.4.1 | usage | Indication of how this preference is to be used. | [0..1] | vocabulary | required preferred optionallyUse notUse | preferred
1.6.2 | application | Declare a specific technology that implements voice recognition. Optionally allow for additional settings for that specific technology. | [0..*] |  | Defined above. |
1.7 | codedInput | Control methods that use a code to select the desired input. | [0..1] |  |  |
1.7.1 | code | Code used to represent possible inputs | [1] | vocabulary | morse quartering eightCell chordic | morse
1.7.1.1 | usage | Indication of how this preference is to be used. | [0..1] | vocabulary | required preferred optionallyUse notUse | preferred
1.7.2 | codeSwitchNumber | Number of switches or keys available to enter the code. | [1] | integer | [1 - 150] | 2
1.7.2.1 | usage | Indication of how this preference is to be used. | [0..1] | vocabulary | required preferred optionallyUse notUse | preferred
1.7.3 | codeTermination | Signal at the end of a code for variable-length codes. | [1] | vocabulary | switch timed | switch
1.7.3.1 | usage | Indication of how this preference is to be used. | [0..1] | vocabulary | required preferred optionallyUse notUse | preferred
1.7.3.2 | codeRate | When code termination is timed, the time available to enter the code. This is only applicable when the code termination is "timed." | [0..1] | float | [0.5 - 20] | 3
1.7.3.2.1 | usage | Indication of how this preference is to be used. | [0..1] | vocabulary | required preferred optionallyUse notUse | preferred
1.7.4 | codeSelect | When code is entered using on-screen keys, selects whether keys are selected by pointing and dwelling or pointing and activating the switch | [1] | vocabulary | pointAndDwell pointAndClick | pointAndClick
1.7.4.1 | usage | Indication of how this preference is to be used. | [0..1] | vocabulary | required preferred optionallyUse notUse | preferred
1.7.5 | switchType | Type of switch or port input used. | [1] | vocabulary | mouse game serial usb firewire infrared bluetooth | mouse
1.7.5.1 | usage | Indication of how this preference is to be used. | [0..1] | vocabulary | required preferred optionallyUse notUse | preferred
1.7.6 | codeExternal | A user defined code scheme. This element is mutually exclusive with code. | [0..1] | URI |  |
1.7.6.1 | usage | Indication of how this preference is to be used. | [0..1] | vocabulary | required preferred optionallyUse notUse | preferred
1.8 | prediction | Control enhancements in which the system predicts and/or completes user input. | [0..1] |  |  |
1.8.1 | wordPrediction | Use word prediction. | [1] | boolean |  | false
1.8.1.1 | usage | Indication of how this preference is to be used. | [0..1] | vocabulary | required preferred optionallyUse notUse | preferred
1.8.2 | wordCompletionPrediction | Use word completion prediction. | [1] | boolean |  | false
1.8.2.1 | usage | Indication of how this preference is to be used. | [0..1] | vocabulary | required preferred optionallyUse notUse | preferred
1.8.3 | commandPrediction | Use command prediction. | [1] | boolean |  | false
1.8.3.1 | usage | Indication of how this preference is to be used. | [0..1] | vocabulary | required preferred optionallyUse notUse | preferred
1.8.4 | numberChoicesDisplayed | Number of predicted words to display. | [1] | integer | [1 - 20] | 5
1.8.4.1 | usage | Indication of how this preference is to be used. | [0..1] | vocabulary | required preferred optionallyUse notUse | preferred
1.8.5 | personalLexicon | Optional external user defined personal lexicon file. | [0..1] | URI |  |
1.8.5.1 | usage | Indication of how this preference is to be used. | [0..1] | vocabulary | required preferred optionallyUse notUse | preferred
1.9 | structuralNavigation | Settings related to navigational controls. | [0..1] |  |  |
1.9.1 | navigationDepth | How the focus moves through navigation entries. | [0..1] | vocabulary | breadthFirst depthFirst | depthFirst
1.9.1.1 | usage | Indication of how this preference is to be used. | [0..1] | vocabulary | required preferred optionallyUse notUse | preferred
1.9.2 | useTableOfContents | Use a table of contents for navigation | [0..1] | boolean |  | true
1.9.2.1 | usage | Indication of how this preference is to be used. | [0..1] | vocabulary | required preferred optionallyUse notUse | preferred
1.10 | futureTechnology | Allows for extensibility. Use to declare settings for future display technologies. | [0..*] |  |  |
1.10.1 | application | Declare a specific future technology. Optionally allow for additional settings for that technology. | [0..*] |  | Defined above. |

### 2.2.7 The <content> Information Model

The <content> element allows preferences for content attributes. In general, these are paired with meta-data information associated with the content to enable searches for content with appropriate accessibility support.

No. | Name | Description | Mult | Data Type | Value Space | Default Value
--- | --- | --- | --- | --- | --- | ---
1 | content | Preferences regarding the content, specifying any desired transformations or enhancements. | [0..1] |  |  |
1.1 | alternativesToVisual | Modality preference. How to present visual content in a different modality. | [0..1] |  |  |
1.1.1 | audioDescription | Audio descriptions of visual elements | [0..1] | vocabulary | standard expanded | standard
1.1.1.1 | xml:lang | Language to use for long descriptions | [0..1] | xml:lang | ISO Language Code | en
1.1.1.2 | usage | Indication of how this preference is to be used. | [0..1] | vocabulary | required preferred optionallyUse notUse | preferred
1.1.2 | altTextLang | Language to use for alt text. | [0..1] | xml:lang | ISO Language Code | en
1.1.2.1 | usage | Indication of how this preference is to be used. | [0..1] | vocabulary | required preferred optionallyUse notUse | preferred
1.1.3 | longDescriptionLang | Language to use for long descriptions | [0..1] | xml:lang | ISO Language Code | en
1.1.3.1 | usage | Indication of how this preference is to be used. | [0..1] | vocabulary | required preferred optionallyUse notUse | preferred
1.1.4 | colorAvoidance | Preferences regarding the use of color in display of information. | [0..1] |  |  |
1.1.4.1 | avoidRed | Avoid the use of red to highlight information. | [0..1] | boolean |  | false
1.1.4.1.1 | usage | Indication of how this preference is to be used. | [0..1] | vocabulary | required preferred optionallyUse notUse | preferred
1.1.4.2 | avoidRedGreen | Avoid the use of red and green to display information. | [0..1] | boolean |  | false
1.1.4.2.1 | usage | Indication of how this preference is to be used. | [0..1] | vocabulary | required preferred optionallyUse notUse | preferred
1.1.4.3 | avoidBlueYellow | Avoid the use of blue and yellow to display information. | [0..1] | boolean |  | false
1.1.4.3.1 | usage | Indication of how this preference is to be used. | [0..1] | vocabulary | required preferred optionallyUse notUse | preferred
1.1.4.4 | avoidGreenYellow | Avoid the use of green and yellow to display information. | [0..1] | boolean |  | false
1.1.4.4.1 | usage | Indication of how this preference is to be used. | [0..1] | vocabulary | required preferred optionallyUse notUse | preferred
1.1.4.5 | avoidOrange | Avoid the use of orange to display information | [0..1] | boolean |  | false
1.1.4.5.1 | usage | Indication of how this preference is to be used. | [0..1] | vocabulary | required preferred optionallyUse notUse | preferred
1.1.4.6 | avoidRedBlack | Avoid the use of red and black to display information | [0..1] | boolean |  | false
1.1.4.6.1 | usage | Indication of how this preference is to be used. | [0..1] | vocabulary | required preferred optionallyUse notUse | preferred
1.1.4.7 | avoidPurpleGray | Avoid the use of purple and gray to display information. | [0..1] | boolean |  | false
1.1.4.7.1 | usage | Indication of how this preference is to be used. | [0..1] | vocabulary | required preferred optionallyUse notUse | preferred
1.1.4.8 | useMaximumContrastMonochrome | Use monochromatic displays at maximum contrast. | [0..1] | boolean |  | false
1.1.4.8.1 | usage | Indication of how this preference is to be used. | [0..1] | vocabulary | required preferred optionallyUse notUse | preferred
1.2 | alternativesToText | Modality preference. How to present textual content in a different modality. | [0..1] |  |  |
1.2.1 | graphicAlternative | Use a graphic alternative if available | [0..1] | boolean |  | false
1.2.1.1 | usage | Indication of how this preference is to be used. | [0..1] | vocabulary | required preferred optionallyUse notUse | preferred
1.2.2 | signLanguage | Language to use for sign language alternatives | [0..*] | vocabulary | American-ASL Australian- Auslan Austrian-ASQ British-BSL Danish-DSL French-LSF German-DGS Irish-ISL Italian-LIS Japanese-JSL Malaysian-MSL Mexican-LSM Native-American Netherlands-NGT Norwegian-NSL Quebec-LSQ Russian-RSL Singapore-SLS Spanish-LSE Swedish-SWL other | -
1.2.2.1 | usage | Indication of how this preference is to be used. | [0..1] | vocabulary | required preferred optionallyUse notUse | preferred
1.3 | alternativesToAuditory | How to present auditory content in a different modality. | [0..1] |  |  |
1.3.1 | captionType | What form of text caption is preferred. | [0..*] |  |  |
1.3.1.1 | usage | Indication of how this preference is to be used. | [0..1] | vocabulary | required preferred optionallyUse notUse | preferred
1.3.1.2 | verbatim | Enable verbatim captions which include descriptions of sound effects. Mutually exclusive with reducedReadingLevel | [0..1] | boolean |  | true
1.3.1.2.1 | usage | Indication of how this preference is to be used. | [0..1] | vocabulary | required preferred optionallyUse notUse | preferred
1.3.1.3 | reducedReadingLevel | Reduce the reading level. Mutually exclusive with verbatim | [0..1] | boolean |  | false
1.3.1.3.1 | usage | Indication of how this preference is to be used. | [0..1] | vocabulary | required preferred optionallyUse notUse | preferred
1.3.1.4 | reducedSpeed | Reduce the speed of captions as expressed in a words -per -minute 'value' rate. | [0..1] | boolean |  | false
1.3.1.4.1 | usage | Indication of how this preference is to be used. | [0..1] | vocabulary | required preferred optionallyUse notUse | preferred
1.3.1.4.2 | captionRate | Reduced rate of captions. | [0..1] | integer | [1 - 300] | 120
1.3.1.4.2.1 | usage | Indication of how this preference is to be used. | [0..1] | vocabulary | required preferred optionallyUse notUse | preferred
1.3.1.5 | enhancedCaption | Enhance the captions to include more information. This includes the use of video layers to provide information about the paralinguistic content of speech, music, and other non-speech sounds. | [0..1] | boolean |  | false
1.3.1.5.1 | usage | Indication of how this preference is to be used. | [0..1] | vocabulary | required preferred optionallyUse notUse | preferred
1.3.2 | signLanguage | Language to use for sign language alternatives | [0..*] | vocabulary | American-ASL Australian-Auslan Austrian-ASQ British-BSL Danish-DSL French-LSF German-DGS Irish-ISL Italian-LIS Japanese-JSL Malaysian-MSL Mexican-LSM Native-American Norwegian-NSL Russian-RSL Quebec-LSQ Singapore-SLS Netherlands-NGT Spanish-LSE Swedish-SWL other | -
1.3.2.1 | usage | Indication of how this preference is to be used. | [0..1] | vocabulary | required preferred optionallyUse notUse | preferred
1.4 | learnerScaffold | Analogous to a bookbag, a scaffold is a place to carry common tools. | [0..*] | vocabulary | dictionary calculator noteTaking peerInteraction abacus thesaurus spellChecker homophoneChecker mindMappingSoftware outlineTool |
1.4.1 | usage | Indication of how this preference is to be used. | [0..1] | vocabulary | required preferred optionallyUse notUse | preferred
1.5 | personalStylesheet | URI to a style sheet | [0..1] | URI |  |
1.5.1 | usage | Indication of how this preference is to be used. | [0..1] | vocabulary | required preferred optionallyUse notUse | preferred
1.6 | extraTime | Allows the user to request extra time when viewing content or responding to requests for information, such as during a test. Expressed as a multiplier of the time allowed. | [0..1] | float | [0.0 - 10.0] | 1.0
1.6.1 | usage | Indication of how this preference is to be used. | [0..1] | vocabulary | required preferred optionallyUse notUse | preferred
1.7 | futureTechnology | Allows for extensibility. Use to declare settings for future content options. | [0..1] |  |  |
1.7.1 | param | Name/value pair for specifying a setting for a specific technology. These values are understood only by their corresponding applications. | [0..1] |  |  |
1.7.1.1 | name | A technology specific parameter name. | [1] | string |  |
1.7.1.2 | value | A technology specific parameter value. | [0..1] | string |  |

## 2.3 Changes to the <eligibility> Element

The <accommodation> element defined below extends the <eligibility> element previously defined by the IMS LIP. The <accommodation> element allows one to specify accommodations for which a learner is eligible when using a learning object, particularly a test. This can be important as an accommodation made to enhance accessibility can inhibit the learning object from fulfilling its intended purpose or its benefit for the learner. (For example, the use of a spell checker as an accommodation would likely prevent a test of spelling from fulfilling its intended purpose.) Testing accommodations are generally approved in advance of administering the test. This model includes an element called <requestForAccommodations> which stores the student's request, and a separate element called <accommodationDescription> which stores information about the accommodations that the authorizer has agreed to; them may be the same as or different from the request.

The <accommodation> element within the <eligibility> element contains any number of "accommodation packages," that provide information such as descriptions of the learning object; accommodations the learner is permitted to use with the learning object; who authorized the accommodations; the request for accommodation, which generally precedes authorization; and the name of the person or entity that authorized the accommodations.

No. | Name | Description | Mult | Data Type | Value Space | Default Value
--- | --- | --- | --- | --- | --- | ---
1 | accommodation | Authorized accommodations associated with this learner. | [0..1] |  |  | -
1.1 | accommodationPackage | An instance of accommodation for a learning object. | [0..*] |  |  |
1.1.1 | learningObjectDescription | Description of the learning object. This might consist, for example, of a description of the test, test section, or instructional module: "XYZ Test of Math version 2.0 - Reasoning section," "ABC Database Certification Examination - Level 1." | [1] | string | learning object description |
1.1.2 | requestForAccommodations | Request for accommodations. This consists of text encompassing one or both of the following: (1) a reference or pointer to the request and its supporting documentation (e.g., a case number); (2) a description of the request, with or without supporting documentation. | [0..1] | string | request description | -
1.1.3 | accommodationDescription | Text description of the allowed accommodation. | [1] | string | accommodation description. | -
1.1.4 | authorizedBy | Name of the person or entity that has authorized the accommodations. | [1] | string | the name of a person or organization | -
1.1.5 | authorizedDate | Date of authorization in ISO-8601 format. | [1] | string | a date string | -
1.1.6 | expirationDate | Expiration date of this authorization in ISO-8601 format. | [1] | string | a date string | -

# 3. Object Model for Accessibility Preferences

The accessForAll Object model consists of a set of objects that serve as hierarchical containers corresponding to the structure defined by the ACCLIP Information Model. Roughly, these containers are accessForAll (the root), context, display, control, content, and preference-group classes.

The following diagram shows the full set of classes defined for accessibility preferences (accessForAll):

Three access methods are defined for retrieving specific preference data: aggregated XML text, path-based access, and method-based access. The XML and path methods do not require full accessForAll class implementation since needed information can be extracted from internal XML representations. Interface specifics are determined by an implementation binding.

## 3.1 Path Specification

Specific accessibility preferences can be identified by a path through the ACCLIP information model hierarchy. The syntax of this path description is determined by an implementation binding. Examples include CMI data model paths and XPath.

## 3.2 Error Definition

The following errors are defined for accessibility preference access. These errors are abstract entities which are bound to a particular error reporting mechanism such as exception handling, error codes, etc.

Name | Description
--- | ---
ACCLIP_XML_INVALID | The XML string passed does not validate against the ACCLIP schema binding.
ACCLIP_XML_NOT_FOUND | The requested XML is not present.
ACCLIP_CONTEXT_NOT_FOUND | There is no context of the given ID present.
ACCLIP_PREF_NOT_FOUND | The requested preference is not present.
ACCLIP_INVALID_PATH | The path specification is syntactically invalid.
ACCLIP_CONTEXT_DUPLICATE | A context object of this ID is already present in the contexts list.
ACCLIP_DATA_INVALID | Data supplied is invalid or not of the right type for this preference.
ACCLIP_LANG_NOT_FOUND | No language attribute was defined.
ACCLIP_LANG_INVALID | Invalid language code supplied
ACCLIP_OBJECT_NOT_FOUND | The technology preference specified was not found.
ACCLIP_DATA_NOT_FOUND | The preference value specified was not found.
ACCLIP_DATA_OUT_OF_BOUND | The value specified exceeds the boundaries specified by the ACCLIP Information Model.

## 3.3 accessForAll Class

The accessForAll class serves as the root container for accessibility preferences. In a full implementation of a Learner Information Profile manager, this class would be instantiated as an object containing all of the preferences created by the learner grouped by context.

### 3.3.1 Data Structures

Data Type | Name
--- | ---
array of context objects | context
a context object | activeContext

The accessForAll class must contain a list of all defined preference contexts. While this list is generally unordered, the first context (context[0]) is designated as the default context to use.

### 3.3.2 Methods

Method Name | Input | Output
--- | --- | ---
read |  | xmlString
write | xmlString |
getContext | contextID | context
addContext | context |
removeContext | context |
getViaPath | path | paramString
setViaPath | path, paramString |
getActiveContext |  | context
setActiveContext | context |
getDefaultContext |  | context
setDefaultContext | context |

#### 3.3.2.1 accessForAll.read

Return a complete accessForAll XML string. This string should be fully formatted to be a standalone XML document and may be used as an interchange file.

ACCLIP_XML_NOT_FOUND

#### 3.3.2.2 accessForAll.write

Write or replace the XML associated with this accessForAll object. If sub-objects are present in the implementation, parsed context sections must be passed to context.write() in order to update lower level preference instantiations.

ACCLIP_XML_INVALID

#### 3.3.2.3 accessForAll.getContext

Takes a context ID string and finds the corresponding context object in the contexts list and returns it.

ACCLIP_CONTEXT_NOT_FOUND

#### 3.3.2.4 accessForAll.addContext

Takes a context object and adds it to the contexts list.

ACCLIP_CONTEXT_DUPLICATE

#### 3.3.2.5 accessForAll.removeContext

Remove the indicated context from the contexts list.

ACCLIP_CONTEXT_NOT_FOUND

#### 3.3.2.6 accessForAll.getViaPath

Find the specification specified by the path and return it.

ACCLIP_PREF_NOT_FOUND

ACCLIP_PATH_INVALID

#### 3.3.2.7 accessForAll.setViaPath

Add or replace the preference specified by the path. If intermediate containers or objects are needed, they are created.

ACCLIP_PATH_INVALID

ACCLIP_DATA_INVALID

#### 3.3.2.8 accessForAll.getActiveContext

Return the active context.

ACCLIP_CONTEXT_NOT_FOUND

#### 3.3.2.9 accessForAll.setActiveContext

Set the supplied context to be the active one.

#### 3.3.2.10 accessForAll.getDefaultContext

Return the default context.

ACCLIP_CONTEXT_NOT_FOUND

#### 3.3.2.11 accessForAll.setDefaultContext

Set the supplied context to be the default one.

## 3.4 Context Class

The context class allows a set of preferences to be identified in a unique manner. A context allows learners to have preferences which depend on external factors such as time of day, current location, learning or work style, etc.

### 3.4.1 Data Structures

Data Type | Name
--- | ---
string | lang
string | id
uriString | externalURI
a display object | display
a control object | control
a content object | content

The context class must contain an identifier which is locally unique (within this learner's preferences). A language may be specified. If so, this is the user's default and preferred language to use. A context may define externally. If so, its location is contained in externalURI. Each context serves as a container for display, control, and content preference groups. These objects may be created when the context is created.

### 3.4.2 Methods

Method Name | Input | Output
--- | --- | ---
read |  | xmlString
write | xmlString |
getLang |  | string
setLang | string |
getDisplay |  | display
getControl |  | control
getContent |  | content
getViaPath | path | paramString
setViaPath | path, paramString |

#### 3.4.2.1 context.read

Return a partial XML string.

ACCLIP_XML_NOT_FOUND

#### 3.4.2.2 context.write

Write or replace the XML associated with this accessForAll object. If sub-objects are present in the implementation, parsed context sections must be passed to context.write() in order to update lower level preference instantiations.

ACCLIP_XML_INVALID

#### 3.4.2.3 context.getLang

Return the language attribute associated with this context.

ACCLIP_LANG_NOT_FOUND

#### 3.4.2.4 context.setLang

Set a language attribute to be associated with this context.

ACCLIP_LANG_INVALID

#### 3.4.2.5 context.getDisplay

Return the display group preference object.

#### 3.4.2.6 context.getControl

Return the control group preference object.

#### 3.4.2.7 context.getContent

Return the content group preference object.

#### 3.4.2.8 context.getViaPath

Find the specification specified by the path and return it.

ACCLIP_PREF_NOT_FOUND

ACCLIP_PATH_INVALID

#### 3.4.2.9 context.setViaPath

Add or replace the preference specified by the path. If intermediate containers or objects are needed, they are created.

ACCLIP_PATH_INVALID

ACCLIP_DATA_INVALID

## 3.5 Display Class

The display class provides a way to group preferences concerning display aspects together. Some or all sub-groups may be present to include preferences for particular technology areas.

### 3.5.1 Data Structures

Data Type | Name
--- | ---
a screenReader object | screenReader
a screenEnhance object | screenEnhance
a textReadingHighlight object | textReadingHighlight
a braille object | braille
a tactile object | tactile
a visualAlert object | visualAlert
a structuralPresentation object | structuralPresentation

Seven technology groups are represented. Each of these abstract objects are further defined by a binding.

### 3.5.2 Methods

Method Name | Input | Output
--- | --- | ---
read |  | xmlString
write | xmlString |
getScreenReader |  | screenReader
setScreenReader | screenReader |
getScreenEnhance |  | screenEnhance
setScreenEnhance | screenEnhance |
getTextReadingHighlight |  | textReadingHighlight
setTextReadingHighlight | textReadingHighlight |
getBraille |  | braille
setBraille | braille |
getTactile |  | tactile
setTactile | tactile |
getVisualAlert |  | visualAlert
setVisualAlert | visualAlert |
getStructuralPresentation |  | structuralPresentation
setStructuralPresentation | structuralPresentation |
getViaPath | path | paramString
setViaPath | path, paramString |

#### 3.5.2.1 display.read

Return a complete a partial XML string.

ACCLIP_XML_NOT_FOUND

#### 3.5.2.2 display.write

Write or replace the XML associated with this accessForAll object. If sub-objects are present in the implementation, parsed display sections must be passed to display.write() in order to update lower level preference instantiations.

ACCLIP_XML_INVALID

#### 3.5.2.3 display.getScreenReader

Return the screenReader object.

ACCLIP_OBJECT_NOT_FOUND

#### 3.5.2.4 display.setScreenReader

Add or replace the screenReader object.

#### 3.5.2.5 display.getScreenEnhance

Return the screenEnhance object.

ACCLIP_OBJECT_NOT_FOUND

#### 3.5.2.6 display.setScreenEnhance

Add or replace the screenEnhance object.

#### 3.5.2.7 display.getTextReadingHighlight

Return the textReadingHighlight object.

ACCLIP_OBJECT_NOT_FOUND

#### 3.5.2.8 display.setTextReadingHighlight

Add or replace the textReadingHighlight object.

#### 3.5.2.9 display.getBraille

Return the braille object.

ACCLIP_OBJECT_NOT_FOUND

#### 3.5.2.10 display.setBraille

Add or replace the braille object.

#### 3.5.2.11 display.getTactile

Return the tactile object.

ACCLIP_OBJECT_NOT_FOUND

#### 3.5.2.12 display.setTactile

Add or replace the tactile object.

#### 3.5.2.13 display.getVisualAlert

Return the visualAlert object.

ACCLIP_OBJECT_NOT_FOUND

#### 3.5.2.14 display.setVisualAlert

Add or replace the visualAlert object.

#### 3.5.2.15 display.getStructuralPresentation

Return the structuralPresentation object.

ACCLIP_OBJECT_NOT_FOUND

#### 3.5.2.16 display.setStructuralPresentation

Add or replace the structuralPresentation object.

#### 3.5.2.17 display.string getViaPath

Find the specification specified by the path and return it.

ACCLIP_PREF_NOT_FOUND

ACCLIP_PATH_INVALID

#### 3.5.2.18 display.setViaPath

Add or replace the preference specified by the path. If intermediate containers or objects are needed, they are created.

ACCLIP_PATH_INVALID

ACCLIP_DATA_INVALID

## 3.6 Control Class

The control class provides a way to group preferences concerning control aspects together. Some or all sub-groups may be present to include preferences for particular technology areas.

### 3.6.1 Data Structures

Data Type | Name
--- | ---
a keyboardEnhanced object | keyboardEnhanced
an onscreenKeyboard object | onscreenKeyboard
an alternativeKeyboard object | alternativeKeyboard
a mouseEmulation object | mouseEmulation
an alternativePointing object | alternativePointing
a voiceRecognition object | voiceRecognition
a structuralNavigation object | structuralNavigation
a codedInput object | codedInput

Eight technology groups are represented. Each of these abstract objects are further defined by a binding.

### 3.6.2 Methods

Method Name | Input | Output
--- | --- | ---
read |  | xmlString
write | xmlString |
getKeyboardEnhanced |  | keyboardEnhanced
setKeyboardEnhanced | keyboardEnhanced |
getOnscreenKeyboard |  | onscreenKeyboard
setOnscreenKeyboard | onscreenKeyboard |
getAlternativeKeyboard |  | alternativeKeyboard
setAlternativeKeyboard | alternativeKeyboard |
getMouseEmulation |  | mouseEmulation
setMouseEmulation | mouseEmulation |
getAlternativePointing |  | alternativePointing
setAlternativePointing | alternativePointing |
getVoiceRecognition |  | voiceRecognition
setVoiceRecognition | voiceRecognition |
getStructuralNavigation |  | structuralNavigation
setStructuralNavigation | structuralNavigation |
getCodedInput |  | codedInput
setCodedInput | codedInput |
getViaPath | path | paramString
setViaPath | path, paramString |

#### 3.6.2.1 control.read

Return a complete a partial XML string.

ACCLIP_XML_NOT_FOUND

#### 3.6.2.2 control.write

Write or replace the XML associated with this accessForAll object. If sub-objects are present in the implementation, parsed control sections must be passed to control.write() in order to update lower level preference instantiations.

#### 3.6.2.3 control.getKeyboardEnhanced

Return the keyboardEnhanced object.

ACCLIP_OBJECT_NOT_FOUND

#### 3.6.2.4 control.setKeyboardEnhanced

Add or replace the keyboardEnhanced object.

#### 3.6.2.5 control.getOnscreenKeyboard

Return the onscreenKeybard object.

ACCLIP_OBJECT_NOT_FOUND

#### 3.6.2.6 control.setOnscreenKeyboard

Add or replace the onscreenKeyboard object.

#### 3.6.2.7 control.getAlternativeKeyboard

Return the alternativeKeyboard object.

ACCLIP_OBJECT_NOT_FOUND

#### 3.6.2.8 control.setAlternativeKeyboard

Add or replace the alternativeKeyboard object.

#### 3.6.2.9 control.getMouseEmulation

Return the mouseEmulation object.

ACCLIP_OBJECT_NOT_FOUND

#### 3.6.2.10 control.setMouseEmulation

Add or replace the mouseEmulation object.

#### 3.6.2.11 control.getAlternativePointing

Return the alternativePointing object.

ACCLIP_OBJECT_NOT_FOUND

#### 3.6.2.12 control.setAlternativePointing

Add or replace the alternativePointing object.

#### 3.6.2.13 control.getVoiceRecognition

Return the voiceRecognition object.

ACCLIP_OBJECT_NOT_FOUND

#### 3.6.2.14 control.setVoiceRecognition

Add or replace the voiceRecognition object.

#### 3.6.2.15 control.getStructuralNavigation

Return the structuralNavigation object.

ACCLIP_OBJECT_NOT_FOUND

#### 3.6.2.16 control.setStructuralNavigation

Add or replace the structuralNavigation object.

#### 3.6.2.17 control.getCodedInput

Return the codedInput object.

ACCLIP_OBJECT_NOT_FOUND

#### 3.6.2.18 control.setCodedInput

Add or replace the codedInput object.

#### 3.6.2.19 control.string getViaPath

Find the specification specified by the path and return it.

ACCLIP_PREF_NOT_FOUND

ACCLIP_PATH_INVALID

#### 3.6.2.20 control.setViaPath

Add or replace the preference specified by the path. If intermediate containers or objects are needed, they are created.

ACCLIP_PATH_INVALID

ACCLIP_DATA_INVALID

## 3.7 Content Class

The content class provides a way to group preferences concerning content aspects together. Some or all sub-groups may be present to include preferences for particular technology areas.

### 3.7.1 Data Structures

Data Type | Name
--- | ---
an alternativesToVisual object | alternativesToVisual
an alternativesToText object | alternativesToText
a visualText object | vistualText
an alternativesToAuditory object | alternativesToAuditory
an array of scaffoldType | learnerScaffolding
a uriString | personalStylesheet
a float | extraTime

Four technology groups are represented plus three preferences. Each of these abstract objects are further defined by a binding.

### 3.7.2 Methods

Method Name | Input | Output
--- | --- | ---
read |  | xmlString
write | xmlString |
getAlternativesToVisual |  | alternativesToVisual
setAlternativesToVisual | alternativesToVisual |
getAlternativesToText |  | alternativesToText
setAlternativesToText | alternativesToText |
getVisualText |  | vistualText
setVisualText | vistualText |
getAlternativesToAuditory |  | alternativesToAuditory
setAlternativesToAuditory | alternativesToAuditory |
getLearningScaffolding |  | array of scaffoldType
setLearnerScaffolding | array of scaffoldType |
addLearnerScaffolding | scaffoldType |
getPersonalStylesheet |  | uriString
setPersonalStylesheet | uriString |
getExtraTime |  | float
setExtraTime | float |
getViaPath | path | paramString
setViaPath | path, paramString |

#### 3.7.2.1 content.read

Return a complete a partial XML string.

ACCLIP_XML_NOT_FOUND

#### 3.7.2.2 content.write

Write or replace the XML associated with this accessForAll object. If sub-objects are present in the implementation, parsed control sections must be passed to control.write() in order to update lower level preference instantiations.

#### 3.7.2.3 content.getAlternativesToVisual

Return the alternativesToVisual object.

ACCLIP_OBJECT_NOT_FOUND

#### 3.7.2.4 content.setAlternativesToVisual

Add or replace the alternativesToVisual object.

#### 3.7.2.5 content.getAlternativesToText

Return the alternativesToText object.

ACCLIP_OBJECT_NOT_FOUND

#### 3.7.2.6 content.setAlternativesToText

Add or replace the alternativesToText object.

#### 3.7.2.7 content.getVisualText

Return the visualText object.

ACCLIP_OBJECT_NOT_FOUND

#### 3.7.2.8 content.setVisualText

Add or replace the visualText object.

#### 3.7.2.9 content.getAlternativesToAuditory

Return the alternativesToAuditory object.

ACCLIP_OBJECT_NOT_FOUND

#### 3.7.2.10 content.setAlternativesToAuditory

Add or replace the alternativesToAuditory object.

#### 3.7.2.11 content.getLearningScaffolding

Return an array of scaffolding items (scaffoldType).

ACCLIP_DATA_NOT_FOUND

#### 3.7.2.12 content.setLearnerScaffolding

Set an array of scaffolding items (scaffoldType)

ACCLIP_INVALID_DATA

#### 3.7.2.13 content.addLearnerScaffolding

Add the supplied scaffolding type to the array scaffolding items.

ACCLIP_INVALID_DATA

#### 3.7.2.14 content.getPersonalStylesheet

Return a URI (uriString) to a personal style sheet.

ACCLIP_DATA_NOT_FOUND

#### 3.7.2.15 content.setPersonalStylesheet

Set or add a personal style sheet URI.

ACCLIP_DATA_INVALID

#### 3.7.2.16 content.getExtraTime

Return the extraTime value (float).

ACCLIP_DATA_NOT_FOUND

#### 3.7.2.17 content.setExtraTime

Set the extraTime value (float).

ACCLIP_DATA_INVALID

ACCLIP_DATA_OUT_OF_BOUNDS

#### 3.7.2.18 control.string getViaPath

Find the specification specified by the path and return it.

ACCLIP_PREF_NOT_FOUND

ACCLIP_PATH_INVALID

#### 3.7.2.19 control.setViaPath

Add or replace the preference specified by the path. If intermediate containers or objects are needed, they are created.

ACCLIP_PATH_INVALID

ACCLIP_DATA_INVALID

# 4. Extensibility

## 4.1 Extensibility Statement

The <accessForAll> element provides a number of extension mechanisms that permit the addition of new assistive technology methods and other accessibility preferences. In particular, most elements have <application> and <param> elements that allow additional parameters to be defined for a particular accessibility application. In addition, the binding provides for arbitrary extensions. See the Binding Guide document for more details. In general, these extension methods are provided as placeholders for future revisions of this specification. Both the <display> and <control> elements provide for sub-elements named <futureTechnology> which are intended to allow new technology approaches to be included.

# 5. Conformance

A full conformance specification is provided in a separate document called, "IMS Accessibility for LIP Conformance Specification."

# Appendix A - Glossary

The following terms are used through out the ACCLIP document set to describe parts of the information model.

The following terms are used throughout the Accessibility for LIP document set to describe parts of the information model.

Alpha Layout -
The layout of the keys for an onscreen keyboard. Examples include standard (e.g., QWERTY), sequential, and frequency weighted (i.e. frequently used keys are grouped at the center for pointing device users or at the place where scanning begins for switch users).

Alternative Keyboard -
Assistive technology type in which a separate external device functions like a standard keyboard. Examples include miniature keyboards and keyboards with very large keys.

Alternative Pointing Device -
Assistive technology type in which the standard mouse is replaced by another device. Examples include trackball, graphic tablet, head pointer, and joystick.

Alternative Text -
Text which is provided as an alternative to the primary non-text content. Examples include text descriptions of images.

Alternatives to Audio -
Non-auditory content that is intended to convey the same meaning as auditory content. Examples include captions and sign language.

Alternatives to Visual -
Visual content provided to a user in an equivalent alternative format. Examples include audio descriptions, alternative text, and long descriptions.

Audio Description -
Audio content that describes visual content in a video. Used when auditory information is not otherwise available to convey visible action -- description 'by' audio. An example is the speech "Smith walks to the door, opens it and peers out." Standard audio descriptions are placed in the "silent" parts of the sound track where there is no dialogue; expanded audio description may pause the video presentation while playing audio. This is a type of alternative content. Also referred to as 'Video Description.'

Braille Display -
Assistive technology type in which text and other information are displayed as Braille using a dynamic array of pins.

Braille Cell -
A Braille cell is composed of six dots or pins (eight with computer Braille) that make up an individual character.

Direct Selection -
Selection method for attaining key presses for an onscreen keyboard in which the virtual key is directly selected by the user. Types of selection include point and click and point and dwell.

Indirect Selection -
Selection method for attaining key presses for an onscreen keyboard or other input device in which the rows or keys are scanned automatically and the user selects his/her desired key by signaling to the system when the desired key is highlighted. Example would include activating a switch to choose the row and column where the desired key is located.

Keyboard Enhancement -
Assistive technology type in which the functionality of the keyboard is modified in order to aid a user with his/her usage of the keyboard. Examples include sticky keys, repeat keys, and slow keys.

Learner Scaffold -
A collection of support tools for learners. Examples include calculator, dictionary, and peer interaction.

Mouse Emulation -
Assistive technology type in which a mouse cursor is manipulated using something other than a mouse/trackball. Examples include using the numeric keypad '8, 6, 2, 4' keys to direct the mouse movements with the number '5' acting as a mouse click.

Onscreen Keyboard -
Assistive technology type in which a virtual keyboard is displayed to the user on his/her screen to emulate the functionality of a standard keyboard and/or mouse

Repeat Keys -
Keyboard enhancement type in which the desired repeat rate when pressing and holding a key is defined, including the option of disabling auto-repeat.

Screen Enhancement -
Assistive technology type in which the display is made easier to see, by, for example, enlarging the text and/or increasing the contrast. Examples include screen magnifiers and operating system display property enhancements.

Screen Reader -
Assistive technology type in which text that appears on screen is rendered as speech or Braille.

Slow Keys -
Keyboard enhancement type which allows control over the length of time a key must be pressed before the key press is detected.

Status Cell -
Braille cell(s) which provides additional information about text attributes in the reading cells of the Braille display.

Sticky Keys -
Keyboard enhancement type in which modifier keys, such as control, shift, and alt, "stick", i.e., are virtually held down while a second key is depressed manually.

Structural Navigation -
Refers to the way in which the user navigates through the structure of the content. Possible variations include showing or hiding a table of contents, and the depth of table of contents.

Structural Presentation -
Refers to the way in which the structure of the content is presented. Possible variations include the order of presentation, the content density, and whether or not content provided to a user is structured in alternative presentations. Examples include content density, sorting, image/text intensive content views, and options for showing links, transcripts, and notes.

Tactile Displays -
Assistive technology type in which touch or haptics ("force feedback") is used as the means of rendering information. Examples include a haptic mouse and a vibrating display that allows users to feel what is displayed visually on a computer screen.

Text Reading with Highlight -
Assistive technology type in which the text is highlighted as it is rendered as speech in order to help guide or focus a user's attention.

Video Description -
See "Audio Description."

Visual Alerts -
Visually displayed information that is intended to convey the essential meaning of computer alert sounds. Examples include a flashing a menu bar and displaying captions that describe the meaning of audio alerts.

Voice Recognition -
This is a kind of assistive technology in which a user controls his/her computer using spoken commands and dictation.

# About This Document

Title | IMS Learner Information Package Accessibility for LIP Information Model
Editor | Mark Norton
Team Co-Lead | Jutta Treviranus
Version | 1.0
Version Date | 18 June 2003
Status | Final Specification
Summary | This document describes the Learner Information Package - Accessibility Preferences
Revision Information | 23 July 2003
Purpose | Defines the IMS Learner Information Package - Accessibility Preferences.
Document Location | http://www.imsglobal.org/accessibility/acclipv1p0/imsacclip_infov1p0.html

## List of Contributors

The following individuals contributed to the development of this document:

Name | Organization
--- | ---
Cathleen Barstow | The CBP/WGBH National Center for Accessible Media
Anastasia Cheetham | Unversity of Toronto, ATRC, Industry Canada
Martyn Cooper | Open University, UK
Eric Hansen | Educational Testing Services
Andy Heath | UK eUniversities Worldwide, Sheffield Hallam University
Phill Jenkins | IBM
Hazel Kennedy | Open University, UK
Liddy Nevile | Educational Technology Standards of Australia
Mark Norton | IMS Global Learning Consortium, Inc.
Madeleine Rothberg | The CBP/WGBH National Center for Accessible Media
Joseph Scheuhammer | University of Toronto, ATRC, Industry Canada
Brendon Towle | Thomson NETg
Jutta Treviranus | Unversity of Toronto, ATRC, Industry Canada
David Weinkauf | University of Toronto, ATRC, Industry Canada

# Revision History

Version No. | Release Date | Comments
--- | --- | ---
Public Draft v1.0 | 04 April 2003 | The Public Draft release of the Accessibility for LIP Specification.
Final v1.0 | 18 June 2003 | Made numerous editorial and technical changes to the document, including: a) Split the information model data into separate tables. b) Removed duplicate data types. c) Added LIP Meta-data. d) Added new elements.
| 23 July 2003 | Made a few minor editorial and formatting changes, and: a) Changed <onscreenKeyboard> scanning values to 'float' as opposed to 'integer'.

# Index

A
Abstract Framework 1, 2, 3
Audio 1
audio 1, 2, 3, 4, 5, 6, 7, 8

B
Braille 1, 2, 3, 4, 5

E
Elements
accessForAll 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13
accommodation 1, 2, 3, 4
application 1, 2
content 1
context 1
control 1, 2, 3
display 1, 2, 3
eligibility 1, 2, 3, 4
futureTechnology 1
Extensibility 1
Extension 1, 2, 3

I
IMS Specifications
Accessibility for LIP 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17
Content Packaging 1, 2
Learner Information Package 1, 2, 3, 4, 5, 6, 7
Question and Test Interoperability 1

K
Keyboard 1
keyboard 1, 2, 3, 4, 5, 6, 7, 8, 9, 10

M
meta-data 1, 2, 3, 4

P
preference manager 1
preferences 1, 2, 3, 4
profile manager 1, 2, 3

R
repository 1

S
SCORM 1
Sequencing 1, 2
style sheet 1, 2, 3, 4

U
URI 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13

V
video 1, 2, 3, 4, 5
visual 1, 2, 3, 4

W
W3C 1, 2

X
XML 1, 2, 3, 4, 5, 6, 7, 8
XSD 1, 2

IMS Global Learning Consortium, Inc. ("IMS") is publishing the information contained in this IMS Learner Information Package Accessibility for LIP Information Model ("Specification") for purposes of scientific, experimental, and scholarly collaboration only.
IMS makes no warranty or representation regarding the accuracy or completeness of the Specification.
This material is provided on an "As Is" and "As Available" basis.
The Specification is at all times subject to change and revision without notice.
It is your sole responsibility to evaluate the usefulness, accuracy, and completeness of the Specification as it relates to you.
IMS would appreciate receiving your comments and suggestions.
Please contact IMS through our website at http://www.imsglobal.org
Please refer to Document Name: IMS Learner Information Package Accessibility for LIP Information Model Revision: 18 June 2003