On Monday, September 9 2013, "Paul Eggert" wrote to "Arthur David Olson, tz@iana.org" saying:
+section, if present, consists of the four magic bytes "=TZ\en", +followed by zero or more newline-terminated byte strings, followed by +another copy of the newline-enclosed POSIX-TZ-style string (this last +is for the benefit of any older clients that look for the TZ string at +the very end of the file). Each newline-terminated byte string +consists of a name-value pair separated by "=" and terminated by +newline. Names consist of ASCII letters, digits and underscores, and +start with a letter; duplicate names are not allowed. Two common +names are "name", the Zone name for the data, and "version", the +version number. Values consist of any bytes except NUL, newline, and +backslash; however, newline and backslash can represented via the +two-byte strings "\en" and "\e\e" respectively.
I assume "\e" is supposed to be interpreted in the C sense, i.e. as ASCII 27 (ESC)? If we go with this format (and not Zephram's proposed variant, or something else) I suggest that this be documented explicitly. I also think that the all the valid meta-data name/value pairs need to be explicitly documented (both syntactically and semantically), not just a few examples given. Otherwise it's unclear whether non-zic zonefile compilers are allowed to invent their own meta-data names, or what format they have to follow for the defined ones' values. I also suggest that we have a meta-data entry giving the name and version of the program that generated the zonefile. -- Jonathan Lennox lennox@cs.columbia.edu