[User Context] general, auditory, and screen reader keys added

I’ve added most of the User Context keys proposed by Andy, Rich, and myself so far, including some of the ones that are not currently supported by OS or UA implementations (like “transcript” and “signLanguage”). It’s not yet clear how those will be implemented, but they are clear enough in meaning to not be confused by authors. I have not included the more subjective, less clear preferences proposed (like “simple interface” and “prefers tactile”).

I also commented some of the older sections that were no longer relevant or otherwise overcome by events or other specs.

James


Web View of current draft:
https://dvcs.w3.org/hg/IndieUI/raw-file/default/src/indie-ui-context.html

Changeset:
https://dvcs.w3.org/hg/IndieUI/rev/f230283856c2


— Substantive portion of the change follows; see web site instead if you are viewing plain text like the list mail archive. —

1.2 User Preference Keys

The different key groupings are to allow individual privacy restrictions for each group. We're still working on the best way to spec those privacy restrictions.

1.2.1 General User Preference Keys

dictionary GeneralKeys {
    DOMString?  fontSize = null;
    DOMString?  fontSizeMinimum = null;
    boolean?    invertColors = null;
    DOMElement? pointOfRegard = null;
};
1.2.1.1 Dictionary GeneralKeys Members

fontSize of type DOMString, nullable, defaulting to null
User's current default font size of root element, prior to applying page styles. User Agents must return the value in a CSS pixel unit formatted string, e.g. '14px'
fontSizeMinimum of type DOMString, nullable, defaulting to null
User's minimum font size limit. User Agents must return the value in a CSS pixel unit formatted string, e.g. '9px'
invertColors of type boolean, nullable, defaulting to null
Status indicating whether the display colors are currently inverted by the operating system or user agent. Web authors should not re-invert foreground and background colors based on this setting, but may choose to double-invert some content, such as photographs.
pointOfRegard of type DOMElement, nullable, defaulting to null
Returns a DOM element that indicates the users current point-of-regard.
I am still hoping we'll come up with a better name than point-of-regard.

NOTE
Indicates the user's focused point of attention, which make be the element under the mouse, in keyboard focus, or indicated by assistive technology such as eye tracking software or screen reader focus. Point-of-regard is similar to the concept of document.activeElement, and in the simple case of full keyboard access, it will likely stay in sync with document.activeElement.
This one may indicate too much about AT to remain in the general preferences.

1.2.2 Auditory Alternative Keys (Subtitles, Captions, and Transcripts)

TBD: Keys in this section will be subject to domain-specific privacy policy limiting initial access and prompting the user. TBD whether these keys may be accessed only on a user triggered event, as opposed to onload for example.

dictionary AuditoryAlternativeKeys {
    boolean?   subtitle = null;
    DOMString? subtitleLanguages = null;
    DOMString? subtitleType = null;
    boolean?   transcript = null;
    boolean?   signLanguage = null;
};
1.2.2.1 Dictionary AuditoryAlternativeKeys Members

signLanguage of type boolean, nullable, defaulting to null
Indicates a user's preference to be presented with a video of sign language if available.
Do we need a language order preference for type of sign? ASL, etc? Worried this feature will be at-risk due to lack of available signed alternatives.

subtitle of type boolean, nullable, defaulting to null
Status indicating whether subtitles or captions are displayed (true) or not displayed (false) in native video players. Web authors using a native video playershould allow subtitles to be displayed natively. Web authors using a custom caption display should display captions based on this setting.
subtitleLanguages of type DOMString, nullable, defaulting to null
Preferred languages in order of preference. Users Agents must format the string as a space-separated list of ISO-639 language codes, that may be optionally hyphenated to include ISO-3166 country codes. For example, a native Mexican Spanish speaker living in the United States may have a language preference of "es-mx es en-us en" indicating a preference order for Mexican Spanish, any Spanish, US English, and finally any English dialect.
subtitleType of type DOMString, nullable, defaulting to null
Preferred type of subtitle or caption in order of preference: Users Agents must format the string as a space-separated list of the following tokens: 'sdh', 'cc', or 'standard'.
This key is necessary to indicate a preference for subtitles for the deaf and hard of hearing (SDH) over standard spoken-language-only subtitles, but the preference for closed-captions (CC) versus SDH may not be necessary. SDH appears to be generally preferred over CC when available, and a preference for SDH could indicate an implicit preference for CC over standard when CC is available but SDH is not.

transcript of type boolean, nullable, defaulting to null
Indicates a user's preference to be presented with a transcript if available. Web authors may provide concatenated subtitles in static form, if no other transcript exists.
There is some concern within the working group regarding this preference because no known operating system or user agent currently includes a way for a user to set this preference. The IndieUI working group is actively seeking comment on the perceived necessity or feasibility of this preference. It may be that this is already covered by WCAG 2.0 SC 1.2.1 which indicates sites should offer transcripts when available.

1.2.3 Screen Reader Keys

TBD: Keys in this section will be subject to domain-specific privacy policy limiting initial access and prompting the user. TBD whether these keys may be accessed only on a user triggered event, as opposed to onload for example.

dictionary ScreenReaderKeys {
    boolean?   screenReaderActive = null;
    DOMString? screenReaderName = null;
    DOMString? screenReaderVersion = null;
};
1.2.3.1 Dictionary ScreenReaderKeys Members

screenReaderActive of type boolean, nullable, defaulting to null
Returns a boolean indicating whether or not a screen reader is currently active or in use. The user agent must return true if a screen reader is running, orfalse otherwise. User agents may return false if the user has chosen to disallow sharing screen reader information with the requesting domain.
screenReaderName of type DOMString, nullable, defaulting to null
Returns the application name of the screen reader in use. The user agent must return either an empty string or a string representing the name of the screen reader in detail, e.g. "Apple VoiceOver". User agents may return an empty string if the user has chosen to disallow sharing screen reader information with the requesting domain.
screenReaderVersion of type DOMString, nullable, defaulting to null
Returns the application version of the screen reader in use. The user agent must return either an empty string or a string representing the version of the screen reader in detail, e.g. "4.0 (220.2)". User ag

Received on Thursday, 14 March 2013 03:11:20 UTC