MS XML parser only works with IE...
Charles Kerr
cskerr at geocities.com
Mon Nov 24 15:48:59 GMT 1997
(For those of you reading this on the xml-dev mailing list, the article
referred to in this letter is at http://www.javalobby.org/jn001.htm#xml
and WORA == Write Once, Run Anywhere)
> Stating that MSXML is "Arguably the best XML parser for Java today" I think
> is in error and inconsistent with the stated views of the Java Lobby and our
> commitment to WORA. MSXML is not 100% pure and the DSO (Data Source Object)
> applet only works with MS IE 4.0 browsers.
>
> These imports are hidden in the source
> import com.ms.com.*;
> import com.ms.com.IUnknown;
> import com.ms.com.Variant;
> import com.ms.osp.*;
> import netscape.javascript.JSObject;
>
> Not only that, but with this release of MSXML it appears that Microsoft is
> attempting to fragment the XML community by encouraging the use of
> non-standard </> end tags and other things like the inline '&' that break
> XML. I can only conclude that Microsoft is giving MSXML away for free --once
> again-- in order to fragment the emerging XML standard. This is not a Java
> application, and MSXML is something we should NOT endorse or support.
The MSXML dependencies on Windows are apparently trivial and fixable.
Equally important, the MSXML EULA grants the right to redistribute such
modified code. See the three letters (from the xml-dev mailing list)
that I include at the end of this letter for more information. What I'd
like to see is someone post these fixes so that each person wanting
the portable version doesn't have to make the changes by hand. If
anyone
does this (clovett, you listening? :) and lets me know, I'll write it up
in the news.
Regarding MSXML's break with the XML spec, I was unaware of the </> and
&
notation -- it was discussed in the xml-dev mailing list right before
I joined. It looks like Microsoft is, for once, interested in hearing
constructive feedback. In particular Chris Lovett
(clovett at microsoft.com)
has encouraged such feedback. Anyone interested in this topic should
send him polite mail requesting that MS stick to the spec.
I can understand why you would be upset about this. The splintering
by Microsoft of a great new technology is something that we Java
programmers seem mysteriously sensitive to. ;) Nevertheless, I'll stand
by my statement that MSXML is arguably the best XML parser for Java
today.
There are other choices, such as Lark (http://www.textuality.com/Lark/)
and NXP (http://www.edu.uni-klu.ac.at/~nmikula/NXP/preview/).
I'm cc'ing this to the xml-dev mailing lists in the hopes that it
will rekindle the discussion on the importance of sticking to the
specs.
Charles
cskerr at geocities.org
Unite for Java! http://www.javalobby.org/
--
Exerpts from three letters on the xml-dev mailing list
regarding XML's ties to Windows
[1]
> Windows dependency of MSXML is minimal. All you have to do is following:
> 1. remove com.ms.xml.dso package.
> Delete the class files from the jar and/or comment it out of the makefile.
> DSO is accessed by some of the samples but none of the other MSXML packages.
> 2. remove dependency on com.ms.xml.xmlstream package.
> Latest version of MSXML includes an alternate XMLInputStream class located
> inside the 'make' directory. Replace com.ms.xml.util.XMLInputStream with
> the alternate version to remove dependency on com.ms.xml.xmlstream package.
> WIth above two changes, you will end up with a pure-Java version of MSXML.
> MSXML is the most complete XML parser available right now and you get the
> source code on top of it. I would be smiling by now if I were you :-)
[2]
> The parser uses a newly-defined Interface to a stream library that is
> specific to XML. The parser does not use the implementations of streams
> provided in the JDK 1.1 packages for the internet. I believe that this has
> to do with byte-ordering problems in those implementations. I have not
> checked this for myself.
> The interface per se has no platform dependencies. It is shipped with two
> implementations. One implementation is specific to Windows, the other is
> generic Java using JDK packages. Neither has the byte-order flaw. You may
> use whichever one you prefer. Both work. The generic one has lower
> performance.
> --Andrew Layman AndrewL at microsoft.com
[3]
> How 'bout that! Microsoft's EULA even grants us the right to redistribute
> such modified code. Quite generous of them, I must say. Microsoft just
> went up a point in my rating system. I am indeed smiling now. :-)
> My apologies to the MSXML team.
> --
> Joe Lapp (Java Apps Developer/Consultant)
> Unite for Java! - http://www.javalobby.org
> jlapp at acm.org
xml-dev: A list for W3C XML Developers. To post, mailto:xml-dev at ic.ac.uk
Archived as: http://www.lists.ic.ac.uk/hypermail/xml-dev/
To (un)subscribe, mailto:majordomo at ic.ac.uk the following message;
(un)subscribe xml-dev
To subscribe to the digests, mailto:majordomo at ic.ac.uk the following message;
subscribe xml-dev-digest
List coordinator, Henry Rzepa (mailto:rzepa at ic.ac.uk)
More information about the Xml-dev
mailing list