Access date and publish date

Erstellung eines Literaturverzeichnisses mit BibTeX, Biber, BibLaTeX und Co.


Gast

Access date and publish date

Beitrag von Gast »

Hallo,

gibt es die Möglichkeit das Zugriffdatum und das Erscheinungsdatum eines Online-Artikels gleichzeitig anzugeben?

Beispiel:
SCHAFFRY, Andreas, 2013. Wohin gehören Big-Data-Produkte? In: CIO [online]. 10.10.2013 [Zugriff am: 11.10.2013]. Verfügbar unter: http://www.cio.de/knowledgecenter/bi/2932511/index.html#

Ergebnis:
SCHAFFRY, Andreas, 2013. Wohin gehören Big-Data-Produkte? CIO [online] [Zugriff am: 2013-10-11]. Verfügbar unter: http://www.cio.de/knowledgecenter/bi/2932511/index.html#

Muss man hier mit "mergedate=false" arbeiten?

--------

tex:
\documentclass[ngerman]{article} 
\usepackage[T1]{fontenc} 
\usepackage[utf8]{inputenc} 
\usepackage{babel} 
\usepackage{csquotes} 

\usepackage[backend=biber, style=iso-authoryear, maxbibnames=3, shortnumeration]{biblatex} 

%sort names 
\DeclareNameAlias{default}{given-family} 
\DeclareNameAlias{sortname}{family-given/given-family} 
\DeclareNameAlias{author}{sortname} 
\DeclareNameAlias{editor}{sortname} 
\DeclareNameAlias{translator}{sortname} 

\DeclareDelimFormat{multinamedelim}{\addcomma\space} 
\DeclareDelimFormat{finalnamedelim}{% 
  \ifnumgreater{\value{liststop}}{2}{\finalandcomma}{}% 
  \addspace\bibstring{and}\space} 

