[postgis-tickets] [SCM] PostGIS branch master updated. 3.3.0rc2-923-ga4f354398

git at osgeo.org git at osgeo.org
Wed May 24 14:11:22 PDT 2023


This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "PostGIS".

The branch, master has been updated
       via  a4f354398e52ad7ed3564c47773701e4b6b87ae8 (commit)
      from  9d9c7290406ecfe5e2368813ca945185679fe983 (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
commit a4f354398e52ad7ed3564c47773701e4b6b87ae8
Author: Paul Ramsey <pramsey at cleverelephant.ca>
Date:   Wed May 24 14:10:44 2023 -0700

    Remove old FAQ sections and Building Apps sections, which
    were mostly full of old or duplicate information.

diff --git a/doc/Makefile.in b/doc/Makefile.in
index 9827194a2..047a91104 100644
--- a/doc/Makefile.in
+++ b/doc/Makefile.in
@@ -122,8 +122,6 @@ XML_SOURCES = \
 	extras_tigergeocoder.xml \
 	extras_topology.xml \
 	extras.xml \
-	faq_raster.xml \
-	faq.xml \
 	installation.xml \
 	administration.xml \
 	database_tuning.xml \
@@ -160,7 +158,6 @@ XML_SOURCES = \
 	reference.xml \
 	release_notes.xml \
 	reporting.xml \
-	using_postgis_app.xml \
 	using_postgis_dataman.xml \
 	using_postgis_query.xml \
 	using_raster_dataman.xml
diff --git a/doc/faq.xml b/doc/faq.xml
deleted file mode 100644
index 0d0182902..000000000
--- a/doc/faq.xml
+++ /dev/null
@@ -1,448 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<chapter id="PostGIS_FAQ">
-  <title>PostGIS Frequently Asked Questions</title>
-
-  <qandaset>
-	<qandaentry id="faq_where_tutorials">
-      <question>
-        <para>Where can I find tutorials, guides and workshops on working with PostGIS</para>
-      </question>
-
-      <answer>
-        <para>A step by step tutorial guide workshop <ulink url="http://postgis.net/workshops/postgis-intro/">Introduction to PostGIS</ulink>.  It includes packaged data as well as intro to working with OpenGeo Suite. It is probably the best tutorial on PostGIS.</para>
-        <para>BostonGIS also has a <ulink url="http://www.bostongis.com/PrinterFriendly.aspx?content_name=postgis_tut01">PostGIS almost idiot's guide on getting started</ulink>. That one is more focused on the windows user.</para>
-      </answer>
-    </qandaentry>
-     <qandaentry id="legacy_faq">
-      <question>
-        <para>My applications and desktop tools worked with PostGIS 1.5,but they don't work with PostGIS 2.0.  How do I fix this?</para>
-      </question>
-
-      <answer>
-        <para>A lot of deprecated functions were removed from the PostGIS code base in PostGIS 2.0.  This has affected applications in addition to third-party tools such as
-            Geoserver, MapServer, QuantumGIS, and OpenJump to name a few.  There are a couple of ways to resolve this. For the third-party apps, you can try to upgrade to the latest versions
-                of these which have many of these issues fixed.  For your own code, you can change your code to not use the functions removed.  Most of these functions are non ST_ aliases of ST_Union, ST_Length etc.
-               and as a last resort, install the whole of <varname>legacy.sql</varname> or just the
-                portions of <varname>legacy.sql</varname> you need.</para>
-
-         <para>The <varname>legacy.sql</varname> file is located in the same folder as postgis.sql.  You can install this file after you have installed postgis.sql and spatial_ref_sys.sql
-            to get back all the 200 some-odd old functions we removed.</para>
-      </answer>
-    </qandaentry>
-
-    <qandaentry id="legacy_faq_gist">
-      <question>
-        <para>When I load OpenStreetMap data with osm2pgsql, I'm getting an error
-    failed: ERROR:  operator class "gist_geometry_ops" does not exist for access method "gist" Error occurred.  This worked fine in PostGIS 1.5.</para>
-      </question>
-
-      <answer>
-        <para>In PostGIS 2, the default geometry operator class gist_geometry_ops was changed to gist_geometry_ops_2d and the gist_geometry_ops was completely removed. This was done because PostGIS 2 also introduced Nd spatial indexes for 3D support and the old name was deemed confusing and a misnomer.</para>
-        <para>Some older applications that as part of the process create tables and indexes, explicitly referenced the operator class name.  This was unnecessary if you want the default 2D index.  So if you manage said good, change index creation from:</para>
-        <para>BAD:</para>
-        <programlisting>CREATE INDEX idx_my_table_geom ON my_table USING gist(geom gist_geometry_ops);</programlisting>
-        <para>To GOOD:</para>
-         <programlisting>CREATE INDEX idx_my_table_geom ON my_table USING gist(geom);</programlisting>
-
-         <para>The only case where you WILL need to specify the operator class is if you want a 3D spatial index as follows:</para>
-         <programlisting>CREATE INDEX idx_my_super3d_geom ON my_super3d USING gist(geom gist_geometry_ops_nd);</programlisting>
-
-         <para>If you are unfortunate to be stuck with compiled code you can't change that has the old gist_geometry_ops hard-coded, then you can create the old class using the <filename>legacy_gist.sql</filename> packaged in PostGIS 2.0.2+. However if you use this fix, you are advised to at a later point drop the index and recreate it without the operator class.  This will save you grief in the future when you need to upgrade again.</para>
-      </answer>
-    </qandaentry>
-
-    <qandaentry id="legacy_faq_read_view">
-      <question>
-        <para>I'm running PostgreSQL 9.0 and I can no longer read/view geometries in OpenJump, Safe FME, and some other tools?</para>
-      </question>
-
-      <answer>
-        <para>In PostgreSQL 9.0+, the default encoding for bytea data has been changed to hex and older JDBC drivers still assume escape format. This has affected some applications
-        such as Java applications using older JDBC drivers or .NET applications that use the older npgsql driver
-	that expect the old behavior of ST_AsBinary.  There are two approaches to getting this to work again.</para>
-
-        <para>You can upgrade your JDBC driver to the latest PostgreSQL 9.0 version which you can get from
-            <ulink url="http://jdbc.postgresql.org/download.html">http://jdbc.postgresql.org/download.html</ulink></para>
-        <para>If you are running a .NET app, you can use Npgsql 2.0.11 or higher which you can download from
-	<ulink url="http://pgfoundry.org/frs/?group_id=1000140">http://pgfoundry.org/frs/?group_id=1000140</ulink> and
-        as described on <ulink url="http://fxjr.blogspot.com/2010/11/npgsql-2011-released.html">Francisco Figueiredo's NpgSQL 2.0.11 released blog entry</ulink></para>
-
-        <para>If upgrading your PostgreSQL driver is not an option, then you can set the default back to the old behavior  with the following change:</para>
-        <programlisting>ALTER DATABASE mypostgisdb SET bytea_output='escape';</programlisting>
-
-      </answer>
-    </qandaentry>
-
-    <qandaentry id="pgadmin_shows_no_data_in_geom">
-      <question>
-        <para>I tried to use PgAdmin to view my geometry column and it is blank, what gives?</para>
-      </question>
-
-      <answer>
-        <para>PgAdmin doesn't show anything for large geometries.  The best ways to verify you do have data in your geometry columns are?</para>
-
-
-        <programlisting>-- this should return no records if all your geom fields are filled in
-SELECT somefield FROM mytable WHERE geom IS NULL;</programlisting>
-
-        <programlisting>-- To tell just how large your geometry is do a query of the form
---which will tell you the most number of points you have in any of your geometry columns
-SELECT MAX(ST_NPoints(geom)) FROM sometable;</programlisting>
-      </answer>
-    </qandaentry>
-
-    <qandaentry>
-      <question>
-        <para>What kind of geometric objects can I store?</para>
-      </question>
-
-      <answer>
-        <para>You can store Point, LineString, Polygon, MultiPoint, MultiLineString,
-        MultiPolygon, and GeometryCollection geometries. In PostGIS 2.0 and above you can also store TINS and Polyhedral Surfaces in the basic geometry type.
-        These are specified in the Open
-        GIS Well Known Text Format (with Z, M, and ZM extensions).  There are three data types currently supported.
-		The standard OGC geometry data type which uses a planar coordinate system for measurement, the
-		geography data type which uses a geodetic coordinate system, with calculations on either a sphere or spheroid.
-		The newest family member of the PostGIS spatial type family is raster for storing and analyzing raster data. Raster has its very own FAQ. Refer to <xref linkend="RT_FAQ"/>
-		and <xref linkend="RT_reference" /> for more details.</para>
-      </answer>
-    </qandaentry>
-
-    <qandaentry>
-      <question>
-        <para>I'm all confused.  Which data store should I use geometry or geography?</para>
-      </question>
-
-      <answer>
-        <para>Short Answer: geography is a newer data type that supports long range distances measurements, but most computations on it are
-        slower than they are on geometry.  If
-		 you use geography, you don't need to learn much about planar coordinate systems. Geography is generally best
-		 if all you care about is measuring distances and lengths and you have data from all over the world.
-		 Geometry data type is an older data type that has many more functions supporting it, enjoys greater support from third party tools,
-		 and operations on it are generally faster -- sometimes as much as 10 fold faster for larger geometries.
-		 Geometry is best if you are pretty comfortable with spatial reference systems or you are dealing with localized data
-		  where all your data fits in a single <link linkend="spatial_ref_sys">spatial reference system (SRID)</link>, or you need to do a lot of spatial processing.
-		  Note: It is fairly easy to do one-off conversions between the two types to gain the benefits of each.
-		  Refer to <xref linkend="PostGIS_TypeFunctionMatrix" /> to see what is currently supported and what is not.
-		 </para>
-		 <para>
-			Long Answer: Refer to our more lengthy discussion in the <xref linkend="PostGIS_GeographyVSGeometry" /> and <link linkend="PostGIS_TypeFunctionMatrix">function type matrix</link>.
-		 </para>
-      </answer>
-    </qandaentry>
-
-    <qandaentry>
-      <question>
-        <para>I have more intense questions about geography, such as how big of a geographic region can I stuff in a geography column and
-			still get reasonable answers.  Are there limitations such as poles, everything in the field must fit in a hemisphere (like SQL Server 2008 has), speed etc?</para>
-      </question>
-      <answer>
-        <para>Your questions are too deep and complex to be adequately answered in this section. Please refer to our
-			<xref linkend="PostGIS_Geography_AdvancedFAQ" />.</para>
-      </answer>
-    </qandaentry>
-
-    <qandaentry id="faq_how_to_define_geometry_table">
-      <question>
-        <para>How do I insert a GIS object into the database?</para>
-      </question>
-
-      <answer>
-        <para>First, you need to create a table with a column of type
-        "geometry" or "geography" to hold your GIS data.
-		Storing geography type data is a little different than storing geometry.  Refer
-		to <xref linkend="PostGIS_Geography" /> for details on storing geography. </para>
-		<para>
-		For geometry: Connect to your database with
-        <filename>psql</filename> and try the following SQL:</para>
-
-        <programlisting>CREATE TABLE gtest (id serial primary key, name varchar(20), geom geometry(LINESTRING));</programlisting>
-
-        <para>If the geometry column definition fails, you probably have not
-        loaded the PostGIS functions and objects into this database or are using a pre-2.0 version of PostGIS. See the
-        <xref linkend="PGInstall" />.</para>
-
-        <para>Then, you can insert a geometry into the table using a SQL
-        insert statement. The GIS object itself is formatted using the OpenGIS
-        Consortium "well-known text" format:</para>
-
-        <programlisting>INSERT INTO gtest (ID, NAME, GEOM)
-VALUES (
-  1,
-  'First Geometry',
-  ST_GeomFromText('LINESTRING(2 3,4 5,6 5,7 8)')
-);</programlisting>
-
-        <para>For more information about other GIS objects, see the <link
-        linkend="RefObject">object reference</link>.</para>
-
-        <para>To view your GIS data in the table:</para>
-
-        <programlisting>SELECT id, name, ST_AsText(geom) AS geom FROM gtest;</programlisting>
-
-        <para>The return value should look something like this:</para>
-
-        <programlisting> id | name           | geom
-----+----------------+-----------------------------
-  1 | First Geometry | LINESTRING(2 3,4 5,6 5,7 8)
-(1 row)</programlisting>
-      </answer>
-    </qandaentry>
-
-    <qandaentry>
-      <question>
-        <para>How do I construct a spatial query?</para>
-      </question>
-
-      <answer>
-        <para>The same way you construct any other database query, as an SQL
-        combination of return values, functions, and boolean tests.</para>
-
-        <para>For spatial queries, there are two issues that are important to
-        keep in mind while constructing your query: is there a spatial index
-        you can make use of; and, are you doing expensive calculations on a
-        large number of geometries.</para>
-
-        <para>In general, you will want to use the "intersects operator"
-        (&&) which tests whether the bounding boxes of features
-        intersect. The reason the && operator is useful is because if
-        a spatial index is available to speed up the test, the &&
-        operator will make use of this. This can make queries much much
-        faster.</para>
-
-        <para>You will also make use of spatial functions, such as Distance(),
-        ST_Intersects(), ST_Contains() and ST_Within(), among others, to
-        narrow down the results of your search. Most spatial queries include
-        both an indexed test and a spatial function test. The index test
-        serves to limit the number of return tuples to only tuples that
-        <emphasis>might</emphasis> meet the condition of interest. The spatial
-        functions are then use to test the condition exactly.</para>
-
-        <programlisting>SELECT id, geom
-FROM thetable
-WHERE
-  ST_Contains(geom,'POLYGON((0 0, 0 10, 10 10, 10 0, 0 0))');</programlisting>
-      </answer>
-    </qandaentry>
-
-    <qandaentry>
-      <question>
-        <para>How do I speed up spatial queries on large tables?</para>
-      </question>
-
-      <answer>
-        <para>Fast queries on large tables is the <emphasis>raison
-        d'etre</emphasis> of spatial databases (along with transaction
-        support) so having a good index is important.</para>
-
-        <para>To build a spatial index on a table with a
-        <varname>geometry</varname> column, use the "CREATE INDEX" function as
-        follows:</para>
-
-        <programlisting>CREATE INDEX [indexname] ON [tablename] USING GIST ( [geometrycolumn] );</programlisting>
-
-        <para>The "USING GIST" option tells the server to use a GiST
-        (Generalized Search Tree) index.</para>
-
-        <note>
-          <para>GiST indexes are assumed to be lossy. Lossy indexes uses a
-          proxy object (in the spatial case, a bounding box) for building the
-          index.</para>
-        </note>
-
-        <para>You should also ensure that the PostgreSQL query planner has
-        enough information about your index to make rational decisions about
-        when to use it. To do this, you have to "gather statistics" on your
-        geometry tables.</para>
-
-        <para>For PostgreSQL 8.0.x and greater, just run the <command>VACUUM
-        ANALYZE</command> command.</para>
-
-        <para>For PostgreSQL 7.4.x and below, run the <command>SELECT
-        UPDATE_GEOMETRY_STATS()</command> command.</para>
-      </answer>
-    </qandaentry>
-
-    <qandaentry>
-      <question>
-        <para>Why aren't PostgreSQL R-Tree indexes supported?</para>
-      </question>
-
-      <answer>
-        <para>Early versions of PostGIS used the PostgreSQL R-Tree indexes.
-        However, PostgreSQL R-Trees have been completely discarded since
-        version 0.6, and spatial indexing is provided with an R-Tree-over-GiST
-        scheme.</para>
-
-        <para>Our tests have shown search speed for native R-Tree and GiST to
-        be comparable. Native PostgreSQL R-Trees have two limitations which
-        make them undesirable for use with GIS features (note that these
-        limitations are due to the current PostgreSQL native R-Tree
-        implementation, not the R-Tree concept in general):</para>
-
-        <itemizedlist>
-          <listitem>
-            <para>R-Tree indexes in PostgreSQL cannot handle features which
-            are larger than 8K in size. GiST indexes can, using the "lossy"
-            trick of substituting the bounding box for the feature
-            itself.</para>
-          </listitem>
-
-          <listitem>
-            <para>R-Tree indexes in PostgreSQL are not "null safe", so
-            building an index on a geometry column which contains null
-            geometries will fail.</para>
-          </listitem>
-        </itemizedlist>
-      </answer>
-    </qandaentry>
-
-    <qandaentry>
-      <question>
-        <para>Why should I use the <varname>AddGeometryColumn()</varname>
-        function and all the other OpenGIS stuff?</para>
-      </question>
-
-      <answer>
-        <para>If you do not want to use the OpenGIS support functions, you do
-        not have to. Simply create tables as in older versions, defining your
-        geometry columns in the CREATE statement. All your geometries will
-        have SRIDs of -1, and the OpenGIS meta-data tables will
-        <emphasis>not</emphasis> be filled in properly. However, this will
-        cause most applications based on PostGIS to fail, and it is generally
-        suggested that you do use <varname>AddGeometryColumn()</varname> to
-        create geometry tables.</para>
-
-        <para>MapServer is one application which makes use of the
-        <varname>geometry_columns</varname> meta-data. Specifically, MapServer
-        can use the SRID of the geometry column to do on-the-fly reprojection
-        of features into the correct map projection.</para>
-      </answer>
-    </qandaentry>
-
-    <qandaentry>
-      <question>
-        <para>What is the best way to find all objects within a radius of
-        another object?</para>
-      </question>
-
-      <answer>
-        <para>To use the database most efficiently, it is best to do radius
-        queries which combine the radius test with a bounding box test: the
-        bounding box test uses the spatial index, giving fast access to a
-        subset of data which the radius test is then applied to.</para>
-
-        <para>The <varname>ST_DWithin(geometry, geometry, distance)</varname>
-        function is a handy way of performing an indexed distance search. It
-        works by creating a search rectangle large enough to enclose the
-        distance radius, then performing an exact distance search on the
-        indexed subset of results.</para>
-
-        <para>For example, to find all objects with 100 meters of POINT(1000
-        1000) the following query would work well:</para>
-
-        <programlisting>SELECT * FROM geotable
-WHERE ST_DWithin(geocolumn, 'POINT(1000 1000)', 100.0);</programlisting>
-      </answer>
-    </qandaentry>
-
-    <qandaentry>
-      <question>
-        <para>How do I perform a coordinate reprojection as part of a
-        query?</para>
-      </question>
-
-      <answer>
-        <para>To perform a reprojection, both the source and destination
-        coordinate systems must be defined in the SPATIAL_REF_SYS table, and
-        the geometries being reprojected must already have an SRID set on
-        them. Once that is done, a reprojection is as simple as referring to
-        the desired destination SRID. The below projects a geometry to NAD 83 long lat.
-		The below will only work if the srid of geom is not -1 (not undefined spatial ref)</para>
-
-        <programlisting>SELECT ST_Transform(geom,4269) FROM geotable;</programlisting>
-      </answer>
-    </qandaentry>
-
-	<qandaentry>
-      <question>
-        <para>I did an ST_AsEWKT and ST_AsText on my rather large geometry and it returned blank field.  What gives?</para>
-      </question>
-
-      <answer>
-        <para>You are probably using PgAdmin or some other tool that doesn't output large text.  If your geometry is big
-			enough, it will appear blank in these tools. Use PSQL if you really need to see it or output it in WKT.</para>
-
-        <programlisting>
-				--To check number of geometries are really blank
-				SELECT count(gid) FROM geotable WHERE geom IS NULL;</programlisting>
-      </answer>
-    </qandaentry>
-
-	<qandaentry>
-      <question>
-        <para>When I do an ST_Intersects, it says my two geometries don't intersect when I KNOW THEY DO. What gives?</para>
-      </question>
-
-      <answer>
-        <para>This generally happens in two common cases.  Your geometry is invalid -- check <xref linkend="ST_IsValid" />
-			or you are assuming they intersect because ST_AsText truncates the numbers and you have lots of decimals after
-				it is not showing you.</para>
-      </answer>
-    </qandaentry>
-
-	<qandaentry id="license_faq">
-      <question>
-        <para>I am releasing software that uses PostGIS, does that mean my software has to be licensed using the GPL like PostGIS? Will I have to publish all my code if I use PostGIS?</para>
-      </question>
-
-      <answer>
-        <para>Almost certainly not. As an example, consider Oracle database running on Linux. Linux is GPL, Oracle is not: does Oracle running on Linux have to be distributed using the GPL? No. Similarly your software can use a PostgreSQL/PostGIS database as much as it wants and be under any license you like.</para>
-				<para>The only exception would be if you made changes to the PostGIS source code, and <emphasis>distributed your changed version</emphasis> of PostGIS. In that case you would have to share the code of your changed PostGIS (but not the code of applications running on top of it). Even in this limited case, you would still only have to distribute source code to people you distributed binaries to. The GPL does not require that you <emphasis>publish</emphasis> your source code, only that you share it with people you give binaries to.</para>
-        <para>The above remains true even if you use PostGIS in conjunction with the optional CGAL-enabled functions. Portions of CGAL are GPL, but so is all of PostGIS already: using CGAL does not make PostGIS any more GPL than it was to start with.</para>
-      </answer>
-    </qandaentry>
-
-	<qandaentry id="overlay_inconsistent">
-      <question>
-        <para>Why are the results of overlay operations and spatial predicates sometimes inconsistent?</para>
-      </question>
-
-      <answer>
-        <para>This is usually presented as a specific case, such as
-            </para>
-        <itemizedlist>
-            <listitem>
-            <para>Why is <varname>ST_Contains( A, ST_Intersection(A, B) )</varname> false ?</para>
-            </listitem>
-            <listitem>
-            <para>Why is <varname>ST_Contains( ST_Union(A, B), A ) )</varname> false ?</para>
-            </listitem>
-            <listitem>
-            <para>Why is <varname>ST_Union( A, ST_Difference(A, B) )</varname> not equal to A ?</para>
-            </listitem>
-            <listitem>
-            <para>Why does <varname>ST_Difference(A, B)</varname> intersect the interior of <varname>B</varname> ?</para>
-            </listitem>
-        </itemizedlist>
-
-		<para>The reason is that PostGIS represents geometry and performs operations using finite-precision floating-point numbers.
-        This provides the illusion of computing using real numbers - but it's only an illusion.
-        Inevitably, small inaccuracies occur, which cause results of different operations to be slightly inconsistent.
-            </para>
-
-        <para>Furthermore, PostGIS operations contain error-prevention code which may perturb
-        input geometries by tiny amounts in order to prevent robustness errors from occurring.
-        These minor alterations also may produce computed results which are not fully consistent.
-            </para>
-
-        <para>The discrepancy between results should always be very small.
-        But queries should not rely on exact consistency when comparing overlay results.
-        Instead, consider using an area or distance-based tolerance in geometric comparisons.
-            </para>
-      </answer>
-    </qandaentry>
-
-  </qandaset>
-
-</chapter>
diff --git a/doc/faq_raster.xml b/doc/faq_raster.xml
deleted file mode 100644
index 68f90b3c2..000000000
--- a/doc/faq_raster.xml
+++ /dev/null
@@ -1,277 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<chapter id="RT_FAQ">
-  <title>PostGIS Raster Frequently Asked Questions</title>
-
-  <qandaset>
-    <qandaentry>
-      <question>
-        <para>Where can I find out more about the PostGIS Raster Project?</para>
-      </question>
-
-      <answer>
-        <para>Refer to the <ulink url="http://trac.osgeo.org/postgis/wiki/WKTRaster">PostGIS Raster home page</ulink>.</para>
-      </answer>
-    </qandaentry>
-
-    <qandaentry>
-      <question>
-        <para>Are there any books or tutorials to get me started with this wonderful invention?</para>
-      </question>
-
-      <answer>
-        <para>There is a full length beginner tutorial <ulink url="http://trac.osgeo.org/postgis/wiki/WKTRasterTutorial01"> Intersecting vector buffers with large raster coverage using PostGIS Raster</ulink>.
-        Jorge has a series of blog articles on PostGIS Raster that demonstrate how to load raster data as well as cross compare to same tasks in Oracle GeoRaster. Check out:
-            <ulink url="http://gis4free.wordpress.com/category/postgis-raster/">Jorge's PostGIS Raster / Oracle GeoRaster Series</ulink>.
-            There is a whole chapter (more than 35 pages of content) dedicated to PostGIS Raster with free code and data downloads at <ulink url="https://www.manning.com/books/postgis-in-action-third-edition">PostGIS in Action - Raster chapter. Also covered in second edition.</ulink>.
-        You can <ulink url="http://www.postgis.us/page_buy_book">buy PostGIS in Action</ulink> now from Manning in hard-copy (significant discounts for bulk purchases) or just the E-book format.
-        You can also buy from Amazon and various other book distributors. All hard-copy books come with a free coupon to download the E-book version.
-        </para>
-        <para>Here is a review from a PostGIS Raster user <ulink url="http://fuzzytolerance.info/blog/2010/10/26/2010-10-26-postgis-raster-ftw/">PostGIS raster applied to land classification urban forestry</ulink></para>
-      </answer>
-
-    </qandaentry>
-
-	<qandaentry>
-      <question>
-        <para>How do I install Raster support in my PostGIS database?</para>
-      </question>
-
-      <answer>
-        <para>PostGIS Raster is part of the PostGIS codebase and generally available with most PostGIS binary distributions.  Starting with PostGIS 3.0, PostGIS raster is now a separate extension and requires:  `CREATE EXTENSION postgis_raster;` to enable it in your database. If you are compiling your own PostGIS, you will need to compile with GDAL otherwise postgis_raster extension will not be built.</para>
-        <para>Refer to <ulink url="http://postgis.net/install/">Download PostGIS binaries</ulink> for popular distributions of PostGIS that include raster support.</para>
-      </answer>
-    </qandaentry>
-
-	<qandaentry>
-      <question>
-        <para>How do I load Raster data into PostGIS?</para>
-      </question>
-
-      <answer>
-        <para>The latest version of PostGIS comes packaged with a <varname>raster2pgsql</varname> raster loader executable capable of loading many kinds of rasters and also generating lower resolution overviews without any additional software. Please refer to <xref linkend="RT_Raster_Loader" /> for more details.</para>
-      </answer>
-    </qandaentry>
-
-    <qandaentry>
-      <question>
-        <para>What kind of raster file formats can I load into my database?</para>
-      </question>
-
-      <answer>
-        <para>Any that your GDAL library supports. GDAL supported formats are documented <ulink url="http://www.gdal.org/formats_list.html">GDAL File Formats</ulink>.</para>
-		<para>Your particular GDAL install may not support all formats.  To verify the ones supported by your particular GDAL install, you can use</para>
-		<programlisting>raster2pgsql -G</programlisting>
-      </answer>
-    </qandaentry>
-
-    <qandaentry>
-      <question>
-        <para>Can I export my PostGIS raster data to other raster formats?</para>
-      </question>
-
-      <answer>
-        <para>Yes</para>
-        <para>PostGIS raster has a function <xref linkend="RT_ST_AsGDALRaster" /> that will allow you to use SQL to export to any raster format supported by your GDAL.  You can get a list of these using the <xref linkend="RT_ST_GDALDrivers" /> SQL function.</para>
-		<para>You can also use GDAL commandline tools to export PostGIS raster to other formats. GDAL has a PostGIS raster driver, but is only compiled in if you choose to compile with PostgreSQL support. </para>
-		<para>The driver currently doesn't support irregularly blocked rasters,
-		although you can store irregularly blocked rasters in PostGIS raster data type.</para>
-		<para>If you are compiling from source, you need to include in your configure
-		 <programlisting>--with-pg=path/to/pg_config</programlisting>  to enable the driver.
-		 Refer to <ulink url="http://trac.osgeo.org/gdal/wiki/BuildHints">GDAL Build Hints</ulink> for tips
-		 on building GDAL against in various OS platforms.
-		 </para>
-		 <para>If your version of GDAL is compiled with the PostGIS Raster driver
-		 you should see PostGIS Raster in list when you do
-		 <programlisting>gdalinfo --formats</programlisting></para>
-
-		 <para>To get a summary about your raster via GDAL use gdalinfo:
-		 <programlisting>gdalinfo  "PG:host=localhost port=5432 dbname='mygisdb' user='postgres' password='whatever' schema='someschema' table=sometable"</programlisting>
-		 </para>
-
-		 <para>To export data to other raster formats,
-			use gdal_translate the below will export all data from a table to a PNG file at 10% size.</para>
-		 <para>Depending on your pixel band types, some translations may not work if the export format does not support that Pixel type.
-		 For example floating point band types and 32 bit unsigned ints
-			will not translate easily to JPG or some others.</para>
-		 <para>Here is an example simple translation</para>
-		  <programlisting>gdal_translate -of PNG -outsize 10% 10% "PG:host=localhost port=5432 dbname='mygisdb' user='postgres' password='whatever' schema='someschema' table=sometable" C:\somefile.png</programlisting>
-		 <para>You can also use SQL where clauses in your export using the where=... in your driver connection string.
-			Below are some using a where clause</para>
-		 <programlisting>gdal_translate -of PNG -outsize 10% 10% "PG:host=localhost port=5432 dbname='mygisdb' user='postgres' password='whatever' schema='someschema' table=sometable where='filename=\'abcd.sid\''" " C:\somefile.png</programlisting>
-		 <programlisting>gdal_translate -of PNG -outsize 10% 10% "PG:host=localhost port=5432 dbname='mygisdb' user='postgres' password='whatever' schema='someschema' table=sometable where='ST_Intersects(rast, ST_SetSRID(ST_Point(-71.032,42.3793),4326) )' " C:\intersectregion.png</programlisting>
-		 <para>To see more examples and syntax refer to <ulink url="https://gdal.org/drivers/raster/postgisraster.html">Reading Raster Data of PostGIS Raster section</ulink></para>
-      </answer>
-    </qandaentry>
-
-    <qandaentry>
-	<question><para>Are their binaries of GDAL available already compiled with PostGIS Raster suppport?</para></question>
-	<answer>
-		<para>Yes. Check out the page <ulink url="https://gdal.org/download.html#binaries">GDAL Binaries</ulink> page.  Any compiled with PostgreSQL
-		support should have PostGIS Raster in them. GDAL tools is also generally included as part of <ulink url="https://qgis.org">QGIS</ulink>.</para>
-		<para>If you want to get the latest nightly build for Windows -- then check out
-		 the Tamas Szekeres  nightly builds built with Visual Studio which contain GDAL trunk, Python Bindings and MapServer executables and PostGIS Raster driver built-in.  Just
-         click the SDK bat and run your commands from there.  <ulink url="www.gisinternals.com">http://www.gisinternals.com</ulink>.
-			Also available are VS project files.</para>
-	</answer>
-    </qandaentry>
-
-    <qandaentry>
-      <question>
-        <para>What tools can I use to view PostGIS raster data?</para>
-      </question>
-
-      <answer>
-        <para>You can use <ulink url="https://mapserver.org/">MapServer</ulink> compiled with GDAL to view Raster data. QGIS supports viewing of PostGIS Raster if you
-        have PostGIS raster driver installed.</para>
-        <para>In theory any tool that renders data using GDAL can support PostGIS raster data or
-            support it with fairly minimal effort. Again for Windows, Tamas' binaries (includes Mapserver) <ulink url="www.gisinternals.com">http://www.gisinternals.com</ulink> are a good choice for windows users if you don't want the hassle of having to setup to compile your own.</para>
-      </answer>
-    </qandaentry>
-
-    <qandaentry>
-      <question>
-        <para>How can I add a PostGIS raster layer to my MapServer map?</para>
-      </question>
-
-      <answer>
-        <para>First you need GDAL 1.7 or higher compiled with PostGIS raster support.
-            GDAL 3 or above is preferred since many issues have been fixed in 1.8 and more PostGIS raster issues fixed in trunk version.</para>
-        <para>You can much like you can with any other raster.
-        Refer to <ulink url="https://mapserver.org/input/raster.html">MapServer Raster processing options</ulink>
-        for list of various processing functions you can use with MapServer raster layers.</para>
-        <para>What makes PostGIS raster data particularly interesting, is that since
-	each tile can have various standard database columns, you can segment it in your data source</para>
-        <para>Below is an example of how you would define a PostGIS raster layer in MapServer.</para>
-        <note><para>The mode=2 is required for tiled rasters and was added in PostGIS 2.0 and GDAL 1.8 drivers.  This does not exist in GDAL 1.7 drivers.</para></note>
-        <programlisting>
--- displaying raster with standard raster options
-LAYER
-	NAME coolwktraster
-	TYPE raster
-	STATUS ON
-	DATA "PG:host=localhost port=5432 dbname='somedb' user='someuser' password='whatever'
-		schema='someschema' table='cooltable' mode='2'"
-	PROCESSING "NODATA=0"
-	PROCESSING "SCALE=AUTO"
-	#... other standard raster processing functions here
-	#... classes are optional but useful for 1 band data
-	CLASS
-		NAME "boring"
-		EXPRESSION ([pixel] < 20)
-		COLOR 250 250 250
-	END
-	CLASS
-		NAME "mildly interesting"
-		EXPRESSION ([pixel] > 20 AND [pixel] < 1000)
-		COLOR 255 0 0
-	END
-	CLASS
-		NAME "very interesting"
-		EXPRESSION ([pixel] >= 1000)
-		COLOR 0 255 0
-	END
-END
-        </programlisting>
-
-        <programlisting>
--- displaying raster with standard raster options and a where clause
-LAYER
-	NAME soil_survey2009
-	TYPE raster
-	STATUS ON
-	DATA "PG:host=localhost port=5432 dbname='somedb' user='someuser' password='whatever'
-		schema='someschema' table='cooltable' where='survey_year=2009' mode='2'"
-	PROCESSING "NODATA=0"
-	#... other standard raster processing functions here
-	#... classes are optional but useful for 1 band data
-END
-        </programlisting>
-
-      </answer>
-    </qandaentry>
-
-
-	<qandaentry>
-      <question>
-        <para>What functions can I currently use with my raster data?</para>
-      </question>
-
-      <answer>
-        <para>Refer to the list of <xref linkend="RT_reference" />.
-        There are more, but this is still a work in progress.</para>
-		<para>Refer to the <ulink
-        url="http://trac.osgeo.org/postgis/wiki/WKTRaster/PlanningAndFunding">PostGIS Raster roadmap page</ulink>
-		for details of what you can expect in the future.</para>
-      </answer>
-    </qandaentry>
-
-    <qandaentry id="qa_raster_function_not_unique">
-      <question>
-        <para>I am getting error  ERROR:  function st_intersects(raster, unknown) is not unique or st_union(geometry,text) is not unique.  How do I fix?</para>
-      </question>
-
-      <answer>
-        <para>The function is not unique error happens if one of your arguments is a textual representation of a geometry instead of a geometry.  In these cases, PostgreSQL marks the textual representation as an unknown type, which means it can fall into the st_intersects(raster, geometry) or st_intersects(raster,raster) thus resulting in a non-unique case since both functions can in theory support your request.  To prevent this, you need to cast the textual representation of the geometry to a geometry.</para>
-        <para>For example if your code looks like this:</para>
-        <programlisting>SELECT rast
- FROM my_raster
-   WHERE ST_Intersects(rast, 'SRID=4326;POINT(-10 10)');</programlisting>
-		<para>Cast the textual geometry representation to a geometry by changing your code to this:</para>
-		<programlisting>SELECT rast
- FROM my_raster
-   WHERE ST_Intersects(rast, 'SRID=4326;POINT(-10 10)'::geometry);</programlisting>
-      </answer>
-    </qandaentry>
-
-    <qandaentry>
-      <question>
-        <para>How is PostGIS Raster different from Oracle GeoRaster (SDO_GEORASTER) and SDO_RASTER types?</para>
-      </question>
-
-      <answer>
-	<para>For a more extensive discussion on this topic, check out Jorge Arévalo <ulink url="http://gis4free.wordpress.com/2010/07/19/oracle-georaster-part-i/">Oracle GeoRaster and PostGIS Raster: First impressions </ulink></para>
-	<para>The major advantage of one-georeference-by-raster over one-georeference-by-layer is to allow:</para>
-	<para>* coverages to be not necessarily rectangular (which is often the case of raster coverage covering large extents. See the possible raster arrangements in the documentation)</para>
-	<para>* rasters to overlaps (which is necessary to implement lossless vector to raster conversion) </para>
-	<para>These arrangements are possible in Oracle as well, but they imply
-        the storage of multiple SDO_GEORASTER objects linked to as many
-        SDO_RASTER tables. A complex coverage can lead to hundreds of tables in
-        the database. With PostGIS Raster you can store a similar raster arrangement into a unique table.</para>
-
-	<para>It's a bit like if PostGIS would force you to store only full rectangular vector coverage without gaps or overlaps (a perfect rectangular topological layer).
-	This is very practical in some applications but practice has shown that it is not realistic or desirable for most geographical coverages. Vector structures needs the flexibility to store discontinuous and non-rectangular coverages.
-	We think it is a big advantage that raster structure should benefit as well. </para>
-      </answer>
-    </qandaentry>
-
-  <qandaentry  id="qa_raster_fails_encoding_conversion">
-      <question>
-        <para>raster2pgsql load of large file fails with String of N bytes is too long for encoding conversion?</para>
-      </question>
-
-      <answer>
-	<para>raster2pgsql doesn't make any connections to your database when generating the file to load. If your database has set an explicit client encoding different
-	from your database encoding, then when loading large raster files (above 30 MB in size), you may run into a <code>bytes is too long for encoding conversion</code>.</para>
-	<para>This generally happens if for example you have your database in UTF8, but to support windows apps, you have the client encoding set to <code>WIN1252</code>.</para>
-	<para>To work around this make sure the client encoding is the same as your database encoding during load.  You can do this by explicitly setting the encoding in your load script.  Example, if you are on windows:
-		<programlisting>set PGCLIENTENCODING=UTF8</programlisting></para>
-	<para>If you are on Unix/Linux
-	<programlisting>export PGCLIENTENCODING=UTF8</programlisting></para>
-	<para>Gory details of this issue are detailed in <ulink url="http://trac.osgeo.org/postgis/ticket/2209">http://trac.osgeo.org/postgis/ticket/2209</ulink></para>
-      </answer>
-  </qandaentry>
-
-     <qandaentry id="faq_security_change_1">
-      <question>
-        <para>I'm getting error <code>ERROR: RASTER_fromGDALRaster: Could not open bytea with GDAL. Check that the bytea is of a GDAL supported format.</code>  when using ST_FromGDALRaster
-        or <code>ERROR: rt_raster_to_gdal: Could not load the output GDAL driver</code> when trying to use ST_AsPNG or other raster input functions.</para>
-      </question>
-
-      <answer>
-          <para>As of PostGIS 2.1.3 and 2.0.5, a security change was made to by default disable all GDAL drivers and out of db rasters. The release notes are at <ulink url="http://postgis.net/2014/05/19/postgis-2.0.6_and_2.1.3">PostGIS 2.0.6, 2.1.3 security release</ulink>. In order to reenable specific drivers or all drivers and reenable out of database support, refer to <xref linkend="install_short_version" />.</para>
-      </answer>
-    </qandaentry>
-
-
- </qandaset>
-</chapter>
diff --git a/doc/installation.xml b/doc/installation.xml
index 580993f94..f2fadab4c 100644
--- a/doc/installation.xml
+++ b/doc/installation.xml
@@ -254,7 +254,7 @@ sh autogen.sh
 
 	 <listitem>
 			<para>
