Take care of the results from a WSS Web Service
A couple of months ago, I needed to create an application which requested a collection of ListItems from a SharePoint list. SharePoint has a couple of built-in web services OOB, and the one I was interested in was 'Lists' (http://Server_Name/[sites/][Site_Name/]_vti_bin/Lists.asmx), and more precisely the GetListItems method. When I got the request to the webservice to work the returned result was of course in XML :-(. A sample of such a return result could be like:
<listitems xmlns:s="uuid:BDC6E3F0-6DA3-11d1-A2A3-00AA00C14882"
xmlns:dt="uuid:C2F41010-65B3-11d1-A29F-00AA00C14882"
xmlns:rs="urn:schemas-microsoft-com:rowset" xmlns:z="#RowsetSchema"
xmlns="http://schemas.microsoft.com/sharepoint/soap/">
<rs:data ItemCount="4">
<z:row ows_<I>Number_Field</I>="6555.00000000000" ows_Created="2003-06-18T03:41:09Z"
ows_ID="3" ows_owshiddenversion="3" />
<z:row ows_<I>Number_Field</I>="78905456.0000000" ows_Created="2003-06-18T17:15:58Z"
ows_ID="4" ows_owshiddenversion="2" />
.
.
.
</rs:data>
</listitems>
I played around a bit for a while and tried different ways to parse the XML results that I had, but couldn't find anything really good, until I found the following excellent article (by Paul Ballard) which described exactly what I was looking for:
http://weblogs.asp.net/paulballard/archive/2005/05/08/406197.aspx
In my case I used the last method described there, and created a couple of classes to put the results in. After that it was a piece of cake to handle the XML results.