1

To add support for both ISBN-10 and ISBN-13 in the bib entries, I borrowed the code-snippet from here, but used bibtex as the backend. But, that does not seem to work, while it works fine with biber backend. Is there anything I can do to make it work with bibtex? MWE is provided below.

\documentclass{article}
\usepackage{filecontents}
\usepackage[backend=bibtex,datamodel=biblatex-dm,isbn=true]{biblatex}

\begin{filecontents}{\jobname.bib}
@book{drucker1959landmarks,
  title={Landmarks of Tomorrow: A Report on the New},
  author={Drucker, Peter},
  publisher={Transaction Publishers},
  year={1996},
  isbn={1560006226},
  ISBN10={1560006226},
  ISBN13={978-1560006220},
  note={[original edition 1959]}
}
\end{filecontents}
\addbibresource{\jobname.bib}

\begin{filecontents}{biblatex-dm.cfg}
\DeclareDatamodelFields[type=field,datatype=literal]{isbn10,isbn13}
\DeclareDatamodelEntryfields[book]{isbn10,isbn13}
\end{filecontents}

\DeclareFieldFormat{isbn}{\textsc{isbn-13}~\printfield{isbn13}, \textsc{isbn-10}~\printfield{isbn10}}

\title{title}
\author{A.U. Thor}

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

1 Answer 1

5

Data model customisation is only available if you use the Biber backend. If you use BibTeX, you are stuck with the default data model.

That basically means that you cannot add new fields like isbn10 or isbn13 with backend=bibtex,. The standard data model has the custom fields usera, userb, ..., userf that you can use for any purpose, so if you absolutely need to stick with BibTeX and absolutely need two ISBN fields that would be an option. Of course it is a bit unsatisfying that the field names are not very informative.

In theory it is possible to add new fields by modifying a local version of biblatex.bst (just like you would with classical BibTeX styles), but since biblatex.bst is an integral part of the biblatex package this local copy would have to be kept in synch with the rest of the package on updates. This is quite tedious and error-prone, so I absolutely do not recommend it.


Many of the advanced biblatex features are only available with Biber, that's why it has been the default backend for quite some time now and the documentation generally assumes everyone uses Biber. BibTeX is only supported as a legacy option.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .