Buscar

Arquitetura de Software para Dados Geográficos

Prévia do material em texto

Luiz André Portes Paes Leme 
Uma arquitetura de software para catalogação automá tica 
de dados geográficos 
 
 
Dissertação de Mestrado 
Dissertação apresentada como requisito parcial para 
obtenção do título de Mestre pelo Programa de Pós-
Graduação em Informática da PUC-Rio. 
Orientador: Prof. Marco Antonio Casanova 
 
Rio de Janeiro 
8 de agosto de 2006 
 
 
 
Luiz André Portes Paes Leme 
Uma arquitetura de software para catalogação automá tica 
de dados geográficos 
 
 
Dissertação apresentada como requisito parcial para 
obtenção do título de Mestre pelo Programa de Pós-
Graduação em Informática da PUC-Rio. Aprovada pela 
Comissão Examinadora abaixo assinada. 
Prof. Marco Antonio Casanova 
Orientador 
PUC-Rio 
Prof. Daniel Schwabe 
PUC-Rio 
Profª. Karin Koogan Breitman 
PUC-Rio 
Prof. José Eugênio Leal 
Coordenador Setorial do Centro Técnico Científico - PUC-Rio 
Rio de Janeiro 
8 de agosto de 2006 
 
 Todos os direitos reservados. É proibida a reprodução 
total ou parcial do trabalho sem autorização da 
universidade, do autor e do orientador. 
 Luiz André Portes Paes Leme 
Engenheiro Eletrônico graduado pela Universidade do 
Estado do Rio de Janeiro em julho de 1989. Cursou Pós-
graduação "latu-sensu" em Gerência e Desenvolvimento 
de Sistemas Distribuídos no Núcleo de Computação 
Eletrônica da UFRJ de julho/2000 a jun./2001. Coordenou 
projetos de Sistemas de Informação para a Golden Cross 
de 1996 a 2004 nas áreas de análise de sinistros e 
atendimento a clientes. 
 Ficha Catalográfica 
 Leme, Luiz André Portes Paes 
 
Uma arquitetura de software para catalogação 
automática de dados geográficos / Luiz André Portes Paes 
Leme ; orientador: Marco Antonio Casanova. – Rio de 
Janeiro : PUC-Rio, Departamento de Informática, 2006. 
 
120 f. : il. ; 30 cm 
 
Dissertação (mestrado) – Pontifícia Universidade 
Católica do Rio de Janeiro, Departamento de Informática 
 
Inclui bibliografia 
 
1. Informática – Teses. 2. Dicionário geográfico. 3. 
Tesauro. 4. Alexandria digital library. 5. Catálogo. 6. Banco 
de dados. 7. Indexação. 8. Dado geográfico. 9. Metadado. 
10. ISSO 19115. I. Casanova, Marco Antonio. II. Pontifícia 
Universidade Católica do Rio de Janeiro. Departamento de 
Informática. III. Título. 
 
 CDD: 004 
 
Agradecimentos 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Ao meu orientador Professor Marco Antonio Casanova pelo grande estímulo e 
conhecimento técnico. 
 
À minha mulher pela paciência e carinho com que me estimulou a superar os 
desafios. 
 
Aos meus colegas da PUC-Rio, em especial à Daniela Brauner pelas inúmeras 
contribuições a este trabalho. 
 
Ao CNPq e à PUC-Rio, pelos auxílios concedidos, sem os quais este trabalho 
não poderia ter sido realizado. 
 
Aos professores que participaram da Comissão examinadora. 
 
A todos os professores e funcionários do Departamento pelos ensinamentos e 
pela ajuda. 
 
A todos os amigos e familiares que de uma forma ou de outra me estimularam 
ou me ajudaram. 
 
Resumo 
Paes Leme, Luiz André Portes. Uma arquitetura de software para 
catalogação automática de dados geográficos. Rio de Janeiro, 2006. 
120p. Dissertação de Mestrado - Departamento de Informática, Pontifícia 
Universidade Católica do Rio de Janeiro. 
Dados geográficos estão disponíveis em quantidade e variedade 
crescentes à medida que evoluem as tecnologias de informática. Para torná-los 
úteis, é necessário que mecanismos de busca de dados possam identificar 
dados apropriados a determinado propósito. Tais mecanismos, comumente, 
utilizam catálogos de metadados que descrevem cada dado geográfico. 
Entretanto, a geração de metadados é um processo que pode consumir muito 
tempo e estar sujeito a muitos erros, caso seja feito manualmente. Essa 
dissertação apresenta uma arquitetura de software e tecnologias correlatas 
para aplicações de catalogação automática de dados geográficos. 
Palavras-chave 
1. Informática – Teses; 2. dicionário geográfico; 3. tesauro; 4. Alexandria 
Digital Library; 5. catálogo; 6. banco de dados; 7. indexação; 8. dado geográfico 
9. metadado; 10. ISO 19115 
 
Abstract 
Paes Leme, Luiz André Portes. A software architecture for automated 
cataloguing of geographic data. Rio de Janeiro, 2006. 120p. MSc. 
Dissertation - Departamento de Informática, Pontifícia Universidade 
Católica do Rio de Janeiro. 
The amount and variety of geographic data increase as technology 
evolves. To make them useful it is necessary to implement search engines 
capable of identifying appropriate data. Such engines are usually based on 
metadata catalogs which describe the geographic data. However, the metadata 
generation process is time consuming and is not fail safe if it is carried out 
manually. This dissertation presents a software architecture, and related 
technologies, for the construction of automated cataloguing applications of 
geographic data. 
Palavras-chave 
1. information science – thesis; 2. gazetteer; 3. thesaurus; 4. Alexandria 
Digital Library; 5. catalog; 6. database; 7. indexing; 8. geographic data; 9. 
metadata; 10. ISO 19115 
 
 
Sumário 
1 Introdução 12 
1.1. Motivação 12 
1.2. Trabalhos relacionados 13 
1.3. Organização do trabalho 15 
2 Dicionários e catálogos 17 
2.1. Padrões de metadados 19 
2.1.1. Padrão ISO 19115 19 
2.1.2. Padrão FGDC 23 
2.2. Interface de serviço de catálogos 26 
2.2.1. OpenGIS Services Framework 26 
2.2.2. Geospatial Web Services Architecture 28 
2.2.3. OGC Catalogue Service 2.0 29 
2.3. Dicionários geográficos 32 
2.3.1. Exemplos de dicionários geográficos 32 
2.3.2. Classificação de objetos geográficos 34 
2.3.3. Padrões para dicionários geográficos 35 
2.3.4. Alexandria Digital Library Gazetteer 38 
3 Arquitetura de software para catalogação automática de dados 
geográficos 42 
3.1. Estratégia de catalogação 42 
3.2. Requisitos da arquitetura 46 
3.3. Processo de catalogação 50 
3.4. Geração de metadados 52 
3.5. Esquema de metadados 55 
4 Implementação do GeoCatalog 58 
4.1. Casos de uso 59 
4.2. Padrão arquitetural da aplicação 67 
4.3. Interface de usuário 68 
4.3.1. Interação com usuário 70 
 
4.3.2. Atualização das informações de interface de usuário 72 
4.3.3. Configuração de um processo de catalogação 74 
4.4. Inicialização de processo de catalogação 74 
4.5. Geração de metadados 77 
4.6. Framework de catalogação de dados 80 
4.7. Métricas e organização do código 87 
4.8. Exemplo de utilização 89 
5 Conclusões e trabalhos futuros 94 
6 GLOSSÁRIO 96 
7 REFERÊNCIAS 99 
8 APÊNDICE A – Protocolo de Serviço do ADL Gazetteer (esquemas XML) 101 
9 APÊNDICE B – Casos de teste 109 
 
 
 
 
Lista de figuras 
Figura 1 – Esquema do processo de identificação de áreas de alagamento 
ao redor de um rio 13 
Figura 2 – Esquema de organização de dados geográficos definidos pela 
ISO 19115 20 
Figura 3 – Esquema geral de metadados geográficos definidos pela 
ISO19115 21 
Figura 4 – Componentes do OpenGIS Services Framework 27 
Figura 5 – Camadas de serviços na arquitetura OWS 29 
Figura 6 – Arquitetura interna de um serviço de catálogo 30 
Figura 7 – Fragmento da hierarquia de termos do ADL Gazetteer Feature 
Type Thesaurus 35 
Figura 8 – Um fragmento do ADL Feature Type Thesaurus e uma imagem 
da cidade do Rio de Janeiro 46 
Figura 9 - Arquitetura de agentes para o processo de catalogação 48 
Figura 10 - Processo de catalogação automática 51 
Figura 11 - Recuperação de informações 54 
Figura 12 - Esquema de metadados 57 
Figura 13 – Diagrama de Casos de Uso 59 
Figura 14 - Divisão de componentes do GeoCatalog segundo o padrão 
MVC 68 
Figura 15 – Componentes da interface de usuário do GeoCatalog 69 
Figura 16 - Janela de área de trabalho 70 
Figura 17 - Estrutura do padrão de projeto Command 70 
Figura 18 - Padrão Command no GeoCatalog71 
Figura 19 - Estrutura do padrão de projeto Observer 72 
Figura 20 - Estrutura do padrão de projeto Factory Method 75 
Figura 21 – Fábrica de objetos do GeoCatalog 76 
Figura 22 - Infra-estrutura para criação de agentes 77 
Figura 23 – Framework de catalogação automática 83 
Figura 24 – Arquivo contendo a descrição de área geográfica do entorno 
do estádio do Maracanã (Rio de Janeiro) 89 
Figura 25 – Arquivo contendo a descrição de uma região vazia 90 
 
Figura 26 – Arquivo com erro de estrtura (falata o identificador) 90 
Figura 27 – Configuração de processo de catalogação no GeoCatalog 91 
Figura 28 – Metadados produzidos pela catalogação dos arquivos de 
dados anteriormente especificados 92 
Figura 29 – Metadados produzidos pela catalogação dos arquivos de 
dados anteriormente especificados (cont.) 93 
Figura 30 - Estratégia de teste 111 
 
 
 
 
Lista de tabelas 
Tabela 1 – Conjunto de metadados principal definidos pela ISO 19115 22 
Tabela 2 – Conjunto de metadados principal definidos pela ISO 19115 
(cont.) 23 
Tabela 3 – Elementos de metadado obrigatórios no padrão FGDC 24 
Tabela 4 – Elementos de metadado obrigatórios no padrão FGDC (cont.) 25 
Tabela 5 – Elementos de metadado obrigatórios no padrão FGDC (cont.) 26 
Tabela 6 – Conjunto de metadados mínimo 31 
Tabela 7 – Conjunto de metadados mínimo (cont.) 32 
Tabela 8 – Relacionamentos entre conceitos de um tesauro 34 
Tabela 9 – Alguns atributos selecionados do esquema conceitual da ISO 
19112 36 
Tabela 10 – Alguns atributos selecionados do ADL Gazetteer Content 
Standard 37 
 
 
 
