<?xml version="1.0" encoding="utf-8"?>\r
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">\r
<!-- ********************************************************************\r
- $Id$\r
- ********************************************************************\r
+ $Id$\r
+ ********************************************************************\r
Copyright 2008, Regina Obe\r
- License: BSD\r
+ License: BSD\r
Purpose: This is an xsl transform that generates index listing of aggregate functions and mm /sql compliant functions xml section from reference_new.xml to then\r
be processed by doc book\r
- ******************************************************************** -->\r
+ ******************************************************************** -->\r
<xsl:output method="xml" indent="yes" encoding="utf-8"/>\r
<xsl:template match='/chapter'>\r
<chapter>\r
- <title>PostGIS Special Functions Index</title> \r
+ <title>PostGIS Special Functions Index</title>\r
<sect1>\r
<title>PostGIS Aggregate Functions</title>\r
<para>The functions given below are spatial aggregate functions provided with PostGIS that can be used just like any other sql aggregate function such as sum, average.</para>\r
<xsl:variable name="refid">\r
<xsl:value-of select="@id" />\r
</xsl:variable>\r
- \r
+\r
<!-- For each function prototype if it takes a geometry set then catalog it as an aggregate function -->\r
<xsl:for-each select="refsynopsisdiv/funcsynopsis/funcprototype">\r
<xsl:choose>\r
</xsl:for-each>\r
</itemizedlist>\r
</sect1>\r
- \r
+\r
<sect1>\r
<title>PostGIS SQL-MM Compliant Functions</title>\r
<para>The functions given below are PostGIS functions that conform to the SQL/MM 3 standard</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 that it implements SQL/MM catalog it -->\r
<xsl:for-each select="refsection">\r
<xsl:for-each select="para">\r
</xsl:for-each>\r
</itemizedlist>\r
</sect1>\r
- \r
+\r
<sect1>\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
<xsl:variable name="refid">\r
<xsl:value-of select="@id" />\r
</xsl:variable>\r
- \r
+\r
<!-- For each section if there is note that it supports 3d catalog it -->\r
<xsl:for-each select="refsection">\r
<xsl:for-each select="para">\r
</xsl:for-each>\r
</itemizedlist>\r
</sect1>\r
- \r
+\r
<sect1>\r
<title>PostGIS Circular String Curve Support Functions</title>\r
<para>The functions given below are PostGIS functions that can use CIRCULARSTRING and CURVEDPOLYGON</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 that it implements Circular String catalog it -->\r
<xsl:for-each select="refsection">\r
<xsl:for-each select="para">\r
</xsl:for-each>\r
</itemizedlist>\r
</sect1>\r
- \r
- <sect1>\r
+\r
+ <sect1 id="NewFunctions">\r
<title>PostGIS Functions new in 1.4</title>\r
<para>The functions given below are PostGIS functions that were introduced in this major release.</para>\r
<itemizedlist>\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:for-each>\r
</itemizedlist>\r
</sect1>\r
+ <sect1 id="NewFunctions_1_3">\r
+ <title>PostGIS Functions new in 1.3</title>\r
+ <para>The functions given below are PostGIS functions that were introduced the 1.3 release.</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
+\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:choose>\r
+ <xsl:when test="contains(.,'Availability: 1.3')">\r
+ <listitem><link linkend="{$refid}"><xsl:value-of select="$refid" /></link> - <xsl:value-of select="$comment" /> <xsl:text> </xsl:text><xsl:value-of select="." /></listitem>\r
+ </xsl:when>\r
+ </xsl:choose>\r
+ </xsl:for-each>\r
+ </xsl:for-each>\r
+ </xsl:for-each>\r
+ </itemizedlist>\r
+ </sect1>\r
</chapter>\r
</xsl:template>\r
\r
<xsl:if test="count(paramdef/parameter) > 0">args: </xsl:if>\r
<xsl:for-each select="paramdef">\r
<xsl:choose>\r
- <xsl:when test="count(parameter) > 0"> \r
+ <xsl:when test="count(parameter) > 0">\r
<xsl:value-of select="parameter" />\r
</xsl:when>\r
</xsl:choose>\r
<xsl:if test="position()<last()"><xsl:text>, </xsl:text></xsl:if>\r
</xsl:for-each>\r
<xsl:if test="count(paramdef/parameter) > 0"> - </xsl:if>\r
- </xsl:for-each> \r
+ </xsl:for-each>\r
</xsl:template>\r
\r
</xsl:stylesheet>\r