Detta är en mycket vanlig teknik. Det används för att lagra hierarkisk data (du kallar det rekursivt) inom en db.
Du måste dock hantera integriteten i din applikation, eftersom en främmande nyckel inte kan användas, eftersom relationen är villkorad av isRecipe-flaggan.