3.6.2 Preserve Distinctions and thoughts on scope and exceptions

(Sorry an unfinished draft of this was sent earlier; please delete that 
and refer to this one instead.)

Hi Patrick,

Unfortunately the proposed wording for 3.6.2 below would inadvertently 
limit the user's choices. I think that the ability to preserve size 
distinctions should be *available, *meaning the user agent /must /give 
the user the /ability /to have size differences preserved, but /may /if 
it chooses allow the user to choose a single font size. It also already 
correctly includes an /explicit exception /for platforms that don't 
support different font sizes ("within absolute limitations imposed by 
the platform") and an /implicit exception /for user agents that don't 
support scaling text ("when that text is rescaled").

Therefore, while we can make wording changes, I think we need to at 
least keep the phrase "the user has the ability to" from the earlier 
version:

    "3.6.2 Preserve Distinctions: The user has the ability to preserve
    distinctions in the size of rendered text when that text is rescaled
    (e.g., headers continue to be larger than body text) within absolute
    limitations imposed by the platform. (Level A)"


Here's some lengthy background that could be useful as we think about 
these things in the future. Feedback would be welcome!

We always have to be careful to distinguish whether a success criterion 
specifies that a behavior should be:

   1. *on **without exception* (e.g. 1.4.1 Render content according to
      the technology specification.)
   2. *on by default*, but it's OK if the user can turn it off (e.g.
      4.4.1 /In its default configuration/, the user agent does not
      display any user interface components or recognized content that
      flashes more than three times in any one second period...)
   3. *available*, but it doesn't matter whether it can be turned off
      (e.g. 3.1.1 /The user has the ability /to have indicators rendered
      along with rendered elements...)
   4. *optional*, meaning the user must be able to turn it off (e.g.
      3.4.1 /The user has the option /of receiving generated repair text...)
   5. *off by default*, but the user must be able to turn it on ("the
      user has the option to...this option must not be on by default")
   6. *prohibited *is the same as "on without exception", but stated as
      a negative


These can be modified by limiting their /scope/ or providing 
/exceptions/, such as:

   1. *appropriately structured requirements* that only apply in certain
      contexts (/scope/). For example, ISO 9241-171 provision 8.1.5
      starts “If a user interface element has a visual representation…”,
      and provision 8.2.1 starts “When the software enables the user to
      set personal preferences, these settings should…”.
   2. *s**pecific exemptions* in specific requirements. For example, ISO
      9241-171 provision 11.1.4 states “Instructions and ‘Help’ for
      software should be written so that they refer to the user’s
      actions and resulting output without reference to a specific
      device. References to devices, e.g. the mouse or the keyboard,
      should only be made when they are integral to, and necessary for,
      understanding of the advice being given.”
   3. *c**ategory exemptions* for specific classes of circumstances. For
      example, the Conformance section of ANSI 200.2 provides that
      software used on, or intended to be used on closed systems should
      be exempt from clauses regarding compatibility with assistive
      technology.
   4. *g**eneral-purpose* *exemption*, such as allowing “Not Applicable”
      as a valid response to any requirement. For example, the
      Conformance section of ISO 9241-171 states that any requirements
      that have been determined not to be applicable shall also be
      listed, together with a statement of the reasons why they are not
      applicable.

The most common types of scoping and exemptions are:

   1. *if supported by the platform *(e.g. 3.6.x The user has the
      ability to specify minimum and maximum sizes for all visually
      rendered text, overriding all other relative sizes, absolute
      sizes, or scalings /except for absolute limitations imposed by the
      platform/.)
   2. *if the user agent supports related features* (e.g. 2.1.4 /If the
      user agent implements one or more DOMs/, they must be made
      programmatically available...)


Exceptions can be either:

   1. *explicit exceptions *are spelled out with "if" or "except" (e.g.
      2.1.4 /If the user agent implements one or more DOMs/, they must
      be made programmatically available...)
   2. *implicit exceptions *"(e.g. 3.11.5 "The user agent
      programmatically notifies /any /nested user agent(s) (e.g.,
      plug-ins) /when /focus moves to them" has two implicit exceptions,
      "/any /nested agents" exempts user agents that don't support
      nested agents, and "/when /focus moves to them" exempts any agents
      that have nested agents but never give them the keyboard focus)


Note that this scale above is completely independent of whether a 
success criterion is *required *or *recommended *(i.e. Level A meaning 
required for claiming any level of compliance, vs. Level AA or AAA 
meaning only required if they want to claim a higher level of conformance).

-------- Original Message  --------
Subject: Re: Minutes: User Agent Accessibility Guidelines Working Group 
Teleconference  08 Apr 2010
From: Patrick H. Lauke <patrickl@opera.com>
To: 'WAI-UA list' <w3c-wai-ua@w3.org>
Date: 4/8/2010 2:40 PM
> On 08/04/2010 19:39, Jim Allan wrote:
>
>> <scribe>  ACTION: js to add "3.6.2 Preserve Distinctions: The user 
>> has the
>> ability to preserve distinctions in the size of rendered text when 
>> that text
>> is rescaled (e.g., headers continue to be larger than body text) within
>> absolute limitations imposed by the platform. (Level A)" to draft 
>> [recorded
>> in http://www.w3.org/2010/04/08-ua-minutes.html#action05]
>
> Can I propose a slight turning inside out of this to make it clear 
> that the user's control is on the min/max, rather than on whether or 
> not the distinction should be preserved in the first place (which is 
> what browsers do already by default anyway)?
>
> "3.6.2 Distinction in the size of rendered text are preserved when 
> that text is rescaled (e.g. [...]) within absolute limitations imposed 
> by the platform. (Level A)"
>
> Possible AA follow-up: "The user has the ability to define minimum and 
> maximum text sizes"
>
> Thoughts?
>
> P

Received on Friday, 9 April 2010 06:24:38 UTC