1

I am currently writing my masterthesis and using biblatex with style=apa. There are some laws I have to cite and my prof. asked me to cite them like this: "(GDPR, Art. 1)".

For that I created a new cite command (\parenciteshorttitle) that does the job for me. Now I need to have a similar command for multicites. Similar to \parencites. I declared a new multicite command based on \parenciteshorttitle and it seems to work well. But in the end my cite is missing the parentheses. Does anybody know how I can get them inserted?

Here is my MWE:

\documentclass[a4paper,13pt]{scrartcl}

\usepackage{geometry}
\geometry{left=3.5cm, right=2cm, top=2.5cm, bottom=2cm}


\usepackage[ngerman]{babel}
\usepackage[babel,german=quotes]{csquotes}

\usepackage[T1]{fontenc}
\usepackage{lmodern}
\usepackage{filecontents}
\usepackage{hyperref}

%-------------------------------------------------------------------%
% Bibliography with bibLaTeX                                        %
%-------------------------------------------------------------------%
\usepackage[style=apa]{biblatex}
\bibliography{literatur}

% Zitationsstil für Kurzttitel

\DeclareMultiCiteCommand{\parencitesshorttitle}{\parenciteshorttitle}{\multicitedelim}

\DeclareCiteCommand{\parenciteshorttitle}[\mkbibparens]
{\usebibmacro{cite:init}%
    \usebibmacro{prenote}}
{\usebibmacro{citeindex}%
    \printtext[bibhyperref]{\printfield[cite]{shorttitle}}}
{}
{\usebibmacro{postnote}%
    \usebibmacro{cite:post}}


