Каждая обнаруженная йога — это полноценный объект, а не ярлык.
Она несёт name и sanskrit_name в транслитерации IAST, категорию, к которой относится, planets_involved, houses_involved и condition_met в виде читаемого человеком предложения.
Она несёт оценку силы от 0 до 100 плюс strength_breakdown, показывающий, как сложился каждый фактор, так что слабая йога и идеальная по учебнику никогда не выглядят одинаково.
Она несёт is_cancelled, cancellation_strength и bhanga_factors, перечисляющие, какие правила отмены сработали.
Она несёт provenance (classical, modern или contested), цитату вроде «BPHS Ch.
79», controversy_note, variant, nature (benefic, malefic, mixed или conditional) и effects, разбитые на массивы positive и challenges.
Такая структура означает, что вы можете построить интерфейс, который объясняет каждое толкование, ссылается на исходный текст и позволяет пользователю проверить, почему приложение сказало то, что сказало.
Сила, отмена, цитата и происхождение в каждом результате