Where E4X Pays Off
Configuration Files – What immediately comes to mind is parsing and supporting any XML configuration file. This will become more important asApps and plugin technology extends from mobile and CMS to a broad range of extensible services. See here for how XML configuration information and its manipulation is simplified with E4X.
Web Services -IBM has a very good illustration of using E4X on Web Services requests as client interface.
RSS, ATOM, and other feed services – Almost all of the popular feed services use XML for their storage format and here is a tutorial on how E4X simplifies such processing.
Whats Holding-up E4X?
Doing research on another topic, JSON, I encountered some of the objections to E4X. The key issues were lack of uniform support for E4X across the popular browsers and performance. However, an extensive search through the Web could not show any clear cut benchmarks showing JSON outperforming E4X. Rather, E4X being used in Flex was benchmarked as being faster than AJAX based JSON by about 25-40% [it depends on the browser used, see Census test here]. So performance does not appear to be a substantive issue.
Further research turned up a Security concern about markup script insertion based on Cross-site scripting vulnerabilities. Also there was a some more script injection methods discussed here. But the commenter seemed to find that a)there were simple controls to prevent these insertions and/or b)the larger issue was addressing cross-site gaps found in many technologies, not just E4X.
In general, the biggest obstacle to E4X appeared to be lack of support for it in the browsers when the the simple JSON conventions provided an immediate solution to data mapping. But there was concern noted that JSON thru data mapping finesse was throwing out a lot of XML features such as XPath, XSLT, XSS and fast plus easy XML parsing enabled in good part by E4X.
It also makes this observer very concerned about not just E4X but broader W3C and other Web standards. Perhaps Microsoft’s 10 years of abusive behavior towards Web standards has made the attitude towards standards a “laissez affaire”. This does not bode well for HTM5, CSS3, and other W3C standards. I have seen so many comments on the arrival date for full HTML5 amounting to skeptical “whatevers”. The general attitude seems to be that Web standards are there to be selectively fulfilled/broken as each vendor sees fit. Is E4X support the harbinger/mine canary of what is to happen with HTML5 and Web standards in general?