datasource chain walking