Você está na página 1de 7

Introduo s linguagens de marcas

Marcello Peixoto Bax


bax@eb.ufmg.br www.bax.com.br Escola de Cincia da Informao Universidade Federal de Minas Gerais 14 de Abril de 2000

INTRODUO Procura-se discutir neste documento sobre o paradigma de gerenciamento organizao, recuperao e uso da informao, que surgiu com o padro das linguagens ditas de marcao ou de marcas (do termo ingls markup languages). Faz-se uma rpida introduo linguagem SGML, e, em seguida, analisam-se os diferenciais que esto por trs do sucesso da linguagem XML, que fazem desta ltima responsvel por uma verdadeira revoluo na Web. Procura-se mostrar quais so as bases de uma nova gerao de aplicaes que sero lanadas na rea da informao na rede Internet e em intranets. No incio da era dos computadores, h 40 ou 50 anos, estes eram usados, sobretudo, para processar dados e fazer clculos. O nvel de abstrao na interao com as mquinas era baixo demais para a maioria das pessoas. Sua utilizao era quase que restrita a laboratrios de tecnologia. H hoje uma mudana radical deste cenrio. Aps a surpreendente evoluo da microinformtica nas ltimas duas dcadas, que elevou sobremaneira o nvel de abstrao da relao homem/mquina, constata-se hoje que a maior contribuio visvel dos computadores est em sua utilizao como ferramentas de armazenamento, organizao, recuperao e intercmbio de informaes entre pessoas, empresas e at entre programas. Enfim, hoje o computador visto pela sociedade, cada vez mais, como uma ferramenta de comunicao, e no propriamente de clculo. A informao e o computador so parceiros antigos, mas a intensificao e democratizao do seu uso, aliadas abstrao sempre crescente do nvel de interao e troca de informaes, criaram terreno propcio para a origem das chamadas linguagens de marcao. Este fenmeno foi marcante na primeira dcada dos anos 90, com o aparecimento da Web. Estas linguagens permitem a construo de padres pblicos e abertos que esto sendo criados para se tentarem maiores avanos no tratamento da informao; elas minimizam o problema de transferncia de um formato de representao para outro e liberam a informao das tecnologias de informao proprietrias. Estas linguagens identificam, de forma descritiva, cada entidade informacional digna de significado presente nos documentos, como, por exemplo, pargrafos, ttulos,

Resumo
Apresenta-se o paradigma de gerenciamento da informao que surgiu com o padro das linguagens ditas de marcao (ou markup languages). Faz-se uma rpida introduo linguagem SGML, e analisam-se as caractersticas e os diferenciais que esto por trs do sucesso da linguagem XML, que promete uma revoluo na Web. Mostram-se quais so as bases conceituais de uma nova gerao de aplicaes das reas da Informao e da tecnologia da informao que democratizaro ainda mais o acesso informao organizada na Internet. Aborda-se a evoluo das pesquisas em direo chamada Web Semntica, com o desenvolvimento de ontologias.
Palavras-chave

Markup languages; Linguagens de marcas; Internet; HTML; XML; SGML.

Introduction to markup languages Abstract


This paper presents the information management paradigm which came up with the so-called markup languages. A short introduction to SGML is presented and the characteristics and differentials behind the success of XML language which promises a revolution on Web are analized. There are also shown the conceptual bases of a new generation of applications of Information and Information Technologies which will democratize even more the access to organized information on the Internet. With the development of ontologies, the evolution of research towards the so-called Semantic Web is mentioned.
Keywords

Markup languages; Internet; HTML; XML; SGML.

32

Ci. Inf., Braslia, v. 30, n. 1, p. 32-38, jan./abr. 2001

Introduo s linguagens de marcas

