Right now, model sets are only used as a convenience for writing publication files, however they are often useful to know about because they may relate to a specific portion of a document (like a table or appendix) and can be essential for navigating large publications. Sets also, by definition, must have the same functional form, which creates a natural grouping structure.
One idea is to create an 8 character uuid for the set by hashing the uuids of the models inside. Then, assign this value to each model, say model.set_id and also store publication.set_ids. We can entertain if writing sets explicitly to their own collection is worthwhile later, but this should be enough to do basic queries.
Right now, model sets are only used as a convenience for writing publication files, however they are often useful to know about because they may relate to a specific portion of a document (like a table or appendix) and can be essential for navigating large publications. Sets also, by definition, must have the same functional form, which creates a natural grouping structure.
One idea is to create an 8 character uuid for the set by hashing the uuids of the models inside. Then, assign this value to each model, say
model.set_id
and also storepublication.set_ids
. We can entertain if writing sets explicitly to their own collection is worthwhile later, but this should be enough to do basic queries.