Matterhorn 13-006 · PDF/UA-1 UA1:7.3-5
One chart, forty Figure tags: grouping graphics in a PDF
A chart built from dozens of separate vector paths has been tagged as dozens of Figures instead of one. Each fragment is meaningless alone.
The condition, as the protocol states it. “Graphics objects that possess semantic value only within a group of graphics objects is tagged on its own.”
Matterhorn Protocol 1.1, checkpoint 13, index 13-006, section UA1:7.3-5. The protocol marks this as requiring human judgement.
What a screen reader actually does
The reader announces "graphic, graphic, graphic…" forty times.
What the condition is about
Most graphics in a PDF are not one object. A bar chart exported from a spreadsheet is typically dozens of filled rectangles, a few lines for the axes and a handful of text runs for the labels. A large map may be four image tiles laid edge to edge. An infographic is all of these at once.
Each of those objects means nothing alone. The bar is a rectangle; the tile is a quarter of a coastline. The meaning is in the group, and PDF/UA-1 clause 7.3 says a graphic whose objects only have meaning together is tagged as one figure, not object by object.
The failure looks like this:
/Sect
├── /P "Sales rose through the spring…"
├── /Figure (rectangle)
├── /Figure (rectangle)
├── /Figure (rectangle)
├── /Figure (line)
├── /P "Jan"
├── /P "Feb"
└── … 30 more
and what it should be:
/Sect
├── /P "Sales rose through the spring…"
└── /Figure /Alt (Monthly sales, January to June: rising each month, from 40 to 120 units.)
/K [ 4 5 6 7 8 9 10 11 … ] ← every piece of the chart
What the user hears
Graphic, graphic, graphic is not an exaggeration. Each fragment is announced as a graphic, with whatever description it has — usually none, sometimes a generated image 14. If the axis labels were tagged as paragraphs, they are read as stray words between the graphics: graphic, graphic, Jan, graphic, Feb…
There is no point in the sequence at which a listener learns that this was a chart, let alone what it showed. Describing the fragments does not help: thirty-six accurate descriptions of rectangles are thirty-six things to skip.
Where it comes from
Auto-tagging. Taggers work object by object, and graphics are a pile of objects. Adobe’s Creating accessible PDFs page says plainly that its Automatically tag PDF command “can’t always distinguish between instructive figures and decorative page elements” and “may incorrectly tag all of these elements as figures”.
Exports that keep drawing objects separate. Charts and diagrams drawn natively in an authoring tool reach the PDF as vector paths. Whether they arrive as one tagged figure depends on the producer.
Tiled and sliced images. Large images split into strips or tiles by a producer or a print workflow, each tagged where it was placed.
How to check it free
Acrobat Pro’s Reading Order tool. Open it (All tools → Prepare for accessibility → Reading Order) and select Show Tables And Figures. Adobe describes this as outlining each figure “with a crossed-out box”, which also shows whether it has alternate text. One graphic covered by many small boxes is this condition, visible at a glance.
The Tags panel with Highlight Content on. Walk down through consecutive <Figure> tags. If each highlight lands on a different piece of the same picture, they belong together.
A screen reader. Arrow through the page. Graphic five times in a row, at a point where the page shows one image, is the tell.
Acrobat’s Accessibility Checker cannot see it: each fragment either has alternate text or does not, and that is all its Figures alternate text rule asks.
How to fix it free, in Acrobat Pro
From Adobe’s Reading Order tool for PDFs. Save a copy first: Adobe notes that undo is not supported for every operation of this tool.
- Open the Reading Order tool and select Show Tables And Figures.
- Drag to select the whole graphic. Shift-drag to add any piece the rectangle missed; Ctrl-drag to take out anything that is not part of it, such as a paragraph beside it.
- Click Figure in the dialog.
- Right-click the region → Edit Alternate Text, write one description of the whole graphic, and click OK.
- Open the Tags panel and look for
<Figure>tags that now highlight nothing on the page. Delete them: Options → Delete Tag.
Write the description from the chart’s own labels before you start, because once they are inside the figure they are no longer read — Adobe’s description of the Figure button is that “text contained within a figure tag is defined as part of the image and screen readers don’t read it”. If the data matters more than the shape, a description is the wrong vehicle; see 13-007.
Upstream, the fix is usually to export the chart as a single grouped graphic with its alt text set in the authoring tool. See Alt text that works.
What Taggart does
Taggart has no check for this condition, so it produces no finding and is not in the review queue; it is on the list of conditions Taggart asks you to confirm — I have checked these conditions by hand, or with another validator — before it writes the PDF/UA identifier. It also has no repair that groups graphics. Three of its behaviours bear on it directly, and all three were checked on generated files:
Its figure count objects to correct grouping. The 13-001 heuristic compares the images painted on a page with the <Figure> elements on it. A map painted as four tiles and correctly tagged as one figure is reported:
Page 1 paints 4 image(s) that are not artifacts, but the page has 1
<Figure>element(s). Meaningful graphics need a<Figure>tag; decorative ones need to be artifacts.
On a grouped graphic that warning is wrong, and the right response is to accept it in the review queue with the reason, not to split the figure.
Its figure-tagging repair makes one Figure per image. Run on untagged tiles, figure-tagging creates a separate <Figure> for each — this condition, made by the repair. It runs only when confirmed — in the app, by leaving its checkbox, Wrap untagged images in <Figure>, ticked — so group the result afterwards.
Its auto-tagger makes untagged vector paths artifacts. tag-untagged-content treats bare path painting as decoration by default. On an untagged page with a bar chart drawn in paths, it produced no <Figure> at all — every bar became an artifact — and because the 13-001 count looks only at images, nothing reports the chart as missing. If an untagged file has vector charts, tag them as figures yourself after auto-tagging.
When a figure does need a description, the review queue offers any text painted inside its area — a chart’s title and axis labels — labelled Painted inside it, which is a fair place to start the one description a grouped figure needs.
How Taggart handles it
No software can decide this one, and Taggart has no check for it, so it never appears among the findings or in the review queue. It is on the list of conditions Taggart asks you to confirm by hand before it writes the PDF/UA claim into the file — the claim waits until you have.
Whatever Taggart changes, the page still looks identical. Fixes edit the PDF object model, not the content streams, and every remediation is re-rendered and compared against the original at structural similarity ≥ 0.999 before you get the file back. A tool that quietly reflows your document is worse than no tool.
Frequently asked questions
Can one Figure cover several separate objects on the page?
Yes. A structure element can own any number of marked-content sequences, so one <Figure> can list every path, image tile and label that makes up a chart. What it cannot do is describe a group it does not contain — which is why the pieces have to be inside it.
What happens to text labels inside the chart?
Once they are inside the <Figure>, they are part of the image. Adobe's own description of the Figure tag is that text inside it is defined as part of the image and screen readers don't read it. That is correct for axis labels, and it means the alt text has to carry anything those labels say that matters.
Should the pieces be artifacts instead?
Not if the graphic means something. Artifacting the paths of a chart removes the chart from the document for anyone using assistive technology. Decorative rules and borders are artifacts; a chart is one Figure.
Does Taggart group them for me?
No. It has no check for this condition and no repair that groups graphics. Its tagging repairs work the other way — one Figure per image — so this is done in Acrobat or in the source.
Where this sits in the standards
| Standard | Reference |
|---|---|
| Matterhorn Protocol 1.1 | Checkpoint 13 (Graphics), index 13-006 |
| PDF/UA-1 (ISO 14289-1) | Clause 7.3-5 |
| WCAG 2.1 | 1.1.1 Non-text Content — Level A |
| EN 301 549 / Section 508 / ADA Title II | All three point at WCAG 2.1 Level AA for non-web documents, so a Level A or AA criterion here is in scope for each of them. |
Related conditions
- 13-001 Graphics objects are not tagged with a Figure tagAn image or vector drawing that carries meaning is not inside a Figure element. Either it is untagged, or it has been swept into a paragraph.
- 13-004 Figure tag alternative or replacement text missingA Figure element has neither /Alt nor /ActualText. Every Figure must have one or the other; if the image is decorative it should be an artifact instead of a Figure.
- 13-007 A more accessible representation is not usedA data table rendered as a picture, or body text set as an image, when real text and real table structure were available.
- 01-005 Content is neither marked as Artifact nor tagged as real contentEvery text-showing, image-painting and path-painting operator on a page must sit either inside a marked-content sequence that maps to the structure tree, or inside an artifact sequence. Content that is in neither is orphaned.
Other conditions in checkpoint 13
Checkpoint 13 covers graphics. These are its other failure conditions; the ones without a link are in the rule set but do not have a written page yet.
- 13-001 Graphics objects are not tagged with a Figure tagAn image or vector drawing that carries meaning is not inside a Figure element. Either it is untagged, or it has been swept into a paragraph.
- 13-002 A link with a meaningful background lacks alternative text for bothAn image link — a button, a logo that navigates — needs alternative text that conveys both what the graphic shows and where the link goes.
- 13-003 A caption is not tagged with a Caption tag"Figure 3: Quarterly revenue" is tagged as a paragraph rather than as a Caption associated with its figure or table.
- 13-004 Figure tag alternative or replacement text missingA Figure element has neither /Alt nor /ActualText. Every Figure must have one or the other; if the image is decorative it should be an artifact instead of a Figure.
- 13-005 ActualText used for a Figure for which alternative text is more appropriateActualText replaces the content for text-extraction purposes; Alt describes it. A photograph needs Alt. A drop cap or a glyph-as-image needs ActualText.
- 13-007 A more accessible representation is not usedA data table rendered as a picture, or body text set as an image, when real text and real table structure were available.
- 13-008 ActualText not present when a Figure is intended to be consumed primarily as textA drop cap, a logo that is a word, an image of a signature block — content that is text — needs ActualText so it flows into the text stream.
Check your own file. Taggart’s validator is free and unlimited — 75 of the 87 Matterhorn conditions software can decide, with the other 12 listed for you to confirm; no watermark, no expiry, and no account needed up to 60 pages.
This condition needs a person’s judgement, so there was nothing for a tool to check. Written from ISO 14289-1 and the Matterhorn Protocol on . The Acrobat steps follow Adobe’s documentation and were not walked through by hand. Last updated .