From 50294dca3cc9053491286acfbbc444abda5ab4af Mon Sep 17 00:00:00 2001 From: Scott O'Hara Date: Sat, 12 Mar 2022 11:40:12 -0500 Subject: [PATCH] revise caption definition This change in the definition is related to the changes in `figure` and `figcaption` in HTML AAM: https://github.com/w3c/html-aam/pull/359 and introduces the idea that a `caption` may contain structured content - and in this PR - `aria-details` is referenced as a way authors should reference such content if within a `caption` Additionally, this PR extends the definition to allow `caption` to be used for purposes of naming/describing a `group` or `radiogroup`, which fills some gaps from the dropped `legend` role. If these updates are accepted, this would help pave the way to resolve #1696 as well. --- index.html | 46 +++++++++++++++++++++++++++++++++++++++------- 1 file changed, 39 insertions(+), 7 deletions(-) diff --git a/index.html b/index.html index f4fef22d7..56f8fa06f 100644 --- a/index.html +++ b/index.html @@ -1790,15 +1790,25 @@

Definition of Roles

caption
-

Visible content that names, and may also describe, a figure, table, grid, or treegrid.

+

Visible content that names, or describes a group, figure, table, grid, radiogroup, or treegrid.

When using caption authors SHOULD ensure:

    -
  • The caption is a direct child of a figure, table, grid, or treegrid.
  • -
  • The caption is the first child of a table, grid, or treegrid.
  • -
  • The caption is the first or last child of a figure.
  • +
  • The caption is a direct child of a group, figure, grid, radiogroup, table, or treegrid.
  • +
  • The caption is the first non-generic child of a group, radiogroup, grid, table, or treegrid.
  • +
  • The caption is the first or last non-generic child of a figure.
-

Authors SHOULD set aria-labelledby on the parent figure, table, grid, or treegrid to reference the element with role caption. However, if a caption contains content that serves as both a name and description for its parent, authors MAY instead set aria-labelledby to reference an element within the caption that contains a concise name, and set aria-describedby to reference an element within the caption that contains the descriptive content.

- +

If the caption represents an accessible name for its containing element, authors SHOULD specify aria-labelledby on the parent element to reference the element with role caption.

+ +
+					<div role="radiogroup" aria-labelledby="name">
+				    <div role="caption">
+				      Choose your favorite fruit
+				    </div>
+				    <!-- ... -->
+				
+ +

If a caption contains content that serves as both a name and description for its parent, authors MAY instead specify aria-labelledby to reference an element within the caption that represents the "name" of the parent element, and specify aria-describedby to reference an element within the caption that contains the descriptive content.

+
 					<div role="table" aria-labelledby="name" aria-describedby="desc">
 				    <div role="caption">
@@ -1810,6 +1820,24 @@ 

Definition of Roles

</div> <!-- ... -->
+ +

If the caption represents a long-form description, or if the description contains semantic elements which are important in understanding the description, authors MAY instead specify aria-labelledby to reference an element within the caption that represents the "name" of the parent element, and specify aria-details to reference an element within the caption that contains the descriptive content.

+ +
+					<div role="figure" aria-labelledby="name" aria-details="details">
+					  <!-- figure content here, such as a complex data viz SVG -->
+				    <div role="caption">
+				      <div id="name">Sales information for 20XX</div>
+				      <div id="details">
+				        This barchart represents the total amount of sales over the course
+								of five years. Sales information for last year can
+								be reviewed, or you can overlay 
+								information in this graphic.
+				      </div>
+				    </div>
+				    <!-- ... -->
+				
+
@@ -1838,7 +1866,11 @@

Definition of Roles

- +
Characteristics:
Related Concepts:
Required Context Role: