Nick Bart - 2013-01-12

Would it be possible to add an option to biblatex2xml to convert biblatex titles in languages which distinguish “title case” and “sentence case” – i.e., all variants of English – to sentence case, leaving strings inside curly braces unchanged, as per the bibtex/biblatex rules?

(By default, biblatex considers american, british, canadian, english, australian, newzealand, USenglish, UKenglish to be such “Case Languages”, so only title fields in biblatex entries with a hyphenation field containing one of these languages should be converted.)

Reason: biblatex on the one hand and CSL on the other follow two different and mutually incompatible strategies for generating titles in either title case or sentence case depending on the requested bibliography style.

biblatex expects titles in the database to be either in the case matching the style to be used or in title case, with the option to convert them to sentence case if needed. Letters/strings that should not be converted have to be enclosed in curly braces.
biblatex provides a \MakeSentenceCase{} macro but no counterpart such as \MakeTitleCase{} (see biblatex manual). Therefore, for biblatex databases the best option is to have all titles in title case.

CSL, on the other hand, has both “Sentence Case Conversion” and “Title Case Conversion” but assumes that “strings in sentence case can be accurately converted to title case, but not vice versa” and thus recommends “it is generally preferable to store strings such as titles in sentence case” (http://citationstyles.org/downloads/specification.html#text-case).

Thus, for using biblatex databases with pandoc/citeproc-hs it would be useful if bibutils had an option to convert the various title elements in biblatex data to sentence case for entries in any of the variants of English. It should not change the case of strings inside curly braces but could well remove the curly braces themselves since these will hardly be needed afterwards.

If adding such an option to bibutils is possible, pandoc/citeproc-hs could be made to use this conversion as a default option when calling bibutils.

Thank you.