I decided to do it with some c#
//set up a web reference called MyWebService
//get the references to the site and lists from the document's data source
XPathNavigator navSiteURL =
navigator.SelectSingleNode("my:BusinessReview/my:Project/my:ProjectSite/my:ProjectSiteURL", this.NamespaceManager);
XPathNavigator navRisksList =
navigator.SelectSingleNode("my:BusinessReview/my:Project/my:ProjectSite/my:RisksListGUID", this.NamespaceManager);
XPathNavigator navDeliverablesList =
navigator.SelectSingleNode("my:BusinessReview/my:Project/my:ProjectSite/my:DeliverablesListGUID", this.NamespaceManager);
MyWebService.Lists myList = new MyWebService.Lists();
myList.Credentials =
System.Net.CredentialCache.DefaultCredentials;
myList.Url = navSiteURL.ToString() + @"/_vti_bin/lists.asmx";
XmlDocument doc = new XmlDocument();
XmlElement mybatch = doc.CreateElement("Batch");
mybatch .SetAttribute("OnError", "Continue");
mybatch .SetAttribute("ListVersion", "1");
mybatch .SetAttribute("ViewName", "");
//I would replpace the title data with a reference to my
datasource
//and I would add other list fields to be updated
mybatch .InnerXml = "<Method ID='1' Cmd='New'>" +
"<Field Name='ID'>New</Field>" +
"<Field Name='Title'>a nice title for the first
item</Field></Method>";
mybatch .InnerXml += "<Method ID='1' Cmd='New'>" +
"<Field Name='ID'>New</Field>" +
"<Field Name='Title'>another title for the next
item</Field></Method>";
myList.UpdateListItems(navRisksList.ToString(), mybatch);
//do the same for the deliverables
> Hi
>
[quoted text clipped - 11 lines]
>
> Andrew