tabelas ou grficos. A partir destas descries, os programas de computador podem melhor compreender e, em conseqncia, melhor tratar ou processar a informao contida em documentos eletrnicos. Este artigo organizado como segue: na primeira seo, explicam-se as vantagens no uso das linguagens de marcao como um novo paradigma e como elas so aplicadas com vistas a um melhor gerenciamento da informao. Em seguida, na seo 3, apresentam-se os princpios da linguagem Standard Generalized Markup Language (SGML), base desse paradigma, e uma tentativa de padronizarem-se os diversos formatos empregados para representar a informao. Na seo 4, apresenta-se uma recente descendente de SGML, XML, uma verso simplificada de SGML especialmente voltada para as necessidades da Web. LIBERANDO O PODER DA INFORMAO Marcao procedimental versus marcao descritiva Todo sistema editor ou, mais genericamente, processador de textos tem de embutir, juntamente com o texto editado, marcas que fornecem indicaes de como este texto deve ser apresentado ao usurio. As marcas podem estar escondidas do usurio, como geralmente o caso nos editores do tipo WYSIWYG 1 , ou devem ser explicitadas pelo usurio, que obter seu documento no formato visual desejado somente aps uma compilao do texto (Tex e Latex so exemplos conhecidos desse tipo de processador de textos, principalmente usado no mundo acadmico). Marcas inseridas no documento de forma implcita (pelo programa, em resposta a determinado comando do usurio) ou explcita (pelo usurio) indicam como o processador deve dispor o texto na pgina; qual fonte de caracteres usar e muitas outras caractersticas tipogrficas. Estas marcas ou cdigos so tipicamente especficos a um sistema de formatao proprietrio. Cada software editor ou compilador de textos possui seu prprio conjunto de cdigos com significado apenas para aquele sistema, que dever rodar em um determinado sistema operacional ou em uma mquina especfica. Diz-se destes sistemas que eles promovem uma marcao procedimental do texto, cada cdigo indicando o procedimento a ser seguido para a apresentao do texto ao usurio [Marchal 2000, p. 14]. A figura 1 ilustra um exemplo de marcao procedimental.

FIGURA 1 Exemplo de Marcao Procedimental

FIGURA 2 Exemplo de Marcao Descritiva

Paralelamente corrente de tratamento de informao descrita anteriormente, existe uma outra, a das chamadas linguagens baseadas em marcao descritiva. Estas linguagens usam marcas (ou tags) para qualificar cada objeto do texto, cumprindo um primeiro passo para transform-los em informao tratvel por computador. Uma marca ou tag 2 tudo o que no for considerado contedo em um documento. Elas indicam a funo (o propsito) da informao no documento, em vez de como ela deve ser apresentada, ou seja, sua aparncia fsica. A idia bsica a de que o contedo do documento deve estar separado do estilo usado em sua apresentao. Cabe, aplicao que interpreta a linguagem de marcao, formatar o texto em tempo real e apresent-lo aos usurios. No passado, a marcao procedimental era utilizada pelo usurio final (troff/TEX); hoje, nos programas de processamento de textos modernos, a marcao procedimental escondida do usurio, porm ela ainda est l, presente.

Ci. Inf., Braslia, v. 30, n. 1, p. 32-38, jan./abr. 2001

33

Marcello Peixoto Bax

Separando contedo, estrutura e estilo Do ponto de vista das linguagens de marcao, considerase todo documento como constitudo de trs componentes, claramente distintos e separados: (a)contedo, (b)estrutura e (c)estilo (ou formatao). O contedo a informao propriamente dita, a estrutura define como se d a organizao da informao, ou das idias, no documento, e o estilo define o visual de apresentao das informaes ao usurio. Tal distino ou separao promove, ou acaba se revertendo em uma simplificao, pois o autor no tem mais que se preocupar a priori com o visual da informao, podendo dedicar-se exclusivamente ao contedo e estrutura de apresentao das idias no documento. Dessa forma, o texto se manter bem mais limpo, sem uma infinidade de cdigos que no dizem respeito ao contedo da informao, podendo ser mais facilmente compreendido pelo homem. A utilizao de padres de marcao internacionais abertos (SGML, HTML, XHTML, XML, etc.) permite assim a criao de documentos portveis, isto , documentos que no so dependentes de um determinado software, hardware, ou sistema operacional. Documentos que contm apenas texto ASCII (ao contrrio de formatos binrios) e que podem ser interpretados por aplicaes presentes nos mais diversos ambientes computacionais, bastando que exista uma aplicao no ambiente que reconhea o padro usado na criao do documento. Como so padres abertos, a informao no fica aprisionada, pode-se desenvolver conversores de um padro para outro. Geralmente os softwares de interpretao e converso so de domnio pblico e gratuitos. Dessa forma, as linguagens de marcao libertam a informao da priso dos formatos proprietrios. Alm disso, permitem mltiplas apresentaes do documento, de forma totalmente independente da mdia de veiculao, monitores, celulares, impressora, interpretador braile, televiso etc. A aplicao que deve tratar a informao que se encarrega de interpretar as marcas e process-las, para efeitos de estilo, ou outros processamentos. Marcas ou tags descritivos Nas linguagens de marcao, marcas descritivas definem o incio e o fim do texto marcado como unidade ou elemento de informao. Por exemplo: <par>Isto um pargrafo</par>. Pode-se tambm embutir elementos dentro de outros, por exemplo:
34

