Generalizing E4X

Rand Anderson proposes that Python add "support for a native (or quasi-native) XML datatype, a la E4X". Cool! Of course, Python already takes a few steps in that direction: minidom, xmltramp. Likewise Ruby, PHP, and I'm sure many others.

Whenever I see the emergence of per-programming-language variations on a theme, I wonder what can be abstracted. In this case, I wonder about the feasibility -- and the desirability -- of pushing the notion of a native XML datatype down into the JVM and CLR/Mono. In theory, the benefits would be:

The last point may be the most compelling. For example, E4X uses XMLBeans to map the XML type system to Java. So if you wanted to use XML-savvy databases to back E4X objects, XMLBeans would be the interface you'd target. But that presumes Java. Could a language-independent type mapping be a common connector between a family of managed languages and a set of compliant databases? I'm speculating wildly of course, but it's an intriguing notion.


Former URL: http://weblog.infoworld.com/udell/2004/10/08.html#a1091