Skip to main content
Validación HTML

Valor incorrecto “https://www.w3.org/1999/xlink” para el atributo “xmlns:link” (solo se permite “http://www.w3.org/1999/xlink” aquí).

Acerca de este problema HTML

Los espacios de nombres XML se identifican mediante cadenas URI que actúan como nombres únicos. Nunca son descargados o cargados por el navegador — simplemente sirven como un identificador que debe coincidir exactamente con lo que define la especificación. El espacio de nombres XLink ha sido definido como http://www.w3.org/1999/xlink desde su creación, y cambiar el protocolo a https crea una cadena completamente diferente que los analizadores y validadores no reconocen.

Es un error común y comprensible. Los desarrolladores están entrenados para preferir URLs https:// en todas partes por seguridad, y muchas herramientas de linting o hábitos pueden alentar la conversión automática de http:// a https://. Sin embargo, las URI de espacios de nombres son un caso especial donde esta regla no se aplica. La cadena es puramente declarativa — no se realiza ninguna petición de red, y no hay beneficio de seguridad al usar https.

También vale la pena señalar que el atributo xmlns:xlink es en gran medida obsoleto en HTML moderno. Cuando SVG se embebe directamente en un documento HTML5, los navegadores manejan automáticamente la resolución de espacios de nombres. Solo necesitas xmlns:xlink cuando sirves SVG como XML independiente (con un archivo .svg o tipo de contenido application/xhtml+xml). En la mayoría de casos, puedes simplemente eliminar el atributo por completo y usar xlink:href o, mejor aún, el atributo href simple, que ahora es compatible con elementos SVG como <use>, <image>, y <a>.

Ejemplos

Incorrecto: usar https:// en la URI del espacio de nombres

<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="https://www.w3.org/1999/xlink">
  <use xlink:href="#icon-star"></use>
</svg>

Esto desencadena el error de validación porque https://www.w3.org/1999/xlink no coincide con el identificador de espacio de nombres requerido.

Corregido: usar la URI correcta del espacio de nombres con http://

<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
  <use xlink:href="#icon-star"></use>
</svg>

Preferido: eliminar el espacio de nombres y usar href simple

En HTML5, puedes eliminar la declaración xmlns:xlink por completo y usar el atributo href estándar en lugar de xlink:href:

<svg xmlns="http://www.w3.org/2000/svg">
  <use href="#icon-star"></use>
</svg>

Este es el enfoque más limpio para SVG inline en documentos HTML modernos. El atributo xlink:href está deprecated en SVG 2, y todos los navegadores modernos soportan href simple en elementos de enlace SVG.

Encuentra problemas como este automáticamente

Rocket Validator escanea miles de páginas en segundos, detectando problemas de HTML en todo tu sitio web.

Ayúdanos a mejorar nuestras guías

¿Te ha sido útil esta guía?

¿Listo para validar tus sitios?
Inicia tu prueba gratuita hoy.