O GLOBO - Informática Etc.
Carlos Alberto Teixeira - C@T

Pilha Infinita de Tartarugas

Artigo: 521

A odiosa mania de criar camadas conceituais

Publicado em:  2001-10-22
Escrito em:  2001-10-17

 

Dentre os diversos tópicos abordados numa recente apresentação da Microsoft na semana passada, foi levantada a questão dos padrões. O representante da empresa novamente promoveu o uso da XML (eXtensible Markup Language -- linguagem extensível de marcação) pela MS como prova de que a companhia está respeitando os padrões internacionais da indústria. Como se sabe, XML é uma linguagem projetada para aumentar a funcionalidade da web através de uma identificação mais flexível e adaptável das informações. Seus inventores resolveram chamá-la extensível porque ela não é uma linguagem de formato fixo, como a nossa velha HTML. Bem mais abrangente em suas funções, a XML é na verdade uma "metalinguagem", ou seja, uma linguagem com que se descreve outras linguagens. Com base nela, pode-se projetar novas linguagens fixas de marcação destinadas a tratar um número virtualmente ilimitado de documentos na web.

XML surgiu nas bocas de uns e outros e logo começou a ser apontada como a salvação para todos os males de incompatibilidade na rede. A própria postura da Microsoft na supracitada palestra demonstra o quão errôneo pode ser o tratamento da questão. XML não é propriamente uma linguagem padrão, mas sim um jeito padronizado de se definir outros padrões. Não é pelo simples fato de um grupo usar XML que ele estará aderindo a um padrão, no sentido de norma aberta e interoperável.

Vamos dar um exemplo claro. Considere as três expressões: "Muito obrigado", "Thank you very much" e "Maraming salamat po". As três estão escritas em idiomas diferentes, a primeira em português, a segunda em inglês e a terceira em tagalog, a língua que se fala nas Filipinas. As três frases estão escritas usando o mesmo alfabeto, no entanto as linguagens envolvidas não são interoperáveis, a menos que se tenha um tradutor. Seguindo este raciocínio, XML é o alfabeto com que se define idiomas na web, e não um idioma propriamente dito. Se um camarada disser que, pelo simples fato de escrever usando um alfabeto ocidental, poderá ser entendido por todos os ocidentais, então já podemos aquilatar de cara a imensidão da besteira que ele falou.

XML provê as primitivas para se projetar significados maiores e funciona permitindo que um número ilimitado de conceitos semânticos possa ser codificado usando estas primitivas. Qualquer rotina de análise léxica (parser) de expressões em XML consegue verificar se um documento nesta metalinguagem é válido ou não. O mesmo acontece quando um brasileiro consegue identificar se uma dada palavra faz ou não faz parte de sua língua. Mas, apenas analisando palavras isoladamente, este mesmo brasileiro não poderá garantir que um documento escrito com diversos vocábulos válidos será compreensível para quem o ler.

Se um certo número de empresas ou grupos de desenvolvimento na web entrar em acordo quanto à estrutura de um certo conjunto de dados, esta norma coletiva poderá ser codificada em termos de XML. Aí sim, está o grande barato da linguagem, ou seja, permitir este compartilhamento parametrizável. Contudo, ainda parece muito difícil bolar uma especificação genérica e abrangente que permita esse intercâmbio em todo seu esplendor.

Vamos encarar mais uma sopinha de letras? Certo. Diante dessa falha da XML em produzir significados válidos e compartilháveis entre usuários não conhecidos entre si, o pessoal começou a cucar camadas semânticas construídas por cima da XML, numa tentativa de coordenar as coisas. A primeira delas chama-se WSDL (Web Services Description Language -- Linguagem para Descrição de Serviços Web) que permite descrever aspectos simples de um serviço web, tais como tipos de dados, operações e facilidades oferecidas pelo serviço, interligações e por aí vai. Em resumo, a WSDL permite a um provedor descrever de forma rigorosa os serviços que fornece. Mas ainda ficava faltando uma coisinha: como o provedor poderia descrever aspectos críticos de seus serviços, tais como requisitos contratuais ou preços? E mais, para ter acesso a um determinado documento WSDL, como saber onde ele está?

Para isso, foi criada uma nova camada: UDDI (Universal Description, Discovery and Integration -- integração, descoberta e descrição universal), um jeitinho de agregar e localizar documentos WSDL, mantendo um registro de cada aspecto dos serviços oferecidos. Infelizmente, toda esta elucubração ainda não se mostrou suficiente para garantir que ambos os lados comunicantes estejam em sincronia. A aplicação mais importante nessa relação entre dois pontos é exemplificada por um comprador e um vendedor, que necessariamente têm que falar a mesma língua. Na faina de estabelecer um elo semântico formal entre os dois, é preciso que os ambos sentem-se calmamente e discutam sem pressa como irão operar entre si -- a velha interoperabilidade.

Os estudiosos propuseram então mais algumas camadas nessa cebola intrincada, os USIP (Universal Service Interop Protocols -- protocolos universais de interoperação de serviços). Todavia, a coisa começou a se complicar tanto daí para cima, que ainda não houve quem tivesse cuca, tempo ou saco para definir estes novos níveis. Cá entre nós, esse lance de ficar definindo camada em cima de camada acaba ficando meio sem pé nem cabeça. Fica parecendo com a anedota contada por Bertrand Russell, em que uma velhinha duvidou que a Terra fosse redonda e propôs um modelo em que o planeta era plano e sustentado por uma pilha infinita de tartarugas, umas sobre as outras. Essa historinha completa, juntamente com variados links sobre o tema de hoje, podem ser encontrados em <http://groups.yahoo.com/group/infoetc/files/521-links.htm>, ou então logo abaixo:

Especificação XML
http://www.w3.org/XML/

XML FAQ
http://www.ucc.ie/xml/

Web Services Description Language (WSDL) 1.1
http://www.w3.org/TR/wsdl

Universal Description, Discovery, and Integration
http://www.uddi.org/

Tartarugas até lá embaixo, em inglês:
http://www.the-funneled-web.com/Hawking.htm

Anedota das tartarugas em português:
(procure pelo título: A nossa representação do universo)
http://www.gradiva.pt/capitulo.asp?L=2027

Tagalog Main Page
http://www.seasite.niu.edu/Tagalog/Tagalog_mainpage.htm

[ Voltar para o índice de artigos de 2001 ]

[ O Globo | Informática Etc. | coluna mais recente | enviar email
página pessoal C@T
| assinar lista InfoEtc | assinar GoldenList do C@T ]


powered by FreeFind