<topico> <par>Isto um pargrafo</par> </topico> Assim esse paradigma permite tratar cada unidade de informao como um objeto (ou entidade) ao qual se pode atribuir caractersticas especficas, o que possibilita maior estruturao da informao. De um monte de caracteres estticos, dispostos em uma pgina espera de uma interpretao humana (o computador est longe de entender texto livre), a informao passa a poder ser interpretada e tratada automaticamente por computador. Os dados se transformam em objetos qualificados com atributos. Tem-se ento a possibilidade de reutilizao automatizada da informao; pode-se mais facilmente compartilh-la com outros usurios; organiz-la em bancos de dados e realizar pesquisas automticas. Imagina- se um sistema de pedidos de compras funcionando pela Internet. As informaes constantes dos documentos transmitidos entre fornecedores e clientes precisam ser bem estruturadas. A entidade cliente poderia ter sua estrutura definida como no documento apresentado na figura 1. Neste documento, o tag CLIENTE tem como atributos o nome do cliente e sua identificao. Ordens de compras (OCs) fazem parte da definio de cada cliente, assim o tag OC define com seu atributo id (identificao de cada OC) quais so as ordens de compras efetuadas pelo cliente. Por sua vez, as OCs so compostas de itens com o tag ITEMOC, definindo cada item da ordem de compra. A principal representante desta corrente de linguagens SGML. OS PRINCPIOS DE SGML Standard Generalized Markup Language, ou simplesmente SGML, uma (meta)linguagem criada h aproximadamente 30 anos como um esforo para se definir uma linguagem de marcas para a representao de informaes em texto (Edwards, 1997). A linguagem foi reconhecida como um padro ISO (8879) em 1986. SGML no um conjunto predeterminado de marcas, e sim uma linguagem para se definirem quaisquer conjuntos de marcas, uma linguagem autodescritiva; cada documento SGML carrega consigo sua prpria especificao formal, o Data Type Document (DTD), apresentado mais adiante.

Ci. Inf., Braslia, v. 30, n. 1, p. 32-38, jan./abr. 2001

Introduo s linguagens de marcas

O DTD uma espcie de gramtica formal criada a partir da notao Extended Backus-Naur Form (EBNF), que define como as marcas devem ser interpretadas, quais as regras que restringem o uso de cada marca nos diferentes contextos do documento e, at mesmo, quando relevante for, a ordem em que as marcas devem aparecer no documento. Resumindo, SGML uma linguagem para definir outras linguagens, ou ainda uma linguagem para conceber DTDs, tipos de documentos. A origem e evoluo de HTML No incio dos anos 80, SGML passou a ser usada em vrias organizaes, entre as quais o CERN, Centro Europeu de Pesquisas Nucleares em Genebra, onde um pesquisador resolveu empregar a linguagem em seu programa de edio de hipertextos (Connolly et al., 1997). Assim, Tim BernersLee acabou inventado o World-Wide Web, graas a uma idia revolucionria na poca: o link (ou ligao) entre documentos que poderiam estar situados em qualquer lugar na rede de computadores de seu laboratrio ou do mundo, atravs da Internet e do conceito de Universal Resource Locator (URL). HTML um exemplo de linguagem originada de SGML. Ou seja, a definio formal (ou especificao, ou ainda o DTD) de HTML construda em SGML. HTML possui um grupo de tags predefinidos, concebidos com a funo de organizar a informao a ser transferida por meio de pginas Web. HTML uma linguagem extremamente popular hoje. Segundo Benot Marchal (Marchal, 1999), alguns estudos atestam a existncia (no ano de 1999) de mais de 800 milhes de pginas na Web, todas baseadas em HTML. HTML um padro usado em milhares de aplicaes, incluindo navegadores, editores, softwares de e-mail, servidores de base de dados e outros. HTML e a guerra dos browsers No incio dos anos 90, nos seus primeiros anos de vida de 1992 a 1995, quando a Web literalmente explodiu no mundo todo, muitas organizaes e empresas comearam a perceber que estavam bastante limitadas pela falta de flexibilidade de HTML no tocante s suas possibilidades em promover a troca mais efetiva de informaes pela Web. HTML foi ento estendida posteriormente a cada nova verso, de forma um tanto desorganizada, impulsionada pela conhecida guerra dos navegadores (ou browsers). E o que foi pior: estas extenses integraram principalmente elementos puramente de apresentao
Ci. Inf., Braslia, v. 30, n. 1, p. 32-38, jan./abr. 2001