\begin{filecontents}{literatur.bib}
@misc{DSGVO,
    author = {{Europ{\"a}ische Union}},
    title = {{Verordnung (EU) 2016/679 des Europ{\"a}ischen Parlaments und des Rates vom 27. April 2016 zum Schutz nat{\"u}rlicher Personen bei der Verarbeitung personenbezogener Daten, zum freien Datenverkehr und zur Aufhebung der Richtlinie 95/46/EG (Datenschutz-Grundverordnung): DSGVO}},
    url = {https://eur-lex.europa.eu/eli/reg/2016/679/oj},
    pages = {1--88},
    pagination = {page},
    journaltitle = {Abl. (Amtsblatt der Europ{\"a}ischen Union)},
    version = {ABl. L 119 vom 4.5.2016, S. 1--88},
    year = {2016},
    shorttitle = {DSGVO}
}

@misc{GoBD,
    author = {{Bundesministerium der Finanzen}},
    title = {Grunds{\"a}tze zur ordnungsm{\"a}{\ss}igen F{\"u}hrung und Aufbewahrung von B{\"u}chern, Aufzeichnungen und Unterlagen in elektronischer Form sowie zum Datenzugriff (GoBD)},
    pagetotal = {37},
    date = {2014-11-14},
    version = {IV A 4 - S 0316/13/10003},
    year = {2014},
    shorttitle = {GoBD}
}

\end{filecontents}

\begin{document}

    \section{Ein Kapitel}
    Ein Zitat \parenciteshorttitle[Art. 1]{DSGVO}\\

    Noch ein Zitat \parencitesshorttitle[Art. 1]{DSGVO}[Rzn. 6]{GoBD}




    %-------------------------------------------------------------------
    % Literaturverzeichnis
    %-------------------------------------------------------------------
    \setcounter{secnumdepth}{0} %% no numbering
    \printbibliography[title=Literaturverzeichnis]

\end{document}

And this is what it looks like:

Ein Zitat (DSGVO, Art. 1)//Noch ein Zitat DSGVO, Art. 1; GoBD, Rzn. 6

I hope that somebody can help me :-)

1 Answer 1

1
\DeclareMultiCiteCommand{\parencitesshorttitle}[\mkbibparens]
  {\parenciteshorttitle}{\multicitedelim}

should do what you want.

Multicite commands defined with \DeclareMultiCiteCommand{<multi-cite>}{<single-cite>}{<delim>} drop the wrapper around the <single-cite> command(s). A wrapper around the complete multi-cite citation can be added back in with the optional wrapper argument of \DeclareMultiCiteCommand{<multi-cite>}[<wrapper>]{<single-cite>}{<delim>}.

\documentclass[ngerman, a4paper, 13pt]{scrartcl}
\usepackage{geometry}
\geometry{left=3.5cm, right=2cm, top=2.5cm, bottom=2cm}

\usepackage[T1]{fontenc}
\usepackage{lmodern}
\usepackage{babel}
\usepackage[autostyle, german=quotes]{csquotes}
\usepackage[style=apa]{biblatex}
\usepackage{hyperref}


\DeclareMultiCiteCommand{\parencitesshorttitle}[\mkbibparens]
  {\parenciteshorttitle}{\multicitedelim}

\DeclareCiteCommand{\parenciteshorttitle}[\mkbibparens]
  {\usebibmacro{cite:init}%
   \usebibmacro{prenote}}
  {\usebibmacro{citeindex}%
   \printtext[bibhyperref]{%
     \printfield[cite]{shorttitle}}}
  {}
  {\usebibmacro{postnote}%
   \usebibmacro{cite:post}}


\usepackage{filecontents}
\begin{filecontents}{\jobname.bib}
@misc{DSGVO,
  author       = {{Europäische Union}},
  title        = {Verordnung (EU) 2016/679 des Europäischen Parlaments
                  und des Rates vom 27.~April 2016 zum Schutz
                  natürlicher Personen bei der Verarbeitung
                  personenbezogener Daten, zum freien Datenverkehr
                  und zur Aufhebung der Richtlinie 95/46/EG
                  (Datenschutz-Grundverordnung): DSGVO},
  url          = {https://eur-lex.europa.eu/eli/reg/2016/679/oj},
  pages        = {1--88},
  journaltitle = {Abl. (Amtsblatt der Europäischen Union)},
  version      = {ABl. L 119 vom 4.5.2016, S. 1--88},
  year         = {2016},
  shorttitle   = {DSGVO},
}
@misc{GoBD,
  author     = {{Bundesministerium der Finanzen}},
  title      = {Grundsätze zur ordnungsmäßigen Führung und Aufbewahrung
                von Büchern, Aufzeichnungen und Unterlagen in
                elektronischer Form sowie zum Datenzugriff (GoBD)},
  pagetotal  = {37},
  date       = {2014-11-14},
  version    = {IV A 4 - S 0316/13/10003},
  year       = {2014},
  shorttitle = {GoBD},
}
\end{filecontents}
\addbibresource{\jobname.bib}

\begin{document}
  \section{Ein Kapitel}
  Ein Zitat \parenciteshorttitle[Art.~1]{DSGVO}

  Noch ein Zitat \parencitesshorttitle[Art.~1]{DSGVO}[Rzn.~6]{GoBD}

  \printbibliography[title=Literaturverzeichnis]
\end{document}

Ein Zitat (DSGVO, Art. 1)//Noch ein Zitat (DSGVO, Art. 1; GoBD, Rzn. 6)

With styles other than apa one could have gotten around defining a new command using the shorthand field.


If DSVGO is always cited with Art. and GoDB with Rzn., then it may make sense to adjust the pagination field accordingly.

\documentclass[ngerman, a4paper, 13pt]{scrartcl}
\usepackage{geometry}
\geometry{left=3.5cm, right=2cm, top=2.5cm, bottom=2cm}

\usepackage[T1]{fontenc}
\usepackage{lmodern}
\usepackage{babel}
\usepackage[autostyle, german=quotes]{csquotes}
\usepackage[style=apa]{biblatex}
\usepackage{hyperref}


\DeclareMultiCiteCommand{\parencitesshorttitle}[\mkbibparens]
  {\parenciteshorttitle}{\multicitedelim}

\DeclareCiteCommand{\parenciteshorttitle}[\mkbibparens]
  {\usebibmacro{cite:init}%
   \usebibmacro{prenote}}
  {\usebibmacro{citeindex}%
   \printtext[bibhyperref]{%
     \printfield[cite]{shorttitle}}}
  {}
  {\usebibmacro{postnote}%
   \usebibmacro{cite:post}}


\usepackage{filecontents}
\begin{filecontents}{\jobname.bib}
@misc{DSGVO,
  author       = {{Europäische Union}},
  title        = {Verordnung (EU) 2016/679 des Europäischen Parlaments
                  und des Rates vom 27.~April 2016 zum Schutz
                  natürlicher Personen bei der Verarbeitung
                  personenbezogener Daten, zum freien Datenverkehr
                  und zur Aufhebung der Richtlinie 95/46/EG
                  (Datenschutz-Grundverordnung): DSGVO},
  url          = {https://eur-lex.europa.eu/eli/reg/2016/679/oj},
  pagination   = {article},
  journaltitle = {Abl. (Amtsblatt der Europäischen Union)},
  version      = {ABl. L 119 vom 4.5.2016, S. 1--88},
  year         = {2016},
  shorttitle   = {DSGVO},
}
@misc{GoBD,
  author     = {{Bundesministerium der Finanzen}},
  title      = {Grundsätze zur ordnungsmäßigen Führung und Aufbewahrung
                von Büchern, Aufzeichnungen und Unterlagen in
                elektronischer Form sowie zum Datenzugriff (GoBD)},
  pagination = {marginnumber},
  date       = {2014-11-14},
  version    = {IV A 4 - S 0316/13/10003},
  year       = {2014},
  shorttitle = {GoBD},
}
\end{filecontents}
\addbibresource{\jobname.bib}

\NewBibliographyString{article}
\NewBibliographyString{articles}
\NewBibliographyString{marginnumber}
\NewBibliographyString{marginnumbers}

\DefineBibliographyStrings{german}{
  article       = {Art\adddot},
  articles      = {Art\adddot},
  marginnumber  = {Rzn\adddot},
  marginnumbers = {Rzn\adddot},
}

\begin{document}
  \section{Ein Kapitel}
  Ein Zitat \parenciteshorttitle[1]{DSGVO}

  Noch ein Zitat \parencitesshorttitle[1]{DSGVO}[6]{GoBD}

  \printbibliography[title=Literaturverzeichnis]
\end{document}
3
  • seems legit. Thank you, this solved my problem :-) (I'll accept your answer in a few minutes when it's allowed by StackExchange)
    – The Shadow
    Commented Apr 26, 2019 at 8:48
  • When I define these Bibliography Strings, How would I cite something like: "(DSGVO, Art. 1 Abs.1 lit. a)"?
    – The Shadow
    Commented Apr 26, 2019 at 9:20
  • 1
    @TheShadow Then you still would have to write Art.~1 Abs.~1 lit.~a. The current system only deals with a single level of 'pagination'/'sectioning' (it is just a simple extension of the "p."/"pp." mechanism for other types of sectioning like lines or verses). It would be conceivable to apply more sophisticated post-processing steps that would convert something like 1.1.a to Art.~1 Abs.~1 lit.~a, but that would have to be thought through and would likely be a little more complex...
    – moewe
    Commented Apr 26, 2019 at 9:27

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .