Validação Estrutural de Feeds RSS 2.0 e Atom 1.0
O processo de validação de um feed de distribuição de conteúdo exige a análise rigorosa da estrutura XML em relação às especificações técnicas de cada formato. O Validador de feed RSS realiza essa verificação diretamente no navegador do usuário, analisando a integridade estrutural, a presença de campos obrigatórios e a validade das referências de links contidas no documento.
A análise distingue-se entre a validação estrutural e a validação de conteúdo. O validador foca exclusivamente na conformidade do código XML e nas regras de especificação dos formatos RSS 2.0 e Atom 1.0. Ele não realiza testes de conectividade de rede, o que significa que as URLs encontradas no feed não são abertas. Consequentemente, aspectos como a disponibilidade dos servidores de destino, redirecionamentos HTTP, validade de certificados SSL/TLS e a exatidão ou segurança do conteúdo publicado não são verificados. O relatório gerado atesta apenas que a estrutura e as regras comuns de formato estão corretas, sem garantir que o conteúdo seja livre de erros editoriais ou esteja pronto para publicação.
Regras de Validação para RSS 2.0
Ao processar um feed identificado como RSS 2.0, o validador aplica as regras definidas pela especificação do formato, limitando a análise a documentos que utilizem estritamente a versão 2.0. Feeds baseados em versões anteriores do RSS, RDF/RSS 1.0 ou Atom 0.3 são identificados pelo analisador, mas não são validados sob regras incompatíveis, evitando falsos positivos.
Para um feed RSS 2.0 ser considerado estruturalmente válido, as seguintes regras são aplicadas:
- Estrutura do Canal: O documento RSS deve conter exatamente um elemento
<channel>direto. Caso contrário, o validador exibe o erro "O RSS deve conter exatamente um <channel> direto; encontrados ‹count›.". - Campos Obrigatórios do Item: Para cada item (
<item>) presente no feed, o validador exige a presença de pelo menos um título ou uma descrição. - Metadados do Item: O analisador extrai e valida os campos de identificação e publicação, incluindo o identificador único (
GUID), o link direto (link) e a data de publicação (publication date). - Formatos de Data: As datas associadas aos itens devem seguir estritamente o formato de data e hora especificado para o padrão RSS (RFC 822 / RFC 2822). Se uma data inválida ou fora do padrão for detectada, o sistema gera o erro "Use uma data real no formato exigido por este feed.".
Regras de Validação para Atom 1.0
O formato Atom 1.0 possui requisitos de validação distintos e frequentemente mais rígidos que o RSS 2.0, especialmente no que diz respeito à herança de metadados e à resolução de caminhos de rede.
As verificações para feeds Atom 1.0 englobam:
- Identificadores Únicos (ID): O elemento
<id>é obrigatório e deve conter um Identificador de Recurso Internacional (IRI) absoluto. O uso de caminhos relativos resulta no erro "Use um IRI absoluto para‹field›; identificadores relativos não são IDs Atom válidos.". Adicionalmente, cada ID deve ser exclusivo dentro do feed; a detecção de duplicatas gera o erro "Este ID repete o valor visto pela primeira vez na linha‹first›.". - Herança e Presença de Autores: O Atom exige a atribuição de autoria. O validador verifica se existe um autor definido para o feed ou, alternativamente, se cada entrada individual possui seu próprio autor declarado. A ausência dessa informação resulta nas mensagens de erro "Adicione um <author> ao feed ou um <author> direto a cada entrada." ou "Adicione um <author> a esta entrada, ao <source> dela ou ao feed.".
- Links Alternativos e Conteúdo: Se uma entrada do Atom não possuir conteúdo textual incorporado, ela deve obrigatoriamente fornecer um link alternativo. Caso contrário, é exibido o erro "Adicione um <link> alternativo quando uma entrada Atom não tiver <content> incorporado.".
- Conflitos de Origem de Conteúdo: Quando o elemento de conteúdo utiliza o atributo
srcpara apontar para um recurso externo, ele não deve conter texto ou elementos filhos incorporados. A violação desta regra gera o erro "Quando <content> usar src, remova o texto e os elementos filhos incorporados.". Se o conteúdo for externo ou não puder ser lido como texto, o validador exige um resumo, exibindo "Adicione <summary> quando o conteúdo Atom for externo ou não puder ser lido como texto.".
Resolução de Links e o Papel do xml:base
Os feeds de notícias dependem de referências precisas de hiperlinks para direcionar os leitores aos artigos originais. O validador analisa todos os campos que carregam links para garantir que possam ser interpretados corretamente como URLs ou URIs válidos. Se um link apresentar falha de sintaxe, o erro "Corrija ‹field›; este link não pode ser analisado como URL ou referência URI." é retornado.
No formato Atom 1.0, é permitido o uso de referências de links relativos, desde que o feed forneça uma base para a resolução desses caminhos. O validador processa o atributo xml:base para converter caminhos relativos em endereços absolutos. Se um link relativo for encontrado em um contexto onde não há um xml:base definido ou utilizável para resolvê-lo, o validador aponta o erro "Use um endereço absoluto para ‹field›; somente referências Atom com um xml:base utilizável podem ser relativas.".
Limites de Processamento e Privacidade
O Validador de feed RSS foi projetado para processar dados de forma local e eficiente, respeitando os seguintes parâmetros operacionais:
| Parâmetro | Limite / Comportamento |
|---|---|
| Limite de caracteres | Até 500.000 caracteres por verificação. |
| Exibição de problemas | Exibe no máximo os primeiros 200 problemas detectados. |
| Exibição de entradas | Exibe no máximo as primeiras 100 entradas analisadas. |
| Privacidade de dados | Todo o processamento ocorre no navegador do usuário; nenhum dado é enviado ou salvo pelo BroBroGo. |
Se o documento inserido exceder o limite de tamanho, o validador exibirá a mensagem "Esta ferramenta aceita até ‹max› caracteres por verificação.". Caso o processamento exceda o tempo limite do script, a mensagem "A validação demorou demais. Tente um feed menor." será exibida. Falhas críticas de processamento que impeçam a conclusão da análise geram o aviso "Não foi possível concluir a validação.".
Perguntas Frequentes
Quais formatos de feed este validador aceita? Ele valida documentos atuais RSS 2.0 e Atom 1.0. Feeds RSS antigos, RDF/RSS 1.0 e Atom 0.3 são identificados, mas não são verificados com regras inadequadas.
Ele abre ou testa os links do feed? Ele analisa campos com links e resolve referências relativas do Atom com xml:base. As URLs nunca são abertas; disponibilidade, redirecionamentos, certificados e conteúdo de destino não são testados.
Quais campos das entradas são verificados? Em itens RSS, ele verifica título ou descrição e lê GUID, link e data de publicação. Em entradas Atom, verifica ID, título, atualização, herança de autor, links alternativos e regras de conteúdo ou resumo.
Como o validador lida com declarações DOCTYPE ou XML inválido? Se o feed contiver uma declaração DOCTYPE, o validador solicitará sua remoção com a mensagem "Remova a declaração DOCTYPE antes de verificar este feed.". Se a estrutura básica do XML estiver corrompida, impedindo a leitura do documento, o sistema exibirá o aviso "Corrija o XML inválido e valide novamente.".