# Clear urldate field manually

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}
}

• \clearfield{urlyear} – moewe Sep 29 '17 at 9:57
• The problem is that urldate is split up into its components and as such for biblatex internally only urlyear, urlmonth, urlmonth exist, even though the input only uses urldate. – moewe Sep 29 '17 at 9:58
• – moewe Sep 29 '17 at 10:01
• @moewe ok \AtEveryBibitem{\clearfield{urlyear}\clearfield{urlmonth}\clearfield{urlday}} works. It was "year" and not "date", stupid me... Turn this into an answer and I will accept it. – ppr Sep 29 '17 at 15:11

## 1 Answer

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.