Este artigo tem o objetivo de mostrar como é possível modelar conceitualmente um banco de dados geográficos. O texto cita uma metodologia de projeto apropriada usando a linguagem UML enriquecida do framework GeoFrame.

Conhecendo o UML-GeoFrame

Segundo Lisboa Filho (2001), “GeoFrame é um framework conceitual que fornece um diagrama de classes básicas para auxiliar o projetista nos primeiros passos da modelagem conceitual de dados de uma nova aplicação de SIG”.

Um framework serve como instrumento de reutilização e não precisa ser implementado em uma linguagem de programação para solucionar o problema. O GeoFrame foi desenvolvido para ser genérico o bastante para expressar a idéia de um projeto conceitual parcial para várias aplicações geográficas. Ele foi definido de acordo com as regras do formalismo de orientação a objetos, utilizando a notação gráfica do diagrama de classes da linguagem UML. Além disso, este framework representa suas classes e relacionamentos de objetos espaciais através de estereótipos. Estereótipos permitem estender o uso de um diagrama de classes baseado em notações já existentes, a fim de resolver alguma deficiência no modelo de classes. Os tipos de estereótipos existentes no GeoFrame são de generalização e associação. O estereótipo de generalização serve para representar objetos das três principais classes do GeoFrame, que são: OBJETOS_NÃO_GEOGRÁFICOS, CAMPOS_GEOGRÁFICOS e OBJETOS_GEOGRÁICOS, consideradas classes de domínio no diagrama. O estereótipo de associação serve para substituir relacionamentos de objetos representados como fenômenos geográficos, objetos que tenham representação espacial e forma geométrica.

As Figuras 1, 2 e 3, mostram respectivamente o diagrama de classes que compõe o GeoFrame e os estereótipos criados para atender a modelagem conceitual de um banco de dados geográficos. A seguir são detalhadas as principais classes que compõem o GeoFrame.

Diagrama de classes do GeoFrame
Figura 1. Diagrama de classes do GeoFrame.
Estereótipos para generalização entre as classes modeladas no GeoFrame
Figura 2. Estereótipos para generalização entre as classes modeladas no GeoFrame.
Estereótipos para associação entre as classes modeladas no GeoFrame
Figura 3. Estereótipos para associação entre as classes modeladas no GeoFrame.

UML quer dizer Unified Modeling Language. É uma linguagem gráfica para visualização, especificação, construção e documentação de sistemas complexos e propõe uma forma padrão para projetos de sistemas de informação.

Classes Tema e Região Geográfica

Toda aplicação que manipula informações geográficas visa o controle e a manipulação de um conjunto de dados para uma região específica, formando um banco de dados geográficos. Para cada região geográfica pode ser especificada uma coleção de temas. A formação de um banco de dados geográficos é feita inicialmente pelas classes TEMA e REGIÃOGEOGRÁFICA, permitindo dividir o esquema de dados agrupados em classes que estão fortemente relacionadas entre si. O modelo UML-GeoFrame emprega a notação de Pacote da UML para agrupar as classes de um determinado tema, possibilitando uma visualização melhor do modelo de classes. A Figura 4 mostra um exemplo de uso das classes TEMA e REGIÃOGEOGRÁFICA, em que a região geográfica está intrínseca aos dados.

Exemplo do uso das classes TEMA e REGIÃOGEOGRÁFICA.
Figura 4. Exemplo do uso das classes TEMA e REGIÃOGEOGRÁFICA.

Classe Objeto Não Geográfico e Fenômeno Geográfico

Em um esquema de BDG (Banco de Dados Geográficos) podem existir objetos que não possuem características geométricas como, por exemplo, os dados sobre a população do município em cada senso demográfico, as unidades federativas, etc. Estes tipos de objetos são modelados como pertencentes a subclasses da classe OBJETONÃOGEOGRÁFICO.

A classe FENÔMENOGEOGRÁFICO generaliza qualquer fenômeno que ocorre na superfície terrestre. Pode modelar dados geográficos como: curso d´água, pátio ferroviário ou a própria linha férrea. A Figura 5 ilustra um tema sobre atividade carbonífera, no qual as classes PRODUÇÃOCARVÃO e MINACARVÃO são respectivamente objetos não geográficos e fenômenos geográficos.

Exemplo do uso das classes OBJETONÃOGEOGRÁFICO e FENÔMENOGEOGRÁFICO
Figura 5. Exemplo do uso das classes OBJETONÃOGEOGRÁFICO e FENÔMENOGEOGRÁFICO.

Classe Campo Geográfico e Objeto Geográfico

Fenômenos geográficos são percebidos, na realidade, segundo as visões divididas de campo e de objeto. Essas duas visões acarretam diferentes maneiras de modelagem dos fenômenos geográficos. As classes CAMPOGEOGRÁFICO e OBJETOGEOGRÁFICO especializam a classe FENÔMENOGEOGRÁFICO, permitindo ao projetista especificar de forma distinta, porém integrada, os campos e os objetos geográficos respectivamente.

A classe OBJETOGEOGRÁFICO é uma generalização de todas as classes que são percebidas na visão de objetos geográficos. Representa objetos que podem ser individualizados e que possuam características próprias, incluindo sua representação espacial. Exemplo destes tipos de objetos geográficos seriam Estradas, Rios, Cidades, etc.

A classe CAMPOGEOGRÁFICO pode modelar objetos distribuídos sobre a superfície de forma contínua, por exemplo, altimetria, temperatura e cobertura do solo. Outros objetos também podem ser modelados, mas através de forma distribuída no mapa como, por exemplo, a população e as ocorrências policiais em uma determinada área. A Figura 6 exemplifica o uso das classes CAMPOGEOGRÁFICO e OBJETOGEOGRÁFICO.

Exemplo do uso das classes CAMPOGEOGRÁFICO e OBJETOGEOGRÁFICO respectivamente
Figura 6. Exemplo do uso das classes CAMPOGEOGRÁFICO e OBJETOGEOGRÁFICO respectivamente.

Alguns fenômenos geográficos possuem uma dimensão espacial complexa, composta por mais de um objeto espacial. A classe OBJETOESPACIAL generaliza as classes necessárias para a representação do componente espacial dos fenômenos geográficos notados na visão de objetos.

Um arquipélago, por exemplo, pode ter uma dimensão espacial complexa, composto por vários outros objetos modelados nas subclasses especializadas da classe OBJETOESPACIAL. As subclasses são PONTO, LINHA, POLÍGONO e OBJESPACIALCOMPLEXO, que constituem o conjunto mínimo de classes necessárias para a fase do projeto conceitual de um BDG.

Um objeto modelado na classe OBJESPACIALCOMPLEXO pode ser uma malha férrea onde existem vários cruzamentos e passagens de nível.

Classe Representação Campo

A classe REPRESENTAÇÃOCAMPO generaliza as formas espaciais de representação dos fenômenos geográficos que ocorrem na superfície de forma contínua, ou seja, os fenômenos observados na visão de campo. As subclasses são GRADECÉLULAS, POLADJACENTES, ISOLINHAS, GRADEPONTOS, TIN e PONTOSIRREGULARES, e são usadas para modelar, por exemplo, a topografia de terrenos, imagem via satélite ou o uso do solo. Ou seja, qualquer variação do solo como declividade, volume ou cortes pode ser modelada pelas classes de representação de campo.

Um objeto modelado pela classe TIN (Triangular Irregular Network), pode representar objetos com forma de grade triangular ou grade regular. A Figura 7 mostra um exemplo de um TIN ilustrando a declividade do solo.

Exemplo de como um mapa é modelado através da classe TIN ilustrando a declividade do solo
Figura 7. Exemplo de como um mapa é modelado através da classe TIN ilustrando a declividade do solo.

Conclusão

Este artigo teve o objetivo de mostrar o modelo UML-GeoFrame para especificar conceitualmente um banco de dados geográficos. É importante lembrar que um framework pode ser usado para solucionar diversos problemas, e o GeoFrame não é diferente podendo auxiliar na modelagem conceitual de muitos Sistemas de Informações Geográficas. No próximo artigo será mostrado a construção de um modelo conceitual de banco de dados geográficos usando a ferramenta ArgoCASEGEO e em seguida a implementação do banco de dados usando o PostGIS.