Microsoft KB Archive/252675

= INFO: Use String Parameters to Handle XML Documents Across Tiers =

Article ID: 252675

Article Last Modified on 9/30/2003

-

APPLIES TO


 * Microsoft XML Parser 2.5
 * Microsoft XML Core Services 4.0
 * Microsoft XML Parser 3.0 Service Pack 1
 * Microsoft XML Core Services 4.0

-



This article was previously published under Q252675



SUMMARY
When you send information between component tiers in Extensible Markup Language (XML), you may want to use strings rather than instances of the MSXML DOMDocument object.



MORE INFORMATION
When you pass information between tiers, there are several advantages to using strings:
 * Your components can be called from (or consumed by) clients that do not have access to the XML DOM objects.
 * XML Documents are not "marshalled by value." If you return an XML document, the instance lives on the server. Each call to a property or method on the XML DOM object must go across the network to the original server. By using strings, you reduce network traffic significantly, and you decouple client and server failures.
 * The internal XML implementation of both client and server can change independently; for instance, if you choose to use another XML parser, or if you obtain XML from another source such as Microsoft ActiveX Data Objects (ADO).

There are, of course, exceptions where other mechanisms may prove more appropriate, such as when:
 * none of the above considerations is relevant to your situation.
 * the components that are passing DOM references are very cohesive, and will remain tightly bound both logically (shared development cycle, shared usage modes) and physically (same computer, same process) for the foreseeable future.
 * the documents are large and complex, and reloading and reparsing would be expensive, or would occupy resources for too long (reparsing a complex document while within a transaction may not be convenient).

