Yes, I went ahead and tried the original suggestion.

Here is what the added function went in as:

CREATE OR REPLACE FUNCTION xml_is_ok(x text)
  RETURNS boolean AS
$BODY$
BEGIN
 PERFORM XMLPARSE( DOCUMENT x::XML );
 RETURN TRUE;
EXCEPTION WHEN OTHERS THEN
 RETURN FALSE;
END;
$BODY$
  LANGUAGE 'plpgsql' VOLATILE
  COST 100;
ALTER FUNCTION xml_is_ok(text) OWNER TO postgres;

It worked fine. Thanks Mike and David.

The only other issue is that when I benchmarked it on a 5,000 record data
set that I have,
the original XML2 function ('xml_is_well_formed') took about 9.5 seconds
and this (deprecation driven) replacement took about 17.2 seconds.

-- Mike Berrow

On Mon, Jun 28, 2010 at 7:51 PM, Robert Haas <robertmh...@gmail.com> wrote:

> On Mon, Jun 28, 2010 at 11:03 AM, Mike Berrow <mber...@gmail.com> wrote:
> > Is there some way to use the new, core XML functionality to simply return
> a
> > truth value
> > in the way that we need?.
>
> Have you tried using a wrapper function like the one suggested
> independently by Mike Rylander and David Fetter upthread?  If so,
> how'd it work out for you?
>
> --
> Robert Haas
> EnterpriseDB: http://www.enterprisedb.com
> The Enterprise Postgres Company
>

Reply via email to