This is an automated email from the ASF dual-hosted git repository.
michaelsmith pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/impala.git
The following commit(s) were added to refs/heads/master by this push:
new ba17491bc IMPALA-11889: Docs for ESRI geospatial functions
ba17491bc is described below
commit ba17491bc090250d0895303434285785b5e77f3a
Author: Peter Rozsa <[email protected]>
AuthorDate: Fri Nov 15 14:30:03 2024 +0100
IMPALA-11889: Docs for ESRI geospatial functions
This change adds documentation for geospatial functions added in
IMPALA-11745.
Change-Id: I5f765927a0856e3034968462514536fd1fffcea5
Reviewed-on: http://gerrit.cloudera.org:8080/22076
Tested-by: Impala Public Jenkins <[email protected]>
Reviewed-by: Csaba Ringhofer <[email protected]>
---
docs/impala.ditamap | 1 +
docs/impala_keydefs.ditamap | 2 +
docs/topics/impala_functions.xml | 4 +
docs/topics/impala_geospatial_functions.xml | 912 ++++++++++++++++++++++++++++
4 files changed, 919 insertions(+)
diff --git a/docs/impala.ditamap b/docs/impala.ditamap
index 40e7a3ae5..077828ec8 100644
--- a/docs/impala.ditamap
+++ b/docs/impala.ditamap
@@ -300,6 +300,7 @@ under the License.
<topicref href="topics/impala_variance.xml"/>
</topicref>
<topicref href="topics/impala_analytic_functions.xml"/>
+ <topicref href="topics/impala_geospatial_functions.xml"/>
</topicref>
<topicref href="topics/impala_udf.xml"/>
<topicref href="topics/impala_langref_unsupported.xml"/>
diff --git a/docs/impala_keydefs.ditamap b/docs/impala_keydefs.ditamap
index fdbb5aa69..644b847b5 100644
--- a/docs/impala_keydefs.ditamap
+++ b/docs/impala_keydefs.ditamap
@@ -10909,6 +10909,8 @@ under the License.
<keydef href="topics/impala_analytic_functions.xml#row_number"
keys="row_number"/>
<keydef href="topics/impala_analytic_functions.xml#sum_analytic"
keys="sum_analytic"/>
+ <keydef href="topics/impala_geospatial_functions.xml"
keys="geospatial_functions"/>
+
<keydef href="topics/impala_udf.xml" keys="udfs"/>
<keydef href="topics/impala_udf.xml#udf_concepts" keys="udf_concepts"/>
<keydef href="topics/impala_udf.xml#udfs_udafs" keys="udfs_udafs"/>
diff --git a/docs/topics/impala_functions.xml b/docs/topics/impala_functions.xml
index ed9d18492..1fa9a2137 100644
--- a/docs/topics/impala_functions.xml
+++ b/docs/topics/impala_functions.xml
@@ -87,6 +87,10 @@ under the License.
<li>
<xref href="impala_misc_functions.xml#misc_functions"/>
</li>
+
+ <li>
+ <xref href="impala_geospatial_functions.xml#geospatial_functions"/>
+ </li>
</ul>
<p>
diff --git a/docs/topics/impala_geospatial_functions.xml
b/docs/topics/impala_geospatial_functions.xml
new file mode 100644
index 000000000..d6bfb70fe
--- /dev/null
+++ b/docs/topics/impala_geospatial_functions.xml
@@ -0,0 +1,912 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+Licensed to the Apache Software Foundation (ASF) under one
+or more contributor license agreements. See the NOTICE file
+distributed with this work for additional information
+regarding copyright ownership. The ASF licenses this file
+to you under the Apache License, Version 2.0 (the
+"License"); you may not use this file except in compliance
+with the License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing,
+software distributed under the License is distributed on an
+"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+KIND, either express or implied. See the License for the
+specific language governing permissions and limitations
+under the License.
+-->
+<!DOCTYPE concept PUBLIC "-//OASIS//DTD DITA Concept//EN" "concept.dtd">
+<concept id="geospatial_functions">
+ <title>Impala Geospatial Functions</title>
+ <titlealts audience="PDF">
+ <navtitle>Geospatial Functions</navtitle>
+ </titlealts>
+
+ <prolog>
+ <metadata>
+ <data name="Category" value="Impala"/>
+ <data name="Category" value="Impala Functions"/>
+ <data name="Category" value="Geospatial"/>
+ <data name="Category" value="Data Analysts"/>
+ <data name="Category" value="Developers"/>
+ <data name="Category" value="Querying"/>
+ </metadata>
+ </prolog>
+
+ <conbody>
+ <p>Impala supports a range of geospatial functions to facilitate spatial
data processing and analysis,
+ based on Apache Hive's implementation of ESRI functions.</p>
+ <p> Many functions return results in binary format
(<codeph>BINARY</codeph>), these values can typically be
+ interpreted as geometries, and they can be used with Hive functions
similarly. It's not recommended
+ to serialize geometries in this format, for compatibility, converting to
Well-Known Binary format is recommended.
+ Possible geometries returned as <codeph>BINARY</codeph>:
+ <ul>
+ <li>POINT</li>
+ <li>LINESTRING</li>
+ <li>POLYGON</li>
+ <li>MULTIPOINT</li>
+ <li>MULTILINESTRING</li>
+ <li>MULTIPOLYGON</li>
+ <li>GEOMETRYCOLLECTION</li>
+ </ul>
+ Coordinates for geometries may be 2D (x, y), 3D (x, y, z) or 4D (x, y,
z, m).
+ Geospatial functionality can be controlled through the startup flag
<codeph>GEOSPATIAL_LIBRARY</codeph>.
+ <ul>
+ <li>By default, the library is set to <codeph>HIVE_ESRI</codeph>,
enabling the
+ <xref
href="https://github.com/Esri/spatial-framework-for-hadoop/wiki/UDF-Documentation"
scope="external" format="html">Hive ESRI</xref>
+ geospatial functions.
+ </li>
+ <li>If geospatial functionality is not needed, it can be turned off by
setting <codeph>GEOSPATIAL_LIBRARY</codeph> to <codeph>NONE</codeph>.</li>
+ </ul>
+ </p>
+ <p>There are 3 types of ST_* functions:
+ <ul>
+ <li>
+ Regular functions with one argument list and one return type.
+ </li>
+ <li>
+ Generic functions with multiple argument lists and overloads
+ </li>
+ <li>
+ Vararg functions with variable-length argument lists. The maximum
number of arguments for vararg functions is limited to 14.
+ </li>
+ </ul>
+ </p>
+ <p>The list of supported functions:
+ <ul>
+ <li><xref href="#geospatial_functions/st_area">ST_Area</xref></li>
+ <li><xref
href="#geospatial_functions/st_asbinary">ST_AsBinary</xref></li>
+ <li><xref
href="#geospatial_functions/st_asgeojson">ST_AsGeoJson</xref></li>
+ <li><xref href="#geospatial_functions/st_asjson">ST_AsJson</xref></li>
+ <li><xref href="#geospatial_functions/st_asshape">ST_AsShape</xref></li>
+ <li><xref href="#geospatial_functions/st_astext">ST_AsText</xref></li>
+ <li><xref href="#geospatial_functions/st_bin">ST_Bin</xref></li>
+ <li><xref
href="#geospatial_functions/st_binenvelope_point">ST_BinEnvelope</xref></li>
+ <li><xref
href="#geospatial_functions/st_boundary">ST_Boundary</xref></li>
+ <li><xref href="#geospatial_functions/st_buffer">ST_Buffer</xref></li>
+ <li><xref
href="#geospatial_functions/st_centroid">ST_Centroid</xref></li>
+ <li><xref
href="#geospatial_functions/st_contains">ST_Contains</xref></li>
+ <li><xref
href="#geospatial_functions/st_convexhull">ST_ConvexHull</xref></li>
+ <li><xref
href="#geospatial_functions/st_coorddim">ST_CoordDim</xref></li>
+ <li><xref href="#geospatial_functions/st_crosses">ST_Crosses</xref></li>
+ <li><xref
href="#geospatial_functions/st_difference">ST_Difference</xref></li>
+ <li><xref
href="#geospatial_functions/st_dimension">ST_Dimension</xref></li>
+ <li><xref
href="#geospatial_functions/st_disjoint">ST_Disjoint</xref></li>
+ <li><xref
href="#geospatial_functions/st_distance">ST_Distance</xref></li>
+ <li><xref
href="#geospatial_functions/st_endpoint">ST_EndPoint</xref></li>
+ <li><xref
href="#geospatial_functions/st_envelope">ST_Envelope</xref></li>
+ <li><xref
href="#geospatial_functions/st_envintersects">ST_EnvIntersects</xref></li>
+ <li><xref href="#geospatial_functions/st_equals">ST_Equals</xref></li>
+ <li><xref
href="#geospatial_functions/st_exteriorring">ST_ExteriorRing</xref></li>
+ <li><xref
href="#geospatial_functions/st_geodesiclengthwgs84">ST_GeodesicLengthWGS84</xref></li>
+ <li><xref
href="#geospatial_functions/st_geomcollection_wkt">ST_GeomCollection</xref></li>
+ <li><xref
href="#geospatial_functions/st_geometryn">ST_GeometryN</xref></li>
+ <li><xref
href="#geospatial_functions/st_geometrytype">ST_GeometryType</xref></li>
+ <li><xref
href="#geospatial_functions/st_geomfromgeojson">ST_GeomFromGeoJson</xref></li>
+ <li><xref
href="#geospatial_functions/st_geomfromjson">ST_GeomFromJson</xref></li>
+ <li><xref
href="#geospatial_functions/st_geomfromshape">ST_GeomFromShape</xref></li>
+ <li><xref
href="#geospatial_functions/st_geomfromtext">ST_GeomFromText</xref></li>
+ <li><xref
href="#geospatial_functions/st_geomfromwkb">ST_GeomFromWKB</xref></li>
+ <li><xref
href="#geospatial_functions/st_interiorringn">ST_InteriorRingN</xref></li>
+ <li><xref
href="#geospatial_functions/st_intersection">ST_Intersection</xref></li>
+ <li><xref
href="#geospatial_functions/st_intersects">ST_Intersects</xref></li>
+ <li><xref href="#geospatial_functions/st_is3d">ST_Is3D</xref></li>
+ <li><xref
href="#geospatial_functions/st_isclosed">ST_IsClosed</xref></li>
+ <li><xref href="#geospatial_functions/st_isempty">ST_IsEmpty</xref></li>
+ <li><xref
href="#geospatial_functions/st_ismeasured">ST_IsMeasured</xref></li>
+ <li><xref href="#geospatial_functions/st_isring">ST_IsRing</xref></li>
+ <li><xref
href="#geospatial_functions/st_issimple">ST_IsSimple</xref></li>
+ <li><xref href="#geospatial_functions/st_length">ST_Length</xref></li>
+ <li><xref
href="#geospatial_functions/st_linefromwkb">ST_LineFromWKB</xref></li>
+ <li><xref
href="#geospatial_functions/st_linestring">ST_LineString</xref></li>
+ <li><xref href="#geospatial_functions/st_m">ST_M</xref></li>
+ <li><xref href="#geospatial_functions/st_maxm">ST_MaxM</xref></li>
+ <li><xref href="#geospatial_functions/st_maxx">ST_MaxX</xref></li>
+ <li><xref href="#geospatial_functions/st_maxy">ST_MaxY</xref></li>
+ <li><xref href="#geospatial_functions/st_maxz">ST_MaxZ</xref></li>
+ <li><xref href="#geospatial_functions/st_minm">ST_MinM</xref></li>
+ <li><xref href="#geospatial_functions/st_minx">ST_MinX</xref></li>
+ <li><xref href="#geospatial_functions/st_miny">ST_MinY</xref></li>
+ <li><xref href="#geospatial_functions/st_minz">ST_MinZ</xref></li>
+ <li><xref
href="#geospatial_functions/st_mlinefromwkb">ST_MLineFromWKB</xref></li>
+ <li><xref
href="#geospatial_functions/st_mpointfromwkb">ST_MPointFromWKB</xref></li>
+ <li><xref
href="#geospatial_functions/st_mpolyfromwkb">ST_MPolyFromWKB</xref></li>
+ <li><xref
href="#geospatial_functions/st_multilinestring">ST_MultiLineString</xref></li>
+ <li><xref
href="#geospatial_functions/st_multipoint">ST_MultiPoint</xref></li>
+ <li><xref
href="#geospatial_functions/st_multipolygon">ST_MultiPolygon</xref></li>
+ <li><xref
href="#geospatial_functions/st_numgeometries">ST_NumGeometries</xref></li>
+ <li><xref
href="#geospatial_functions/st_numinteriorring">ST_NumInteriorRing</xref></li>
+ <li><xref
href="#geospatial_functions/st_numpoints">ST_NumPoints</xref></li>
+ <li><xref
href="#geospatial_functions/st_overlaps">ST_Overlaps</xref></li>
+ <li><xref href="#geospatial_functions/st_point">ST_Point</xref></li>
+ <li><xref
href="#geospatial_functions/st_pointfromwkb">ST_PointFromWKB</xref></li>
+ <li><xref href="#geospatial_functions/st_pointn">ST_PointN</xref></li>
+ <li><xref href="#geospatial_functions/st_pointz">ST_PointZ</xref></li>
+ <li><xref
href="#geospatial_functions/st_polyfromwkb">ST_PolyFromWKB</xref></li>
+ <li><xref href="#geospatial_functions/st_polygon">ST_Polygon</xref></li>
+ <li><xref href="#geospatial_functions/st_relate">ST_Relate</xref></li>
+ <li><xref href="#geospatial_functions/st_setsrid">ST_SetSRID</xref></li>
+ <li><xref href="#geospatial_functions/st_srid">ST_SRID</xref></li>
+ <li><xref
href="#geospatial_functions/st_startpoint">ST_StartPoint</xref></li>
+ <li><xref
href="#geospatial_functions/st_symmetricdiff">ST_SymmetricDiff</xref></li>
+ <li><xref href="#geospatial_functions/st_touches">ST_Touches</xref></li>
+ <li><xref href="#geospatial_functions/st_union">ST_Union</xref></li>
+ <li><xref href="#geospatial_functions/st_within">ST_Within</xref></li>
+ <li><xref href="#geospatial_functions/st_x">ST_X</xref></li>
+ <li><xref href="#geospatial_functions/st_y">ST_Y</xref></li>
+ <li><xref href="#geospatial_functions/st_z">ST_Z</xref></li>
+ </ul>
+ </p>
+
+ <dl>
+ <!-- ST_Area -->
+ <dlentry id="st_area">
+ <dt>ST_Area(BINARY geometry)</dt>
+ <dd>
+ <p><b>Return type:</b> DOUBLE</p>
+ </dd>
+ </dlentry>
+
+ <!-- ST_AsBinary -->
+ <dlentry id="st_asbinary">
+ <dt>ST_AsBinary(BINARY geometry)</dt>
+ <dd>
+ <p><b>Return type:</b> BINARY</p>
+ </dd>
+ </dlentry>
+
+ <!-- ST_AsGeoJson -->
+ <dlentry id="st_asgeojson">
+ <dt>ST_AsGeoJson(BINARY geometry)</dt>
+ <dd>
+ <p><b>Return type:</b> STRING</p>
+ </dd>
+ </dlentry>
+
+ <!-- ST_AsJson -->
+ <dlentry id="st_asjson">
+ <dt>ST_AsJson(BINARY geometry)</dt>
+ <dd>
+ <p><b>Return type:</b> STRING</p>
+ </dd>
+ </dlentry>
+
+ <!-- ST_AsShape -->
+ <dlentry id="st_asshape">
+ <dt>ST_AsShape(BINARY geometry)</dt>
+ <dd>
+ <p><b>Return type:</b> BINARY</p>
+ </dd>
+ </dlentry>
+ <!-- ST_AsText -->
+ <dlentry id="st_astext">
+ <dt>ST_AsText(BINARY geometry)</dt>
+ <dd>
+ <p><b>Return type:</b> STRING</p>
+ </dd>
+ </dlentry>
+
+ <!-- ST_Bin -->
+ <dlentry id="st_bin">
+ <dt>ST_Bin([BIGINT, DOUBLE] binsize, [BINARY, STRING] point)</dt>
+ <dd>
+ <p><b>Return type:</b> BIGINT</p>
+ </dd>
+ </dlentry>
+
+ <!-- ST_BinEnvelope -->
+ <dlentry id="st_binenvelope_point">
+ <dt>ST_BinEnvelope([BIGINT, DOUBLE] binsize, [BINARY, STRING]
point)</dt>
+ <dd>
+ <p><b>Return type:</b> BINARY</p>
+ </dd>
+ </dlentry>
+
+ <!-- ST_BinEnvelope -->
+ <dlentry id="st_binenvelope_bin_id">
+ <dt>ST_BinEnvelope([BIGINT, DOUBLE] binsize, BIGINT bin_id)</dt>
+ <dd>
+ <p><b>Return type:</b> BINARY</p>
+ </dd>
+ </dlentry>
+
+ <!-- ST_Boundary -->
+ <dlentry id="st_boundary">
+ <dt>ST_Boundary(BINARY geometry)</dt>
+ <dd>
+ <p><b>Return type:</b> BINARY</p>
+ </dd>
+ </dlentry>
+
+ <!-- ST_Buffer -->
+ <dlentry id="st_buffer">
+ <dt>ST_Buffer(BINARY geometry, DOUBLE distance)</dt>
+ <dd>
+ <p><b>Return type:</b> BINARY</p>
+ </dd>
+ </dlentry>
+
+ <!-- ST_Centroid -->
+ <dlentry id="st_centroid">
+ <dt>ST_Centroid(BINARY geometry)</dt>
+ <dd>
+ <p><b>Return type:</b> BINARY</p>
+
+ </dd>
+ </dlentry>
+
+ <!-- ST_Contains -->
+ <dlentry id="st_contains">
+ <dt>ST_Contains([BINARY, STRING] geometry1, [BINARY, STRING]
geometry2)</dt>
+ <dd>
+ <p><b>Return type:</b> BOOLEAN</p>
+ </dd>
+ </dlentry>
+
+ <!-- ST_ConvexHull -->
+ <dlentry id="st_convexhull">
+ <dt>ST_ConvexHull(BINARY geometry...)</dt>
+ <dd>
+ <p><b>Return type:</b> BINARY</p>
+ </dd>
+ </dlentry>
+
+ <!-- ST_CoordDim -->
+ <dlentry id="st_coorddim">
+ <dt>ST_CoordDim(BINARY geometry)</dt>
+ <dd>
+ <p><b>Return type:</b> INT</p>
+ </dd>
+ </dlentry>
+
+ <!-- ST_Crosses -->
+ <dlentry id="st_crosses">
+ <dt>ST_Crosses([BINARY, STRING] geometry1, [BINARY, STRING]
geometry2)</dt>
+ <dd>
+ <p><b>Return type:</b> BOOLEAN</p>
+ </dd>
+ </dlentry>
+
+ <!-- ST_Difference -->
+ <dlentry id="st_difference">
+ <dt>ST_Difference(BINARY geometry1, BINARY geometry2)</dt>
+ <dd>
+ <p><b>Return type:</b> BINARY</p>
+ </dd>
+ </dlentry>
+
+ <!-- ST_Dimension -->
+ <dlentry id="st_dimension">
+ <dt>ST_Dimension(BINARY geometry)</dt>
+ <dd>
+ <p><b>Return type:</b> INT</p>
+ </dd>
+ </dlentry>
+
+ <!-- ST_Disjoint -->
+ <dlentry id="st_disjoint">
+ <dt>ST_Disjoint([BINARY, STRING] geometry1, [BINARY, STRING]
geometry2)</dt>
+ <dd>
+ <p><b>Return type:</b> BOOLEAN</p>
+ </dd>
+ </dlentry>
+
+ <!-- ST_Distance -->
+ <dlentry id="st_distance">
+ <dt>ST_Distance(BINARY geometry1, BINARY geometry2)</dt>
+ <dd>
+ <p><b>Return type:</b> DOUBLE</p>
+ </dd>
+ </dlentry>
+
+ <!-- ST_EndPoint -->
+ <dlentry id="st_endpoint">
+ <dt>ST_EndPoint(BINARY geometry)</dt>
+ <dd>
+ <p><b>Return type:</b> BINARY</p>
+ </dd>
+ </dlentry>
+
+ <!-- ST_Envelope -->
+ <dlentry id="st_envelope">
+ <dt>ST_Envelope(BINARY geometry)</dt>
+ <dd>
+ <p><b>Return type:</b> BINARY</p>
+ </dd>
+ </dlentry>
+
+ <!-- ST_EnvIntersects -->
+ <dlentry id="st_envintersects">
+ <dt>ST_EnvIntersects(BINARY geometry1, BINARY geometry2)</dt>
+ <dd>
+ <p><b>Return type:</b> BOOLEAN</p>
+ </dd>
+ </dlentry>
+
+ <!-- ST_Equals -->
+ <dlentry id="st_equals">
+ <dt>ST_Equals([BINARY, STRING] geometry1, [BINARY, STRING]
geometry2)</dt>
+ <dd>
+ <p><b>Return type:</b> BOOLEAN</p>
+ </dd>
+ </dlentry>
+
+ <!-- ST_ExteriorRing -->
+ <dlentry id="st_exteriorring">
+ <dt>ST_ExteriorRing(BINARY polygon)</dt>
+ <dd>
+ <p><b>Return type:</b> BINARY</p>
+ </dd>
+ </dlentry>
+
+ <!-- ST_GeodesicLengthWGS84 -->
+ <dlentry id="st_geodesiclengthwgs84">
+ <dt>ST_GeodesicLengthWGS84(BINARY geometry)</dt>
+ <dd>
+ <p><b>Return type:</b> DOUBLE</p>
+ </dd>
+ </dlentry>
+
+ <!-- ST_GeomCollection -->
+ <dlentry id="st_geomcollection_wkt">
+ <dt>ST_GeomCollection(STRING wkt)</dt>
+ <dd>
+ <p><b>Return type:</b> BINARY</p>
+ </dd>
+ </dlentry>
+
+ <dlentry id="st_geomcollection_wkt_wkid">
+ <dt>ST_GeomCollection(STRING wkt, INT wkid)</dt>
+ <dd>
+ <p><b>Return type:</b> BINARY</p>
+ </dd>
+ </dlentry>
+
+ <!-- ST_GeometryN -->
+ <dlentry id="st_geometryn">
+ <dt>ST_GeometryN(BINARY geometry, INT n)</dt>
+ <dd>
+ <p><b>Return type:</b> BINARY</p>
+ </dd>
+ </dlentry>
+
+ <!-- ST_GeometryType -->
+ <dlentry id="st_geometrytype">
+ <dt>ST_GeometryType(BINARY geometry)</dt>
+ <dd>
+ <p><b>Return type:</b> STRING</p>
+ </dd>
+ </dlentry>
+
+ <!-- ST_GeomFromGeoJson -->
+ <dlentry id="st_geomfromgeojson">
+ <dt>ST_GeomFromGeoJson(STRING geojson_string)</dt>
+ <dd>
+ <p><b>Return type:</b> BINARY</p>
+ </dd>
+ </dlentry>
+
+ <!-- ST_GeomFromJson -->
+ <dlentry id="st_geomfromjson">
+ <dt>ST_GeomFromJson(STRING json_string)</dt>
+ <dd>
+ <p><b>Return type:</b> BINARY</p>
+ </dd>
+ </dlentry>
+
+ <!-- ST_GeomFromShape -->
+ <dlentry id="st_geomfromshape">
+ <dt>ST_GeomFromShape(BINARY shape)</dt>
+ <dd>
+ <p><b>Return type:</b> BINARY</p>
+ </dd>
+ </dlentry>
+
+ <dlentry id="st_geomfromshape_srid">
+ <dt>ST_GeomFromShape(BINARY shape, INT srid)</dt>
+ <dd>
+ <p><b>Return type:</b> BINARY</p>
+ </dd>
+ </dlentry>
+
+ <!-- ST_GeomFromText -->
+ <dlentry id="st_geomfromtext">
+ <dt>ST_GeomFromText(STRING wkt)</dt>
+ <dd>
+ <p><b>Return type:</b> BINARY</p>
+ </dd>
+ </dlentry>
+
+ <dlentry id="st_geomfromtext_srid">
+ <dt>ST_GeomFromText(STRING wkt, INT srid)</dt>
+ <dd>
+ <p><b>Return type:</b> BINARY</p>
+ </dd>
+ </dlentry>
+
+ <!-- ST_GeomFromWKB -->
+ <dlentry id="st_geomfromwkb">
+ <dt>ST_GeomFromWKB(BINARY wkb)</dt>
+ <dd>
+ <p><b>Return type:</b> BINARY</p>
+ </dd>
+ </dlentry>
+
+ <dlentry id="st_geomfromwkb_srid">
+ <dt>ST_GeomFromWKB(BINARY wkb, INT srid)</dt>
+ <dd>
+ <p><b>Return type:</b> BINARY</p>
+ </dd>
+ </dlentry>
+
+ <!-- ST_InteriorRingN -->
+ <dlentry id="st_interiorringn">
+ <dt>ST_InteriorRingN(BINARY polygon, INT n)</dt>
+ <dd>
+ <p><b>Return type:</b> BINARY</p>
+ </dd>
+ </dlentry>
+
+ <!-- ST_Intersection -->
+ <dlentry id="st_intersection">
+ <dt>ST_Intersection([BINARY, STRING] geometry1, [BINARY, STRING]
geometry2)</dt>
+ <dd>
+ <p><b>Return type:</b> BINARY</p>
+ </dd>
+ </dlentry>
+
+ <!-- ST_Intersects -->
+ <dlentry id="st_intersects">
+ <dt>ST_Intersects([BINARY, STRING] geometry1, [BINARY, STRING]
geometry2)</dt>
+ <dd>
+ <p><b>Return type:</b> BOOLEAN</p>
+ </dd>
+ </dlentry>
+
+ <!-- ST_Is3D -->
+ <dlentry id="st_is3d">
+ <dt>ST_Is3D(BINARY geometry)</dt>
+ <dd>
+ <p><b>Return type:</b> BOOLEAN</p>
+ </dd>
+ </dlentry>
+
+ <!-- ST_IsClosed -->
+ <dlentry id="st_isclosed">
+ <dt>ST_IsClosed(BINARY geometry)</dt>
+ <dd>
+ <p><b>Return type:</b> BOOLEAN</p>
+ </dd>
+ </dlentry>
+
+ <!-- ST_IsEmpty -->
+ <dlentry id="st_isempty">
+ <dt>ST_IsEmpty(BINARY geometry)</dt>
+ <dd>
+ <p><b>Return type:</b> BOOLEAN</p>
+ </dd>
+ </dlentry>
+
+ <!-- ST_IsMeasured -->
+ <dlentry id="st_ismeasured">
+ <dt>ST_IsMeasured(BINARY geometry)</dt>
+ <dd>
+ <p><b>Return type:</b> BOOLEAN</p>
+ </dd>
+ </dlentry>
+
+ <!-- ST_IsRing -->
+ <dlentry id="st_isring">
+ <dt>ST_IsRing(BINARY geometry)</dt>
+ <dd>
+ <p><b>Return type:</b> BOOLEAN</p>
+ </dd>
+ </dlentry>
+
+ <!-- ST_IsSimple -->
+ <dlentry id="st_issimple">
+ <dt>ST_IsSimple(BINARY geometry)</dt>
+ <dd>
+ <p><b>Return type:</b> BOOLEAN</p>
+ </dd>
+ </dlentry>
+
+ <!-- ST_Length -->
+ <dlentry id="st_length">
+ <dt>ST_Length(BINARY geometry)</dt>
+ <dd>
+ <p><b>Return type:</b> DOUBLE</p>
+ </dd>
+ </dlentry>
+
+ <!-- ST_LineFromWKB -->
+ <dlentry id="st_linefromwkb">
+ <dt>ST_LineFromWKB(BINARY wkb)</dt>
+ <dd>
+ <p><b>Return type:</b> BINARY</p>
+ </dd>
+ </dlentry>
+
+ <dlentry id="st_linefromwkb_srid">
+ <dt>ST_LineFromWKB(BINARY wkb, INT srid)</dt>
+ <dd>
+ <p><b>Return type:</b> BINARY</p>
+ </dd>
+ </dlentry>
+
+ <!-- ST_LineString -->
+ <dlentry id="st_linestring">
+ <dt>ST_LineString(DOUBLE point1, DOUBLE point2 [, DOUBLE pointN,
DOUBLE pointM]*)</dt>
+ <dd>
+ <p><b>Return type:</b> BINARY</p>
+ </dd>
+ </dlentry>
+
+ <dlentry id="st_linestring_wkt">
+ <dt>ST_LineString(STRING wkt)</dt>
+ <dd>
+ <p><b>Return type:</b> BINARY</p>
+ </dd>
+ </dlentry>
+
+ <!-- ST_M -->
+ <dlentry id="st_m">
+ <dt>ST_M(BINARY geometry)</dt>
+ <dd>
+ <p><b>Return type:</b> DOUBLE</p>
+ </dd>
+ </dlentry>
+
+ <!-- ST_MaxM -->
+ <dlentry id="st_maxm">
+ <dt>ST_MaxM(BINARY geometry)</dt>
+ <dd>
+ <p><b>Return type:</b> DOUBLE</p>
+ </dd>
+ </dlentry>
+
+ <!-- ST_MaxX -->
+ <dlentry id="st_maxx">
+ <dt>ST_MaxX(BINARY geometry)</dt>
+ <dd>
+ <p><b>Return type:</b> DOUBLE</p>
+ </dd>
+ </dlentry>
+
+ <!-- ST_MaxY -->
+ <dlentry id="st_maxy">
+ <dt>ST_MaxY(BINARY geometry)</dt>
+ <dd>
+ <p><b>Return type:</b> DOUBLE</p>
+ </dd>
+ </dlentry>
+
+ <!-- ST_MaxZ -->
+ <dlentry id="st_maxz">
+ <dt>ST_MaxZ(BINARY geometry)</dt>
+ <dd>
+ <p><b>Return type:</b> DOUBLE</p>
+ </dd>
+ </dlentry>
+
+ <!-- ST_MinM -->
+ <dlentry id="st_minm">
+ <dt>ST_MinM(BINARY geometry)</dt>
+ <dd>
+ <p><b>Return type:</b> DOUBLE</p>
+ </dd>
+ </dlentry>
+
+ <!-- ST_MinX -->
+ <dlentry id="st_minx">
+ <dt>ST_MinX(BINARY geometry)</dt>
+ <dd>
+ <p><b>Return type:</b> DOUBLE</p>
+ </dd>
+ </dlentry>
+
+ <!-- ST_MinY -->
+ <dlentry id="st_miny">
+ <dt>ST_MinY(BINARY geometry)</dt>
+ <dd>
+ <p><b>Return type:</b> DOUBLE</p>
+ </dd>
+ </dlentry>
+
+ <!-- ST_MinZ -->
+ <dlentry id="st_minz">
+ <dt>ST_MinZ(BINARY geometry)</dt>
+ <dd>
+ <p><b>Return type:</b> DOUBLE</p>
+ </dd>
+ </dlentry>
+
+ <!-- ST_MLineFromWKB -->
+ <dlentry id="st_mlinefromwkb">
+ <dt>ST_MLineFromWKB(BINARY wkb)</dt>
+ <dd>
+ <p><b>Return type:</b> BINARY</p>
+ </dd>
+ </dlentry>
+
+ <dlentry id="st_mlinefromwkb_srid">
+ <dt>ST_MLineFromWKB(BINARY wkb, INT srid)</dt>
+ <dd>
+ <p><b>Return type:</b> BINARY</p>
+ </dd>
+ </dlentry>
+
+ <!-- ST_MPointFromWKB -->
+ <dlentry id="st_mpointfromwkb">
+ <dt>ST_MPointFromWKB(BINARY wkb)</dt>
+ <dd>
+ <p><b>Return type:</b> BINARY</p>
+ </dd>
+ </dlentry>
+
+ <dlentry id="st_mpointfromwkb_srid">
+ <dt>ST_MPointFromWKB(BINARY wkb, INT srid)</dt>
+ <dd>
+ <p><b>Return type:</b> BINARY</p>
+ </dd>
+ </dlentry>
+
+ <!-- ST_MPolyFromWKB -->
+ <dlentry id="st_mpolyfromwkb">
+ <dt>ST_MPolyFromWKB(BINARY wkb)</dt>
+ <dd>
+ <p><b>Return type:</b> BINARY</p>
+ </dd>
+ </dlentry>
+
+ <dlentry id="st_mpolyfromwkb_srid">
+ <dt>ST_MPolyFromWKB(BINARY wkb, INT srid)</dt>
+ <dd>
+ <p><b>Return type:</b> BINARY</p>
+ </dd>
+ </dlentry>
+
+ <!-- ST_MultiLineString -->
+ <dlentry id="st_multilinestring">
+ <dt>ST_MultiLineString(STRING wkt)</dt>
+ <dd>
+ <p><b>Return type:</b> BINARY</p>
+ </dd>
+ </dlentry>
+
+ <!-- ST_MultiPoint -->
+ <dlentry id="st_multipoint">
+ <dt>ST_MultiPoint(DOUBLE x1, DOUBLE y1, [, DOUBLE xn, DOUBLE yn])</dt>
+ <dd>
+ <p><b>Return type:</b> BINARY</p>
+ </dd>
+ </dlentry>
+
+ <dlentry id="st_multipoint_wkt">
+ <dt>ST_MultiPoint(STRING wkt)</dt>
+ <dd>
+ <p><b>Return type:</b> BINARY</p>
+ </dd>
+ </dlentry>
+
+ <!-- ST_MultiPolygon -->
+ <dlentry id="st_multipolygon">
+ <dt>ST_MultiPolygon(STRING wkt)</dt>
+ <dd>
+ <p><b>Return type:</b> BINARY</p>
+ </dd>
+ </dlentry>
+
+ <!-- ST_NumGeometries -->
+ <dlentry id="st_numgeometries">
+ <dt>ST_NumGeometries(BINARY geometry)</dt>
+ <dd>
+ <p><b>Return type:</b> INT</p>
+ </dd>
+ </dlentry>
+
+ <!-- ST_NumInteriorRing -->
+ <dlentry id="st_numinteriorring">
+ <dt>ST_NumInteriorRing(BINARY polygon)</dt>
+ <dd>
+ <p><b>Return type:</b> INT</p>
+ </dd>
+ </dlentry>
+
+ <!-- ST_NumPoints -->
+ <dlentry id="st_numpoints">
+ <dt>ST_NumPoints(BINARY linestring)</dt>
+ <dd>
+ <p><b>Return type:</b> INT</p>
+ </dd>
+ </dlentry>
+
+ <!-- ST_Overlaps -->
+ <dlentry id="st_overlaps">
+ <dt>ST_Overlaps([BINARY, STRING] geometry1, [BINARY, STRING]
geometry2)</dt>
+ <dd>
+ <p><b>Return type:</b> BOOLEAN</p>
+ </dd>
+ </dlentry>
+
+ <!-- ST_Point -->
+ <dlentry id="st_point">
+ <dt>ST_Point(DOUBLE x, DOUBLE y [, DOUBLE z [, DOUBLE m]])</dt>
+ <dd>
+ <p><b>Return type:</b> BINARY</p>
+ </dd>
+ </dlentry>
+
+ <!-- ST_PointFromWKB -->
+ <dlentry id="st_pointfromwkb">
+ <dt>ST_PointFromWKB(BINARY wkb)</dt>
+ <dd>
+ <p><b>Return type:</b> BINARY</p>
+ </dd>
+ </dlentry>
+
+ <dlentry id="st_pointfromwkb_srid">
+ <dt>ST_PointFromWKB(BINARY wkb, INT srid)</dt>
+ <dd>
+ <p><b>Return type:</b> BINARY</p>
+ </dd>
+ </dlentry>
+
+ <!-- ST_PointN -->
+ <dlentry id="st_pointn">
+ <dt>ST_PointN(BINARY linestring, INT n)</dt>
+ <dd>
+ <p><b>Return type:</b> BINARY</p>
+ </dd>
+ </dlentry>
+
+ <!-- ST_PointZ -->
+ <dlentry id="st_pointz">
+ <dt>ST_PointZ(DOUBLE x, DOUBLE y, DOUBLE z [, DOUBLE m])</dt>
+ <dd>
+ <p><b>Return type:</b> BINARY</p>
+ </dd>
+ </dlentry>
+
+ <!-- ST_PolyFromWKB -->
+ <dlentry id="st_polyfromwkb">
+ <dt>ST_PolyFromWKB(BINARY wkb, INT srid)</dt>
+ <dd>
+ <p><b>Return type:</b> BINARY</p>
+ </dd>
+ </dlentry>
+
+ <dlentry id="st_polyfromwkb_srid">
+ <dt>ST_PolyFromWKB(BINARY wkb, INT srid)</dt>
+ <dd>
+ <p><b>Return type:</b> BINARY</p>
+ </dd>
+ </dlentry>
+
+ <!-- ST_Relate -->
+ <dlentry id="st_relate">
+ <dt>ST_Relate(BINARY geometry1, BINARY geometry2, STRING pattern)</dt>
+ <dd>
+ <p><b>Return type:</b> BOOLEAN</p>
+ </dd>
+ </dlentry>
+
+ <!-- ST_Polygon -->
+ <dlentry id="st_polygon">
+ <dt>ST_Polygon(DOUBLE x, DOUBLE y, [DOUBLE xn, DOUBLE yn]*)</dt>
+ <dd>
+ <p><b>Return type:</b> BINARY</p>
+ </dd>
+ </dlentry>
+
+ <dlentry id="st_polygon_wkt">
+ <dt>ST_Polygon(STRING wkt)</dt>
+ <dd>
+ <p><b>Return type:</b> BINARY</p>
+ </dd>
+ </dlentry>
+
+ <!-- ST_SetSRID -->
+ <dlentry id="st_setsrid">
+ <dt>ST_SetSRID(BINARY geometry, INT srid)</dt>
+ <dd>
+ <p><b>Return type:</b> BINARY</p>
+ </dd>
+ </dlentry>
+
+ <!-- ST_SRID -->
+ <dlentry id="st_srid">
+ <dt>ST_SRID(BINARY geometry)</dt>
+ <dd>
+ <p><b>Return type:</b> INT</p>
+ </dd>
+ </dlentry>
+
+ <!-- ST_StartPoint -->
+ <dlentry id="st_startpoint">
+ <dt>ST_StartPoint(BINARY linestring)</dt>
+ <dd>
+ <p><b>Return type:</b> BINARY</p>
+ </dd>
+ </dlentry>
+
+ <!-- ST_SymmetricDiff -->
+ <dlentry id="st_symmetricdiff">
+ <dt>ST_SymmetricDiff(BINARY geometry1, BINARY geometry2)</dt>
+ <dd>
+ <p><b>Return type:</b> BINARY</p>
+ </dd>
+ </dlentry>
+
+ <!-- ST_Touches -->
+ <dlentry id="st_touches">
+ <dt>ST_Touches([BINARY, STRING] geometry1, [BINARY, STRING]
geometry2)</dt>
+ <dd>
+ <p><b>Return type:</b> BOOLEAN</p>
+ </dd>
+ </dlentry>
+
+ <!-- ST_Union -->
+ <dlentry id="st_union">
+ <dt>ST_Union(BINARY geometry1, BINARY geometry2)</dt>
+ <dd>
+ <p><b>Return type:</b> BINARY</p>
+ </dd>
+ </dlentry>
+
+ <!-- ST_Within -->
+ <dlentry id="st_within">
+ <dt>ST_Within([BINARY, STRING] geometry1, [BINARY, STRING]
geometry2)</dt>
+ <dd>
+ <p><b>Return type:</b> BOOLEAN</p>
+ </dd>
+ </dlentry>
+
+ <!-- ST_X -->
+ <dlentry id="st_x">
+ <dt>ST_X(BINARY point)</dt>
+ <dd>
+ <p><b>Return type:</b> DOUBLE</p>
+ </dd>
+ </dlentry>
+
+ <!-- ST_Y -->
+ <dlentry id="st_y">
+ <dt>ST_Y(BINARY point)</dt>
+ <dd>
+ <p><b>Return type:</b> DOUBLE</p>
+ </dd>
+ </dlentry>
+
+ <!-- ST_Z -->
+ <dlentry id="st_z">
+ <dt>ST_Z(BINARY point)</dt>
+ <dd>
+ <p><b>Return type:</b> DOUBLE</p>
+ </dd>
+ </dlentry>
+ </dl>
+ </conbody>
+</concept>