0

I'm using big XML files which I'd like t osplit into several. Then C++ program using MSXML parser converts the XML file into several binary files. The problem occured onece I've tried to split the document into several files using

<!Entity foo SYSTEM "foo.xml">
...
<mytag> &foo; </mytag>

I've opened the document through IE and it did merge the documents and I've seen the same content as the whole document. But when I've ran my program it just warned me that node &foo can't be resolved (for I didn't expect such nie in the document). So, the MSXML parser just leave &foo as a child node but didn't replace it by the text from foo.xml. How could I achieve external entity parsing in the same way as IE using MSXML parser? Just don't want to know in my program that the document splitted. Is it possible?

Filburt
  • 17,626
  • 12
  • 64
  • 115

1 Answers1

0

Have you turned off ProhibitDTD and turned on resolveExternals property? MSXML6 sets all functionality off-by-default for security reasons.

Samuel Zhang
  • 1,290
  • 8
  • 14
  • Yes, I did tried to set this properties false/true accordingly - no results. Furthermore, while converting code to MSXML2 namespace validateOnParse=false also required to use Entities otherwise error occurs. Now I still get the "foo" node instead nodes declared in foo.xml. IE 6.0 still shows the proper results. – Pechkin May 19 '12 at 16:19
  • Didn't find out how to make full parsing automatically. Just implemented it in my code. Thanks for answers. – Pechkin May 20 '12 at 11:12