Feature request: self-cite option
When an author of a work is also the author of a cited work, I have taken to using various formats in particular:
according to Smith (self-citation)
in Edwards, 2020 (self-citation) and Smith, 2005
(self-citation, Cunningham et al, 2008)
[1, self]
That is, a self-citation notice follows inline natural citations; precedes parenthetical citations within the parenthesis; and is notated in numerical citations following the number.
This is not an official style by any guideline; and I would like the option to make such a citation in the various biblatex styles (apa, author-year, etc.) as such:
\addselfciteauthor{author} % if this is an author, automatically self-cite
\excludeselfciteauthor{author} % If automatically taking authors from \author
\addselfcite{bibkey} % automatically self-cite this bibkey
\excludeselfcite{bibkey} % this bibkey is never an automatic self-cite (2 authors with the same name)
There is also the possibility of \autocite[self]{bibkey}, but it makes a great deal more sense to indicate (e.g. in the preamble or a reference section) which bibkeys are which authors. \addselfcite[author={author,author}]{bibkey} also makes some sense, e.g. as data to generate a list of self-cited works and which author was involved, to add to an annotated bibliography, or otherwise.
These commands are generic, and do not strictly require a style to implement them; their inclusion, along with a setting or environment to enable and disable self-cite styles, allows authors to include in their LaTeX source clear, meaningful, and consistent commands which may be applied by supporting styles if the authors so choose, and which may be disabled by indicating to not apply self-cite styles.
I have encountered far too many works which self-cite works which themselves self-cite, including those which have gained attention as well-researched new ideas when they are based on unfounded assertions by the author through a chain of self-references, and those later retracted not for their sloppy research and endless self-citation, but instead due to the content constructed from such. I myself am creating a great deal of new theory and using this to support even further new theory; this hazard of self-citation then requires a clear and deliberate response to ensure readers are immediately alerted I am building on my own work, a practice which should have been taken up by academia long ago.
This feature is unintrusive and should have no effect on those who do not explicitly make use of it.
Thank you for this interesting feature suggestion.
I think the general infrastructure to be able to identify works by particular authors would be nice to have for a variety of use cases (https://tex.stackexchange.com/q/73136/35864, https://tex.stackexchange.com/q/28509/35864), so we may want to think about implementing something like auto hash generation and name matching (string matching is already possible, see the links, but I really think we should use hashes, which is already possible, but needs a few tricks to do something that could be easier with a dedicated Biber interface: https://tex.stackexchange.com/a/416416/35864), which would probably get you halfway to what you want.
I'm not sure if we can add the self-citation markers to the standard styles, as that will quite likely require code changes to the styles. Code changes to the style macros are tricky for two reasons: First of all, all sorts of documents, preambles and custom styles may rely on certain aspects of the code as it is at the moment. Gentle (or not so gentle) changes are certainly possible, but need to be made carefully to avoid unwanted side effects like style breakages (e.g. https://github.com/josephwright/biblatex-ieee/issues/51, and then https://github.com/josephwright/biblatex-ieee/issues/55 and https://github.com/josephwright/biblatex-ieee/issues/56). Secondly, the standard styles are supposed to be base/example/model styles that people can use as basis for their customisations. That means it would be good not to overload the standard styles with niche requirements.
There are some more pressing bugs in biblatex 3.15 and 3.15a that need to be taken care of first, but I will certainly have another look at the ideas here at some point.
Yes, changes are certainly possible, and will require regression testing especially in sufficiently-complex code. I described what I did above as a way to retain compatibility: biblatex should effectively provide stubbed-out commands if the style doesn't support the command.
I hope to drive this as standard practice, because I want attention drawn immediately to any self-citation—not in the bibliography, but where the citation occurs—so the reader can decide if they need to research the author and dig through their founding works. This is certainly something readers can do today, but readers are not computers and do not operate algorithmically and without fail; repeat immediate feedback raises to the reader a sense that the author is significantly supported by themselves.
I'm not sure on string matching versus hashes. I suppose you could hash all the authors in the first go; although at the same time, you can internally build a tree of all the references and indicate which are self-cite by string matching using Boyer-Moore. If hashing, I recommend SpookyHash, but all that is code details and not important to the end user.
This is something that can sit on the wait list for some time, as it is not pressing.