Looks like this was inspired by KenyaEMR code. We keep constants in separate Dictionary class because we generally treat them differently to other metadata objects. They are installed in production via a sql dump, and for testing we have a Groovy script to generate an XML dataset file from the Dictionary class. We could split them off into categorised bundle classes but frankly I find it easier to keep track of them if they are all in one file.