Making stuff as a founder of Avocado. Former music-maker. Tuna melt advocate. Started Google Reader. (But smarter people made it great.)

Up the tree, dynamically.

Little XML files are breeding and multiplying around my web server like digital jack rabbits.

I like having them around. They're XML. They're handy. They're glue. And XML is everywhere, particularly in large vendor application servers, their accompanying applications, and often in open source projects.

So, some time ago while creating a client-side tree view for a client, I started a little Javascript project that would take XML (or a filepath to some XML file) and then dynamically and generically render that XML into a <form> that would include an inline editor and a tree view.

I was pretty optimistic. So I named the project Sanguine and dived in to make a 0.1 alpha version.

Have IE 6? Or Mozilla 1.4? (Breaks in Camino and Safari, sadly.) I do - and I'd like to someday corral all of my little XML rabbits with Sanguine or something like it.

For no other reason, it's proof-of-concept (because I needed to prove it to myself) that client-side DOM recursive traversal could be reasonably achieved cross-browserly, like.*

I don't seem to be alone in relying heavily on XML/XSLT and event management for prototyping or delivering a rich client-side web application interface. In fact, the nicest thing about these side projects is I run across some really exciting related projects going on out there.

Here's two:

Because Mom and Dad are fighting. The niftiest bridge? Sarissa, which is a Javascript API that bridges the gap of DOM XML extensions between Internet Explorer and Mozilla-based browsers.
Aside...And speaking of bridge-building, I'm reminded that many intranet and enterprise web apps have rich event handling on the client-side that's built on IE-only extensions, methods, and syntax. Increasingly, I'm asked to bring Mozilla (and the other two major platforms they support, magically) on board already-deployed Windows-browsers-only installations, and have been including WebFX's IE Emu into my Javascript libraries.
From my perspective, a client-side rabbit hat trick that could add and remove nodes generically would look like magic if done right.

*I'm sad about Safari - but Dave H. and team probably have other tasks of much higher priority than enhancing XML document handling in Javascript.

Posted at October 8, 2003 06:28 PM
Main | continued... >>
"Without a pear, I improvise."