plk / biblatex

biblatex is a sophisticated bibliography system for LaTeX users. It has considerably more features than traditional bibtex and supports UTF-8
508 stars 117 forks source link

Support for archival citations #1303

Open endter opened 1 year ago

endter commented 1 year ago

Support for archival citations in biblatex is currently facilitated only by the @misc document type or the equivalent. Citations in footnotes or endnotes are thus improperly abbreviated (e.g., with biblatex-chicago). From the standpoint of data management and concision, each box/container or folder must be cited repeatedly, with all of the accompanying data, sometimes as often as fifty times in a single bibliography. Is there any plan to expand support for archival citations, e.g. through the addition of new document types (such as a hierarchy descending from "collection" to "box" to "folder") or fields? If not, to which sort of pull request would the maintainers be open?

moewew commented 1 year ago

I don't think there are any plans at the moment to do anything about archival sources (at least I'm not planning anything. @plk obviously has to speak for himself, but I'm not aware of anything).

Generally speaking the default data model is supposed to be good enough for the vast majority of users. There is no expectation that it offers everything everyone would ever need. The data model and styles are extensible precisely so that people can add the things they are missing.

Usually new stuff is added to the data model if it requires novel features and makes sense for a wider audience or is widely requested. I try to be fairly conservative, because once something is added, it is really hard to remove and we have to essentially try to maintain it with ideally unchanged output forever. ("No is temporary. Yes is forever.")

If something is added to the standard data model and standard style output, we need to make sure that the output is sensible with all standard styles. Things have to tie in not only with numeric, alphabetic, author-year, author-title and verbose citation and bibliography styles, but also with the other features (uniqueness, citation tracking, "ibid.", ...) biblatex offers. (Per-document solutions can obviously afford to work only in a specific setting, but if things are added to the biblatex core, users will rightfully expect it to interface with "(almost) everything" biblatex has to offer.) Additionally we should also try to keep the code of the standard styles fairly simple. Adding lots of complex code for very specific subcases makes the standard styles much harder to understand and modify. But the standard styles are supposed to be a model implementation of "good biblatex code" that people can learn from and use as a basis for their own styles. And they should be easy to customise. (That's precisely why I always advise people not to base their modifications off biblatex-apa, biblatex-chicago or the like, but to start with one of the core biblatex styles. It's not that the code of those styles is bad - quite the contrary -, but the styles have to implement very complex rules to the last detail, which leads to complex code that is just not as easy to adapt as the fairly straightforward code of the biblatex standard styles.)

endter commented 1 year ago

Thanks for your reply. While archival citations are unfamiliar to many writers and researchers, they are part of the workflows of the majority of scholars and advanced students in the humanities. The lack of support in LaTeX workflows likely explains why options like Zotero enjoy broader adoption in these fields. It also explains why this feature is not widely requested—by and large, humanities researchers have not been introduced to LaTeX and would not know to ask. Unlike in the (computer) sciences, members of this group do not tend to familiarize themselves with new technologies unless immediately applicable to their workflows. Generally, humanities researchers are less likely to contribute to projects or be familiar with tools like git.

That being said, I believe that support for archival citations could be accomplished with minimal changes to the data model and little risk of downstream problems in the codebase, whether during implementation or later on.

Archival citations can adopt all of the existing document types and relate themselves to new archival data via the related and relatedtype fields (i.e. relatedtype = archival).

Four new document types (@archive, @series, @box, and @folder) would need to be created—however, this would be strictly for organizational and database uses. The new document types themselves would contain minimal information, as you will see in my example. These new document types correspond to the hierarchy of information used to physically organize archives. The greatest advantage of such a system is that it avoids the manual duplication of the same information dozens of times, as is presently the case when citing many documents from one box in an archive via @misc.

Across all new document types, no new fields would need to be introduced.

Example output: “DPMA Certificate Panel,” (1964), CBI 46, “John K. Swearingen Papers, 1936–1993,” Box 1, Folder 17, Archives of the Charles Babbage Institute, University of Minnesota, Minneapolis.

Example biblatex file:

@archive{hagley:swearingen,
  organization = {Archives of the Charles Babbage Institute},
  institution  = {University of Minnesota},
  location     = {Minneapolis},
  number       = {CBI 46},
  title        = {John K. Swearingen Papers},
  shorttitle   = {Swearingen Papers},
  author       = {Swearingen, John K.},
  annote       = {Modeled on house:papers, this type of entry could
                  automatically determine how to render the citation
                  for the main collection depending on whether
                  multiple items from that collection were cited,
                  i.e. placing the citation under the name of the
                  main author of a given collection. The use of an
                  author field would generally improve data legibility,
                  too.}
}

@box{swearingen:b1,
  number       = {1},
  title        = {Administrative},
  crossref     = {hagley:swearingen},
  annote       = {The title fields will not be printed and are user-
                  optional in this case, as box and folder numbers were
                  provided. Box or folder numbers always take precedence
                  over titles.},
}

@folder{swearingen:b1f17,
  number       = {17},
  title        = {Certificates},
  crossref     = {swearingen:b1},
}

@report{dpma:certificate,
  title             = {DPMA Certificate Panel},
  date              = {1964},
  institution       = {Data Processing Management Association},
  entrysubtype      = {unpublished},
  related           = {swearingen:b1f17},
  relatedtype       = {archive},
  annote            = {Generally, no author is required for archival reports,
                       as this information is provided by the name of the
                       collection, e.g. \mkbibquote{John K. Swearingen Papers}.
                       Ideally, labeling an item with a relatedtype of
                       \mkbibquote{archive} would add the entrysubtype of
                       \mkbibquote{unpublished} automatically.}
}