Accessibility Wiki

Markup annotations belong inside an Annot element

PDF/UA check MARKUP_ANNOT_PARENT_ANNOT · Annotations · severity High · PDF/UA 8.9.2.3 Markup annotations

↩ Back to the rules index · WCAG cross-reference

Why it matters

Markup annotations (highlights, comments, stamps) must be wrapped in an Annot structure element so screen readers can announce them in context.

What you will see

A markup annotation is in the tag tree but is not wrapped in an Annot structure element.

How to fix

Review the annotation's parent structure element: if it does not convey the annotation's meaning, move the annotation's OBJR into an Annot structure element placed next to the annotated content. A semantically appropriate parent other than Annot is also acceptable, so confirm before restructuring.

Step-by-step guide

  1. Locate each finding using the reported parent_type and subtype: the markup annotation's OBJR currently sits under a structure element other than Annot. PDF/UA-2 8.9.2.3 states that markup annotations shall be enclosed within Annot structure elements, so a non-Annot parent is a defect for these subtypes.
  2. Open the Accessibility tags panel (View > Show/Hide > Side panels > Accessibility tags), select the annotation on the page and use Options > Find Tag from Selection to reveal its OBJR under the current parent.
  3. Create a new Annot element via the tags panel Options menu > New Tag > Annotation, positioned as a child or sibling of the structure element enclosing the annotated content (8.9.3.2).
  4. Drag the annotation's OBJR from its current parent into the new Annot element, delete any now-empty wrapper, and confirm the reading order still flows correctly around the annotation.

Verify: Re-run the EQChecker scan; MARKUP_ANNOT_PARENT_ANNOT should report zero errors once every markup annotation OBJR sits directly under an Annot element.

Note: 8.9.2.1 lets other annotation types be enclosed by any semantically appropriate element, but 8.9.2.3 overrides this for markup annotations: their semantics come from the annotation type, so Annot is mandatory. The rule covers markup annotation subtypes only - do not move Widget OBJRs (they belong under Form, 8.10.1) or Link OBJRs (they belong under Link or Reference).

WCAG success criteria

1.3.1 Info and Relationships — Level A

Structure and relationships conveyed visually (headings, lists, tables, labels, groups) must also be available programmatically.

Understanding 1.3.1

Standards

This check contributes to the following standards:

PDF/UA WCAG A EN 301 549

Standard Criteria
PDF/UA-2 (ISO 14289-2:2024) 8.9.2.3 Markup annotations
EN 301 549 (non-web documents) 10.1.3.1