minor nit: the null attribute should take XMLSchema boolean type values: {true, false, 1, 0}

More importantly, how do you handle array or record type fields? If they are just opaque text I don't think that's what I at least would want from XML output routines.

cheers

andrew

Christopher Kings-Lynne wrote:

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


---------------------------(end of broadcast)---------------------------
TIP 9: the planner will ignore your desire to choose an index scan if your
     joining column's datatypes do not match

Reply via email to