improved data binding behaviour