• Nenhum resultado encontrado

Palavras Chave-- GML, SVG, XML, XSLT

N/A
N/A
Protected

Academic year: 2021

Share "Palavras Chave-- GML, SVG, XML, XSLT"

Copied!
5
0
0

Texto

(1)

Resumo-- Este artigo apresenta os resultados obtidos na

transformação de dados codificados em GML (Geography Markup Language), gerados a partir de objetos geográficos armazenados em um banco de dados orientado a objetos chamado Gothic, para o formato gráfico SVG (Scalable Vector Graphics). Tendo sido utilizado para efetuar essa conversão a linguagem XSLT, no contexto de uma Clearinghouse desenvolvida para possibilitar a disponibilização de recursos geográficos sobre o território nacional na Internet.

Palavras Chave-- GML, SVG, XML, XSLT

Abstract-- This paper presents the results of the

transformation geographic data described in GML (Geography Markup Language) stored in an Object Oriented geographic Database called Ghotic to SVG (Scalable Vector Graphics). The XSLT language was used to reach this purpose, in the context of a clearinghouse of geographic resources on the Brazilian territory in the Internet.

Keywords-- GML, SVG, XML, XSLT

I. INTRODUÇÃO

Internet é uma fonte de pesquisa e de troca de informações. Entre estas se encontram os mapas, ou informações espaciais, com potencial de análise em diferentes áreas de conhecimento [5].

O número de acessos para obter esse tipo de recurso geográfico cresce continuamente e para atender essa demanda vem desenvolvendo-se aplicações orientadas a Web, buscando conformidade na troca de informações.

Um dos desafios mais importantes no uso das geotecnologias é o intercâmbio de dados espaciais, impulsionado principalmente pelo alto custo de produção desses tipos de dados [7]. Atualmente, uma maneira de reduzir os custos de aquisição dos dados geográficos, e evitar a redundância de esforços, é a troca de informações entre instituições.

Para isso, a maioria dos órgãos públicos e empresas

André Dias Bastos é bolsista DTI na UFRGS – Universidade Federal do Rio Grande do Sul (e-mail: adbastos@inf.ufrgs.br).

Cirano Iochpe é professor do Instituto de Informática na UFRGS – Universidade Federal do Rio Grande do Sul (e-mail: ciochpe@inf.ufrgs.br).

José Valdeni de Lima é professor do Instituto de Informática na UFRGS – Universidade Federal do Rio Grande do Sul (e-mail: valdeni@inf.ufrgs.br).

privadas ao colocarem seus dados georreferenciados na Internet têm seguido o proposto pela OGC (Open Gis Consortium), a qual é uma organização com o objetivo de desenvolver especificações de geoprocessamento publicamente disponíveis e que pretende definir um modelo de dados genérico e interfaces padronizadas para acesso a banco de dados geográficos, baseadas em diferentes tecnologias, como a XML (Extensible Markup Language).

Um dos padrões propostos pela OGC é a GML (Geographic Markup Language). O uso dessa linguagem como um padrão para descrever informações geográficas permite o compartilhamento dos dados e sua integração [15].

Sendo uma codificação XML, a GML apresenta o principio de separação do conteúdo geográfico de sua apresentação. Ela independe de qualquer especificação gráfica, não contendo nenhuma informação sobre como as características codificadas podem aparecer e serem visualizadas posteriormente [11].

A geração de mapas como saída é uma das apresentações mais comuns da GML [8]. Contudo, para desenhar um mapa com esses dados é necessário transformar o código em um formato gráfico que possa ser interpretado por um visualizador, como os Web browsers.

Isso pode ser obtido, por exemplo, convertendo-se suas características simples codificadas em XML em um formato gráfico, tal como o SVG (Scalable Vector Graphics), que assim como a GML, também é uma recomendação da W3C baseada em XML. Uma característica simples separa as propriedades geoespaciais das geométricas utilizadas para visualizar os elementos de um mapa [11].

