下面是一个包含点、线、面数据的GML的简单的例子,通过这个例子可以看到GML的组织情况:
xmlns:xlink="http://www.w3.org/1999/xlink"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:fme="http://www.safe.com/gml/fme"
xsi:schemaLocation="http://www.safe.com/gml/fme MyGML.xsd">
-0.012611143330844 -0.050087654172727
0.051158411625351 0.019154661096934
0
0.027363801567048 -0.028672505120255
0
0.051158411625351 0.019154661096934 0.039736998797366 -0.050087654172727
0
0.016656227040926 -0.024151529209121 0.003569191508859 0.005829679464227 -0.012611143330844 -0.01177833197886 -0.004283029810438 -0.042473378954071 0.018321849744836 -0.049373815870979 0.016656227040926 -0.024151529209121
在这个例子中描述了一个GML的FeatureCollection,由于这是由FME导出的数据,因此其中还包含“fme”的命名空间和“fme:point”、“fme:line”、“fme:polygon”类型,这些类型在这个XML包含的XSD中进行了描述,实际对应的类型为基于GML标准的点、线、面:
xmlns:gml="http://www.opengis.net/gml"
xmlns:xlink="http://www.w3.org/1999/xlink"
xmlns:fme="http://www.safe.com/gml/fme"
targetNamespace="http://www.safe.com/gml/fme"
elementFormDefault="qualified">
而描述数据范围的“gml:boundedBy”属性则直接由“gml:Envelope”类型的对象来描述;另外,数据的坐标节点、空间参考等属性则直接由GML的类型进行描述。
更简单一点,如果我们需要自己写一个GML来描述一个地理数据,写出来的文件内容可能是这样的:
100 200
230 250
100
200
100 200
200 200