Accessing the original XML DOM after browser-applied XSL transformation?

"blblack" <[email protected]>
Newsgroups gmane.comp.mozilla.devel.xml
Organization http://groups.google.com
Message-ID <[email protected]>
I'm just now getting ramped up on XML + XSLT stuff with the intent of
possibly using it in a new corporate web app, having come from
previously doing just (X)HTML+CSS, so bear with me.

The new app's web interface is being designed around the XMLHttpRequest
concept - load the user interface page once when you log in, and then
stay there and dynamically load new content as they click around the
page type of thing.  (Yeah I know there's a buzzword for it, but I'm
trying to avoid it :) ).

In any case, what I'd *really* like to be able to do is:

1) Send the initial page as a pure XML document of my own structure,
with an associated static XSL containing a bunch of nested transforms
which transform it into XHTML 1.1 at the browser.

2) Have the javascript xmlhttprequest-based interaction code in this
page pull fresh XML data from my server based on the same DTD/namespace
as the original page I sent.

3) Use DOM or something similar to insert/append/replace chunks of the
original XML document with the new content.

4) The new content should be correctly transformed to XHTML in the
browser just as if it were part of the original document.

When I got to step 3 is of course where the plan failed.
window.document refers to the resulting XHTML from after the XSL
transformation.  "View Source" shows my original XML, but the DOM
Inspector (and as near as I can tell, anything I can see from
javascript-land) only shows the transformed XHTML document.

Is it just plain impossible?  Or am I missing some interface/object
that I failed to find, which would allow me to manipulate the
pre-transform XML?  And if there is, will the existing transformation
to XHTML automatically stay in sync with the XML tree changes?

The only thing I saw that might be close would be to manually load the
xsl a second time from inside javascript and do the transform manually,
but that would also mean that I'd have to manually maintain references
between the XML and HTML trees to know where to map the output to, and
it would screw up XSL transforms that depended on the context of
elements which are not part of the fresh fragment being
loaded/transformed.
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.