Това е много често срещана техника. Използва се за съхраняване на йерархични данни (вие го наричате рекурсивно) в база данни.
Въпреки това ще трябва да управлявате целостта във вашето приложение, тъй като чужд ключ не може да се използва, тъй като връзката е условна към флага isRecipe.