Análise Automática

No âmbito da “Web Accessibility Initiative – WAI“, uma iniciativa que tem como missão promover a acessibilidade da Web para pessoas com deficiência, surgem as “Directrizes para a acessibilidade do conteúdo da Web – 1.0“. Ao todo são 65 pontos de verificação divididos por 14 directrizes que mostram como tornar um conteúdo da web acessível a utilizadores comuns e utilizadores com necessidades especiais.
Estes 65 pontos de verificação encontram-se divididos em três níveis de prioridades, são eles:

Nível de Prioridade 1 – Pontos que os criadores de conteúdo Web têm absolutamente de satisfazer. Se não o fizerem, um ou mais grupos de utilizadores ficarão impossibilitados de aceder a informações contidas no documento. A satisfação deste tipo de pontos é um requisito básico para que determinados grupos possam aceder a documentos sedeados na Web.

Nível de Prioridade 2 – Pontos que os criadores de conteúdo Web devem satisfazer. Se não o fizerem, um ou mais grupos de utilizadores terão dificuldades em aceder a informações contidas no documento. A satisfação deste tipo de pontos traduzir-se-á na remoção de obstáculos significativos ao acesso a documentos sedeados na Web.

Nível de Prioridade 3 – Pontos que os criadores de conteúdo Web podem satisfazer. Se não o fizerem, um ou mais grupos poderão deparar-se com algumas dificuldades em aceder a informações contidas nos documentos. A satisfação deste tipo de pontos irá melhorar o acesso a documentos sedeados na Web.

As 14 directrizes para a acessibilidade do conteúdo da Web actuam no âmbito da inclusão dos Cidadãos com Necessidades Especiais na Sociedade da Informação.
Visando este fim, foi também criado o “Manual de Boas Práticas da AP – Administração Pública” que tem como objectivo tornar os sites da administração pública acessíveis a todos.
Para avaliar qualquer tipo de conteúdo web segundo estas normas e directrizes são utilizados programas e ferramentas que fazem a verificação automática integral ou parcial destes pontos.
Como estudo de caso, foi seleccionado um site da administração pública, o site do Ministério da Saúde, e para a sua verificação automática foi utilizado o HERA.
A ferramenta HERA é bastante eficaz na verificação do cumprimento das 14 directrizes.
Os resultados obtidos através da análise automática do HERA foram os seguintes:

Free Image Hosting at www.ImageShack.us

Ao todo existem 37 pontos a serem verificados manualmente, 1 ponto correcto, 17 pontos incorrectos e 10 pontos que não são verificáveis neste site.
Foi encontrado apenas 1 ponto correcto de acordo com as directrizes estabelecidas pela WAI, sendo este de Prioridade 2.

Ponto 5.4
“Se uma tabela for utilizada para formatar uma página, não utilize qualquer notação de estrutura para efeitos de formatação visual”
Há 135 tabelas que não usam células de cabeçalho (<th>);

Existem pontos com erros: 3 de Prioridade 1; 10 de Prioridade 2 e 4 de Prioridade 3.

Erros de Prioridade 1

Ponto 1.1
“Forneça um equivalente textual para todo o elemento não textual. Pode ser feito através do atributo “alt”, ou “longdesc” ou no conteúdo do elemento. Isto abrange: imagens, representações gráficas de texto, incluindo símbolos, regiões de mapas de imagem, animações, como é o caso dos GIFs animados, applets e objectos programados, arte ASCII, painéis/frames, programas interpretáveis, imagens utilizadas em listas como sinalizadores de pontos de enumeração, espaçadores, botões gráficos, sons (reproduzidos com ou sem interacção do utilizador), ficheiros de áudio independentes, pistas áudio de vídeo e trechos de vídeo)”
Há 146 imagens sem textos alternativos. Também há 17 imagens que contêm o atributo “alt”, mas sem texto de legenda que indique a sua função;

Ponto 6.3
“Certifique-se que as páginas são usáveis quando scripts, applets, ou outros objectos programáveis se encontram desactivados ou não são suportados. Se isto não for possível, forneça informação equivalente numa página alternativa acessível”
*Links” onclick=”display(‘p_6301′); return false;”
Há 3 links que se activam mediante scripts;

Ponto 8.1
“Faça com que os elementos programáveis tais como scripts e applets sejam directamente acessíveis ou compatíveis com tecnologias de apoio”
*(Prioridade 1 se a funcionalidade é importante e não se encontra noutro local de forma redundante e acessível; caso contrário, Prioridade 2)
Utilizam-se eventos dependentes do dispositivo e não existem eventos redundantes;

Erros de Prioridade 2

Ponto 3.2
“Crie documentos validando a notação com a gramática formal publicada”
A página não se encontra validada de acordo com a gramática;