-				In order to build the <xref linkend="Address_Standardizer" /> you will also need PCRE <ulink url="http://www.pcre.org">http://www.pcre.org</ulink> (which generally is already installed on nix systems).  <code>Regex::Assemble</code> perl CPAN package is only needed if you want to rebuild the data encoded in <filename>parseaddress-stcities.h</filename>.
+				In order to build the <xref linkend="Address_Standardizer" /> you will also need PCRE <ulink url="http://www.pcre.org">http://www.pcre.org</ulink> (which generally is already installed on nix systems).
 				<xref linkend="Address_Standardizer" /> will automatically be built if it detects a PCRE library, or you pass in a valid <varname>--with-pcre-dir=/path/to/pcre</varname> during configure.
 			</para>
 		</listitem>
@@ -1002,12 +1002,6 @@ but you can download the latest at: <ulink url="http://www.pcre.org">http://www.
 -----+------------------------+--------+-------+-------
  1   | Devonshire Place PH301 | Boston | MA    | 02109</screen>
 
-        <sect2><title>Installing Regex::Assemble</title>
-            <para>Perl Regex:Assemble is no longer needed for compiling address_standardizer extension since the files it generates are part of the source tree.  However if you need to edit the <filename>usps-st-city-orig.txt</filename> or <filename>usps-st-city-orig.txt usps-st-city-adds.tx</filename>, you need to rebuild <filename>parseaddress-stcities.h</filename> which does require Regex:Assemble.</para>
-            <programlisting>cpan Regexp::Assemble</programlisting>
-            <para>or if you are on Ubuntu / Debian you might need to do</para>
-            <programlisting>sudo perl -MCPAN -e "install Regexp::Assemble"</programlisting>
-        </sect2>
 	</sect1>
 
   <sect1 id="loading_extras_tiger_geocoder">
