Interoperabilidade e Padrões
Sistemas de Informações Geográficas
2011.1
Roteiro
Problema de integração de várias bases de dados Interoperabilidade
Tipos de heterogeneidade
Padrões de serviços OGC
Apresentação da informação Renderização de mapas
Information Query & Feature Selection Editing Classificação OGC Serviços de dados Serviços de processamento Serviços de registro/catálogos Serviços de imagens Arquitetura GIServices Encadeamento de serviços SDI
Problema
Diversas fontes de dados
Vários formatos
Vários geradores da informação Várias formas de coleta
Dados massivos
Caro para transportar, armazenar e manter
Problema
Postgresql/PostGIS Oracle/Spatial
Shapefile GeoTIFF
Heterogeneidade
Semântica
Um fato do mundo real pode ser representado de diversas formas
Vários pontos de vista diferentes
Várias entidades representam o mesmo conceito Thesaurus (dicionário)
Elaborar mecanismos e estratégias de
mapeamento entre as entidades do mundo real e suas modelagens
Heterogeneidade
Esquemática
Objetos considerados em um esquema podem ser considerados como atributos em outro
esquema
Diferentes agregações ou generalizações Solução: Unificação dos esquemas ou
Heterogeneidade
Sintática
Diferentes paradigmas
Solução: mapeamento lógico entre os paradigmas
Diferentes representações geométricas do mesmo fenômeno (raster ou vector)
Solução: forma única de representação dos objetos em
Interoperabilidade
A habilidade de sistemas ou componentes
cooperarem entre si de forma independente, e
trocando informações portáveis
Consórcio sem fins lucrativos de companhias,
governos, agências e universidades
http://www.opengeospatial.org/
Elaboram padrões para soluções
interoperáveis que possibilitam o uso de Geo
na Web
Especificação para produtos
Formato de dados
Simple Feature
Define um modelo conceitual para objetos espaciais
Sistema de referência
Modelos bidimencionais e tridimencionais Relacionamentos topológicos
Simple Feature SQL
Define uma implementação modelo (esquema lógico e físico) em SQL para armazenamento dos objetos
Simple Feature SQL
Well-known Text Representation (WKT)
Especificação que define uma sintaxe para
Well-known Binary Representation (WKT)
Define uma organização de arquivo para a
GML
Geographic Markup Language
Linguagem de marcação para definir feições geográficas
Facilita a troca de dados entre sistemas e/ou domínios(interoperabilidade)
Otimizar armazenamento de dados geográficos Implementação interoperável do esquema lógico
padrão OGC
Permitir criação e manutenção de esquemas a partir da linguagem
GML
É um framework que possibilita a criação de diversas aplicações domínios
GML
Exemplos
Ponto
• Exemplos – Polígono
GML
Apoio de ferramentas de gestão de dados
para gerar código GML
SGBD
Frameworks que trabalham com Geotecnologias Ferramentas SIG
GML-POSTGIS
Usa o método asgml(geometria)
Exemplo:
select asgml(geom) from photo Resultado: <gml:Point srsName="EPSG:29100"> <gml:coordinates> -35.909477233886719, -7.220829010009766 </gml:coordinates> </gml:Point>
Padrões de serviços
Conjunto de padrões que definem os GIServices
OGC
Entradas, saídas e exceções
Pré-condições e pós-condições
Interfaces (API) e protocolos de comunicação
Sistemas altamente distribuídos
Arquiteturas extremamente dinâmicas
Combinação de serviços (orquestração)
Visão geral da arquitetura
Serviços organizados em várias camadas
Clients
Application Services Processing Services
Information Managent Services
Independentes de outros serviços ou dados Utilizam outras especificações
GML, Simple Feature, etc...
Comunicação baseada em protocolos da Internet
Information Managent Services
Contêm especificação de serviços projetados para
armazenar e prover acesso aos dados espaciais
Normalmente temos um serviço para cada conjunto
de dados (data set)
São usados por Application Services e Processing Services
Interfaces definem
API para acessar os serviços Metadados
Alguns ainda podem fazer conversão de coordenadas
Information Managent Services
Web Map Services
Web Feature Services Web Coverage Service
Catalog Service for the Web Gazetteer Service
Entre outras especificações
Processing Services
Especificações de serviços para processar dados São usados por clientes e por outros serviços
(information managent e processing services)
Exemplos
Web Cordinate Transformation Service Web Image Classification Service
Web 3D Service Geoparser Services Geocoder Sevice
LBS (Determinação de rotas, análise das proximidades)
Application Services
Especificações que determinam protocolos e comportamentos implementados nos clientes
Web Clients (navegadores) Thin Clients (clientes móveis)
Sofrem manipulação direta dos usuários Normalmente utilizam outros serviços da
arquitetura
Application Services
Web Portal Services
Interação com múltiplas aplicações clientes
WMS Application
Permite usuários interagir com WMS
Gazetter Application Services
Permite usuários interagir com Gazetteers
Workflow services
Interpreta cadeia de serviços
Acessa os serviços nos servidores Executa os serviços da cadeia
Gerencia a execução
Produz mapas dinâmicos a partir de dados
espaciais
Define como resultado uma imagem digital de
um determinado lugar
Bounding box
Formatos
SVG, PNG, JPEG, GIF
A API pode ser acessada via web browser
Foco na formação da URL de acesso ao serviço
Web Map Service
GetCapabilities()
Obtém metadados do serviço
Na URL de requisição deve-se passar alguns parâmetros
Version Service Request Format Formato de saída em XML Nome do serviço Descrição Área de cobertura
Camadas e seus atributos Sistema de referência Estilos de apresentação
GetCapabilities
URL Exemplo: http://200.140.135.184/cgi-bin/mapserv?map=/usr/local/www/apache22/data/hidro/w shidro.map&request=Getcapabilities&service=WMS&versi on=1.0.0
Trecho de resposta ao GetCapabilities():
GetMap
Operação que retorna um mapa que satisfaz a
requisição do usuário
Parâmetros de requisição (9 obrigatórios)
Version Request Layers Styles CRS (Sistema de coordenadas) BBOX WIDTH HEIGHT FORMAT
GetMap
URL exemplo http://<hostname>/<deploy_name>/com.esri.wms.Esrimap?SE RVICE=WMS&VERSION=1.1.1&REQUEST=GetMap&LAYERS=Ocean s,Countries,Cities&STYLES=&SRS=EPSG:4326&BBOX=- 124,21,-66,49&WIDTH=600&HEIGHT=400&FORMAT=image/png&Web Map Service
Exemplo de getMap(): http://200.140.135.184/cgibin/mapserv?map=/../wshidro.map &SERVICE=WMS &VERSION=1.1.1 &REQUEST=GetMap &LAYERS=rios_federais &CRS=EPSG:4326 &BBOX=-79.5229,-34.9285,-34.7896,5.7266 &HEIGHT=500 &WIDTH=800 &FORMAT=image/jpeg
Resultado de getMap():
Um avanço na forma como os dados espaciais
são processados, criados, modificados e
compartilhados
Ao invés da troca de arquivos, temos troca de
dados interoperáveis
O usuário escolhe os objetos
Em troca de arquivos não acontece o filtro
Possibilidade de estabelecer Filtros
OGC Filter Especification
Principais operações:
getCapabilities()
describeFeatureType() getFeature()
getCapabilities():
Formato geral de um WFS_Capabilities: <WFS_Capabilities version="1.0.0" xsi:schemaLocation="http://www.opengis.net/wfshttp:// localhost:8888/geoserver/schemas/wfs/1.0.0/WFS-capabilities.xsd"> <Service>...</Service> <Capability>...</Capability> <FeatureTypeList>...</FeatureTypeList> <ogc:FilterCapabilities>...</ogc:FilterCapabilities> </WFS_Capabilities>
Capability:
Web Feature Service
• FeatureTypeList:Web Feature Service
WFS DescribeFeatureType:
http://localhost:8888/geoserver/wfs?service=W
FS&version=1.0.0&request=DescribeFeatureT
ype&typeName=g4wd:st99_d00
Retorna um documento XML schema
Web Feature Service
WFS GetFeature
http://localhost:8888/geoserver/wfs?service=WFS&
version=1.0.0&request=GetFeature&
typeName=g4wd:st99_d00
Retorna o FeatureType inteiro num
Filter Encoding
Uma da primeiras especificações
Mais madura
Estável
Consolidada
Linguagem de consulta em XML
Semelhante a clausula WHERE de SQL
Retorna todas as ocorrências em que a avaliação da consulta seja verdadeiro
Predicados da lógica
equal to, not equal to, less than, less than or
equal to, greater than, greater than or equal to, like, is null and between
Predicados espaciais
equal, disjoint, touches, within, overlaps, crosses, intersects, contains, within, BBox
Predicados temporais
after, before, begins, begun by, contains, during, ends, equals, meets
Serviço que provê coberturas
Coberturas são representações digitais de fenômenos que não possuem espaço bem definido
Podem ser regulares e irregulares É um tipo de feature
Representações digitais de clima e tempo
Representações mais complexas e podem variar no espaço-tempo
Evolução de uma tempestade ou de uma queimada
Web Coverage Service
Classificação da feição coverage
Grid Coverages
Localizações regularmente esparças Componente tempo (opcional)
Regular ou irregular
Exemplos
Imagens de satélite
Matriz de elevação digital Mapa de temperatura
GetCapabilities
Retorna metadados sobre o serviço
DescribeCoverage
Descrição completa de uma ou mais coberturas
GetCoverage
Retorna a cobertura desejada