Lists Home |
Date Index |
On 6/1/05, Rich Salz <firstname.lastname@example.org> wrote:
> > I'll bet a beer: when we finally get Longhorn and
> > look under the covers, we'll discover MS optimized
> > the blazes out of some XML pieces by subsetting it
> > and being very persnickety about substitutions.
> I betcha the SOAP stack is optimized to leave out DTD's.
> I have no inside knowledge.
DTDs are explicitly prohibited by SOAP (starting with 1.1, IIRC).
It's well known tat high-end SOAP processors exploit this fact to get
better performance than a generic XML parser would allow. For
example, the response from the SOAP WG to the TAG on this issue
explains the reasoning and the reality quite clearly: "In the high
performance regimes where some SOAP implementations will operate, the
parsers will likely be tuned for SOAP message handling. Doing general
entity substitution beyond that mandated by XML 1.0 (e.g. <)
implies a degree of buffer management, often data copying, etc. which
can be a
noticeable burden when going for truly high performance. This performance
effect has been reported by workgroup members who are building high
performance SOAP implementations."
More generally, in semi-tightly coupled internal scenarios where one
knows the subset of XML that one can logically/legally receive, there
are proven performance advantages to using stripped down and optimized