@@ -1017,9 +1011,9 @@ but you can download the latest at: <ulink url="http://www.pcre.org">http://www.
 	the <filename>share/extension/postgis_tiger_geocoder.*</filename> files from the packages in <ulink url="http://postgis.net/windows_downloads/">Windows Unreleased Versions</ulink> section for your version of PostgreSQL.
 	Although these packages are for windows, the postgis_tiger_geocoder extension files will work on any OS since the extension is an SQL/plpgsql only extension.</para>
 	<sect2 id="install_tiger_geocoder_extension">
-		<title>Tiger Geocoder Enabling your PostGIS database: Using Extension</title>
+		<title>Tiger Geocoder Enabling your PostGIS database</title>
 		<orderedlist>
-			<listitem><para>First get binaries for PostGIS 2.1+ or compile and install as usual.  This should install the necessary extension files as well for tiger geocoder.</para></listitem>
+			<listitem><para>These directions assume your PostgreSQL installation already has the postgis_tiger_geocoder extension installed.</para></listitem>
 			<listitem><para>Connect to your database via psql or pgAdmin or some other tool and run the following SQL commands.  Note that if you are installing in a database that already has postgis, you don't need to do the first step.  If you have <varname>fuzzystrmatch</varname> extension already installed, you don't need to do the second step either.</para>
 			<para><programlisting>CREATE EXTENSION postgis;
 CREATE EXTENSION fuzzystrmatch;