FIGURA 3 Descrio de uma ordem de compra

(formatao, estilo), que controlam a aparncia das informaes nos navegadores. Como visto anteriormente, isso vai de encontro ao paradigma das linguagens de marcao descritiva, no sentido em que estas procuram separar a estrutura e a semntica da informao de sua apresentao fsica (estilo). A introduo da formatao de estilo em HTML comeou a tornar os documentos de difcil leitura para o homem. Alm disso, devido ao nmero de novos tags e de novos atributos de estilo nos tags que j existiam, a tarefa de formatao dos documentos HTML tornou-se extremamente entediante, exatamente como em processadores do tipo Word da Microsoft. Tentando fazer o papel de rbitro nesta guerra, o WorldWide Consortium (W3C) definiu verses mnimas que deveriam ser interpretadas por todos os navegadores. O W3C a organizao que se encarrega do desenvolvimento e manuteno dos padres da Web (para mais informaes, visite www.w3c.org). Em uma de suas ltimas publicao sobre HTML (a verso 4.0), o W3C incentiva a separao entre a estrutura e o visual dos documentos HTML, aspecto fundamental do paradigma, e desenvolveu as chamadas folhas de estilo ou CSS (Cascading Style Sheet), que definem como os elementos devem ser mostrados nos navegadores. Os Data Type Documents ou DTDs A estrutura de um documento em uma aplicao SGML definida pelos chamados Data Type Document (DTDs). Cada DTD uma espcie de gramtica que dita as regras para a verificao da correo do documento. O DTD define os tipos dos elementos3 (captulos, ttulo de captulo, cabealho de seo, pargrafo etc.) que constituem a estrutura do documento, assim como o relacionamento que existe entre estes elementos. Por exemplo, a marca que indica o ttulo de cada captulo precisa existir e, alm disso, vir sempre antes da marca que define o captulo.

35

Marcello Peixoto Bax

Um DTD acompanha o documento para onde ele for e pode ser usado para valid-lo, verificando que o contedo est bem formado de acordo com as regras do DTD. Uma parte do DTD do documento apresentado na figura 1 seria o seguinte: <!ELEMENT cliente - - (ITEMOC)+> <!ATTLIST cliente nome CDATA id CDATA> Uma lista no numerada em HTML, por exemplo, definida pela marca UL do ingls Unordered List, especificada como tendo um tag de incio e um de fim (note os dois caracteres -), e contendo ao menos um item (definido pelo tag LI de List Item). Sua especificao em SGML seria: <!ELEMENT UL - - (LI)+> O sinal + aps os parnteses indica, segundo a norma EBNF, que o seu contedo (LI) deve estar presente pelo menos uma vez no interior do tag UL. Contrariamente SGML, que um padro complexo e difcil de implementar, a grande vantagem de HTML sua relativa facilidade em ser entendida pelo usurio da Web e de ser processada, mesmo em diferentes navegadores. Este aspecto foi o principal responsvel pela exploso da Web. Paradoxalmente, a falta de flexibilidade acabou se revelando uma fora da linguagem e seu fator popularizador. Agora que a Web e tecnologias afins esto relativamente maduras, as empresas esto procurando formas de introduzir maior flexibilidade em seus documentos (como suas pginas Web), para aumentar o potencial de troca de informaes, visando ao comrcio eletrnico, por exemplo. Entra em cena um novo padro, a linguagem XML. O QUE O PADRO XML? A linguagem Extensible Markup Language (XML) o resultado do trabalho de um grupo de especialistas estabelecido em 1996 pelo W3C, com o objetivo de propor uma simplificao de SGML que fosse voltada s necessidades especficas da Web (Bryan, 1998). XML often referred to as containing 20% of the complexity and 80% of the functionality of SGML. (Edwards, 1997)

