Since I am working on the class’ title setting facilities, that means I need to
work on storing and formatting document metadata (title, author, date, &c).
I found myself stuck on dates.
There are several options for interally representing dates, times, and
datetimes, but I came to the conclusion that it is best to simply store them
as strings, according to ISO 8601. This makes sorting trivial. Extracting
specific fields and accounting for cases when a field is omitted (e.g. the day
or seconds) can be handled with some commands that process the underlying
string appropriately. I mention this because I don’t know if the team has any
particular plans for managing dates and times.
With the problem of storage sorted, I turned to formatting. I found that there
exist 2e solutions for formatting dates, times, and even integers, thanks to
the `datetime2` and `fmtcount` packages. However, I would like to develop a
solution that uses templates.
Formatting dates brings up the issue of locale management. Now, since this
class is incompatible with many packages, I know that I will need to implement
the functionality of some important packages if I want that available. Since
locale can affect various parts of typesetting, it is just as well that I
provide at least a rudimentary interface for locales, from the start.
The (now deprecated) instance collections of `xtemplate` would have been my
first idea for managing the various parts of a locale: dates, times,
quotations, punctuation spacing, numbers, &c. However, collections are
deprecated for a reason. I was wondering, what are the current thoughts on
managing templates or related sets formatting?