1{
2	"lang": "es",
3	"rules": {
4		"accesskeys": {
5			"description": "Garantiza que cada valor para el atributo accesskey es único",
6			"help": "El valor del atributo accesskey debe ser único"
7		},
8		"area-alt": {
9			"description": "Garantiza que los elementos <area> de los mapas de imágenes tienen texto alternativo",
10			"help": "Los elementos <area> activos deben tener texto alternativo"
11		},
12		"aria-allowed-attr": {
13			"description": "Garantiza que los atributos ARIA están permitidos para el rol de un elemento",
14			"help": "Los elementos solo deben usar atributos ARIA permitidos"
15		},
16		"aria-allowed-role": {
17			"description": "Garantiza que el atributo role tiene un valor apropiado para el elemento",
18			"help": "ARIA role debe ser apropiado para el elemento"
19		},
20		"aria-hidden-body": {
21			"description": "Garantiza que aria-hidden='true' no está presente en el 'body' del documento.",
22			"help": "aria-hidden='true' no debe estar presente en el 'body' del documento"
23		},
24		"aria-hidden-focus": {
25			"description": "Garantiza que los elementos 'aria-hidden' no contienen elementos que admitan el foco",
26			"help": "Los elementos 'ARIA hidden' no deben contener elementos que admitan el foco"
27		},
28		"aria-input-field-name": {
29			"description": "Garantiza que cada 'ARIA input field' tiene un nombre accesible",
30			"help": "Los 'ARIA input fields' tienen un nombre accesible"
31		},
32		"aria-required-attr": {
33			"description": "Garantiza que los elementos con 'ARIA roles' tienen todos los atributos ARIA requeridos",
34			"help": "Deben proporcionarse los atributos ARIA requeridos"
35		},
36		"aria-required-children": {
37			"description": "Garantiza que los elementos con un 'ARIA role' que requieren 'child roles' los contienen",
38			"help": "Ciertos 'ARIA roles' deben contener determinados hijos"
39		},
40		"aria-required-parent": {
41			"description": "Garantiza que los elementos con un 'ARIA role' que requieren 'parent roles' están contenidos en ellos",
42			"help": "Ciertos 'ARIA roles' deben estar contenidos en determinados padres"
43		},
44		"aria-roles": {
45			"description": "Garantiza que todos los elementos con un atributo role usan un valor válido",
46			"help": "Los 'ARIA roles' usados deben cumplir los requisitos para valores válidos"
47		},
48		"aria-toggle-field-name": {
49			"description": "Garantiza que cada 'ARIA toggle field' tiene un nombre accesible",
50			"help": "Los 'ARIA toggle fields' tienen un nombre accesible"
51		},
52		"aria-valid-attr-value": {
53			"description": "Garantiza que todos los atributos ARIA tienen valores válidos",
54			"help": "Los atributos ARIA deben cumplir los requisitos para valores válidos"
55		},
56		"aria-valid-attr": {
57			"description": "Garantiza que los atributos que empiezan por aria- son atributos ARIA válidos",
58			"help": "Los atributos ARIA deben cumplir los requisitos para nombres válidos"
59		},
60		"audio-caption": {
61			"description": "Garantiza que los elementos <audio> tienen subtítulos",
62			"help": "Los elementos <audio> deben tener una pista de subtítulos"
63		},
64		"autocomplete-valid": {
65			"description": "Garantizar que el atributo autocomplete es correcto y adecuado para el campo de formulario",
66			"help": "El atributo autocomplete debe usarse correctamente"
67		},
68		"avoid-inline-spacing": {
69			"description": "Garantizar que el espaciado de texto establecido mediante atributos style se puede ajustar con hojas de estilo personalizadas",
70			"help": "El espaciado de texto 'inline' debe poder ajustarse mediante hojas de estilo personalizadas"
71		},
72		"blink": {
73			"description": "Garantiza que no se usan elementos <blink>",
74			"help": "Los elementos <blink> están obsoletos y no deben usarse"
75		},
76		"button-name": {
77			"description": "Garantiza que los botones tienen texto discernible",
78			"help": "Los botones deben tener texto discernible"
79		},
80		"bypass": {
81			"description": "Garantiza que cada página tiene al menos un medio para que un usuario pueda saltarse la navegación y pasar directamente al contenido",
82			"help": "Las páginas deben tener medios para saltarse bloques repetidos"
83		},
84		"color-contrast": {
85			"description": "Garantiza que el contraste entre colores de primer plano y fondo cumple los límites de la ratio para contraste WCAG 2 AA",
86			"help": "Los elementos deben tener un contraste de colores suficiente"
87		},
88		"css-orientation-lock": {
89			"description": "Garantiza que el contenido no está bloqueado en ninguna orientación de pantalla específica, y que el contenido es manejable en cualquier orientación de pantalla",
90			"help": "Las 'CSS Media queries' no se usan para bloquear la orientación de pantalla"
91		},
92		"definition-list": {
93			"description": "Garantiza que los elementos <dl> están estructurados correctamente",
94			"help": "Los elementos <dl> solo deben contener directamente grupos de <dt> y <dd> debidamente ordenados, o elementos <script> o <template>"
95		},
96		"dlitem": {
97			"description": "Garantiza que los elementos <dt> y <dd> están contenidos en un <dl>",
98			"help": "Los elementos <dt> y <dd> deben estar contenidos en un <dl>"
99		},
100		"document-title": {
101			"description": "Garantiza que cada documento HTML tiene un elemento <title> no vacío",
102			"help": "Los documentos deben tener elementos <title> para ayudar en la navegación"
103		},
104		"duplicate-id-active": {
105			"description": "Garantiza que cada valor para el atributo id de elementos activos es único",
106			"help": "Los 'IDs' de elementos activos deben ser únicos"
107		},
108		"duplicate-id-aria": {
109			"description": "Garantiza que cada valor del atributo id usado en ARIA y en 'labels' es único",
110			"help": "Los 'IDs' usados en ARIA y en 'labels' deben ser únicos"
111		},
112		"duplicate-id": {
113			"description": "Garantiza que cada valor para el atributo id es único",
114			"help": "El valor del atributo id debe ser único"
115		},
116		"empty-heading": {
117			"description": "Garantiza que los encabezados tienen texto discernible",
118			"help": "Los encabezados no deben estar vacíos"
119		},
120		"focus-order-semantics": {
121			"description": "Garantiza que los elementos en orden de foco tienen un rol apropiado",
122			"help": "Los elementos en orden de foco necesitan un rol apropiado para contenido interactivo"
123		},
124		"form-field-multiple-labels": {
125			"description": "Garantiza que el campo de formulario no tiene múltiples elementos label",
126			"help": "El campo de formulario no debe tener múltiples elementos label"
127		},
128		"frame-tested": {
129			"description": "Garantiza que los elementos <iframe> y <frame> contienen el script axe-core",
130			"help": "Los marcos deben probarse con axe-core"
131		},
132		"frame-title-unique": {
133			"description": "Garantiza que los elementos <iframe> y <frame> contienen un atributo título único",
134			"help": "Los marcos deben tener un único atributo title"
135		},
136		"frame-title": {
137			"description": "Garantiza que los elementos <iframe> y <frame> contienen un atributo título no vacío",
138			"help": "Los marcos deben tener el atributo title"
139		},
140		"heading-order": {
141			"description": "Garantiza que el orden de los encabezados es semánticamente correcto",
142			"help": "El nivel de encabezados solo debería incrementarse en 1"
143		},
144		"hidden-content": {
145			"description": "Informa a los usuarios sobre contenido oculto.",
146			"help": "El contenido oculto de la página no se puede analizar"
147		},
148		"html-has-lang": {
149			"description": "Garantiza que cada documento HTML tiene un atributo lang",
150			"help": "El elemento <html> debe tener un atributo lang"
151		},
152		"html-lang-valid": {
153			"description": "Garantiza que el atributo lang del elemento <html> tiene un valor válido",
154			"help": "El elemento <html> debe tener un valor válido para el atributo lang"
155		},
156		"html-xml-lang-mismatch": {
157			"description": "Garantizar que en los elementos HTML con atributos tanto lang como xml:lang válidos haya concordancia en el idioma base de la página",
158			"help": "Los elementos HTML con lang y xml:lang deben tener el mismo idioma base"
159		},
160		"image-alt": {
161			"description": "Garantiza que los elementos <img> tienen texto alternativo o un rol de none o presentation",
162			"help": "Las imágenes deben tener texto alternativo"
163		},
164		"image-redundant-alt": {
165			"description": "Garantiza que la alternativa a la imagen no se repite como texto",
166			"help": "El texto alternativo de las imágenes no debe repetirse como texto"
167		},
168		"input-button-name": {
169			"description": "Garantizar que los 'input buttons' tienen texto discernible",
170			"help": "Los 'Input buttons' deben tener texto discernible"
171		},
172		"input-image-alt": {
173			"description": "Garantiza que los elementos <input type=\"image\"> tienen texto alternativo",
174			"help": "Los 'image buttons' deben tener texto alternativo"
175		},
176		"label-content-name-mismatch": {
177			"description": "Garantiza que, en los elementos etiquetados mediante su contenido, su texto visible debe formar parte de su nombre accesible",
178			"help": "Los elementos deben tener su texto visible como parte de su nombre accesible"
179		},
180		"label-title-only": {
181			"description": "Garantiza que cada elemento de formulario no está etiquetado únicamente mediante los atributos title o aria-describedby ",
182			"help": "Los elementos de formulario deben tener una etiqueta visible"
183		},
184		"label": {
185			"description": "Garantiza que cada elemento de formulario tiene una etiqueta",
186			"help": "Los elementos de formulario deben tener etiquetas"
187		},
188		"landmark-banner-is-top-level": {
189			"description": "Garantiza que el punto de referencia banner está en el nivel superior",
190			"help": "El punto de referencia banner no debe estar contenido en otro punto de referencia"
191		},
192		"landmark-complementary-is-top-level": {
193			"description": "Garantiza que el punto de referencia complementary o aside está en el nivel superior",
194			"help": "Aside no debe estar contenido en otro punto de referencia"
195		},
196		"landmark-contentinfo-is-top-level": {
197			"description": "Garantiza que el punto de referencia contentinfo está en el nivel superior",
198			"help": "El punto de referencia contentinfo no debe estar contenido en otro punto de referencia"
199		},
200		"landmark-main-is-top-level": {
201			"description": "Garantiza que el punto de referencia main está en el nivel superior",
202			"help": "El punto de referencia main no debe estar contenido en otro punto de referencia"
203		},
204		"landmark-no-duplicate-banner": {
205			"description": "Garantiza que el documento tiene, como mucho, un punto de referencia banner",
206			"help": "El documento no debe tener más de un punto de referencia banner"
207		},
208		"landmark-no-duplicate-contentinfo": {
209			"description": "Garantiza que el documento tiene, como mucho, un punto de referencia contentinfo",
210			"help": "El documento no debe tener más de un punto de referencia contentinfo"
211		},
212		"landmark-one-main": {
213			"description": "Garantiza que el documento solo tiene un punto de referencia main y que cada marco incorporado en la página tiene, como mucho, un punto de referencia main",
214			"help": "El documento debe tener un punto de referencia main"
215		},
216		"landmark-unique": {
217			"help": "Garantiza que los puntos de referencia son únicos",
218			"description": "Los puntos de referencia deben tener una única combinación de role o role/label/title (es decir, un nombre accesible único)"
219		},
220		"link-in-text-block": {
221			"description": "Los enlaces pueden distinguirse sin depender del color",
222			"help": "Los enlaces deben distinguirse del texto adyacente por un medio que no dependa del color"
223		},
224		"link-name": {
225			"description": "Garantiza que los enlaces tienen texto discernible",
226			"help": "Los enlaces deben tener texto discernible"
227		},
228		"list": {
229			"description": "Garantiza que las listas están estructuradas correctamente",
230			"help": "<ul> y <ol> solo deben contener directamente elementos <li>, <script> o <template>"
231		},
232		"listitem": {
233			"description": "Garantiza que los elementos <li> se utilizan semánticamente",
234			"help": "Los elementos <li> deben estar contenidos en un <ul> o un <ol>"
235		},
236		"marquee": {
237			"description": "Garantiza que no se usan elementos <marquee>",
238			"help": "Los elementos <marquee> están obsoletos y no deben usarse"
239		},
240		"meta-refresh": {
241			"description": "Garantiza que no se usa <meta http-equiv=\"refresh\">",
242			"help": "El refresco programado no debe existir"
243		},
244		"meta-viewport-large": {
245			"description": "Garantizar que <meta name=\"viewport\"> puede ampliarse en grado significativo",
246			"help": "Los usuarios deben poder hacer zum y ampliar el texto hasta 500%"
247		},
248		"meta-viewport": {
249			"description": "Garantiza que <meta name=\"viewport\"> no impide la ampliación y el zum en el texto",
250			"help": "No debe impedirse el zum y la ampliación"
251		},
252		"object-alt": {
253			"description": "Garantiza que los elementos <object> tienen texto alternativo",
254			"help": "Los elementos <object> deben tener texto alternativo"
255		},
256		"p-as-heading": {
257			"description": "Garantizar que los elementos p no se usan para diseñar encabezados",
258			"help": "No se usa texto en negrita, cursiva o tamaño de fuente para dar estilo de encabezados a elementos p"
259		},
260		"page-has-heading-one": {
261			"description": "Garantizar que la página, o al menos uno de sus marcos, contiene un encabezado de nivel 1",
262			"help": "La página debe contener un encabezado de nivel 1"
263		},
264		"region": {
265			"description": "Garantiza que todo el contenido de la página está incluido en puntos de referencia",
266			"help": "Todo el contenido de la página debe estar incluido en puntos de referencia"
267		},
268		"role-img-alt": {
269			"description": "Garantiza que los elementos [role='img'] tienen texto alternativo",
270			"help": "Los elementos [role='img'] tienen un texto alternativo"
271		},
272		"scope-attr-valid": {
273			"description": "Garantiza que el atributo scope se usa correctamente en las tablas",
274			"help": "El atributo scope debería usarse correctamente"
275		},
276		"scrollable-region-focusable": {
277			"description": "Los elementos que tienen contenido que puede desplazarse verticalmente (en 'scroll') deberían ser accesibles mediante el teclado",
278			"help": "Asegurar que la región de desplazamiento vertical ('scroll') tiene acceso por teclado"
279		},
280		"server-side-image-map": {
281			"description": "Garantiza que no se usan mapas de imágenes del lado del servidor",
282			"help": "No deben usarse mapas de imágenes del lado del servidor"
283		},
284		"skip-link": {
285			"description": "Garantizar que todos los enlaces de salto ('skip') tienen un destino que admite el foco",
286			"help": "El destino del enlace de salto ('skip') debería existir y admitir el foco"
287		},
288		"tabindex": {
289			"description": "Garantiza que los valores del atributo tabindex no son mayores que 0",
290			"help": "Los elementos no deberían tener un tabindex mayor que 0"
291		},
292		"table-duplicate-name": {
293			"description": "Garantizar que las tablas no tienen el mismo summary y caption",
294			"help": "El elemento <caption> no debería contener el mismo texto que el atributo summary"
295		},
296		"table-fake-caption": {
297			"description": "Garantizar que las tablas con título usan el elemento <caption>.",
298			"help": "Las celdas de datos o de encabezados no deberían usarse para dar título a una tabla de datos."
299		},
300		"td-has-header": {
301			"description": "Garantizar que cada celda de datos no vacía de una tabla grande tiene uno o más encabezados de tabla",
302			"help": "Todos los elementos td no vacíos de una tabla mayor que 3 por 3 deben tener un encabezado de tabla asociado"
303		},
304		"td-headers-attr": {
305			"description": "Garantizar que cada celda que use los encabezados en una tabla haga referencia a otra celda de esa tabla",
306			"help": "Todas las celdas de un elemento table que usen el atributo headers deben hacer referencia solo a otras celdas de esa misma tabla"
307		},
308		"th-has-data-cells": {
309			"description": "Garantizar que cada encabezado de tabla en una tabla de datos hace referencia a celdas de datos",
310			"help": "Todos los elementos th y elementos con role=columnheader/rowheader deben tener las celdas de datos que describen"
311		},
312		"valid-lang": {
313			"description": "Garantiza que los atributos lang tienen valores válidos",
314			"help": "El atributo lang debe tener un valor válido"
315		},
316		"video-caption": {
317			"description": "Garantiza que los elementos <video> tienen subtítulos",
318			"help": "Los elementos <video> deben tener subtítulos"
319		}
320	},
321	"checks": {
322		"abstractrole": {
323			"pass": "No se usan 'abstract roles'",
324			"fail": "Los 'abstract roles' no se pueden usar directamente"
325		},
326		"aria-allowed-attr": {
327			"pass": "Los atributos ARIA se usan correctamente para el rol definido",
328			"fail": {
329				"singular": "En ARIA, atributos no están permitidos : ${data.values}",
330				"plural": "En ARIA, atributono está permitido : ${data.values}"
331			}
332		},
333		"aria-allowed-role": {
334			"pass": "El rol ARIA está permitido para el elemento proporcionado",
335			"fail": {
336				"singular": "En ARIA, roles ${data.values} no están permitidos para el elemento proporcionado",
337				"plural": "En ARIA, role ${data.values}  no está permitido para el elemento proporcionado"
338			},
339			"incomplete": {
340				"singular": "En ARIA, hay que eliminar roles ${data.values} cuando el elemento se haga visible, ya que no están permitidos para el elemento",
341				"plural": "En ARIA, hay que eliminar role ${data.values} cuando el elemento se haga visible, ya que no está permitido para el elemento"
342			}
343		},
344		"aria-hidden-body": {
345			"pass": "No hay ningún atributo aria-hidden presente en el 'body' del documento",
346			"fail": "aria-hidden=true no debe estar presente en el 'body' del documento"
347		},
348		"aria-errormessage": {
349			"pass": "Usa una técnica admitida para aria-errormessage",
350			"fail": {
351				"singular": "En aria-errormessage, valores  ${data.values}`, se debe usar una técnica para anunciar el mensaje (p. ej., aria-live, aria-describedby, role=alert, etc.)",
352				"plural": "En aria-errormessage, valor  ${data.values}`, se debe usar una técnica para anunciar el mensaje (p. ej., aria-live, aria-describedby, role=alert, etc.)"
353			}
354		},
355		"has-widget-role": {
356			"pass": "El elemento tiene un rol de widget.",
357			"fail": "El elemento no tiene un rol de widget."
358		},
359		"invalidrole": {
360			"pass": "El rol ARIA es válido",
361			"fail": "El rol debe ser uno de los roles ARIA válidos"
362		},
363		"no-implicit-explicit-label": {
364			"pass": "No hay discordancia entre un <label> y el nombre accesible",
365			"incomplete": "Comprobar que el <label> no necesita ser parte del ARIA ${data} para el nombre del campo"
366		},
367		"aria-required-attr": {
368			"pass": "Todos los atributos ARIA requeridos están presentes",
369			"fail": {
370				"singular": "Atributos requeridos no presentes: ${data.values}",
371				"plural": "Atributo requerido no presente: ${data.values}"
372			}
373		},
374		"aria-required-children": {
375			"pass": "Los hijos ARIA requeridos están presentes",
376			"fail": {
377				"singular": "Rol de hijos requerido en ARIA no presente: ${data.values}",
378				"plural": "Rol de hijo requerido en ARIA no presente: ${data.values}"
379			},
380			"incomplete": {
381				"singular": "Esperando que se añada rol ARIA para hijos: ${data.values}",
382				"plural": "Esperando que se añada rol ARIA para hijo: ${data.values}"
383			}
384		},
385		"aria-required-parent": {
386			"pass": "Rol de padre requerido en ARIA presente",
387			"fail": {
388				"singular": "Rol de ARIA requerido para padre s no presente: ${data.values}",
389				"plural": "Rol de ARIA requerido para padre  no presente: ${data.values}"
390			}
391		},
392		"aria-unsupported-attr": {
393			"pass": "El atributo ARIA está admitido",
394			"fail": "El atributo ARIA no está ampliamente admitido en lectores de pantalla y tecnologías de apoyo:  ${data.values}"
395		},
396		"unsupportedrole": {
397			"pass": "El rol ARIA está admitido",
398			"fail": "El rol usado no está ampliamente admitido en lectores de pantalla y tecnologías de apoyo:  ${data.values}"
399		},
400		"aria-valid-attr-value": {
401			"pass": "Los valores de los atributos ARIA son válidos",
402			"fail": {
403				"singular": "Valores no válidos para atributo ARIA: ${data.values}",
404				"plural": "Valor no válido para atributo ARIA: ${data.values}"
405			},
406			"incomplete": {
407				"singular": "Atributos ARIA ID de elemento no existe en la página: ${data.values}",
408				"plural": "Atributo ARIA ID de elemento no existe en la página: ${data.values}"
409			}
410		},
411		"aria-valid-attr": {
412			"pass": {
413				"singular": "Nombres de atributos ARIA válidos",
414				"plural": "Nombrede atributo ARIA válido"
415			},
416			"fail": {
417				"singular": "Nombres de atributos ARIA no válidos:  ${data.values}",
418				"plural": "Nombre de atributo ARIA no válido:  ${data.values}"
419			}
420		},
421		"valid-scrollable-semantics": {
422			"pass": "El elemento tiene una semántica válida para un elemento en orden de foco.",
423			"fail": "El elemento tiene una semántica no válida para un elemento en orden de foco."
424		},
425		"color-contrast": {
426			"pass": "El elemento tiene un contraste de color suficiente de ${data.contrastRatio}",
427			"fail": "El elemento tiene un contraste de color insuficiente de ${data.contrastRatio} (color de primer plano: ${data.fgColor}, color de fondo: ${data.bgColor}, tamaño de fuente: ${data.fontSize}, grosor de fuente: ${data.fontWeight}). Ratio de contraste esperado: ${data.expectedContrastRatio}",
428			"incomplete": {
429				"bgImage": "El color de fondo del elemento no se pudo determinar debido a una imagen de fondo",
430				"bgGradient": "El color de fondo del elemento no se pudo determinar debido a un degradado de fondo",
431				"imgNode": "El color de fondo del elemento no se pudo determinar porque el elemento contiene un nodo de imagen",
432				"bgOverlap": "El color de fondo no se pudo determinar porque tiene otro elemento superpuesto",
433				"fgAlpha": "El color de fondo no se pudo determinar debido a una transparencia alfa",
434				"elmPartiallyObscured": "El color de fondo no se pudo determinar porque está parcialmente oculto por otro elemento",
435				"elmPartiallyObscuring": "El color de fondo del elemento no se pudo determinar porque se superpone parcialmente a otros elementos",
436				"outsideViewport": "El color de fondo del elemento no se pudo determinar porque está fuera de la ventana gráfica ('viewport')",
437				"equalRatio": "El elemento tiene una ratio de contraste 1:1 con el fondo",
438				"shortTextContent": "El contenido del elemento es demasiado corto para determinar si es contenido de texto propiamente dicho",
439				"default": "Imposible determinar la ratio de contraste"
440			}
441		},
442		"link-in-text-block": {
443			"pass": "Los enlaces se pueden distinguir respecto al texto adyacente de forma ajena al color",
444			"fail": "Es necesario distinguir los enlaces respecto al texto adyacente de una forma ajena al color",
445			"incomplete": {
446				"bgContrast": "No se pudo determinar la ratio de contraste del elemento. Comprobar si existe un estilo hover/focus distinto",
447				"bgImage": "La ratio de contraste del elemento no se pudo determinar debido a una imagen de fondo",
448				"bgGradient": "La ratio de contraste del elemento no se pudo determinar debido a un degradado de fondo",
449				"imgNode": "La ratio de contraste del elemento no se pudo determinar porque el elemento contiene un nodo de imagen",
450				"bgOverlap": "La ratio de contraste del elemento no se pudo determinar debido a superposición de elementos",
451				"default": "Imposible determinar la ratio de contraste"
452			}
453		},
454		"autocomplete-appropriate": {
455			"pass": "el valor de autocomplete está en un elemento apropiado",
456			"fail": "el valor de autocomplete es inapropiado para este tipo de input"
457		},
458		"autocomplete-valid": {
459			"pass": "el atributo autocomplete está formateado correctamente",
460			"fail": "el atributo autocomplete está formateado incorrectamente"
461		},
462		"accesskeys": {
463			"pass": "El valor del atributo accesskey es único",
464			"fail": "El documento tiene múltiples elementos con el mismo accesskey"
465		},
466		"focusable-content": {
467			"pass": "El elemento contiene elementos que admiten el foco",
468			"fail": "El elemento debería tener contenido que admita el foco"
469		},
470		"focusable-disabled": {
471			"pass": "Dentro del elemento no hay elementos que admitan el foco",
472			"fail": "El contenido que admita el foco debería ser desactivado o eliminado del DOM"
473		},
474		"focusable-element": {
475			"pass": "El elemento admite el foco",
476			"fail": "El elemento debería admitir el foco"
477		},
478		"focusable-no-name": {
479			"pass": "El elemento no está en orden de tabulación o tiene texto accesible",
480			"fail": "El elemento está en orden de tabulación y no tiene texto accesible"
481		},
482		"focusable-not-tabbable": {
483			"pass": "Dentro del elemento no hay elementos que admitan el foco",
484			"fail": "El contenido que admita el foco debería tener tabindex='-1' o ser eliminado del DOM"
485		},
486		"landmark-is-top-level": {
487			"pass": "El punto de referencia ${data.role} está en el nivel superior.",
488			"fail": "El punto de referencia ${data.role} está contenido en otro punto de referencia."
489		},
490		"page-has-heading-one": {
491			"pass": "La página tiene al menos un encabezado de nivel 1",
492			"fail": "La página debe tener un encabezado de nivel 1"
493		},
494		"page-has-main": {
495			"pass": "El documento tiene al menos un punto de referencia main",
496			"fail": "El documento no tiene punto de referencia main"
497		},
498		"page-no-duplicate-banner": {
499			"pass": "El documento no tiene más de un punto de referencia banner",
500			"fail": "El documento tiene más de un punto de referencia banner"
501		},
502		"page-no-duplicate-contentinfo": {
503			"pass": "El documento no tiene más de un punto de referencia contentinfo",
504			"fail": "El documento tiene más de un punto de referencia contentinfo"
505		},
506		"page-no-duplicate-main": {
507			"pass": "El documento no tiene más de un punto de referencia main",
508			"fail": "El documento tiene más de un punto de referencia main"
509		},
510		"tabindex": {
511			"pass": "El elemento no tiene un tabindex mayor que 0",
512			"fail": "El elemento tiene un tabindex mayor que 0"
513		},
514		"alt-space-value": {
515			"pass": "El elemento tiene un valor válido para el atributo alt",
516			"fail": "El elemento tiene un atributo alt que contiene solo un carácter de espacio, que no es ignorado por todos los lectores de pantalla"
517		},
518		"duplicate-img-label": {
519			"pass": "El elemento no duplica texto existente en el texto alternativo de <img>",
520			"fail": "El elemento contiene un elemento <img> con texto alternativo que duplica texto existente"
521		},
522		"explicit-label": {
523			"pass": "El elemento de formulario tiene un <label> explícito",
524			"fail": "El elemento de formulario no tiene un <label> explícito"
525		},
526		"help-same-as-label": {
527			"pass": "El texto de ayuda (title o aria-describedby) no duplica el texto de label",
528			"fail": "El texto de ayuda (title o aria-describedby) es el mismo que el texto de label"
529		},
530		"hidden-explicit-label": {
531			"pass": "El elemento de formulario tiene un <label> explícito visible",
532			"fail": "El elemento de formulario tiene un <label> explícito oculto"
533		},
534		"implicit-label": {
535			"pass": "El elemento de formulario tiene un <label> implícito ('envuelto')",
536			"fail": "El elemento de formulario no tiene un <label> implícito ('envuelto')"
537		},
538		"label-content-name-mismatch": {
539			"pass": "El elemento contiene texto visible como parte de su nombre accesible",
540			"fail": "El texto contenido en el elemento no está incluido en el nombre accesible"
541		},
542		"multiple-label": {
543			"pass": "El campo de formulario no tiene múltiples elementos label",
544			"fail": "Múltiples elementos label no son ampliamente admitidos en las tecnologías de apoyo"
545		},
546		"title-only": {
547			"pass": "El elemento de formulario no usa únicamente el atributo title para su etiqueta",
548			"fail": "Solo se usó title para generar la etiqueta de un elemento de formulario"
549		},
550		"landmark-is-unique": {
551			"pass": "Los puntos de referencia deben tener una combinación única de role o role/label/title (es decir, un nombre accesible único)",
552			"fail": "El punto de referencia debe tener un aria-label, aria-labelledby o title único para que los puntos de referencia sean distinguibles"
553		},
554		"has-lang": {
555			"pass": "El elemento <html> tiene un atributo lang",
556			"fail": "El elemento <html> no tiene un atributo lang"
557		},
558		"valid-lang": {
559			"pass": "El valor del atributo lang está incluido en la lista de idiomas válidos",
560			"fail": "Valor del atributo lang no incluido en la lista de idiomas válidos"
561		},
562		"xml-lang-mismatch": {
563			"pass": "Los atributos lang y xml:lang tienen el mismo idioma base",
564			"fail": "Los atributos lang y xml:lang no tienen el mismo idioma base"
565		},
566		"dlitem": {
567			"pass": "El elemento de lista de descripción tiene un elemento <dl> padre",
568			"fail": "El elemento de lista de descripción no tiene un elemento <dl> padre"
569		},
570		"listitem": {
571			"pass": "El elemento de lista tiene un elemento padre <ul>, <ol> o role=\"list\"",
572			"fail": "El elemento de lista no tiene un elemento padre <ul>, <ol> o role=\"list\""
573		},
574		"only-dlitems": {
575			"pass": "El elemento de lista solo tiene hijos directos que están permitidos dentro de elementos <dt> o <dd>",
576			"fail": "El elemento de lista tiene hijos directos que no están permitidos dentro de elementos <dt> o <dd>"
577		},
578		"only-listitems": {
579			"pass": "El elemento de lista solo tiene hijos directos que están permitidos dentro de elementos <li>",
580			"fail": "El elemento de lista tiene hijos directos que no están permitidos dentro de elementos <li>"
581		},
582		"structured-dlitems": {
583			"pass": "Cuando no está vacío, el elemento tiene tanto elementos <dt> como <dd>",
584			"fail": "Cuando no está vacío, el elemento no tiene al menos un elemento <dt> seguido por, al menos, un elemento <dd>"
585		},
586		"caption": {
587			"pass": "El elemento multimedia tiene una pista de subtítulos",
588			"incomplete": "Comprobar que hay disponibles subtítulos para el elemento"
589		},
590		"frame-tested": {
591			"pass": "El marco incorporado fue probado con axe-core",
592			"fail": "El marco incorporado no se pudo probar con axe-core",
593			"incomplete": "El marco incorporado aún tiene que probarse con axe-core"
594		},
595		"css-orientation-lock": {
596			"pass": "La pantalla es manejable y no existe bloqueo de orientación",
597			"fail": "Se aplica bloqueo de orientación CSS y hace que la pantalla sea inmanejable",
598			"incomplete": "No se puede determinar  si hay bloqueo de orientación CSS"
599		},
600		"meta-viewport-large": {
601			"pass": "La etiqueta <meta> no impide un zum significativo en dispositivos móviles",
602			"fail": "La etiqueta <meta> limita el zum en dispositivos móviles"
603		},
604		"meta-viewport": {
605			"pass": "La etiqueta <meta> no impide el zum en dispositivos móviles",
606			"fail": "${data} en la etiqueta <meta> impide el zum en dispositivos móviles"
607		},
608		"header-present": {
609			"pass": "La página tiene un 'header'",
610			"fail": "La página no tiene un 'header'"
611		},
612		"heading-order": {
613			"pass": "Horden de encabezados válido",
614			"fail": "Orden de encabezados no válido"
615		},
616		"internal-link-present": {
617			"pass": "Encontrado enlace de salto ('skip') válido",
618			"fail": "No se han encontrado enlaces de salto ('skip') válidos"
619		},
620		"landmark": {
621			"pass": "La página tiene una región punto de referencia",
622			"fail": "La página no tiene una región punto de referencia"
623		},
624		"meta-refresh": {
625			"pass": "La etiqueta <meta> no refresca la página inmediatamente",
626			"fail": "La etiqueta <meta> fuerza el refresco programado de la página"
627		},
628		"p-as-heading": {
629			"pass": "Los elementos <p> no se han diseñado como encabezados",
630			"fail": "Deberían usarse elementos de encabezado en vez de elementos <p> con estilos"
631		},
632		"region": {
633			"pass": "Todo el contenido de la página está incluido en puntos de referencia",
634			"fail": "La página tiene contenido no incluido en puntos de referencia"
635		},
636		"skip-link": {
637			"pass": "Existe el destino del enlace de salto ('skip')",
638			"incomplete": "El destino del enlace de salto ('skip') debería volverse visible en la activación",
639			"fail": "No hay destino para el enlace de salto ('skip')"
640		},
641		"unique-frame-title": {
642			"pass": "El atributo title del elemento es único",
643			"fail": "El atributo title del elemento no es único"
644		},
645		"duplicate-id-active": {
646			"pass": "El documento no tiene elementos activos que compartan el mismo atributo id",
647			"fail": "El documento tiene elementos activos con el mismo atributo id: ${data}"
648		},
649		"duplicate-id-aria": {
650			"pass": "El documento no tiene elementos referidos con ARIA o etiquetas que compartan el mismo atributo id",
651			"fail": "El documento tiene múltiples elementos referidos con ARIA con el mismo atributo id: ${data}"
652		},
653		"duplicate-id": {
654			"pass": "El documento no tiene elementos estáticos que compartan el mismo atributo id",
655			"fail": "El documento tiene múltiples elementos estáticos con el mismo atributo id"
656		},
657		"aria-label": {
658			"pass": "El atributo aria-label existe y no está vacío",
659			"fail": "El atributo aria-label no existe o está vacío"
660		},
661		"aria-labelledby": {
662			"pass": "El atributo aria-labelledby existe y hace referencia a elementos visibles para lectores de pantalla",
663			"fail": "El atributo aria-labelledby no existe, hace referencia a elementos inexistentes o hace referencia a elementos vacíos"
664		},
665		"avoid-inline-spacing": {
666			"pass": "No se han especificado estilos 'inline' con '!important' que afecten al espaciado de texto",
667			"fail": {
668				"singular": "Eliminar '!important' de inline styles ${data.values}, porque su anulación no está admitida en la mayoría de navegadores",
669				"plural": "Eliminar '!important' de inline style ${data.values}, porque su anulación no está admitida en la mayoría de navegadores"
670			}
671		},
672		"button-has-visible-text": {
673			"pass": "El elemento tiene texto interno visible para lectores de pantalla",
674			"fail": "El elemento no tiene texto interno visible para lectores de pantalla"
675		},
676		"doc-has-title": {
677			"pass": "El documento tiene un elemento <title> no vacío",
678			"fail": "El documento no tiene un elemento <title> no vacío"
679		},
680		"exists": {
681			"pass": "El elemento no existe",
682			"fail": "El elemento existe"
683		},
684		"has-alt": {
685			"pass": "El elemento tiene un atributo alt",
686			"fail": "El elemento no tiene un atributo alt"
687		},
688		"has-visible-text": {
689			"pass": "El elemento tiene texto visible para lectores de pantalla",
690			"fail": "El elemento no tiene texto visible para lectores de pantalla"
691		},
692		"is-on-screen": {
693			"pass": "El elemento no es visible",
694			"fail": "El elemento es visible"
695		},
696		"non-empty-alt": {
697			"pass": "El elemento tiene un atributo alt no vacío",
698			"fail": "El elemento no tiene atributo alt o el atributo alt está vacío"
699		},
700		"non-empty-if-present": {
701			"pass": {
702				"default": "El elemento no tiene un atributo de valor",
703				"has-label": "El elemento tiene un atributo de valor no vacío"
704			},
705			"fail": "El elemento tiene un atributo de valor y el atributo de valor está vacío"
706		},
707		"non-empty-title": {
708			"pass": "El elemento tiene un atributo title",
709			"fail": "El elemento no tiene atributo title o el atributo title está vacío"
710		},
711		"non-empty-value": {
712			"pass": "El elemento tiene un atributo de valor no vacío",
713			"fail": "El elemento no tiene un atributo de valor o el atributo de valor está vacío"
714		},
715		"role-none": {
716			"pass": "La semántica predeterminada del elemento se anuló mediante role=\"none\"",
717			"fail": "La semántica predeterminada del elemento no se anuló mediante role=\"none\""
718		},
719		"role-presentation": {
720			"pass": "La semántica predeterminada del elemento se anuló mediante role=\"presentation\"",
721			"fail": "La semántica predeterminada del elemento no se anuló mediante role=\"presentation\""
722		},
723		"caption-faked": {
724			"pass": "La primera fila de una tabla no se usa como título ('caption')",
725			"fail": "La primera fila de la tabla debería ser un título ('caption') en vez de una celda de tabla"
726		},
727		"html5-scope": {
728			"pass": "El atributo scope solo se usa en elementos de encabezados de tabla (<th>)",
729			"fail": "En HTML 5, los atributos scope solo se pueden usar en elementos de encabezados de tabla (<th>)"
730		},
731		"same-caption-summary": {
732			"pass": "El contenido del atributo summary y de <caption> no están duplicados",
733			"fail": "El contenido del atributo summary y del elemento <caption> son idénticos"
734		},
735		"scope-value": {
736			"pass": "El atributo scope se usa correctamente",
737			"fail": "El valor del atributo scope solo puede ser 'row' o 'col'"
738		},
739		"td-has-header": {
740			"pass": "Todas las celdas de datos no vacías tienen encabezados de tabla",
741			"fail": "Algunas celdas de datos no vacías no tienen encabezados de tabla"
742		},
743		"td-headers-attr": {
744			"pass": "El atributo headers se usa exclusivamente para hacer referencia a otras celdas de la tabla",
745			"fail": "El atributo headers no se usa exclusivamente para hacer referencia a otras celdas de la tabla"
746		},
747		"th-has-data-cells": {
748			"pass": "Todas las celdas de encabezados de tabla hacen referencia a celdas de datos",
749			"fail": "No todas las celdas de encabezados de tabla hacen referencia a celdas de datos",
750			"incomplete": "Hay celdas de datos de la tabla ausentes o vacías"
751		},
752		"hidden-content": {
753			"pass": "Se ha analizado todo el contenido de la página.",
754			"fail": "Hubo problemas al analizar el contenido de esta página.",
755			"incomplete": "Hay contenido oculto en la página que no fue analizado. Necesitarás activar la visualización de este contenido a fin de analizarlo."
756		}
757	},
758	"failureSummaries": {
759		"any": {
760			"failureMessage": "Corregir cualquiera de las siguientes incidencias:{{~it:value}}\n  {{=value.split('\\n').join('\\n  ')}}{{~}}"
761		},
762		"none": {
763			"failureMessage": "Corregir (todas) las siguientes incidencias:{{~it:value}}\n  {{=value.split('\\n').join('\\n  ')}}{{~}}"
764		}
765	},
766	"incompleteFallbackMessage": "Corregir (todas) las siguientes incidencias:{{~it:value}}\n  {{=value.split('\\n').join('\\n  ')}}{{~}}"
767}
768