the computer program instructions may also be loaded onto a computer or other programmable data processing apparatus to cause a series of operational steps to be performed on the computer or other programmable apparatus to produce a computer implemented process such that the instructions which execute on the computer or other programmable apparatus provide steps for implementing the functions acts specified in the flowchart and or block diagram block or blocks fig1 is a block diagram showing components of a typical data processing environment 100 in which a preferred embodiment of the present invention may be embodied the data processing environment 100 typically includes a plurality of client data processing systems 105 110 operable to connect to a server data processing system 120 using a network 115 a client data processing system 105 110 can take the form of a computer a mobile phone a personal digital assistant pda etc a client data processing system 105 110 can send requests for resources e g a request for a web page using the network 115 to the server data processing system 120 the server data processing system 120 stores or has access to resources which can be accessed by the client data processing system 105 110 the server data processing system 120 includes one or more applications operable to respond by serving a resource to a request from a client data processing system 105 110 fig2 is a block diagram of a data processing system 200 according to a preferred embodiment of the present invention in the example herein a.