什么是GML

gml格式数据转换 gml格式数据转换在国外很多网络数据给出的都是gml格式(Newman主页的数据),但是Matlab、C等语言最喜欢的还是TXT等常用格式。在这里,我们会告诉你如何把gml格式转换为其他格式。 在这里我们主要用到软件是Gephi(可以画超炫的网络图)和Matlab。1.打开Gephi->文件->打开2 选择需要转换的gml格式文件(football.gml)->确定3 选择数据资料->数据表格-> 阅读详情

. GML介绍
GML是基于XML的空间信息编码标准,由OpenGIS Consortium (OGC)提出,得到了许多公司的大力支持,如Oracle、Galdos、MapInfo、CubeWerx等。

运用GML,封装的地理数据和图形解释是清楚分离的。如前所述,图形解释格式包括SVG、VML和X3D等。

GML基于文本表示地理信息
文本比较简单、直观,容易理解和编辑。已经在空间信息和三维显示上得到广泛应用的数据格式是虚拟现实建模语言VRML (Virtual Reality Markup Language),现在这些VRML模型元素一样可以在GML上应用。

GML封装了地理信息及其属性
GML基于地理信息抽象模型,即空间实体特征及西宁封装。地理特征(Feature)包括一系列的属性和相应的几何信息,一般来说属性由名字、类型和值组成,几何信息由基本元素如点、线、面、曲线、多边形等组成。目前GML主要局限在二维应用,正扩展到二维半和三维空间以及特征间的拓扑关系。GML允许相当复杂的特征,如特征间的嵌套。例如飞机场由出租汽车道、飞机跑道等组成。

以下是一个封装建筑物的GML例子:
<Feature   fid="142" featureType="school"  Description="A middle school">
        <Polygon name="extent" srsName="epsg:27354">
            <LineString name="extent" srsName="epsg:27354">
                <CData>
                  491888.999999459,5458045.99963358 491904.999999458,5458044.99963358
                  491908.999999462,5458064.99963358 491924.999999461,5458064.99963358
                  491925.999999462,5458079.99963359 491977.999999466,5458120.9996336
                  491953.999999466,5458017.99963357 </CData>
            </LineString>
        </Polygon>
</Feature>

上面只有集合信息,没有实际属性,增加了属性的例子如下:
<Feature   fid="142" featureType="school" >
   <Description>Balmoral Middle School</Description>>
   <Property Name="NumFloors" type="Integer" value="3"/>
   <Property Name="NumStudents" type="Integer" value="987"/>
       <Polygon  name="extent" srsName="epsg:27354">
            <LineString  name="extent" srsName="epsg:27354">
                <CData>
                  491888.999999459,5458045.99963358 491904.999999458,5458044.99963358
                  491908.999999462,5458064.99963358 491924.999999461,5458064.99963358
                  491925.999999462,5458079.99963359 491977.999999466,5458120.9996336
                  491953.999999466,5458017.99963357 </CData>
        </LineString>
    </Polygon>
</Feature>




GML封装了空间地理参考系统
空间地理参考系统是地理信息系统数据处理的基础。GML封装了空间地理参考系统、主要的投影关系等,保证分布式处理的扩展性和灵活性。

GML可以实现地理数据的分布式存储
GML对地理数据的分发是非常方便的技术手段,但其作用不止局限与此,同样可以成为地理数据分布式存储的重要手段。主要的技术工具是XLink和Xpointer。

GML的技术内容
GML是基于XML的,XML是数据描述的最好手段,更准确地说,XML是表达数据描述的语言。XML不是编程语言,XML的行为和操作要由Java和C++实现。

XML Version 1.0
XML用自定义的标记描述数据,看起来如下:
<Feature>
.... 许多 XML描述 ...
....
</Feature>


有效的标记名字由Document Type Definition即DTD确定。XML数据的有效性由XML 解析器检查。利用XML可以非常容易地产生和更新具有复杂继承关系的数据结构,而这样的结构在地理信息应用程序中是非常普遍的。

图形格式
SVG、VML和X3D等图形格式都有描述图形的不同方式,如属性和颜色、线宽等。浏览SVG, VML和X3D数据文件,需要合适的浏览器,如Internet Explorer 5.0内嵌对VML的支持,Adobe对Internet Explorer和Netscape Communicator由支持SVG的插件,Adobe Illustrator也支持SVG, IBM等公司也开发了SVG的浏览器和支持库,几个Java版本的SVG 浏览器已经可以利用。

下图显示了几种技术在显示图形中的运用方式:


Xlink和XPointer
利用HTML技术,人们通过影像之间的链接,可以建立地理数据的连接的集合。然而,由于HTML链接机制过于简单而不可扩展,对实际复杂的分布式应用是不合适的。

在Xlink中,链接源点只链接到数据库,数据库提供目标文档的指定XML元素。因此链接不象HTML一样,是硬编码方式,这对GML构建复杂的分布式系统是非常重要的。借助于Xlink和XPointer, 不需要改变链接源点就可以方便地进行各种应用地变换。

