А в чем задача такой модели ? Как должна выглядеть структура таблицы/таблиц, чтобы выстроить дерево ?
Помоему пофигу как должна она выглядеть.
При создании можели можно параметризовать типа:
setIdentFielsd(QString& idCol, QString& idParentCol, QString& idNull);
И все.
Первым параметром задается поле идентификатора,
Вторым поле типа парентИд.
Третим представление пустого парента.
И хватит с головой думаю.