Unidade 8: Padr ões em SIG

Post on 12-Jan-2016

27 views 0 download

description

Unidade 8: Padr ões em SIG. Cláudio de Souza Baptista UFCG/CCT/DSC Grupo de Sistemas de Informações e Banco de Dados http://www.lsi.dsc.ufcg.edu.br. Introdução. Geralmente padrões auxiliam no compartilhamento, integração e transferência de dados - PowerPoint PPT Presentation

Transcript of Unidade 8: Padr ões em SIG

Unidade 8: Padrões em SIG

Cláudio de Souza BaptistaUFCG/CCT/DSC

Grupo de Sistemas de Informações e Banco de Dados

http://www.lsi.dsc.ufcg.edu.br

Introdução

Geralmente padrões auxiliam no compartilhamento, integração e transferência de dados

Em SIG existem padrões para linguagem de especificação, transferência de dados, geocodificação e documentação de metadados e formatos, qualidade de dados e bibliotecas digitais de objetos espaciais

Existem padrões em vários níveis: internacional, nacional, regional

Introdução Exemplos:

ISO TC 211 - Informações geográficas e Geomática (http://www.isotc211.org/)

FGDC (Federal Geographic Data Committee) ANSI TC X3L1 (1993) juntamente com OGC (Open

Geospatial Consortium) SAIF (Spatial Archive and Interchange Format) Canadá DIGIWG (Digital Geographic Information Work Group) -

OTAN desenvolveu o DIGEST SDTS Shapefile (Formato proprietário da ESRI) CEN TC 287 – Europa GML

O Padrão SAIF Padrão canadense que propõe uma linguagem

para especificação e troca de dados, baseada no modelo de orientação a objetos

Influenciou o padrão OGIS Especifica as classes espaciais, mas não

contempla métodos distingue entre representações de fenômenos

do mundo real e representações do espaço e tempo em que estes existem.

O Padrão SAIF

O Padrão SDTS

Padrão para transferência de dados espaciais entre SIGs.

Contém especificações lógicas para uso na transferência de dados modelo conceitual, descrição de componentes de qualidade e descrição de formatos de troca Um glossário de termos

O Padrão SDTS

Possui 3 partes: modelo de entidades espaciais do mundo real

(cidades, rodovias etc) modelo de objetos espaciais: linhas, pontos, etc modelo de fenômenos espaciais: descreve o

relacionamento entre os dois primeiros.

O Padrão OGC (antigo OpenGIS)

Padrão desenvolvido por um consórcio de fabricantes de SIG denomindo de OpenGeospatialConsortium (OGC)

Objetivo: permitir acesso aos dados espaciais localmente ou remotamente sem se preocupar com modelo de dados proprietários, formato de arquivos ou SIGs que gerenciam os dados

O Padrão OGC Usa 3 conceitos básicos:

Todos os dados, processos e servidores são objetos baseados em tecnologia de objetos distribuidos (ex. CORBA).

Modelo de objetos geográficos é proposto (baseado no SAIF e compatível com SDTS e DIGEST)

Permitirá que serviços sejam implementados fornecendo ligações entre o modelo de objetos e formatos de dados privados, definindo uma API.

OGC contém um conjunto de especificações para Aplicações geoespaciais (http://www.opengeospatial.org)

Modelo de Geometria “Simple Fetaures”

Geography Markup Language

GML - OGC

• Uma linguagem baseada em XML• Para transporte e armazenamento de geo-informação

Incluindo feições espaciais e não-espaciais• Desenvolvida pelo OpenGeospatial Consortium - OGC• GML versions

Initial release: GML specificationFev/2002: GML2 specificationDesde Jan/2003: GML 3.0 specification

• baseada em XMLSchema– Futuro: GML4, … specifications

Incluir relacionamentos espaciais, geometria 3D, e tempo

Introdução

Aplicações com dados espaciais (SIG’s) Problema: cada aplicação utiliza uma modelagem

distinta de armazenamento dos dados geográficos;

Necessidade de um padrão para representar dados espaciais Surge o padrão GML

O que é GML ?

A Geographic Markup Language (GML) é uma codificação XML para transporte e armazenamento de informação geográfica, incluindo suas propriedades espaciais e não espaciais;

Baseado em XML Schemas.

GML: O que é? OGC endossou “Adopted Specification” (GML 2.0

passou em março 2001) para representação de informação espacial.

Um conjunto de tecnologias XML para manipular dados espaciais na Internet.

Padrão internacional emergente para dados espaciais—endossado por 200 + indústrias e agências no mundo.

Convergiu com G-XML (Japão) – 600+ industrias.

GML: o que é?

Representação XML de geografiaPermite o uso do mundo de tecnologias XML.Permite mapas vectoriais em Web browsers.Permite feições complexas e associações

entre estas.

Porquê GML ?

A “lingua franca” para informação geográfica. Dados GML podem ser lidos e entendidos por pessoas e máquinas.GML permite o uso de dados espaciais distribuidos que são inter-ligados: manutenção local & acesso e desenvolvimento global. Custo reduzido para dados.Dados GML podem facilmente ser misturados com dados não-espaciais incluindo texto, video, e imagem.GML pode construir esquemas de aplicações compartilhadas para telecomunicações, utilitários, florestas, turismo, e location-based services.

Porquê GML ?

GML é facilmente transformado – conversão de coordenadas etc.Serviços podem ser criados com tipos específicos e então facilmente descobertos. Serviços podem agir em feições. Serviços podem retornar rotas. GML provê um PADRÃOGML é não-proprietário e aberto! Qualquer cliente pode falar com qualquer servidor!GML abilita servidores web de feições não-proprietários, anotação de imagem/mapa, análise espacial e estilo de mapa.

GML: o que é?

getData()

GML Data

Geographic Data Server

Links para outros dados geográficos

Base para a Geo-Web !!

OGC Web Feature Service

GML: o que é?

getData()GML Data

Geographic Data Server

ESRI MapServer Oracle

Apenas com email você pode obter dados espaciais?

iGIS

História

Fev 99 – White paper da Galdos sobre “XML for spatial”.Jul 99 – Grupo Xbed liderado pela Galdos Systems, desenvolve SFXML (Oracle, NTT Data, MapInfo)Out 99 – Galdos Systems escreve GML RFCDez 99 – GML RFC se torna públicaMai 2000 – GML 1.0 Passa como “recommendation paper”.Febv 2001 – OGC publica GML 2.0Mar 2001 – GML 2.0 votado como “adopted specification”Jul 2001 – GML 3.0 Workshop em VancouverSet 2001 – OGC vota enviar GML ao ISOJul 2002 – GML Dev Days !Out 2002 – Release de GML 3.0

GML - usa padrões da W3C

GML foca em conteúdo

Desenho de mapa vetorial num web

browser (SVG)

GML separa conteúdo &

apresentação !

Aplicações chaves

Location-Based Services e Mobile GIS Internet GIS (governos local/regional &

nacional) Gestão de Desastres Investigação de acidentes Planejamento e Monitoração de

telecomunicações e utilitários (energia, água, gás)

Implicações de GML

Torna possível construir uma infra-estrutura espacial – reduz o custo incremental cost construir dados de aplicações específicas.

Facilita a integração da informação espacial com não-espacial – “e-mail me a map I can interact with”! => Melhor utilizaçao da informação espacial.

Direciona para padrões geográficos para vários domínios de aplicação - vocabulários compartilhado e padronizado – diminui o custo de compartilhamento de dados e aumenta interoperabilidade.

Provê um padrão aberto e flexível para transportar informação geográfica para aplicações baseadas em localização. Permite vendedores focar no conteúdo!

Arquitetura de LBS em larga escala

Information Infrastructures

Location-Based Services

Área vasta, dados espaciais integrados –

“the geo-spatial world wide web !”

Location Services• routing• tracking• access to services

Telephone Anexos

Postes CELB

<tc:TelephonePole gml:id = “WECO1”> <tc:carries>

<tc:TelephoneDrop> …

</tc:TelephoneDrop> </tc:carries> <position xlink:href = “… UtilityPole/gml:position” /> ….</tc:TelephonePole>

<rt:UtilityPole gml:id = “P32”> <gml:position>

<gml:Point srsName = “..”><gml:coordinates> …

</gml:coordinates></gml:Point>

</gml:position><rt:UtilityPole>

Municipalidade

Telco

Infra-estrutura de informções

<tc:ServingArea gml:id = “Biloxia”> <gml:extentOf>

<gml:Polygon srsName=“..”> <gml:outerBoundaryIs> <gml:Ring>

<gml:curveMember xlink:href = “ … “ />

<gml:curveMember xlink:href = “ … “ />

<gml:curveMember xlink:href = “ … “ />

<gml:Ring> <gml:outerBoundaryIs> …</gml:Polygon>

</gml:extentOf> <servedBy xlink:href = “… #SAI36” /> ….</tc: ServingArea >

Serving Area

Municipal Land Parcels

Serving Area Interfaces

sa66

sa68Serving Area Boundary

shared with municipal boundary

Infra-estrutura de Informação

Integração de Dados

Work Order

Assigned To: _______________

Date: _____________

StreetAddress: _____________

Vehicle Route: _____________

Wiring Diagram: ____________

Work Order como um documento XML

Street Address (gml:StreetAddress)

Vehicle Route (gml:Route)

Wiring Diagram (gml:Topology)

GML pode integrar dados espaciais e não-espaciais

Construindo comunidades de informação

Common Geographic and Geometric Constructs

Location Service Constructs

Network Constructs

Transportation Constructs

Numbers Strings

Logistical Constructs

Outside Plan Constructs

W3C

GML

GML Application Schemas

GML pode transportar informação:• Pontos de interesses (POI)• Rotas• Observações• Localização qualitativa/ endereço postal

Transporte de Dados espaciais

Tecnologias Dependentes

GML não está sozinha — mas usa/direciona muitas especificações da OGC.

Web Feature Server (WFS) é uma especificação OGC.

Web Coverage Server Geo-coder e Gazetteer Specifications. Especificações de estilo.

GML2.0

Features, Feature CollectionsGeometriesFeature properties e outras

associações; Associações complexas

Codificação GML(cont.) Codificando Geometrias

Utiliza o esquema Geometry; Implementa geometrias, com as seguintes classes:

- Point; - LineString;- LinearRing; - Polygon;- MultiPoint; - MultiLineString;- MultiPolygon - MultiGeometry;

Possui ainda os elementos <coordinates> e <coord> para codificação de coordenadas: <coordinates>5.0,40.0</coordinates> <coord><X>5.0</X><Y>40.0</Y></coord>-> <element name="coord" type="gml:CoordType" /> <complexType name="CoordType"> <sequence> <element name="X" type="decimal"/> <element name="Y" type="decimal" minOccurs="0"/> <element name="Z" type="decimal" minOccurs="0"/> </sequence> </complexType>

Codificação GML(cont.)

O elemento <box> usado para codificar extensões; Utiliza os elementos <coordinates> e <coord>; O primeiro elemento possui a medida dos menores

valores ao longo dos eixos, o segundo ponto a medida dos maiores valores;<Box

srsName="http://www.opengis.net/gml/srs/epsg.xml#4326"> <coord><X>0.0</X><Y>0.0</Y></coord> <coord><X>100.0</X><Y>100.0</Y></coord>

</Box> LineString- possui as coordenadas do primeiro e

último ponto; LinearRing- a última coordenada deve coincidir com

a primeira;

Codificação GML(cont.) Polygon- o limite do Polygon é um conjunto de linearRings; MultiGeometry- contêm todos os elementos geométricos,

possui a propriedade geometryMember que retorna o próximo elemento geométrico na coleção. Exemplo:

<MultiGeometry gid="c731“ srsName= "http://www.opengis.net/gml/srs/epsg.xml#4326">

<geometryMember> <Point gid="P6776">

<coord><X>50.0</X><Y>50.0</Y></coord> </Point> </geometryMember> ---

<geometryMember> <LineString gid="L21216">

<coord><X>0.0</X><Y>0.0</Y></coord>

<coord><X>0.0</X><Y>50.0</Y></coord> <coord><X>100.0</X><Y>50.0</Y></coord> </LineString>

</geometryMember>

Codificação GML(cont.) Codificando Características com Geometrias

GML provê um conjunto pré-definido de propriedades geométricas que podem ser usadas em geometrias de um tipo particular.

Exemplo: O tipo de característica Dean possui uma propriedade ponto chamada location, que substitui o nome formal pointProperty.

<gml:location> <gml:Point>

<gml:coord><gml:X>1.0</gml:X><gml:Y>1.0</gml:Y></gml:coord>

</gml:Point> <gml:location>

Exemplos Schema GEOMETRY:<cityMember> <River> <gml:description>The river that runs through Cambridge. </gml:

description> <gml:name>Cam</gml:name> <gml:centerLineOf> <gml:LineString

srsName="http://www.opengis.net/gml/srs/epsg.xml#4326"> <gml:coord><gml:X>0</gml:X><gml:Y>50</gml:Y></gml:coord>

<gml:coord><gml:X>70</gml:X><gml:Y>60</gml:Y></gml:coord>

<gml:coord><gml:X>100</gml:X><gml:Y>50</gml:Y></gml:coord> </gml:LineString>

</gml:centerLineOf> </River>

</cityMember>

Exemplos(cont.) Schema FEATURE:<cityMember> <Mountain> <gml:description>World's highest mountain is in

Nepal!</gml:description> <gml:name>Everest</gml:name> <elevation>8850</elevation>

</Mountain> </cityMember> -----------------------------------------------------------------------------------<complexType name="SchoolType">    

<complexContent>       <extension base="gml:AbstractFeatureType">        

<sequence>           <element ref="ex:address"/>           <element ref="gml:location"/>        

</sequence>      </extension>    </complexContent>   </complexType>

G-XMLGML 2. ISO TC/211

GML 3.0

Muitas Influências

Muitos objetivos !

GML 3.0!

GML 3.0 Process

12 membros OGC RWG trabalharam em GML 3.0 Schemas para GML 3.0 congelados em maio

03/2002

GML 3.0Localização: (G-XML, OGC)

Geometric point (like GML 2.0) mas outras geometrias também. Endereço postal com suporte à internacionalização. (FGDC compliant) Endereço na forma de strings também. (“corner of 5th and Hornby”) Palavras-chave (de um dicionário – ex. “Holanda” )

Temporal: (baseado em ISO 19108) (G-XML, OGC) Feature timestamps (time intervals, time positions) Dynamic Features Moving Object States

GML 3.0

Topologia: (baseada em ISO 19107) (OGC, G-XML)– Topologias separadas de geometry.

– Primitivas para nodos, arcos, faces e sólidos.

– Manipula orientação.

Melhoras em Geometry (baseadas no ISO 19107)– Geometrias não-lineares – tamanho de dados reduzidos.

– Polígonos com curvas

– “composite curve” curvas compostas de curvas ou primitivas de curvas.

– “composite surface” surperfícies compostas de surperfícies ou primitivas de superfícies.

Sistemas de Referência: (G-XML, OGC, ISO)– ISO/OGC gramática compatível com sistemas de coordenadas.

– Dicionário de sistema de referência

– Sistemas de referência definidos pelo usuário

– Observações: (para G-XML)– Conteúdo de Images/multimídia

– Dependente de posição e tempo

– Quandades medidas, observações

GML 3.0

Coverages: (baseado no ISO 19123). (OGC)– Distribuição de quantidades sobre surperfície da terra.

– Imagens de sensoriamento remoto – dados customizados

– Modelo de redes

Unidades de Medidas: (OGC. G-XML)– Quantidades físicas arbitrárias – uso de dicionários

– Consistente com coverages e features.

GML 3.0

Mecanismos de Metadados (OGC, G-XML)– Mecanismo de metadados genéricos para features, coverages etc.

– Esquemas de Metadados podem ser publicados e compartilhados.

– Esquemas/ instâncias de metadados para domínios específicos (ex. telecom)

Estilo default: (G-XML)– Estilos persistentes para features.

– Animação

– Estilos de topologia.

GML 3.0

Características de GML

Geração de um framework aberto para definição de esquemas e objetos de aplicações geoespaciais

Suporte à descrição de esquemas de aplicações geoespaciais específicas para um domínio;

Suporte ao armazenamento e transporte de aplicações e conjunto de dados;

Aumento da capacidade das organizações compartilharem dados espaciais

O Framework

Especificação do padrão através de definições dos tipos em XML Schema;

Variedade de tipos de objetos para descrição geográfica( Features, Geometry, Topology );

O usuário deve reutilizar as definições, estendendo-as. E pode criar novos tipos específicos para sua aplicação.

O Framework

Define os objetos abstratos que iniciam a hierarquia de tipos de GML: Feature Geometry

Todas as aplicações têm seus principais objetos derivados desses tipos.

O Framework

Feature Abstração de um fenômeno do mundo real [ISO

19101] Geographic feature – localização na terra Estado = coleção de propriedades <nome, tipo,

valor> Também pode conter referências para outros

objetos

O Framework

Feature Exemplo de um feição geométrica:

O Framework

Geometry Supertipo de todos os tipos de geometria Tem uma referência para o sistema de referência

espacial

Exemplo

Arquitetura(GML 3.0)

Utilizando o GML

Pode lidar com dados espaciais e não espaciais; Importar esquemas que serão utilizados; Desenvolvedores devem decidir entre:

1) Utilizar GML para definir os esquemas e transportar os dados, e também para armazenar esses dados (XML);

2) Utilizar o GML apenas para definição dos esquemas e transporte dos dados;