Neste artigo é abordada uma das etapas do projeto de pesquisa em andamento, a qual envolve a utilização do mecanismo de transformação XSLT (Extensible Stylesheet Language Transformation), a fim de permitir a visualização dos dados GML através de SVG, no contexto de uma clearinghouse para disponibilização de informações geográficas sobre o território brasileiro na Web.

O restante do artigo está organizado como segue. Na seção 2 é apresentada a clearinghouse em desenvolvimento. Um resumo das linguagens GML, XSLT e SVG utilizadas no projeto é apresentado na seção 3. A seção 4 detalha a metodologia empregada na transformação dos dados. Finalmente, as conclusões são apresentadas na seção 5.

Transformação de GML para SVG em uma

Clearinghouse para disponibilização de dados

geográficos na Internet

André Dias Bastos, Cirano Iochpe, José Valdeni de Lima

(2)

II. CLEARINGHOUSE

Uma clearinghouse é um sistema que possibilita a disponibilização de recursos geográficos na Internet.

O sistema sendo utilizado começou a ser desenvolvido em um projeto anterior da UFRGS com apoio da FAPERGS (Fundação de Amparo à Pesquisa do Estado do Rio Grande do Sul) e em parceria com a 1º Divisão de Levantamento do Exército (1°. D.L.), responsável pela modelagem do banco de dados geográfico com todas os dados espaciais a serem utilizados e consultados.

Essa clearinghouse utiliza dois bancos de dados diferentes. Um banco de dados geográfico orientado a objetos (BDOO) chamado Gothic, que realiza o armazenamento e manipulação dos dados geográficos propriamente ditos e o MySQL (usando como front end), que possui os dados textuais e os metadados desses dados [1].

O BDOO Gothic fornece alto desempenho para os aplicativos espaciais que acessam grandes volumes de dados georreferenciados estruturados de forma complexa e irregulares. Fornece ainda flexibilidade e facilidades para a criação de esquemas baseados em modelos de dados, dispensando o uso de ferramentas Case. Os dados usados por qualquer aplicação Gothic são armazenados em datasets [13].

Na clearinghouse, todos os objetos representados em determinada escala são armazenados em datasets independentes. Também há um dataset que contém todos os Mapa-Índices (MI) armazenados.

As funcionalidades contempladas no sistema de clearinghouse possibilitam que o usuário realize pesquisas por MI ou área, entidade geográfica, metadados e sobre o modelo conceitual, como mostrado na figura 1, que apresenta sua interface atual.

Fig. 1. Clearinghouse

A figura 2 ilustra a arquitetura geral do sistema, o qual pode ser dividido em três partes: o front end, a parte do banco de dados geográfico e a interface do usuário.

Fig. 2. Arquitetura geral do sistema

A seguir, estão listados seus componentes [1]: - Banco de dados Gothic;

- Banco de Dados de front end não-geográfico e relacional (MySQL) com metadados e dados descritivos;

- Aplicação no Gothic WebMapper;

- Modelo Conceitual do banco de dados da 1ª D.L. em XML;

- Parser em java para consulta ao modelo conceitual pela aplicação do usuário;

- Parser em java para consulta ao BD de front end pela aplicação do WebMapper ou do usuário;

- Mapeador XSLT.

III. TECNOLOGIAS UTILIZADAS

A. GML

É uma codificação XML para modelagem, transporte e armazenamento de informação geográfica, incluindo as propriedades espaciais e não-espaciais das feições geográficas [14].

A GML baseia-se no modelo abstrato da OGC que define um objeto geográfico com sendo uma abstração de um fenômeno do mundo real e que possui associada uma localização relativa sobre a superfície da Terra. Dessa maneira, uma representação digital do mundo real pode ser entendida como um conjunto de objetos.

O estado de um objeto é definido por um conjunto de propriedades, onde cada propriedade pode ser representada como uma tripla {nome, tipo, valor}.

