What's the issue with having a span represent "one year and two months"? Both involve a variable number of days (365-366 and 28-31), but I would hope you could store the components separately so it can be unambiguously applied once given a specific moment in time.
I'm thinking something along the lines of how ActiveSupport::Duration works:
I'm thinking something along the lines of how ActiveSupport::Duration works:
Of course the downside being that it would need to be sized large enough to contain each component, even though they may be rarely used.