1 
Introdução 
1.1. 
Motivação 
Dados geográficos estão disponíveis em uma grande variedade de 
repositórios, desde os computadores pessoais até repositórios sofisticados 
mantidos por organizações. Para ajudar na localização e acesso aos dados 
disponíveis, um tipo de solução frequentemente utilizado é organizar descrições 
dos dados em catálogos de metadados. 
 
Apesar da óbvia utilidade dos catálogos de metadados, o processo de 
gerá-los manualmente pode ser tedioso ou até impossível, dependendo da 
quantidade de metadados envolvida. Por isso, catálogos devem possuir um 
componente que automatiza o processo de geração e armazenamento de 
metadados tanto quanto possível. Tal componente pode obter metadados tanto 
por uma análise do recipiente onde se encontra armazenado o dado a ser 
catalogado, como dos dados já armazenados no próprio catálogo ou em outro 
repositório disponível. 
 
Em se tratando do domínio de sistemas de informação geográfica, temos 
duas valiosas ferramentas para abordar esse problema. Primeiro, vários 
sistemas de geo-referenciamento associam a cada entidade geográfica sua 
posição na superfície terrestre, o que funciona como um identificador universal 
para a entidade, ou pelo menos uma aproximação. Em segundo, muitos 
dicionários de nomes geográficos têm sido desenvolvidos e disponibilizados na 
Web nos últimos anos. 
 
É possível generalizar a solução do problema de localização e acesso a 
dados geográficos para outros tipos de dados. A diferença encontra-se nas 
técnicas utilizadas para a geração dos metadados. 
 
Introdução 13 
 
Neste trabalho propomos uma estratégia de geração e catalogação 
automática de metadados e uma arquitetura de software para implementá-la. A 
arquitetura foi concebida de maneira que gerasse como subproduto um 
framework para catalogação automática de dados de quaisquer naturezas. Não 
abordamos, no entanto, estratégias de geração de metadados para dados não 
geográficos. 
 
1.2. 
Trabalhos relacionados 
Para encaminhar o problema da catalogação de dados geográficos, 
inúmeras soluções têm sido propostas na comunidade científica. A seguir são 
brevemente apresentados alguns trabalhos relacionados que serviram e podem 
vir a servir, sobremaneira, como inspiração e fontes de informação para o 
desenvolvimento desta pesquisa. 
 
 
Figura 1 – Esquema do processo de identificação de áreas de alagamento ao redor de 
um rio 
 
Em The Role of Spatial Relations in Automating the Semantic Annotation of 
Geodata, Klien e Lutz [2] propõem um procedimento para descrição semi-
automática de dados geográficos com o propósito de identificar áreas de 
alagamento ao redor de rios. As descrições são produzidas a partir da 
identificação de relacionamentos topológicos, através de operações GIS, entre 
dados de referência e dados que se deseja descrever. Em seguida, uma 
Introdução 14 
 
ontologia geo-espacial é utilizada para classificar os dados e associá-los entre si 
através dos relacionamentos topológicos identificados. Por fim, técnicas de 
mineração de dados sobre a ontologia e seus dados são empregadas para 
identificar as áreas de interesse. Um esquema dessa abordagem pode ser visto 
na Figura 1. 
 
Em Semantic Annotation of Image Collections, Hollink et al. [4] apresentam 
uma ferramenta para registro de descrições e busca de dados em uma coleção 
de imagens de arte. As descrições são produzidas baseadas em um vocabulário 
restrito e definido por quatro dicionários: The Art and Architecture Thesaurus 
(AAT), WordNet, IconClass e The Union list of Artist Names (ULAN). O esquema 
de metadados é derivado do VRA 3.0, que é uma especialização do Dublin Core 
para aplicações de imagens de arte. 
 
A qualidade e precisão das descrições baseiam-se em duas técnicas. Na 
primeira, o domínio de cada atributo da imagem é limitado a um vocabulário 
especifico de um ou mais dos quatro dicionários, dessa forma padroniza-se o 
vocabulário empregado. Por exemplo, o nome do artista autor da obra é 
selecionado, pela ferramenta, do ULAN, a descrição da cena pode ser obtida no 
IconClass, etc. A segunda técnica presta-se a registrar sentenças de descrição 
da obra. É proposta uma sintaxe na forma: “agente – ação – objeto – recipiente”. 
Um exemplo dessa abordagem é um quadro de Chagal que poderia ser descrito 
pela seguinte sentença: “Chagal, Mark kiss wives”. Também aqui, é empregado 
um vocabulário controlado oferecido pelos dicionários. 
 
Para o mecanismo de busca é proposto o alinhamento dos dicionários pela 
implementação de relacionamentos entre termos. Três tipos de relacionamentos 
são definidos: equivalência, subclasse e domínio específico. Uma equivalência 
ocorre quando dois termos de dicionários diferentes são equivalentes. Uma 
subclasse é quando um termo em um dicionário define um conceito que pode ser 
visto como uma subclassificação de um conceito em outro dicionário. Por fim, o 
domínio específico mapeia conceitos que, embora diferentes, estão relacionados 
de alguma forma, por exemplo, técnicas de pintura e materiais utilizados. Essa 
técnica permite utilizar o vocabulário de todos os dicionários para formular-se 
consultas aos dados. 
 
Introdução 15 
 
Em The Role of Gazetteers in Geographic Knowledge Discovery on the 
Web, Ligiane Souza et al. [3] descrevem a arquitetura do dicionário geográfico 
LOCUS e seu mecanismo de consulta. Propõem que essa ferramenta seja 
utilizada em conjunto com motores de busca de páginas Web para permitir a 
seleção de dados com base em informações geográficas. Apresentam, também, 
uma estratégia para popular o dicionário a partir de páginas Web disponíveis. 
Um agente percorre várias URL’s procurando por informações que se encaixam 
em padrões previamente especificados pelo usuário e extraem deles fragmentos 
de informação para compor uma entrada do dicionário. Exemplificam o processo 
com a home page de um hotel da qual são extraídos o nome do hotel, seu 
endereço e telefones. O endereço capturado é, então, cruzado com informações 
prévias contidas no dicionário para agregar-lhe referências geográficas e 
finalmente cadastrado no dicionário. 
 
Em GeoReferencing the Semantic Web: ontology based markup of 
geographically referenced information, Hiramatsu et al. [5] apresentam duas 
ferramentas para tratamento de informaçõesgeo-referenciadas. A primeira 
permite ao usuário editar graficamente formas geométricas geo-referenciadas e 
produz um arquivo RDF contendo todos os relacionamentos topológicos entre 
elas. Para esse processo, Hiramatsu desenvolveu uma ontologia de descrição 
de relacionamentos topológicos e outra para classificação de locais geográficos, 
como estado, continente, país, etc. A segunda ferramenta seleciona, em um 
repositório de objetos, duas entradas e calcula o relacionamento topológico entre 
elas. Os objetos são previamente descritos em RDF, utilizando a ferramenta 
anterior, e armazenados no repositório. Serviços Web para consulta ao 
repositório e cálculo de relacionamento foram especialmente desenvolvidos. 
 
1.3. 
Organização do trabalho 
Esse trabalho está organizado da seguinte forma. O capítulo 2 apresenta 
as principais tecnologias utilizadas para catalogação automática de dados 
geográficos: catálogos de metadados e dicionários geográficos. Para catálogos, 
são indicados padrões internacionais de esquemas de dados e interfaces de 
serviços. Para dicionários, são descritos brevemente alguns dicionários 
existentes e feita uma análise mais detalhada para o ADL Gazetteer. O capítulo 
3 especifica um método para correlacionar dados geográficos com objetos de um 
Introdução 16 
 
dicionário de modo a obter uma descrição do dado. Apresenta, também, uma 
arquitetura de software para aplicar esse método na catalogação automática dos 
dados. O capítulo 4, como prova dos conceitos apresentados, especifica um 
projeto de software para catalogação automática de dados geográficos. Ao final 
do capítulo os conceitos de catalogação automática são generalizados em um 
framework que pode ser customizado para tratar outros tipos de dados. Por fim, 
o capítulo 5 apresenta algumas conclusões sobre esta dissertação e indica 
algumas linhas de pesquisa a serem desenvolvidas a partir do exposto aqui. 
 
 
2 
Dicionários e catálogos 
A crescente disseminação de informações geográficas digitais como, por 
exemplo, cartas geográficas e imagens de satélite, aliada à crescente oferta de 
sistemas de informações geográficas, requerem métodos para melhor 
entendimento de dados geográficos disponíveis. 
 
Dados geográficos digitais têm o propósito de representar o mundo real 
para análise por computador. São representações da realidade onde 
aproximações, simplificações e omissões podem ocorrer. Para garantir que um 
dado não será erroneamente utilizado as suposições e limitações envolvendo 
sua produção devem ser completamente documentadas. Metadados permitem 
que os produtores dos dados os descrevam apropriadamente, de modo que os 
usuários possam avaliar mais precisamente sua aplicabilidade e uso. 
 
Dados geográficos são, normalmente, utilizados por terceiros, ou seja, 
pessoas, organizações, etc. Documentação apropriada permite, àqueles não 
familiarizados com os dados, utilizá-los corretamente. 
 
Metadados, por definição, são dados sobre dados, isto é, dados que 
descrevem outros dados. Fornecem informações sobre o conteúdo de um dado, 
informações históricas, modo de obtenção do dado, sua qualidade, etc. 
 
Iremos assumir que dados geográficos terão ao menos uma escala e uma 
descrição da área da superfície terrestre coberta por ele. Essa descrição é 
frequentemente um retângulo ou um paralelogramo cujos vértices são definidos 
por coordenadas em um dado sistema de referência (CRS). A escala, a 
descrição da área coberta e o CRS utilizado são tratados como metadados dos 
dados. 
 
