I’ve just attended the XML 2007 conference in Boston [held in the winter to filter out all but the most determined attendees]. It is actually a much older conference then I’d imagined having been in existence in various guises since the late 80’s and today was attended by a modest 300 people. I think this decline in numbers is indicative of the established position that XML as a technology as become. The use of XML as a document representation language and also as a data format was mirrored in the central strands of the sessions. Topics in the XML and the Web strand (the one I paid most attention to) concentrated around current trends such as Microformats, Mashups, REST, Office Open XML, JSON and AJAX. Although many of these subjects are relatively new, the maturity of the underlying XML infrastructure upon which they rely facilitate speedier adoption and development.
My main attention was on XFORMS – the technology I have been using in the EELS project. We had an entire evening of XFORMS talks (much coffee and festive eggnog was consumed in preparation) and amongst the vast majority of ‘introduction to xforms’-type presentations were some tips on how XFORMS is ideally suited to work with RESTful services, harnessing the power of XML databases for form storage and the position that XFORMS sits within the emerging standards based web development world. Rather then going into further details, I advise interested parties to read the session moderator, John Boyer’s, blog entry.
Overall the quality of the presentations at XML’07 was very good, and most confirmed existing assumptions about current directions that the aforementioned above technologies were taking. I was particularly impressed to see representatives from US government departments attending the conference. We were shown a flavor of the direction Microsoft is heading in for supporting the development of the next generation of web applications (Silverlight & LINQ), and Sidewinder; a container framework for bringing standards-based web apps (inc. XFORMS) to a user’s desktop outside of the traditional web browser.
I have also included my notes from a couple of the conference presentations for interested parties and colleagues.
Enterprise grade Mashups – Dream or Reality
- Jonathan Marsh from WSO2 spoke to us about their experiences developing a mashup server for enterprise applications. Developers can write javascript or E4X scripts and submit them to the server. These mashups can then be exposed as a new web service. Although you can download the current version it is still in development.
- The majority of the talk was spent introducing the concepts of mashups to the audience.
- He described them as a method of ‘individualised information consumption’ an also be viewed as a JOIN on steroids with XML data from different sources.
- Mashups can allow rapid application prototyping.
- An example of this is TomatoTube which hooks up RottenTomatoes movie reviews with trailers of the movies from YouTube.
- However in an enterprise environment such as the one envisaged for their server, permissions & access control rights becomes important. This becomes difficult as permissions could reside on both the incoming sources and also the resulting mashups. I think he mentioned they are currently using ACLs to handle authorisation. I also raised the issue of provenance intrinsic to mashups and Jonathan agreed this was also an issue.
Microformats catching on like Wild Fire
This presentation was given by Melissa Utzinger of MITRE Corporation, an advisory body for the US DoD.
- Microformats have only been around since 2005.
- They allow the embedding of semantics into xhtml markup using existing <div> and <span> tags and the class attribute.
- MF can be viewed as a step towards the Semantic web.
- The MF community has a strong desire to reuse existing specifications wherever possible
- Several browser plugins available – i.e. Operator for FF was highlighted.
- MFs come in two flavours – elemental & compound (composed of one or more elemental MFs).
Still several Challenges
- overhead in generating MFs – more automated tools needed
- User are required to install & configure plugins
- Lack of Developer tools for constructing MFs
Questions and issues:
- How does the client know what to do with the MF? No standard way of processing MF – it’s up to client’s browser. This makes it difficult to come up with new MF’s if no client tools support it.
- What about RDFa (an attempt at RDF-lite). Will there be conversion tools between MF and RDFa?
- Values are left up to client app to validate! (partly due to lack of generation tools) so no way of understanding <div class=’dob’>21st January 2007</div> if the date format expected is dd/mm/yyyy
For more information see microformats.org
Taming XML in AJAX
Mark Pruett from Dominion gave an interesting talk on E4X .
- Developers are needing a lightweight interface for manipulating XML
- Therefore we now have E4X.
- This work is not alone – there is also LinQ, an equivalent MS approach.
- Why do we need a new api for working with XML?
- Most developers use DOM which is a semantically neutral programming language
- The API is long and difficult to use
- JSON – appears to be talking over as a data format
- However JSON is still a client technology and XML is still strong in server land (as the conference keynotes all remarked)
- We are also seeing CMS’s embracing XML
- So ECMAScript decided to create E4X
- Development started in late 05
- It represents a better approach then traditional DOM (and is more expressive than JSON)
- Later in the conference I got a chance to ask Douglas Crockford (inventor of JSON) about his coments on E4X – He thinks E4X is doa! Next version of ECMAScript will support JSON. MS Not adopting E4X as it should as it was on the spec development team.