in reply to CGI.pm, XML and Internet Explorer

The error you are getting makes it look like your script is printing some things out in a funky order... Someone else was having a similar problem the other day. The answer in that case was to turn autoflush on. That's usually a good idea in CGI scripts anyway and doing so just might correct the problem you are having. Put

$| = 1;
somewhere near the top of your script and see if that fixes things.

After taking a closer look, it seems you might be able to correct it by using a separate print statement to print the header. In other words,

print $query->header; print $query->h1( ... ), $query->p( ... ); # Etc... # instead of # print $query-header, $query->h1( ... ), $query->p( ... );
I still recommend turning autoflush on though.

-sauoq
"My two cents aren't worth a dime.";