Catálogos de metadados geográficos contém metadados de dados 
geográficos [8]. São a estratégia mais simples de compartilhamento de dados 
geográficos entre aplicações. Tais catálogos oferecem serviços de consulta e 
Dicionários e catálogos 18 
 
manipulação de metadados, bem como, serviços de intermediação de 
recuperação de dados geográficos. Catálogos não armazenam o dado 
geográfico em si, mas possuem uma referência para o seu local de 
armazenamento. Assim, na recuperação de um dado, o serviço é redirecionado 
para o sistema de armazenamento do dado que o localiza e o retorna ao cliente. 
 
Para um compartilhamento efetivo de dados, não é suficiente a 
disponibilidade de descrições detalhadas. É necessário que o esquema de 
metadados e as interfaces de consulta e recuperação sejam internacionalmente 
padronizadas. 
 
Duas autoridades propõem esquemas de metadados para dados 
geográficos: US Federal Geographic Data Comittee (FGDC)1 e o International 
Organization of Standards (ISO)2. 
 
O FGDC é um comitê dos EUA que coordena o compartilhamento de 
dados geográficos através do portal Geodata3. Utiliza dados da National Spatial 
Data Infraestructure (NSDI) Clearing Network. Essa rede é uma coleção de 
catálogos de metadados conhecida como Clearinghouse Nodes. Cada nó é 
hospedado por uma organização diferente e contém metadados que descrevem 
dados sob sua área de responsabilidade. O FDGC está, atualmente, conduzindo 
o desenvolvimento de uma adaptação para os EUA do padrão ISO 19115:2003 
que veremos a seguir. 
 
A ISO é uma organização internacional, formada por representantes de 
diversas empresas e governos, para estabelecer padrões internacionais. Seu 
trabalho é, normalmente, conduzido por comitês técnicos. Cada membro da 
organização interessado em algum assunto para o qual foi estabelecido um 
comitê tem o direito de se fazer representar nele. Organizações internacionais, 
governamentais e não governamentais, em colaboração com a ISO, também 
tomam parte no trabalho. 
 
 
1 http://www.fgdc.gov 
2 http://www.iso.org 
3 http://www.geodata.com 
Dicionários e catálogos 19 
 
O comitê técnico ISO/TC211, Geographic Information/ Geomatic foi 
constituído para especificar um esquema de metadados para dados geográficos. 
Esse esquema foi apresentado na norma ISO 19115:2003. 
 
O Open Geospatial Consortium (OGC)4 é uma organização não lucrativa, 
internacional, que está conduzindo o desenvolvimento de padrões para serviços 
geo-espaciais e serviços baseados em localização. A OGC atua com governos, 
indústria e universidades para criar interfaces de programação abertas e 
extensíveis para Sistemas de Informações Geográficas (GIS). 
 
O OGC desenvolveu uma especificação, atualmente na versão 2.0, para a 
interface de serviços de catálogo que suporta a publicação e consulta de 
metadados para dados e serviços geográficos, bem como a localização e 
recuperação de recipientes de dados geográficos selecionados. 
 
2.1. 
Padrões de metadados 
2.1.1. 
Padrão ISO 19115 
A ISO 19115:2003 propõe um padrão de metadados para dados e serviços 
geográficos digitais. A norma define elementos de metadados (identificação, 
extensão, qualidade, esquema temporal e espacial, referência espacial e 
distribuição do dado) e fornece um esquema e uma terminologia de metadados 
comum. Ela faz referência a outras normas da série 191xx que devem ser 
consultadas para esclarecimentos mais específicos. 
 
Estruturas de dados básicas organizam os dados e seus relacionamentos 
com metadados. A Figura 2 apresenta o esquema dessas estruturas. 
 
Dados geográficos (DS_Dataset) são coleções de dados identificáveis. 
Podem representar abstrações menores do mundo real que, limitadas por 
alguma restrição como extensão espacial ou tipo de objeto, estão fisicamente 
localizados dentro de outra representação maior do mundo real ou outro dado. 
 
4 http://www.opengeospatial.com 
Dicionários e catálogos 20 
 
Dados podem representar tanto um único objeto geográfico, quanto um mapa, 
imagem geográfica, ou qualquer outro dado geográfico. 
 
Uma agregação de dados é uma abstração para agrupar conjuntos de 
dados geográficos relacionados. Pode ser especificada como um agrupamento 
de uso geral (DS_OtherAggregate), uma série de dados(DS_Series)5 ou como 
uma atividade especial (DS_Initiative). Por sua vez, uma série de dados pode ser 
do tipo plataforma de sensoriamento (DS_Platform), sensor (DS_Sensor) ou uma 
produção em série (DS_ProductionSeries). Uma agregação pode agrupar outras 
agregações e, assim formar uma hierarquia de dados. 
 
0..*
0..*
+propertyTypeMetadata
+propertyType
0..*
0..*
+featureAtributeMetadata
+featureAtribute
0..*
0..*
+featureTypeMetadata
+featureType
0..*
1..*
+describes
+has
0..*
1..*
+series
+seriesMetadata
0..*
0..*
+superset
+subSet
MultipleAggregation
0..* 1..*
+partOf +composedOf
Serializable
DS_Aggregate
Serializable
DS_DataSet
Serializable
MD_Metadata
DS_SeriesDS_OtherAggregate DS_Initiative
DS_SensorDS_Platform DS_ProductionSeries
GF_AtributeTypeGF_FeatureType
GF_PropertyType
DS_StereoMate
 
Figura 2 – Esquema de organização de dados geográficos definidos pela ISO 19115 
 
Os metadados são normalmente associados ao conjunto de dados, que 
deve possuir pelo menos uma estrutura de metadados. Ao tratar-se de séries de 
 
5 Um conjunto de dados do tipo série é uma coleção de dados que compartilham a mesma 
especificação de produto. 
Dicionários e catálogos 21 
 
dados a norma propõe que a agregação dos dados possua pelo menos uma 
estrutura de metadados. 
 
Os metadados estão distribuídos por várias estruturas de dados que 
organizam as informações segundo sua natureza. O esquema geral dessas 
estruturas pode ser visto na Figura 3. O conjunto principal de metadados 
(MD_Metadata) pode ser complementado com metadados sobre a 
representação espacial (MD_SpatialRepresentation) do dado geográfico, 
sistemas de geo-referenciamento (MD_ReferenceSystemInformation), qualidade 
do dado (MD_DataQuality), identificação do dado (MD_Identification), etc. 
 
0..*
+resourceConstraints
0..*
0..* +referenceSystemInfo
0..* +metadataExtensionInfo
0..1
+metadataMaintenance
0..*
+metadataConatraints
0..* +applicationSchemaInfo
0..* +portrayalCatalogueInfo
0..*
+contentInfo
0..1
+distributionInfo
0..
+dataQualityInfo
0..*
1..*
+identificationInfo
+resourceMaintenance
+spatialRepresentationInfo
Serializable
MD_Metadata
+featureType:GF_FeatureType
+atributeType:GF_AtributeType
+fileIdentifier:String
+language:String
+characterSet:String
+parentIdentifier:String
+hierarchyLevel:MD_ScopeCode
+hierarchyLevelName:String
+contact:CI_ResponsibleParty
+dateStamp:Date
+metadataStandardName:String
+metadataStandardVersion:String
+dataSetURI:String
+series:DS_Aggregate
-describes:DS_DataSet
MD_PortrayalCatalogueReference MD_Conatraints
MD_ApplicationSchemaInformation
MD_MaintenanceInformation
MD_Identification
MD_ReferenceSystem
DQ_DataQuality
MD_Distribution
MD_ContentInformation
MD_MetadaExtensionInformationSerializable
MD_SpatialRepresentation
 
Figura 3 – Esquema geral de metadados geográficos definidos pela ISO19115 
 
Existe um conjunto extenso de elementos de metadados, do qual somente 
um subconjunto é, normalmente, utilizado. Entretanto, é essencial que um 
conjunto básico, mínimo, de elementos de metadados seja utilizado para 
Dicionários e catálogos 22 
 
descrever um conjunto de dados. A Tabela 2 lista os elementos de metadados 
principais para identificar dados geográficos, tipicamente para propósitos de 
catalogação. Os elementos com o símbolo (M) são definidos como obrigatórios, 
aqueles com (O) são opcionais e aqueles com (C) são obrigatórios em algumas 
circunstâncias. Essa lista contém elementos para responder às seguintes 
questões: “Existe dado sobre um tópico específico (‘O que’)?”, “Sobre algum 
lugar (‘Onde’)?”, “Em alguma data ou período (‘Quando’)?” e “Qual o ponto de 
contato para obter mais informações sobre o dado ou obter cópia (‘Quem’)?”. 
 
Elemento de metadado Descrição 
MD_Metadata>MD_DataIdentification.citation
>CI_Citation.title 
Dataset title (M) 
MD_Metadata>MD_DataIdentification.spatial
RepresentationType 
Spatial representation type (O) 
MD_Metadata>MD_DataIdentification.citation
>CI_Citation.date 
Dataset reference date (M) 
MD_Metadata>MD_ReferenceSystem Reference system (O) 
MD_Metadata>MD_DataIdentification.pointOf
Contact>CI_ResponsibleParty 
Dataset responsible party (O) 
MD_Metadata>DQ_DataQuality.lineage>LI_Li
neage 
Lineage (O) 
MD_Metadata>MD_DataIdentification.extent>
EX_Extent>EX_GeographicExtent>EX_Geog
raphicBoundingBox or 
EX_GeographicDescription 
Geographic location of the 
dataset (by four coordinates or 
by geographic identifier) (C) 
MD_Metadata>MD_Distribution>MD_DigitalTr
ansferOption.onLine>CI_OnlineResource 
On-line resource (O) 
MD_Metadata>MD_DataIdentification.langua
ge 
Dataset language (M) 
MD_Metadata.fileIdentifier Metadata file identifier (O) 
MD_Metadata>MD_DataIdentification.charact
erSet 
Dataset character set (C) 
Tabela 1 – Conjunto de metadados principal definidos pela ISO 19115 
 
