In our models we use sub-numbering. We are missing a declarative way to specify this.The generation of sub-numbers might have a lot to do with calculated fields in "M". Yet it is important that a sub-number is stable; when the number is given to an entity, it may not change.("it may not change": we might change it by hand but the value is derived only once, and then stored. So sub-number "3" stays "3" even though entities "1" and "2" have been deleted.)In our model the sub-number depends on the type[M] and model type[our model, derivable]. Each new sub-number works just like a regular sequence. Sub numbers are also frequently (if not always) used in billing.
What distribution are you using?