A especificação da linguagem está baseada em XML-Schema e constitui-se num mecanismo para promover a interoperabilidade no intercâmbio de dados espaciais [3].

Entre seus objetivos estão:

- Fornecer uma estrutura aberta para a definição de esquemas de aplicações e objetos geoespaciais;

- Permitir perfis que suportem subconjuntos de capacidades descritivas da GML;

- Suportar a descrição de esquemas de aplicação geoespacial para domínios específicos e comunidades de informação;

- Suportar o armazenamento e transporte de esquemas de aplicação e conjunto de dados;

(3)

esquemas de aplicações geoespaciais entre organizações.

Um esquema de aplicação é um XML-Schema escrito de acordo com as regras GML e que define um vocabulário de objetos geográficos para um determinado domínio [14].

Atualmente, em sua versão 3.0, fornece uma variedade de tipos de objetos para descrição geográfica, incluindo sistema de referência, geometria, objeto geográfico (feature), topologia, tempo, unidades de medida e generalização de valores. Ela possibilita a representação de objetos com propriedades temporais, topologia 2D, geometria 3D, cobertura e observações.

Inclui também um suporte mais explicito para propriedades de objetos com valor complexo.

A representação visual de uma estrutura GML depende do uso de recursos gráficos adicionais, sendo necessária sua transformação em algum formato gráfico. No entanto, isso não é necessário em algumas aplicações onde os dados geográficos são dirigidos a um modelo matemático para processamento, não precisando de exibição gráfica dos resultados [11].

B. XSLT

A XSLT é uma poderosa e flexível linguagem para especificar a transformação de documentos XML em representações diferentes [2].

Através do seu uso é possível [17]:

- Adicionar prefixos e/ou sufixos a um conteúdo de texto;

- Eliminar, criar, reestruturar e ordenar elementos; - Reusar elementos em qualquer parte do documento; - Transformar dados de um formato XML para outro

baseado em texto;

- Especificar os objetos de formatação XSL que são aplicados a cada classe de elementos.

Embora tenha sido desenvolvida para transformar XML para XML, é possível obter como saída qualquer formato baseado em texto, como uma página HTML, um arquivo PDF, um arquivo SVG, etc.

A transformação dos dados pode ser realizada usando-se uma folha de estilos XSLT (XSLT Stylesheet) junto com um processador (parser) da linguagem, como ilustrado na figura 3.

Fig. 3. Conversão de XML para outro formato

Uma folha de estilos é um conjunto de regras (templates)

onde cada regra específica como formatar certos elementos no arquivo.

Elas são separadas dos documentos, permitindo que um documento possa ter mais de uma folha de estilos. Da mesma forma, uma folha de estilos pode ser compartilhada entre vários documentos [12].

Cada regra “casa” com um tipo de elemento no documento de entrada utilizando expressões Xpath, para referenciar partes específicas do documento. Desse modo, as tags originais são substituídas por novas tags de saída.

Se o documento transformado está em XML, ele pode usar a marcação e DTD do original, ou pode usar um conjunto de elementos completamente diferente.

C. SVG

É uma linguagem para descrever gráficos bidimensionais (2D) em XML, recomendada pela W3C e que permite três tipos de objetos gráficos: vetor, imagem e texto [16].

O SVG é suportado pela maioria dos browsers, mas ainda requer um plug-in para algumas versões correntes do Internet Explorer e Netscape. Ele também pode ser visualizado através de visualizadores, como o Adobe SVG Viewer, os quais simulam o “algoritmo do pintor”, no qual áreas vão sendo pintadas à medida que o código é interpretado [15].

Apresenta muitas vantagens sobre outros formatos amplamente usados na Internet, como o JPEG e o GIF, pois diferentemente destes que são imagens matriciais, as quais descrevem um gráfico “pixel a pixel” e não têm topologia, ela representa um gráfico através de uma linguagem vetorial.

A ausência de topologia dificulta a interação com o mapa, não permitindo que seus atributos geográficos possam ser determinados.

O SVG além de tornar essa interação possível, permite também a aplicação de zoom sem degradação da imagem, gera arquivos menores e não é um formato proprietário.

É eficiente para transferência via Web pela incorporação de compressão em suas especificações. Arquivos texto SVG podem ser eficientemente compremidos e passados através da Internet na forma zipada, com a extensão .svgz.

Elementos de um documento SVG podem ser acrescentados, movidos, modificados, copiados e deletados usando eventos da interface gráfica do usuário (GUI), acessíveis através de linguagens como JavaScript, possibilitando assim um comportamento dinâmico [6]. Também é extensível com tecnologias do lado do servidor, como Java Servlets, JSP, PHP ou ASP. Links SVG podem chavear eventos do servidor para consulta de banco de dados ou realizar funções complexas que produzem novos documentos SVG [9]-[10].

De uma maneira geral, através do SVG é possível [11]: - Selecionar um objeto gráfico ou um grupo de objetos a

partir de um evento do mouse;

- Aplicar transformações de coordenadas em um objeto gráfico dado a matriz de transformação;

(4)

eventos do mouse sobre objetos gráficos;

- Diversificar as fontes e suas formas de apresentação (por exemplo, textos podem aparecer tangentes a curvas ou objetos gráficos);

- Selecionar e agrupar objetos de interesse do usuário; - Aplicar processamento condicional em função do

ambiente;

- Selecionar cores e preenchimentos em objetos gráficos(por exemplo, através do uso de gradientes e padrões de preenchimento);

- Aplicar filtros criando efeitos visuais de luz e percepção 3D;

- Exibir uma imagem raster no fundo, enquanto visualizam-se objetos sobre a imagem;

O sistema de coordenadas utilizado é o cartesiano, no qual a origem é localizada no canto superior esquerdo da tela, sendo que as coordenadas Y são invertidas, crescendo ao contrário.

Com isso, ao representar um mapa usando SVG, o eixo Y tem de ser invertido, multiplicando-se todos os valores por –1, ou criando-se um grupo ao redor dos objetos a serem transformados e efetuando a inversão através de uma matriz [15]. Com o auxílio de matrizes 3 x 3, transformações geométricas elementares (translação, rotação, escala) podem ser aplicadas individualmente ou combinadas em parte ou todo o documento.

IV. METODOLOGIA

A geração de mapas a partir de GML pode ser realizada através do mecanismo de transformação XSLT. Uma vez que os dados estejam codificados utilizando a GML, para que ocorra a sua visualização na forma de mapas e/ou intercâmbio, torna-se necessário à conversão em um formato gráfico, que ofereça um suporte interativo e dinâmico para as informações georreferenciadas, como o SVG.

As folhas de estilo XSLT definem como o documento em GML é transformado em elementos gráficos do SVG. Por usar diferentes folhas de estilo, o mesmo documento GML pode ser visualizado diferentemente.

Da mesma forma, que diferentes conjuntos de dados tendo um schema homogêneo podem usar a mesma folha de estilos. Na clearinghouse essa transformação ocorre da seguinte forma: ao realizar uma pesquisa por Entidade Geográfica, por exemplo, o sistema deve retornar ao usuário todos os produtos que atendem a consulta e permitir um preview do produto selecionado em SVG, com seus respectivos metadados.

No exemplo mostrado na figura 4, o usuário realizou uma consulta por Entidade Geográfica “Carlos Gomes” na escala 1:25.000 e obteve como um dos resultado encontrados na pesquisa a rodovia pavimentada com esse mesmo nome, mostrada abaixo.

Fig. 4. Visualização em SVG

Para representação em mapa das propriedades geométricas da GML foram utilizadas as regras de modelos XSLT, as quais convertem cada uma dessas propriedades em seu equivalente gráfico no SVG (Point do GML pode ser representado por um Circle da SVG de raio proporcional à resolução, etc).