Dicionários e catálogos 23 
 
 
Elemento de metadado Descrição 
MD_Metadata.metadataStandardName Metadata standard name (O) 
MD_Metadata>MD_DataIdentification.topicCa
tegory 
Dataset topic category (M) 
MD_Metadata.metadataStandardVersion Metadata standard version (O) 
MD_Metadata>MD_DataIdentification.spatial
Resolution>MD_Resolution.equivalentScale 
or MD_Resolution.distance 
Spatial resolution of the dataset 
(O) 
MD_Metadata.language Metadata language (C) 
MD_Metadata>MD_DataIdentification.abstrac
t 
Abstract describing the dataset 
(M) 
MD_Metadata.characterSet Metadata character set (C) 
MD_Metadata>MD_Distribution>MD_Format.
nameandMD_Format.version 
Distribution format (O) 
MD_Metadata.contact>CI_ResponsibleParty Metadata point of contact (M) 
MD_Metadata>MD_DataIdentification.extent>
EX_Extent>EX_TemporalExtent or 
EX_VerticalExtent 
Additional extent information for 
the dataset (vertical and 
temporal) (O) 
MD_Metadata.dateStamp Metadata date stamp (M) 
Tabela 2 – Conjunto de metadados principal definidos pela ISO 19115 (cont.) 
 
A utilização de itens opcionais, além dos itens obrigatórios aumentará a 
interoperabilidade entre aplicações, permitindo aos usuários compreender os 
dados geográficos e os metadados relacionados livres de ambigüidades. 
Versões customizadas do conjunto de metadados devem incluir os últimos. 
 
2.1.2. 
Padrão FGDC 
O Content Standard for Digital Metadata (CSDGM) (FGDC 1998) 
estabelece um conjunto de terminologias e definições para a documentação de 
dados geográficos digitais, incluindo elementos de metadados para os seguintes 
tópicos: 
 
• Identificação: nome, desenvolvedor, área geográfica coberta, temas de 
informação incluídos, restrições de acesso. 
• Qualidade de dado: precisão de posição e de atributos, integridade, 
consistência, procedência. 
Dicionários e catálogos 24 
 
• Organização espacial do dado: modelo de dados espacial utilizado 
para codificar o dado geográfico, número de objetos geográficos, 
métodos além de coordenadas, utilizados para codificar localizações, 
tais como ruas e endereços. 
• Referências espaciais: codificação das localizações das coordenadas, 
projeção de mapa ou sistema grade utilizado, parâmetros para 
converter o dado para outro sistema de coordenadas. 
• Informação de entidade e atributos: informação geográfica (estradas, 
casas, elevação, temperatura, etc.) 
• Distribuição: agência de distribuição, formatos e mídias disponíveis, 
preço, distribuição on-line. 
• Referência dos metadados: timestamp e agência responsável pela 
compilação dos metadados. 
 
A Tabela 3, a Tabela 4 e a Tabela 5 mostram os elementos de metadados 
obrigatórios no padrão FGDC. 
 
XML Tag 
Elemento de Metadado 
Descrição 
Data Originator 
/metadata/idinfo/citation/citeinfo/origin/ 
O nome de uma organização ou 
de um indivíduo que gerou o 
dado 
Data Title 
/metadata/idinfo/citation/citeinfo/title/ 
O nome pelo qual o dado é 
conhecido 
Abstract 
/metadata/idinfo/descript/abstract/Um a breve resumo sobre o 
dado 
Progress 
/metadata/idinfo/status/progress 
O estado do dado 
West Bounding Coordinate 
/metadata/idinfo/spdom/bounding/westbc/ 
Coordenada mais a oeste da 
area coberta pelo dado expressa 
em longitude 
East Bounding Coordinate 
/metadata/idinfo/spdom/bounding/eastbc/ 
Coordenada mais a leste da 
área coberta pelo dado expressa 
em longitude 
North Bounding Coordinate 
/metadata/idinfo/spdom/bounding/northbc/ 
Coordenada mais ao norte da 
área coberta pelo dado expressa 
em latitude 
Tabela 3 – Elementos de metadado obrigatórios no padrão FGDC 
 
Dicionários e catálogos 25 
 
XML Tag 
Elemento de Metadado 
Descrição 
South Bounding Coordinate 
/metadata/idinfo/spdom/bounding/southbc/ 
Coordenada mais ao sul da área 
coberta pelo dado expressa em 
latitude 
Theme Keyword 
/metadata/idinfo/keywords/theme/themekey/ 
Palavra ou frase mais 
frequentemente utilizada para 
descrever o conteúdo do dado 
Metadata Contact Organization 
/metadata/metainfo/metc/cntinfo/cntorgp/cntorg/ 
O nome da organização para a 
qual o tipo de contato se aplica 
Metadata Contact Person 
/metadata/metainfo/metc/cntinfo/cntperp/cntper/ 
O nome do indivíduo para o qual 
o tipo de contato se aplica 
Metadata Contact Address City A cidade do endereço 
Metadata Contact Address State or Province 
/metadata/metainfo/metac/cntinfo/cntaddr/state/ 
O estado ou provincial do 
endereço 
Metadata Contact Address Postal Code 
/metadata/metainfo/metac/cntinfo/cntaddr/postal/ 
Código postal do endereço 
Publication Date 
/metadata/idinfo/citation/citeinfo/pubdate/ 
A data de liberação para 
publicação ou data de 
publicação 
Purpose 
/metadata/idinfo/descript/purpose/ 
Um resumo do propósito de 
geração do dado 
Time Period of Content: Single Date 
/metadata/idinfo/timeperd/timeinfo/sngdate/caldate 
Time Period of Content: Range of Dates, Beginning 
Date 
/metadata/idinfo/timeperd/timeinfo/rngdates/begdate/ 
Time Period of Content: Range of Dates, Ending 
Date 
/metadata/idinfo/timeperd/timeinfo/rngdates/enddate/ 
O período de tempo pelo qual o 
dado corresponde à referência 
Currentness Reference 
/metadata/idinfo/timeperd/current/ 
A base de tempo sob a qual o 
período de tempo é determinado 
Maintenance and Update Frequency 
/metadata/idinfo/status/update 
A freqüência com a qual 
alterações e adições são 
realizadas sobre o dado após 
sua primeira produção 
Tabela 4 – Elementos de metadado obrigatórios no padrão FGDC (cont.) 
 
Dicionários e catálogos 26 
 
XML Tag 
Elemento de Metadado 
Descrição 
Theme Keyword Thesaurus 
/metadata/idinfo/keywords/theme/themekt/ 
Referência a um tesauro 
formalmente registrado ou a 
uma autoridade similar 
Access Constraints 
/metadata/idinfo/accconst/ 
Restrições e pré-requisitos para 
acesso ao dado 
Use Constraints 
/metadata/idinfo/useconst/ 
Restrições e pré-requisitos 
legais para utilizar o dado 
Metadata Contact Address Type 
/metadata/metainfo/metc/cntinfo/cntaddr/addrtype/ 
Tipo de endereço 
Metadata Contact Phone number 
/metadata/metainfo/metc/cntinfo/cntvoice/ 
O número de telefone do 
contado 
Metadata Date Data de criação ou última 
atualização do dado 
Tabela 5 – Elementos de metadado obrigatórios no padrão FGDC (cont.) 
 
2.2. 
Interface de serviço de catálogos 
2.2.1. 
OpenGIS Services Framework 
As especificações OGC seguem uma arquitetura de referência, chamada 
OpenGIS Services Framework (OSF) [19], que identifica serviços, interface e 
protocolos de troca de dados que as aplicações podem utilizar. Resumidamente 
o OSF consiste no seguinte (Figura 4): 
 
• Padrões de codificação: padrões que especificam intercâmbio e 
armazenamento de dados geográficos, incluindo sistemas de 
referenciamento espacial e topologia e geometria de objetos geográficos. 
Incluem a Geography Markup Language (GML). 
 
• Interface de serviços: componentes que, no lado cliente, interagem com 
usuários e no lado servidor, interagem com a aplicação de catálogo e 
servidores de dados. 
 
Dicionários e catálogos 27 
 
• Serviços de registro: componentes que oferecem mecanismos para 
classificar, registrar, descrever, procurar, manter e acessar dados sobre 
recursos disponíveis. Incluem Web Registry Service (WRS). 
 
• Serviços de visualização: componentes que oferecem suporte específico 
para visualização de dados geográficos na forma de mapas, perspectivas 
tridimensionais de terreno, imagens anotadas, etc. Incluem o Web Map 
Service (WMS), o Coverage Portrayal Service (CPS) e o Style Management 
Service (SMS). 
 
• Serviços de dados: componentes que fornecem serviços básicos de acesso 
a dados geográficos. Incluem o Web Object Service (WOS), o Web Feature 
Service (WFS), o Sensor Collection Service (SCS), o Image Archive Service 
(IAS) e o Web Coverage Service (WCS). 
 
• Serviços de processamento: componentes que operam sobre dados 
geográficos e fornecem serviços especiais às aplicações. Incluem serviços 
de dicionários geográficos. 
 
 
Figura 4 – Componentes do OpenGIS Services Framework 
 
Dicionários e catálogos 28 
 
2.2.2. 
Geospatial Web Services Architecture 
O OSF foi desenvolvido independentemente da arquitetura de protocolo 
para Web services do W3C. Somente recentemente, uma série de propostas de 
especificações coletivamente chamada de OpenGIS Web Service 2 Initiative, 
definiram interfaces que seguiam os padrões W3C. A OGC também iniciou uma 
experiência para testar o conceito de Web Geo-espacial Semântica. 
 
A arquitetura OGC Web Services (OWS) é uma arquitetura orientada a 
serviço, com todos os componentes fornecendo um ou mais serviços para outro 
serviço ou clientes. Essa arquitetura é baseada nos conceitos fundamentais de 
provedor e consumidor de serviço dentro de um sistema computacional 
distribuído. Trata, também, de interações entre componentes definindo 
requisições se serviço (service requests), respostas de serviços (service 
responses) e exceções ocorridas nas requisições (service exceptions). 
 
De acordo com Whiteside [20], definimos: 
 
• um serviço é uma parte distinta de funcionalidade que é fornecida por 
uma entidade através de interfaces; 
• uma interface é um conjunto nomeado de operações que caracterizam 
o comportamento de uma entidade; 
• uma operação é uma especificação de uma transformação ou consulta 
que um objeto pode ser solicitado a executar. A operação tem um 
nome e listas de dados de entrada e saída. 
 
As OGC Web service interfaces utilizam padrões abertos e fornecem 
algumas poucas operações estáticas por serviço. Formatos de codificação de 
dados e linguagens padrões baseados em XML são utilizados em muitas 
transferências de dados entre clientes e servidores. Serviços fracamente 
organizados em quatro camadas, como mostra a Figura 5. 
 
