Skip to main content
Validação HTML

O atributo com o nome local “xmlns:o” não é serializável como XML 1.0.

Sobre este problema HTML

O W3C HTML Validator gera este erro porque o HTML5 não suporta declarações arbitrárias de namespace XML. Em XML, o prefixo xmlns: é usado para vincular prefixos de namespace a URIs, permitindo que elementos e atributos de vocabulários diferentes coexistam. No entanto, o HTML5 usa as suas próprias regras de análise que são distintas do XML, e o único atributo de namespace reconhecido no HTML5 é o atributo xmlns simples no elemento <html> (definido como http://www.w3.org/1999/xhtml). Atributos de namespace com dois pontos como xmlns:o, xmlns:v, xmlns:w, e outros não fazem parte da especificação HTML5.

O namespace xmlns:o="urn:schemas-microsoft-com:office:office" especificamente vem do Microsoft Office. Quando você guarda um documento do Word como HTML ou cola conteúdo de aplicações do Office num editor HTML, o Office injeta as suas próprias declarações de namespace e markup proprietário. Este markup é destinado a fazer o round-trip do documento de volta para o Office e não serve qualquer propósito na web.

Além da validação, deixar estes atributos no lugar pode causar problemas práticos. O analisador HTML5 nos navegadores ignora silenciosamente ou interpreta mal estas declarações de namespace, o que significa que elas adicionam peso morto ao seu markup. Elas também aumentam o tamanho do ficheiro desnecessariamente e podem confundir outras ferramentas que processam o seu HTML, como leitores de ecrã, crawlers de motores de busca, ou sistemas de gestão de conteúdo.

Como corrigir

  1. Remova o atributo xmlns:o de qualquer elemento onde apareça (tipicamente a tag <html>).
  2. Remova atributos de namespace do Office relacionados como xmlns:v, xmlns:w, xmlns:x, e xmlns:st1, pois estes irão desencadear erros similares.
  3. Remova quaisquer elementos ou atributos usando esses prefixos de namespace, como <o:p>, <v:shape>, ou <w:wrap>, uma vez que não são elementos HTML5 válidos e os navegadores não os renderizam de forma significativa.
  4. Limpe HTML gerado pelo Office completamente se você estiver a converter documentos do Word para conteúdo web. Considere usar uma ferramenta de limpeza HTML dedicada ou uma opção de colar-como-texto-simples no seu editor.

Exemplos

Incorreto: atributos de namespace do Office no elemento <html>

Este markup contém múltiplas declarações de namespace do Microsoft Office que desencadeiam erros de validação:

<!DOCTYPE html>
<html xmlns:o="urn:schemas-microsoft-com:office:office"
  xmlns:w="urn:schemas-microsoft-com:office:word"
  xmlns:v="urn:schemas-microsoft-com:vml">
  <head>
    <title>My Document</title>
  </head>
  <body>
    <h1>Meeting Notes</h1>
    <p>Welcome to the meeting.<o:p></o:p></p>
  </body>
</html>

Correto: HTML5 limpo sem namespaces do Office

Remova todos os atributos com prefixo xmlns: e quaisquer elementos específicos do Office como <o:p>:

<!DOCTYPE html>
<html lang="en">
  <head>
    <title>My Document</title>
  </head>
  <body>
    <h1>Meeting Notes</h1>
    <p>Welcome to the meeting.</p>
  </body>
</html>

Incorreto: namespace do Office num elemento não-raiz

Por vezes o markup do Office aparece mais profundamente no documento:

<div xmlns:o="urn:schemas-microsoft-com:office:office">
  <p>Some content<o:p></o:p></p>
</div>

Correto: versão limpa

<div>
  <p>Some content</p>
</div>

Ao remover todas as declarações de namespace do Microsoft Office e os seus elementos proprietários associados, o seu HTML torna-se compatível com padrões, mais leve, e mais compatível entre navegadores e tecnologias assistivas. Se você converte frequentemente documentos do Office para HTML, considere usar uma ferramenta de limpeza como DirtyMarkup ou a funcionalidade “Colar como texto simples” no seu editor de conteúdo para evitar estes problemas desde o início.

Encontre problemas como este automaticamente

O Rocket Validator analisa milhares de páginas em segundos, detetando problemas HTML em todo o seu site.

Ajude-nos a melhorar os nossos guias

Este guia foi útil?

Pronto para validar os seus sites?
Comece o seu teste gratuito hoje.