diff --git a/doc/postgis.xml b/doc/postgis.xml
index 6d5b713b8..feecabf40 100644
--- a/doc/postgis.xml
+++ b/doc/postgis.xml
@@ -22,10 +22,8 @@
 <!ENTITY using_postgis_dataman SYSTEM "using_postgis_dataman.xml">
 <!ENTITY using_postgis_query SYSTEM "using_postgis_query.xml">
 <!ENTITY using_raster_dataman SYSTEM "using_raster_dataman.xml">
-<!ENTITY using_postgis_app SYSTEM "using_postgis_app.xml">
 <!ENTITY performance_tips SYSTEM "performance_tips.xml">
 <!ENTITY database_tuning SYSTEM "database_tuning.xml">
-<!ENTITY faq SYSTEM "faq.xml">
 <!ENTITY reference SYSTEM "reference.xml">
 <!ENTITY postgis_aggs_mm SYSTEM "postgis_aggs_mm.xml">
 <!ENTITY reporting SYSTEM "reporting.xml">
@@ -57,7 +55,6 @@
 <!ENTITY reference_validation SYSTEM "reference_validation.xml">
 <!ENTITY reference_version SYSTEM "reference_version.xml">
 <!ENTITY reference_raster SYSTEM "reference_raster.xml">
-<!ENTITY faq_raster SYSTEM "faq_raster.xml">
 <!ENTITY extras SYSTEM "extras.xml">
 <!ENTITY extras_topology SYSTEM "extras_topology.xml">
 <!ENTITY extras_tigergeocoder SYSTEM "extras_tigergeocoder.xml">