A camada de serviços de gerenciamento de informação contém 
adaptadores que encapsulam fontes de dados. Os serviços nessa camada 
normalmente incluem algum processamento sobre os dados recuperados. Por 
exemplo, WMS, WCS, e WFS podem executar transformação de coordenadas e 
Dicionários e catálogos 29 
 
conversão de formatos. A camada de processamento de serviço contém serviços 
projetados para o processamento dos dados. A camada de serviços de aplicação 
contém serviços projetados para suportar clientes, especialmente “clientes 
magros” como Web browsers. 
 
 
Figura 5 – Camadas de serviços na arquitetura OWS 
 
2.2.3. 
OGC Catalogue Service 2.0 
A especificação OGC Catalogue Service (CS) 2.0 define interfaces que 
devem estar disponíveis em aplicações de catálogo de metadados sobre dados 
e serviços geográficos. Define operações para consulta e manutenção de 
metadados, localização e recuperação de recursos6 de dados e serviços e 
controle de sessão. Para auxiliar no processo de consulta dos metadados o CS 
traz, ainda, a especificação de uma linguagem de consulta de metadados 
baseada na sintaxe SQL.Toda a especificação é extensível de modo a 
acomodar heterogeneidade de ambientes e variedade de áreas de 
conhecimento. 
 
A especificação OGC CS apresenta um conjunto completo de operações 
de catálogo. Um serviço de catálogo para ser compatível com a OGC CS 2.0 
deve implementar ao menos um subconjunto das operações de interface. Assim 
 
6 Um recurso de um dado ou serviço geográfico é o local onde está armazenado o dado 
geográfico ou o ponto de acesso ao serviço. No caso de dados geográficos, o recurso é o recipiente 
do dado. 
Dicionários e catálogos 30 
 
um serviço de catálogo poderá implementar operações de consulta, outro poderá 
permitir consulta e atualização de metadados, outro ainda poderá implementar 
consultas em federações de catálogos e assim por diante. 
 
 
Figura 6 – Arquitetura interna de um serviço de catálogo 
 
A Figura 6 ilustra a arquitetura interna do serviço de catálogo proposto. 
Além da interface, o esquema apresenta os componentes internos do serviço. A 
consulta ou a manutenção de metadados se faz por meio das interfaces de 
catálogo OGC. Nesse caso o serviço de catálogo irá utilizar seu próprio 
repositório de metadados ou desviará a operação para outro serviço de catálogo, 
como em uma federação de serviços. A recuperação de recursos de informação 
ocorre quando o recurso não está disponível ao cliente via rede e pode ser feito 
por meio de interfaces OGC ou proprietárias. 
 
O conjunto completo das operações de um serviço de catálogo é: 
 
Interface de serviço de catálogo 
• getCapabilities � retorna metadados sobre o próprio serviço de 
catálogo. 
 
Interface de consulta 
• query � procura no conjunto de metadados disponível (local ou em 
outros serviços) aqueles que atendam à consulta definida pelo usuário 
e retorna ao cliente um conjunto contendo referências aos dados e 
serviços descritos pelos metadados selecionados. Opcionalmente, o 
conjunto resultado poderá conter também metadados selecionados na 
consulta. 
Dicionários e catálogos 31 
 
• present � retorna metadados selecionados referentes a dados 
previamente selecionados por uma consulta. 
• describeRecordType � retorna a definição de tipo para metadados. 
• getDomain � retorna valores válidos para algum metadado. 
 
Interface de transação 
• initialize � inicia uma transação. 
• close � encerra uma transação. 
• status � retorna o estado atual da transação. 
• cancel � termina uma transação previamente iniciada. 
 
Interface de gerenciamento 
• transaction � executa um conjunto especificado de operações de 
inclusão, alteração e atualização de metadados. 
• harvestRecords � carrega no repositório de metadados um conjunto 
de metadados de uma origem especificada. 
 
Interface de intermediação. 
• order � retorna um dado ou endereço de serviço identificado 
registrado no catálogo mas não acessível ao usuário. 
 
A especificação define, ainda, um conjunto de metadados mínimo como 
retorno de consultas para favorecer a interoperabilidade entre aplicações de 
diferentes características e ambientes. A Tabela 7 mostra a lista desses 
elementos utilizando a sintaxe Dublin Core (ISSO 15836). 
 
Elemento Descrição 
dc:title Um nome dado ao recurso 
dc:creator Uma entidade responsável por produzir o conteúdo do 
recurso 
dc:subject Um tópico do conteúdo do recurso É o lugar onde uma 
taxonomia de classificação poderia ser utilizada 
dct:abstract Um resumo do conteúdo do recurso 
dc:publisher Uma entidade responsável por tornar o recurso disponível 
Tabela 6 – Conjunto de metadados mínimo 
 
Dicionários e catálogos 32 
 
Elemento Descrição 
dc:contributor Uma entidade responsável por fazer contribuições ao 
conteúdo do recurso 
dc:date Data de criação ou atualização 
dc:type Natureza do conteúdo do recurso 
dc:format Manifestação física ou digital do recurso 
dc:identifier Identificador não ambíguo em um contexto 
dc:source Referência a um recurso de origem 
dc:language Língua do conteúdo do recurso 
dc:relation Referência a recursos relacionados 
dct:spatial Extensão espacial do conteúdo do recurso 
dc:rights Direitos sobre o conteúdo do recurso 
Tabela 7 – Conjunto de metadados mínimo (cont.) 
 
2.3. 
Dicionários geográficos 
2.3.1. 
Exemplos de dicionários geográficos 
O sistema mais comum para identificação de objetos geográficos é a 
atribuição de um nome para cada objeto. Essa forma de referência geográfica é 
normalmente utilizada por muitos dicionários geográficos. Eles contém listas de 
nomes de objetos geográficos, suas respectivas localizações geográficas e 
outras informações descritivas. 
 
Muitos Atlas possuem uma seção de dicionário geográfico para auxiliar na 
localização das páginas que fazem referência a um nome específico. Dicionários 
geográficos disponíveis na Web têm sido desenvolvidos para atender às 
necessidade de sistemas de informação. Eles armazenam nome, tipo, 
coordenadas que representam o objeto, e uma área administrativa que contém o 
objeto para cada objeto. Eles também oferecem serviços para manipulação dos 
dados armazenados. 
 
A seguir, são apresentadas descrições breves de alguns dicionários 
geográficos disponíveis na Web. 
 
Dicionários e catálogos 33 
 
• Getty Thesaurus of Geospatial Names (TGN)7 � É um vocabulário 
estruturado de abrangência mundial com cerca de 1,3 milhões de 
nomes e 892.000 objetos geográfico desenvolvido pelo Getty Research 
Institute. Tem o objetivo de auxiliar a criação de catálogos de arte e 
literatura de arquitetura. Para cada objeto, o TGN possui um 
identificador único, nome preferido, um conjunto de classificações 
obtido do Art Architecture Thesaurus (AAT), nomes alternativos, 
localização geográfica, entre outros. 
• U. S. Geographic Names Information System (GNIS)8 � Desenvolvido 
pelo U. S. Geological Survey (USGS) em cooperação com o U.S. 
Board on Geographic Names (BGN), contém informações sobre cerca 
de 2 milhões de objetos geográficos culturais e físicos, atuais e 
históricos dos Estados Unidos e de seus territórios. Alguns dos 
atributos mantidos são a localização geográfica, nome oficial, 
classificação segundo tipos definidos pelo BGN, entre outros. 
• GEOnet Names Server (GNS)9 � Desenvolvido pela National 
Geospatial-Intelligence Agency (NGA), possui cerca de 4 milhões de 
objetos geográficos com 5,5 milhões de nomes provenientes da NGA e 
BGN com abrangência mundial. Alguns atributos mantidos para cada 
objeto são identificador único, nome oficial, região, coordenadas 
geográficas classificação segundo o BGN, entre outros. 
• Alexandria Digital Library Gazetteer (ADL Gazetteer)10 � Desenvolvido 
no contexto do projeto Alexandria Digital Libray da Universidade da 
Califórnia em Santa Bárbara, possui cerca de 5.9 milhões de nomes 
provenientes do GNIS, GNS e outros dicionários, classificados segundo 
o ADL Feature Type Thesaurus (ADL FTT). Mantém para cada entrada 
um identificador único, nome oficial, nomes alternativos, classificação 
segundo o ADL FTT, coordenadas geográficas, descrição, entre outros. 
 
 
7 http://www.getty.edu/research/conducting_research/vocabularies/tgn 
8 http://nhd.usgs.gov/gnis.html 
9 http://164.214.2.53/gns/html 
10 http://www.alexandria.ucsb.edu/gazetteer/ 
Dicionários e catálogos 34 
 
2.3.2. 
Classificação de objetos geográficos 
Um objeto é uma abstração de um fenômeno do mundo real e um objeto 
geográfico é um objeto associado a uma localização sobre a superfície terrestre 
[18]. Um objeto geográfico representa um lugar, tal como a cidade do Rio de 
Janeiro. No jargão familiar da Ciência da Computação possui um atributo 
especial que descreve sua posição na superfície da terra, usando um dado 
sistema de geo-referenciamento (Coordinate Reference System CRS). São 
normalmente classificados por tipos como, por exemplo, baías, rios, cidades,etc. 
que por sua vez são organizados de acordo com alguma característica como, 
por exemplo, rios e riachos são objetos hidrográficos e cidades e estados são 
unidades administrativas. Dados geográficos como, por exemplo, mapas e 
imagens de sensoriamento remoto, normalmente se referem a um conjunto de 
objetos geográficos. 
 
Atributo Abrev. Descrição 
Scope Note SN Descrição do significado do conceito 
Use USE o termo que se segue ao símbolo é o termo 
preferido quando é utilizado como sinônimo ou 
quase-sinômino11 
Use For UF O termo que se segue ao símbolo não é o termo 
preferido quando é utilizado como sinônimo ou 
quase-sinômino 
Top Term TT O termo que se segue ao símbolo é o termo 
mais geral ao qual o termo anterior ao símbolo 
pertence 
Broader Term BT o termo que se segue ao símbolo é um termo de 
significado mais amplo do que o termo anterior 
ao símbolo 
Narrower Term NT o termo que se segue ao símbolo é um termo de 
significado mais específico do que o termo 
anterior ao símbolo 
Related Term RT o termo que se segue ao símbolo é um termo 
associado ao termo anterior ao símbolo mas não 
é um sinônimo ou quase-sinônimo 
Tabela 8 – Relacionamentos entre conceitos de um tesauro 
 
 
11 Um quase-sinônimo é um termo com significado semelhante porém mais abrangente, por 
exemplo, rio pode ser um quase-sinônimo de riacho. 
Dicionários e catálogos 35 
 
