Die Vorlage FormatDate formatiert ein in Anlehnung an ISO 8601 angegebenes Datum wie 2000-06-29 (29. Juni 2000), etwa zur Verwendung in Listen oder Infoboxen. Dabei wird der volle oder ein abgekürzter deutscher Monatsname erzeugt, der volle Name ist Standard. Im Gegensatz zur Parser-Funktion #time kann diese Vorlage alle Daten verarbeiten, auch Daten vor dem Jahr 1. Durch Angabe einer 0 für Monat bzw. Tag kann eine Ausgabe ohne Monats-/Tagesangabe erzielt werden. Zusätzliche Parameter bewirken Verlinkung oder durchgängige Verwendung von geschützten Leerzeichen ( ).
Zur Verwendung in sortierbaren Tabellen gibt es die fast gleichwertige Vorlage:DatumZelle, die neben der Formatierung auch noch für die richtige Sortierung sorgt.
Datum in einem ISO-Format wie beispielsweise JJJJ-MM-TT, also z. B. 2013-09-03. Tag und Monat können auch ohne führende Null angegeben werden, also JJJJ-M-T. Hierbei ist ausschließlich der ASCII-Strich „-“ erlaubt. Jahre vor 1 n. Chr. werden mit Minuszeichen angegeben. Dabei bedeutet z.B. „-333“ soviel wie 333 v. Chr. Will man den Tag weglassen, dann kann man entweder als Tagesdatum eine Null angeben oder den dritten Teil ganz weglassen. Will man auch den Monat weglassen, so kann dort ebenfalls eine Null angegeben werden oder man gibt nur die Jahreszahl an. Sollen nur Tag und Monat erscheinen, so wird als Jahr die Null angegeben (Ein Jahr Null gibt es nicht). Zulässig sind also folgende Formate:
Format
Ausgabe
JJJJ-MM-TT
JJJJ-MM-T
JJJJ-M-TT
JJJJ-M-T
Tag, Monat und Jahr
JJJJ-MM-0
JJJJ-MM
Monat und Jahr
JJJJ-0-0
JJJJ
nur das Jahr
JJJJ-0-TTT
JJJJ-0-TT
JJJJ-0-T
Tag, Monat und Jahr des „TTT-ten“ Tages im Jahr.
Zweiter Parameter (<Format>)
Damit wird das Ausgabeformat des Monats festgelegt. Mögliche Werte sind: