Normas de Accesibilidad Web – Principles, Guidelines, Criterions, Techniques

Aspose.HTML for Java proporciona el paquete com.aspose.html.accessibility, destinado a todas las manipulaciones y comprobaciones relacionadas con la accesibilidad web. En este artículo, aprenderá a utilizar la clase AccessibilityRules, que es un repositorio de requisitos, criterios de éxito y técnicas WCAG 2.0.

Las reglas de accesibilidad son un conjunto de directrices, estándares o buenas prácticas que definen cómo diseñar y desarrollar contenidos digitales, como sitios web, aplicaciones y medios de comunicación, para garantizar que puedan ser utilizados por personas con discapacidad. Estas normas ayudan a que las experiencias en línea sean accesibles para las personas con discapacidades visuales, auditivas, motoras o cognitivas, fomentando la inclusión digital y garantizando la igualdad de acceso a la información, los servicios y la tecnología para todos.

La estructura de la referencia rápida sobre accesibilidad web puede representarse como un diagrama, que se muestra a continuación:

Texto “La estructura de las normas de accesibilidad web – principios, pautas y criterios”.

Reglas de accesibilidad

La clase AccessibilityRules es un repositorio de requisitos, criterios de éxito y técnicas WCAG 2.0 y tiene una estructura que se corresponde con la especificación WCAG (Referencia rápida). Para ver la lista de reglas, es necesario inicializar el contenedor WebAccessibility y utilizar la propiedad Rules.

La propiedad devuelve un objeto de tipo AccessibilityRules, que tiene dichos métodos para acceder a las reglas:

MethodsDescription
getPrinciple(string code)Returns a Principle object by code from WCAG.
getPrinciples()Returns a list of principles IList<Principle>.
getRules(params string[] codes)Returns a list of rules IList< IRule> for given codes from WCAG.

El directorio contiene reglas que heredan de la clase abstracta Rule. Existen varios tipos de reglas:

IRule

Todas las reglas implementan la interfaz IRule es una interfaz pública que define las propiedades básicas de las reglas:

PropertyDescription
CodeRule code from the quick reference WCAG.
DescriptionDescription of Rule from the quick reference WCAG.

Rule

La clase abstracta base para todas las reglas, que implementa la interfaz IRule. Para obtener cualquier regla, puede utilizar el método getRules():

 1// Initialize a webAccessibility container
 2WebAccessibility webAccessibility = new WebAccessibility();
 3
 4// List of rule codes can contain both technique codes and principles,
 5// guidelines and criteria - all rules that implement the interface IRule
 6String[] rulesCodes = new String[]{"H2", "H37", "H30", "1.1", "1.2.1"};
 7
 8// Get a list of IRule objects; if a rule with the specified code is not found,
 9// it will not be in the list
10List<IRule> rules = webAccessibility.getRules().getRules(rulesCodes);
11
12// Get code and description of rule
13for (IRule rule : rules) {
14    System.out.println(String.format("%s: %s",
15            rule.getCode(),
16            rule.getDescription()
17    ));
18}
Example_GetRules hosted with ❤ by GitHub

El programa mostrará la salida en la consola:

1    H2:Combining adjacent image and text links for the same resource
2    H37:Using alt attributes on img elements
3    H30:Providing link text that describes the purpose of a link for anchor elements
4    1.1:Text Alternatives
5    1.2.1:Audio-only and Video-only (Prerecorded)

Principle

En el primer nivel de la lista de reglas se encuentran los Principles, que indican la dirección principal y el propósito de las reglas que se encuentran en esta sección. Por lo tanto, el trabajo con el directorio comienza con ellos.

La clase Principle hereda de IRule y también contiene una lista de directrices.

MethodDescription
getGuideline(string code)Get Guideline by code from WCAG, contained in principle. Return Guideline object.
getGuidelines()Get a list of Guideline from Principle. Return IList< Guideline> object.

Un ejemplo de cómo obtener un objeto Principle a partir de una lista de reglas:

 1// Initialize a webAccessibility container
 2WebAccessibility webAccessibility = new WebAccessibility();
 3
 4// Get the principle by code
 5Principle rule = webAccessibility.getRules().getPrinciple("1");
 6
 7// Get code and description of principle
 8System.out.println(String.format("%s: %s",
 9        rule.getCode(),
10        rule.getDescription()
11));
12// @output: 1:Perceivable
Example_GetPrinciple hosted with ❤ by GitHub

Guideline

La clase Guideline hereda de IRule y contiene una lista de criterios. Las Guidelines son el nivel siguiente a los principios. Esbozan marcos y objetivos generales que ayudan a los autores a comprender los criterios de éxito y a aplicar mejor las técnicas.

MethodDescription
getCriterion(string code)Get Guideline by code from WCAG, contained in current Guideline. Return Criterion object.
getCriterions()Get a list of Criterion from current Guideline. Return IList< Criterion> object.

Un ejemplo de cómo obtener un objeto Guideline a partir de una lista de reglas:

 1// Initialize a webAccessibility container
 2WebAccessibility webAccessibility = new WebAccessibility();
 3
 4// Get the principle by code
 5Principle principle = webAccessibility.getRules().getPrinciple("1");
 6
 7// Get guideline 1.1
 8Guideline guideline = principle.getGuideline("1.1");
 9if (guideline != null) {
10    System.out.println(String.format("%s: %s, %s",
11            guideline.getCode(),
12            guideline.getDescription(),
13            guideline
14    ));
15    // @output: 1.1:Text Alternatives
16}
Example_GetGuideline hosted with ❤ by GitHub

Criterion

La clase Criterion describe los criterios de éxito WCAG, heredados de la clase abstracta Rule. Puede encontrar información detallada aquí – Understanding Techniques for WCAG Success Criteria. La base para determinar la conformidad con las WCAG 2.0 son los criterios de éxito de la norma. El criterio contiene una lista de techniques para cumplir las pautas WCAG de accesibilidad al contenido web. Si todos los métodos suficientes para un criterio dado son compatibles con la accesibilidad, entonces se ha superado el criterio de éxito.

Utilice el método getCriterion(code) para acceder a los criterios de las pautas:

 1// Initialize a webAccessibility container
 2WebAccessibility webAccessibility = new WebAccessibility();
 3
 4// Get the principle by code
 5Principle principle = webAccessibility.getRules().getPrinciple("1");
 6
 7// Get guideline
 8Guideline guideline = principle.getGuideline("1.1");
 9
10// Get criterion by code
11Criterion criterion = guideline.getCriterion("1.1.1");
12if (criterion != null) {
13    System.out.println(String.format("%s: %s - %s",
14            criterion.getCode(),
15            criterion.getDescription(),
16            criterion.getLevel()
17    ));
18    // @output: 1.1.1:Non-text Content - A
19
20    // Get all Sufficient Techniques and write to console
21    for (IRule technique : criterion.getSufficientTechniques())
22        System.out.println(String.format("%s: %s",
23                technique.getCode(),
24                technique.getDescription()
25        ));
26}
Example_GetCriterion hosted with ❤ by GitHub

Comprobación de HTML según normas específicas de accesibilidad web

Este código demuestra cómo validar un documento HTML para la accesibilidad web utilizando el conjunto de reglas especificado.

 1String htmlPath = "input.html";
 2
 3// Initialize a webAccessibility container
 4WebAccessibility webAccessibility = new WebAccessibility();
 5
 6// List of necessary rules for checking (rule code according to the specification)
 7String[] rulesCode = new String[]{"H2", "H37", "H67", "H86"};
 8
 9// Get the required IList<Rule> rules from the rules reference
10List<IRule> rules = webAccessibility.getRules().getRules(rulesCode);
11
12// Create an accessibility validator, pass the found rules as parameters,
13// and specify the full validation settings
14AccessibilityValidator validator = webAccessibility.createValidator(
15        rules, ValidationBuilder.getAll());
16
17// Initialize an object of the HTMLDocument
18final HTMLDocument document = new HTMLDocument(htmlPath);
19// Check the document
20ValidationResult validationResult = validator.validate(document);
21
22// Return the result in string format
23// SaveToString - return only errors and warnings
24System.out.println(validationResult.saveToString());

Ver también

  • Encontrará consejos útiles para evaluar y mejorar la visibilidad del texto en el artículo Accesibilidad del contraste de color, que aborda la comprobación de contraste basada en WCAG con Aspose.HTML for Java.
  • Para obtener instrucciones sobre cómo comprobar la compatibilidad del contenido web con lectores de pantalla, consulte el artículo Accesibilidad de lectores de pantalla. Aprenderá a comprobar el texto alternativo y otros elementos clave.
  • Si desea aprender a ver los resultados de la validación e identificar problemas de accesibilidad web, consulte el artículo Resultados de la validación.
  • En el artículo Comprobación de accesibilidad web – Errores y advertencias, aprenderá cómo recopilar programáticamente en Java información de errores y advertencias mientras se verifica la accesibilidad de un sitio web.

Aspose.HTML ofrece una Comprobador de accesibilidad web gratuita en línea. Esta herramienta analiza páginas web, las valida según WCAG, identifica problemas y sugiere mejoras. Obtén información instantánea sobre el cumplimiento de tu sitio y determina qué ajustes necesitas hacer para alcanzar los requisitos de WCAG.

Texto “Comprobador de accesibilidad web”

Subscribe to Aspose Product Updates

Get monthly newsletters & offers directly delivered to your mailbox.