XML similar a HTML em vrios aspectos, tambm uma linguagem expressa em arquivos de texto puro (ASCII), concebida especialmente para armazenar e transmitir dados. Como uma representante do paradigma das linguagens de marcao, trata-se de texto com marcas embutidas que qualificam cada unidade de informao (tambm referidas como entidades, elementos, ou objetos) contida no texto. Assim, um arquivo XML constitudo de elementos. Como sempre, cada elemento possui uma marca inicial (como <titulo> ou <title>), uma marca final (como </ titulo> ou </title>) e a informao propriamente dita entre as duas marcas. Porm, diferentemente de HTML, XML no prope um nmero fixo de marcas. Um elemento XML pode ser marcado da forma que o autor do documento bem entender, ou seja, com o termo que melhor descreve a informao na sua opinio. Por exemplo, um preo seria representado pelo tag <preco>, um nmero de pedido por <numpedido>, um nome por <nome> etc. Cabe ao autor do documento determinar que tipo de dado usar e quais marcas os representam melhor. As diversas entidades de informao contidas em um documento XML (definidas pelas marcas) so interpretadas por aplicaes (um navegador Web, por exemplo) e organizadas em um modelo de objetos onde permanecem acessveis aplicao. A aplicao pode assim ativar aes sobre as entidades de informao. A figura 2 apresenta um exemplo de documento em XML. Tambm como j foi visto, ao invs de descrever como os dados devem ser mostrados, as marcas indicam o que cada dado significa. Qualquer agente (humano ou de software) que receba este documento pode decodific-lo e usar os dados como lhe convier. Por exemplo, uma livraria poderia usar estes dados (figura 2) para preencher uma ordem de compra; um analista de mercado para descobrir quais livros so mais populares; um indivduo poderia armazen-lo em um banco de dados como um registro de suas compras etc. Como acontece em HTML, em XML as marcas podem ser embutidas umas dentro de outras. Geralmente usa-se isso para determinar uma informao com significado mais especfico dentro do texto. Por exemplo: <titulo> <compositor>Bach</compositor>s First Piano Concerto </titulo>
Ci. Inf., Braslia, v. 30, n. 1, p. 32-38, jan./abr. 2001

36

Introduo s linguagens de marcas

Alm se ser parte do ttulo, Bach tambm o nome do autor da msica. Procurando por compositores, um mecanismo de pesquisa na Internet poderia varrer o texto e identificar o compositor Bach. Diferentes ontologias O exemplo apresentado na figura 4 trata um pedido de compras de uma livraria, assim os nomes dos elementos (ou as marcas) refletem uma terminologia especfica, utilizada por aquele ramo de negcios. Entretanto, se olhssemos documentos XML de laboratrios mdicos, por exemplo, iramos encontrar um vocabulrio como: medicamentos, temperaturas, dosagens, exames, resultados etc. Ou seja, cada tipo de documento possui termos, ou elementos, que representam conceitos especficos s suas necessidades informacionais. Como se sabe, para que um documento sirva para comunicar as idias do autor aos seus leitores, as partes envolvidas no processo de compreenso devem estar de acordo com o significado dos termos usados. Com efeito, os aspectos semnticos das informaes contidas em um documento s podem ser interpretados dentro do contexto de uma comunidade. Por exemplo, milhes de usurios de HTML que desenvolvem pginas para a Web entendem que <B> significa texto em negrito (B de Bold). No se pode dizer o mesmo para a data 8-7-984, que pode refletir diferenas culturais locais. Quanto maior a comunidade, menor o conjunto de definies compartilhadas; quando menor e mais focalizada a comunidade, maior ser este conjunto (Connolly et al., 1997). Como a semntica depende das definies estabelecidas em uma comunidade especfica, razovel que, para se melhorar a comunicao nestas comunidades, deva existir uma abertura nas linguagens para as definies especficas de cada comunidade. XML torna isso possvel, ou seja, torna-se vivel se capturarem ontologias comunitrias sob a forma de DTDs e assim promover uma descentralizao natural do controle das especificaes das linguagens de marcao. Acredita-se que a emergncia de estruturas de dados mais ricamente anotadas (ou marcadas) pode ser o catalisador que falta para a concepo de novas aplicaes que promovero o armazenamento, compartilhamento e processamento de conhecimento.