Um tesauro [9] é o vocabulário de uma linguagem controlada de indexação, 
formalmente organizada, de tal forma que os relacionamentos entre termos são 
feitos explícitos. São utilizados por dicionários geográficos para classificar suas 
entradas. 
 
Um tesauro usualmente fornece seis tipos de propriedades para cada 
termo (Tabela 8), cinco das quais expressam relacionamentos entre termos e 
uma é a descrição do significado do termo. 
 
O ADL Gazetteer Feature Type Thesaurus (FTT) é o resultado da mistura 
de vários vocabulários de classificação de vários dicionários geográficos. O FTT 
versão 2.0 de julho de 2002 contém perto de 200 termos e 3000 
relacionamentos. A fig mostra um fragmento desse tesauro ilustrando a 
hierarquia entre os termos. 
 
 
regions 
. agricultural 
regions 
. biogeographic 
regions 
. . barren lands 
. . deserts 
. . forests 
. . . petrified 
forests 
. . . rain 
forests 
. . . woods 
. . grasslands 
. . habitats 
. . jungles 
. . oases 
. . shrublands 
. . snow regions 
. . tundras 
. . wetlands 
 
regions (cont.) 
. climatic regions 
. coastal zones 
. economic regions 
. land regions 
. . continents 
. . islands 
. . . archipelagos 
. . subcontinents 
. linguistic 
regions 
. map regions 
. . chart regions 
. . map quadrangle 
regions 
. . UTM zones 
 
Figura 7 – Fragmento da hierarquia de termos do ADL Gazetteer Feature Type 
Thesaurus 
 
2.3.3. 
Padrões para dicionários geográficos 
Da mesma forma que catálogos utilizam especificações padrões para 
permitir interoperabilidade de aplicações e compartilhamento de dados, 
Dicionários e catálogos 36 
 
dicionários também se beneficiam de padrões internacionalmente aceitos. O 
comitê técnico ISO/TC211, Geographic Information/ Geomatic publicou um 
padrão para dicionários geográficos, o ISO 19112:2003 Spatial Referencing by 
Geospatial Identifiers, que define um esquema conceitual de dados (Tabela 9) e 
linhas gerais para a descrição de sistemas de referenciamento indireto. 
 
O ADL Gazetteer Content Standard suporta descrições de dados 
geográficos bastante ricas que vão muito além de alguns dicionários geográficos 
tradicionais. A Tabela 10 contém as principais seções do ADL Standard, que 
pode ser subdividido em subseções para codificar informações mais 
detalhadamente. Por exemplo, streetAddressSection é dividido em 
streetAddress, city, stateProvince, postalCode e country. 
 
Attribute Comment 
geospatial identifier a unique identifier for the feature taken from a given 
identifier space 
alternative identifiers one or more alternative identifiers 
name the preferred name for the feature 
type the type of the feature, typically taken from a feature 
type thesaurus 
description a description of the feature 
position coordinates of a representative point of the feature 
temporal extent a description of the temporal extension of the feature 
geospatial extent a description of the geospatial extension of the feature 
administrator organization responsible for maintaining the feature’s 
name 
parent identifier of the parent feature of which the entry is a 
subdivision 
child identifiers of the features that the entry is a parent 
Tabela 9 – Alguns atributos selecionados do esquema conceitual da ISO 19112 
Dicionários e catálogos 37 
 
 
Attribute Comment 
featureID unique identifier for the feature 
featureName the names for the feature 
classSection the primary type of the feature 
codeSectionType the code associated with the feature 
spatialLocation the map location of the feature 
streetAddressSection the street address of the feature 
relatedFeature relationships of the feature with other features 
description a short narrative description of the feature 
featureData data about the feature, such as population or 
elevation 
featureLink website which provides information on the 
features 
supplementalNote note explaining unusual circumstance of the 
feature 
entryMetadata documents about entry and modification dates 
Tabela 10 – Alguns atributos selecionados do ADL Gazetteer Content Standard 
 
O Open GIS Consortium desenvolveu um padrão para serviços de 
dicionários geográficos [22] para acesso distribuído. A interface de serviço 
especifica quatro operações que podem ser solicitadas por um cliente e 
executadas pelo serviço de dicionário. 
 
• GetCapabilities: permite que um cliente recupere metadados sobre o 
service de dicionário sendo oferecido. 
 
• DescribeFeatureType: permite que um cliente obtenha um esquema 
XML descrevendo um objeto geográfico. 
 
• GetFeature: permite que um cliente obtenha instâncias de objetos 
geográficos. Além disso, o cliente pode escolher os atributos a 
recuperar e condições de seleção de objetos. 
 
• GetGMLObject: permite ao cliente obter instâncias através de 
referências aos identificadores de objetos geográficos. 
 
Dicionários e catálogos 38 
 
2.3.4. 
Alexandria Digital Library Gazetteer 
A Alexandria Digital Library (ADL) é uma biblioteca digital distribuída 
contendo coleções de materiais geo-referenciados. O projeto visa modelar, 
prototipar e avaliar arquiteturas de bibliotecas digitais aplicações de dicionários 
geográficos, aplicações de educação e componentes de software. 
 
O ADL Gazetteer é um dicionário geográfico, disponível via Web, que 
utiliza a ADL como infra-estrutura. Oferece uma interface HTTP/XML para ser 
utilizada em aplicações geográficas. 
 
As entradas desse dicionário são classificadas segundo três tesauros 
independentes: 
 
• ADL Feature Type Thesaurus (ADL FTT) – É uma coleção de termos 
que classifica o tipo do objeto descrito por uma entrada do 
ADLGazetteer. Todas as entradas são classificados segundo o FTT. 
Nele existem termos hierarquicamente definidos como, por exemplo, 
“canais” e “estruturas hidrográficas”. O último é um subtipo do primeiro. 
Todas as entradas classificadas como “canais” são, também, uma 
“estrutura hidrográfica”. Diz-se que “estrutura hidrográfica” é o Broader 
term de “canal”. Entretanto, pode haver mais de uma hierarquia de 
conceitos admitida por um tipo. Tomemos o exemplo anterior do canal, 
segundo a visão apresentada um “canal” é um tipo de “estrutura 
hidrográfica”, mas poderíamos ainda pensar em uma outra 
classificação de objeto como “dispositivos de transporte” para a qual 
um “canal” estaria hierarquicamente subordinado, como uma espécie 
de dispositivo. Para acomodar esse conceito, uma vez que só é 
possível definir uma hierarquiano modelo do FTT, existem os Related 
terms. São todos os tipos que por alguma semântica se relacionam 
com o primeiro. Diz-se, então, que “dispositivos de transporte” é um 
“Related term” de “canal”. 
• Gazetteer type terms of U.S. Geological Survey – apenas algumas 
entradas são classificadas segundo esse dicionário 
• U.S. Geospatial-Intelligence – apenas algumas entradas são 
classificadas segundo esse dicionário 
Dicionários e catálogos 39 
 
 
Cada entrada do ADL Gazetteer descreve único lugar geográfico 
conceitual. Seus atributos e cardinalidades, são: 
 
• um identificador � String que identifica univocamente a entrada. É 
único dentro do dicionário, mas não universalmente único. 
• Zero ou mais códigos � Identifica o lugar em um esquema de código 
específico, namespace ou sistema. 
• um status de lugar � Status da existência do lugar, pode ser: former (o 
lugar não existe mais), current (o lugar existe) ou proposed (o lugar não 
existe, mas sua criação foi antecipada). 
• um nome de exibição 
• um ou mais nomes 
• coordenadas da diagonal de um retângulo de contorno 
• um ou mais footprints � É uma aproximação, expressa em 
coordenadas de latitude e longitude, de uma região da superfície 
terrestre, coberta pelo lugar. Não precisa ser contínuo. 
• zero ou mais classes � Classifica o lugar conforme o dicionário 
utilizado. 
• Zero ou mais relacionamentos 
 
Os atributos nome, footprint e classes são qualificados por quatro 
descritores: 
 
• primary � indica que o valor do atributo é oficial ou preferido 
• former � indica que o valor do atributo não existe mais 
• current � indica que o valor do atributo existe 
• proposed � indica que o valor do atributo ainda não existe, mas foi 
criado antecipadamente. 
 
As seguintes condições devem existir para cada entrada do dicionário: 
 
• Exatamente um nome precisa ser marcado como primary. 
• Exatamente um footprint precisa ser marcado como primary. 
• Se houver classificação, ao menos uma delas precisa ser marcada 
como primary. 
Dicionários e catálogos 40 
 
 
Os nomes geográficos do dicionário podem ser consultados através de um 
serviço Web utilizando-se o protocolo ADL Gazetteer Service Protocol, versão 
1.212. Trata-se de um protocolo leve, sem estado, baseado em XML sobre HTTP. 
O protocolo suporta consulta ao dicionário (por nome de lugar, por área 
geográfica, por classe de objeto, por relacionamento entre nomes de lugares), 
recuperação de relatório padrão de nomes de lugares e download das entradas 
do dicionário. 
 
Os serviços oferecidos são: 
 
• get-capabilities � retorna um resumo de todos os recursos do 
dicionário: os tipos de serviços e consultas, o dicionário que o dicionário 
usa, etc. 
• query � retorna um relatório (padrão ou estendido) das entradas do 
dicionário selecionadas por uma consulta expressa em GQL (Gazetteer 
Query Language). 
• download � semelhante à query na seleção do tipo de relatório mas 
retorna todas as entradas do dicionário. 
 
Esses serviços são invocados enviando-se requisições HTTP POST, 
contento a descrição do serviço desejado codificada em XML, para uma URL 
que representa o ponto de acesso comum a todos os serviços. O Apêndice A 
apresenta o esquema XML utilizado na comunicação com dicionário pela Web. 
 
Uma consulta freqüente ao dicionário seria: “Quais os objetos contidos em 
uma região geográfica específica?”. O fragmento de código a seguir apresenta 
uma consulta ao dicionário, de acordo com o protocolo, buscando todos os 
objetos contidos na região geográfica de forma retangular cujas coordenadas da 
diagonal do retângulo são (latitude = -22,892, longitude = -43,26) e (latitude = 
-22,932, longitude = -43,203). 
 
 
12 http://www.alexandria.ucsb.edu/gazetteer/protocol 
Dicionários e catálogos 41 
 
