Hi Terry,
Firstly, I suspect the source procedure should be based on a normal Source, not a NetWebSource. A NetWebSource is specifically designed to send html to the browser, and in this case I don't think the Source will be doing any XML.
The correct embed point to call it would be the top of the GenerateBrowse routine.
However you don't really mention what Driver you are using. If you are using the In-Memory driver, with unique contents per thread, then bear in mind that the file will disappear when the thread ends, which is really the instant the user sees it. So it won't be there for subsequent browse actions.
If you are using a TPS file, or In-Memory file in "normal" mode, then you will want to add the session value to the file, and don't "clear" it at the start of every thread - or one user will interfere with another user.
Cheers
Bruce