ST_GeomFromGML — ジオメトリのGML表現を入力とし,PostGISジオメトリオブジェクトを出力します.
geometry ST_GeomFromGML(text geomgml);
OGC GML表現からPostGIS ST_Geometryオブジェクトを生成します.
ST_GeomFromGMLは,GMLジオメトリのフラグメントでのみ動作します.GML文書全体に使用しようとするとエラーが投げられます.
サポートするOGC GMLのバージョン:
GML 3.2.1 Namespace
GML 3.1.1 Simple Features profile SF-2 (GML 3.1.0, 3.0.0 の後方互換)
GML 2.1.2
OGC GML標準についてはhttp://www.opengeospatial.org/standards/gmlを参照して下さい.
初出バージョン: 1.5
この関数は三次元をサポートします.Zインデクスを削除しません.
GMLは,複合次元(たとえば,二次元と三次元が同じMultiGeometry内にある)を許します. PostGISジオメトリは許しませんので,ST_GeomFromGMLは,Z次元が無いジオメトリをひとつでも発見すると,ジオメトリ全体を二次元に変換します.
GMLは同じMultiGeometry内の複数のSRSをサポートします.PostGISではサポートしませんので,ST_GeomFromGMLはこの場合,全てのサブジオメトリをルートノードのSRSに投影変換します.GMLのルートノードにsrsName属性が無い場合は,エラーが投げられます.
ST_GeomFromGML関数は明示的なGML名前空間に関してペダンチックではありません.一般的な使用法のために明示的に記載するのを避けることはできますが,GML内部でXLink機能を使いたい場合には必要とあります.
![]() | |
ST_GeomFromGML関数はSQL/MM曲線ジオメトリをサポートしていません. |
SELECT ST_GeomFromGML('
<gml:LineString srsName="EPSG:4269">
<gml:coordinates>
-71.16028,42.258729 -71.160837,42.259112 -71.161143,42.25932
</gml:coordinates>
</gml:LineString>');
ST_GeomFromGML('
<gml:LineString xmlns:gml="http://www.opengis.net/gml"
xmlns:xlink="http://www.w3.org/1999/xlink"
srsName="urn:ogc:def:crs:EPSG::4269">
<gml:pointProperty>
<gml:Point gml:id="p1"><gml:pos>42.258729 -71.16028</gml:pos></gml:Point>
</gml:pointProperty>
<gml:pos>42.259112 -71.160837</gml:pos>
<gml:pointProperty>
<gml:Point xlink:type="simple" xlink:href="#p1"/>
</gml:pointProperty>
</gml:LineString>'););