A framework for building hypermedia clients