FIGURA 4 Exemplo de documento XML

Esta abertura o principal atrativo da linguagem XML. Inmeras comunidades j esto usando XML para capturar os conhecimentos especficos de suas disciplinas: a linguagem Chemical Markup Language (CML) (MurrayRust, 1997) e a linguagem Mathematical Markup Language (MathML) (Ion & Miner, 1999). OBSERVAES FINAIS Como enfatiza Connolly et al. (1997), a Web est se transformando em uma espcie de inteligncia cyborg, com homens e mquinas trabalhando juntos para gerar e manipular todo tipo de informao. HTML limitada, no fazendo mais do que indicar como as informaes devem aparecer no navegador, capaz apenas de marcao estrutural, e no semntica. Um conjunto de marcas predefinidas e fixo no pode ser extensvel representao dos mais diversos tipos de informao. Por outro lado, SGML muito complexa para ser facilmente implementada em navegadores que precisam se manter como aplicaes leves para serem amplamente utilizados em plataformas mais desprovidas em termos de CPU e memria (celulares, palmtops , equipamentos domsticos etc.). XML parece ser um bom compromisso entre a flexibilidade em termos de representao informacional e a simplicidade necessria para se tornar uma ferramenta ubqua na Web. Pode-se dizer que a passagem de uma marcao estrutural com HTML para uma marcao semntica com XML uma fase importante no esforo para se transformar a Web de um espao global de informao em uma rede universal de conhecimento.
37

Ci. Inf., Braslia, v. 30, n. 1, p. 32-38, jan./abr. 2001

Marcello Peixoto Bax


NOTAS WYSIWYG significa What You See Is What You Get. O editor Word da Microsoft um exemplo desse tipo de processador de textos.
1 2 No restante do texto, utiliza-se a palavra tag ou a palavra marca como sinnimos. 3 Um elemento diferente de um tag. Quando nos referimos a elementos, estamos considerando os tags de abertura e finalizao juntamente com o contedo de informao entre os tags. 4

REFERNCIAS BIBLIOGRFICAS BRYAN, M. Guidelines for using XML for electronic data interchange. [S. l.] : SGML Centre, 1998. Disponvel em:<www.geocities.com/WallStreet/ Floor/5815/guide.htm> BRYAN, M. An introduction to the Extensible Markup Language (XML). [S. l.]: SGML Centre, 1997. Disponvel em: < www.sgml.u-net.com/ xmlintro.htm> Connolly, Dan; Khare, Rohit; Rifkin, Adam. The evolution of web documents: the ascent of XML. World Wide Web Journal, v. 2, n.4, p. 119-128, 1997. Disponvel em: <www.cs.caltech.edu/~adam/papers/xml/ ascent-of-xml.html> Edwards, M. XML: data the way you want it. [S. l.] : Microsoft, 1997. Marchal, B. XML by example. QUE, 2000. Powers, Shelley. XML expectations. [S. l. : s. ed.], 1998. Disponvel em: <www.ne-dev.com/ned-01-1998/ned-01-xml.t.html> XML: a technical perspective. [S. l) : Microsoft, 1998.

No sistema de datas anglo-saxo, o ms vem antes do dia.

38

Ci. Inf., Braslia, v. 30, n. 1, p. 32-38, jan./abr. 2001

Você também pode gostar