3

There is a bug in biblatex-chicago package.

Biblatex-chicago prints the urldate information ("accessed September 27, 2017.") even if "url=false" is specified (\usepackage[url=false]{biblatex-chicago}).

This is not the behavior of biblatex.

I informed the author who will fix it. In the meantime, I need a way to clear the urldate field which touching my .bib database.

I tried without success:

\AtEveryBibitem{\clearfield{urldate}}

MWE:

\documentclass{article}
\usepackage[authordate,url=false]{biblatex-chicago}
%\usepackage[style=authoryear,url=false]{biblatex}
\addbibresource{test_biblio.bib}
\begin{document}

text
\autocite{test42}

\printbibliography

\end{document}

test_biblio.bib

@book{test42,
  author = {Author},
  title = {title},
  year = 2001,
  title = {Title},
  url = {tex.stackexchange.com},
  urldate = {2017-09-27}
}
ppr
  • 8,994

1 Answers1

5

Internally, date-like fields are decomposed by the backend (Biber or BibTeX) into their dateparts for easier handling within biblatex. So for biblatex there is no such thing as urldate, but there are urlyear, urlmonth, urlday, ... (Of course this does not mean that urldate should not be used as input in the .bib file, in fact only urldate is valid input, urlyear is not.)

So you need to delete the dateparts. Since biblatex doesn't print a date, if its year is missing, it is enough to say

\AtEveryBibitem{\clearfield{urlyear}}

If you don't want the urldate at all,

\DeclareSourcemap{
  \maps[datatype=bibtex]{
    \map{
      \step[fieldset=urldate, null]
    }
  }
}

is safer because it makes sure that the urldate is completely ignored, whereas even if you use \AtEveryBibitem{\clearfield{urlyear}} it can be used for label generation.

moewe
  • 175,683