Matterhorn 13-002 · PDF/UA-1 UA1:7.3-1
Image links: alt text that says what it is and where it goes
An image link — a button, a logo that navigates — needs alternative text that conveys both what the graphic shows and where the link goes.
The condition, as the protocol states it. “A link with a meaningful background does not include alternative text describing both the link and the graphic's purpose.”
Matterhorn Protocol 1.1, checkpoint 13, index 13-002, section UA1:7.3-1. The protocol marks this as requiring human judgement.
What a screen reader actually does
The reader announces "link, graphic" with no indication of destination.
What is in the file
An image link is three things that have to agree. The annotation is the clickable rectangle and its action. The <Link> element puts the link in the reading order. And because the link’s visible content is a picture rather than words, the thing inside the <Link> is a <Figure>:
/Link
├── /Figure /Alt (…) ← paints the logo (MCID 3)
└── OBJR → 19 0 R ← the annotation
/Subtype /Link
/Contents (…)
/A << /S /URI /URI (https://example.gov/) >>
There is no link text to fall back on. Whatever the <Figure>’s /Alt says is the whole of what the link is called. PDF/UA-1 clause 7.3 asks that a link with a meaningful graphic carry a description of both: what the graphic is and what the link does.
The condition is the description that does only half. Three versions turn up constantly:
/Alt (Agency logo)— says what it is, not where it goes./Alt (https://example.gov/)— says where it goes, character by character, and nothing else./Alt (image1.png)— a file name, which does neither.
What the user hears
In NVDA’s links list (Insert + F7) the link appears under its description. A page with four logos in a funders’ strip, each described as logo, produces four identical entries with four different destinations. Tabbing to one reads something like:
link, graphic, Agency logo
The person knows a logo is there. They do not know that activating it opens the agency’s site rather than, say, a PDF of its annual report — which, in a document full of downloads, is the question that matters.
The URL-only version fails the other way. The destination is announced, slowly, and the fact that this is the agency’s logo — which a sighted reader takes in at a glance — is not.
Where it comes from
Alt text written before the image became a link. In most authoring tools the description belongs to the picture, and the hyperlink is added afterwards. The description was correct for a picture and is now incomplete for a link.
Generated descriptions. Producers that fill /Alt from a file name or a generic image string, and tools that offer the link target as a description because it is the only text to hand.
Links drawn in Acrobat over an image. These usually have no <Link> element at all, which is 28-011 — fix that first, because there is nowhere to put a link description until the structure exists.
How to check it free
There is no automatic test. Every check tool will tell you whether a <Figure> has a description; none will tell you whether it names a destination. Acrobat’s Accessibility Checker rule Figures alternate text, as Adobe documents it, makes sure images “either have alternate text or are marked as artifacts” — Agency logo passes.
Read the links list with a screen reader. NVDA is free. Every entry should make sense with nothing around it. An entry that names a picture rather than a place is this condition.
Acrobat Pro’s Tags panel. Expand the tree to each <Link> and look at what it contains. Where the child is a <Figure>, select it, choose Properties from the Options menu, and read the Alternate Text on the Tag panel of the Touch Up Properties dialog.
How to fix it free, in Acrobat Pro
These steps follow Adobe’s Edit document structure with the Content and Tags panels page.
- Open the Tags panel: the hamburger Menu (Windows) or View menu (macOS) → Show/Hide → Side Panels → Tags. Newer releases call it Accessibility tags.
- Expand the tree to the
<Link>, then select the<Figure>inside it. Turn on Highlight Content in the Options menu to confirm it is the right image. - Options → Properties. In the Touch Up Properties dialog, select the Tag panel.
- In Alternate Text, write one phrase that covers both: Example Agency home page, not Example Agency logo.
Put it on the <Figure>, not on the <Link>. Adobe’s own note on link descriptions is to add alternate text only to tags with no child tags, because alternate text on a parent stops a screen reader reading the children — and the <Link>’s children include the annotation. Its Accessibility Checker has a rule, Hides annotation, for exactly that mistake.
The annotation’s own /Contents is a separate requirement, 28-012, and usually says the same thing.
Upstream is better. Write the description on the image in Word, PowerPoint or InDesign with the link in mind, and it survives every re-export. See Links and annotations and Alt text that works.
What Taggart does
Taggart has no check for this condition. The protocol gives it no machine test, so it never produces a finding and never appears in the review queue. What Taggart does instead is hold back the PDF/UA claim: 13-002 is one of the conditions it lists before writing the identifier, under a single box — I have checked these conditions by hand, or with another validator — that has to be ticked first. Ticking it is your statement that every image link has been read. Taggart cannot read them for you.
Where it helps is the step before. An image link whose <Figure> has no description at all is reported as 13-004, and when you open it in the review queue the description box lists what the document already says about the image. For a figure inside a link, one of those suggestions is labelled Where the link goes and holds the link’s target:
Where the link goes — https://example.gov/
That is a destination, not a description. It is offered so you can see where the link points while you write the phrase that covers both — not to be accepted as it stands, which would produce the URL-only failure above.
Once a <Figure> has any /Alt — including Agency logo — Taggart says nothing more about it.
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
Should the description say what the picture is, or where the link goes?
Both, in as few words as do both jobs. A logo that spells the organisation's name usually needs only the name and the destination: "Example Agency home page". A picture that carries information of its own — a map thumbnail that opens the full map — needs what it shows as well as where it goes.
Which object gets the text: the Link, the Figure or the annotation?
The Figure inside the Link gets /Alt, because it is the link's only content and its description is what a reader announces. The annotation gets /Contents as well, which is a separate requirement (28-012). Adobe advises against putting alternate text on a tag that has children, so not on the Link element itself.
What if the image is decoration beside real link text?
Then the background is not meaningful and this condition does not apply. The words carry the link; the image should be an artifact so it is not announced at all, rather than a Figure whose description repeats the link text.
Does any checker catch this?
No. Acrobat, PAC and veraPDF can tell you a Figure has no description at all. Whether an existing description names the destination is a reading of the words, and the Matterhorn Protocol marks it as a human check.
Where this sits in the standards
| Standard | Reference |
|---|---|
| Matterhorn Protocol 1.1 | Checkpoint 13 (Graphics), index 13-002 |
| PDF/UA-1 (ISO 14289-1) | Clause 7.3-1 |
| WCAG 2.1 | 1.1.1 Non-text Content — Level A |
| WCAG 2.1 | 2.4.4 Link Purpose (In Context) — 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
- 28-011 A link annotation is not nested within a Link tagA link annotation must be a child of a Link structure element containing the link's text, joined by an object reference (/OBJR).
- 28-012 A link annotation does not include an alternate description in its Contents entryLink annotations need /Contents describing where the link goes.
- 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-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.
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-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-006 A graphic with meaning only as part of a group is tagged on its ownA chart built from dozens of separate vector paths has been tagged as dozens of Figures instead of one. Each fragment is meaningless alone.
- 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 .