@@ -191,13 +188,10 @@ that makes use of any spatial indexes that are available on the geometries.">
   &using_postgis_dataman;
   &using_postgis_query;
   &performance_tips;
-  &using_postgis_app;
   &reference;
-  &faq;
   &extras_topology;
   &using_raster_dataman;
   &reference_raster;
-  &faq_raster;
   &extras;
   &postgis_aggs_mm;
   &reporting;
diff --git a/doc/release_notes.xml b/doc/release_notes.xml
index 8bd5c2ea4..613de9253 100644
--- a/doc/release_notes.xml
+++ b/doc/release_notes.xml
@@ -1470,7 +1470,7 @@ Proj 6.1+, and PostgreSQL 14+.</para>
           <para>#3461, ST_GeomFromKML crashes Postgres when there are innerBoundaryIs and no outerBoundaryIs</para>
           <para>#3429, upgrading to 2.3 or from 2.1 can cause loop/hang on some platforms</para>
           <para>#3460, ST_ClusterWithin 'Tolerance not defined' error after upgrade</para>
-          <para>#3490, Raster data restore issues, materialized views. Scripts postgis_proc_set_search_path.sql, rtpostgis_proc_set_search_path.sql refer to http://postgis.net/docs/manual-2.2/RT_FAQ.html#faq_raster_data_not_restore</para>
+          <para>#3490, Raster data restore issues, materialized views. </para>
           <para>#3426, failing POINT EMPTY tests on fun architectures</para>
   		  </simplesect>
     </sect1>
@@ -2298,8 +2298,7 @@ Proj 6.1+, and PostgreSQL 14+.</para>
 	<para>-- If you have been using deprecated functions CHANGE your apps or suffer the consequences.
      If you don't see a function documented -- it ain't supported or it is an internal function.
      Some constraints in older tables were built with deprecated functions.
-     If you restore you may need to rebuild table constraints with populate_geometry_columns().  If you have applications or tools
-					that rely on deprecated functions, please refer to <xref linkend="legacy_faq" /> for more details.</para>
+     If you restore you may need to rebuild table constraints with populate_geometry_columns().</para>
 		<para><ulink url="http://trac.osgeo.org/postgis/ticket/944">#944</ulink> geometry_columns is now a view instead of a table
     (Paul Ramsey, Regina Obe)
     for tables created the old way reads (srid, type, dims) constraints
