From Ajax Patterns
Google Maps is probably the best-known Ajax application. Functionally, it offers some great advances over conventional map websites:
- Combined with its sister Google Earth project, it covers the entire planet, though with varying degrees of granularity.
- It offers satellite pictures as well as the usual abstract map representations.
Of particular interest here, there are several technical distinctions too:
- The site pulls down XML descriptions of the region being viewed.
- Browser-side XSLT is used to transform the XML into map imagery.
- The user can pan and zoom and change location without the page being reloaded.
Google has made available two key components:
- AJAXSLT is a XSLT library which can be used to render XML in the browser.
- Google Maps API is a web service allowing programs to extract map data.
Many applications have been launched to take advantage of the structured map data being offered. Most follow Google's lead and offer Ajaxian interfaces which make heavy use of Web Remoting and Browser-Side XSLT. Sitting between the browser and the Google, they are good examples of Cross-Domain Proxy. Even prior to the map API being released, a number of projects were already accessing the data, having reverse-engineered Google's own browser-side code.