1

I am maintaining a special list of software packages via biblatex/biber. Often, I am referring to a general piece of software and not a specific version. Therefore, it is hard to give a precise year or date for the bibtex entry. So, they might look as follows:

@software{Boost,
 label = {Boost},
 title = {Boost C++~Libraries},
 url = {http://www.boost.org/},
 urldate = {2016-09-08}
}

I have used the solution from this question to make biber aware of the software entry type at all, so most warnings are gone when using the --validate-datamodel command line flag. However, what remains is:

Biber reported the following issues with 'Boost': - Datamodel: Entry 'Boost' (thesis.bib): Missing mandatory field - one of 'date, year' must be defined. (page 1)

Since I have manually assigned a label I am completely happy with the way of how things get printed. I just want to silence this warning. Any way to achieve this?

3
  • Well date or year is mandatory for all entry types. Either ignore the warning or rewrite the datamodel.
    – moewe
    Mar 21, 2017 at 12:59
  • How would I overwrite the data model for this purpose?
    – languitar
    Mar 21, 2017 at 13:05
  • Have a look at tex.stackexchange.com/q/283238/35864 But you should really ask yourself if the hassle is worth it. I'm not sure yet, but if you are out of luck you might have to rewrite the entire datamodel just to get rid of a few warnings.
    – moewe
    Mar 21, 2017 at 13:09

1 Answer 1

2

For this you will really have to roll your own datamodel, see Define required bib fields in biblatex with biber and What does the mandatory constraint type in biblatex do?.

If you do that, this will automatically solve your problem from Silence biber warning “Invalid field 'XXX' for entrytype 'YYY'” as well, you will not need the aliasing with \DeclareDriverSourcemap (in fact it will create problems if you do!), just go back to \DeclareBibliographyAlias.

Create file called languitar.dbx with the following content

\DeclareDatamodelEntryfields[software]{
  title,
  url,
  addendum,
  author,
  editor,
  editortype,
  language,
  month,
  note,
  organization,
  pubstate,
  subtitle,
  titleaddon,
  urlhour,
  urlminute,
  urlsecond,
  urltimezone,
  urlendhour,
  urlendminute,
  urlendsecond,
  urlendtimezone,
  urlday,
  urlendday,
  urlendmonth,
  urlendyear,
  urlmonth,
  urlyear,
  version,
  year}

(This is for @software, but you can do the same for @standard.)

Then load that model with the datamodel=languitar option whenever you load biblatex.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .
https://tex.stackexchange.com/questions/359582/silence-biber-datamodel-warning-about-missing-field
tex.stackexchange.com
CC-MAIN-2024-18
145788
application/http; msgtype=response
sha1:BHB37AH4JQGWEUV5HLMNWOTZZFTPHNPG
<urn:uuid:cc851e18-b51c-4b20-9497-edff6d79b4e6>
2024-04-21T00:12:56Z
172.64.144.30
text/html
sha1:Q3I4LYV477W23ZXRECBLUWDLHXA4UOFF
<urn:uuid:b5267e7a-ed2e-4d6c-a988-f31b31f4de07>
https://tex.stackexchange.com/questions/359582/silence-biber-datamodel-warning-about-missing-field
response
<urn:uuid:98787586-d433-45dd-ad99-783bf3f56341>
isPartOf: CC-MAIN-2024-18
publisher: Common Crawl
description: Wide crawl of the web for April 2024
operator: Common Crawl Admin (info@commoncrawl.org)
hostname: ip-10-67-67-230
software: Apache Nutch 1.19 (modified, https://github.com/commoncrawl/nutch/)
robots: checked via crawler-commons 1.5-SNAPSHOT (https://github.com/crawler-commons/crawler-commons)
format: WARC File Format 1.1
conformsTo: https://iipc.github.io/warc-specifications/specifications/warc-format/warc-1.1/