def itemData(self, index): mapping = QAbstractListModel.itemData(self, index) if self._is_index_valid_for(index, self._other_data): items = list(self._other_data[index.row()].items()) else: items = [] for key, value in items: mapping[key] = value return mapping