<?xml version="1.0" encoding="UTF-8"?> 
<schema xmlns="http://www.w3.org/2001/XMLSchema" /> 
<gazetteer-service 
xmlns="http://www.alexandria.ucsb.edu/gazetteer" 
 xmlns:gml="http://www.opengis.net/gml" version="1 .2"> 
 <query-request> 
 <gazetteer-query> 
 <footprint-query operator="within"> 
 <gml:Box> 
 <gml:coordinates> 
 -43.26,-22.891,-43.203,-22.932 
 </gml:coordinates> 
 </gml:Box> 
 </footprint-query> 
 </gazetteer-query> 
 <report-format>standard</report-format> 
 </query-request> 
</gazetteer-service> 
 
 
 
 
3 
Arquitetura de software para catalogação automática de 
dados geográficos 
Este capítulo apresenta uma arquitetura de software para catalogação 
automática de dados geográficos. A seção 3.1 apresenta uma estratégia para 
geração automática de metadados. A seção 3.3 apresenta os requisitos de uma 
arquitetura de software, baseada em agentes, para catalogação automática. A 
seção 3.4 apresenta o detalhamento dos componentes responsáveis pela 
geração da descrição. Por fim, a seção 3.5 apresenta o esquema de metadados 
utilizado para armazenamento de metadados e os componentes responsáveis 
por distribuir essa descrição pelo esquema. 
 
3.1. 
Estratégia de catalogação 
Propomos uma estratégia que combina um dicionário geográfico com um 
catálogo de metadados. Mostraremos como utilizar o tesauro do dicionário para 
classificar dados geográficos e como utilizar entradas do dicionário para 
descrever dados geográficos. 
 
Seja GA um dicionário geográfico e assuma que cada entrada E em GA, 
representando um objeto geográfico F, tem uma representação geo-refernciada 
geo(E) de uma localização de F e um type(E) para E, cujo valor é um termo 
extraído do tesauro ℑ[GA]. 
 
Seja MC um catálogo de metadados geográficos e assuma que cada 
entrada C em MC, representando um dado geográfico R, possui uma 
representação geo-referenciada geo(C) da área coberta por R e uma descrição 
scale(C) da escala de geo(C). Argumentamos que: 
 
Q1. ℑ[GA] pode ser estendido para prover também uma classificação 
para entradas de catálogo, isto é, para prover um type(C) para C. 
Arquitetura de software para catalogação automática de dados geográficos 43 
 
 
Q2. Uma descrição desc(C) de C pode ser gerada relacionando-se C às 
entradas do dicionário de maneira adequada. 
 
Intuitivamente, assumindo que um dado geográfico R cobre uma área na 
superfície terrestre, podemos descrever R por uma coleção de objetos que 
ocorrem nessa área. Utilizamos somente os objetos cujos tipos são consistentes 
com a interpretação pretendida de R ou cujas extensões são menores do que a 
escala de R. Além disso, o tipo do objeto deve fornecer suficiente indicação se a 
escala do objeto é compatível com a escala de R. 
 
Por exemplo, seja R um dado. Se R deve ser interpretado como um mapa 
político, então R deve ser relacionado com cidades e divisões políticas de uma 
dada área. Dependendo da escala do mapa, somente cidades acima de 
determinada população devem, na verdade, ser incluídas. Se R deve ser 
interpretado como um mapa hidrográfico relacionamo-no com rios e riachos. 
Mais ainda, se o mapa possui uma grande escala, utilizamos somente os rios e 
suprimimos os riachos. Como um terceiro exemplo, se R é uma imagem de 
satélite de uma dada área, então R potencialmente representa todos os objetos 
que ocorrem na área. Entretanto, objetos cujas extensões são menores do que a 
resolução de R, não devem ser relacionados a R. 
 
Em geral, sugerimos: 
 
a. classificar os dados geográficos também utilizando ℑ[GA]; 
b. indicar a escala que é compatível com cada termo em ℑ[GA]. Isso é 
formalizado com uma função s: ℑ[GA] � R* que mapeia cada termo 
de ℑ[GA] em um número Real não negativo. Para cada t ∈ℑ[GA], se 
s(t)>0, interpretamos s(t)=n como indicação de que todos os objetos 
do tipo t são compatíveis com a escala 1:n, ou menores (no sentido de 
que podem ser representadas naquela escala). Se s(t)=0, 
interpretamos s(t) como indicaçãode que t pode ser utilizada para 
classificar dados geográficos. 
Arquitetura de software para catalogação automática de dados geográficos 44 
 
 
Como um exemplo, considere o fragmento do ADL Feature Type 
Thesaurus mostrado na Figura 8 (a). Podemos então definir: 
 
• S(“creek”)=10.000 para indicar que objetos do tipo “creek” devem 
somente ser representados em escalas 1:10.000 ou menores; 
• S(“hydrographic features”)=0 para indicar que o termo 
“hydrographic features” podem ser utilizados para classificar 
dados. 
 
Em certas situações, a função s: ℑ[GA] � R* pode ser parcialmente 
calculada a partir de outros atributos de termos do tesauro do dicionário. Por 
exemplo, se cada termo t sob “streams” possui um atributo w indicando a 
largura do rio que é classificado como t, então o valor w para t pode ser 
utilizado para definir s(t). 
 
Para a questão Q2, primeiro definimos que uma entrada E do dicionário, 
representando um objeto geográfico F, é relevante para uma entrada C do 
catálogo, representando um dado R, se e somente se: 
 
• geo(E) e geo(C) são relacionadas por um dos relacionamentos 
topológicos usuais – toca, dentro, cruza, superpõe-se [1]; 
• Type(E) é compatível com scale(C). 
 
Definimos então desc(C) como o conjunto de pares (E,r) tais que E é 
relevante à C e geo(E) e geo(C) são relacionados por um relacionamento 
topológico r. 
 
Alguns dicionários geográficos também incluem o conceito de lugar 
conhecido, tal como uma atração turística, uma importante cidade, etc. [13]. Se o 
dicionário adotado implementa esse conceito, podemos expandir a noção 
relevância previamente definida para incluir lugares famosos como uma 
informação importante. Por exemplo, considere uma imagem de satélite da 
cidade de Friburgo, a qual se situa a noroeste da cidade do Rio de Janeiro. 
Arquitetura de software para catalogação automática de dados geográficos 45 
 
Então, em vez de somente associar a imagem com a cidade de Friburgo, 
podemos também indicar que a imagem cobre uma área a noroeste da cidade 
do Rio de Janeiro, que é um lugar conhecido. Note que ao relacionarmos lugares 
conhecidos com recursos de informação, adotamos relacionamentos direcionais 
– a norte de, a sul de, a leste de, etc. – ou relacionamentos qualitativos, tal como 
perto. 
 
Como um exemplo da geração de desc(C), suponha que adotamos o ADL 
Gazetteer e o ADL Feature Type Thesaurus. Considere um fragmento de 
imagem da cidade do Rio de Janeiro, retirada do website Brasil visto do espaço13 
[14], mostrado na Figura 8. 
 
Essa imagem será processada da seguinte forma: 
 
1. Extrair os parâmetros de geo-referenciamento do dado geográfico. 
Nesse caso, o fragmento de imagem é consistente com a escala 
1:25.000 e tem como retângulo de borda definido pelo par de 
coordenadas ((43o 15’ W, 22o 52’ 30’’ S), (43o 07’ 30’’ W, 23o S)). 
2. Assuma que o usuário escolha relacionar o fragmento de imagem com 
“hydrographic features”, um termo do ADL FTT que, em nosso 
exemplo, pode ser usado para classificar dados geográficos. 
3. Como as entradas do ADL Gazetteer não têm nenhuma informação de 
escala, ela será ignorada. 
4. Acesse o ADL Gazetteer, usando os parâmetros extraídos no passo 1 e 
os termos ADL FTT sob “hydrographic features”, selecionado no 
passo 2. A consulta retornará nove entradas, das quais as três 
primeiras são: 
4.1. Objeto (“Rodrigo de Freitas, Lagoa – Brazil”, “lakes”, “within”) 
4.2. Objeto (“Comprido, Rio – Brazil”, “streams”, “within”) 
4.3. Objeto (“Maracanã, Rio – Brazil, “streams”, “within”) 
5. Armazene o resultado da consulta como uma descrição do dado, isto é, 
como uma lista de pares (N,r), onde N é o objeto geográfico 
recuperado no passo 4 e r é o relacionamento topológico entre a 
imagem e N (nesse exemplo r é “within”). 
 
13 http://www.cdbrasil.cnpm.embrapa.br/ 
Arquitetura de software para catalogação automática de dados geográficos 46 
 
 
Esse breve exemplo ilustra algumas das idéias básicas desse trabalho. 
Primeiro, o uso do dicionário para também classificar dados geográficos, evita 
adotar um segundo esquema de classificação, tal como, ISO19115 Topic 
Categories [10]. Entretanto, requer a definição de uma função de compatibilidade 
s: ℑ[GA] � R*. 
 
 
 
Figura 8 – Um fragmento do ADL Feature Type Thesaurus e uma imagem da cidade do 
Rio de Janeiro 
 
Segundo, uma descrição útil de um dado geográfico R pode ser criada 
como uma lista de pares (N,r), onde N é um objeto geográfico e r é o 
relacionamento topológico entre R e N, obtido pela consulta ao dicionário. Além 
disso, a lista contém somente objetos cujos tipos são compatíveis com a escala 
de R. 
 
3.2. 
Requisitos da arquitetura 
Para compreendermos o processo de catalogação automática e 
identificarmos os requisitos de software necessários, consideremos a situação 
de uma empresa que recebe, periodicamente, imagens de satélite e deseja 
armazená-las de modo a poder selecionar aquelas que são adequadas a um 
projeto. 
 
Freqüentemente, imagens de satélite são gravadas em arquivos utilizando-
se padrões de compactação como, por exemplo, o GeoTIFF que permitem 
c 
b 
a 
hydrogra phic features 
. . . 
. lakes 
. seas 
. . oceans 
. . . ocean currents 
. . . ocean regions 
. streams 
. . rivers 
. . . bends (river) 
. . . rapids 
. . . waterfalls 
. . springs 
(hydrographic) 
. thermal features 
Arquitetura de software para catalogação automática de dados geográficos 47 
 
