shouldn;t this be coupled to the format version? can format 1 have specs? is a dict specific to format 2?
i would propose that the proper structue is build by format specific code