I have an entry key foo in my (biblatex-biber managed) bibliography, with a crossref field pointing to another entry key.
To automate type-setting operations on a series of files, I would like to be able to cite the cross-referenced entry with something like:
\citefull{\citefield{foo}{crossref}}
This naive syntax does not work, as biblatex commands are not nestable/expandable. Any hints on how to proceed?
Bonus, that could be handy too:
\citefull[\citefield{foo}{note}]{\citefield{foo}{crossref}}
What I've tried:
Many posts mention this nesting/expanding limitation and propose a workaround. I thus know this is somehow possible, but I don't understand the codes well enough to adapt them to my needs. For example this question seems quit closely related. The closest that I got was tweaking this answer, which is supposed to be more complex that what I need, as it deals with name list and I only want to expand a monolithic field. My tweak below does print the full reference of key num3 when calling key num4 (whose author field contains num3) like I want it to. However, I was not able to call the crossref field (nor a custom verba field) instead of the author field.
\documentclass{article}
\usepackage[american]{babel}
\usepackage[backend=biber,firstinits]{biblatex}
\usepackage{filecontents}
\begin{filecontents}{\jobname.bib}
@misc{num03,
title = {Title XX3},
author = {Author2 Authorsen2 and Author2a Authorsen2a},
}
@misc{num04,
title = {Title},
author = {num03},
verba = {num03},
crossref = {num03},
}
\end{filecontents}
\addbibresource{\jobname.bib}
\newcommand*{\name}{}
\DeclareIndexNameFormat{getname}{%
\nameparts{#1}
\ifblank{\namepartgiveni}
{}
{\iffirstinits
{\xappto{\name}{\namepartgiveni\space}}
{\xappto{\name}{\namepartgiven\space}}}%
\ifblank{\namepartprefix}
{\xappto{\name}{\namepartfamily}}
{\xappto{\name}{\namepartprefix\space\namepartfamily}}}
\DeclareCiteCommand{\getauthor}
{\undef\name
\boolfalse{citetracker}%
\boolfalse{pagetracker}}
{\ifnameundef{author}
{}
{\ifboolexpr{ test {\ifnumgreater{\value{citecount}}{1}}
and not test {\ifundef{\name}} }
{\gappto{\name}{; }}
{}%
\indexnames[getname][1-99]{author}}}
{}
{}
\begin{document}
\getauthor{num04}
\fullcite{\name}
\end{document}
Which, after the correct pdflatex/biber runs, gives:

I also have another (ugly) workaround based on an execute field containing a \nocite{num03}. I then tweak printbilbiography and it kind of goes the way I need... But it really doesn't sound like a proper way of doing this!