diff --git a/doc/using_postgis_app.xml b/doc/using_postgis_app.xml
deleted file mode 100644
index 66517490d..000000000
--- a/doc/using_postgis_app.xml
+++ /dev/null
@@ -1,539 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<chapter>
-  <title id="using_postgis_applications">Building Applications</title>
-  <sect1 id="Using_MapServer">
-    <title>Using MapServer</title>
-
-    <para>The Minnesota MapServer is an internet web-mapping server which
-    conforms to the OpenGIS Web Map Service specification.</para>
-
-    <itemizedlist>
-      <listitem>
-        <para>The MapServer homepage is at <ulink
-        url="http://mapserver.org">http://mapserver.org</ulink>.</para>
-      </listitem>
-
-      <listitem>
-        <para>The OpenGIS Web Map Service specification is at <ulink
-        url="http://www.opengeospatial.org/standards/wms">http://www.opengeospatial.org/standards/wms</ulink>.</para>
-      </listitem>
-    </itemizedlist>
-
-    <sect2>
-      <title>Basic Usage</title>
-
-      <para>To use PostGIS with MapServer, you need to know how to
-      configure MapServer, which is beyond the scope of this documentation.
-      This section covers specific PostGIS issues and configuration
-      details.</para>
-
-      <para>To use PostGIS with MapServer, you will need:</para>
-
-      <itemizedlist>
-        <listitem>
-          <para>Version 0.6 or newer of PostGIS.</para>
-        </listitem>
-
-        <listitem>
-          <para>Version 3.5 or newer of MapServer.</para>
-        </listitem>
-      </itemizedlist>
-
-      <para>MapServer accesses PostGIS/PostgreSQL data like any other
-      PostgreSQL client, using the <filename>libpq</filename> interface. This means that
-      MapServer can be installed on any machine with network access to the
-      PostGIS server, and use PostGIS as a source of data. The faster the connection
-      between the systems, the better.</para>
-
-      <orderedlist>
-        <listitem>
-          <para>Compile and install MapServer, with whatever options you
-          desire, including the "--with-postgis" configuration option.</para>
-        </listitem>
-
-        <listitem>
-          <para>In your MapServer map file, add a PostGIS layer. For
-          example:</para>
-
-          <programlisting>LAYER
-  CONNECTIONTYPE postgis
-  NAME "widehighways"
-  # Connect to a remote spatial database
-  CONNECTION "user=dbuser dbname=gisdatabase host=bigserver"
-  PROCESSING "CLOSE_CONNECTION=DEFER"
-  # Get the lines from the 'geom' column of the 'roads' table
-  DATA "geom from roads using srid=4326 using unique gid"
-  STATUS ON
-  TYPE LINE
-  # Of the lines in the extents, only render the wide highways
-  FILTER "type = 'highway' and numlanes >= 4"
-  CLASS
-    # Make the superhighways brighter and 2 pixels wide
-    EXPRESSION ([numlanes] >= 6)
-    STYLE
-      COLOR 255 22 22
-      WIDTH 2
-    END
-  END
-  CLASS
-    # All the rest are darker and only 1 pixel wide
-    EXPRESSION ([numlanes] < 6)
-    STYLE
-      COLOR 205 92 82
-    END
-  END
-END</programlisting>
-
-          <para>In the example above, the PostGIS-specific directives are as
-          follows:</para>
-
-          <variablelist>
-            <varlistentry>
-              <term>CONNECTIONTYPE</term>
-
-              <listitem>
-                <para>For PostGIS layers, this is always "postgis".</para>
-              </listitem>
-            </varlistentry>
-
-            <varlistentry>
-              <term>CONNECTION</term>
-
-              <listitem>
-                <para>The database connection is governed by the a 'connection
-                string' which is a standard set of keys and values like this
-                (with the default values in <>):</para>
-
-                <para>user=<username> password=<password>
-                dbname=<username> hostname=<server>
-                port=<5432></para>
-
-                <para>An empty connection string is still valid, and any of
-                the key/value pairs can be omitted. At a minimum you will
-                generally supply the database name and username to connect
-                with.</para>
-              </listitem>
-            </varlistentry>
-
-            <varlistentry>
-              <term>DATA</term>
-
-              <listitem>
-                <para>The form of this parameter is "<geocolumn> from
-                <tablename> using srid=<srid> using unique <primary key>" where the column is the spatial column to
-                be rendered to the map, the SRID is SRID used by the column and the primary key is the table primary key (or any
-                other uniquely-valued column with an index).</para>
-                <para>You can omit the "using srid" and "using unique" clauses and MapServer will automatically determine the
-                correct values if possible, but at the cost of running a few extra queries on the server for each map
-                draw.</para>
-              </listitem>
-            </varlistentry>
-
-			<varlistentry>
-              <term>PROCESSING</term>
-
-              <listitem>
-                <para>Putting in a CLOSE_CONNECTION=DEFER if you have multiple layers reuses existing connections instead of closing them.  This improves
-					speed.  Refer to for <ulink url="http://blog.cleverelephant.ca/2008/10/mapserverpostgis-performance-tips.html">MapServer PostGIS Performance Tips</ulink> for a more detailed explanation.  </para>
-              </listitem>
-            </varlistentry>
-
-            <varlistentry>
-              <term>FILTER</term>
-
-              <listitem>
-                <para>The filter must be a valid SQL string corresponding to
-                the logic normally following the "WHERE" keyword in a SQL
-                query. So, for example, to render only roads with 6 or more
-                lanes, use a filter of "num_lanes >= 6".</para>
-              </listitem>
-            </varlistentry>
-          </variablelist>
-        </listitem>
-
-        <listitem>
-          <para>In your spatial database, ensure you have spatial (GiST)
-          indexes built for any the layers you will be drawing.</para>
-
-          <programlisting>CREATE INDEX [indexname] ON [tablename] USING GIST ( [geometrycolumn] );</programlisting>
-        </listitem>
-
-        <listitem>
-          <para>If you will be querying your layers using MapServer you will
-          also need to use the "using unique" clause in your DATA statement.</para>
-
-          <para>MapServer requires unique identifiers for each spatial record
-          when doing queries, and the PostGIS module of MapServer uses the
-          unique value you specify in order to provide these unique
-          identifiers. Using the table primary key is the best practice.</para>
-        </listitem>
-      </orderedlist>
-    </sect2>
-
-    <sect2>
-      <title>Frequently Asked Questions</title>
-
-      <qandaset>
-        <qandaentry>
-          <question>
-            <para>When I use an <varname>EXPRESSION</varname> in my map file,
-            the condition never returns as true, even though I know the values
-            exist in my table.</para>
-          </question>
-
-          <answer>
-            <para>Unlike shape files, PostGIS field names have to be
-            referenced in EXPRESSIONS using <emphasis>lower
-            case</emphasis>.</para>
-
-            <programlisting>EXPRESSION ([numlanes] >= 6)</programlisting>
-          </answer>
-        </qandaentry>
-
-        <qandaentry>
-          <question>
-            <para>The FILTER I use for my Shapefiles is not working for my
-            PostGIS table of the same data.</para>
-          </question>
-
-          <answer>
-            <para>Unlike shape files, filters for PostGIS layers use SQL
-            syntax (they are appended to the SQL statement the PostGIS
-            connector generates for drawing layers in MapServer).</para>
-
-            <programlisting>FILTER "type = 'highway' and numlanes >= 4"</programlisting>
-          </answer>
-        </qandaentry>
-
-        <qandaentry>
-          <question>
-            <para>My PostGIS layer draws much slower than my Shapefile layer,
-            is this normal?</para>
-          </question>
-
-          <answer>
-            <para>In general, the more features you are drawing into a given map,
-            the more likely it is that PostGIS will be slower than Shapefiles.
-            For maps with relatively few features (100s), PostGIS will often be faster.
-            For maps with high feature density (1000s), PostGIS will always be slower.
-            </para>
-
-            <para>If you are finding substantial draw performance problems, it
-            is possible that you have not built a spatial index on your
-            table.</para>
-
-            <programlisting>postgis# CREATE INDEX geotable_gix ON geotable USING GIST ( geocolumn );
-postgis# VACUUM ANALYZE;</programlisting>
-          </answer>
-        </qandaentry>
-
-        <qandaentry>
-          <question>
-            <para>My PostGIS layer draws fine, but queries are really slow.
-            What is wrong?</para>
-          </question>
-
-          <answer>
-            <para>For queries to be fast, you must have a unique key for your
-            spatial table and you must have an index on that unique
-            key.</para>
-
-            <para>You can specify what unique key for mapserver to use with
-            the <varname>USING UNIQUE</varname> clause in your
-            <varname>DATA</varname> line:</para>
-
-            <programlisting>DATA "geom FROM geotable USING UNIQUE gid"</programlisting>
-
-          </answer>
-        </qandaentry>
-
-        <qandaentry>
-          <question>
-            <para>Can I use "geography" columns (new in PostGIS 1.5) as a source for
-            MapServer layers?</para>
-          </question>
-
-          <answer>
-            <para>Yes! MapServer understands geography columns as being the same as
-            geometry columns, but always using an SRID of 4326. Just make sure to include
-            a "using srid=4326" clause in your <varname>DATA</varname> statement. Everything else
-            works exactly the same as with geometry.</para>
-
-            <programlisting>DATA "geog FROM geogtable USING SRID=4326 USING UNIQUE gid"</programlisting>
-
-          </answer>
-        </qandaentry>
-
-
-      </qandaset>
-    </sect2>
-
-    <sect2>
-      <title>Advanced Usage</title>
-
-      <para>The <varname>USING</varname> pseudo-SQL clause is used to add some
-      information to help mapserver understand the results of more complex
-      queries. More specifically, when either a view or a subselect is used as
-      the source table (the thing to the right of "FROM" in a
-      <varname>DATA</varname> definition) it is more difficult for mapserver
-      to automatically determine a unique identifier for each row and also the
-      SRID for the table. The <varname>USING</varname> clause can provide
-      mapserver with these two pieces of information as follows:</para>
-
-      <programlisting>DATA "geom FROM (
-  SELECT
-    table1.geom AS geom,
-    table1.gid AS gid,
-    table2.data AS data
-  FROM table1
-  LEFT JOIN table2
-  ON table1.id = table2.id
-) AS new_table USING UNIQUE gid USING SRID=4326"</programlisting>
-
-      <variablelist>
-        <varlistentry>
-          <term>USING UNIQUE <uniqueid></term>
-
-          <listitem>
-            <para>MapServer requires a unique id for each row in order to
-            identify the row when doing map queries. Normally it identifies
-            the primary key from the system tables. However, views and subselects don't
-            automatically have an known unique column. If you want to use MapServer's
-            query functionality, you need to ensure your view
-            or subselect includes a uniquely valued column, and declare it with <varname>USING UNIQUE</varname>.
-            For example, you could explicitly select nee of the table's primary key
-            values for this purpose, or any other column which is guaranteed
-            to be unique for the result set.</para>
-
-            <note>
-              <para>"Querying a Map" is the action of clicking on a map to ask
-              for information about the map features in that location. Don't
-              confuse "map queries" with the SQL query in a
-              <varname>DATA</varname> definition.</para>
-            </note>
-          </listitem>
-        </varlistentry>
-
-        <varlistentry>
-          <term>USING SRID=<srid></term>
-
-          <listitem>
-            <para>PostGIS needs to know which spatial referencing system is
-            being used by the geometries in order to return the correct data
-            back to MapServer. Normally it is possible to find this
-            information in the "geometry_columns" table in the PostGIS
-            database, however, this is not possible for tables which are
-            created on the fly such as subselects and views. So the
-            <varname>USING SRID=</varname> option allows the correct SRID to
-            be specified in the <varname>DATA</varname> definition.</para>
-          </listitem>
-        </varlistentry>
-      </variablelist>
-
-    </sect2>
-
-    <sect2>
-      <title>Examples</title>
-
-      <para>Lets start with a simple example and work our way up. Consider the
-      following MapServer layer definition:</para>
-
-      <programlisting>LAYER
-  CONNECTIONTYPE postgis
-  NAME "roads"
-  CONNECTION "user=theuser password=thepass dbname=thedb host=theserver"
-  DATA "geom from roads"
-  STATUS ON
-  TYPE LINE
-  CLASS
-    STYLE
-      COLOR 0 0 0
-    END
-  END
-END</programlisting>
-
-      <para>This layer will display all the road geometries in the roads table
-      as black lines.</para>
-
-      <para>Now lets say we want to show only the highways until we get zoomed
-      in to at least a 1:100000 scale - the next two layers will achieve this
-      effect:</para>
-
-      <programlisting>LAYER
-  CONNECTIONTYPE postgis
-  CONNECTION "user=theuser password=thepass dbname=thedb host=theserver"
-  PROCESSING "CLOSE_CONNECTION=DEFER"
-  DATA "geom from roads"
-  MINSCALE 100000
-  STATUS ON
-  TYPE LINE
-  FILTER "road_type = 'highway'"
-  CLASS
-    COLOR 0 0 0
-  END
-END
-LAYER
-  CONNECTIONTYPE postgis
-  CONNECTION "user=theuser password=thepass dbname=thedb host=theserver"
-  PROCESSING "CLOSE_CONNECTION=DEFER"
-  DATA "geom from roads"
-  MAXSCALE 100000
-  STATUS ON
-  TYPE LINE
-  CLASSITEM road_type
-  CLASS
-    EXPRESSION "highway"
-    STYLE
-      WIDTH 2
-      COLOR 255 0 0
-    END
-  END
-  CLASS
-    STYLE
-      COLOR 0 0 0
-    END
-  END
-END</programlisting>
-
-      <para>The first layer is used when the scale is greater than 1:100000,
-      and displays only the roads of type "highway" as black lines. The
-      <varname>FILTER</varname> option causes only roads of type "highway" to
-      be displayed.</para>
-
-      <para>The second layer is used when the scale is less than 1:100000, and
-      will display highways as double-thick red lines, and other roads as
-      regular black lines.</para>
-
-      <para>So, we have done a couple of interesting things using only
-      MapServer functionality, but our <varname>DATA</varname> SQL statement
-      has remained simple. Suppose that the name of the road is stored in
-      another table (for whatever reason) and we need to do a join to get it
-      and label our roads.</para>
-
-      <programlisting>LAYER
-  CONNECTIONTYPE postgis
-  CONNECTION "user=theuser password=thepass dbname=thedb host=theserver"
-  DATA "geom FROM (SELECT roads.gid AS gid, roads.geom AS geom,
-        road_names.name as name FROM roads LEFT JOIN road_names ON
-        roads.road_name_id = road_names.road_name_id)
-        AS named_roads USING UNIQUE gid USING SRID=4326"
-  MAXSCALE 20000
-  STATUS ON
-  TYPE ANNOTATION
-  LABELITEM name
-  CLASS
-    LABEL
-      ANGLE auto
-      SIZE 8
-      COLOR 0 192 0
-      TYPE truetype
-      FONT arial
-    END
-  END
-END</programlisting>
-
-      <para>This annotation layer adds green labels to all the roads when the
-      scale gets down to 1:20000 or less. It also demonstrates how to use an
-      SQL join in a <varname>DATA</varname> definition.</para>
-    </sect2>
-  </sect1>
-
-  <sect1>
-    <title>Java Clients (JDBC)</title>
-
-    <para>Java clients can access PostGIS "geometry" objects in the PostgreSQL
-    database either directly as text representations or using the JDBC
-    extension objects bundled with PostGIS. In order to use the extension
-    objects, the "postgis.jar" file must be in your CLASSPATH along with the
-    "postgresql.jar" JDBC driver package.</para>
-
-    <programlisting>import java.sql.*;
-import java.util.*;
-import java.lang.*;
-import org.postgis.*;
-
-public class JavaGIS {
-
-public static void main(String[] args) {
-
-  java.sql.Connection conn;
-
-  try {
-    /*
-    * Load the JDBC driver and establish a connection.
-    */
-    Class.forName("org.postgresql.Driver");
-    String url = "jdbc:postgresql://localhost:5432/database";
-    conn = DriverManager.getConnection(url, "postgres", "");
-    /*
-    * Add the geometry types to the connection. Note that you
-    * must cast the connection to the pgsql-specific connection
-    * implementation before calling the addDataType() method.
-    */
-    ((org.postgresql.PGConnection)conn).addDataType("geometry",Class.forName("org.postgis.PGgeometry"));
-    ((org.postgresql.PGConnection)conn).addDataType("box3d",Class.forName("org.postgis.PGbox3d"));
-    /*
-    * Create a statement and execute a select query.
-    */
-    Statement s = conn.createStatement();
-    ResultSet r = s.executeQuery("select geom,id from geomtable");
-    while( r.next() ) {
-      /*
-      * Retrieve the geometry as an object then cast it to the geometry type.
-      * Print things out.
-      */
-      PGgeometry geom = (PGgeometry)r.getObject(1);
-      int id = r.getInt(2);
-      System.out.println("Row " + id + ":");
-      System.out.println(geom.toString());
-    }
-    s.close();
-    conn.close();
-  }
-catch( Exception e ) {
-  e.printStackTrace();
-  }
-}
-}</programlisting>
-
-    <para>The "PGgeometry" object is a wrapper object which contains a
-    specific topological geometry object (subclasses of the abstract class
-    "Geometry") depending on the type: Point, LineString, Polygon, MultiPoint,
-    MultiLineString, MultiPolygon.</para>
-
-    <programlisting>PGgeometry geom = (PGgeometry)r.getObject(1);
-if( geom.getType() == Geometry.POLYGON ) {
-  Polygon pl = (Polygon)geom.getGeometry();
-  for( int r = 0; r < pl.numRings(); r++) {
-    LinearRing rng = pl.getRing(r);
-    System.out.println("Ring: " + r);
-    for( int p = 0; p < rng.numPoints(); p++ ) {
-      Point pt = rng.getPoint(p);
-      System.out.println("Point: " + p);
-      System.out.println(pt.toString());
-    }
-  }
-}</programlisting>
-
-    <para>The JavaDoc for the extension objects provides a reference for the
-    various data accessor functions in the geometric objects.</para>
-  </sect1>
-
-  <sect1>
-    <title>C Clients (libpq)</title>
-
-    <para>...</para>
-
-    <sect2>
-      <title>Text Cursors</title>
-
-      <para>...</para>
-    </sect2>
-
-    <sect2>
-      <title>Binary Cursors</title>
-
-      <para>...</para>
-    </sect2>
-  </sect1>
-</chapter>
diff --git a/doc/using_raster_dataman.xml b/doc/using_raster_dataman.xml
index 819370997..103aec766 100644
--- a/doc/using_raster_dataman.xml
+++ b/doc/using_raster_dataman.xml
@@ -6,23 +6,71 @@
     <para>For most use cases, you will create PostGIS rasters by loading existing raster files using the packaged <varname>raster2pgsql</varname> raster loader.</para>
 
     <sect2 id="RT_Raster_Loader">