\DeclareNameAlias[incollection]{editor}{default} 
\makeatletter 
\renewbibmacro*{bbx:editor}[1]{% 
  \ifboolexpr{ 
    test \ifuseeditor 
    and 
    not test {\ifnameundef{editor}} 
  } 
    {\usebibmacro{bbx:savehash}% 
     \printnames{editor}% 
     \setunit{\addcomma\space}% 
     \usebibmacro{#1}% 
     \clearname{editor}} 
    {\global\undef\bbx@lasthash 
     \usebibmacro{labeltitle}}}% 
\makeatother 

\DefineBibliographyStrings{german}{% 
  andothers = {und andere}, 
  urlseen   = {Zugriff am:}, 
  urlfrom   = {Verfügbar unter:}, 
  url = {Verfügbar unter:}, 
} 

%
\DeclareFieldFormat*{pages}{\mkmlpageprefix[bookpagination]{#1}} 

%
\renewcommand{\finentrypunct}{} 

%
\UrlFont{same}
\urlstyle{same}

%url next line
\DeclareFieldFormat{url}{\bibstring{url}\newline\mkbiblege{\url{#1}}}
%\DeclareFieldFormat{url}{\newline{#1}}

%add bib file
\addbibresource{sample.bib}

\begin{document}

test9 \cite{bigdata} 

\printbibliography
\end{document}
bib:
@article{bigdata, 
  author   = {Schaffry, Andreas}, 
  date     = {2013-10-10}, 
  title    = {Wohin gehören Big-Data-Produkte?}, 
  journal  = {CIO}, 
  %number   = {6}, 
  %pages    = {2400-2412}, 
  %note    = {An optional note}, 
  %volume   = {13}, 
  %ISSN     = {1530-4374}, 
  %doi      = {10.1109/JSEN.2013.2254234},
  url={http://www.cio.de/knowledgecenter/bi/2932511/index.html#},
  urldate  = {2013-10-11},
 } 
Vielen Dank

Gast

Beitrag von Gast »

Leider unterstützt iso-authoryear die mergedate-Option nicht, das müssen wir also selbst basteln. Außerdem sind einige relevante Makros in der veralteten biblatex-Version von Overleaf noch nicht erhältlich, die Kopie dieser Makros ist im Code markiert und sollte bei neueren Systemen unbedingt weggelassen werden.
\documentclass[ngerman]{article}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{babel}
\usepackage{csquotes}

\usepackage[backend=biber, style=iso-authoryear, date=edtf, labeldate=year, maxbibnames=3, shortnumeration]{biblatex}

\DeclareNameAlias{default}{given-family}
\DeclareNameAlias{sortname}{family-given/given-family}
\DeclareNameAlias{author}{sortname}
\DeclareNameAlias{editor}{sortname}
\DeclareNameAlias{translator}{sortname}

\DeclareDelimFormat{multinamedelim}{\addcomma\space}
\DeclareDelimFormat{finalnamedelim}{%
  \ifnumgreater{\value{liststop}}{2}{\finalandcomma}{}%
  \addspace\bibstring{and}\space}

\DeclareNameAlias[incollection]{editor}{default}
\makeatletter
\renewbibmacro*{bbx:editor}[1]{%
  \ifboolexpr{
    test \ifuseeditor
    and
    not test {\ifnameundef{editor}}
  }
    {\usebibmacro{bbx:savehash}%
     \printnames{editor}%
     \setunit{\addcomma\space}%
     \usebibmacro{#1}%
     \clearname{editor}}
    {\global\undef\bbx@lasthash
     \usebibmacro{labeltitle}}}%
\makeatother

%%% EMULATION RELEVANTER BEFEHLE
%%% NUR FÜR VERALTETE SYSTEME WIE BEI Overleaf
%%% BEI NEUEREN SYSTEMEN IST DIESER BLOCK ZU ENTFERNEN
\makeatletter
\def\blx@imc@iflabeldateisdate{%
  \ifboolexpr{%
    togl {blx@labeldateparts}
    and not test {\iffieldundef{labeldatesource}}
    and
    (test {\iffieldequalstr{labeldatesource}{}}
     or test {\iffieldequalstr{labeldatesource}{year}})}}

\def\blx@imc@ifdatehasyearonlyprecision#1{%
  \ifboolexpr{not test {\iffieldundef{#1year}}
              and (test {\ifcsstring{blx@dateformat@#1date}{year}}
                   or (test {\iffieldundef{#1month}}
                       and test {\iffieldundef{#1season}}))}}

\def\blx@imc@ifdatehastime#1{%
  \ifboolexpr{togl {blx@#1dateusetime}
                 and not test {\iffieldundef{#1hour}}}}

\def\blx@imc@ifdateshavedifferentprecision#1#2{%
  \ifboolexpr{   (test {\ifdatehasyearonlyprecision{#1}}
                  and not test {\ifdatehasyearonlyprecision{#2}})
              or (not test {\ifdatehasyearonlyprecision{#1}}
                  and test {\ifdatehasyearonlyprecision{#2}})
              or (test {\ifdatehastime{#1}}
                  and not test {\ifdatehastime{#2}})
              or (not test {\ifdatehastime{#1}}
                  and test {\ifdatehastime{#2}})}}

\def\blx@imc@ifdateyearsequal#1#2{%
  \ifboolexpr{ test {\iffieldsequal{#1year}{#2year}}
               and test {\iffieldsequal{#1dateera}{#2dateera}}}}

\blx@regimcs{%
  \iflabeldateisdate \ifdatehasyearonlyprecision \ifdatehastime
  \ifdateshavedifferentprecision
  \ifdateyearsequal}
\makeatother
%%% EMULATION ENDE

\renewbibmacro*{date}{%
  \ifboolexpr{
    test {\iflabeldateisdate}
    and
    not test {\ifdateshavedifferentprecision{label}{}}
  }%
    {}
    {\printdate}}

\DefineBibliographyStrings{german}{%
  andothers = {und andere},
  urlseen   = {Zugriff am:},
  urlfrom   = {Verfügbar unter:},
}

\DeclareFieldFormat*{pages}{\mkmlpageprefix[bookpagination]{#1}}

\renewcommand{\finentrypunct}{}

\urlstyle{same}


\usepackage{filecontents}
\begin{filecontents}{\jobname.bib}
@article{bigdata,
  author   = {Schaffry, Andreas},
  date     = {2013-10-10},
  title    = {Wohin gehören Big-Data-Produkte?},
  journal  = {CIO},
  url      = {http://www.cio.de/knowledgecenter/bi/2932511/index.html},
  urldate  = {2013-10-11},
}
@electronic{steffen2014grundlagen,
  title     = {Grundlagen der höheren Informatik},
  author    = {Steffen, Bernhard and Rüthing, Oliver and Isberner, Malte},
  year      = {2014},
  publisher = {Springer},
  location  = {Berlin},
  urldate   = {2015-05-02},
  doi       = {10.1007/978-3-642-40146-6},
  isbn      = {978-3-8085-1726-0},
}
@article{optimizing,
  author   = {Zohaib, Seyed and Aloul, Fadi and Sagahyroon, Assim
              and El-Hajj, Wassim},
  year     = {2013},
  title    = {Optimizing complex cluster formation in MANETs
              using SAT/ILP techniques},
  journal  = {IEEE Sensors Journal},
  number   = {6},
  pages    = {2400-2412},
  %note    = {An optional note},
  volume   = {13},
  ISSN     = {1530-4374},
  doi      = {10.1109/JSEN.2013.2254234},
  urldate  = {2014-11-04},
}
\end{filecontents}

\addbibresource{\jobname.bib}

\begin{document}
\cite{bigdata,steffen2014grundlagen,optimizing}

\printbibliography
\end{document}

Gast

Beitrag von Gast »

Vielen Dank. Wie sehe es denn aus, wenn man keine veraltete biblatex-Version benutzen würde?

Danke und ein schönes Restwochenende!

Gast

Beitrag von Gast »

Naja, der %%% EMULATION-Blick fiele ersatzlos weg, da die dort definierten Befehle dann schon vorhanden sind.

Mit einer neueren biblatex-iso-Version (zumindest der auf GitHub, weiß gerade nicht wie es mit der offiziellen CTAN-Version ist), könnte man das \renewbibmacro*{bbx:editor} wohl schöner regeln.
\DeclareFieldFormat{editortype}{#1} 
\DeclareDelimFormat{editortypedelim}{\addcomma\space}

Gast

Beitrag von Gast »

Danke!
[/code]

Antworten