Ponto 3.3
“Use folhas de estilo para controlar a disposição dos elementos na página e a forma de os apresentar”
Utilizam-se 504 atributos HTML e não CSS para controlar a apresentação.

Ponto 3.4
“Use unidades relativas em vez de absolutas nos valores dos atributos da linguagem de notação e valores das propriedades das folhas de estilo”
Encontraram-se unidades absolutas nos atributos dos elementos que compõem as tabelas;
Detectaram-se unidades absolutas (in|cm|mm|pt|pc) e tamanhos de fonte definidos em pixéis nos valores das folhas de estilo;

Ponto 3.5
“Use os elementos cabeçalho (<H1>…<H6>) para transmitir a estrutura dos documentos e utilize-os de acordo com as especificações”
Não são utilizados cabeçalhos;

Ponto 6.4
“No caso dos scripts e dos applets, certifique-se que os eventos que o manipulam funcionam independentemente do dispositivo de entrada (Este ponto inclui o 9.3)”
Utilizam-se eventos dependentes do dispositivo e não existem eventos redundantes.

Ponto 9.3
“No caso dos scripts, especifique manipuladores de eventos por software em vez de manipuladores de eventos dependentes de dispositivos”
Utilizam-se eventos dependentes do dispositivo.

Ponto 10.2
“Até que os agentes do utilizador suportem associações explicitas entre os rótulos e os controlos de formulário, para todos os controlos com rótulos implicitamente associados, certifique-se que os rótulos se encontram apropriadamente posicionados”
Há 5 controlos de formulário que deveriam levar etiquetas, no entanto não há nenhum atributo “label”;

