Why don't you just enumerate and update the children with each
request? This is also what Pier does for the embedded documents.

That's what I'd like to do. However I'm not clear how to detect the start of a request from within a component. To explain - I put a #halt in children and found that it was called five times, for one request. I was hoping that I could hook into a message that marked the start of a request - as #initialRequest isn't suitable is there some other call? Failing that, would it confuse the calling components to return a different set of objects for each of the five calls to #children?

Nick