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}
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}