>Eclipse Galileo: XML gets some love!

>Note: This entry is written from a user’s point of view and not my role as a committer on WTP Source Editing.

Eclipse XML Development Tools for Ganymede: C
Eclipse XML Development Tools for Galileo: B+

I’ve been using Eclipse as my primary IDE for development since early 2005. During that time I’ve used it for a variety of languages and tasks, but one thing that has always disappointed me from an XML Developer’s stand point were the built in tools. They were either non-existant, or just were not to the level that I needed or expected. Some of this was corrected by adding in Third-Party plugins like OxygenXML. OxygenXML is actually a good set of plugins for eclipse, but the built in tools needed to improve.

I work for an XML Standards organization for the Automotive, Heavy Duty Truck, Powersports and Marine industries. I’m plauged by interoperability issues between Altova, Stylus Studio, and Eclipse. All say different things, and all have different levels of compatibility. Altova has gotten better, and in many ways eclipse’s use of Xerces helps with schema validation. The issue from eclipse’s XML editor from WTP has always been with the user interface and more specifically the performance. The later I’ll address in a bit.

WTP 2.0 helped a lot when it was released, and WTP 3.0 helped even more. Many of the issues like attribute order and namespaces were corrected. There have been some in the XML community that wish for the WTP 1.0 XML Schema Design view to come back, and I’m one of those. The reason, the Hiearchy View is pretty much a standard in the XML world for working with the layout. A UML based approach is good for programmers, but not necessarily good for the way XML Designer’s work. There still was a lack of an editor that was XSLT 1.0 and 2.0 aware, no relaxng editor, and basically no advancement on the WTP’s DOM compliance.

Some of these are starting to change with Galileo and WTP 3.1. In particular the following have been added and updated from a user’s standpoint:

  • XSLT editing and debugging support has been added. This provides the basics of what one has come to expect in XSLT 1.0 editing. It needs work in the way of XSLT 2.0 support.
  • XPath View that allows for testing of XPath 1.0 options.
  • An XPath 2.0 processor called PsychoPath that passes about 76% of the W3C Test Suite and passing more each day.
  • An XML Perspective for working with XML Files.
  • OASIS XML Catalog 1.1 support.
  • Improved overall Performance on editing large XML files.

It still includes editors for XML Schema, WSDL (through the Web Services Plugins), DTD, and a grammar aware XML Editor. XML Catalog support has been improved. What it lacks is still support for the ISO RelaxNG editor and a good SchemaTron editor. The later is still where OxygenXML excels, and there are some rudimentary plugins available on Sourceforge to address the SchemaTron editor issue. The biggest reason for the XML Community to check out Galileo is the overall improvement in the speed of the editors. No longer is there an annoying 1 to 2 second delay, or up to a 10 minute wait time for code completion to finish on large XML files. Most of this is instantaneous now.

With this said, there still are some very annoying issues that hopefully will be addressed in upcoming releases. XML Formatting still has some serious problems. Especially if xml:space=”preserve” is specified, and if there are XML Entities included in the document. Formatting is something that is critical to get right as it helps with editing and working with the files. It needs more attention than it has been getting. With this said there are work arounds for the formatting issue, the HTMLTidy plugin on Sourceforge does a good job of formatting the documents. However it does loose any annotation markers that the use has set. Not a huge deal in most cases but it can be an annoyance itself.

Galileo’s tweaks on the performance side and the addition of an XSLT set of plugins makes it worthy of the B+ grade. If the formatting issues had been corrected, it would have earned an A-, but unfortunately they are still too much in the user’s face. Overall interoperability and conformance to the various XML specifications is muched improved, so adopters building on WTP 3.1 will have better interoperability. If you haven’t tried it, grab a copy of the Eclipse Galileo for Java EE developer’s as this should have everything you need plus some extra. Members within the PDT arena that need XSLT development will want to add the XSL feature to your package through the Galileo update site.

A side note, there are some XML incubating projects that could use some love.

  • VEX – Visual Editor for XML provides WYSIWYG editing of XML Documents and Files.
  • XQuery Development Tool Kit – an XQuery editor built on top of the Eclipse XML Editor. Note that there is also a very worthy project called XQDT that people should check out. I would hope that the two projects can be combined to benefit the community and adopters as a whole.
  • XML Security Tools – an implementation of the XML Digital Signatures and XML Encryption specifications. Provides an interface into the existing eclipse editors.

If interested in helping with any of these projects, drop a note in the eclipse wtp incubator newsgroup or contact one of the developers.

This entry was posted in eclipse, galileo, xml. Bookmark the permalink.

8 Responses to >Eclipse Galileo: XML gets some love!

  1. Vii says:

    >What font do you using in your eclipse? It looks very nice for me

  2. David Carver says:

    >@Vii: On linux it's Bitstream Versa, plus I use some additional settings from Making Eclipse look good on Linux.

  3. Vii says:

    >@David Carver, thanks. I will try to adopt tricks from your link in my kde4-linux :))

  4. >Great post!Let's make it an "A" for the Helios release next year πŸ˜‰

  5. schmeedy says:

    >Hi,for anybody interested in a free support for RELAX NG in Eclipse, I'm working on a simple integration project http://sourceforge.net/projects/rng-eclipse/There's no release yet, but I'll create an update site with first beta probably some day next week. It's still rather simple, but it already has pretty decent content completion and basic jing-based validation. Standard XML editor configuration is used and so many features available while editing non-relax XML are available as well.Sorry about this little "add", but I spent quite a bunch of time coding it and so I'd be happy to see it's actually usefull for somebody πŸ™‚

  6. David Carver says:

    >@schmeedy: Hey have you thought of hosting your project at Eclipse.org? If you are interested we can talk off line. Contact me at d_a_carver at yahoo.com. We could possibly put you in the wtp incubator or over in the tools/technology section.Also if you have a blog please consider hooking it up to Planet Eclipse and letting us know how the development goes.

  7. >You're plagued by interoperability issues between Altova, Stylus Studio, and Eclipse WTP because they're all poor products. These vendors are better at selling licenses to industry than designing user interfaces. None of them have demonstrated a real comprehension of XML or how to edit or develop it. All of these products are sold to developers who know even less about XML than those vendors do, and mistakenly think these products will help them.The only IDE I've ever seen used by people who really grok XML/XSLT/XQuery is Oxygen, and I'm not that fond of it. Many XML experts still use plain text editors and a command line; but if that's too raw for you, then Oxygen is the only adequate choice. Not good, mind you, but at least adequate. Altova and Eclipse WTP aren't even adequate.

  8. David Carver says:

    >@Elliotte You've done a lot for the XML community in helping on the tooling framework. I would LOVE to have you submit some patches and code contributions to help out the eclipse side of things. A thing to know about me…I don't work for a eclipse member working on tooling. I'm doing this to help ease the problems I see caused by companies that build tooling on eclipse products. We we don't address the core problems as a community then it will be a problem we will always live with. That isn't acceptable to me, so that is why I work on this to improve the tool. Again would love some patches and contributions to the XML related aspects at ecipse. If you submit them I'll make sure they get reviewed.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s