Os Sistemas Web
Antes de compreender o que é e como funciona o WebSIG, é importante entender o conceito de Web. A “World Wide Web (WWW ou Web) é um sistema de hipertexto que funciona sobre a Internet. A visualização da informação e navegação é feita usando uma aplicação específica – o navegador (browser)”.
A Web começou a ser desenvolvida em dezembro de 1990 para facilitar o compartilhamento de conhecimento entre um grupo de pesquisadores da European Organization for Nuclear Research (CERN), em Genebra, Suíça. Tim Berners-Lee iniciou um projeto de software sem fins lucrativos intitulado “WorldWideWeb”.
O sistema Web é baseado em cliente-servidor, onde o cliente é designado como frontend e o servidor como backend. Clientes e servidores possuem partes distintas a serem desenvolvidas. Ambos podem ser implementados e desenvolvidos de forma independente, usando diferentes linguagens de programação e tecnologias. O frontend define a estrutura semântica do conteúdo, os estilos a serem utilizados e adiciona a interação com o usuário, sendo responsável por realizar os pedidos ao servidor. O backend gerencia os conteúdos, desempenhando funções como configurar a conexão, receber e processar solicitações HTTP, acessar recursos, construir e enviar respostas, e registrar transações.
Dessa forma, o usuário faz um pedido indicando a URL (Uniform Resource Locator), que solicita ao servidor por meio do HTTP. Este devolve o conteúdo solicitado em formato HTML (HyperText Markup Language), permitindo ao usuário interagir com o sistema. Embora existam outros protocolos para a transmissão de conteúdo além do HTTP, este é o mais conhecido e utilizado devido à conversa bidirecional entre navegadores da Web e servidores da Web. Existem também outros formatos de arquivos que podem ser devolvidos pelos servidores além do HTML.
Cada mensagem de solicitação HTTP tem um método que informa ao backend qual ação executar, como buscar uma página da Web, executar um programa, ou excluir um arquivo. Os principais métodos são: GET (solicita a representação de um recurso específico e deve retornar apenas dados), POST (utilizado para submeter uma entidade a um recurso específico, frequentemente causando mudanças no estado do recurso ou efeitos colaterais no servidor), PUT (substitui todas as atuais representações do recurso de destino pela carga de dados da requisição), e DELETE (elimina um recurso específico).
Há uma diferença entre um Website e um Web Service. Um Website fornece páginas e formulários HTML para usuários navegarem e executarem funções como pesquisas, compras e interações, utilizando interfaces de usuário frontend através do navegador. Já um Web Service é utilizado para transferir dados através de protocolos de comunicação para diferentes plataformas, independentemente das linguagens de programação utilizadas. O Web Service não permite o acesso pelo usuário através dos navegadores Web, e trabalha com diversas linguagens de programação, necessitando de uma linguagem intermediária que garanta a comunicação entre a linguagem do Web Service e o sistema que faz o pedido ao Web Service. Existem dois principais estilos de arquitetura da informação: SOAP (Simple Object Access Protocol), que utiliza o formato de arquivo XML (Extensible Markup Language), e REST (Representational State Transfer), que utiliza vários formatos de arquivos para a representação de dados, sendo o mais usual o JSON (JavaScript Object Notation). O REST é mais recente, mais flexível por operar com vários formatos e mais ágil, com a capacidade de transmitir dados diretamente via protocolo HTTP. Portanto, o Web Service é o comunicador entre frontend e backend.
Existem Web Services voltados para os SIG, normatizados pela OGC (Open Geospatial Consortium). Os principais são: Web Map Service (WMS), que permite aos usuários acessar remotamente imagens de mapas georreferenciados; Web Feature Service (WFS), que permite a troca de dados geográficos em formato vetorial na Web; e Web Coverage Service (WCS), que permite que mapas em formato raster sejam obtidos de um navegador da web ou de qualquer outro programa que use o protocolo.
Assim, o sistema Web é composto pelo frontend, onde o usuário navega e interage com o sistema, e pelo backend, que gerencia todo o conteúdo da aplicação Web. A comunicação entre eles é feita através do Web Service, e os métodos HTTP são responsáveis pelo transporte da informação. Opcionalmente, pode-se utilizar uma base de dados para armazenamento de toda informação.
WebSIG
Com o avanço tecnológico e a necessidade de disseminar informações, especialmente relacionadas ao espaço, tornou-se inevitável o desenvolvimento de aplicações Web com Sistemas de Informação Geográfica (SIG) para publicar dados geoespaciais na Internet. Essas aplicações fornecem aos usuários funções de navegação, consulta, análise e diversas funções SIG.
O WebSIG possui características que o diferenciam dos tradicionais programas SIG de desktop. As principais características do WebSIG são:
- É um sistema cliente/servidor baseado em rede, enquanto o SIG tradicional é principalmente um sistema autônomo.
- É um sistema distribuído, onde usuários e servidores podem estar em diferentes locais e plataformas de computador.
- Usa a Internet para trocar informações entre o cliente e o servidor, permitindo a transmissão global de informações.
- Não possui restrições de hardware ou sistema operacional. Os usuários podem acessar e usar o WebSIG desde que tenham acesso à Internet.
Existem várias maneiras de construir um WebSIG, destacando-se o desenvolvimento baseado nas tecnologias de backend e frontend. Quando o backend recebe um pedido do frontend através do navegador, ele chama as bibliotecas geoespaciais, acessa os dados geográficos armazenados na base de dados, executa as funções SIG e retorna o resultado para o frontend, que apresenta a informação no navegador. Assim, tanto os dados geográficos quanto as funções de geoprocessamento ficam alocados no backend. O frontend apenas envia os pedidos ao backend e apresenta ao usuário o resultado correspondente.
Portanto, um WebSIG é um conjunto de protocolos, ferramentas, serviços Web e linguagens de programação, desde o backend até o frontend. Esse esquema inclui as funções dos Sistemas de Informação Geográfica através de bibliotecas geoespaciais (como GDAL/OGR, Geopandas, GeoDjango), servidores de mapa responsáveis pela criação dos serviços do backend e bibliotecas em JavaScript para a visualização de mapas no frontend.
Isso permite a interação com o usuário por meio de pedidos de informações dos dados geoespaciais e alfanuméricos, importação e exportação de dados, e a criação de mapas. As principais vantagens do WebSIG são: alcance global, maior número de usuários, baixo custo, fácil utilização e fácil atualização/manutenção.
Aplicações Práticas:
- Planejamento Urbano: Auxilia na gestão e planejamento de cidades, permitindo a visualização de infraestruturas, zoneamento e áreas de desenvolvimento.
- Agricultura: Permite o monitoramento de áreas agrícolas, análise de solo, previsão de colheitas e gerenciamento de recursos hídricos.
- Gestão Ambiental: Monitoramento de áreas de preservação, controle de desmatamento, análise de impacto ambiental e gestão de recursos naturais.
- Transporte e Logística: Planejamento de rotas, análise de tráfego, gestão de frotas e otimização de entregas.
Saúde Pública: Análise de distribuição de doenças, gestão de recursos de saúde, planejamento de campanhas de vacinação e monitoramento de surtos.