anexar aos dados da imagem, contidos no arquivo, as coordenadas geográficas 
da região na superfície terrestre coberta pela imagem. 
 
Tais imagens podem ser obtidas de várias fontes e serem utilizadas em 
vários setores da empresa. Por exemplo, poder-se-ia obter imagens da 
EMBRAPA14 e do LANDSAT15 para um departamento que desejasse analisar 
recursos hidrográficos. Outro departamento, no entanto, poderia estar 
interessado nos municípios cobertos pelas mesmas imagens. 
 
Podemos, então, conforme a seção 3.1, definir um algoritmo para 
catalogação automática de dados geográficos: 
 
catalogação de dados geográficos 
enquanto (interrupção não for solicitada) faça 
Obter novo dado; 
se houver novo dado então 
Extrair metadados do seu conteúdo; 
Criar descrição parcial; 
Classificar dado; 
para cada dicionário geográfico configurado faça 
Buscar metadados relacionados com o dado; 
Eliminar metadados incompatíveis com escala e classificação 
do dado; 
Acrescentar metadados à descrição; 
se houverem metadados provenientes dos dicionários então 
Catalogar dado; 
 
Para implementar o algoritmo propomos dois agentes de software. O 
primeiro deles, o agente rastreador (CrawlingAgent), é responsável por 
inspecionar repositórios de dados, buscando novos dados a serem catalogados. 
Uma vez encontrados, o agente extrai metadados do seu recipiente16 e, em 
seguida, envia uma mensagem a outro agente, o “agente catalogador”, 
 
14 http://www.cdbrasil.cnpm.embrapa.br 
15 http://landsat.gsfc.nasa.gov 
16 Recipiente de um dado é a sua unidade elementar de armazenamento. Dados são 
freqüentemente armazenados em arquivos ou registros de bancos de dados. 
Arquitetura de software para catalogação automática de dados geográficos 48 
 
solicitando a catalogação da imagem. Não limitamos o “agente rastreador” a 
somente uma instância. Podem ocorrer situações em que várias instâncias 
independentes estejam ativas para garantir robustez e flexibilidade ao processo. 
Poderíamos, por exemplo, configurar um agente para buscar as imagens 
geradas pela EMBRAPA e outro para as do LANDSAT. 
 
O agente catalogador (CataloguingAgent) é o agente responsável por 
buscar, em um dicionário geográfico, objetos relacionados ao dado geográfico e, 
caso seja bem sucedido, armazená-los no catálogo. Periodicamente, o agente 
verifica, em um canalde comunicação comum, se existem novos dados a serem 
catalogados. Em caso afirmativo, recupera suas coordenadas geográficas e 
extrai de dicionários objetos relacionados às coordenadas. Com base nos dados 
dos dicionários, cria descrições dos dados e as armazena no catálogo. 
Esperamos que um processo de catalogação manipule somente um catálogo, 
portanto, sugerimos somente uma instância do “agente catalogador”. 
 
2.3: filterDescription(featureList)
2:*[for each gazetteer]
2.2: featureList:=getDescription(datasetDesc)
2.1: gazetteer:=get(index)
3: put(datasetDesc)
1.4:*[for each dataset]
1:*[for each repository] 1.1: repository:=get(index)
1.3: datasetDesc:=getDescription(datasetId)
1.2: datasetIdList:=listURI
1.5: catalog(datasetDesc)
:CrawlingAgent :CataloguingAgent
:Gazetteer
:Catalog
:Repository
gazetteers:Listrepositories:List
Assinchronous communication
 
Figura 9 - Arquitetura de agentes para o processo de catalogação 
 
Outros catálogos podem ser alimentados utilizando-se outros processos de 
catalogação, cada qual com seu próprio conjunto de agentes e configurações 
específicas. Um esquema dessa arquitetura é mostrado na Figura 9. 
 
Os repositórios (Repository), na figura, são os locais nos quais se 
encontram novos recipientes de dados geográficos. Note que não está 
Arquitetura de software para catalogação automática de dados geográficos 49 
 
representado no esquema o processo para captura desses dados do provedor. 
Por exemplo, se a EMBRAPA disponibiliza as imagens em algum endereço na 
internet e os arquivos são transferidos para o cliente, esse procedimento não 
está representado. O local em questão é o local final dos arquivos de imagens 
que os agentes irão consultar. 
 
Os dicionários (Dictionary) são os dicionários geográficos dos quais serão 
obtidos objetos geográficos relacionados ao dado. 
 
Pelo exposto até aqui podemos listar os seguintes requisitos funcionais 
para um software de catalogação automática: 
 
1. Permitir a criação de processos de catalogação informando: 
repositórios, dicionários, catálogo e um identificador para o processo de 
catalogação; 
2. Permitir a alteração das configurações dos processos de catalogação; 
3. Permitir remover configurações de processos de catalogação; 
4. Permitir armazenar as configurações dos processos de catalogação; 
5. Permitir iniciar e interromper cada processo independentemente; 
6. Exibir uma lista de falhas ocorridas nos processos de catalogação; 
7. Exibir o estado dos processos de catalogação; 
 
Propomos, ainda, alguns requisitos não funcionais para flexibilizar o 
processo como um todo e garantir o bom desempenho dos equipamentos 
hospedeiros dos agentes. 
 
Uma atenção especial deve ser dedicada à questão do desempenho. A 
natureza da operação de catalogação pode produzir grande carga de 
processamento dos agentes. Para minimizar os efeitos do consumo excessivo 
de recursos do ambiente computacional os agentes devem ser capazes de 
interromper seu processamento por alguns instantes em intervalos regulares de 
tempo ou mesmo identificar períodos de ociosidade dos recursos e aproveitá-los. 
 
Um formato de imagem frequentemente utilizado na geração de imagens 
geográficas é o GeoTIFF, como já mencionado. Entretanto, podem ocorrer 
situações onde outros formatos para codificação de dados geográficos são 
Arquitetura de software para catalogação automática de dados geográficos 50 
 
utilizados, por exemplo o ESRI Shapefile. É desejável que o software possa ser 
facilmente adaptado a novos padrões de arquivos contendo dados geográficos. 
 
Na arquitetura apresentada anteriormente os Agentes Rastreadores têm o 
papel de procurar por novos dados em repositórios previamente especificados 
no processo de catalogação. Tais repositórios podem estar disponíveis sob 
vários protocolos. Poderiam ser diretórios no sistema de arquivos, sites FTP, 
URL’s acessadas através de conexões HTTP, ou outro tipo de repositório 
qualquer. Deseja-se flexibilizar os tipos de repositórios com os quais o agente 
pode se comunicar. 
 
Finalmente, analogamente aos repositórios de dados, o software deveria 
poder se adaptar a diferentes dicionários, com protocolos de comunicação 
diferentes. 
 
Note que esses três últimos requisitos não se tratam de adaptação 
dinâmica, mas sim de conferir ao software uma arquitetura flexível o suficiente 
de modo que possa ser facilmente modificado para se compatibilizar com os 
novos componentes externos. 
 
3.3. 
Processo de catalogação 
A Figura 10 apresenta um esquema dos componentes responsáveis pelo 
processo de catalogação. 
 
Podemos definir, de acordo com a seção 3.2, que um processo de 
catalogação (CataloguingProcess) possui as seguintes propriedades: nome 
(name), estado (state), coleção de repositórios (repositories), coleção de 
dicionários (dictionaries), catálogo (catalog) e repositório de falhas (fails). 
 
Ao iniciar-se a execução de um processo de catalogação (operação start( 
)), os agentes são criados e configurados. Os repositórios podem ser distribuídos 
entre vários agentes catalogadores, no entanto, cada agente catalogador deve 
consultar todos os dicionários. A cooperação entre eles ocorre na concorrência 
para catalogar os novos dados geográficos identificados. Para podermos 
distribuir a consulta aos dicionários entre vários agentes seria preciso definir 
Arquitetura de software para catalogação automática de dados geográficos 51 
 
regras de interação entre os catalogadores de modo a garantir que, para cada 
novo dado todos os dicionários seriam consultados e que seria possível 
identificar quando isso teria ocorrido, permitindo, assim, a catalogação do dado. 
Essa coordenação, no entanto, não será tratada nesse trabalho. 
 
Ao menos um agente de cada tipo deve ser criado, mas a arquitetura não 
limita o número máximo. Há que se estudar cada situação para optar por um 
conjunto adequado de agentes e implementar o algoritmo apropriado. No 
protótipo foi implementado apenas um agente de cada tipo. 
 
+fails
+catalog
+tempCatalog
1..*
query
2..*
+fails
+catalog
+tempCatalog
0..*
contains
+commHandler
1..*
searches
SubjectImpl
Serializable
CataloguingProcess
+start:void
+stop:void
+reportError:void
 dictionaries:String[][]
 catalog:String
 fails:String
 repositories:String[]
 name:String
 state:String
DescriptionSource
<<abstract>>
Dictionary
+getDescription:DatasetDescription
CataloguingAgent
<<abstract>>
interface
Catalog
+put:DatasetDescription
+get:DatasetDescription
CrawlingAgent
Runnable
<<abstract>>
Agent
+sendMessage:void
+readMessage:Message
+agentBehavior:void
DescriptionSource
<<abstract>>
Repository
+listURI:String[]
+getDescription:DatasetDescription
LocalComm
<<abstract>>
interface
Comm
MsgChannel
<<abstract>>
Message
NewDataset
 
Figura 10 - Processo de catalogação automática 
 
Um catálogo temporário comum a todos os agentes serve para identificar 
os dados que ainda não foram catalogados, mas já foram carregados, evitando-
se o seu reprocessamento. 
 
Cada agente rastreador solicita em intervalos regulares de tempo a lista 
dos identificadores de recipientes de dados existentes nos repositórios 
(operação Repository->listURI( )). Cada recipiente contém um dado geográfico a 
ser descrito e catalogado. O identificador do recipiente assumirá o papel de 
identificador da descrição do dado no sistema. Os identificadores que não 
Arquitetura de software para catalogação automática de dados geográficos 52 
 
existirem no catálogo, nem no repositório temporário ou de falhas são 
considerados novos e os metadados do conteúdo dos respectivos recipientes 
são capturados (operação Repository->getDescription(String uri)). Uma 
descrição parcial do dado é criada, a partir dos metadados capturados, e 
enviada (operação CrawlingAgent->sendMessage(Message message)) ao 
agente catalogador em uma mensagem do tipo “novo

Continue navegando