We follow the definition of XML Schema duration datatype
directly and that definition is implicitly inlined here.
To summarize: the lexical representation for duration is the ISO 8601
extended format PnYnMnDTnHnMnS, where nY represents the number of years, nM the number of months, nD the number of days,
'T' is the date/time separator, nH the number of hours, nM the number of minutes and nS the number of seconds.
The number of seconds can include decimal digits to arbitrary precision.
Date and time elements including their designator may be omitted if their value is zero,
and lower order elements may also be omitted for reduced precision.