Post on 12-Jan-2016
description
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