Os dados GML empregados no sistema são obtidos a partir de uma função do Gothic Web Mapper (GWM), a qual converte o objeto selecionado, armazenado no banco de dados geográfico em um dataset da respectiva escala do produto, para um código GML como o mostrado na figura 5.

O GWM é a única forma de acessar o Gothic a partir de uma aplicação rodando na internet [1].

Fig. 5. Código GML gerado pelo GWM

Esse código GML requer ainda a aplicação de uma função para inclusão das tags de identificação dos elementos envolvidos, de modo a permitir sua transformação XSLT e a posterior visualização em SVG dos resultados encontrados na consulta.

Após a aplicação dessa função, o código mostrado na figura 5, fica como está representado na figura 6.

(5)

Fig. 6. Código GML

V. CONCLUSÃO

Este artigo apresentou o processo de conversão de dados GML para o formato gráfico SVG através do mecanismo de transformação XSLT, permitindo assim a visualização de mapas em uma clearinghouse para disponibilização de recursos geográficos na Web.

Considerando a complexidade e variedade de documentos GML, desenvolver regras XSLT que permitam a transformação de documentos GML em SVG não é uma tarefa fácil. Assim como, não pode garantir que o documento gerado é válido [4].

Além disso, como citado em algumas referências bibliográficas utilizadas neste artigo, os documentos gerados pela GML e SVG costumam ser muito maiores do que os gerados por ferramentas proprietárias.

No entanto, o processo de transformação aplicado tem-se mostrado bastante eficaz no projeto, permitindo a visualização dos recursos geográficos de maneira satisfatória e possibilitando aos usuários do sistema de clearinghouse obterem o preview dos produtos selecionados com vantagens em relação à visualização em JPG ou PNG, ainda utilizada em partes do sistema.

Até o final do projeto serão realizadas mais experiências com essas tecnologias, de modo a incluí-las em toda clearinghouse e certificar sua aplicabilidade.

VI. REFERÊNCIAS

[1] C. Iochpe, G. N. Hess, A. D. Bastos, e N. R. Silva, “Suporte a disponibilização de recursos geográficos na Internet,” Universidade Federal do Rio Grande do Sul, Porto Alegre, Relatório Técnico, Out. 2003.

[2] D. Tidwell, “XSLT”, Beijing: O'Reilly, 2001, 460 p.

[3] G. N. Hess e C. Iochpe, “Utilizando a GML na identificação de candidatos a padrão de análise para BDG,” in Proc. 2003 GEOINFO:

Simpósio Brasileiro de Geoinformática, 2003.

[4] G. Zhimao, S. Zhou, Z. Xu and A. Zhou, “G2ST: A novel method to transform GML to SVG,” in Proc. 2003 GIS’03.

[5] J. I. Miranda, “Diretivas para Disponibilizar Mapas na Internet”.

[Online]. Disponível: http://www.cnptia.embrapa.br/publica/documentos.html

[6] P. A. Mansfield, and D. W. Fuller, “Graphical Stylesheets – Using XSLT to generate SVG”. [Online]. Disponível: http://www.schemasoft.com/ gcatools/gca2html/Output/05-05-02.html [7] P. Lima, G. Camara, J. A. Paiva e A. M. V. Monteiro, “Intercâmbio de

dados geográficos: Modelos, Formatos e Conversores,” in Proc. 2001

GEOINFO: Simpósio Brasileiro de Geoinformática.

[8] P. P. O. da Silva, “Codificação XML para armazenamento e transporte de dados geográficos,” Universidade Federal do Rio de Janeiro, 2002. [9] R. George, “GIS meets XML”. [Online]. Disponível:

http://www.academy-computing.com/svgweb/svg-gis.html

