O HTML é o formato universal para quem produz documentos para o WWW; a maior parte dos autores nem tem a consciência de que há alternativas. Mas, nos últimos tempos, com o aparecimento do XML, a situação mudou. Estão a aparecer formatos alternativos e mais atractivos. Embora o XML suceda ao HTML, ambos são definidos em SGML que precede o HTML e mesmo a própria Internet. O SGML foi desenvolvido para dar mais flexibilidade aos autores na expressão do significado do que escrevem e o XML transportou este conceito para a Internet.
A ideia de que os documentos estruturados pudessem ser trocados e manipulados se fossem publicados num formato normalizado e aberto, data dos anos 60 onde os esforços foram iniciados para que isso se tornasse uma realidade. De um lado, a associação norte-americana Graphic Communications Association (GCA), criou uma linguagem designada por GenCode para desenvolver anotações para os documentos dos seus clientes que utilizavam diferentes aplicações e geravam diferentes formatos. O GenCode permitiu à GCA integrar no mesmo conjunto os vários documentos provenientes desses clientes.
Num esforço paralelo, a IBM desenvolveu outra linguagem designada por Generalized Markup Language (GML), na tentativa de resolver os seus problemas internos de publicação electrónica. O GML foi desenhado de modo a permitir que o mesmo documento pudesse ser processado para produzir um livro, um relatório, ou uma edição electrónica.
Como os tipos de documento começaram a proliferar, tendo cada um requisitos diferentes e exigindo por isso um conjunto de anotações diferente, a necessidade para publicar e manipular de uma forma normalizada cada tipo de documento também foi crescendo. No princípio dos anos 80, os representantes do GenCode e do GML juntaram-se formando um comité do American National Standards Institute (ANSI) designado por Computer Languages for the Processing of Text. O seu objectivo era normalizar a metodologia de especificação, a definição e a utilização de anotações em documentos.
A meta-linguagem SGML, Standardized Generalized Markup Language, foi lançada publicamente em 1986 como a norma ISO 8879. É uma linguagem desenhada com o objectivo de permitir a definição e utilização de formatos de documentos. É suficientemente formal para permitir validar os documentos, tem estrutura suficiente para permitir a especificação e manuseamento de documentos complexos e estensível de modo a suportar a gestão de grandes repositórios de informação.
No fim da década de 80, o SGML tinha já penetrado nalgumas instituições de grande dimensão como a indústria aeronáutica e a de maquinaria pesada. No entanto, foi no laboratório suiço do CERN, que um investigador então a desenvolver a sua aplicação de hipertexto, lhe achou graça e pensou incluí-la na sua aplicação. Com efeito, Tim Berners-Lee, pai do World Wide Web (WWW), escolheu um conjunto de anotações, que retirou de um DTD em SGML e adoptou essas anotações como a linguagem da sua aplicação. Em Nexus, o editor e navegador original do WWW, ele usou essas anotações, folhas de estilo para formatar visualmente as páginas e aquilo que lançou definitivamente este género de aplicações: links.
Em 1993, altura em que apareceu o Mosaic (primeiro browser a ter uma grande divulgação e utilização), os utilizadores estavam já a estender ao máximo o HTML, puxando pelos seus limites. Mesmo a última versão do HTML, a 4.0, lançada em Julho de 1997, fornece apenas um conjunto limitado de anotações. E, se pensarmos um pouco, depressa chegaremos à conclusão de que nenhum conjunto fixo de anotações será suficiente para anotar devidamente todos os documentos que circulam na Internet.
Desde 1992, o HTML evoluiu de uma sintaxe ad-hoc para uma linguagem de anotação definida em SGML. A ideia era a de fornecer um suporte formal à linguagem e de que as ferramentas da Internet passassem a implementar o HTML como um caso específico do SGML com uma formatação por omissão, i.e., as ferramentas deixariam de ser específicas do HTML e passariam a ser mais genéricas. Desta maneira, qualquer alteração à sintaxe do HTML seria automaticamente propagada a todas as ferramentas bastando para isso alterar a especificação do HTML e dos estilos. Esta era uma ideia avançada para a época, os seus custos eram grandes e, nessa altura, a Internet não estava preparada para uma linguagem de anotação genérica mas sim para um pequeno conjunto de anotações que qualquer pessoa pudesse aprender em pouco tempo.
A definição do HTML em SGML foi o primeiro passo para aproximar o SGML da Internet e desta forma cativar o interesse da indústria de software.
Estavam, nesse momento, presentes os ingredientes que viabilizariam o aparecimento do XML, eXtensible Markup Language, por um lado o reconhecimento do SGML como uma boa metodologia para estruturar e representar documentos, do outro, as limitações do conjunto fixo de anotações do HTML.
Por incrível que possa parecer, o sucesso do HTML encontra-se associado à sua grande pobreza semântica. Só um contexto muito pobre pode ser utilizado por uma grande comunidade, um contexto mais rico só pode ser partilhado por uma comunidade pequena e específica.
Actualmente, existem várias comunidades Internet identificadas que partilham necessidades específicas na anotação dos seus documentos. O SGML possibilita a criação do contexto específico para cada uma destas comunidades. São exemplos: a indústria química, a matemática, o comércio electrónico, a medicina e a música.
O HTML só se pode estender através de pós-processamentos específicos e não através de novos elementos adicionados à linguagem.
O problema fundamental é que o HTML não é unilateralmente estensível, a sua evolução está centralizada num organismo que controla todo o processo, o World Wide Web Consortium - W3C. Numa linguagem de anotação de utilização genérica, a introdução de uma nova anotação é potencialmente ambígua em termos semânticos[1] e em termos de apresentação, principalmente, se não houver referência a uma especificação de estilo.
Pelo contrário, o investimento em SGML possibilita três funcionalidades críticas:
o autor pode definir novas anotações, relacioná-las com as existentes na estrutura e acrescentar-lhe os atributos que desejar.
o autor pode associar e definir uma estrutura a um tipo de documento.
torna-se possível validar o conteúdo do documento relativamente à estrutura.
O próximo capítulo é dedicado ao estudo do SGML (Capítulo 4), que representa a origem das outras linguagens de anotação que serão discutidas ao longo da dissertação.
[1] | A que é que está associada? Qual o seu papel na estrutura? |