xpath not a good replacement for xpath_string

From: pgsql(at)mohawksoft(dot)com
To: "PostgreSQL" <pgsql-hackers(at)postgresql(dot)org>
Subject: xpath not a good replacement for xpath_string
Date: 2009-07-28 19:21:12
Message-ID: 812baa7837a1366593a31661a1f0487b.squirrel@mail.mohawksoft.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

Sorry to bring this up, I know you've been fighting about XML for a while.

Currently, I am using XML2 functionality and have tried to get the newer
XPath function to work similarly, but can't quite seem to do it.

I think the current xpath function is too limited. (The docs said to post
problems to hackers if I have an issue.)

For instance, we have a web application that uses java with an XML class
serializer/deserializer Xstream. It creates XML that looks like this:

<com.company.local.myclass>
<uuid>b5212259-a91f-4dca-a547-4fe89cf2f32c</uuid>
<email>joe(at)somedomain(dot)com</email>
</com.company.local.myclass>

My current strategy is to use xml2 as:

select xpath_string(datum, E'/com\.company\.local\.myclass/uuid) as uuid
from table;

Which produces a usable:
b5212259-a91f-4dca-a547-4fe89cf2f32c

I have been trying to use xpath
select xpath(E'/com\.company\.local\.myclass/uuid', XMLPARSE(CONTENT
datum)) as uuid from table;

Which produces an unusable:
{<uuid>b5212259-a91f-4dca-a547-4fe89cf2f32c</uuid>}

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message David E. Wheeler 2009-07-28 19:22:34 Re: When is a record NULL?
Previous Message Tom Lane 2009-07-28 19:15:50 Re: WIP: Deferrable unique constraints