According to google documentation for the contacts API there are two ways to assign a value to an extended property.
<gd:extendedProperty name='my-service-id' value='1234567890' />
Using the gdata api I can assign a value easily so that I get the first format. I need to use the second format* to read and write the content between the extendedProperty tags. I found no method or property to do that. How can I do that in the gdata API?
(*) the reason I need the second format is that some contacts have only one field set (key or value) so I have to fill the other for compatibility with the google contacts api. But if the contact is formatted the second way, I cannot tell and I try to fill in a dummy attribute value, which results in a value-xml content mutually exclusive 400 bad request.
After testing I found out a solution. If the text between the gd:extendedProperty tags is plaintext it will be stored in under googlecontact->Value, but if it's XML then it will appear in googlecontact->childnodes as a List< XMLNode>.