Thanks Tom, That was indeed the issue. Regards, Rhys On Wed, Oct 3, 2012 at 8:58 PM, Tom Lane <tgl@xxxxxxxxxxxxx> wrote: > "Rhys A.D. Stewart" <rhys.stewart@xxxxxxxxx> writes: >> I have an xml aggregate function that always returns 'ERROR: invalid >> XML content'. However an identical function that uses text produces >> valid xml with the same inputs. > > I believe the reason this doesn't work is that the aggregate's initial > value is faulty: it's supposed to be an XML value and it isn't. > > regression=# select ''::xml; > ERROR: invalid XML content > LINE 1: select ''::xml; > ^ > > It's unfortunate that the CREATE AGGREGATE command doesn't complain > about that --- maybe we could improve it. > > As far as making a working aggregate goes, I'd try leaving off the > initcond clause (so that the initial value is NULL) and then marking > the transition function STRICT. (plays around with xmlconcat on > nulls ...) hm, maybe you'd not even need the STRICT marking, though > personally I'd suggest it. > > regards, tom lane -- Sent via pgsql-general mailing list (pgsql-general@xxxxxxxxxxxxxx) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-general