%% %% This is file `oxref.bbx', %% generated with the docstrip utility. %% %% The original source files were: %% %% oxref.dtx (with options: `bbx,o') %% ---------------------------------------------------------------- %% biblatex-oxref --- Biblatex styles inspired by the Oxford Guide to Style %% Author: Alex Ball %% E-mail: a.j.ball@bath.ac.uk %% License: Released under the LaTeX Project Public License v1.3c or later %% See: http://www.latex-project.org/lppl.txt %% ---------------------------------------------------------------- %% \def\Version{2018/03/03 v0.12} \NeedsTeXFormat{LaTeX2e}[1999/12/01] \ProvidesFile{oxref.bbx} [\Version\space Base settings for bibliography styles inspired by the Oxford Guide to Style] \RequirePackage{xpatch} \RequirePackage{xstring} \RequirePackage{graphicx} \DeclareLanguageMappingSuffix{-oxref} \NewBibliographyString{% director, performer, reader, conductor, serieseditor, holder, editorcm, directors, performers, readers, conductors, serieseditors, holders, editorcms, bydirector, byperformer, byreader, byconductor, byserieseditor, byholder, byeditorcm, facsimile, revised, revisedenlarged, revisedreprint, suppto, equals, original, inpressin, book, books, canto, cantos, stanza, stanzas, act, acts, scene, scenes, folio, folios, article, articles, clause, clauses, regulation, regulations, rule, rules, booktotal, booktotals, cantototal, cantototals, stanzatotal, stanzatotals, acttotal, acttotals, scenetotal, scenetotals, foliototal, foliototals, articletotal, articletotals, clausetotal, clausetotals, regulationtotal, regulationtotals, ruletotal, ruletotals, facebook, tweet, podcast, clip, webcast, poster, nolocation, modified, recorded, uploaded, filed, issued, anon, pseudo, urldown, countryjp, patentjp, patreqjp, 1column, 2column, inflayer, suplayer, paper, papyrus, pergament, eucase, eujoinedcases, commissiondecision, application, order, bill, draft, opened, signed, adopted, inforce, } \RequireBibliographyStyle{standard} \ExecuteBibliographyOptions{urldate=comp,pagetracker,timezeros=false,time=12h,isbn=false} \renewcommand*{\labelnamepunct}{\addcomma\space} \renewcommand*{\newunitpunct}{\addcomma\space} \renewcommand*{\subtitlepunct}{\addcolon\space} \renewcommand*{\intitlepunct}{\nopunct\space} \renewcommand*{\bibnamedash}{\resizebox{2em}{\height}{\textemdash}\addthinspace} \newcommand*{\recordseriespunct}{\addcomma\space} \newcommand*{\relatedtypepunct}{\addsemicolon\space} \renewcommand*{\relateddelim}{\addsemicolon\space} \DeclareDelimFormat{revsdnamedelim}{\addcomma} \DeclareDelimFormat{authortypedelim}{\addspace} \DeclareDelimFormat{editortypedelim}{\addspace} \DeclareDelimFormat{translatortypedelim}{\addspace} \DeclareNameAlias{bookauthor}{default} \DeclareNameAlias{bookeditor}{default} \newtoggle{blx@ox@scnames} \DeclareBibliographyOption[boolean]{scnames}[true]{% \settoggle{blx@ox@scnames}{#1} } \newtoggle{blx@ox@nametitle}\toggletrue{blx@ox@nametitle}% \DeclareBibliographyOption[boolean]{usenametitles}[true]{% \settoggle{blx@ox@nametitle}{#1}} \DeclareTypeOption[boolean]{usenametitles}[true]{% \settoggle{blx@ox@nametitle}{#1}} \DeclareEntryOption[boolean]{usenametitles}[true]{% \settoggle{blx@ox@nametitle}{#1}} \newbibmacro*{name:title-given-family}[5]{% \usebibmacro{name:delim}{#2#3#1}% \usebibmacro{name:hook}{#2#3#1}% \ifdefvoid{#5}{}{\iftoggle{blx@ox@nametitle}{\mkbibnametitle{#5}\isdot\bibnamedelimd}{}}% \ifdefvoid{#2}{}{\mkbibnamegiven{#2}\isdot\bibnamedelimd}% \ifdefvoid{#3}{}{% \mkbibnameprefix{#3}\isdot \ifprefchar {} {\ifuseprefix{\bibnamedelimc}{\bibnamedelimd}}}% \mkbibnamefamily{#1}\isdot \ifdefvoid{#4}{}{\ifnumeral{#4}{}{\addcomma}\bibnamedelimd\mkbibnamesuffix{#4}\isdot}} \newbibmacro*{name:family-title-given}[5]{% \ifuseprefix{% \usebibmacro{name:delim}{#3#1}% \usebibmacro{name:hook}{#3#1}% \ifdefvoid{#3}{}{% \ifcapital{% \mkbibnameprefix{\MakeCapital{#3}}\isdot }{% \mkbibnameprefix{#3}\isdot}% \ifprefchar{}{\bibnamedelimc}}% \mkbibnamefamily{#1}\isdot \ifdefvoid{#4}{}{\ifnumeral{#4}{}{\addcomma}\bibnamedelimd\mkbibnamesuffix{#4}\isdot}% \ifboolexpe{% (test {\ifdefvoid{#5}} or not togl {blx@ox@nametitle}) and test {\ifdefvoid{#2}}% }{}{% \revsdnamepunct}% \ifdefvoid{#5}{}{\iftoggle{blx@ox@nametitle}{\bibnamedelimd\mkbibnametitle{#5}\isdot}{}}% \ifdefvoid{#2}{}{\bibnamedelimd\mkbibnamegiven{#2}\isdot}% }{% \usebibmacro{name:delim}{#1}% \usebibmacro{name:hook}{#1}% \mkbibnamefamily{#1}\isdot \ifdefvoid{#4}{}{\bibnamedelimd\mkbibnamesuffix{#4}\isdot}% \ifboolexpe{% (test {\ifdefvoid{#5}} or not togl {blx@ox@nametitle}) and test {\ifdefvoid{#2}} and test {\ifdefvoid{#3}}% }{}{% \revsdnamepunct}% \ifdefvoid{#5}{}{\iftoggle{blx@ox@nametitle}{\bibnamedelimd\mkbibnametitle{#5}\isdot}{}}% \ifdefvoid{#2}{}{\bibnamedelimd\mkbibnamegiven{#2}\isdot}% \ifdefvoid{#3}{}{\bibnamedelimd\mkbibnameprefix{#3}\isdot}}} \def\blx@ox@lasthash{} \DeclareNameFormat{bib-family-given/cite-given-family}{% \iffieldannotation{inferred}{\ifnumequal{\value{listcount}}{1}{\bibopenbracket}{}}{}% \ifitemannotation{inferred}{\bibopenbracket}{}% \ifbibliography{% \iftoggle{blx@ox@scnames}{% \renewcommand*{\mkbibnamefamily}[1]{\textsc{##1}}% \renewcommand*{\mkbibnamegiven}[1]{\textsc{##1}}% \renewcommand*{\mkbibnameprefix}[1]{\textsc{##1}}% \renewcommand*{\mkbibnamesuffix}[1]{\textsc{##1}}% \renewcommand*{\mkbibnametitle}[1]{##1}% }{}% \ifgiveninits{% \usebibmacro{name:family-title-given}% {\namepartfamily}% {\namepartgiveni}% {\namepartprefix}% {\namepartsuffix}% {\nameparttitle}% }{% \usebibmacro{name:family-title-given}% {\namepartfamily}% {\namepartgiven}% {\namepartprefix}% {\namepartsuffix}% {\nameparttitle}% }% \savefield{hash}{\blx@ox@lasthash}% \ifitemannotation{pseudo}{% \addspace\printtext[parens]{% \iftoggle{blx@ox@scnames}{% \textsc{\bibsstring{pseudo}}% }{% \bibsstring{pseudo}% }}% }{}% \iftoggle{blx@ox@scnames}{% \renewcommand*{\mkbibnamefamily}[1]{##1}% \renewcommand*{\mkbibnamegiven}[1]{##1}% \renewcommand*{\mkbibnameprefix}[1]{##1}% \renewcommand*{\mkbibnamesuffix}[1]{##1}% \renewcommand*{\mkbibnametitle}[1]{##1}% }{}% }{% \ifgiveninits{% \usebibmacro{name:title-given-family}% {\ifitemannotation{pseudo}{\biblstring{pseudo}}{}\namepartfamily}% {\namepartgiveni}% {\namepartprefix}% {\namepartsuffix}% {\nameparttitle}% }{% \usebibmacro{name:title-given-family}% {\ifitemannotation{pseudo}{\biblstring{pseudo}}{}\namepartfamily}% {\namepartgiven}% {\namepartprefix}% {\namepartsuffix}% {\nameparttitle}% }% \savefield{hash}{\blx@ox@lasthash}% }% \ifitemannotation{inferred}{\bibclosebracket}{}% \usebibmacro{name:andothers}% \iffieldannotation{inferred}{% \ifboolexpr{ test {\ifnumequal{\value{listcount}}{\value{maxnames}}} or test {\ifnumequal{\value{listcount}}{\value{listtotal}}} or ( test {\ifnumequal{\value{listcount}}{\value{minnames}}} and test {\ifnumgreater{\value{listtotal}}{\value{maxnames}}} ) }{\bibclosebracket}{}% }{}% } \newtoggle{blx@ox@variantname} \DeclareNameFormat{given-family}{% \ifgiveninits {\usebibmacro{name:title-given-family} {\namepartfamily} {\namepartgiveni} {\namepartprefix} {\namepartsuffix} {\nameparttitle}} {\usebibmacro{name:title-given-family} {\namepartfamily} {\namepartgiven} {\namepartprefix} {\namepartsuffix} {\nameparttitle}}% \savefield{hash}{\blx@ox@lasthash}% \ifitemannotation{variant}{% \global\settoggle{blx@ox@variantname}{true}% }{% \global\settoggle{blx@ox@variantname}{false}}% \usebibmacro{name:andothers}} \DeclareNameFormat{family-given}{% \ifgiveninits {\usebibmacro{name:family-title-given} {\namepartfamily} {\namepartgiveni} {\namepartprefix} {\namepartsuffix} {\nameparttitle}} {\usebibmacro{name:family-title-given} {\namepartfamily} {\namepartgiven} {\namepartprefix} {\namepartsuffix} {\nameparttitle}}% \savefield{hash}{\blx@ox@lasthash}% \ifitemannotation{variant}{% \global\settoggle{blx@ox@variantname}{true}% }{% \global\settoggle{blx@ox@variantname}{false}}% \usebibmacro{name:andothers}} \xpatchbibmacro{name:given-family}% {\bibnamedelimd\mkbibnamesuffix{#4}}% {\ifnumeral{#4}{}{\addcomma}\bibnamedelimd\mkbibnamesuffix{#4}}{}{} \xpatchbibmacro{name:family-given}% {\bibnamedelimd\mkbibnamesuffix{#4}}% {\ifnumeral{#4}{}{\addcomma}\bibnamedelimd\mkbibnamesuffix{#4}}{}{} \DeclareFieldFormat{nameaddon}{\mkbibbrackets{#1}} \DeclareFieldFormat{namevariant}{\mkbibparens{\bibstring{equals}\space #1}} \newcounter{namepairs} \newsavebox{\blx@ox@namebox} \newsavebox{\blx@ox@altnamebox} \newbibmacro*{namepairs}[2]{% \setcounter{namepairs}{0}% \savebibmacro{name:andothers}% \renewbibmacro*{name:andothers}{}% \whileboolexpr{% test {\ifnumless{\value{namepairs}}{\value{#1}}} and ( test {\ifdefvoid{\c@maxnames}} or test {\ifnumequal{\c@maxnames}{0}} or test {\ifnumless{\value{#1}}{\c@maxnames}} or test {\ifnumequal{\value{#1}}{\c@maxnames}} or test {\ifdefvoid{\c@minnames}} or test {\ifnumequal{\c@minnames}{0}} or test {\ifnumless{\value{namepairs}}{\c@minnames}} ) }{% \stepcounter{namepairs}% \ifnumgreater{\value{namepairs}}{1}{% \ifnumequal{\value{#1}}{2}{% \setunit*{\addspace\bibstring{and}\addspace}% }{% \ifnumequal{\value{namepairs}}{\value{#1}}{% \setunit*{\addcomma\space\bibstring{and}\addspace}% }{% \setunit*{\addcomma\space}% }% }% }{}% \savebox{\blx@ox@namebox}{% \printnames[#1][\value{namepairs}-\value{namepairs}]{#1}% }% \let\blx@ox@firsthash=\blx@ox@lasthash \IfEndWith{#2}{addon}{% \savebox{\blx@ox@altnamebox}{% \printnames[by#1][\value{namepairs}-\value{namepairs}]{#2}% }% \let\blx@ox@secondhash=\blx@ox@lasthash \ifdefstrequal{\blx@ox@firsthash}{\blx@ox@secondhash}{% \unhbox\blx@ox@namebox }{% \unhbox\blx@ox@namebox\addspace \iftoggle{blx@ox@variantname}{% \ifbibliography{% \printtext[namevariant]{\printnames[#1][\value{namepairs}-\value{namepairs}]{#2}}% }{}% }{% \printtext[nameaddon]{\unhbox\blx@ox@altnamebox}% }% }% }{% \savebox{\blx@ox@altnamebox}{% \printnames[#1][\value{namepairs}-\value{namepairs}]{#2}% }% \let\blx@ox@secondhash=\blx@ox@lasthash \ifdefstrequal{\blx@ox@firsthash}{\blx@ox@secondhash}{% \unhbox\blx@ox@namebox }{% \unhbox\blx@ox@altnamebox \addspace\mkbibparens{\unhbox\blx@ox@namebox}% }% }% }% \ifboolexpr{ test {\ifnumequal{\value{namepairs}}{\c@minnames}} and test {\ifnumgreater{\value{#1}}{\c@maxnames}} }{% \ifnumgreater{\c@minnames}{1}{% \finalandcomma }{}% \printdelim{andothersdelim}\bibstring{andothers}% }{}% \restorebibmacro{name:andothers}% } \newbibmacro*{author+altauthor}{% \ifboolexpr{ test {\ifnameundef{authoraddon}} and test {\ifnameundef{jointauthor}} }{% \printnames{author}% }{% \ifnumequal{\value{authoraddon}}{\value{author}}{% \usebibmacro{namepairs}{author}{authoraddon}% }{% \printnames{author}% \ifnameundef{authoraddon}{}{% \setunit*{\addspace}% \printtext[nameaddon]{\printnames[byauthor]{authoraddon}}}% }% \ifnameundef{jointauthor}{}{% \setunit{\addcomma\space}% \iffieldundef{jointauthortype}{% \bibstring{byeditor}% }{% \printfield{jointauthortype}}% \setunit{\addspace}% \printnames[author]{jointauthor}% }% }% } \DeclareFieldFormat{jointauthortype}{% \ifbibstring{by#1}{\bibstring{by#1}}{#1}} \newbibmacro*{editor+alteditor}{% \ifnameundef{editoraddon}{% \printnames{editor}% }{ \ifnumequal{\value{editoraddon}}{\value{editor}}{% \usebibmacro{namepairs}{editor}{editoraddon}% }{% \printnames{editor}% \setunit*{\addspace}% \printtext[nameaddon]{\printnames[byeditor]{editoraddon}}% }% }% } \newbibmacro*{bbx:savehash}{} \DeclareBibliographyOption{dashed}[true]{% \ifstrequal{#1}{true}{% \ExecuteBibliographyOptions{pagetracker}% \renewbibmacro*{bbx:savehash}{\savefield{fullhash}{\bbx@lasthash}}% }{% \renewbibmacro*{bbx:savehash}{}% }% } \InitializeBibliographyStyle{% \global\undef\bbx@lasthash} \newbibmacro*{bbx:dashcheck}[2]{% \ifboolexpr{ test {\iffieldequals{fullhash}{\bbx@lasthash}} and not test \iffirstonpage and ( not bool {bbx@inset} or test {\iffieldequalstr{entrysetcount}{1}} ) }{#1}{#2}% } \newbool{bbx@inset} \DeclareBibliographyDriver{set}{% \booltrue{bbx@inset}% \entryset{}{}% \newunit\newblock \usebibmacro{setpageref}% \finentry} \newtoggle{blx@ox@autoanon} \newtoggle{blx@ox@abbranon} \DeclareBibliographyOption[string]{anon}[short]{% \ifcsdef{blx@ox@opt@anon@#1}{% \csuse{blx@ox@opt@anon@#1}% }{% \PackageError{oxref} {Invalid option 'anon=#1'} {Valid values are 'long', 'short', and 'literal'.}}} \csdef{blx@ox@opt@anon@literal}{\togglefalse{blx@ox@autoanon}} \csdef{blx@ox@opt@anon@long}{\toggletrue{blx@ox@autoanon}\togglefalse{blx@ox@abbranon}} \csdef{blx@ox@opt@anon@short}{\toggletrue{blx@ox@autoanon}\toggletrue{blx@ox@abbranon}} \DeclareStyleSourcemap{ \maps[datatype=bibtex]{% \map{% \step[fieldsource=author]% \step[fieldset=rawauthor, origfieldval]% } }% } \newcommand*{\oxrefanon}{Anonymous} \newtoggle{blx@ox@isanon} \renewbibmacro*{author}{% \iffieldequals{rawauthor}{\oxrefanon}{% \toggletrue{blx@ox@isanon}% }{% \togglefalse{blx@ox@isanon}}% \ifboolexpr{ test \ifuseauthor and ( not test {\ifnameundef{author}} ) and ( ( not togl {blx@ox@isanon} ) or ( not togl {blx@ox@autoanon} ) or test {\ifbibliography} ) } {\usebibmacro{bbx:dashcheck} {\bibnamedash} {\usebibmacro{bbx:savehash}% \ifboolexpr{ togl {blx@ox@autoanon} and togl {blx@ox@isanon} }{% \iftoggle{blx@ox@abbranon}{\bibcpsstring{anon}}{\bibcplstring{anon}}% }{% \usebibmacro{author+altauthor}% }% \iffieldundef{nameaddon} {} {\setunit{\addspace}% \printfield{nameaddon}}% \setunit{\printdelim{authortypedelim}}}% \iffieldundef{authortype} {} {\usebibmacro{authorstrg}% \setunit{\addspace}}}% {\global\undef\bbx@lasthash}} \DeclareFieldFormat{authortype}{\mkbibparens{#1}} \newcommand{\titlebyauthordelim}{\addspace} \renewbibmacro*{editor}{% \usebibmacro{bbx:editor}{editorstrg}} \renewbibmacro*{editor+others}{% \usebibmacro{bbx:editor}{editor+othersstrg}} \newbibmacro*{bbx:editor}[1]{% \ifboolexpr{ test \ifuseeditor and not test {\ifnameundef{editor}} } {\usebibmacro{bbx:dashcheck} {\bibnamedash} {\usebibmacro{editor+alteditor}% \setunit{\printdelim{editortypedelim}}% \usebibmacro{bbx:savehash}}% \usebibmacro{#1}% \clearname{editor}} {\global\undef\bbx@lasthash}} \DeclareFieldFormat{editortype}{\mkbibparens{#1}} \renewbibmacro*{translator}{% \usebibmacro{bbx:translator}{translatorstrg}} \renewbibmacro*{translator+others}{% \usebibmacro{bbx:translator}{translator+othersstrg}} \newbibmacro*{bbx:translator}[1]{% \ifboolexpr{ test \ifusetranslator and not test {\ifnameundef{translator}} } {\usebibmacro{bbx:dashcheck} {\bibnamedash} {\printnames{translator}% \setunit{\printdelim{translatortypedelim}}% \usebibmacro{bbx:savehash}}% \usebibmacro{#1}% \clearname{translator}% \setunit{\addspace}}% {\global\undef\bbx@lasthash}} \xpatchbibmacro{translatorstrg}% {\bibstring}% {\bibstring[\mkbibparens]}{}{}% \xpatchbibmacro{translator+othersstrg}% {\bibstring}% {\bibstring[\mkbibparens]}{}{}% \renewbibmacro*{bybookauthor}{% \ifnamesequal{author}{bookauthor}% {\bibstring{idem\thefield{gender}}}% {\printnames{bookauthor}}} \newbibmacro*{bookeditor}{% \global\undef\bbx@lasthash \ifboolexpr{ test \ifuseeditor and not test {\ifnameundef{editor}} }{% \ifnamesequal{author}{editor}{% \bibstring{idem\thefield{gender}}% \setunit{\addspace}% \usebibmacro{editor+othersstrg}% \clearname{editor}% }{% \printnames[bookeditor]{editor}% \setunit*{\addspace}% \usebibmacro{editor+othersstrg}% \clearname{editor}% }% }{}} \newbibmacro*{byserieseditor}{% \ifnameundef{serieseditor} {} {\usebibmacro{bytypestrg}{serieseditor}{serieseditor}% \setunit{\addspace}% \printnames[byeditor]{serieseditor}% \newunit}} \renewbibmacro*{title}{% \ifboolexpr{ test {\iffieldundef{title}} and test {\iffieldundef{subtitle}} } {} {\printtext[title]{% \printfield[titlecase]{title}% \setunit{\subtitlepunct}% \printfield[titlecase]{subtitle}}% \setunit{\addspace}}% \usebibmacro{origtitle}% \setunit*{\addspace}% \printfield{titleaddon}% \iffieldequalstr{relatedtype}{equals}{% \iftoggle{bbx:related}{% \usebibmacro{related:init}% \usebibmacro{related}% \clearfield{related}% }{}% }{}% } \DeclareFieldFormat{titleaddon}{\mkbibbrackets{#1}} \DeclareFieldFormat{origtitle}{\mkbibemph{#1}} \newbibmacro*{origtitle}{% \iffieldundef{origtitle}{}{% \iflistundef{language}{% \printtext[parens]{\printfield{origtitle}}% }{% \printtext[brackets]{% \printlist{language}\space \bibstring{translationof}\space \printfield{origtitle}}}}} \newcommand{\blx@ox@compyear}[2]{% \def\num@one{#1}% \def\num@two{#2}% \StrLen{\num@one}[\num@one@len]% \StrLen{\num@two}[\num@two@len]% \IfEq{\num@one@len}{\num@two@len}% {\StrCompare{\num@one}{\num@two}[\Result]% \ifnum\num@two@len>3% \IfStrEq{\Result}{2}{\def\Result{1}}{}% \fi \StrGobbleLeft{0\num@two}{\Result}}% {\num@two}% } \patchcmd{\mkdaterangefull}{% \csuse{mkbibdate#1}{#2endyear}{#2endmonth}{#2endday}% }{% \iffieldundef{#2endmonth}% {\blx@ox@compyear{\thefield{#2year}}{\thefield{#2endyear}}}% {\csuse{mkbibdate#1}{#2endyear}{#2endmonth}{#2endday}}% }{}{} \patchcmd{\mkdaterangefullextra}{% \csuse{mkbibdate#1}{#2endyear}{#2endmonth}{#2endday}% }{% \iffieldundef{#2endmonth}% {\blx@ox@compyear{\thefield{#2year}}{\thefield{#2endyear}}}% {\csuse{mkbibdate#1}{#2endyear}{#2endmonth}{#2endday}}% }{}{} \patchcmd{\mkdaterangetrunc}{% \csuse{mkbibdate#1}{#2endyear}{#2endmonth}{#2endday}% }{% \iffieldundef{#2endmonth}% {\blx@ox@compyear{\thefield{#2year}}{\thefield{#2endyear}}}% {\csuse{mkbibdate#1}{#2endyear}{#2endmonth}{#2endday}}% }{}{} \patchcmd{\mkdaterangetruncextra}{% \csuse{mkbibdate#1}{#2endyear}{#2endmonth}{#2endday}% }{% \iffieldundef{#2endmonth}% {\blx@ox@compyear{\thefield{#2year}}{\thefield{#2endyear}}}% {\csuse{mkbibdate#1}{#2endyear}{#2endmonth}{#2endday}}% }{}{} \DeclareFieldFormat{datetype}{% \ifbibstring{#1}{\bibstring{#1}}{#1\isdot}% } \newtoggle{blx@ox@timefirst} \DeclareBibliographyOption{timefirst}[true]{% \settoggle{blx@ox@timefirst}{#1}} \DeclareTypeOption{timefirst}[true]{% \settoggle{blx@ox@timefirst}{#1}} \DeclareEntryOption{timefirst}[true]{% \settoggle{blx@ox@timefirst}{#1}} \newbibmacro*{date+time}{% \ifboolexpr{ test {\iffieldundef{year}} and test {\iffieldundef{season}} and test {\iffieldundef{month}} and test {\iffieldundef{hour}} }{}{% \printfield{datetype}}% \setunit*{\addspace}% \iftoggle{blx@ox@timefirst}{% \printtime \setunit*{\addcomma\space}}{}% \printdate \iftoggle{blx@ox@timefirst}{}{% \setunit*{\addcomma\space}% \printtime}% } \renewbibmacro*{date}{\usebibmacro{date+time}} \DeclareFieldFormat{origdatetype}{% \ifbibstring{#1}{\bibstring{#1}}{#1\isdot}% } \newbibmacro*{origdate+time}{% \ifboolexpr{ test {\iffieldundef{origyear}} and test {\iffieldundef{origseason}} and test {\iffieldundef{origmonth}} and test {\iffieldundef{orighour}} }{}{% \printfield{origdatetype}}% \setunit*{\addspace}% \iftoggle{blx@ox@timefirst}{% \printorigtime \setunit*{\addcomma\space}}{}% \printorigdate \iftoggle{blx@ox@timefirst}{}{% \setunit*{\addcomma\space}% \printorigtime}% } \DeclareFieldFormat{date}{% \def\currentfield{date}% \iffieldannotation{inferred}{\mkbibbrackets{#1}}{#1}% \undef\currentfield} \DeclareFieldFormat{origdate}{% \def\currentfield{origdate}% \iffieldannotation{inferred}{\mkbibbrackets{#1}}{#1}% \undef\currentfield} \DeclareFieldFormat{eventdate}{% \def\currentfield{eventdate}% \iffieldannotation{inferred}{\mkbibbrackets{#1}}{#1}% \undef\currentfield} \xpatchfieldformat{edition}{% #1\isdot }{% \ifbibstring{#1}{\bibstring{#1}}{#1\isdot}% }{}{} \DeclareFieldFormat{pages}{% \iffieldundef{bookpagination}% {\mkcomprange{#1}}% {\mkcomprange[{\mkpageprefix[bookpagination]}]{#1}}% } \DeclareFieldFormat{postnote}{% \iffieldundef{pagination}% {\mkcomprange{#1}}% {\mkcomprange[{\mkpageprefix}]{#1}}% } \DeclareBibliographyOption{nopublisher}[true]{% \DeclareFieldInputHandler{publisher}{\def\NewValue{}}% } \DeclareBibliographyOption{nolocation}[true]{% \DeclareStyleSourcemap{ \maps[datatype=bibtex]{ \map{ \pertype{book} \pertype{mvbook} \pertype{bookinbook} \pertype{inbook} \pertype{suppbook} \pertype{collection} \pertype{mvcollection} \pertype{incollection} \pertype{suppcollection} \pertype{reference} \pertype{mvreference} \pertype{inreference} \pertype{proceedings} \pertype{mvproceedings} \pertype{inproceedings} \step[notfield=location, fieldset=location, fieldvalue={\noexpand\bibstring{nolocation}}] } } }% } \newtoggle{blx@ox@noloc} \def\blx@ox@noloc{{\bibstring{nolocation}}} \DeclareEntryOption{nolocation}[true]{% \settoggle{blx@ox@noloc}{#1}% \iflistundef{location}{% \iftoggle{blx@ox@noloc}{\restorelist{location}{\blx@ox@noloc}}{}% }{}} \DeclareBibliographyOption{isourls}[true]{% \ifstrequal{#1}{true} {\DeclareFieldFormat{url}{$\langle$\url{##1}$\rangle$}} {\DeclareFieldFormat{url}{\url{##1}}}% } \ExecuteBibliographyOptions{isourls=false} \renewcommand*{\biburlsetup}{% \Urlmuskip=0mu plus 2mu\relax \mathchardef\UrlBigBreakPenalty=100\relax \mathchardef\UrlBreakPenalty=200\relax \def\UrlBigBreaks{\do\/\do\:}% \def\UrlNoBreaks{\do\(\do\[\do\{\do\<}% \def\UrlBreaks{% \do\>\do\}\do\]\do\)\do\\\do\|% \do\'\do\$\do\*\do\^\do\"}% \appto\UrlSpecials{% \do\!{\mathbin{}\mskip-\Urlmuskip\mathchar`\!\mskip\Urlmuskip}% \do\&{\mathbin{}\mskip-\Urlmuskip\mathchar`\&\mskip\Urlmuskip}% \do\+{\mathbin{}\mskip-\Urlmuskip\mathchar`\+\mskip\Urlmuskip}% \do\,{\mathbin{}\mskip-\Urlmuskip\mathchar`\,\mskip\Urlmuskip}% \do\-{\mathbin{}\mskip-\Urlmuskip\mathchar`\-\mskip\Urlmuskip}% \do\.{\mathbin{}\mskip-\Urlmuskip\mathchar`\.\mskip\Urlmuskip}% \do\;{\mathbin{}\mskip-\Urlmuskip\mathchar`\;\mskip\Urlmuskip}% \do\={\mathbin{}\mskip-\Urlmuskip\mathchar`\=\mskip\Urlmuskip}% \do\?{\mathbin{}\mskip-\Urlmuskip\mathchar`\?\mskip\Urlmuskip}% \do\_{\mathbin{}\mskip-\Urlmuskip\_\mskip\Urlmuskip}% \do\#{\mathbin{}\mskip-\Urlmuskip\#\mskip\Urlmuskip}% }% \ifnumgreater{\value{biburlnumpenalty}}{0} {\def\do##1{\appto\UrlSpecials{\do##1{\mathchar`##1 \penalty\value{biburlnumpenalty}}}}% \do\1\do\2\do\3\do\4\do\5\do\6\do\7\do\8\do\9\do\0} {}% \ifnumgreater{\value{biburlucpenalty}}{0} {\def\do##1{\appto\UrlSpecials{\do##1{\mathchar`##1 \penalty\value{biburlucpenalty}}}}% \do\A\do\B\do\C\do\D\do\E\do\F\do\G\do\H\do\I\do\J \do\K\do\L\do\M\do\N\do\O\do\P\do\Q\do\R\do\S\do\T \do\U\do\V\do\W\do\X\do\Y\do\Z} {}% \ifnumgreater{\value{biburllcpenalty}}{0} {\def\do##1{\appto\UrlSpecials{\do##1{\mathchar`##1 \penalty\value{biburllcpenalty}}}}% \do\a\do\b\do\c\do\d\do\e\do\f\do\g\do\h\do\i\do\j \do\k\do\l\do\m\do\n\do\o\do\p\do\q\do\r\do\s\do\t \do\u\do\v\do\w\do\x\do\y\do\z} {}% \let\do=\noexpand} \DeclareFieldFormat{urldate}{\bibstring{urlseen}\space#1} \xpatchbibmacro{url+urldate}% {\setunit*{\addspace}}% {\setunit*{\addcomma\addspace}}{}{} \xpatchfieldformat{doi}% {\mkbibacro{DOI}}% {\printtext{doi}}{}{} \xpatchbibmacro{doi+eprint+url}% {\printfield{doi}}% {\setunit{\addperiod\space}\printfield{doi}}{}{} \renewbibmacro*{addendum+pubstate}{% \ifboolexpr{ test {\iffieldundef{pubstate}} or test {\iffieldequalstr{labeldatesource}{pubstate}} }{}{% \nopunct \ifbibstring{\thefield{pubstate}}{% \printtext[pubstate]{\bibstring{\thefield{pubstate}}}% }{% \printfield{pubstate}}}% \setunit{\addsemicolon\addspace}\newblock \printfield{addendum}} \DeclareFieldFormat{pubstate}{\mkbibparens{#1}} \DeclareFieldFormat{howpublished}{\mkbibbrackets{#1}} \DeclareFieldFormat[misc,unpublished]{howpublished}{#1} \DeclareFieldFormat[article,periodical,suppperiodical,review]{entrysubtype}{\mkbibbrackets{#1}} \newcommand*{\blx@ox@abbrevstring}{% A\^{A}BCDEFG\u{G}HI\.{I}\^{I}JKLMNO\"{O}\^{O}PQRSTU\"{U}\^{U}VWXYZ.}% \AtBeginDocument{ \ifdefstring{\encodingdefault}{OT1}{}{% \renewcommand*{\blx@ox@abbrevstring}{% A\^{A}BC\c{C}DEFG\u{G}HI\.{I}\^{I}JKLMNO\"{O}\^{O}PQRS\c{S}TU\"{U}\^{U}VWXYZ.}% }% } \newcommand*{\ifabbrev}[3]{% \StrRight{#1}{1}[\blx@ox@lastchar]% \IfSubStr{\blx@ox@abbrevstring}{\blx@ox@lastchar}{#2}{#3} } \renewbibmacro*{journal+issuetitle}{% \ifboolexpr{ test {\iffieldundef{title}} and not test {\iffieldundef{issuetitle}} }{% \usebibmacro{issue}% \setunit{\addspace =\addspace}% }{% \ifboolexpr{ ( not test {\iffieldundef{pubstate}} ) and test {\ifbibxstring{\thefield{pubstate}in}} }{% \printtext{\bibstring{\thefield{pubstate}in}\space}% \clearfield{pubstate}% }{}}% \usebibmacro{journal}% \iffieldundef{journalsubtitle}{% \ifabbrev{\thefield{journaltitle}}{\setunit{\addspace}}{\newunit}% }{% \ifabbrev{\thefield{journalsubtitle}}{\setunit{\addspace}}{\newunit}}% \iffieldundef{series}{}{% \newunit\newblock \printfield{series}% \ifbibxstring{\thefield{series}}{% \setunit{\addspace}% }{% \newunit}}% \usebibmacro{volume+number+eid}% \setunit{\addspace}% \usebibmacro{issue+date}% \newunit} \renewbibmacro*{title+issuetitle}{% \usebibmacro{periodical}% \iffieldundef{subtitle}{% \ifabbrev{\thefield{title}}{\setunit{\addspace}}{\newunit}% }{% \ifabbrev{\thefield{subtitle}}{\setunit{\addspace}}{\newunit}}% \iffieldundef{series}{}{% \newunit\newblock \printfield{series}% \ifbibxstring{\thefield{series}}{% \setunit{\addspace}% }{% \newunit}}% \usebibmacro{volume+number+eid}% \setunit{\addspace}% \usebibmacro{issue+date}% \newunit} \DeclareBibliographyOption{issuestyle}[slash]{% \ifcsdef{blx@ox@issuestyle@#1}{% \csuse{blx@ox@issuestyle@#1}% }{% \PackageError{biblatex} {Invalid option 'issuestyle=#1'} {Valid values are 'slash', 'colon', 'comma', 'parens'}% }% } \csdef{blx@ox@issuestyle@slash}{% \renewbibmacro*{volume+number+eid}{% \printfield{volume}% \setunit*{\addslash}% \printfield{number}% }% } \csdef{blx@ox@issuestyle@colon}{% \renewbibmacro*{volume+number+eid}{% \printfield{volume}% \setunit*{\addcolon\space}% \printfield{number}% }% } \csdef{blx@ox@issuestyle@comma}{% \renewbibmacro*{volume+number+eid}{% \printfield{volume}% \setunit*{\addcomma\space}% \printfield{number}% }% } \csdef{blx@ox@issuestyle@parens}{% \renewbibmacro*{volume+number+eid}{% \printfield{volume}% \setunit*{\addspace}% \printfield[parens]{number}% }% } \ExecuteBibliographyOptions{issuestyle=slash} \newtoggle{blx@ox@varissuedate} \DeclareBibliographyOption[boolean]{varissuedate}[true]{% \settoggle{blx@ox@varissuedate}{#1}} \DeclareTypeOption[boolean]{varissuedate}[true]{% \settoggle{blx@ox@varissuedate}{#1}} \DeclareEntryOption[boolean]{varissuedate}[true]{% \settoggle{blx@ox@varissuedate}{#1}} \DeclareBibliographyOption[boolean]{issuedate-plain}[true]{% \settoggle{blx@ox@varissuedate}{#1}} \DeclareTypeOption[boolean]{issuedate-plain}[true]{% \settoggle{blx@ox@varissuedate}{#1}} \DeclareEntryOption[boolean]{issuedate-plain}[true]{% \settoggle{blx@ox@varissuedate}{#1}} \renewbibmacro*{issue+date}{% \ifboolexpr{ test {\iffieldundef{issue}} and test {\iffieldundef{year}} and test {\iffieldundef{season}} and test {\iffieldundef{month}} }{}{% \ifboolexpr{ togl {blx@ox@varissuedate} and test {\iffieldundef{volume}} and test {\iffieldundef{number}} }{% \newunit \printtext{% \iffieldundef{issue}{% \usebibmacro{date} }{% \printfield{issue}% \setunit*{\addspace}% \usebibmacro{date}}}% }{% \printtext[parens]{% \iffieldundef{issue}{% \usebibmacro{date}% }{% \printfield{issue}% \setunit*{\addspace}% \usebibmacro{date}}}}}% \newunit \printfield{eid}% } \DeclareBibliographyDriver{article}{% \usebibmacro{bibindex}% \usebibmacro{begentry}% \usebibmacro{author/translator+others}% \setunit{\printdelim{nametitledelim}}\newblock \usebibmacro{title}% \setunit{\titlebyauthordelim}\newblock \usebibmacro{byauthor}% \newunit\newblock \usebibmacro{bytranslator+others}% \newunit\newblock \printfield{version}% \newunit\newblock \usebibmacro{journal+issuetitle}% \newunit \usebibmacro{byeditor+others}% \iffieldequalstr{relatedtype}{suppto}{% \setunit{\addsemicolon\space}% \iftoggle{bbx:related}{% \usebibmacro{related:init}% \usebibmacro{related}% \clearfield{related}% }{}% }{}% \newunit \usebibmacro{note+pages}% \newunit\newblock \iftoggle{bbx:isbn} {\printfield{issn}} {}% \newunit\newblock \usebibmacro{doi+eprint+url}% \newunit\newblock \usebibmacro{addendum+pubstate}% \setunit{\bibpagerefpunct}\newblock \usebibmacro{pageref}% \setunit{\relatedtypepunct}\newblock \iftoggle{bbx:related} {\usebibmacro{related:init}% \usebibmacro{related}} {}% \usebibmacro{finentry}} \DeclareBibliographyDriver{periodical}{% \usebibmacro{bibindex}% \usebibmacro{begentry}% \usebibmacro{editor}% \setunit{\printdelim{nametitledelim}}\newblock \usebibmacro{title+issuetitle}% \newunit\newblock \usebibmacro{byeditor}% \newunit\newblock \printfield{note}% \newunit\newblock \iftoggle{bbx:isbn} {\printfield{issn}} {}% \newunit\newblock \usebibmacro{doi+eprint+url}% \newunit\newblock \usebibmacro{addendum+pubstate}% \setunit{\bibpagerefpunct}\newblock \usebibmacro{pageref}% \setunit{\relatedtypepunct}\newblock \iftoggle{bbx:related} {\usebibmacro{related:init}% \usebibmacro{related}} {}% \usebibmacro{finentry}} \DeclareFieldFormat[suppperiodical]{title}{% \def\currentfield{title}% \iffieldannotation{descriptor}{#1}{\mkbibquote{#1\isdot}}% \undef\currentfield} \DeclareFieldFormat[suppperiodical]{volume}{#1}% volume of a journal \DeclareFieldFormat[suppperiodical]{number}{#1}% number of a journal \DeclareFieldFormat[suppperiodical]{series}{% series of a journal \ifinteger{#1} {\mkbibordseries{#1}~\bibstring{jourser}} {\ifbibstring{#1}{\bibstring{#1}}{#1}}} \DeclareBibliographyDriver{suppperiodical}{% \usebibmacro{bibindex}% \usebibmacro{begentry}% \usebibmacro{author/translator+others}% \setunit{\printdelim{nametitledelim}}\newblock \usebibmacro{title}% \setunit{\titlebyauthordelim}\newblock \usebibmacro{byauthor}% \newunit\newblock \usebibmacro{bytranslator+others}% \newunit\newblock \printfield{note}\clearfield{note}% \newunit\newblock \printfield{version}% \newunit\newblock \usebibmacro{journal+issuetitle}% \newunit \usebibmacro{byeditor+others}% \iffieldequalstr{relatedtype}{suppto}{% \setunit{\addsemicolon\space}% \iftoggle{bbx:related}{% \usebibmacro{related:init}% \usebibmacro{related}% \clearfield{related}% }{}% }{}% \newunit \usebibmacro{note+pages}% \newunit\newblock \iftoggle{bbx:isbn} {\printfield{issn}} {}% \newunit\newblock \usebibmacro{doi+eprint+url}% \newunit\newblock \usebibmacro{addendum+pubstate}% \setunit{\bibpagerefpunct}\newblock \usebibmacro{pageref}% \setunit{\relatedtypepunct}\newblock \iftoggle{bbx:related} {\usebibmacro{related:init}% \usebibmacro{related}} {}% \usebibmacro{finentry}} \ExecuteBibliographyOptions[book,mvbook,reference,mvreference]{useeditor=false,usetranslator=false} \DeclareFieldFormat[bookinbook]{title}{% \ifboolexpr{ test {\iffieldequalstr{entrysubtype}{poem}} or test {\iffieldequalstr{entrysubtype}{play}} }{% \mkbibemph{#1}% }{% \mkbibquote{#1\isdot}}} \DeclareFieldFormat[inreference]{title}{\mkbibquote{#1\isdot}} \DeclareFieldFormat[book,mvbook,bookinbook,inbook,suppbook,% collection,mvcollection,incollection,suppcollection,% proceedings,mvproceedings,inproceedings,% reference,mvreference,inreference]{volume}{% \IfSubStr{#1}{-}{% \StrCount{#1}{-}[\blx@ox@dashnum]% \StrBefore{#1}{-}[\blx@ox@volnum]% \Rn{\blx@ox@volnum}\bibrangedash \StrBehind[\blx@ox@dashnum]{#1}{-}[\blx@ox@volnum]% \Rn{\blx@ox@volnum}% }{% \Rn{#1}}} \newbibmacro*{maintitle+volume}{% \ifboolexpr{ test {\iffieldundef{maintitle}} or test {\iffieldundef{volume}} }{}% {\printtext[maintitle+volume]{% \bibstring{volume}\addspace \printfield{volume}\printfield{part}\addspace \bibstring{ofseries}\addspace \usebibmacro{maintitle}}} } \DeclareFieldFormat{maintitle+volume}{\mkbibbrackets{#1}} \renewbibmacro*{in:}{% \iffieldequalstr{entrysubtype}{yearbook}{}{% \printtext{\bibstring{in}\intitlepunct}}} \DeclareFieldFormat{publication}{\mkbibparens{#1}} \renewbibmacro*{series+number}{% \printfield{series}% \setunit*{\addcomma\space}% \usebibmacro{byserieseditor}% \setunit*{\addcomma\space}% \printfield{number}} \newtoggle{blx@ox@altbookseries} \DeclareBibliographyOption[string]{bookseries}[in]{% \ifstrequal{#1}{out}{% \toggletrue{blx@ox@altbookseries}% }{% \togglefalse{blx@ox@altbookseries}% \ifstrequal{#1}{in}{}{% \PackageError{oxref} {Invalid option 'bookseries=#1'} {Valid values are 'in' and 'out'.}}}} \newcounter{locpubpairs} \newbibmacro*{edition+publisher+location+date}{% \printlist{origlocation}% \iflistundef{origpublisher}% {\setunit*{\addcomma\space}}% {\setunit*{\addcolon\space}}% \printlist{origpublisher}% \setunit*{\addcomma\space}% \ifboolexpr{ test {\iflistundef{origlocation}} and test {\iflistundef{origpublisher}} and test {\iffieldundef{edition}} }{}{% \printorigdate}% \setunit{\addsemicolon\space}% \printfield{edition}% \setunit*{\addcomma\space}% \ifboolexpr{% test {\ifnumcomp{\value{publisher}}{>}{1}} and test {\ifnumequal{\value{location}}{\value{publisher}}} }{% \setcounter{locpubpairs}{0}% \savebibmacro{list:andothers}% \renewbibmacro*{list:andothers}{}% \whileboolexpr{% test {\ifnumcomp{\value{locpubpairs}}{<}{\value{publisher}}} }{% \stepcounter{locpubpairs}% \ifnumcomp{\value{locpubpairs}}{>}{1}{% \ifnumequal{\value{publisher}}{2}{% \setunit*{\addspace\bibstring{and}\addspace}% }{% \ifnumequal{\value{locpubpairs}}{\value{publisher}}{% \setunit*{\addcomma\space\bibstring{and}\addspace}% }{% \setunit*{\addcomma\space}% }% }% }{}% \printlist[][\value{locpubpairs}-\value{locpubpairs}]{location}% \setunit*{\addcolon\space}% \printlist[][\value{locpubpairs}-\value{locpubpairs}]{publisher}% }% \restorebibmacro{list:andothers}% }{% \printlist{location}% \iflistundef{publisher}% {\setunit*{\addcomma\space}}% {\setunit*{\addcolon\space}}% \printlist{publisher}% }% \setunit*{\addcomma\space}% \usebibmacro{date}% } \newbibmacro*{series+number+edition+publisher+location+date}{% \iftoggle{blx@ox@altbookseries}{% \usebibmacro{series+number}% \setunit{\addspace}\newblock}{}% \ifboolexpr{ test {\iffieldundef{series}} and test {\iffieldundef{number}} and test {\iffieldundef{edition}} and test {\iflistundef{publisher}} and test {\iflistundef{location}} and test {\iffieldundef{year}} and test {\iffieldundef{season}} and test {\iffieldundef{month}} }{}{% \nopunct \printtext[publication]{% \iftoggle{blx@ox@altbookseries}{}{% \usebibmacro{series+number}% \setunit{\addsemicolon\addspace}}% \usebibmacro{edition+publisher+location+date}% \usebibmacro{copub}}}% \iffieldequalstr{relatedtype}{copub}{\clearfield{related}}% \setunit{\addspace}\newblock \usebibmacro{origpub}% } \newbibmacro*{series+number+publisher+location+date}{% \iftoggle{blx@ox@altbookseries}{% \usebibmacro{series+number}% \setunit{\addspace}\newblock}{}% \ifboolexpr{ test {\iffieldundef{series}} and test {\iffieldundef{number}} and test {\iflistundef{publisher}} and test {\iflistundef{location}} and test {\iffieldundef{year}} and test {\iffieldundef{season}} and test {\iffieldundef{month}} }{}{% \nopunct \printtext[publication]{% \iftoggle{blx@ox@altbookseries}{}{% \usebibmacro{series+number}% \setunit{\addsemicolon\addspace}}% \usebibmacro{publisher+location+date}% \usebibmacro{copub}}}% \iffieldequalstr{relatedtype}{copub}{\clearfield{related}}% \setunit{\addspace}\newblock \usebibmacro{origpub}% } \newbibmacro*{copub}{% \ifboolexpr{ togl {bbx:related} and test {\iffieldequalstr{relatedtype}{copub}} }{% \setunit{\addsemicolon\space}% \usebibmacro{related:init}% \usebibmacro{related}% }{}% } \newbibmacro*{origpub}{% \ifboolexpr{ test {\iflistundef{origlocation}} and test {\iflistundef{origpublisher}} and test {\iffieldundef{edition}} and ( not test {\iffieldundef{origyear}} ) }{% \printtext[parens]{\bibstring{origpubin}\space\printorigdate}% }{}% } \DeclareBibliographyDriver{book}{% \usebibmacro{bibindex}% \usebibmacro{begentry}% \usebibmacro{author/editor+others/translator+others}% \setunit{\printdelim{nametitledelim}}\newblock \usebibmacro{title}% \setunit{\titlebyauthordelim}\newblock \usebibmacro{byauthor}% \newunit\newblock \usebibmacro{byeditor+others}% \newunit\newblock \printfield{note}% \newunit\newblock \usebibmacro{maintitle+volume}% \newunit \usebibmacro{series+number+edition+publisher+location+date}% \setunit{\addspace}% \printfield{howpublished}% \newunit\newblock \usebibmacro{chapter+pages}% \newunit \printfield{pagetotal}% \newunit\newblock \iftoggle{bbx:isbn} {\printfield{isbn}} {}% \newunit\newblock \usebibmacro{doi+eprint+url}% \newunit\newblock \usebibmacro{addendum+pubstate}% \setunit{\bibpagerefpunct}\newblock \usebibmacro{pageref}% \setunit{\relatedtypepunct}\newblock \iftoggle{bbx:related} {\usebibmacro{related:init}% \usebibmacro{related}} {}% \usebibmacro{finentry}} \DeclareBibliographyDriver{mvbook}{% \usebibmacro{bibindex}% \usebibmacro{begentry}% \usebibmacro{author/editor+others/translator+others}% \setunit{\printdelim{nametitledelim}}\newblock \usebibmacro{maintitle+title}% \newunit \ifboolexpr{ test {\iffieldequalstr{relatedtype}{multivolume}} or ( not test {\iffieldundef{maintitle}} ) }{}{% \printfield{volume}% \printfield{part}}% \setunit{\titlebyauthordelim}\newblock \usebibmacro{byauthor}% \newunit\newblock \usebibmacro{byeditor+others}% \newunit\newblock \printfield{volumes}% \newunit\newblock \printfield{note}% \newunit\newblock \ifboolexpr{ test {\iffieldequalstr{relatedtype}{multivolume}} and test {\iffieldundef{maintitle}} }{% \printfield{volume}% \printfield{part}% }{}% \newunit\newblock \usebibmacro{series+number+edition+publisher+location+date}% \newunit\newblock \usebibmacro{chapter+pages}% \newunit \printfield{pagetotal}% \newunit\newblock \iftoggle{bbx:isbn} {\printfield{isbn}} {}% \newunit\newblock \usebibmacro{doi+eprint+url}% \newunit\newblock \usebibmacro{addendum+pubstate}% \setunit{\bibpagerefpunct}\newblock \usebibmacro{pageref}% \setunit{\relatedtypepunct}\newblock \iftoggle{bbx:related} {\usebibmacro{related:init}% \usebibmacro{related}} {}% \usebibmacro{finentry}} \DeclareBibliographyDriver{inbook}{% \usebibmacro{bibindex}% \usebibmacro{begentry}% \usebibmacro{author/translator+others}% \setunit{\printdelim{nametitledelim}}\newblock \usebibmacro{title}% \setunit{\titlebyauthordelim}\newblock \usebibmacro{byauthor}% \newunit\newblock \usebibmacro{in:}% \usebibmacro{bybookauthor}% \newunit\newblock \usebibmacro{maintitle+booktitle}% \newunit \iffieldundef{maintitle} {\printfield{volume}% \printfield{part}} {}% \newunit\newblock \usebibmacro{byeditor+others}% \newunit\newblock \printfield{volumes}% \newunit\newblock \printfield{note}% \newunit\newblock \usebibmacro{series+number+edition+publisher+location+date}% \newunit\newblock \usebibmacro{chapter+pages}% \newunit\newblock \iftoggle{bbx:isbn} {\printfield{isbn}} {}% \newunit\newblock \usebibmacro{doi+eprint+url}% \newunit\newblock \usebibmacro{addendum+pubstate}% \setunit{\bibpagerefpunct}\newblock \usebibmacro{pageref}% \setunit{\relatedtypepunct}\newblock \iftoggle{bbx:related} {\usebibmacro{related:init}% \usebibmacro{related}} {}% \usebibmacro{finentry}} \DeclareFieldFormat[suppbook]{title}{% \def\currentfield{title}% \iffieldannotation{descriptor}{#1}{\mkbibemph{#1}}% \undef\currentfield} \DeclareBibliographyDriver{suppbook}{% \usebibmacro{bibindex}% \usebibmacro{begentry}% \usebibmacro{author/translator+others}% \setunit{\printdelim{nametitledelim}}\newblock \usebibmacro{title}% \setunit{\titlebyauthordelim}\newblock \usebibmacro{byauthor}% \newunit\newblock \printfield{note}% \setunit{\addspace}\newblock \usebibmacro{in:}% \usebibmacro{bybookauthor}% \newunit\newblock \usebibmacro{maintitle+booktitle}% \newunit \iffieldundef{maintitle} {\printfield{volume}% \printfield{part}} {}% \newunit\newblock \usebibmacro{byeditor+others}% \newunit\newblock \printfield{volumes}% \newunit\newblock \usebibmacro{series+number+edition+publisher+location+date}% \newunit\newblock \usebibmacro{chapter+pages}% \newunit\newblock \iftoggle{bbx:isbn} {\printfield{isbn}} {}% \newunit\newblock \usebibmacro{doi+eprint+url}% \newunit\newblock \usebibmacro{addendum+pubstate}% \setunit{\bibpagerefpunct}\newblock \usebibmacro{pageref}% \setunit{\relatedtypepunct}\newblock \iftoggle{bbx:related} {\usebibmacro{related:init}% \usebibmacro{related}} {}% \usebibmacro{finentry}} \DeclareBibliographyDriver{bookinbook}{% \usebibmacro{bibindex}% \usebibmacro{begentry}% \usebibmacro{author/translator+others}% \setunit{\printdelim{nametitledelim}}\newblock \usebibmacro{title}% \setunit{\titlebyauthordelim}\newblock \usebibmacro{byauthor}% \newunit\newblock \usebibmacro{in:}% \usebibmacro{bybookauthor}% \newunit\newblock \usebibmacro{maintitle+booktitle}% \newunit \iffieldundef{maintitle} {\printfield{volume}% \printfield{part}} {}% \newunit\newblock \usebibmacro{byeditor+others}% \newunit\newblock \printfield{volumes}% \newunit\newblock \printfield{note}% \newunit\newblock \usebibmacro{series+number+edition+publisher+location+date}% \newunit\newblock \usebibmacro{chapter+pages}% \newunit\newblock \iftoggle{bbx:isbn} {\printfield{isbn}} {}% \newunit\newblock \usebibmacro{doi+eprint+url}% \newunit\newblock \usebibmacro{addendum+pubstate}% \setunit{\bibpagerefpunct}\newblock \usebibmacro{pageref}% \setunit{\relatedtypepunct}\newblock \iftoggle{bbx:related} {\usebibmacro{related:init}% \usebibmacro{related}} {}% \usebibmacro{finentry}} \DeclareBibliographyDriver{collection}{% \usebibmacro{bibindex}% \usebibmacro{begentry}% \usebibmacro{editor+others}% \setunit{\printdelim{nametitledelim}}\newblock \usebibmacro{title}% \newunit\newblock \usebibmacro{byeditor+others}% \newunit\newblock \printfield{note}% \newunit\newblock \usebibmacro{maintitle+volume}% \newunit \usebibmacro{series+number+edition+publisher+location+date}% \newunit\newblock \usebibmacro{chapter+pages}% \newunit \printfield{pagetotal}% \newunit\newblock \iftoggle{bbx:isbn} {\printfield{isbn}} {}% \newunit\newblock \usebibmacro{doi+eprint+url}% \newunit\newblock \usebibmacro{addendum+pubstate}% \setunit{\bibpagerefpunct}\newblock \usebibmacro{pageref}% \setunit{\relatedtypepunct}\newblock \iftoggle{bbx:related} {\usebibmacro{related:init}% \usebibmacro{related}} {}% \usebibmacro{finentry}} \DeclareBibliographyDriver{mvcollection}{% \usebibmacro{bibindex}% \usebibmacro{begentry}% \usebibmacro{editor+others}% \setunit{\printdelim{nametitledelim}}\newblock \usebibmacro{maintitle+title}% \newunit \ifboolexpr{ test {\iffieldequalstr{relatedtype}{multivolume}} or ( not test {\iffieldundef{maintitle}} ) }{}{% \printfield{volume}% \printfield{part}}% \newunit\newblock \usebibmacro{byeditor+others}% \newunit\newblock \printfield{volumes}% \newunit\newblock \printfield{note}% \newunit\newblock \ifboolexpr{ test {\iffieldequalstr{relatedtype}{multivolume}} and test {\iffieldundef{maintitle}} }{% \printfield{volume}% \printfield{part}% }{}% \newunit\newblock \usebibmacro{series+number+edition+publisher+location+date}% \newunit\newblock \usebibmacro{chapter+pages}% \newunit \printfield{pagetotal}% \newunit\newblock \iftoggle{bbx:isbn} {\printfield{isbn}} {}% \newunit\newblock \usebibmacro{doi+eprint+url}% \newunit\newblock \usebibmacro{addendum+pubstate}% \setunit{\bibpagerefpunct}\newblock \usebibmacro{pageref}% \setunit{\relatedtypepunct}\newblock \iftoggle{bbx:related} {\usebibmacro{related:init}% \usebibmacro{related}} {}% \usebibmacro{finentry}} \DeclareBibliographyDriver{incollection}{% \usebibmacro{bibindex}% \usebibmacro{begentry}% \usebibmacro{author/translator+others}% \setunit{\printdelim{nametitledelim}}\newblock \usebibmacro{title}% \setunit{\titlebyauthordelim}\newblock \usebibmacro{byauthor}% \newunit\newblock \usebibmacro{in:}% \usebibmacro{bookeditor}% \newunit\newblock \usebibmacro{maintitle+booktitle}% \newunit \iffieldundef{maintitle} {\printfield{volume}% \printfield{part}} {}% \newunit\newblock \printfield{volumes}% \newunit\newblock \printfield{note}% \newunit\newblock% \usebibmacro{series+number+edition+publisher+location+date}% \newunit\newblock \usebibmacro{chapter+pages}% \newunit\newblock \iftoggle{bbx:isbn} {\printfield{isbn}} {}% \newunit\newblock \usebibmacro{doi+eprint+url}% \newunit\newblock \usebibmacro{addendum+pubstate}% \setunit{\bibpagerefpunct}\newblock \usebibmacro{pageref}% \setunit{\relatedtypepunct}\newblock \iftoggle{bbx:related} {\usebibmacro{related:init}% \usebibmacro{related}} {}% \usebibmacro{finentry}} \DeclareFieldFormat[suppcollection]{title}{% \def\currentfield{title}% \iffieldannotation{descriptor}{#1}{\mkbibemph{#1}}% \undef\currentfield} \DeclareBibliographyDriver{suppcollection}{% \usebibmacro{bibindex}% \usebibmacro{begentry}% \usebibmacro{author/translator+others}% \setunit{\printdelim{nametitledelim}}\newblock \usebibmacro{title}% \setunit{\titlebyauthordelim}\newblock \usebibmacro{byauthor}% \newunit\newblock \printfield{note}% \setunit{\addspace}\newblock \usebibmacro{in:}% \usebibmacro{bookeditor}% \newunit\newblock \usebibmacro{maintitle+booktitle}% \newunit \iffieldundef{maintitle} {\printfield{volume}% \printfield{part}} {}% \newunit\newblock \printfield{volumes}% \newunit\newblock% \usebibmacro{series+number+edition+publisher+location+date}% \newunit\newblock \usebibmacro{chapter+pages}% \newunit\newblock \iftoggle{bbx:isbn} {\printfield{isbn}} {}% \newunit\newblock \usebibmacro{doi+eprint+url}% \newunit\newblock \usebibmacro{addendum+pubstate}% \setunit{\bibpagerefpunct}\newblock \usebibmacro{pageref}% \setunit{\relatedtypepunct}\newblock \iftoggle{bbx:related} {\usebibmacro{related:init}% \usebibmacro{related}} {}% \usebibmacro{finentry}} \DeclareBibliographyDriver{reference}{% \usebibmacro{bibindex}% \usebibmacro{begentry}% \usebibmacro{author/editor+others/translator+others}% \setunit{\printdelim{nametitledelim}}\newblock \usebibmacro{title}% \newunit\newblock \printfield{edition}% \setunit{\titlebyauthordelim}\newblock \usebibmacro{byauthor}% \newunit\newblock \usebibmacro{byeditor+others}% \newunit\newblock \printfield{note}% \newunit\newblock \usebibmacro{maintitle+volume}% \newunit \usebibmacro{series+number+publisher+location+date}% \newunit\newblock \usebibmacro{chapter+pages}% \newunit \printfield{pagetotal}% \newunit\newblock \iftoggle{bbx:isbn} {\printfield{isbn}} {}% \newunit\newblock \usebibmacro{doi+eprint+url}% \newunit\newblock \usebibmacro{addendum+pubstate}% \setunit{\bibpagerefpunct}\newblock \usebibmacro{pageref}% \setunit{\relatedtypepunct}\newblock \iftoggle{bbx:related} {\usebibmacro{related:init}% \usebibmacro{related}} {}% \usebibmacro{finentry}} \DeclareBibliographyDriver{mvreference}{% \usebibmacro{bibindex}% \usebibmacro{begentry}% \usebibmacro{author/editor+others/translator+others}% \setunit{\printdelim{nametitledelim}}\newblock \usebibmacro{maintitle+title}% \newunit \ifboolexpr{ test {\iffieldequalstr{relatedtype}{multivolume}} or ( not test {\iffieldundef{maintitle}} ) }{}{% \printfield{volume}% \printfield{part}}% \newunit\newblock \printfield{edition}% \setunit{\titlebyauthordelim}\newblock \usebibmacro{byauthor}% \newunit\newblock \usebibmacro{byeditor+others}% \newunit\newblock \printfield{volumes}% \newunit\newblock \printfield{note}% \newunit\newblock \ifboolexpr{ test {\iffieldequalstr{relatedtype}{multivolume}} and test {\iffieldundef{maintitle}} }{% \printfield{volume}% \printfield{part}% }{}% \newunit\newblock \usebibmacro{series+number+publisher+location+date}% \newunit\newblock \usebibmacro{chapter+pages}% \newunit \printfield{pagetotal}% \newunit\newblock \iftoggle{bbx:isbn} {\printfield{isbn}} {}% \newunit\newblock \usebibmacro{doi+eprint+url}% \newunit\newblock \usebibmacro{addendum+pubstate}% \setunit{\bibpagerefpunct}\newblock \usebibmacro{pageref}% \setunit{\relatedtypepunct}\newblock \iftoggle{bbx:related} {\usebibmacro{related:init}% \usebibmacro{related}} {}% \usebibmacro{finentry}} \DeclareBibliographyDriver{inreference}{% \usebibmacro{bibindex}% \usebibmacro{begentry}% \usebibmacro{author/translator+others}% \setunit{\printdelim{nametitledelim}}\newblock \usebibmacro{title}% \setunit{\titlebyauthordelim}\newblock \usebibmacro{byauthor}% \newunit\newblock \iffieldundef{editor}{}{% \usebibmacro{in:}% \usebibmacro{bookeditor}% \newunit\newblock}% \usebibmacro{maintitle+booktitle}% \newunit \iffieldundef{maintitle} {\printfield{volume}% \printfield{part}} {}% \newunit\newblock \printfield{edition}% \newunit \usebibmacro{byeditor+others}% \newunit\newblock \printfield{volumes}% \newunit\newblock \printfield{note}% \newunit\newblock% \usebibmacro{series+number+publisher+location+date}% \newunit\newblock \usebibmacro{chapter+pages}% \newunit \printfield{pagetotal}% \newunit\newblock \iftoggle{bbx:isbn} {\printfield{isbn}} {}% \newunit\newblock \usebibmacro{doi+eprint+url}% \newunit\newblock \usebibmacro{addendum+pubstate}% \setunit{\bibpagerefpunct}\newblock \usebibmacro{pageref}% \setunit{\relatedtypepunct}\newblock \iftoggle{bbx:related} {\usebibmacro{related:init}% \usebibmacro{related}} {}% \usebibmacro{finentry}} \ExecuteBibliographyOptions[proceedings,mvproceedings]{useeditor=false,usetranslator=false} \renewbibmacro*{event+venue+date}{% \printfield{eventtitle}% \newunit \printfield{eventtitleaddon}% \newunit \printfield{venue}% \newunit% \printeventdate% \newunit} \DeclareBibliographyDriver{proceedings}{% \usebibmacro{bibindex}% \usebibmacro{begentry}% \usebibmacro{author}% \newunit \usebibmacro{maintitle+title}% \newunit \iffieldundef{maintitle} {\printfield{volume}% \printfield{part}} {}% \newunit\newblock \usebibmacro{event+venue+date}% \newunit\newblock \usebibmacro{byeditor+others}% \newunit\newblock \printfield{volumes}% \newunit\newblock \printfield{note}% \newunit\newblock \printlist{organization}% \newunit \usebibmacro{series+number+edition+publisher+location+date}% \newunit\newblock \usebibmacro{chapter+pages}% \newunit \printfield{pagetotal}% \newunit\newblock \iftoggle{bbx:isbn} {\printfield{isbn}} {}% \newunit\newblock \usebibmacro{doi+eprint+url}% \newunit\newblock \usebibmacro{addendum+pubstate}% \setunit{\bibpagerefpunct}\newblock \usebibmacro{pageref}% \setunit{\relatedtypepunct}\newblock \iftoggle{bbx:related} {\usebibmacro{related:init}% \usebibmacro{related}} {}% \usebibmacro{finentry}} \DeclareBibliographyDriver{inproceedings}{% \usebibmacro{bibindex}% \usebibmacro{begentry}% \usebibmacro{author/translator+others}% \setunit{\printdelim{nametitledelim}}\newblock \usebibmacro{title}% \setunit{\titlebyauthordelim}\newblock \usebibmacro{byauthor}% \newunit\newblock \usebibmacro{in:}% \usebibmacro{maintitle+booktitle}% \newunit \iffieldundef{maintitle} {\printfield{volume}% \printfield{part}} {}% \newunit\newblock \usebibmacro{event+venue+date}% \newunit\newblock \usebibmacro{byeditor+others}% \newunit\newblock \printfield{volumes}% \newunit\newblock \printfield{note}% \newunit\newblock \printlist{organization}% \newunit \usebibmacro{series+number+publisher+location+date}% \newunit\newblock \usebibmacro{chapter+pages}% \newunit\newblock \iftoggle{bbx:isbn} {\printfield{isbn}} {}% \newunit\newblock \usebibmacro{doi+eprint+url}% \newunit\newblock \usebibmacro{addendum+pubstate}% \setunit{\bibpagerefpunct}\newblock \usebibmacro{pageref}% \setunit{\relatedtypepunct}\newblock \iftoggle{bbx:related} {\usebibmacro{related:init}% \usebibmacro{related}} {}% \usebibmacro{finentry}} \newbibmacro*{series+type+number}{% \ifboolexpr{ test {\iffieldundef{series}} and test {\iffieldundef{type}} }{}{% \printfield{series}% \newunit \ifboolexpr{% test {\iffieldundef{type}} and not test {\iffieldundef{number}} }{% \bibcpstring{number} }{% \printfield{type}% }% \setunit*{\addspace}% \printfield{number}}} \renewbibmacro*{institution+location+date}{% \ifboolexpr{ test {\iffieldundef{type}} and test {\iffieldundef{series}} and test {\iffieldundef{number}} and test {\iflistundef{institution}} and test {\iflistundef{location}} and test {\iffieldundef{year}} and test {\iffieldundef{season}} and test {\iffieldundef{month}} }{}{% \nopunct \printtext[publication]{% \ifboolexpr{ test {\iffieldundef{series}} and test {\iffieldundef{type}} }{% \printfield{number}% \setunit*{\addcomma\space}% }{}% \printlist{location}% \iflistundef{institution}% {\setunit*{\addcomma\space}}% {\setunit*{\addcolon\space}}% \printlist{institution}% \setunit*{\addcomma\space}% \usebibmacro{date}}}} \newtoggle{blx@ox@altthesis} \newtoggle{blx@ox@plainthesis} \DeclareFieldAlias{thesis:publication}{publication} \DeclareFieldFormat{plain}{#1} \DeclareBibliographyOption[boolean]{altthesis}[true]{% \settoggle{blx@ox@altthesis}{#1} } \DeclareBibliographyOption[string]{thesis}[out]{% \ifstrequal{#1}{plain}{% \toggletrue{blx@ox@altthesis}% \toggletrue{blx@ox@plainthesis}% \DeclareFieldAlias{thesis:publication}{plain}% }{% \togglefalse{blx@ox@plainthesis}% \DeclareFieldAlias{thesis:publication}{publication}% \ifstrequal{#1}{in}{% \toggletrue{blx@ox@altthesis}% }{% \togglefalse{blx@ox@altthesis}% \ifstrequal{#1}{out}{}{% \PackageError{oxref} {Invalid option 'bookseries=#1'} {Valid values are 'in', 'out', and 'plain'.}}}}} \newbibmacro*{type+institution+location+date}{% \iftoggle{blx@ox@altthesis}{% \ifboolexpr{ test {\iffieldundef{type}} and test {\iflistundef{institution}} and test {\iflistundef{location}} and test {\iffieldundef{year}} and test {\iffieldundef{season}} and test {\iffieldundef{month}} }{}{% \iftoggle{blx@ox@plainthesis}{}{\nopunct}% \printtext[thesis:publication]{% \printfield{type}% \setunit*{\addcomma\space}% \printlist{location}% \iflistundef{institution}{% \setunit*{\addcomma\space}% }{% \setunit*{\addcolon\space}}% \printlist{institution}% \setunit*{\addcomma\space}% \usebibmacro{date}}} }{% \printfield{type}% \newunit \usebibmacro{institution+location+date}}} \newbibmacro*{type+series+number+edition+organization+publisher+location+date}{% \ifboolexpr{ test {\iffieldundef{type}} and test {\iffieldundef{series}} and test {\iffieldundef{number}} and test {\iffieldundef{edition}} and test {\iflistundef{organization}} and test {\iflistundef{publisher}} and test {\iflistundef{location}} and test {\iffieldundef{year}} and test {\iffieldundef{season}} and test {\iffieldundef{month}} }{}{% \nopunct \printtext[publication]{% \usebibmacro{series+type+number}% \setunit{\addsemicolon\space}% \printfield{edition}% \setunit*{\addcomma\space}% \iflistundef{publisher}{}{% \printlist{organization}% \setunit*{\addcomma\space}}% \printlist{location}% \iflistundef{publisher}{% \iflistundef{organization}{% \setunit*{\addcomma\space}% }{% \setunit*{\addcolon\space}% \printlist{organization}}% }{% \setunit*{\addcolon\space}% \printlist{publisher}}% \setunit*{\addcomma\space}% \usebibmacro{date}}}} \newcommand*{\legreport}{legal} \DeclareBibliographyDriver{report}{% \usebibmacro{bibindex}% \usebibmacro{begentry}% \usebibmacro{author}% \setunit{\printdelim{nametitledelim}}\newblock \usebibmacro{maintitle+title}% \newunit \iffieldundef{maintitle} {\printfield{volume}% \printfield{part}} {}% \setunit{\titlebyauthordelim}\newblock \usebibmacro{byauthor}% \newunit\newblock \printfield{version}% \newunit\newblock \printfield{note}% \newunit\newblock \usebibmacro{series+type+number}% \setunit{\addspace}% \usebibmacro{institution+location+date}% \iffieldequals{entrysubtype}{\legreport}{% \setunit{\addspace}\nopunct }{% \newunit\newblock}% \usebibmacro{chapter+pages}% \newunit \printfield{pagetotal}% \newunit\newblock \iftoggle{bbx:isbn} {\printfield{isrn}} {}% \newunit\newblock \usebibmacro{doi+eprint+url}% \newunit\newblock \usebibmacro{addendum+pubstate}% \setunit{\bibpagerefpunct}\newblock \usebibmacro{pageref}% \setunit{\relatedtypepunct}\newblock \iftoggle{bbx:related} {\usebibmacro{related:init}% \usebibmacro{related}} {}% \usebibmacro{finentry}} \xpatchbibdriver{thesis}{% \printfield{type}% \newunit \usebibmacro{institution+location+date}% }{% \usebibmacro{type+institution+location+date}% }{}{} \DeclareFieldFormat[booklet]{title}{% \def\currentfield{title}% \iffieldannotation{descriptor}{#1}{% \mkbibquote{#1\isdot}}% \undef\currentfield} \DeclareFieldFormat[patent]{title}{\mkbibemph{#1}} \DeclareFieldFormat[patent]{type}{\ifbibstring{#1}{\biblstring{#1}}{#1}} \DeclareNameAlias{byholder}{default} \renewbibmacro*{byholder}{% \ifnameundef{holder}{}{% \bibstring{byholder}% \setunit{\addspace}% \printnames[byholder]{holder}}} \newbibmacro*{location+dates}{% \ifboolexpr{ test {\iffieldundef{location}} and test {\iffieldundef{origyear}} and test {\iffieldundef{origmonth}} and test {\iffieldundef{year}} and test {\iffieldundef{month}} }{}{% \nopunct \printtext[publication]{% \printlist[][-\value{listtotal}]{location}% \setunit*{\addcomma\space}% \ifboolexpr{ test {\iffieldundef{origyear}} and test {\iffieldundef{origmonth}} }{}{% \iffieldundef{origdatetype}{% \bibstring{filed} }{ \printfield{origdatetype}}% \setunit*{\addspace}}% \usebibmacro{origdate+time}% \setunit*{\addcomma\space}% \ifboolexpr{ test {\iffieldundef{year}} and test {\iffieldundef{month}} }{}{% \iffieldundef{datetype}{% \bibstring{issued}% }{ \printfield{datetype}}% \setunit*{\addspace}}% \usebibmacro{date}}}} \DeclareBibliographyDriver{patent}{% \usebibmacro{bibindex}% \usebibmacro{begentry}% \usebibmacro{author}% \setunit{\printdelim{nametitledelim}}\newblock \usebibmacro{title}% \newunit \printlist{language}% \setunit{\titlebyauthordelim}\newblock \usebibmacro{byauthor}% \newunit\newblock \printfield{note}% \newunit\newblock \printfield{type}% \setunit*{\addspace}% \printfield{number}% \newunit\newblock \usebibmacro{byholder}% \newunit\newblock \usebibmacro{location+dates}% \newunit\newblock \usebibmacro{doi+eprint+url}% \newunit\newblock \usebibmacro{addendum+pubstate}% \setunit{\bibpagerefpunct}\newblock \usebibmacro{pageref}% \setunit{\relatedtypepunct}\newblock \iftoggle{bbx:related} {\usebibmacro{related:init}% \usebibmacro{related}} {}% \usebibmacro{finentry}} \DeclareBibliographyDriver{manual}{% \usebibmacro{bibindex}% \usebibmacro{begentry}% \ifboolexpr{ test {\ifentrytype{standard}} and ( test {\ifnameundef{author}} or not test \ifuseauthor ) and not test {\iffieldundef{number}} }{% \printfield{number}\clearfield{number}% \newunit\newblock }{}% \usebibmacro{author/editor}% \setunit{\printdelim{nametitledelim}}\newblock \ifentrytype{software}{% \usebibmacro{title+version}% }{% \usebibmacro{title}}% \setunit{\titlebyauthordelim}\newblock \usebibmacro{byauthor}% \newunit\newblock \usebibmacro{byeditor}% \newunit \ifentrytype{software}{}{% \newunit\printfield{version}}% \newunit \printfield{note}% \newunit\newblock \usebibmacro{type+series+number+edition+organization+publisher+location+date}% \newunit\newblock \usebibmacro{chapter+pages}% \newunit \printfield{pagetotal}% \newunit\newblock \iftoggle{bbx:isbn} {\printfield{isbn}} {}% \newunit\newblock \usebibmacro{doi+eprint+url}% \newunit\newblock \usebibmacro{addendum+pubstate}% \setunit{\bibpagerefpunct}\newblock \usebibmacro{pageref}% \setunit{\relatedtypepunct}\newblock \iftoggle{bbx:related} {\usebibmacro{related:init}% \usebibmacro{related}} {}% \usebibmacro{finentry}} \DeclareBibliographyAlias{standard}{manual} \ExecuteBibliographyOptions[standard]{useeditor=false} \newbibmacro*{publisher+type+series+number+date}{% \iffieldundef{number}{}{% \setunit{\addcomma\space}% \usebibmacro{origdate+time}% }% \ifboolexpr{% test {\iflistundef{origpublisher}} and test {\iflistundef{location}} and test {\iflistundef{publisher}} and test {\iffieldundef{type}} and test {\iffieldundef{series}} and test {\iffieldundef{number}} and test {\iffieldundef{year}} and test {\iffieldundef{season}} and test {\iffieldundef{month}} and test {\iffieldundef{origyear}} and test {\iffieldundef{origseason}} and test {\iffieldundef{origmonth}} and test {\iffieldundef{hour}} }{}{% \nopunct \printtext[publication]{% \printlist{origpublisher}% \setunit*{\addsemicolon\space}% \printlist{location}% \iflistundef{publisher}% {\setunit*{\addcomma\space}}% {\setunit*{\addcolon\space}}% \printlist{publisher}% \iffieldundef{series}% {\setunit*{\addspace}}% {\setunit*{\recordseriespunct}}% \printfield{series}% \setunit*{\addcomma\space}% \printfield{type}% \iflistundef{publisher}% {\setunit*{\addcomma\space}}% {\setunit*{\addspace}}% \printfield{number}% \iffieldundef{number}{% \setunit{\addcomma\space}% \usebibmacro{origdate+time}% }{}% \setunit{\addcomma\space}% \usebibmacro{date+time}}}} \newtoggle{blx@ox@endeditor} \DeclareEntryOption[boolean]{endeditor}[true]{% \settoggle{blx@ox@endeditor}{#1}} \newbibmacro*{pre-byeditor+others}{% \iftoggle{blx@ox@endeditor}{}{% \usebibmacro{byeditor+others}% }} \newbibmacro*{post-byeditor+others}{% \iftoggle{blx@ox@endeditor}{% \usebibmacro{byeditor+others}% }{}} \DeclareBibliographyDriver{audio}{% \usebibmacro{bibindex}% \usebibmacro{begentry}% \usebibmacro{author}% \setunit{\printdelim{nametitledelim}}\newblock \usebibmacro{title}% \newunit \usebibmacro{maintitle}% \iffieldequalstr{relatedtype}{includes}{% \iftoggle{bbx:related}{% \newunit\newblock \usebibmacro{related:init}% \usebibmacro{related}% \clearfield{related}% }{}% }{}% \setunit{\addspace} \usebibmacro{onlinetype}% \setunit{\titlebyauthordelim}\newblock \usebibmacro{byauthor}% \newunit\newblock \usebibmacro{pre-byeditor+others}% \newunit\newblock \printfield{volumes}% \newunit\newblock \printfield{note}% \newunit\newblock% \printlist{organization}% \newunit\newblock% \usebibmacro{publisher+type+series+number+date}% \setunit{\addspace}% \printfield{howpublished}% \newunit\newblock \usebibmacro{post-byeditor+others}% \newunit\newblock \iftoggle{bbx:isbn} {\printfield{isbn}} {}% \newunit\newblock \usebibmacro{doi+eprint+url}% \newunit\newblock \usebibmacro{addendum+pubstate}% \setunit{\bibpagerefpunct}\newblock \usebibmacro{pageref}% \setunit{\relatedtypepunct}\newblock \iftoggle{bbx:related} {\usebibmacro{related:init}% \usebibmacro{related}} {}% \usebibmacro{finentry}} \DeclareBibliographyAlias{music}{audio} \DeclareBibliographyAlias{movie}{audio} \DeclareBibliographyAlias{video}{audio} \DeclareBibliographyDriver{inaudio}{% \usebibmacro{bibindex}% \usebibmacro{begentry}% \usebibmacro{author}% \setunit{\printdelim{nametitledelim}}\newblock \usebibmacro{title}% \setunit{\titlebyauthordelim}\newblock \usebibmacro{byauthor}% \newunit\newblock \usebibmacro{in:}% \usebibmacro{bybookauthor}% \newunit\newblock \usebibmacro{maintitle+booktitle}% \iffieldequalstr{relatedtype}{includes}{% \iftoggle{bbx:related}{% \newunit\newblock \usebibmacro{related:init}% \usebibmacro{related}% \clearfield{related}% }{}% }{}% \setunit{\addspace} \usebibmacro{onlinetype}% \newunit\newblock \usebibmacro{pre-byeditor+others}% \newunit\newblock \printfield{volumes}% \newunit\newblock \printfield{note}% \newunit\newblock% \printlist{organization}% \newunit\newblock% \usebibmacro{publisher+type+series+number+date}% \setunit{\addspace}% \printfield{howpublished}% \newunit\newblock \usebibmacro{post-byeditor+others}% \newunit\newblock \iftoggle{bbx:isbn} {\printfield{isbn}} {}% \newunit\newblock \usebibmacro{doi+eprint+url}% \newunit\newblock \usebibmacro{addendum+pubstate}% \setunit{\bibpagerefpunct}\newblock \usebibmacro{pageref}% \setunit{\relatedtypepunct}\newblock \iftoggle{bbx:related} {\usebibmacro{related:init}% \usebibmacro{related}} {}% \usebibmacro{finentry}} \DeclareBibliographyAlias{inmusic}{inaudio} \DeclareBibliographyAlias{inmovie}{inaudio} \DeclareBibliographyAlias{invideo}{inaudio} \DeclareDataInheritance{audio,music,movie,video}{inaudio,inmusic,inmovie,invideo}{% \inherit{title}{booktitle} \inherit{subtitle}{booksubtitle} \inherit{titleaddon}{booktitleaddon} \noinherit{shorttitle} \noinherit{sorttitle} \noinherit{indextitle} \noinherit{indexsorttitle} } \DeclareFieldFormat[audio,music]{title}{% \def\currentfield{title}% \iffieldannotation{descriptor}{#1}{% \iffieldequalstr{entrysubtype}{podcast}{% \mkbibquote{#1\isdot}% }{% \mkbibemph{#1}}}% \undef\currentfield} \DeclareFieldFormat[movie,video]{title}{% \def\currentfield{title}% \iffieldannotation{descriptor}{#1}{% \ifboolexpr{ test {\iffieldequalstr{entrysubtype}{episode}} or test {\iffieldequalstr{entrysubtype}{clip}} or test {\iffieldequalstr{entrysubtype}{webcast}} }{% \mkbibquote{#1\isdot}% }{% \mkbibemph{#1}}}% \undef\currentfield} \DeclareFieldFormat[inaudio,inmusic,inmovie,invideo]{title}{% \def\currentfield{title}% \iffieldannotation{descriptor}{#1}{% \mkbibquote{#1\isdot}% }% \undef\currentfield} \DeclareFieldFormat[inaudio,inmusic]{booktitle}{% \def\currentfield{booktitle}% \iffieldannotation{descriptor}{#1}{% \iffieldequalstr{entrysubtype}{podcast}{% \mkbibquote{#1\isdot}% }{% \mkbibemph{#1}}}% \undef\currentfield} \DeclareFieldFormat[inmovie,invideo]{booktitle}{% \def\currentfield{booktitle}% \iffieldannotation{descriptor}{#1}{% \ifboolexpr{ test {\iffieldequalstr{entrysubtype}{episode}} or test {\iffieldequalstr{entrysubtype}{clip}} or test {\iffieldequalstr{entrysubtype}{webcast}} }{% \mkbibquote{#1\isdot}% }{% \mkbibemph{#1}}}% \undef\currentfield} \DeclareBibliographyDriver{performance}{% \usebibmacro{bibindex}% \usebibmacro{begentry}% \usebibmacro{author}% \setunit{\printdelim{nametitledelim}}\newblock \usebibmacro{title}% \newunit \usebibmacro{maintitle}% \iffieldequalstr{relatedtype}{includes}{% \iftoggle{bbx:related}{% \newunit\newblock \usebibmacro{related:init}% \usebibmacro{related}% \clearfield{related}% }{}% }{}% \setunit{\addspace} \usebibmacro{onlinetype}% \setunit{\titlebyauthordelim}\newblock \usebibmacro{byauthor}% \newunit\newblock \usebibmacro{pre-byeditor+others}% \setunit{\addspace}% \printfield{howpublished}% \newunit\newblock \printfield{type}% \newunit\newblock \printfield{note}% \ifboolexpr{ test {\iffieldundef{origyear}} and test {\iffieldundef{origmonth}} }{}{% \setunit{\addspace}\newblock \printtext[publication]{\usebibmacro{origdate+time}}} \newunit\newblock \usebibmacro{event+venue+location+date}% \newunit\newblock \usebibmacro{post-byeditor+others}% \newunit\newblock \printlist{organization}% \newunit\newblock \iftoggle{bbx:isbn} {\printfield{isbn}} {}% \newunit\newblock \usebibmacro{doi+eprint+url}% \newunit\newblock \usebibmacro{addendum+pubstate}% \setunit{\bibpagerefpunct}\newblock \usebibmacro{pageref}% \setunit{\relatedtypepunct}\newblock \iftoggle{bbx:related} {\usebibmacro{related:init}% \usebibmacro{related}} {}% \usebibmacro{finentry}} \DeclareBibliographyAlias{image}{performance} \DeclareBibliographyAlias{artwork}{performance} \renewbibmacro*{event+venue+location+date}{% \printfield{eventtitle}% \newunit \printfield{eventtitleaddon}% \newunit \printlist{institution}% \newunit \printfield{venue}% \newunit \printlist{location}% \newunit% \ifboolexpr{ test {\iffieldundef{year}} and test {\iffieldundef{month}} }{\printeventdate}{\usebibmacro{date+time}}} \DeclareFieldFormat[online,image]{title}{% \def\currentfield{title}% \iffieldannotation{descriptor}{#1}{\mkbibquote{#1\isdot}}% \undef\currentfield} \newbibmacro*{onlinetype}{% \ifboolexpr{ test {\iffieldundef{url}} or test {\iffieldundef{entrysubtype}} }{}{% \ifbibxstring{\thefield{entrysubtype}}{% \printtext[brackets]{\bibstring{\thefield{entrysubtype}}}% }{}}} \DeclareBibliographyDriver{online}{% \usebibmacro{bibindex}% \usebibmacro{begentry}% \usebibmacro{author/editor+others/translator+others}% \setunit{\printdelim{nametitledelim}}\newblock \usebibmacro{title}% \newunit \usebibmacro{maintitle} \setunit{\addspace}% \usebibmacro{onlinetype}% \setunit{\titlebyauthordelim}\newblock \usebibmacro{byauthor}% \newunit\newblock \usebibmacro{byeditor+others}% \newunit\newblock \printfield{version}% \newunit \printfield{note}% \newunit\newblock \printlist{organization}% \iffieldundef{year}{}{% \setunit{\addspace}\newblock \printtext[parens]{\usebibmacro{date+time}}% }% \newunit\newblock \printlist{publisher}% \newunit\newblock \iftoggle{bbx:eprint} {\usebibmacro{eprint}} {}% \newunit\newblock \usebibmacro{url+urldate}% \newunit\newblock \usebibmacro{addendum+pubstate}% \setunit{\bibpagerefpunct}\newblock \usebibmacro{pageref}% \setunit{\relatedtypepunct}\newblock \iftoggle{bbx:related} {\usebibmacro{related:init}% \usebibmacro{related}} {}% \usebibmacro{finentry}} \newbibmacro*{title+version}{% \ifboolexpr{ test {\iffieldundef{title}} and test {\iffieldundef{subtitle}} } {} {\printtext[title]{% \printfield[titlecase]{title}% \setunit{\subtitlepunct}% \printfield[titlecase]{subtitle}}% \setunit{\addspace}}% \printfield{version}% \setunit{\addspace}% \printfield{titleaddon}% } \DeclareFieldFormat[software]{version}{\mkbibparens{\bibstring{version}~#1}} \DeclareFieldFormat[software]{urldate}{\bibstring{urldown}\space#1} \DeclareBibliographyAlias{software}{manual} \DeclareBibliographyAlias{dataset}{manual} \newtoggle{bbx:scotstyle} \DeclareEntryOption{scottish-style}[true]{% \settoggle{bbx:scotstyle}{#1}} \newboolean{bbx@year-essential}\setboolean{bbx@year-essential}{false} \DeclareEntryOption{year-essential}[true]{% \setboolean{bbx@year-essential}{#1}} \newboolean{bbx@paryear-essential}\setboolean{bbx@paryear-essential}{false} \DeclareEntryOption{paryear-essential}[true]{% \setboolean{bbx@paryear-essential}{#1}} \newtoggle{blx@ox@nopostnotedelim} \newtoggle{bbx:altcourt} \DeclareBibliographyOption{court-plain}[true]{% \settoggle{bbx:altcourt}{#1}} \DeclareEntryOption{court-plain}[true]{% \settoggle{bbx:altcourt}{#1}} \newtoggle{bbx@ecliuse} \newtoggle{bbx@eclionly} \DeclareBibliographyOption{ecli}[yes]{% \ifstrequal{#1}{no}{% \global\togglefalse{bbx@ecliuse}% \global\togglefalse{bbx@eclionly}% }{% \global\toggletrue{bbx@ecliuse}% \ifstrequal{#1}{only}{% \global\toggletrue{bbx@eclionly}% }{}}} \DeclareFieldFormat{casenotetitle}{\mkbibquote{\mkbibemph{#1}}} \DeclareFieldFormat[jurisdiction,legislation,legal]{journaltitle}{#1} \DeclareFieldFormat[jurisdiction]{volume}{#1} \DeclareFieldFormat[jurisdiction]{titleaddon}{\mkbibparens{#1}} \DeclareFieldFormat{romanvol}{\RN{#1}} \DeclareListFormat[jurisdiction]{listb}{} \DeclareFieldFormat{usseries}{\ifinteger{#1}{\mkusbibordinal{#1}}{#1}} \DeclareFieldFormat{verba}{#1} \DeclareListFormat{echrinst}{% \ifboolexpr{% test {\ifnumequal{\value{listtotal}}{1}} or test {\ifnumequal{\value{listcount}}{\value{listtotal}}} }{% \ifboolexpr{ test {\ifdefstring{\Commission}{#1}} or test {\ifdefstring{\commission}{#1}}% }{% \bibstring{commissiondecision}% }{#1}% }{% \setcounter{blx@tmpcnt}{\value{listcount}}% \addtocounter{blx@tmpcnt}{1}% \ifnumequal{\value{blx@tmpcnt}}{\value{listtotal}}{% #1\space\bibstring{and}\addspace }{% #1\addcomma\space}}}% \newcommand*{\commission}{commission} \newcommand*{\Commission}{Commission} \DeclareListFormat{ecthr}{% \ifboolexpr{ test {\ifdefstring{\Commission}{#1}} or test {\ifdefstring{\commission}{#1}} }{\bibstring[\mkbibparens]{commissiondecision}\toggletrue{blx@ox@nopostnotedelim}}{}} \newcommand*{\pcijrep}{PCIJ Rep} \DeclareFieldFormat{international}{% \iffieldequals{journaltitle}{\pcijrep}{% \bibcplstring{jourser}\space #1% }{#1}} \DeclareListFormat{checkcontains}{% \bbx@check{#1}} \newtoggle{bbx@institutiontoggle} \newcommand\iflistcontains[2]{% \global\togglefalse{bbx@institutiontoggle}% \def\bbx@check##1{% \ifdefstring{#2}{##1}{\global\toggletrue{bbx@institutiontoggle}}{}}% \printlist[checkcontains]{#1}% \iftoggle{bbx@institutiontoggle}} \DeclareFieldFormat{draftleg}{% \StrBefore{#1}{ Bill}} \DeclareListFormat{billprinting}{% \ifstrequal{#1}{HC}{% \mkbibbrackets{\strfield{number}}% \toggletrue{blx@ox@nopostnotedelim}% }{% \strfield{number}% \togglefalse{blx@ox@nopostnotedelim}}} \newcommand*{\treatypartysep}{\allowbreak ---\allowbreak} \DeclareListFormat{treaty}{% \ifmoreitems{}{% \ifnumequal{\value{listcount}}{1}{% \bibopenparen }{}% \ifnumgreater{\value{liststop}}{\value{listcount}}{% #1\treatypartysep }{% #1\bibcloseparen}}} \def\siganddate#1{% \def\bbx@tempa{#1}% \expandafter\bbx@signeddatei#1/relax} \def\bbx@signeddatei#1=#2/relax{% \def\bbx@tempa{#2-}% \bibstring{#1}\space\expandafter\makebbx@datei\bbx@tempa} \def\makebbx@datei#1-#2-#3-{% \makebbx@dateii{#1}{#2}{#3}} \def\makebbx@dateii#1#2#3{% \blx@imc@stripzeros{#3}~\mkbibmonth{#2}% \space #1} \DeclareListFormat{treatydates}{% \ifnumequal{\value{listcount}}{1}{% \siganddate{#1}% }{% \addcomma\space\siganddate{#1}}} \newrobustcmd*{\mkrawpageprefix}[1][none]{% \begingroup \def\blx@tempa{\blx@mkpageprefix@i}% \ifstrequal{#1}{none}{}{% \ifbibstring{#1}{% \def\blx@tempa{\blx@mkpageprefix{#1}}% }{% \blx@warning@entry{Unknown pagination type '#1'}}}% \@ifnextchar[%] {\blx@tempa} {\blx@tempa[\@firstofone]}} \newcommand*\paragraphmarkings{[]} \DeclareFieldFormat[jurisdiction,legislation,legal]{postnote}{% \iffieldundef{pagination}{% \ifboolexpr{ test {\ifkeyword{eu}} or test {\ifkeyword{echr}} }{% \mkcomprange[{\mkrawpageprefix[paragraph]}]{#1}% }{% \mkcomprange{#1}}% }{% \iffieldequals{pagination}{\paragraphmarkings}{% \mkcomprange[\mkbibbrackets]{#1}% }{% \mkcomprange[{\mkpageprefix[pagination]}]{#1}}}} \renewbibmacro*{shorthandintro}{% \iffieldundef{shorthandintro} {\iffieldundef{shorthand} {} {\setunit{\addspace}% \printtext[parens]{% \ifboolexpr{ test {\ifentrytype{jurisdiction}} or test {\ifentrytype{legal}} or test {\ifentrytype{legislation}} }{}{% \bibstring{citedas}\space}% \printfield{shorthand}}}} {\setunit{\addspace}% \printtext[parens]{\printfield{shorthandintro}}}} \newbibmacro*{issue/volume}{% \iffieldundef{volume}% {\iffieldundef{issue}% {}% {\printfield{issue}}}% {\printfield[default]{volume}}} \newcommand*{\subtypenewsp}{newspaper} \newbibmacro*{year+vol+report}[1][default]{% \iffieldequals{entrysubtype}{\subtypenewsp}{% \setunit{\addcomma\space}% }{% \usebibmacro{journaldate}% \setunit{\addspace}% \printfield[parens]{origyear}% \setunit{\addspace}% \printfield{volume}% \setunit{\addspace}}% \printfield{journaltitle}% \setunit*{\addspace}% \iffieldundef{series}{}{% \setunit{\addspace}% \printfield[#1]{series}% \setunit{\addspace}}% \iffieldequals{entrysubtype}{\subtypenewsp}{% \setunit{\addcomma\space}% \printdate% }{}} \newbibmacro*{journaldate}[1][]{% \ifboolexpr{ test {\iffieldundef{#1volume}} or bool {bbx@#1year-essential} }{% \ifboolexpr{ test {\ifkeyword{sc}} or test {\iftoggle{bbx:scotstyle}} }{% \setunit{\addcomma\space}% \printfield{#1year}% }{% \printfield[brackets]{#1year}}% }{% \printfield[parens]{#1year}}} \newcommand*{\casenote}{casenote} \newcommand{\casenotetext}{\bibstring{casenote}} \newbibmacro{journaltitle}{% \iffieldequals{entrysubtype}{\casenote}{% \iffieldundef{crossref}{% \usebibmacro{title}% }{% \iffieldundef{note}{% \restorefield{note}{\casenotetext}% }{}% \ifboolexpr{ test {\iffootnote} and test {\iftoggle{bbx@samefootnote}} and test {\iffieldequals{crossref}{\blx@lastkey@foot}}% }{}{\printfield[casenotetitle]{title}}}% }{% \usebibmacro{title}}} \newbibmacro*{unreported}[1][default]{% \iffieldundef{verba}{% \ifboolexpr{ test {\iflistundef{institution}} and test {\iffieldundef{date}} and test {\iffieldundef{year}} }{}{% \ifboolexpr{ test {\iffieldundef{date}} and test {\iffieldundef{year}} }{% \mkbibparens{\printlist[jurisdiction]{institution}}% }{% \toggletrue{blx@ox@nopostnotedelim}% \iflistundef{institution}{% \mkbibparens{\usebibmacro{date}}% }{% \printtext[parens]{% \printlist[#1]{institution}% \setunit{\addcomma\space} \usebibmacro{date}}}}}% }{% \iftoggle{bbx@ecliuse}{}{% \printfield{verba}}}} \newbibmacro{court-note}{% \iffieldundef{note}% {}% {\printfield{note}% \toggletrue{blx@ox@nopostnotedelim}}} \newbibmacro*{jurisdictionpages}{% \iffieldequals{entrysubtype}{\subtypenewsp}{}{% \setunit{\addspace}% \printfield{pages}}} \newbibmacro{pcitenote}{% \iffieldundef{userc}{}{% parreporter \setunit{\addcomma\space}% \iffieldundef{postnote}{}{% \printfield{postnote}% \clearfield{postnote}% \setunit{\addsemicolon\space}}}} \newbibmacro*{courtid}{% \iffieldundef{number}{% \ifboolexpr{ test {\iflistundef{institution}} and test {\iffieldundef{location}}% }{% \togglefalse{blx@ox@nopostnotedelim}% }{% \ifboolexpr{% test {\iffieldundef{journaltitle}} or not togl {bbx:altcourt} }{% \printtext[parens]{% \printfield{location}% \setunit{\addspace}% \printlist{institution}% \usebibmacro{unrep:date}}% \toggletrue{blx@ox@nopostnotedelim} }{% \setunit{\addcomma\space}% \printfield{location}% \setunit*{\addspace}% \printlist{institution}}}% }{% \togglefalse{blx@ox@nopostnotedelim}}} \newbibmacro*{unrep:date}{% \ifboolexpr{ test {\iffieldundef{journaltitle}}% and test {\iffieldundef{number}}% }{% \setunit{\addcomma\space}% \usebibmacro{date}% }{}} \DeclareBibliographyDriver{jurisdiction}{% \usebibmacro{bibindex}% \usebibmacro{begentry}% \usebibmacro{juriscitation}% \usebibmacro{doi+eprint+url}% \setunit{\addspace}%\newblock \usebibmacro{addendum+pubstate}% \setunit{\bibpagerefpunct}\newblock \usebibmacro{pageref}% \setunit{\addspace}%\newblock \iftoggle{bbx:related} {\usebibmacro{related:init}% \usebibmacro{related}} {}% \usebibmacro{finentry}} \newtoggle{bbx@juriscitedone} \newbibmacro{juriscitation}{% \togglefalse{bbx@juriscitedone}% \renewcommand{\do}[1]{% \ifkeyword{##1}{% \toggletrue{bbx@juriscitedone}\usebibmacro{##1juriscitation}% \listbreak }{}}% \docsvlist{eu,echr,int,ca,us}% \iftoggle{bbx@juriscitedone}{}{\usebibmacro{enjuriscitation}}% } \newbibmacro*{eujuriscitation}{% \iflistcontains{institution}{\commission}{}{% \usebibmacro{eucasenumber}}% \usebibmacro{title}% \setunit{\addspace}% \iflistcontains{institution}{\commission}{% \usebibmacro{eucommissiondecision}}{}% \setunit{\addspace}% \usebibmacro{eu:reportinfo}% \iflistcontains{institution}{\commission}{% \setunit{\addcomma\space}% }{% \setunit{\addspace}}% \usebibmacro{court-note}% } \newbibmacro{eucasenumber}{% \iffieldundef{type}{% \ifboolexpr{ test {\IfSubStr{\thefield{number}}{,}} or test {\IfSubStr{\thefield{number}}{--}} or test {\IfSubStr{\thefield{number}}{ and }} }{% \bibstring{eujoinedcases}% }{% \bibstring{eucase}}% }{% \printfield{type}}% \setunit{\addnbspace}% \printfield{number}% \setunit{\addspace}} \newbibmacro{eucommissiondecision}{% \iffieldundef{userb}{}{% \printfield[parens]{userb}}% \setunit{\addspace}% \iffieldundef{number}{}{% \iffieldundef{type}{% \setunit{\addspace\bibstring{commissiondecision}\addspace}% }{% \setunit{\addspace\printfield{type}\addspace}}% \printfield{number}}} \newbibmacro*{eu:reportinfo}{% \iftoggle{bbx@eclionly}{% \iffieldundef{verba}{% \usebibmacro{eu:osreport} }{% \printfield{verba}}% }{% \usebibmacro{eu:osreport}}} \newbibmacro*{eu:osreport}{% \iftoggle{bbx@ecliuse}{% \iffieldundef{verba}{}{% \printfield{verba}% \setunit{\addcomma\space}}% }{}% \iffieldundef{journaltitle}{% \usebibmacro{unreported}% }{% \usebibmacro{eu:year+vol+report}}} \newcommand*\officialjournaltitle{OJ} \newcommand*\ecrreporttitle{ECR} \newbibmacro*{eu:year+vol+report}{% \iffieldequals{journaltitle}{\ecrreporttitle}{% \printfield[brackets]{year}% \setunit{\addspace}% \printfield{journaltitle}% \setunit{\addspace}% \printfield{volume}% \setunit*{\printtext{--\allowbreak}}% \printfield{pages}% }{% \iffieldequals{journaltitle}{\officialjournaltitle}{% \printfield[brackets]{year}% \setunit{\addspace}% \printfield{journaltitle}% \setunit{\addspace}% \printfield[default]{series}% \usebibmacro{issue/volume}% \setunit{\printtext{\slash}}% \printfield{pages}% }{% \usebibmacro{year+vol+report}}}} \newbibmacro*{echrjuriscitation}{% \usebibmacro{title}% \setunit{\addspace}\newblock \iffieldundef{number}{}{% \printtext[parens]{% \def\adddot{}% \bibstring{application}\space \bibstring{number}\space \printfield{number}}% \setunit{\addspace}\newblock}% \iffieldundef{journaltitle}{% \usebibmacro{unreported}[echrinst]% }{% \usebibmacro{echr:year+vol+report} \setunit{\addspace}\newblock \usebibmacro{echr:courtid}}% \setunit{\addspace}% \usebibmacro{court-note}% \newblock \setunit{\addspace}} \newcommand*{\seriesa}{Series A} \newcommand*{\echrreports}{ECHR} \newbibmacro*{echr:year+vol+report}{% \iffieldequals{journaltitle}{\seriesa}{% \usebibmacro{seriesareport}% }{% \iffieldequals{journaltitle}{\echrreports}{% \usebibmacro{echrreports}% }{% \usebibmacro{year+vol+report} \setunit{\addspace}% \printfield{pages}}}} \newbibmacro*{seriesareport}{% \printfield[parens]{year}% \setunit{\addspace}% \printfield{journaltitle}% \setunit{\addspace}% \printtext{\def\adddot{}\bibstring{number}\addspace}% \printfield{pages}} \newbibmacro*{echrreports}{% \printfield{journaltitle}% \setunit{\addspace}% \printfield{year}% \iffieldundef{volume}{}{% \printtext{--}\printfield[romanvol]{volume}} \setunit{\addspace}% \printfield{pages}} \newcommand*{\decisionsandreports}{DR} \newcommand*{\collectionofdecisions}{CD} \newbibmacro*{echr:courtid}{% \ifboolexpr{ test {\iffieldequals{journaltitle}{\decisionsandreports}} or test {\iffieldequals{journaltitle}{\collectionofdecisions}}% }{}{% \printlist[ecthr]{institution}}} \newbibmacro*{intjuriscitation}{% \iflistundef{institution}{% \setunit{}\printtext{}% }{% \printlist{institution}% \setunit{\addcomma\space}}% \usebibmacro{int:title}% \setunit{\addspace}\newblock \iffieldundef{journaltitle}{% \printfield{number}% \setunit{\addspace}\newblock \printtext[parens]{\printdate}% }{% \usebibmacro{year+vol+report}[international]% }% \setunit{\addspace}% \usebibmacro{int:jurisdictionpages}% \setunit{\addspace}\newblock \usebibmacro{court-note}% } \newbibmacro*{int:title}{% \ifboolexpr{ test {\iffieldundef{title}} and test {\iffieldundef{subtitle}} }{}{% \printtext[title]{% \printfield[titlecase]{title}% \setunit{\addspace}% \printfield[parens]{subtitle}}}% \setunit{\addspace}% \printfield{titleaddon}% } \newbibmacro*{int:jurisdictionpages}{% \iffieldequals{journaltitle}{\pcijrep}{% \printtext{\bibcpstring{number}\addspace}% \iffieldundef{pages}{% \printfield{number}% }{% \printfield{pages}}% }{% \printfield{pages}}} \newbibmacro{canjuriscitation}{% \usebibmacro{title}% \setunit{\addspace}\newblock \printfield{number}% \setunit{\addcomma\space}% \iffieldundef{journaltitle}{}{% \usebibmacro{can:year+vol+report}}% \usebibmacro{jurisdictionpages}% \usebibmacro{pcitenote}% \usebibmacro{altreportdetails}% \unspace\printlist[jurisdiction][1-\value{listtotal}]{listb}% \newunit\newblock \usebibmacro{courtid}% \newunit% \usebibmacro{court-note}% \newblock% \newunit} \newbibmacro*{can:year+vol+report}{% \iffieldundef{number}{% \setunit{\addspace}% }{% \ifboolexpr{ test {\iffieldundef{volume}} or bool {bbx@year-essential}% }{}{% \clearfield{year}}}% \iffieldequals{entrysubtype}{\subtypenewsp}{}{% \iffieldundef{year}{}{% \usebibmacro{journaldate}% \setunit{\addspace}}} \printfield{volume}% \setunit{\addspace}% \printfield{journaltitle}% \setunit*{\addspace}% \iffieldundef{series}{}{% \setunit{\addspace}% \printtext[parens]{\printfield[usseries]{series}}% \setunit{\addspace}}% \iffieldequals{entrysubtype}{\subtypenewsp}{% \setunit{\addcomma\space}% \usebibmacro{newspaperdate}% }{}} \newbibmacro{usjuriscitation}{% \usebibmacro{title}% \setunit{\addcomma\space}\newblock% \iffieldundef{journaltitle}{% \printfield{number}% \setunit{\addcomma\space}% \printfield[default]{eprint}% \clearfield{eprint}% }{ \usebibmacro{us:vol+report}}% \setunit{\addspace}% \usebibmacro{jurisdictionpages}% \usebibmacro{us:postnote}% \usebibmacro{altreportdetails}% \setunit{\addspace}\newblock \unspace\printlist[jurisdiction][1-\value{listtotal}]{listb}% \setunit{\addspace}% \usebibmacro{us:courtid+date}% \setunit{\addspace}% \usebibmacro{court-note}% \newblock \setunit{\addspace}} \newbibmacro{us:vol+report}{% \printfield{volume}% \setunit{\addspace}% \printfield{journaltitle}% \iffieldundef{series}{}{% \setunit{\addspace}% \printfield[usseries]{series}}} \newbibmacro{us:postnote}{% \iffieldundef{postnote}{}{% \setunit{\addcomma\space}% \printfield{postnote}% \clearfield{postnote}% }} \newbibmacro{us:courtid+date}{% \ifboolexpr{ test {\iflistundef{institution}} and test {\iflistundef{location}} and test {\iffieldundef{year}} }{}{% \printtext[parens]{% \printlist{location}% \setunit*{\addspace}% \printlist{institution}% \setunit{\addspace}% \printfield{year}% \nopunct}}} \newbibmacro{enjuriscitation}{% \usebibmacro{title}% \setunit{\addspace}\newblock \printfield{number}% \setunit*{\addcomma\space}% \iffieldundef{journaltitle}{}{% \usebibmacro{year+vol+report}}% \usebibmacro{jurisdictionpages}% \usebibmacro{pcitenote}% \usebibmacro{altreportdetails}% \unspace\printlist[jurisdiction][1-\value{listtotal}]{listb}% additionalreports \setunit{\addspace}\newblock \usebibmacro{courtid}% \setunit{\addspace}% \usebibmacro{court-note}} \newbibmacro{altreportdetails}{% \restorefield{prenote}{\postnotesecond}% \iffieldundef{userc}{}{% parreporter \usebibmacro{journaldate}[par]% \setunit{\addspace}\newblock \usebibmacro{altreportvolume}% \setunit{\addspace}\newblock \usebibmacro{altjournaltitle}% \setunit{\addspace}\newblock \usebibmacro{altseries}% \setunit{\addspace}\newblock \usebibmacro{altjurisdictionpages}% \iffieldundef{prenote}{}{% \setunit{\addcomma\space}% \printfield[postnote]{prenote}}}} \newbibmacro*{altreportvolume}{% \iffieldundef{userb}{% parvolume \printfield{volume}% }{% \printfield{userb}}} \newbibmacro*{altjournaltitle}{% \iffieldundef{userc}{% parreporter \printfield{journaltitle}% \setunit{\addspace}% }{ \printfield{userc}}} \newbibmacro*{altseries}{% \iffieldundef{userd}{% parseries \printfield{series}% }{% \printfield{userd}}} \newbibmacro*{altjurisdictionpages}{% \iffieldundef{usere}{% parpages \usebibmacro{jurisdictionpages}% }{% \printfield{usere}}}% \newcommand*{\subtypecourtrules}{procedure-rule} \DeclareBibliographyDriver{legislation}{% \usebibmacro{bibindex}% \usebibmacro{begentry}% \iffieldequals{entrysubtype}{\subtypecourtrules}{% \usebibmacro{courtrules}% }{% \ifkeyword{draft}{% \usebibmacro{legislation:bill}% }{% \ifkeyword{eu}{% \usebibmacro{eulegislation}% }{% \printfield[default]{title}% \setunit{\addspace}% \printfield[default]{year}% \setunit*{\addspace}% \usebibmacro{legnumber}% \setunit{\addspace}\newblock \usebibmacro{legsupp}}}}% \setunit{\addcomma\space}% \printfield{note}% \setunit{\addspace}% \usebibmacro{finentry}} \newbibmacro*{courtrules}{% \restorefield{prenote}{\postnotesecond}% \iffieldequalstr{shorttitle}{PD}{% \printfield{postnote}% \clearfield{postnote}% \setunit{\addspace}% }{}% \iffieldundef{shorttitle}{% \printfield[default]{title}% }{% \printfield[default]{shorttitle}}% \setunit{\addspace}\newblock \iffieldundef{postnote}{% \toggletrue{blx@ox@nopostnotedelim}% }{% \iffieldequalstr{shorttitle}{CPR}{% \printfield{postnote}% \setunit{\addspace}% }{% \printtext{% \bibstring{order}\space \printfield{postnote}% \setunit{\addcomma\space}}}}% \restorefield{postnote}{\postnotesecond}% \usebibmacro{postnote}% \clearfield{postnote}% \setunit{\addspace}\newblock} \newcommand*{\subtypeprimarylegislation}{primary} \newbibmacro*{legislation:bill}{% \printfield[draftleg]{title}% \setunit{\addspace}% \printlist{institution}% \setunit*{\addspace}% \iffieldequals{entrysubtype}{\subtypeprimarylegislation}{% \bibcpstring{bill}% \setunit{\addspace}% \printtext[parens]{\usebibmacro{sessionyear}}% \setunit{\addspace}% \iffieldundef{number}{}{% \printlist[billprinting]{institution}}% }{% \printtext[parens]{% \bibstring{draft}\space \printdate}} \setunit{\addspace}} \newbibmacro*{sessionyear}{% \iffieldundef{year}{}{% \printfield{year}% \iffieldundef{endyear}{}{% \bibdaterangesep \blx@ox@compyear{\thefield{year}}{\thefield{endyear}}}}} \newbibmacro{eulegislation}{% \printfield[default]{title}% \setunit{\addspace}\newblock% \usebibmacro{eulegref}} \newcommand*{\ojspecedtitle}{OJ Spec Ed} \newbibmacro*{eulegref}{% \iffieldequals{journaltitle}{\officialjournaltitle}{% \printfield[brackets]{year}% \setunit{\addspace}% \printfield{journaltitle}% \setunit{\addspace}% \iffieldundef{series}{% \printtext{L}% }{% \printfield[default]{series}}% \usebibmacro{issue/volume}% \setunit*{\addslash}% \printfield{pages}% \togglefalse{blx@ox@nopostnotedelim}% }{% \usebibmacro{year+vol+report}% \setunit*{\addspace}% \printfield{pages}}} \newbibmacro*{legnumber}{% \iffieldequals{entrysubtype}{\subtypeprimarylegislation}{% \ifboolexpr{( test {\iffieldundef{number}} or not test {\iffieldundef{title}} ) and not ( test {\ifkeyword{cy}} or test {\ifkeyword{sc}} or test {\ifkeyword{ni}} ) }{}{% \printtext[parens]{\printfield{number}}% \toggletrue{blx@ox@nopostnotedelim}}% }{% \iffieldundef{number}{}{% \setunit{\addcomma\addspace}% \printfield{number}% \togglefalse{blx@ox@nopostnotedelim}}}} \newbibmacro*{legsupp}{% \ifkeyword{cy} {\iffieldundef{userb} {} {\printtext{\mkbibparens{\printfield{userb}}}\toggletrue{blx@ox@nopostnotedelim}}} {}} \newcommand*{\explanatorynote}{explanatory note} \newcommand*{\parliamentarytype}{parliamentary} \newcommand*{\treatysubtype}{piltreaty} \DeclareBibliographyDriver{legal}{% \usebibmacro{bibindex}% \usebibmacro{begentry}% \iffieldequals{entrysubtype}{\explanatorynote}{% \printfield[default]{title}% \setunit{\addspace}\newblock }{% \iffieldequals{entrysubtype}{\parliamentarytype}{% \usebibmacro{legal:parliamentary}% }{% \usebibmacro{treatycitation}}}% \setunit{\addcomma\space}\newblock \printfield[default]{note} \setunit{\addspace}\newblock \setunit{\bibpagerefpunct}% \usebibmacro{pageref}% \usebibmacro{finentry}} \newbibmacro{legal:parliamentary}{% \printfield[default]{title}% \newunit\newblock \printfield{type}% \setunit{\addspace}% \iffieldundef{series}{}{% \printtext[parens]{% \biblstring{jourser}\space \printfield{series}}}% \setunit{\addspace}% \printfield{volume}% \setunit{\addcomma\space}% \usebibmacro{hansard-ref}% \setunit{\addspace}% \iffieldundef{year}{}{% \printtext[parens]{\usebibmacro{date}}}% \togglefalse{blx@ox@nopostnotedelim}} \newbibmacro*{hansard-ref}{% \iffieldundef{postnote}{% \iffieldundef{pages}{}{% \printfield{pages}}% }{}}% \newbibmacro{treatycitation}{% \printfield[default]{title}% \setunit{\addspace}\newblock% \printlist[treaty]{institution} \setunit{\addspace}\newblock \usebibmacro{treatyinfo}% \setunit{\addspace}\newblock \usebibmacro{treaty:year+vol+report}} \newbibmacro{treatyinfo}{% \iflistundef{lista}{% execution \iffieldundef{year}{}{% \iffieldundef{volume}{}{% \printtext[parens]{\printdate}}}% }{% \printtext[parens]{\printlist[treatydates]{lista}}}} \newbibmacro{treaty:year+vol+report}{% \iffieldequals{journaltitle}{\officialjournaltitle}{% \usebibmacro{eulegref}% }{% \usebibmacro{treaty:date}% \setunit{\addspace}% \printfield[default]{volume}% \setunit{\addspace}% \printfield{journaltitle}% \setunit*{\addspace}% \iffieldundef{series}{}{% \setunit{\addspace}% \printfield{series}% \setunit{\addspace}}% \printfield{pages}}}% \newbibmacro*{treaty:date}{% \ifboolexpr{ test {\iffieldundef{volume}} or bool {bbx@year-essential} }{% \ifboolexpr{ test {\ifkeyword{sc}} or test {\iftoggle{bbx:scotstyle}} }{% \printfield{year}% }{% \printfield[brackets]{year}% }}{}} \DeclareBibliographyAlias{commentary}{book} \newcommand{\locationlibrarypunct}{\addcomma\addspace} \newcommand{\collectionshelfmarkpunct}{\addspace} \newcommand{\datingpagespunct}{\addcomma\addspace} \newcommand{\librarycollectionpunct}{\addcomma\addspace} \newcommand{\pagetotalpagespunct}{\addcomma\addspace} \newcommand{\columnslayerpunct}{\addsemicolon\addspace}% \def\recto{r} \def\verso{v} \NumCheckSetup{\def\recto{}\def\verso{}} \DeclareFieldFormat[manuscript,unpublished]{title}{% \def\currentfield{title}% \iffieldannotation{descriptor}{#1}{\mkbibquote{#1\isdot}}% \undef\currentfield} \DeclareFieldFormat{columns+layer}{\mkbibparens{#1}} \DeclareFieldFormat{columns}{\mkbibparens{#1}} \DeclareFieldFormat{layer}{\mkbibparens{#1}} \DeclareFieldFormat{dating}{#1\isdot}% \DeclareFieldFormat{support}{\ifbibstring{#1}{\bibstring{#1}}{#1}} \newbibmacro{manuscript:date}{% \ifboolexpr{ test {\ifnameundef{author}} and test {\iffieldundef{title}} and test {\iffieldundef{label}} }{}{\usebibmacro{date}}} \newbibmacro{dating}{% \ifboolexpr{( test {\ifnameundef{author}} and test {\iffieldundef{title}} and test {\iffieldundef{label}} ) or test {\iffieldundef{year}} }{% \printfield{dating}% }{}} \newbibmacro{location+library+collection+shelfmark}{% \printfield{library}% \setunit{\locationlibrarypunct}% \printlist{location}% \setunit{\librarycollectionpunct}% \usebibmacro{collection+shelfmark}} \newbibmacro{collection+shelfmark}{% \ifboolexpr{ test {\iffieldundef{collection}} and test {\iffieldundef{shelfmark}} }{}{% \printtext[collection+shelfmark]{% \printfield{collection}% \setunit*{\collectionshelfmarkpunct}% \printfield{shelfmark}}}} \newbibmacro{manuscript:pages}{% \printfield{pagetotal}% \setunit{\addspace}% \iffieldundef{pages}{% \usebibmacro{manuscript:columns+layer}% }{% \usebibmacro{manuscript:columns}% \setunit{\pagetotalpagespunct}% \printfield{pages}% \setunit{\addspace}% \usebibmacro{manuscript:layer}}} \newbibmacro{manuscript:columns}{% \iffieldundef{columns}{}{% \printtext[columns]{\bibstring{\strfield{columns}column}}}% }% \newbibmacro{manuscript:layer}{% \iffieldundef{layer}{}{% \printtext[layer]{\bibstring{\strfield{layer}layer}}}% }% \newbibmacro{manuscript:columns+layer}{% \ifboolexpr{ test {\iffieldundef{columns}} or test{\iffieldundef{layer}} }{% \usebibmacro{manuscript:columns}% \usebibmacro{manuscript:layer}% }{% \printtext[columns+layer]{% \bibstring{\strfield{columns}column}% \setunit*{\columnslayerpunct}% \bibstring{\strfield{layer}layer}}}}% \DeclareBibliographyDriver{manuscript}{% \usebibmacro{bibindex}% \usebibmacro{begentry}% \usebibmacro{author}% \setunit{\printdelim{nametitledelim}}\newblock \usebibmacro{title}% \setunit{\titlebyauthordelim}\newblock \usebibmacro{byauthor}% \newunit\newblock \printfield{howpublished}% \newunit\newblock \printfield{note}% \newunit\newblock \usebibmacro{manuscript:date}% \newunit\newblock \usebibmacro{location+library+collection+shelfmark}% \newunit \printfield{support}% \newunit \usebibmacro{dating}% \setunit{\datingpagespunct} \usebibmacro{manuscript:pages} \newunit\newblock% \iftoggle{bbx:url}{% \usebibmacro{url+urldate}% }{}% \setunit{\relatedtypepunct}\newblock \iftoggle{bbx:related}{% \usebibmacro{related:init}% \usebibmacro{related}% }{}% \usebibmacro{finentry}} \newbibmacro*{library+location+series+number}{% \printfield{library}% \setunit{\locationlibrarypunct}% \printlist{location}% \setunit{\librarycollectionpunct}% \ifboolexpr{ test {\iffieldundef{series}} and test {\iffieldundef{number}} }{}{% \printtext[collection+shelfmark]{% \printfield{series}% \setunit*{\collectionshelfmarkpunct}% \printfield{number}}}} \newtoggle{blx@ox@ms} \DeclareBibliographyDriver{unpublished}{% \usebibmacro{bibindex}% \usebibmacro{begentry}% \iffieldundef{library}{\togglefalse{blx@ox@ms}}{\toggletrue{blx@ox@ms}}% \usebibmacro{author}% \setunit{\printdelim{nametitledelim}}\newblock \usebibmacro{title}% \setunit{\titlebyauthordelim}\newblock \usebibmacro{byauthor}% \newunit\newblock \printfield{note}% \newunit\newblock \printfield{howpublished}% \newunit\newblock \iftoggle{blx@ox@ms}{% \usebibmacro{manuscript:date}% \newunit\newblock \usebibmacro{library+location+series+number}% \newunit \printfield{support}% \newunit \usebibmacro{dating}% \setunit{\datingpagespunct} \usebibmacro{manuscript:pages} }{% \usebibmacro{location+date}% }% \newunit\newblock \iftoggle{bbx:url} {\usebibmacro{url+urldate}} {}% \newunit\newblock \usebibmacro{addendum+pubstate}% \setunit{\bibpagerefpunct}\newblock \usebibmacro{pageref}% \setunit{\relatedtypepunct}\newblock \iftoggle{bbx:related} {\usebibmacro{related:init}% \usebibmacro{related}} {}% \usebibmacro{finentry}} \DeclareBibliographyAlias{letter}{unpublished} \DeclareFieldFormat[letter]{title}{% \def\currentfield{title}% \iffieldannotation{descriptor}{#1}{\mkbibquote{#1\isdot}}% \undef\currentfield} \DeclareFieldFormat[letter]{date}{% \iffieldundef{url}{#1}{\mkbibparens{#1}}} \xpatchbibdriver{booklet}{% \newunit\newblock \iftoggle{bbx:related} }{% \setunit{\relatedtypepunct}\newblock \iftoggle{bbx:related} }{}{} \xpatchbibdriver{misc}{% \newunit\newblock \iftoggle{bbx:related} }{% \setunit{\relatedtypepunct}\newblock \iftoggle{bbx:related} }{}{} \DeclareBibliographyOption{relationpunct}[semicolon]{% \ifcsdef{add#1}{% \ifstrequal{#1}{space}{% \renewcommand*{\relatedtypepunct}{\addspace}% }{% \renewcommand*{\relatedtypepunct}{\csuse{add#1}\space}}% }{% \PackageError{biblatex-oxref}{% Invalid option 'relationpunct=#1'% }{% Valid values are 'dot', 'comma', 'semicolon', 'colon',\MessageBreak 'period', 'exclam', 'question', and 'space'.}}} \DeclareTypeOption{relationpunct}[semicolon]{% \ifcsdef{add#1}{% \ifstrequal{#1}{space}{% \renewcommand*{\relatedtypepunct}{\addspace}% }{% \renewcommand*{\relatedtypepunct}{\csuse{add#1}\space}}% }{% \PackageError{biblatex-oxref}{% Invalid option 'relationpunct=#1'% }{% Valid values are 'dot', 'comma', 'semicolon', 'colon',\MessageBreak 'period', 'exclam', 'question', and 'space'.}}} \newtoggle{blx@ox@relpunctset} \DeclareEntryOption{relationpunct}[semicolon]{% \ifcsdef{add#1}{% \ifstrequal{#1}{space}{% \renewcommand*{\relatedtypepunct}{\addspace}% }{% \renewcommand*{\relatedtypepunct}{\csuse{add#1}\space}}% \toggletrue{blx@ox@relpunctset} }{% \PackageError{biblatex-oxref}{% Invalid option 'relationpunct=#1'% }{% Valid values are 'dot', 'comma', 'semicolon', 'colon',\MessageBreak 'period', 'exclam', 'question', and 'space'.}}} \newcounter{blx@ox@relitem} \xapptobibmacro{begrelated}{% \setcounter{blx@ox@relitem}{0}% \iftoggle{blx@ox@relpunctset}{}{% \iffieldequalstr{relatedtype}{in}{% \setunit{\addcomma\space}}{}% \iffieldequalstr{relatedtype}{reprintfrom}{% \setunit{\addperiod\space}}{}% \iffieldequalstr{relatedtype}{translationof}{% \setunit{\addspace}}{}% \iffieldequalstr{relatedtype}{multivolume}{% \setunit{\addcomma\space}}{}% }}{}{} \newbibmacro*{rellanguage}{% \def\do##1{% \entrydata{##1}{% \printlist{language}}}% \docsvfield{related}% } \DeclareFieldFormat{relatedstring:translationof}{% \usebibmacro{rellanguage}\space \bibstring{original}\addcomma\space} \DeclareFieldFormat{related:translationof}{% \mkbibbrackets{#1}} \newbibmacro*{related:copub}[1]{% \entrydata*{#1}{% \usebibmacro{publisher+location+date}% \setunit{\relateddelim}}} \renewbibmacro*{related:reprintfrom}[1]{% \entrydata*{#1}{% \nopunct \usedriver{% \ifnameundef{savedauthor}{% \ifnameundef{savededitor}{}{% \ifnamesequal{editor}{savededitor}{% \clearname{editor}% }{}}% }{% \ifnamesequal{author}{savedauthor}{% \clearname{author}% }{}}% \iffieldundef{savedtitle}{}{% \iffieldsequal{savedtitle}{title}{% \clearfield{title}% }{}}% \renewbibmacro*{related:init}{}% \DeclareNameAlias{sortname}{default}% \ifbibmacroundef{date+extradate}{}{% \renewbibmacro*{date+extradate}{}% \renewbibmacro*{date}{\printdate}}% \renewbibmacro*{pageref}{}% }{% \thefield{entrytype}}}} \newbibmacro*{related:serialarticle}[1]{% \entrydata*{#1}{% \iffieldundef{savedjournaltitle}{}{% \iffieldsequal{journaltitle}{savedjournaltitle}{% \clearfield{journaltitle}% }{}}% \iffieldundef{savedjournalsubtitle}{}{% \iffieldsequal{journalsubtitle}{savedjournalsubtitle}{% \clearfield{journalsubtitle}% }{}}% \iffieldundef{savedseries}{}{% \iffieldsequal{series}{savedseries}{% \clearfield{series}% }{}}% \iffieldundef{savedyear}{\clearfield{year}}{ \iffieldsequal{year}{savedyear}{% \clearfield{year}% }{}}% \usebibmacro{journal+issuetitle}% \newunit \usebibmacro{note+pages}% \newunit\newblock \usebibmacro{doi+eprint+url}% \newunit\newblock \usebibmacro{addendum+pubstate}}} \DeclareFieldFormat[review]{title}{\mkbibquote{#1\isdot}} \DeclareFieldFormat[review]{volume}{#1}% volume of a journal \DeclareFieldFormat[review]{number}{#1}% number of a journal \DeclareFieldFormat[review]{series}{% series of a journal \ifinteger{#1} {\mkbibordseries{#1}~\bibstring{jourser}} {\ifbibstring{#1}{\bibstring{#1}}{#1}}} \newbibmacro*{related:reviewof}[1]{% \entrydata*{#1}{% \usedriver{% \renewbibmacro*{related:init}{}% \DeclareNameAlias{author}{given-family}% \renewbibmacro*{pageref}{}% }{\thefield{entrytype}}% }% } \DeclareBibliographyDriver{review}{% \usebibmacro{bibindex}% \usebibmacro{begentry}% \usebibmacro{author/translator+others}% \setunit{\printdelim{nametitledelim}}\newblock \usebibmacro{title}% \setunit{\titlebyauthordelim}\newblock \usebibmacro{byauthor}% \newunit\newblock \usebibmacro{bytranslator+others}% \newunit\newblock \printfield{version}% \newunit\newblock \iftoggle{bbx:related}{% \usebibmacro{related:init}% \usebibmacro{related}% }{}% \newunit\newblock \usebibmacro{in:}% \setunit{\addspace}% \usebibmacro{journal+issuetitle}% \newunit \usebibmacro{byeditor+others}% \iffieldundef{note}% {\newunit}% {\setunit{\addsemicolon\addspace}}% \usebibmacro{note+pages}% \newunit\newblock \iftoggle{bbx:isbn} {\printfield{issn}} {}% \newunit\newblock \usebibmacro{doi+eprint+url}% \newunit\newblock \usebibmacro{addendum+pubstate}% \setunit{\bibpagerefpunct}\newblock \usebibmacro{pageref}% \usebibmacro{finentry}} \DeclareFieldFormat{related:multivolume}{#1} \renewbibmacro*{related:multivolume}[1]{% \entrydata*{#1}{% \printtext{% \printfield{volume}% \printfield{part}}% \setunit*{\addspace}% \usebibmacro{series+number+edition+publisher+location+date}}} \newbibmacro*{related:editedas}[1]{% \entrydata{#1}{% \renewbibmacro*{name:hook}[1]{% \ifnumequal{\value{listcount}}{1}{% \begingroup \mkrelatedstring% \lbx@initnamehook{#1}% \endgroup }{}}% \printfield{edition}% \setunit{\addspace}% \usebibmacro{byeditor+others}% \setunit*{\addcomma\space\bibstring[\mkrelatedstring]{astitle}\space}% \usebibmacro{maintitle+title}% \setunit{\addspace}% \printfield{note}% \newunit\newblock \printfield{volumes}% \newunit \usebibmacro{series+number+publisher+location+date}}} \renewbibmacro*{related:bytranslator}[1]{% \entrydata{#1}{% \renewbibmacro*{name:hook}[1]{% \ifnumequal{\value{listcount}}{1} {\begingroup \mkrelatedstring% \lbx@initnamehook{#1}% \endgroup} {}}% \printnames[bytranslator]{translator}% \setunit*{\addspace\bibstring[\mkrelatedstring]{astitle}\space}% \usebibmacro{maintitle+title}% \setunit{\addspace}% \printfield{note}% \newunit\newblock \printfield{volumes}% \newunit \usebibmacro{series+number+publisher+location+date}}} \newbibmacro*{related:includes}[1]{% \stepcounter{blx@ox@relitem}% \ifnumequal{\value{blx@ox@relitem}}{\value{bbx:relatedtotal}}% {\bibstring{and}\addspace}{}% \entrydata{#1}{% \ifbibmacroundef{date+extradate}{}{% \renewbibmacro*{date+extradate}{}}% \usebibmacro{author}% \setunit{\printdelim{nametitledelim}}\newblock \usebibmacro{title}}} \DeclareFieldFormat[misc]{title}{% \def\currentfield{title}% \iffieldannotation{descriptor}{#1}{% \iffieldequalstr{relatedtype}{in}{% \mkbibquote{#1\isdot}% }{% \mkbibemph{#1}% }}% \undef\currentfield} \newbibmacro*{related:in}[1]{% \entrydata*{#1}{% \usedriver {\ifnameundef{savedauthor} {\ifnameundef{savededitor} {} {\ifnamesequal{editor}{savededitor} {\clearname{editor}} {}}} {\ifnamesequal{author}{savedauthor} {\clearname{author}} {}}% \renewbibmacro*{related:init}{}% \DeclareNameAlias{sortname}{default}% \ifbibmacroundef{date+extradate} {} {\renewbibmacro*{date+extradate}{}% \renewbibmacro*{date}{\printdate}}% \renewbibmacro*{pageref}{}} {\thefield{entrytype}}% \ifboolexpr{ test {\iffieldundef{pages}} or test {\iffieldundef{savedpages}} }{% \newunit\newblock }{% \setunit{\addspace}% \bibstring{thiscite}% \printunit{\addspace}% }% }% \usebibmacro{chapter+pages}% } \DeclareStyleSourcemap{% \maps[datatype=bibtex]{% \map{ \pertype{proceedings} \pertype{mvproceedings} \step[notfield=author, fieldsource=organization, fieldtarget=author] } \map[overwrite=false]{ \step[fieldsource=descriptor, final] \step[notfield=title, fieldset=title+an, fieldvalue={=descriptor}] \step[notfield=title, fieldsource=descriptor, fieldtarget=title] \step[fieldsource=descriptor, fieldtarget=note] } \map[overwrite=false]{ \step[fieldsource=realauthor, final] \step[notfield=author, fieldset=author+an, fieldvalue={=inferred}] \step[notfield=author, fieldsource=realauthor, fieldtarget=author] \step[fieldsource=realauthor, fieldtarget=authoraddon] } \map[overwrite=false]{ \step[fieldsource=realeditor, final] \step[notfield=editor, fieldset=editor+an, fieldvalue={=inferred}] \step[notfield=editor, fieldsource=realeditor, fieldtarget=editor] \step[fieldsource=realeditor, fieldtarget=editoraddon] } \map[overwrite=false]{ \step[fieldsource=editor+an, match=\regexp{=jointauthor}, final] \step[fieldsource=editor, fieldtarget=jointauthor] \step[fieldsource=editortype, fieldtarget=jointauthortype] } \map[overwrite=false]{ \step[fieldsource=translator+an, match=\regexp{=jointauthor}, final] \step[fieldsource=translator, fieldtarget=jointauthor] \step[fieldset=jointauthortype, fieldvalue={=translator}] } \map[overwrite=false]{ \pertype{standard} \step[notfield=author, fieldsource=number, final] \step[fieldset=sortkey, origfieldval] } \map[overwrite=false]{ \pertype{audio} \pertype{music} \pertype{movie} \pertype{video} \pertype{inaudio} \pertype{inmusic} \pertype{inmovie} \pertype{invideo} \step[fieldset=origdatetype,fieldvalue={recorded}] } \map[overwrite=false]{ \pertype{jurisdiction} \step[fieldsource=reporter, fieldtarget=journaltitle] \step[fieldsource=parvolume, fieldtarget=userb] \step[fieldsource=parreporter, fieldtarget=userc] \step[fieldsource=parseries, fieldtarget=userd] \step[fieldsource=parpages, fieldtarget=usere] \step[fieldsource=court, fieldtarget=institution] \step[fieldsource=additionalreports, fieldtarget=listb] \step[fieldsource=ecli, fieldtarget=verba] }% \map[overwrite=false]{ \pertype{legal} \step[fieldsource=reporter, fieldtarget=journaltitle] } \map[overwrite=true]{ \pertype{legal} \step[fieldsource=parties, fieldtarget=institution] \step[fieldsource=execution, fieldtarget=lista] } \map[overwrite=true]{ \pertype{jurisdiction} \pertype{legislation} \pertype{legal} \step[fieldsource=title, match=\regexp{(\d)\.(\d)}, replace=\regexp{$1.$2}] \step[fieldsource=title, match=\regexp{(\D)\.(\d)}, replace=\regexp{$1 $2}] \step[fieldsource=title, match=\regexp{\.(\D)}, replace=\regexp{$1}] \step [fieldsource=title, match=\regexp{(\D)\.}, replace=\regexp{$1}] \step[fieldsource=shorttitle, match=\regexp{(\d)\.(\d)}, replace=\regexp{$1.$2}] \step[fieldsource=shorttitle, match=\regexp{(\D)\.(\d)}, replace=\regexp{$1 $2}] \step[fieldsource=shorttitle, match=\regexp{\.(\D)}, replace=\regexp{$1}] \step [fieldsource=shorttitle, match=\regexp{(\D)\.}, replace=\regexp{$1}] \step[fieldsource=userc, match=\regexp{(\d)\.(\d)}, replace=\regexp{$1.$2}] \step[fieldsource=userc, match=\regexp{(\D)\.(\d)}, replace=\regexp{$1 $2}] \step[fieldsource=userc, match=\regexp{\.(\D)}, replace=\regexp{$1}] \step [fieldsource=userc, match=\regexp{(\D)\.}, replace=\regexp{$1}] \step[fieldsource=journaltitle, match=\regexp{(\d)\.(\d)}, replace=\regexp{$1.$2}] \step[fieldsource=journaltitle, match=\regexp{(\D)\.(\d)}, replace=\regexp{$1 $2}] \step[fieldsource=journaltitle, match=\regexp{\.(\D)}, replace=\regexp{$1}] \step [fieldsource=journaltitle, match=\regexp{(\D)\.}, replace=\regexp{$1}] \step[fieldsource=institution, match=\regexp{(\d)\.(\d)}, replace=\regexp{$1.$2}] \step[fieldsource=institution, match=\regexp{(\D)\.(\d)}, replace=\regexp{$1 $2}] \step[fieldsource=institution, match=\regexp{\.(\D)}, replace=\regexp{$1}] \step[fieldsource=institution, match=\regexp{(\D)\.}, replace=\regexp{$1}] \step[fieldsource=publisher, match=\regexp{(\d)\.(\d)}, replace=\regexp{$1.$2}] \step[fieldsource=publisher, match=\regexp{(\D)\.(\d)}, replace=\regexp{$1 $2}] \step[fieldsource=publisher, match=\regexp{\.(\D)}, replace=\regexp{$1}] \step [fieldsource=publisher, match=\regexp{(\D)\.}, replace=\regexp{$1}] \step[fieldsource=location, match=\regexp{(\d)\.(\d)}, replace=\regexp{$1.$2}] \step[fieldsource=location, match=\regexp{(\D)\.(\d)}, replace=\regexp{$1 $2}] \step[fieldsource=location, match=\regexp{\.(\D)}, replace=\regexp{$1}] \step [fieldsource=location, match=\regexp{(\D)\.}, replace=\regexp{$1}] \step[fieldsource=series, match=\regexp{(\d)\.(\d)}, replace=\regexp{$1.$2}] \step[fieldsource=series, match=\regexp{(\D)\.(\d)}, replace=\regexp{$1 $2}] \step[fieldsource=series, match=\regexp{\.(\D)}, replace=\regexp{$1}] \step [fieldsource=series, match=\regexp{(\D)\.}, replace=\regexp{$1}] \step[fieldsource=indextitle, match=\regexp{(\d)\.(\d)}, replace=\regexp{$1.$2}] \step[fieldsource=indextitle, match=\regexp{(\D)\.(\d)}, replace=\regexp{$1 $2}] \step[fieldsource=indextitle, match=\regexp{\.(\D)}, replace=\regexp{$1}] \step [fieldsource=indextitle, match=\regexp{(\D)\.}, replace=\regexp{$1}] } }% } \DeclareSortingTemplate{nty}{ \sort{ \field{presort} } \sort[final]{ \field{sortkey} } \sort{ \field{sortname} \field{author} \field{editor} \field{translator} \field{sorttitle} \field{title} \field{library} } \sort{ \field{sorttitle} \field{title} } \sort{ \field{sortyear} \field{year} } \sort{ \field{volume} \literal{0} } \sort{ \field{location} } \sort{ \field{collection} \field{series} } } \DeclareSortingTemplate{nyt}{ \sort{ \field{presort} } \sort[final]{ \field{sortkey} } \sort{ \field{sortname} \field{author} \field{editor} \field{translator} \field{sorttitle} \field{title} \field{library} } \sort{ \field{sortyear} \field{year} } \sort{ \field{sorttitle} \field{title} } \sort{ \field{volume} \literal{0} } \sort{ \field{location} } \sort{ \field{collection} \field{series} } } \DeclareSortingTemplate{anyt}{ \sort{ \field{presort} } \sort{ \field{labelalpha} } \sort[final]{ \field{sortkey} } \sort{ \field{sortname} \field{author} \field{editor} \field{translator} \field{sorttitle} \field{title} \field{library} } \sort{ \field{sortyear} \field{year} } \sort{ \field{sorttitle} \field{title} } \sort{ \field{volume} \literal{0} } \sort{ \field{location} } \sort{ \field{collection} \field{series} } } \ExecuteBibliographyOptions [proceedings,report,artwork,audio,image,music,movie,performance,video,% manuscript,unpublished,review]{useeditor=false} %% %% Copyright (C) 2016–2018 Alex Ball %% %% End of file `oxref.bbx'.