-	<title>Using raster2pgsql to load rasters</title>
-    <para>
-        The <varname>raster2pgsql</varname> is a raster loader executable that loads GDAL supported raster formats into sql suitable for loading into a PostGIS raster table.
-        It is capable of loading folders of raster files as well as creating overviews of rasters. </para>
-    <para>Since the raster2pgsql is compiled as part of PostGIS most often (unless you compile your own GDAL library), the raster types supported
-	by the executable will be the same as those compiled in the GDAL dependency library.  To get a list of raster types your particular raster2pgsql supports use the <varname>-G</varname> switch.  These should be the same as those provided by your PostGIS install documented here  <xref linkend="RT_ST_GDALDrivers" /> if you are using the same GDAL library for both.</para>
+  	<title>Using raster2pgsql to load rasters</title>
+
+    <para>The <varname>raster2pgsql</varname> is a raster loader executable that loads GDAL supported raster formats into SQL suitable for loading into a PostGIS raster table. It is capable of loading folders of raster files as well as creating overviews of rasters. </para>
+
+    <para>Since the raster2pgsql is compiled as part of PostGIS most often (unless you compile your own GDAL library), the raster types supported by the executable will be the same as those compiled in the GDAL dependency library.  To get a list of raster types your particular <varname>raster2pgsql</varname> supports use the <varname>-G</varname> switch.</para>
+
     <note>
-	<para>The older version of this tool was a python script.  The executable has replaced the python script.  If you still find the need for the Python script
-        Examples of the python one can be found at <ulink url="http://trac.osgeo.org/gdal/wiki/frmts_wtkraster.html">GDAL PostGIS Raster Driver Usage</ulink>.
-        Please note that the raster2pgsql python script may not work with future versions of PostGIS raster and is no longer supported.
-        </para></note>
+      <para>When creating overviews of a specific factor from a set of rasters that are aligned, it is possible for the overviews to not align.  Visit <ulink url="http://trac.osgeo.org/postgis/ticket/1764">http://trac.osgeo.org/postgis/ticket/1764</ulink> for an example where the overviews do not align.</para>
+    </note>
 
