[Tex/LaTex] biblatex error: invalid format of field ‘date’ – what’s wrong

biberbiblatexerrorswarnings

I switched my .bib files to UTF-8 encoding and want to use biber for creating my bibliography (up to now I used bibtex).

Currently, I do not get a bibliography for my thesis in the pdf, so I'm trying to eliminate the many many warnings in the .blg file.
Most of them are about invalid dates and I don't understand what I'm doing wrong, so please help:

logfile output (.blg)

Running `Biber' on `InvalidFormatOfDateField' with ``biber InvalidFormatOfDateField''
INFO - This is Biber 1.9
INFO - Config file is '/Users/mypath/.biber.conf'
INFO - Logfile is 'InvalidFormatOfDateField.blg'
INFO - Reading 'InvalidFormatOfDateField.bcf'
INFO - Using all citekeys in bib section 0
INFO - Processing section 0
INFO - Looking for bibtex format file 'test3.bib' for section 0
INFO - Decoding LaTeX character macros into UTF-8
INFO - Found BibTeX data source 'test3.bib'
WARN - Datamodel: Entry 'Huzzard1998a' (test3.bib): Invalid format '1998-6-15' of date field 'date' - ignoring
INFO - Overriding locale 'de-DE' defaults 'variable = shifted' with 'variable = non-ignorable'
INFO - Overriding locale 'de-DE' defaults 'normalization = NFD' with 'normalization = prenormalized'
INFO - Sorting list 'nty' of type 'entry' with scheme 'nty' and locale 'de-DE'
INFO - No sort tailoring available for locale 'de-DE'
INFO - Writing 'InvalidFormatOfDateField.bbl' with encoding 'UTF-8'
INFO - Output to InvalidFormatOfDateField.bbl
INFO - WARNINGS: 1

Biber finished at Tue Feb 24 08:52:46

Example .tex file

\documentclass{scrbook}

%%%% {PACKAGES} %%%%
\usepackage[UKenglish, ngerman]{babel} %Sprachpakete Brit. Englisch, Deutsch Neue Rechtschreibung
\usepackage[utf8]{inputenc}
\usepackage[TS1, T1]{fontenc} %Kodierungen für Text 1 und Text Symbols
\usepackage{aecompl}
\usepackage{textcomp} %für Mü-Symbol


%Pakete für Zusatzfunktionen
\usepackage{hyperref} %Automatisches Verlinken der PDF-Datei

\usepackage[version=3]{mhchem}

%Weitere Pakete
\usepackage[natbib=true, style=numeric-comp, backend=biber, defernumbers, useprefix,firstinits=true, maxnames=99, maxcitenames=3]{biblatex}  % für bessere Literaturverzeichnisse
\renewcommand{\bibfont}{\normalfont\small}
\renewcommand\multicitedelim{\addsemicolon\space}
\addbibresource{test3.bib}



%In Biblatex URL ignorieren, wenn DOI existiert (Quelle: https://tex.stackexchange.com/a/5779/4009) 
\DeclareFieldFormat{url}{%
  \iffieldundef{doi}{%
    \mkbibacro{URL}\addcolon\space\url{#1}%
  }{%
  }%
}

\DeclareFieldFormat{urldate}{%
  \iffieldundef{doi}{%
    \mkbibparens{\bibstring{urlseen}\space#1}%
  }{%
  }%
}

\usepackage{csquotes} % Empfohlen bei Verwendung von biblatex

\begin{document}
\nocite{*}
\chapter{Test}
 \printbibliography
\end{document}

the .bib file test3.bib in same directory

% This file was created with JabRef 2.10.
% Encoding: UTF8


@Article{Huzzard1998a,
  Title                    = {Slip flow in concentrated alumina suspensions},
  Author                   = {Huzzard, R. J. and Blackburn, S.},
  Journal                  = {Powder Technology},
  Year                     = {1998},

  Month                    = {6},
  Number                   = {2},
  Pages                    = {118--123},
  Volume                   = {97},

  Annote                   = { A model aqueous injection moulding paste was investigated by capillary rheology. The experimental work consisted of 26 pressure measurement on each of three capillaries to provide an extended shear rate from 0.5 to 150 s?. A power law model was found to be adequate for general prediction of the low curve. However, slip flow had to be taken into account to map the shape of the flow curve more accurately. The Hatzikiriakos method, which does not require the use of different diameter capillaries, was applied to measure slip flow and gave rational solutions. The flow curve was modelled using rheological parameters for shear flow and slip flow over the region of the flow curve for which they were valid. The adjusted model incorporating slip flow gave a better correlation with the experimental results.},
  Date                     = {1998-6-15},
  ISBN                     = {0032-5910},
  Keywords                 = {Slip flow; Suspension; Ceramic injection moulding; Rheological parameters},
  M3                       = {doi: DOI: 10.1016/S0032-5910(97)03397-4},
  Ty                       = {JOUR},
  Url                      = {http://www.sciencedirect.com/science/article/B6TH9-3W7PV3R-J/2/c7388ddce941aaa116bdae27ef6ea711}
}

Used software

  • TeXLive 2014 on MacOS X
  • biblatex v2.9a
  • biber 1.9

what I tried (without success):

  • I checked the date entry, but according to the biblatex manual, YYYY-MM-DD is the correct format for date entries
  • I also removed the month/year fields to avoid duplicate information, but I still got the same error for the invalid date format
  • I delete the biber-cache (each time before compiling)
  • I wrote month = 6 instead of month = {6} as suggested in How to fix "Invalid format of field 'X'" , but this did not avoid the warning..

my biber.conf

  • I created a file ~/biber.conf
  • and added the following text:

sorry, I don't see how I can post this xml code here, it is in my posting but it is not shown, so I'll add a screenshot

enter image description here


remark: the pdf output looks ok for me, but the 100 similar warnings for other entries are intimidating

enter image description here

Best Answer

Just for an answer so the question can be closed.

When the format dictates YYYY-MM-DD, then it is required (packing with zeros if needed) that the year is four digits, and month and day are two digits.

Thus 1998-6-15 is the wrong format as the month is single digit.

One might argue that it is redundant information when we have the dashes. But it is a lot easier for a program to parse stuff when there is an 100% agreed upon format.


Remarks from the original poster: solution with JabRef

The date fields in my bibtex file were constructed with slashes / instead of dashes -, so e. g. 2013/8// instead of 2013-08 (and even double slashes // when the day was missing).

So I used JabRef 2.10 to

  • replace all / in datefields by - (caution: if you should really have used date ranges which use the / then you might mess up your dates with that!!!)
  • then in date fields replace all -- with - and had removed many of my problems (but not all).
  • I then finally found that the information was redundant, as it was contained in year and month as well as in the date field, so I decided to just remove the date fields for those entries which also had year and month defined.

In general, the regexp search/filter capabilities of JabRef were very helpful here, e. g. year=[0-9][0-9][0-9][0-9] and month=[0-9] and date!="" for finding fields with year and month defined and date not empty.

(I also cleaned up the DOIs as proposed by @moewe in the comments)

Related Question