[10] R. George, “Maximize online mapping with SVG/XML”. [Online]. Disponível: http://www.geoplace.com/gw/2002/0212/0212svg.asp [11] R. J. L. dos Santos, “Utilização de XML/GML e XML/XSLT e

XML/SVG no Contexto das Funcionalidades Relacionadas às Estratégias de Visualização Cartográfica: Uma discussão Introdutória,” Universidade do Estado do Rio de Janeiro, 2001.

[12] M. Benoit, “XML Conceitos e Aplicações,” Editora Berkeley, São Paulo, 2000, 548p.

[13] O. A. Lunardi, “Simulação de operações militares de comando e controle em um teatro de operações militares com tecnologia orientada a objetos,” Dissertação de mestrado, Universidade Federal do Rio Grande do Sul, 2003.

[14] Open GIS Consortium, “Geography Markup Language (GML) 3.0,” Open GIS Implementation Specification, [Online]. Disponível: http:// www.opengis.org/docs/02-023r4.pdf

[15] W. T. M. S. B. Tennakoon, “Visualization of GML data using XSLT,” Master dissertation, International Institute for Geo-Information Science and Earth Observation, 2001.

[16] World Wide Web Consortium, “Scalable Vector Graphics (SVG),” [Online]. Disponível: http://www.w3c.org/TR/SVG

[17] World Wide Web Consortium, “Transformations XSL (XSLT).” [Online]. Disponível: http://www.w3.org/TR/xslt

VII. BIOGRAFIAS

André Dias Bastos nasceu em Pelotas, Rio

Grande do Sul. É bacharel em Ciência da Computação pela Universidade Federal de Pelotas. Atualmente é bolsista DTI na Universidade Federal do Rio Grande do Sul, na área de Sistemas de Informação Geográfica e Banco de Dados Geográficos.

Cirano Iochpe nasceu em Porto Alegre, Rio Grande

do Sul. É doutor pela Universität Karlsruhe (Alemanhã). Professor Assistente IV do Instituto de Informática da Universidade Federal do Rio Grande do Sul. Suas áreas de pesquisa atuais incluem Sistemas de Informação Geográfica, Banco de Dados e Sistemas de Workflow.

José Valdeni de Limanasceu em Fortaleza, Ceará. É doutor em Informática pela Université Joseph Fourier (França). Professor Assistente IV do Instituto de Informática da Universidade Federal do Rio Grande do Sul. Atualmente tem como algumas de suas frentes de pesquisa Workflow, CSCW, Hipermídia, Educação a Distância e Adaptatividade.

Referências

Documentos relacionados

124 resfriadores e aquecedores finais de cada corrente (que são aqueles trocadores de calor que utilizam utilidades quentes ou frias e têm a função de promover o

O objetivo do curso foi oportunizar aos participantes, um contato direto com as plantas nativas do Cerrado para identificação de espécies com potencial

O valor da reputação dos pseudônimos é igual a 0,8 devido aos fal- sos positivos do mecanismo auxiliar, que acabam por fazer com que a reputação mesmo dos usuários que enviam

No final, os EUA viram a maioria das questões que tinham de ser resolvidas no sentido da criação de um tribunal que lhe fosse aceitável serem estabelecidas em sentido oposto, pelo

Pronovost P, Needham D, Berenholtz S, Sinopoli D, Chu H, Cosgrove S, Sexton B, Hyzy R, Welsh R, Roth G, Bander J, Kepros J, Goeschel C.. An Intervention to Decrease Catheter-Related

299: omitir, em documento público ou particular, declaração que dele devia constar, ou nele inserir ou fazer inserir declaração falsa ou diversa da que devia ser escrita, com o fim

O Fórum de Integração Estadual: Repensando o Ensino Médio se efetiva como ação inovadora para o debate entre os atores internos e externos da escola quanto às

Mestrado em Administração e Gestão Pública, começo por fazer uma breve apresentação histórica do surgimento de estruturas da Administração Central com competências em matéria