logotipo

Metodología Unificada de Evaluación Web (UWEM 1.0)

5.6 Pauta 5 de WCAG 1.0

Create tables that transform gracefully.” (Cree tablas que se transformen correctamente)

Esta pauta brinda información sobre cómo identificar las tablas marcadas adecuadamente.

5.6.1 Punto de verificación 5.1

For data tables, identify row and column headers. [Priority 1]

(Véase http://www.w3.org/TR/WAI-WEBCONTENT-TECHS/#tech-table-headers y las técnicas en http://www.w3.org/TR/WAI-WEBCONTENT-TECHS/#tech-table-headers)

5.6.1.1 Pruebas para (X)HTML

Prueba 5.1_HTML_01

El objetivo de esta prueba es buscar tablas de datos que no tengan encabezamientos de fila o de columna.

Criterio de aplicabilidad: todas las tablas de datos.

  • //table

Procedimiento de prueba:

  1. Seleccionar las celdas de datos en la tabla de datos.
  2. Para cada celda de datos, comprobar que hay una celda de encabezamiento de fila y una celda de encabezamiento de columna que pueden identificarse por las secciones “Algorithm to find heading information” o “Associating header information with data cells” en la norma HTML 4.01. [31]

Resultados previstos: SUPERADA si el nº 2 es verdadero.

Totalmente automatizable: No.

Prueba 5.1_HTML_02

El objetivo de esta prueba es identificar el uso de preformateado de texto para mostrar información en forma tabular. El texto preformateado no tiene mecanismos para especificar los encabezamientos de las filas ni de las columnas.

Criterio de aplicabilidad: texto preformateado.

  • //pre

Procedimiento de prueba: Determinar si el texto preformateado se presenta visualmente en forma de tabla.

Resultados previstos: NO SUPERADA si verdadero.

Totalmente automatizable: no.

5.6.2 Punto de verificación 5.2

For data tables that have two or more logical levels of row or column headers, use markup to associate data cells and header cells. [Priority 1]

(Véase http://www.w3.org/TR/WCAG10-TECHS/#tech-table-structure y las técnicas en http://www.w3.org/TR/WCAG10-HTML-TECHS/#identifying-table-rows-columns)

Prueba 5.2_HTML_01

El objetivo de esta prueba es identificar tablas con uno o más niveles lógicos de filas o columnas que no están marcados correctamente usando el marcado de tabla que asocia las filas y las columnas.

Criterio de aplicabilidad: tablas de datos donde el contenido de cada celda de datos tiene una relación con al menos dos encabezamientos de filas y/o al menos dos encabezamientos de columnas.

  • //table

Procedimiento de prueba:

  • 1. Para cada celda de datos, comprobar que se aplica al menos una de las dos afirmaciones siguientes:
  • 1.a. El atributo headers contiene una lista separada por espacios de todos los valores de los atributos ID de las celdas del encabezamiento con las que la celda de datos tiene una relación;
  • 1.b. Todas las celdas del encabezamiento de columnas tienen un atributo scope con el valor “col” y todas las celdas del encabezamiento de la fila tienen un atributo con el valor “row”.

Resultados previstos: SUPERADA si el nº 1.a o el nº 1.b es verdadero.

Totalmente automatizable: no.

Prueba 5.2_HTML_02

El objetivo de esta prueba es determinar si las celdas de encabezamiento en un encabezamiento con dos o más niveles están clasificadas de forma coherente. La prueba no requiere que el atributo axis (eje) se use siempre sino que las categorías identificadas por el atributo sean apropiadas o lógicas.

Criterios de aplicabilidad: encabezamientos de celdas con dos niveles o más.

  • //table[count(descendant::tr[th]) > 1]
  • //table[count(descendant::tr[td[@scope]]) > 1]
  • //table[descendant::tr[count(th) > 1]]
  • //table[descendant::tr[count(td[@scope]) > 1]]
  • //table[descendant::td[boolean(substring-after(substringafter(normalize-space(@headers), ''), ' ')]]

Procedimiento de prueba: Para cada celda de encabezamiento en un encabezamiento de tabla con dos niveles o más, comprobar que cualquier atributo axis indica de forma coherente la categoría a la que la celda de encabezamiento pertenece. Tener en cuenta que el valor del atributo axis es una etiqueta que puede presentarse al usuario, en lugar de ser una clase o un nombre legible únicamente por una máquina.

Resultados previstos: NO SUPERADA si falso.

Totalmente automatizable: no.

Prueba 5.2_HTML_03

El objetivo de esta prueba es buscar incoherencias en la estructura de tablas. Esta prueba no requiere que se use siempre COLGROUP, THEAD, TFOOT OR TBODY, sino que su uso sea apropiado o lógico.

Criterio de aplicabilidad: tablas que definen los grupos de columnas, los encabezamientos de tablas, los pies de tablas y los cuerpos de tablas.

  • //table[colgroup]
  • //table[thead]
  • //table[tfoot]
  • //table[tbody]

Procedimiento de prueba: Comprobar que cada uno de los elementos seleccionados estructura de forma correcta la tabla.

Resultados previstos: NO SUPERADA si falso.

Totalmente automatizable: no.

5.6.3 Punto de verificación 5.3

Do not use tables for layout unless the table makes sense when linearized. Otherwise, if the table does not make sense, provide an alternative equivalent (which may be a linearized version). [Priority 2]

(Véase http://www.w3.org/TR/WAI-WEBCONTENT-TECHS/#tech-avoid-table-for-layout)

5.6.3.1 Pruebas para (X)HTML

Prueba 5.3_HTML_01

El objetivo de esta prueba es buscar tablas de configuración que no transmitan la misma información cuando estén linealizadas.

Criterios de aplicabilidad: tablas de maquetación.

  • //table[not(@summary) and not(child::caption)]
  • //table

Procedimiento de prueba: Comprobar que la tabla transmite la misma información cuando está linealizada. [32]

Resultados previstos: SUPERADA si es verdad. NO SUPERADA si falso.

Totalmente automatizable: no.

5.6.4 Punto de verificación 5.4

If a table is used for layout, do not use any structural markup for the purpose of visual formatting. [Priority 2]

(Véase http://www.w3.org/TR/WCAG10-TECHS/#tech-table-layout y las técnicas en http://www.w3.org/TR/WCAG10-HTML-TECHS/#tables-layout)

5.6.4.1 Pruebas para (X)HTML

Prueba 5.4_HTML_01

El objetivo de esta prueba es comprobar que los encabezamientos de las tablas únicamente se usan en tablas de datos.

Criterios de aplicabilidad: tablas con celdas de encabezamientos.

  • //table[descendant::th]
  • //table[descendant::td[@scope]]
  • //table[descendant::td[@axis]]

Procedimiento de prueba: Comprobar que la tabla es una tabla de datos.

Resultados previstos: SUPERADA si verdadero. NO SUPERADA si falso.

Totalmente automatizable: no.

Prueba 5.4_HTML_02

El objetivo de esta prueba es comprobar que los encabezamientos y los pies de tablas sólo se usan en tablas de datos.

Criterios de aplicabilidad: tablas con encabezamientos y/o pies.

  • //table[thead]
  • //table[tfoot]

Procedimiento de prueba: Comprobar que la tabla es una tabla de datos.

Resultado previsto: SUPERADA si verdadero. NO SUPERADA si falso.

Totalmente automatizable: no.

Prueba 5.4_HTML_03

El objetivo de esta prueba es comprobar que los atributos ID y HEADERS únicamente se usan en tablas de datos.

Criterios de aplicabilidad: tablas con una o más celdas de datos con un atributo HEADERS y uno o más celdas de encabezamiento con el atributo ID.

  • //table[descendant::th[@id]]
  • //table[descendant::td[@id]]
  • //table[descendant::td[@headers]]

Procedimiento de prueba: Comprobar que la tabla es una tabla de datos.

Resultado previsto: SUPERADA si verdadero. NO SUPERADA si falso.

Totalmente automatizable: no.

Prueba 5.4_HTML_04

El objetivo de esta prueba es comprobar que los títulos de tabla (el elemento caption) se usan únicamente para las tablas de datos.

Criterios de aplicabilidad: tablas con un subtítulo.

  • //table[descendant::caption]

Procedimiento de prueba: Comprobar que la tabla es una tabla de datos.

Resultados previstos: SUPERADA si verdadero. NO SUPERADA si falso.

Totalmente automatizable: no.

Prueba 5.4_HTML_05

El objetivo de esta prueba es comprobar que las celdas están clasificadas por categorías únicamente en tablas de datos.

Criterios de aplicabilidad: las tablas en los que las celdas están clasificadas por categorías por medio del atributo AXIS.

  • //table[descendant::th[@axis]]
  • //table[descendant::td[@axis]]

Procedimiento de prueba: Comprobar que la tabla es una tabla de datos.

Resultados previstos: SUPERADA si verdadero. NO SUPERADA si falso.

Totalmente automatizable: no.

* Advertencia: Esta traducción al español de UWEM 1.0 ha sido realizada por Technosite en noviembre del 2006. Technosite no se responsabiliza de los errores o imprecisiones de traducción ni sus eventuales consecuencias. La versión oficial de UWEM 1.0 en inglés se puede consultar en el sitio del WAB Cluster.