Devem codificar os próprios tipos herdando as propriedades dos tipos abstratos definidos no GML, ou inserindo restrições, ou utilizando objetos concretos existentes;

Utilizando GML

A aplicação deve importar(exportar) de (para) GML; Ex: exportar dados espaciais de um banco dados

Oracle para GML; Ex: obter dados GML em um servidor WEB de

uma determinada aplicação e inserir esses dados num bancos de dados PostgreSQL.

Exemplo

Definindo tipo Abstrato

Exemplo

Definir o tipo pessoa:

Exemplo

Criando objeto com campo geométrico

Exemplo

Array

GML 3.0

As versões anteriores tinham limitações: 1.0: Definições DTD; 2.0: Já usa XML Schema, mas tem apenas

geometrias simples(Point, Line, Polygon) e de até 2 dimensões.

Maior conformidade com o padrão ISO 19100.

GML 3.0

Principais características: Geometrias Topologia Dados temporais Observações Sistema de referências de coordenadas Unidades de medida Meta-dados

GML 3.0 - Geometrias

Novas geometrias: Curves, surfaces, solids

Toda geometria deve ser associada com algum sistema de referência (srsName)

Permite coleções de geometrias

GML 3.0 - Topologia

Relacionamento espacial entre objetos

Adequado para dados 3D

