(1 row)</programlisting>
</sect2>
- <sect2>
+ <sect2 id="PostGIS_Geography">
<title>PostGIS Geography Type</title>
<para>The geography type provides native support for spatial features represented on "geographic" coordinates (sometimes called "geodetic" coordinates, or "lat/lon", or "lon/lat"). Geographic coordinates are spherical coordinates expressed in angular units (degrees). </para>
<para>The new geography type uses the PostgreSQL 8.3+ typmod definition format so that a table with a geography field
can be added in a single step. All the standard OGC formats except for curves are supported.</para>
-
+
<para>Geography Basics</para>
-
+
<para>The geography type only supports the simplest of simple features. Standard geometry type data will autocast to geography if it is of SRID 4326. You can also use the EWKT and EWKB
</listitem>
<!-- TODO: Add other examples -->
</itemizedlist>
- <para>The new geography fields don't get registered in the geometry_columns. They get registered in a new view called
- geography_columns which is a view against the system catalogs so is always automatically kept up to date without need
+ <para>The new geography fields don't get registered in the geometry_columns. They get registered in a new view called
+ geography_columns which is a view against the system catalogs so is always automatically kept up to date without need
for an AddGeom... like function.</para>
-
+
<para>Now, check the "geography_columns" view and see that your table is listed:</para>
<para><programlisting>SELECT * FROM geography_columns;</programlisting></para>
<para>Using Input/Output Functions</para>
- <para>There are only four intput/output functions at this time supporting the OGC well-known text (WKT) and well-known binary (WKB) formats.
+ <para>There are only four intput/output functions at this time supporting the OGC well-known text (WKT) and well-known binary (WKB) formats.
Adding further output formats (GML, GeoJSON) should be straight-forward, borrowing code from the geometry implementations.</para>
<itemizedlist>
</itemizedlist>\r
</sect1>\r
\r
+ <sect1 id="PostGIS_GeographyFunctions">\r
+ <title>PostGIS Geography Support Functions</title>\r
+ <para>The functions and operators given below are PostGIS functions/operators that take as input or return as output a <link linkend="PostGIS_Geography">geography</link> data type object.</para>\r
+ <itemizedlist>\r
+ <!-- Pull out the purpose section for each ref entry and strip whitespace and put in a variable to be tagged unto each function comment -->\r
+ <xsl:for-each select='sect1/refentry'>\r
+ <xsl:sort select="@id"/>\r
+ <xsl:variable name='comment'>\r
+ <xsl:value-of select="normalize-space(translate(translate(refnamediv/refpurpose,'
', ' '), '	', ' '))"/>\r
+ </xsl:variable>\r
+ <xsl:variable name="refid">\r
+ <xsl:value-of select="@id" />\r
+ </xsl:variable>\r
+ <xsl:variable name="refname">\r
+ <xsl:value-of select="refnamediv/refname" />\r
+ </xsl:variable>\r
+\r
+ <!-- For each proto function accepts or returns a geography -->\r
+ <xsl:for-each select="refsynopsisdiv/funcsynopsis/funcprototype">\r
+ <xsl:choose>\r
+ <xsl:when test="contains(paramdef/type,'geography') or contains(funcdef,'geography')">\r
+ <listitem><link linkend="{$refid}"><xsl:value-of select="$refname" /></link> - <xsl:value-of select="$comment" /></listitem>\r
+ </xsl:when>\r
+ </xsl:choose>\r
+ </xsl:for-each>\r
+ </xsl:for-each>\r
+ </itemizedlist>\r
+ </sect1>\r
+\r
<sect1 id="PostGIS_3D_Functions">\r
<title>PostGIS Functions that support 3D</title>\r
<para>The functions given below are PostGIS functions that do not throw away the Z-Index.</para>\r
</itemizedlist>\r
</sect1>\r
\r
+\r
+\r
<sect1 id="NewFunctions">\r
<title>New PostGIS Functions</title>\r
<sect2 id="NewFunctions_1_5">\r
<xsl:variable name="refid">\r
<xsl:value-of select="@id" />\r
</xsl:variable>\r
- \r
+\r
<!-- For each section if there is note about availability in this version -->\r
<xsl:for-each select="refsection">\r
<xsl:for-each select="para">\r
<xsl:variable name="refid">\r
<xsl:value-of select="@id" />\r
</xsl:variable>\r
- \r
+\r
<!-- For each section if there is note about availability in this version -->\r
<xsl:for-each select="refsection">\r
<xsl:for-each select="para|note">\r