INFO: Use String Parameters to Handle XML Documents Across Tiers (252675)



The information in this article applies to:

  • Microsoft XML 2.5
  • Microsoft XML 3.0
  • Microsoft XML 3.0 SP1
  • Microsoft XML 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).

REFERENCES

MSDN XML Developer Center:http://msdn.microsoft.com/xml/default.asp

W3C XML Reference: http://www.w3.org/XML/

Modification Type:MajorLast Reviewed:9/30/2003
Keywords:kbDCOM kbGuidelines kbinfo KB252675