At least for the genetic variation, why not just handle it as parsable text. I see parallels with the ISO Duration types - sometimes a wee parsable string is the easiest way to go. I’m not sure I see the value in splitting it up in an archetype. This is a way of encoding the position but ? in a precise way (TBH I donlt completely understand!!).
[part of original post moved to Representation of variation in pregnancy]