jyotisham / jyotisha

Python tools for the astronomical / astrological vedAnga of Hindus
MIT License
88 stars 52 forks source link

Adding adjectives/suffixes for festivals #105

Open karthikraman opened 3 years ago

karthikraman commented 3 years ago

There are many festivals that are "tagged" with one or adjectives: the festival itself may be "ekAdazI", and the adjectives could be "saphalA" or "nirjalA" and then also "sarva"/"smArta"/"vaiSNava" etc.

Other festivals have suffixes 'alabhyam (puSkalA)', when the actual festival is an 'amAvAsyA'. What would be the best way to accommodate these as some sort of properties of the festival, retaining the festival id as just 'ekAdazI' or 'amAvAsyA'.

The advantage would be that it would be easy to fetch all the ekAdazI / amAvAsyA dates, and also descriptions (in adyatithi jsons) can be given for basic festival, and also the tags, which can be combined.

Any suggestions on how to go about this? Thanks!

vvasuki commented 3 years ago

How about applying the entire festival taxonomy to a date? For example, a certain day is not just ekAdashi, but also saphalA ekAdashI. So, you have 2 festival assignments. The former will have info common to all ekAdashI-s, while the latter will have info specific to the upajAti.

karthikraman commented 3 years ago

Interesting point, and workable --- but wouldn't it cause clutter? For instance, on the same day, we may have

Perhaps a flag to denote that ekAdashI and saphalA ekAdashI will be superseded by others (and should not be printed in a list of festivals? Oh, but the description will also be lost?...)

Any other suggestions/ideas?

vvasuki commented 3 years ago

Important to keep in mind: Internal representation != presentation for user (which may be manifold). That said, for our own sanity and productivity, the former needs to be elegant (not clumsy).

If we need to store hierarchical relationship cleanly, we can do this:

saphalA-EkAdazI.toml will have a field saying: qualified_festival = "EkAdazI"