Copyright © 2022 W3C® (MIT, ERCIM, Keio, Beihang). W3C liability, trademark and permissive document license rules apply.
本规范为 Web 内容作者提供了一种标准方法,用于支持属于 各种认知和学习障碍人士的 Web 用户,包括以下用户:
本规范中描述的技术旨在用于以编程方式将 包括表单控件、图标和其他用户界面元素在内的典型 Web 内容的外观,转换为 对单个用户更熟悉、更易理解的呈现。本文定义了用例和相关词汇术语, 使用户代理能够增强或适配内容,以更好地符合特定用户的特定 需求。这通过简化 Web 交互,或避免迫使用户处理他们不熟悉且 无法充分理解的表示形式,帮助具有不同需求的用户更容易理解 Web 内容。
此 WAI-Adapt:工具模块是 WAI-Adapt 说明文档 中引入的 WAI-Adapt 系列的一个组件 [adapt]。
本节描述本文档在其发布时的状态。当前 W3C 出版物列表以及本技术报告的最新修订版可在 W3C 技术 报告索引中找到,网址为 https://www.w3.org/TR/。
本文档由 无障碍平台 架构工作组作为 工作草案发布,并使用 推荐标准轨道。 该任务组的名称已从 Personalization 更改为 WAI-Adapt,所有文档的名称也将 相应重命名。本次发布的目的是更改文档名称。详情请参阅 WAI-Adapt 任务组的 决议和讨论。
如需评论,请在 W3C WAI-Adapt GitHub 仓库中提交议题。如果这不可行, 请发送电子邮件至 public-adapt@w3.org(存档)。评论请求截止日期为 2022年7月10日。
作为工作草案发布并不 意味着获得 W3C 及其成员的认可。
这是一份草案文档,可能随时由其他文档 更新、替换或废止。除非作为正在进行中的工作, 否则不宜引用本文档。
本文档由一个依据 W3C 专利 政策运行的工作组制作。 W3C 维护了一份 与该组交付成果相关的任何专利披露的公开列表; 该页面还包括 披露专利的说明。任何实际知悉某项专利,且认为该专利包含 必要权利要求的个人, 必须依照 W3C 专利政策第 6 节 披露该信息。
本文档受 2021年11月2日 W3C 流程文档管辖。
本节为非规范性内容。
本规范模块使作者能够在元素级别添加关于内容的语义信息, 以便为单个用户指示消息的优先级级别,或以编程方式 枚举用户需要完成的任务,从而使有记忆问题的用户能够 跟踪先前已完成的步骤。预计将支持多种屏幕呈现 (转换),以满足不同用户的不同需求。最终 呈现——通过辅助应用或第三方工具生成——最终将由用户的 配置设置来定义。
本文档列出了个性化工具属性的示例,它是 WAI-Adapt 说明文档的扩展,包括
messageimportance、messagefrom、messagecontext、
messagetime 和 stepindicator 等属性。
WAI-Adapt 定义了一组用于注释内容的属性和值。将这些属性应用到内容和语义的具体机制 尚未确定。若干 方法正在考虑中,未来草案将展示进展。为了帮助理解 所提出的属性,本文档提供了许多将 WAI-Adapt 应用于内容的示例,这些示例 展示了以前缀“data-”开头的属性。该前缀尚未被确定为 最终方法,但在此用作说明示例的一种方式。
WAI-Adapt:工具模块是 WAI-Adapt 技术规范的第三个也是最后一个部分,它 提供可用于以附加 语义信息标记 Web 内容的 WAI-Adapt 语义和词汇,使用户代理能够根据 用户的个性化设置或偏好,针对各种用户场景增强或适配内容。工具模块通过 提供关于消息重要性(用于过滤)以及跟踪多步骤 活动的附加信息来增强 Web 内容。用户代理可以使用这些语义来针对用户的场景增强或适配内容——例如 允许对屏幕消息进行优先级排序或过滤。这通过提供一种管理不必要干扰的方式, 帮助具有不同需求的用户过滤内容。
WAI-Adapt:内容模块中的所有词汇均由属性及其值构成。请参见 我们的 WAI-Adapt 说明文档。
本文档中包含的词汇实现可在我们的 实现 wiki 页面获取。
属性是词汇所支持的 WAI-Adapt 类型的主要单元。给定属性 支持特定类型的 WAI-Adapt。该属性在给定内容片段上只会使用一次, 但多个不同属性可以用于同一内容片段,以满足 不同需求。
值为属性提供具体的个性化信息。每个属性的可能值 会在模块中该属性的定义中详细说明。有些属性 要求值来自预定义的可能值列表,其他属性可以接受任意 字符串,有些则可以接受多个值。属性值可以是以下类型之一:
请注意,本规范中的属性和值不会覆盖无障碍树中暴露的语义, 而是对其进行增强。 在元素语义与 属性值发生冲突的情况下,验证算法应发出警告,而不是 错误。
WAI-Adapt 要求描述了用例 和要求。本模块提供用于满足与用户支持 工具相关要求的属性。
本文档使用了若干与各种认知障碍和相关 用户需求有关的特定术语。这些术语已由认知与学习障碍无障碍任务组 定义。有关具体定义,请参见 COGA 术语表。
每当存在一系列用户需要完成的
任务时,都应使用 stepindicator 定义值,以便有记忆问题的用户能够
跟踪先前已完成的步骤。
请注意,没有默认值。
请注意,应用这些定义值的具体机制尚未确定:
<div data-stepindicator="book trip">
<div data-status="complete" aria-label="select flight" data-step="1" data-steplocation="uri" />
<div data-status="current" aria-label="book hotel" data-step="2" data-steplocation="uri" />
<div data-status="" aria-label="book car" data-step="3" data-steplocation="uri" />
<div data-status="" aria-label="purchase trip" data-step="4" steplocation="uri" />
</div>
或者步骤编号可由 DOM 隐含给出
<div data-stepindicator="book trip">
<div data-status="complete" aria-labelledby="select flight">
<a href="uri">选择航班</a>
</div>
<div data-status="current" aria-labelledby="book hotel">
<a href="uri">预订酒店</a>
</div>
<div data-status="" aria-labelledby="book car">
<a href="uri">预订车辆</a>
</div>
<div data-status="" aria-labelledby="purchase trip">
<a href="uri">购买行程</a>
</div>
</div>
messageimportance 属性用于指示
消息的优先级级别。这对于会被消息压得不知所措、并需要过滤掉
低优先级消息、专注于关键优先级消息的人很有帮助。
支持的值: low、medium(默认)、
critical
应用这些定义值的具体机制尚未确定
<div role="alert" data-messageimportance="medium">
明天是你女儿的生日
</div>
| 特性 | 值 |
|---|---|
| 相关概念: | SVG [SVG2] 和 DOM [DOM4] active |
| 用于角色: | 基础标记的所有元素 |
| 继承到角色: | 占位符 |
| 值: | token |
| 值 | 描述 |
|---|---|
| critical | 要成为 critical,消息既需要是紧急的,也需要是 用户非常可能认为重要的内容。例如,系统 可能发送一条消息,说明它将在一分钟后重启以安装更新。 |
| medium(默认) | 需要用户在方便时关注的 重要消息。例如,相对重要的聊天消息。 |
| low | 不需要及时关注的消息。例如, 典型的聊天消息。 |
messagefrom 属性可用于帮助识别用户接收到的
消息来自谁。
支持的值:用于标识消息发送者的字符串值。 如果使用多个名称,可以用逗号分隔。
请注意,没有默认值。
应用这些定义值的具体机制尚未确定
<div role="alert" data-messageimportance="low"
data-messagefrom="lisa seeman, lseeman">
我在 GitHub 上发布了一个新版本供你审阅
</div>
应用这些定义值的具体机制尚未确定
| 特性 | 值 |
|---|---|
| 相关概念: | SVG [SVG2] 和 DOM [DOM4] active |
| 用于角色: | 基础标记的所有元素 |
| 继承到角色: | 占位符 |
| 值: | string text |
messagecontext 属性可以帮助澄清消息来自哪里。
知道消息来自谁,以及消息是在什么上下文中写成的,对于
理解所接收消息的含义都很重要。
支持的值: 用于标识使该消息相关的 位置的字符串值。典型值为“home”和“work”。如果有多个 相关位置,可以用逗号分隔。
请注意,没有默认值。
应用这些定义值的具体机制尚未确定
<div role="alert"
data-messageimportance="low"
data-messagefrom="lisa seeman, lseeman"
data-messagecontext="work">
我在 GitHub 上发布了一个新版本供你审阅
</div>
| 特性 | 值 |
|---|---|
| 相关概念: | SVG [SVG2] 和 DOM [DOM4] active |
| 用于角色: | 基础标记的所有元素 |
| 继承到角色: | 占位符 |
| 值: | string text |
messagetime 属性有助于澄清消息何时发送。
支持的值: 24 小时日期时间格式。 DD.MM.YEAR.HOUR.MM - DD.MM.YEAR.HOUR.MM,其中第二个日期是可选的排他性 过期日期。
请注意,没有默认值。
应用这些定义值的具体机制尚未确定
@@1 行描述
<div role="alert"
data-messageimportance="medium"
data-messagefrom="my calender"
data-messagecontext="work"
data-messagetime="10.02.2017.00.00-16.02.2017.00.00">
本周续办你的驾驶执照
</div>
<div role="alert"
data-messageimportance="critical"
data-messagefrom="my calender"
data-messagecontext="work"
data-messagetime="16.02.2017.00.00">
尽快续办你的驾驶执照
</div>
应用这些定义值的具体机制尚未确定
| 特性 | 值 |
|---|---|
| 相关概念: | SVG [SVG2] 和 DOM [DOM4] active |
| 用于角色: | 基础标记的所有元素 |
| 继承到角色: | 占位符 |
| 值: | string text |
本规范向文档添加关于内容的上下文信息 ,不应影响 安全。
虽然本规范不会暴露个人偏好和个人信息,但基于我们的语义信息进行操作的第三方用户 代理或代理服务器可能需要存储关于如何向特定用户 呈现内容的个人偏好。建议任何用户代理或代理服务器实施 最佳实践,以保护所有个人偏好和个人信息。
建议任何具有用户设置的用户代理遵循最佳实践,以确保用户信息安全。
本节为非规范性内容。
以下人员为本文档的开发作出了贡献。
本出版物的部分资金来自美国卫生与公众服务部、 国家残障、独立生活与康复研究所(NIDILRR)的美国联邦资金, 合同编号为 HHSP23301500054C。本出版物的内容不一定反映 美国卫生与公众服务部的观点或政策,也不表示提及商号、 商业产品或组织即意味着获得美国政府认可。本 项目的部分工作还获得了欧盟“地平线 2020”研究与创新 计划的资助,资助协议编号为 No.780529 和 643399。