Combining data driven programming with component based software development : with applications in geovisualisation and dynamic data driven application systems. - Anthony Andrew Jones (2008)