Topologia é baseada nos elementos: nodes, edges, faces e solids.

GML 3.0 Características temporais e dados dinâmicos

Pode ser aplicado para features e attributes Facilidades para lidar com dados dinâmicos,

principalmente com objetos móveis; Tem um formato padrão para representar um

instante de tempo, mas suporta outros padrões; Características dinâmicas podem ter:

Localização, velocidade, direção, elevação e aceleração

GML 3.0 Observações

Elemento que modela o ato de observar

Ex: medidas de temperatura

Útil para armazenar dados de sensoriamento remoto;

Armazena a forma de aquisição, qual a propriedade a ser lida, e a medida atual.

GML 3.0 Observações

Exemplo

GML 3.0 Sistema de Referências

Todas as geometrias têm uma referências para algum sistema de coordenadas

Novos sistemas podem ser definidos.

GML 3.0 – Unidades de Medida

O framework tem suporte para definição de unidades de medida para as propriedades dos elementos; o desenvolver define a unidade base da propriedade e a conversão é facilitada, pois as unidades de medidas mais comuns já estão definidas em GML ;

Exemplo (gml:TimeUnitType)

GML 3.0 Metadata

É muito importante, e GML provê um framework extensível para adicionar metadados a features / attributes.

GML para SVG

Muitas vezes os dados em GML precisam ser convertidos para o padrão SVG nas aplicações, para fazer a apresentação gráfica dos dados espaciais;

Geralmente utiliza-se XSLT para fazer a conversão;

Conclusões

GML 3.0 estende GML 2.0 para adicionar: mais geometrias, topologia, cobertura, dados temporais, observações, sistemas de referência espacial, unidades de medida e metadados;

GML 3.0 fornece um rico conjunto de esquemas que podem ser utilizados quando necessário;

O framework é extensível, principalmente as features.

Recursos

GML specificationhttp://www.opengeospatial.org

GML Dev Days (July 22-26)http://www.gmldev.org