Ponto 11.1
“Use tecnologias W3C quando a mesma esteja disponível e seja apropriada para uma tarefa. Utilize as versões mais recentes, desde que suportadas”
É utilizada uma versão antiga de HTML (<!DOCTYPE HTML PUBLIC “-//W3C//DTD HTML 4.0 Transitional//EN” >);

Ponto 11.2
Evite o uso de notação obsoleta das tecnologias do W3C
São utilizados 508 atributos obsoletos em HTML 4.01;

Ponto 12.4
Associe explicitamente os rótulos aos respectivos controlos
Não há etiquetas para os controlos;

Erros de Prioridade 3

Ponto 4.3
Identifique o idioma principal do documento
Não é indicado o idioma principal do documento;

Ponto 9.5
Defina teclas de atalho para links importantes (incluíndo os que se encontram nos mapas de imagem client-side), controlos de formulário, e grupos de controlos de formulários
Não são proporcionados atalhos de teclado;

Ponto 10.4
Até que os agentes do utilizador consigam manipular controlos vazios correctamente, inclua caracteres predefinidos depreenchimento nas caixas de edição e nas áreas de texto
Há 2 controlos vazios que não incluem caracteres por defeito;

Ponto 10.5
Até que os agentes do utilizador consigam distinguir links adjacentes, inclua caracteres não-linkados, circundados por espaços, entre os links adjacentes
*Links adjacentes” onclick=”display(‘p_105′); return false;
Há 7 casos de links adjacentes que não contêm caracteres imprimíveis não enlaçados entre eles;

Uma vez que o programa não executa a verificação de todas as directrizes, a avaliação dos pontos em falta terá de ser feita manualmente.
Neste caso, existem 37 pontos que necessitam de ser verificados manualmente.

Da análise manual, o seguintes pontos não cumprem os pontos estabelecidos pelas Directrizes para a acessibilidade do conteúdo da Web:

PRIORIDADE 1

Ponto 2.1
Certifique-se de que toda a informação transmitida com base na cor se encontra também disponível sem cor
O site contém informação que é transmitida apenas pela cor;

Ponto 4.1
Identifique claramente quaisquer alterações de idioma no texto de um documento, incluindo os equivalentes textuais (caso das legendas das imagens e de outros elementos)
As mudanças de idioma não se encontram correctamente identificados, não se usam os atributos “hreflang” e “charset” para indicar o idioma e o jogo de caracteres no qual se apresentarão os conteúdos enlaçados;

Ponto 5.1
Nas tabelas de dados, identifique as linhas e as colunas que constituem os cabeçalhos
Há 135 tabelas com 639 células de dados e nenhuma célula de cabeçalho (<th>);

Ponto 5.2
Nas tabelas de dados que têm dois ou mais níveis lógicos de linhas ou colunas de cabeçalhos use notação para associar células de dados e células de cabeçalhos
Há 135 tabelas sem células de cabeçalho, existem tabelas de dados complexas, com vários níveis lógicos de cabeçalhos e que não possuem atributos para associar células de dados e de cabeçalhos;

Ponto 6.1
Organize os documentos de forma a que os mesmos sejam passíveis de serem lidos sem o uso das folhas de estilo. Quando um documento HTML é apresentado sem a folha de estilo a que está associado, deve ser, mesmo assim, possível ler o documento
Não é possível ler o documento quando é interpretado sem as folhas de estilo associadas, torna-se muito confuso;

Ponto 11.4
Se, depois de todos os esforços, não conseguir criar uma página acessível, forneça um link para uma página alternativa que use as tecnologias W3C na sua versão acessível, com informação equivalente (ou com as mesmas funcionalidades), que seja actualizada tantas vezes quantas as páginas inacessíveis (originais)
No caso de a página não estar acessível, não proporciona qualquer link para uma página alternativa acessível.

PRIORIDADE 2

Ponto 2.2
Certifique-se que as combinações das cores de fundo e do texto, fornecem um contraste suficiente quando visualizados por alguém que tenha défices de percepção de cor ou quando a mesma é visualizada num ecrã a preto e branco
*(Prioridade 2 para imagens, prioridade 3 para textos)
O contraste da cor entre fundo e primeiro plano (em textos e imagens) não é suficiente, pode constituair um problema em pessoas com dificuldades em perceber tonalidades;

Ponto 3.1
Sempre que existir uma linguagem com notação apropriada, use a notação em vez das imagens para transmitir a informação
Utilizam-se imagens para transmitir essa uma informação, que pode perfeitamente ser transmitida na linguagem de programação em que é feito o site;

Ponto 3.7
Use a notação correcta para citações (<Q> para citação curta e <BLOCKQUOTE> para citação longa, normalmente superior a três linhas). Não utilize a notação de citação para formatar efeitos visuais tais como tabulação/entalhe
Na página não se utilizam elementos para identificar as citações curtas (<q> ou longas <blockquote>);

Ponto 10.1
Não provocar o aparecimento de janelas de sobreposição ou outras, e não fazer com que a janela actual seja modificada sem que o utilizador disso seja informado, até que os agentes do utilizador tornem possível a desactivação de janelas secundárias
Há 3 elementos com o atributo “target” e nesses 3 elementos não se dá qualquer conhecimento ao utilizador que se vão abrir outras janelas;
Os scripts e os elementos de programação do site, em geral, não dão qualquer informação quando vão abrir novas janelas;

PRIORIDADE 3

Ponto 4.2
“Especifique por extenso cada abreviatura ou acrónimo quando da sua primeira ocorrência num documento”
Não se define a expansão das abreviaturas e acrónimos com o atributo “title”, além disso, não se indica a expansão quando esta aparece pela primeira vez no documento;

Ponto 5.5
Providencie sumários para as tabelas
Há 135 tabelas, nenhuma com células de cabeçalho e nenhuma delas apresenta um pequeno sumário dos conteúdos, que seria facilmente conseguido através do atributo “summary”;

Ponto 9.4
Crie uma sequência lógica de tabs para percorrer os links, controlos de formulários e objectos
Nenhum elemento contém o atributo “tabindex” e não existe qualquer ordem lógica de tabulação através dos links, controlos de formulário e objectos;

Ponto 10.3
Até que os agentes do utilizador identifiquem correctamente o texto colocado lado a lado, disponibilize uma alternativa linear do texto (na página actual ou numa outra) para todas as tabelas que disponham o texto de forma paralela, ao longo dos limites das colunas
Não se apresenta um texto alternativo linear para todas as tabelas que apresentam o texto em colunas paralelas;

Ponto 11.3
Disponibilize a informação necessária de forma a que os utilizadores recebam os documentos de acordo com as suas preferências. Por exemplo: idioma, tipo de conteúdo, etc
Não se proporciona qualquer alternativa e informação de forma a que os utilizadores possam receber os documentos de acordo com as suas preferências;

Ponto 14.2
Reforce a mensagem texto através de gráficos e/ou áudio na medida em que os mesmos facilitem a compreensão da página
Não se complementa o texto com apresentações gráficas ou sonoras;

O seguintes cumprem o pontos estabelecidos nas directrizes:

PRIORIDADE 1

Ponto 7.1
Evite concepções que possam provocar intermitência do ecrã, até que os agentes do utilizador possibilitem o seu controlo
Não se provocam quaisquer intermitências no ecrã através de scripts ou outros elementos de programação;

Ponto 14.1
Use linguagem clara e o mais simples possível apropriada ao conteúdo do sítio Web
É utilizada a linguagem mais clara e fácil adequada ao conteúdo do sítio Web e perceptível pelo utilizador alvo.

PRIORIDADE 2

Ponto 3.6
Faça uso da correcta notação para as listas (<ul>…<ol>) e para os seus pontos de enumeração (<li>)
As listas ordenadas não se utilizam apenas para conseguir efeitos de formato, há conteúdos da página que se apresentam como uma lista de elementos;

Ponto 5.3
Não deve usar tabelas para formatar páginas a não ser que a tabela faça sentido quando em formato linear. Caso contrário, se a tabela não fizer sentido, forneça um equivalente alternativo (o qual poderá ser uma versão linear)
O conteúdo das tabelas têm sentido quando estas se apresentam de forma linear;

Ponto 7.2
Evite concepções que possam provocar o piscar (modificação do conteúdo em intervalos constantes) do conteúdo das páginas, até que os agentes do utilizador possibilitem o seu controlo
Não se provocam flashes no conteúdo da página através de imagens, scripts ou outros elementos de programação;

Ponto 7.3
Enquanto os agentes do utilizador não permitam congelar o movimento do conteúdo, não use movimento nas páginas
Não se provocam movimentos na página através de imagens, scripts ou outros elementos de programação;

Ponto 7.4
Não crie páginas de reiniciar periódicamente automáticas, até que os agentes do utilizador possibilitem interromper o processo
Nenhum dos elementos de programação se utiliza para reiniciar automaticamente a página;

Ponto 7.5
Não use a notação para redireccionar páginas automaticamente até que os agentes do utilizador disponham da capacidade para interromper o processo. Em vez disso, aconselha-se a configurar o servidor para executar esse redireccionamento
Nenhum dos elementos de programação se utiliza para re-direccionar automaticamente a página;

Ponto 12.3
Divida grandes blocos de informação em grupos mais geríveis e apropriados
Os blocos grandes de informação encontram-se divididos em grupos manipuláveis;

Ponto 13.1
Identifique claramente o destino de cada link
Os objectivos de cada link encontram-se claramente identificados no código;

Ponto 13.2
Forneça metadados para acrescentar informações semânticas às páginas e aos sítios Web
São utilizados elementos e propriedades que proporcionam metadados à página;

Ponto 13.3
Forneça informação sobre a organização geral do sítio Web (e.g. mapa do site, índice)
O site fornece um mapa do sítio;

Ponto 13.4
Use mecanismos de navegação de uma forma consistente
Todos os mecanismos de navegação são utilizados de forma consistente e coerente;

PRIORIDADE 3

Ponto 13.5
Providencie barras de navegação para salientar e dar acesso aos mecanismos de navegação. De preferência faça uso de elementos de notação para listas (<ul>…<ol>) para estruturar esses mecanismos. Use CSS para lhes dar estilo
Todos os elementos principais para a navegação se apresentam como uma barra de navegação;

Ponto 13.6
Agrupe links relacionados, identifique o grupo (em benefício dos agentes do utilizador) e, até que os agentes do utilizador o façam, forneça uma forma de saltar um grupo
*Links relacionados” onclick=”display(‘p_136′); return false;
Os links que se encontram relacionados encontram-se agrupados e proporcionam meios de saltar esses grupos;

Ponto 13.7
Caso seja fornecida uma função de pesquisa, active diferentes tipos de pesquisa de modo a corresponderem a diferentes níveis de competências e às preferências dos utilizadores
Nas funções de pesquisa, disponibilizam-se diferentes tipos de pesquisa para diversos níveis de categorias e preferências, é a opção de pesquisa avançada;

Ponto 13.8
Coloque informação diferenciada no início dos cabeçalhos, parágrafos, listas, etc
Toda a informação de identificação se encontra posicionada no início dos cabeçalhos, parágrafos, listas;

Ponto 13.9
Providencie informação sobre colecções de documentos (i.e. documentos compostos por múltiplas páginas)
É proporcionada a informação necessária sobre as colecções de documentos. (Há 6 elementos <link> com o atributo “rel” ou “rev”);

Ponto 13.10
Providencie um meio de saltar por cima de múltiplas linhas em arte ASCII
Não existe nenhum elemento “arte ASCII” que ocupe várias linhas;

Ponto 14.3
Crie um estilo de apresentação que seja consistente ao longo das páginas
O estilo de apresentação do site é consistente em todas as páginas;

Após a verificação automática e depois de ter sido efectuada uma análise manual, é possível concluir que o site do Ministério da Saúde deixa muito a desejar quanto ao cumprimento das directrizes para a acessibilidade do conteúdo da Web.
O que é um erro grave num site comum, torna-se num erro lastimável num site da Administração Pública.
O site cumpre apenas 1 das 37 directrizes, sendo que esta é de Prioridade 2. Ou seja, o site não cumpre nenhum ponto de Prioridade 1, algo que é vergonhoso, porque, como já foi citado anteriormente, atributos de Prioridade 1 são essenciais para que qualquer pessoa possa navegar no site de uma forma minimamente aceitável.

Diga as suas palavras