XML Strengths and Weaknesses with DOM, ASP and XSL
Since the inception of XML, many developers have wondered why they need XML and how they can use XML to their benefit. In this article Nakul looks at some of the terminology that comes with using XML and its related technologies, as well as how to create and transform XML documents with ASP and XSL using Microsoft's MSXML parser.
XML Strengths and Weaknesses with DOM, ASP and XSL - XML Definitions (Page 2 of 5 )
As with any technology, XML has its own acronym-riddled lingo. Some of the important acronyms include:
DTD: In XML, the definition of a valid markup is handled by a Document Type Definition (DTD), which communicates the structure of the markup language. The DTD specifies the validity of each tag.
XSL: The Extensible Style Language (XSL) is the style language for XML that allows us to transform XML nodes using a set of patterns and templates.
XML Pointer Language (XPointer) and XML Linking Language (XLink): These two technologies define a standard way to represent links between resources. In addition to simple links like HTML's <a> tag, XML has mechanisms for linking between multiple resources and linking between read-only resources. XPointer describes how to address a resource whereas XLink describes how to associate two or more resources.
XML Flow Architecture: XML offers a three-tier architecture. It can be generated from existing databases that employ a 3-tier model themselves. We can maintain business rules separately.
Why XML Should Be Used?
Using XML provides us as developers with a number of benefits. Some of the most obvious benefits include:
Authors and providers can design their documents using XML, instead of being stuck with HTML. They can be explicitly tailored for an audience, so the cumbersome problems with HTML are theoretically eliminated; therefore both authors and designers are free to invent their own markup elements.
Information can be richer and is easier to access and manipulate because the hypertext linking abilities of XML are much more advanced than those found in HTML.
XML can provide more (and improved) facilities for browser presentation and performance.
XML compresses exceedingly well. Since data compression algorithms operate on the concept of maximizing the entropy of a given input stream, it stands to reason that a highly ordered input stream consisting of regular, repeating tag sequences will compress exceedingly well... much better than standard text which contains generally far less order thus resulting in a decrease in performance.
Weaknesses of XML
XML is obviously not a cure-all language free of any disadvantages... otherwise we would be using XML to markup/represent all of our data, and nothing else! There are of course some drawbacks and weaknesses of XML, namely:
XML markup can be incredibly verbose, depending on the vocabulary in question.
All the pieces of the XML puzzle aren't yet in place, certainly not from a standards-compliant viewpoint anyhow. We've got both XSL and XSLT, however they are not fully developed yet.
There are still some problems with Microsoft's XML Parser.
XML Hypertext Transfer Protocol (XML-HTTP) still has some minute problems.
Performance of XML
When you're designing an XML-based Web application, what kind of performance hit do you expect to put on your web server? It's hard to generalize because there are so many variables (such as the size of the XML document, the amount of script code required to process the document, the amount of output generated, etc) to take into consideration, however the following list shows the major variables that can affect the performance of parsing XML:
The Kind of XML Data being parsed.
The ratio of tags to text.
The ratio of attributes to elements.
The amount of discarded white space in the document.