I guess the most user friendly solution here is one where biblatex can automatically tell which works are yours and which are not. This can be done with the code from Filter bibliography by author?. (If you don't mind adding entries to categories manually, things are of course a bit simpler.)
Then it is just a matter of starting a new refcontext with labelprefix for your works and asking biblatex to reset the numbering for the other works. Throw in defernumbers because we have split numeric bibliographies and you are good to go.
\documentclass{article}
\usepackage[T1]{fontenc}
\usepackage[backend=biber,style=numeric, defernumbers]{biblatex}
\usepackage{hyperref}
\addbibresource{biblatex-examples.bib}
\makeatletter
\def\fnblx@bibfile@name{\jobname -fnblx.bib}
\newwrite\fnblx@bibfile
\immediate\openout\fnblx@bibfile=\fnblx@bibfile@name
\immediate\write\fnblx@bibfile{%
@comment{Auto-generated file}\blx@nl}
\newcounter{fnblx@name}
\setcounter{fnblx@name}{0}
\newcommand*{\fnblx@writenametobib}[1]{%
\stepcounter{fnblx@name}%
\edef\fnblx@tmp@nocite{%
\noexpand\AfterPreamble{%
\noexpand\setbox0\noexpand\vbox{%
\noexpand\fnblx@getmethehash{fnblx@name@\the\value{fnblx@name}}}}%
}%
\fnblx@tmp@nocite
\immediate\write\fnblx@bibfile{%
@misc{fnblx@name@\the\value{fnblx@name}, author = {\unexpanded{#1}}, %
options = {dataonly=true},}%
}%
}
\AtEndDocument{%
\closeout\fnblx@bibfile}
\addbibresource{\fnblx@bibfile@name}
\newcommand*{\fnblx@namehashes}{}
\DeclareNameFormat{fnblx@hashextract}{%
\xifinlist{\thefield{hash}}{\fnblx@namehashes}
{}
{\listxadd{\fnblx@namehashes}{\thefield{hash}}}}
\DeclareCiteCommand{\fnblx@getmethehash}
{}
{\printnames[fnblx@hashextract][1-999]{author}}
{}
{}
\newtoggle{fnblx@tempa}
\DeclareIndexNameFormat{fnblx@checkfilternames}{%
\xifinlist{\thefield{hash}}{\fnblx@namehashes}
{\global\toggletrue{fnblx@tempa}}
{}}
\newcommand{\addbfilternames}{\forcsvlist\fnblx@writenametobib}
\newcommand{\resetfilternames}{\def\fnblx@namehashes{}}
\defbibcheck{filternames}{%
\global\togglefalse{fnblx@tempa}
\indexnames[fnblx@checkfilternames][1-999]{labelname}%
\iftoggle{fnblx@tempa}
{}
{\skipentry}}
\defbibcheck{notfilternames}{%
\global\togglefalse{fnblx@tempa}
\indexnames[fnblx@checkfilternames][1-999]{labelname}%
\iftoggle{fnblx@tempa}
{\skipentry}
{}}
\makeatother
\addbfilternames{Emma Sigfridsson}
\begin{document}
Lorem \autocite{sigfridsson}
ipsum \autocite{worman}
dolor \autocite{geer}
sit \autocite{knuth:ct:a,knuth:ct:b}
\begin{refcontext}[labelprefix=My]
\printbibliography[check=filternames, title={Works by Emma Sigfridsson}]
\end{refcontext}
\printbibliography[resetnumbers, check=notfilternames, title={Works not by Emma Sigfridsson}]
\end{document}
![Lorem [My1] ipsum [4] dolor [1] sit [2, 3]](../../images/970c7ed78fa4f4afd3fcb682b51a589f.webp)
For comparison here is the same document with categories where you have to specify manually which entries are yours
\documentclass{article}
\usepackage[T1]{fontenc}
\usepackage[backend=biber,style=numeric, defernumbers]{biblatex}
\usepackage{hyperref}
\addbibresource{biblatex-examples.bib}
\DeclareBibliographyCategory{mywork}
\addtocategory{mywork}{sigfridsson}
\begin{document}
Lorem \autocite{sigfridsson}
ipsum \autocite{worman}
dolor \autocite{geer}
sit \autocite{knuth:ct:a,knuth:ct:b}
\begin{refcontext}[labelprefix=My]
\printbibliography[category=mywork, title={Works by Emma Sigfridsson}]
\end{refcontext}
\printbibliography[resetnumbers, notcategory=mywork, title={Works not by Emma Sigfridsson}]
\end{document}
Do Biblatex categories go into the right direction here? Do they provide the option of adding a prefix to citation keys?
– stefanbschneider Feb 04 '21 at 08:01