Addaw, ir a inicio Donar

Lección 4 de 10 · 14 min de lectura · Revisado el 26/10/2026

Por dentro del PDF etiquetado: contenido marcado, RoleMap y atributos

Para remediar con criterio y entender los informes de PAC no basta con saber que «el PDF tiene etiquetas»: hay que saber cómo están unidas las etiquetas al contenido de la página, qué hace el RoleMap (la tabla que traduce etiquetas propias a etiquetas estándar) y dónde viven el texto alternativo, el idioma o el ámbito de una celda. Esta lección abre el fichero por dentro. No necesitas programar, pero sí perderle el miedo a la sintaxis de PDF.

Dos capas unidas: contenido de página y árbol de estructura

Cada página de un PDF tiene un flujo de contenido (content stream): una lista de operadores que dibujan texto, líneas e imágenes. En un PDF etiquetado, esos operadores se agrupan en secuencias de contenido marcado, delimitadas por los operadores BDC (inicio) y EMC (fin). Cada secuencia que es contenido real lleva un número identificador, el MCID (marked-content identifier); las que son decoración se marcan como Artifact.

/H1 <</MCID 0>> BDC
  BT /F1 18 Tf 72 700 Td (Memoria anual 2025) Tj ET
EMC
/P <</MCID 1>> BDC
  BT /F2 11 Tf 72 670 Td (El ejercicio cerró con...) Tj ET
EMC
/Artifact <</Type /Pagination /Subtype /Footer>> BDC
  BT /F2 9 Tf 300 30 Td (14) Tj ET
EMC

Por otro lado está el árbol de estructura, que cuelga del catálogo del documento (/StructTreeRoot). Cada nodo es un elemento de estructura con un tipo (/S), un padre (/P), la página donde está su contenido (/Pg) y sus hijos (/K), que pueden ser otros elementos o MCID:

<< /Type /StructElem /S /H1 /P 12 0 R /Pg 5 0 R /K 0 >>

Ese /K 0 es el enlace: «mi contenido es la secuencia con MCID 0 de la página 5». El enlace inverso lo guarda el ParentTree, que permite a un visor saber, desde un trozo de texto de la página, a qué elemento de estructura pertenece. Cuando PAC informa de «contenido sin etiquetar», está diciendo que hay operadores de dibujo que no están en ninguna secuencia con MCID ni marcados como artefacto: es el punto 01 del Matterhorn Protocol.

Punto clave

Los paneles de Acrobat reflejan estas dos capas. El panel Etiquetas muestra el árbol de estructura; el panel Contenido muestra las secuencias de contenido marcado en el orden en que se dibujan; el panel Orden muestra las regiones de lectura. Por eso mover una etiqueta en el panel Etiquetas cambia lo que lee el lector de pantalla, pero no el orden de dibujo de la página.

Lo que debe constar en el catálogo

El catálogo incluye además entradas que ya conoces por su efecto: /MarkInfo <</Marked true>> (documento etiquetado; PDF/UA exige que no se marque como Suspects, etiquetado dudoso), /Lang (idioma principal), /ViewerPreferences <</DisplayDocTitle true>> (mostrar el título) y /Metadata, el flujo XMP con dc:title y, si se declara conformidad, pdfuaid:part.

Etiquetas estándar y RoleMap

PDF 1.7 define un conjunto de tipos de estructura estándar (Document, Part, Sect, H1–H6, P, L, Table, Figure, Formula, Link, Note, Span…). Son los únicos que las tecnologías de apoyo entienden. Sin embargo, muchos programas exportan etiquetas propias: el nombre de un estilo de párrafo («Titular», «Entradilla», «Cuerpo_texto») o tipos internos del generador. Para que sean interpretables, el RoleMap del StructTreeRoot debe traducirlas a un tipo estándar:

/RoleMap << /Titular /H2 /Entradilla /P /Destacado /P >>

PDF/UA-1 exige que toda etiqueta no estándar esté mapeada, directa o indirectamente, a una estándar, y prohíbe redefinir las estándar (mapear H2 a P, por ejemplo) y crear mapeos circulares. Son las condiciones del punto 02 (Mapeo de roles) del Matterhorn Protocol.

Error frecuente

Arreglar los encabezados cambiando el texto de la etiqueta en el panel Etiquetas cuando el problema está en el RoleMap. Si «Titular» está mapeado a P, todos los titulares del documento se leerán como párrafos aunque visualmente sean títulos. Revisa el mapa en Acrobat (panel Etiquetas > Opciones > Editar mapa de roles, Edit Role Map) o, mejor, corrige el mapeo en el origen, como verás con el Etiquetado de exportación de InDesign en la lección sobre crear PDF desde el origen.

En PDF/UA-2, PDF 2.0 añade espacios de nombres (namespaces): cada etiqueta pertenece al espacio de PDF 1.7, al de PDF 2.0 o a otro declarado, como MathML, y el mapeo se hace entre ellos. La idea es la misma: toda etiqueta debe resolverse en un tipo que el visor entienda.

Atributos: dónde viven el alt, el idioma y las cabeceras de tabla

Buena parte de la accesibilidad de un PDF no está en el tipo de la etiqueta, sino en sus atributos. Los más importantes:

AtributoPara qué sirveEjemplo de uso
/AltDescripción alternativa que se lee en lugar del contenidoFiguras, fórmulas, un logotipo
/ActualTextTexto exacto que sustituye a los caracteres dibujadosLetra capitular, ligaduras sin Unicode, texto dibujado como trazos
/EExpansión de una abreviatura«Excmo.» → «Excelentísimo»
/LangIdioma de un elemento distinto del principal (3.1.2)Un párrafo en catalán o una cita en inglés
/Scope, /Headers, /IDRelación entre celdas de datos y de cabeceraTabla con cabeceras de fila y columna
/RowSpan, /ColSpanCeldas que ocupan varias filas o columnasCabecera «2025» sobre cuatro trimestres
/ListNumberingTipo de numeración de una listaDecimal, letras, viñetas

La diferencia entre /Alt y /ActualText confunde a mucha gente. Alt describe: «Gráfico de barras: las solicitudes crecen un 12 % entre 2023 y 2025». ActualText sustituye: si un titular empieza con una «E» capitular dibujada aparte y el resto de la palabra en otro bloque, el lector dirá «E… l Ayuntamiento»; poniendo /ActualText (El) en el elemento que agrupa ambos fragmentos, leerá «El Ayuntamiento». Los atributos de tabla son los que rellenarás con el Editor de tablas en la lección de remediación: así sabrás dónde se guardan.

Ejemplo

Una fórmula de cálculo de una guía tributaria está dibujada con trazos vectoriales. En PDF/UA-1 se etiqueta como Formula con un /Alt que la lee en lenguaje natural («cuota igual a base liquidable multiplicada por el tipo de gravamen»). En PDF/UA-2 puede estructurarse además con MathML, lo que permite al lector de pantalla navegar por la fórmula término a término.

Anotaciones: enlaces y campos de formulario por dentro

Enlaces, campos de formulario, notas y firmas no son contenido de página, sino anotaciones superpuestas. Para que formen parte del orden lógico, el elemento de estructura correspondiente (Link o Form) debe contener una referencia a la anotación, llamada OBJR (object reference). Es lo que verás en el panel Etiquetas de Acrobat como «Vínculo - OBJR». Además:

  • PDF/UA-1 pide que las anotaciones tengan una descripción alternativa en la clave /Contents; en los enlaces, una descripción de su destino.
  • Las páginas con anotaciones deben llevar /Tabs /S, que indica que el orden de tabulación sigue la estructura. Es lo que hace en Acrobat la opción «Usar estructura del documento» en las propiedades de la página.
  • El nombre accesible de un campo es su clave /TU (user name), que Acrobat muestra como «Información sobre herramientas». El nombre interno /T («Texto1») no debe anunciarse.
  • Los formularios XFA dinámicos no son compatibles con PDF/UA y PDF 2.0 los declara obsoletos: un formulario XFA debe rehacerse como AcroForm o, mejor, como formulario web.

Leer un informe de PAC con este mapa

Con lo anterior, los mensajes de PAC dejan de ser crípticos. Algunas equivalencias habituales:

  • Contenido sin etiquetar: operadores fuera de cualquier MCID o artefacto. Etiquétalo o márcalo como artefacto desde el panel Contenido.
  • Tipo no estándar sin mapear: falta una entrada en el RoleMap.
  • Falta la clave Tabs: página con anotaciones sin /Tabs /S.
  • Anotación sin descripción alternativa: enlace o campo sin /Contents.
  • Glifo sin equivalencia Unicode o fuente no incrustada (puntos 10 y 31): el lector de pantalla lee caracteres, no dibujos. Compruébalo copiando un párrafo y pegándolo en el Bloc de notas: si no sale lo que ves, reexporta desde el origen o usa ActualText si es puntual.

Pruébalo tú

Abre en PAC un PDF exportado desde Word y entra en la vista de estructura lógica. Localiza un encabezado, una figura y una celda de cabecera de tabla, y anota qué atributos tiene cada uno (Alt, Lang, Scope). Si usas Acrobat Pro, compara con el panel Etiquetas y con la opción de Comprobaciones preliminares que examina la estructura interna del PDF (Browse Internal PDF Structure).

Resumen

  • Un PDF etiquetado une dos capas: secuencias de contenido marcado con MCID en cada página y un árbol de estructura que las referencia; el ParentTree hace el enlace inverso.
  • Las etiquetas propias deben mapearse a tipos estándar en el RoleMap; PDF/UA-1 prohíbe redefinir las estándar.
  • Alt describe, ActualText sustituye, E expande abreviaturas y Lang marca cambios de idioma; los atributos de tabla guardan ámbitos y cabeceras.
  • Enlaces y campos son anotaciones: necesitan OBJR en la estructura, descripción en Contents, /Tabs /S en la página y TU como nombre accesible.
  • Los mensajes de PAC se entienden con este mapa: contenido sin MCID, tipos sin mapear, falta de /Tabs o de Contents, glifos sin Unicode.

Comprueba lo que has aprendido

Esta lección se puede leer libremente. Para hacer su test de 3 preguntas, los ejercicios prácticos con páginas reales, guardar tu avance y optar al examen y al certificado, matricúlate en el curso.

Matricularme · nivel 6 (119 €)