GML与其它地理信息编码标准
目前也有许多地理信息的编码标准,如COGIF, MDIFF, SAIF, DLG和SDTS等,与GML 地不同之处在哪里?严格意义上说,没有本质的不同,只是GML更简单和直观。最重要的区别在于GML是基于XML的!

XML在当前软件技术中的作用和影响力是勿庸置疑的,微软的.NET计划就是搭建在XML之上的,在此不再赘述。由于XML的发展一场迅速,如果地理信息编码不基于XML技术,对将来的扩展和广泛应用都是巨大的阻碍。用XSLT或者任何编程语言如VB、VBScript、Java、C++、Javascript,我们可以方便地将XML数据传输到任意地方,唯一的技术就可以处理一系列的地理数据、非地理数据的任意转换和传输。我们才真正可以说,现在GIS才是Open GIS!

GML可以由许多公开工具浏览
GML可以由文本编辑器打开和编辑,由于GML是XML文档,可以由许多XML解析器打开,下图是用XMLSpy打开一个GML文档:


GML可以与非空间数据集成
二进制数据与其它数据的继承是非常困难的,必须理解数据结构和数据库设计。对许多老系统来说,改变数据结构必须改变应用程序,这是非常繁重甚至是不可能完成的任务。借助XLink and Xpointer,改变是非常方便的,集成也就相当容易。
总之,GML是强有力的地理信息编码标准,GML的广泛应用必然带动一个地理信息开放系统时代的到来。



<script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"> </script>
gml文件格式解析程序详解之源文件 // Functions to read a network stored in a GML file into a NETWORK struct // // Mark Newman 11 AUG 06 // // To use this software, #include "readgml.h" at the head of your program // and then call the 阅读详情

相关推荐

IGraph使用实例——图属性设置2之GML或GraphML输出

Graph Modeling Language (GML) 是一种用于描述图形结构的文本格式,它提供了为节点和边分配属性的灵活性.GraphML是一种用于表示图形结构的XML格式,它特别适用于描述节点(或顶点)和边(或链接)之间的关系,以及这些元素上的属性.

octdream的专栏 1811

GML格式详解,写入读取GML 示例

GML 是一种强大的地理空间数据格式,它可以携带丰富的地理信息和属性数据。由于它是基于 XML 的,所以具有很好的可读性和可扩展性。在 GIS 领域,GML 被广泛用于数据交换和集成,特别是在 Web 服务中。

大剑师兰特的GIS世界 4654

(GML2Pajek) GML到Pajek文件的转换,GML转net,GML转Pajek网络文件

Pajek的网络输入数据格式为*.net,而今天想下的一些数据都是*.gml格式的。 http://www-personal.umich.edu/~mejn/netdata/  Mark Newman在提供这些开源的数据的同时,提供了他写的一个简单GML分析器的C源码。我修改了一点,加了个主函数用来生成*.net文件。 如果*.gml文件提供更多信息,如节点的分类等,也可以修改这个简单的GM

Dango's happy life 2877

​Python:GML(地理标记语言)数据导入示例

GML 数据可以在支持该格式的不同软件应用程序和系统之间交换,从而实现其他 GIS 软件之间的互操作性,并允许数据轻松共享并集成到各种应用程序中。4.元数据管理:GML 可以存储关于地理特征和数据的元数据,包括关于数据质量、准确性和出处的信息。5.标准合规性:GML 是由开放地理空间联盟 (OGC) 维护的广泛认可的标准,可确保地理空间数据遵守通用标准,并可跨不同的应用程序和系统使用。GML 是可扩展的,这意味着用户可以定义他们的元素和属性来扩展标准模式以表示其他类型的地理要素或存储其他元数据。

天波风客的博客 1897

地理标记语言(GML)C++解析示例

地理标记语言(GML)是一种用可扩展标记语言(XML)编写地理信息的方式,以方便地理信息的传输和存储。可以将其视为描述应用程序架构的XML语法,应用程序架构描述特定领域或给定上下文中的概念结构。GML用来模拟地理现象的一些关键概念包括:特征:现实世界现象的抽象;如果它与相对于地球的某个位置相关联,它就是一个地理特征。属性:功能的状态由一组属性定义,其中每个属性可以被认为是一个{name,type,value}三元组。要素集合:本身可以视为要素的要素集合术语特征可用于指代特征的类型或特征的实例。

哈哈星云 1409

直方图规定化:SML和GML

1.单映射规则(SML) 当采用SML映射时,从原始累计直方图向目标累计直方图进行,分别在每一列中找到最小值第一次出现的数的行号。在目标累计直方图中找到与原始累计直方图第一次出现的差值最小的数的行号。然后将原始直方图中灰度级为该列的像素点映射到该行号上。 2.组映射规则(GML) 当采用GML映射时,从目标累计直方图向原始累计直方图进行,找到最小值第一次出现的列号,目标累计直方图从下一个灰度级开始,在原始累计直方图中找到与第一个该灰度级最接近的值。在原始累计直方图中上一个...