-	<note><para>When creating overviews of a specific factor from a set of rasters that are aligned, it is possible for the overviews to not align.  Visit <ulink url="http://trac.osgeo.org/postgis/ticket/1764">http://trac.osgeo.org/postgis/ticket/1764</ulink> for an example where the overviews do not align.</para></note>
+    <sect3>
+      <title>Example Usage</title>
+
+    <para>An example session using the loader to create an input file and uploading it chunked in 100x100 tiles might look like this:</para>
+
+    <programlisting># -s use srid 4326
+# -I create spatial index
+# -C use standard raster constraints
+# -M vacuum analyze after load
+# *.tif load all these files
+# -F include a filename column in the raster table
+# -t tile the output 100x100
+# public.demelevation load into this table
+raster2pgsql -s 4326 -I -C -M -F -t 100x100 *.tif public.demelevation > elev.sql
+
+# -d connect to this database
+# -f read this file after connecting
+psql -d gisdb -f elev.sql</programlisting>
+
+    <note>
+      <para>If you do not specify the schema as part of the target table name, the table will be created in the default schema of the database or user you are connecting with.</para>
+    </note>
+
+    <para>A conversion and upload can be done all in one step using UNIX pipes:</para>
+
+    <programlisting>raster2pgsql -s 4326 -I -C -M *.tif -F -t 100x100 public.demelevation | psql -d gisdb</programlisting>
+
+    <para>Load rasters Massachusetts state plane meters aerial tiles
+  into a schema called <varname>aerial</varname> and create a full view, 2 and 4 level overview tables, use copy mode for inserting (no intermediary file just straight to db), and -e don't force everything in a transaction (good if you want to see data in tables right away without waiting).  Break up the rasters into 128x128 pixel tiles and apply raster constraints. Use copy mode instead of table insert. (-F) Include a field called filename to hold the name of the file the tiles were cut from.</para>
+    <programlisting>raster2pgsql -I -C -e -Y -F -s 26986 -t 128x128  -l 2,4 bostonaerials2008/*.jpg aerials.boston | psql -U postgres -d gisdb -h localhost -p 5432</programlisting>
+
+    <programlisting>--get a list of raster types supported:
+raster2pgsql -G</programlisting>
+
+<para>The -G commands outputs a list something like </para>
+<screen>
+Available GDAL raster formats:
+  Virtual Raster
+  GeoTIFF
+  National Imagery Transmission Format
+  Raster Product Format TOC format
+  ECRG TOC format
+  Erdas Imagine Images (.img)
+  CEOS SAR Image
+  CEOS Image
+  ...
+  Arc/Info Export E00 GRID
+  ZMap Plus Grid
+  NOAA NGS Geoid Height Grids</screen>
+
+    </sect3>
+
+    <sect3>
+      <title>raster2pgsql options</title>
 
-    <para>EXAMPLE USAGE:
-	<programlisting>raster2pgsql <varname>raster_options_go_here</varname> <varname>raster_file</varname> <varname>someschema</varname>.<varname>sometable</varname> > out.sql</programlisting>
-    </para>
     <variablelist>
          <varlistentry>
           <term>-?</term>
@@ -312,123 +360,12 @@
             <listitem><para>Specify version of output format.  Default  is 0.  Only 0 is supported at this time.</para></listitem>
         </varlistentry>
     </variablelist>
-    <para>An example session using the loader to create an input file and uploading it chunked in 100x100 tiles might look like this:</para>
-    <note><para>You can leave the schema name out e.g <varname>demelevation</varname> instead of <varname>public.demelevation</varname> and
-    the raster table will be created in the default schema of the database or user</para></note>
-    <programlisting>raster2pgsql -s 4326 -I -C -M *.tif -F -t 100x100 public.demelevation > elev.sql
-psql -d gisdb -f elev.sql</programlisting>
 
-    <para>A conversion and upload can be done all in one step using UNIX pipes:</para>
+    </sect3>
 
-    <programlisting>raster2pgsql -s 4326 -I -C -M *.tif -F -t 100x100 public.demelevation | psql -d gisdb</programlisting>
 
-    <para>Load rasters Massachusetts state plane meters aerial tiles
-	into a schema called <varname>aerial</varname> and create a full view, 2 and 4 level overview tables, use copy mode for inserting (no intermediary file just straight to db), and -e don't force everything in a transaction (good if you want to see data in tables right away without waiting).  Break up the rasters into 128x128 pixel tiles and apply raster constraints. Use copy mode instead of table insert. (-F) Include a field called filename to hold the name of the file the tiles were cut from.</para>
-    <programlisting>raster2pgsql -I -C -e -Y -F -s 26986 -t 128x128  -l 2,4 bostonaerials2008/*.jpg aerials.boston | psql -U postgres -d gisdb -h localhost -p 5432</programlisting>
 
-    <programlisting>--get a list of raster types supported:
-raster2pgsql -G</programlisting>
 
-<para>The -G commands outputs a list something like </para>
-<screen>
-Available GDAL raster formats:
-  Virtual Raster
-  GeoTIFF
-  National Imagery Transmission Format
-  Raster Product Format TOC format
-  ECRG TOC format
-  Erdas Imagine Images (.img)
-  CEOS SAR Image
-  CEOS Image
-  JAXA PALSAR Product Reader (Level 1.1/1.5)
-  Ground-based SAR Applications Testbed File Format (.gff)
-  ELAS
-  Arc/Info Binary Grid
-  Arc/Info ASCII Grid
-  GRASS ASCII Grid
-  SDTS Raster
-  DTED Elevation Raster
-  Portable Network Graphics
-  JPEG JFIF
-  In Memory Raster
-  Japanese DEM (.mem)
-  Graphics Interchange Format (.gif)
-  Graphics Interchange Format (.gif)
-  Envisat Image Format
-  Maptech BSB Nautical Charts
-  X11 PixMap Format
-  MS Windows Device Independent Bitmap
-  SPOT DIMAP
-  AirSAR Polarimetric Image
-  RadarSat 2 XML Product
-  PCIDSK Database File
-  PCRaster Raster File
-  ILWIS Raster Map
-  SGI Image File Format 1.0
-  SRTMHGT File Format
-  Leveller heightfield
-  Terragen heightfield
-  USGS Astrogeology ISIS cube (Version 3)
-  USGS Astrogeology ISIS cube (Version 2)
-  NASA Planetary Data System
-  EarthWatch .TIL
-  ERMapper .ers Labelled
-  NOAA Polar Orbiter Level 1b Data Set
-  FIT Image
-  GRIdded Binary (.grb)
-  Raster Matrix Format
-  EUMETSAT Archive native (.nat)
-  Idrisi Raster A.1
-  Intergraph Raster
-  Golden Software ASCII Grid (.grd)
-  Golden Software Binary Grid (.grd)
-  Golden Software 7 Binary Grid (.grd)
-  COSAR Annotated Binary Matrix (TerraSAR-X)
-  TerraSAR-X Product
-  DRDC COASP SAR Processor Raster
-  R Object Data Store
-  Portable Pixmap Format (netpbm)
-  USGS DOQ (Old Style)
-  USGS DOQ (New Style)
-  ENVI .hdr Labelled
-  ESRI .hdr Labelled
-  Generic Binary (.hdr Labelled)
-  PCI .aux Labelled
-  Vexcel MFF Raster
-  Vexcel MFF2 (HKV) Raster
-  Fuji BAS Scanner Image
-  GSC Geogrid
-  EOSAT FAST Format
-  VTP .bt (Binary Terrain) 1.3 Format
-  Erdas .LAN/.GIS
-  Convair PolGASP
-  Image Data and Analysis
-  NLAPS Data Format
-  Erdas Imagine Raw
-  DIPEx
-  FARSITE v.4 Landscape File (.lcp)
-  NOAA Vertical Datum .GTX
-  NADCON .los/.las Datum Grid Shift
-  NTv2 Datum Grid Shift
-  ACE2
-  Snow Data Assimilation System
-  Swedish Grid RIK (.rik)
-  USGS Optional ASCII DEM (and CDED)
-  GeoSoft Grid Exchange Format
-  Northwood Numeric Grid Format .grd/.tab
-  Northwood Classified Grid Format .grc/.tab
-  ARC Digitized Raster Graphics
-  Standard Raster Product (ASRP/USRP)
-  Magellan topo (.blx)
-  SAGA GIS Binary Grid (.sdat)
-  Kml Super Overlay
-  ASCII Gridded XYZ
-  HF2/HFZ heightfield raster
-  OziExplorer Image File
-  USGS LULC Composite Theme Grid
-  Arc/Info Export E00 GRID
-  ZMap Plus Grid
-  NOAA NGS Geoid Height Grids</screen>
     </sect2>
     <sect2 id="RT_Creating_Rasters">
 	<title>Creating rasters using PostGIS raster functions</title>
diff --git a/doc/xsl/postgis_aggs_mm.xml.xsl b/doc/xsl/postgis_aggs_mm.xml.xsl
index c8fb63ca1..bf2131f36 100644
--- a/doc/xsl/postgis_aggs_mm.xml.xsl
+++ b/doc/xsl/postgis_aggs_mm.xml.xsl
@@ -1528,8 +1528,7 @@
 			       <para>The functions given below are PostGIS functions that have changed behavior in PostGIS 2.0 and may require application changes.</para>
                     <note><para>Most deprecated functions have been removed.  These are functions that haven't been documented since 1.2
                         or some internal functions that were never documented.  If you are using a function that you don't see documented,
-                        it's probably deprecated, about to be deprecated, or internal and should be avoided.  If you have applications or tools
-                        that rely on deprecated functions, please refer to <xref linkend="legacy_faq" /> for more details.</para></note>
+                        it's probably deprecated, about to be deprecated, or internal and should be avoided.</para></note>
                     <note><para>Bounding boxes of geometries have been changed from float4 to double precision (float8).  This has an impact
                     	on answers you get using bounding box operators and casting of bounding boxes to geometries. E.g ST_SetSRID(abbox) will
                     	often return a different more accurate answer in PostGIS 2.0+ than it did in prior versions which may very well slightly

-----------------------------------------------------------------------

Summary of changes:
 doc/Makefile.in                 |   3 -
 doc/faq.xml                     | 448 ---------------------------------
 doc/faq_raster.xml              | 277 ---------------------
 doc/installation.xml            |  12 +-
 doc/postgis.xml                 |   6 -
 doc/release_notes.xml           |   5 +-
 doc/using_postgis_app.xml       | 539 ----------------------------------------
 doc/using_raster_dataman.xml    | 189 +++++---------
 doc/xsl/postgis_aggs_mm.xml.xsl |   3 +-
 9 files changed, 69 insertions(+), 1413 deletions(-)
 delete mode 100644 doc/faq.xml
 delete mode 100644 doc/faq_raster.xml
 delete mode 100644 doc/using_postgis_app.xml


hooks/post-receive
-- 
PostGIS


More information about the postgis-tickets mailing list