ToleranceType needs clarification of Duration use. From the model notes on class ToleranceType for consideration and coordinated correction:
"A tolerance value is a set of durations which indicate the allowed tolerance for the indicated value, e.g. startafter=PT5M indicates that 5 minutes late is acceptable, and startbefore=PT10M indicates that 10 minutes prior is acceptable.
There may be many tolerance attributes associated with a given DurationType object. Care should be taken in implementations to avoid confusing combinations, as the semantics may be complex.
If no Tolerance values are associated, applications SHOULD use cardinality 0 for IntervalType::tolerance."