I'm going to second Neil here. This feature becomes useful *only* when there is a certified or de-facto universal standard XML representation for database data. Then I could see a case for it. But there isn't.
We've done it in phpPgAdmin (we made up our own standard), and a couple of people use it. I also do not think that it should be in the backend until there is a standard. Here is what phpPgAdmin produces (note NULL handling):
<?xml version="1.0" encoding="UTF-8" ?> <data> <header> <column name="feature_id" type="varchar" /> <column name="feature_name" type="varchar" /> <column name="is_supported" type="varchar" /> <column name="is_verified_by" type="varchar" /> <column name="comments" type="varchar" /> </header> <records> <row> <column name="feature_id">PKG000</column> <column name="feature_name">Core</column> <column name="is_supported">NO</column> <column name="is_verified_by" null="null"></column> <column name="comments" null="null"></column> </row> <row> <column name="feature_id">PKG001</column> <column name="feature_name">Enhanced datetime facilities</column> <column name="is_supported">YES</column> <column name="is_verified_by" null="null"></column> <column name="comments" null="null"></column> </row> <row> <column name="feature_id">PKG002</column> <column name="feature_name">Enhanced integrity management</column> <column name="is_supported">NO</column> <column name="is_verified_by" null="null"></column> <column name="comments" null="null"></column> </row> <row> <column name="feature_id">PKG003</column> <column name="feature_name">OLAP facilities</column> <column name="is_supported">NO</column> <column name="is_verified_by" null="null"></column> <column name="comments" null="null"></column> </row> <row> <column name="feature_id">PKG004</column> <column name="feature_name">PSM</column> <column name="is_supported">NO</column> <column name="is_verified_by" null="null"></column> <column name="comments">PL/pgSQL is similar.</column> </row> <row> <column name="feature_id">PKG005</column> <column name="feature_name">CLI</column> <column name="is_supported">NO</column> <column name="is_verified_by" null="null"></column> <column name="comments">ODBC is similar.</column> </row> <row> <column name="feature_id">PKG006</column> <column name="feature_name">Basic object support</column> <column name="is_supported">NO</column> <column name="is_verified_by" null="null"></column> <column name="comments" null="null"></column> </row> <row> <column name="feature_id">PKG007</column> <column name="feature_name">Enhanced object support</column> <column name="is_supported">NO</column> <column name="is_verified_by" null="null"></column> <column name="comments" null="null"></column> </row> <row> <column name="feature_id">PKG008</column> <column name="feature_name">Active database</column> <column name="is_supported">NO</column> <column name="is_verified_by" null="null"></column> <column name="comments" null="null"></column> </row> <row> <column name="feature_id">PKG010</column> <column name="feature_name">OLAP</column> <column name="is_supported">NO</column> <column name="is_verified_by" null="null"></column> <column name="comments">NO</column> </row> </records> </data> ---------------------------(end of broadcast)--------------------------- TIP 5: Have you checked our extensive FAQ? http://www.postgresql.org/docs/faq