zhangxue1232的博客 1万+

什么是GMLGML例子

从GIS公园网站上转贴。 GML是基于XML的空间信息编码标准,由OpenGIS Consortium (OGC)提出,得到了许多公司的大力支持,如Oracle、Galdos、MapInfo、CubeWerx等。 运用GML,封装的地理数据和图形解释是清楚分离的。如前所述,图形解释格式包括SVG、VML和X3D等。 GML基于文本表示地理信息文本比较简单、直观,容易

bluenight专栏 4426

基于GML的几何数据模型

基于GML的几何数据模型。

::: 移动互联网时代开发者 ::: 2533

GML (GameMaker Language) 语言详解

GML:专为GameMaker设计的游戏开发语言》 GML(GameMaker Language)是专为GameMaker Studio设计的脚本语言,采用动态类型和事件驱动机制,简化游戏开发流程。其核心围绕游戏元素(精灵、对象、房间等)设计,通过事件(如创建、步进、碰撞)触发逻辑,支持实例化对象和场景管理。语法类似JavaScript但更精简,提供变量、控制流、函数及多种数据结构(数组、映射等)。相比通用语言,GML优势在于快速开发、丰富内置函数和引擎深度集成,但性能与通用性较弱。适合快速原型开发或2D

bulita great world 1248

空间信息到GML的转换

      GML已经成为大家所接受并且容易理解的一种空间信息的交换格式标准,所以将其它GIS数据转换为GML格式进行发布就具有广泛的实用价值和市场前景。不久的将来,空间信息会大量的以GML格式存在,人们可以方便的进行空间信息的共享与交换。由此就会引发出一个非常重要的问题,那就是如何将现有的一些空间信息转换成GML格式,更好的实现各类空间数据共享。        目前,大量的空间数据都是以特定

::: 移动互联网时代开发者 ::: 3569

Shp格式数据文件GML格式的转换

实现Shapefile格式数据到GML格式数据的转换过程可分为两个大步骤,一是依据Shapefile数据文档资料获取数据,二是依据GML标准构建GML格式数据。从上面对shapefile数据格式和GML格式的分析可知,对shapefile的文档资料的获取主要是读取坐标文件和属性文件,根据dbf的字段信息描述创建相应的Schema文件,将dbf的字段名作为Feature元素的孩子节点,根据shp文件

zqf5816的专栏 5593

GML与WebGIS技术整合及其应用

本文还有配套的精品资源,点击获取 简介:"GML WebGIS" 深入探讨了地理信息系统(GIS)在Web环境中的应用,重点讲述了GML(Geography Markup Language)与WebGIS技术的结合,以及SVG在WebGIS中的应用。GML是一种用于描述和交换地理空间数据的XML语言,而WebGIS则扩展了GIS的互联网访问能力,SVG则为WebGIS提供了...

weixin_28729843的博客 1267

GML-GeoRSS GML

GML-GeoRSS GML From http://georss.org/gml Geography Markup Language (gml) is an XML grammar written in XML Schema for the modelling, transport, and storage of geographic information...GML provid...

129

GML文档到SVG文档的转换

尽管GML适用于地理信息交换和共享,但它并不是为图像显示而设计的,所以GML文档是无法以图像的形式显示给用户的。要将地理时空信息发布出去,就要将GML文档转换为合适的图像格式文件。此数据发布组件采用SVG作为系统的地理信息发布格式,因此需要将GML文档转换为SVG文档。GML文档向SVG文档转换,是通过将编写好的样式表(XSL)和GML文件,传递给XSLT处理器进行执行实现的。用户查询是变化

::: 移动互联网时代开发者 ::: 3313

java .gml格式_NetworkX之输入文件GML

之前看过networkx,igraph都说支持GML格式文件输入形式,直到今天想再Nepidemix load进文件进行分析,发现Nepidemix 对load输入文件要求是GML和gpickle,其余的不支持。所以查阅了下GML究竟是什么。GML(Graph Modelling Language):There are many different programs that work with ...

weixin_27012835的博客 945

GML对象的层次结构

GML是一个复杂的标准。本文的内容以OGC GML 3.1.0为参考标准。它包含的内容非常多,除常规的二维矢量GIS信息以外,还包括复杂目标、拓扑信息、三维目标、时态信息、地理覆盖、注记符号、空间参考、元数据、栅格数据等等信息。和GML2版本不同,GML3.1.0中的Feature并不总是几何对象,而是真正成为一个有实际意义的地理对象(实体或现象)的抽象。这样的Feature既可以描述具体实在的对象,也可以表达抽象的或者是概念上的对象,还可以描述变化中的与空间位置相关联的现象。

::: 移动互联网时代开发者 ::: 2083
上一篇: GML:地理信息管理的飞跃
下一篇: XML Schema定义
luanxj
博客等级 码龄21年 75粉丝 79原创
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值