Я изменил свой источник данных, чтобы он возвращал NSIndexPath для outlineView: child: ofItem :.
Таким образом, я мог бы использовать [outlineview rowAtPoint: point] (и аналогичные), чтобы получить NSIndexPath.
Это изменение потребовало от меня создания набора этих indexPath, чтобы они не выпускались, пока они мне не понадобятся. Кроме того, весь другой код, который обычно ожидал объект модели, теперь должен искать объект модели по пути индекса. В моем случае это было эффективно.