6

I need to cite some articles which were created by some professional organizations, so no authors or editors are listed:

@Article{noname2012,
    author = {},
    title = {This is the title},
    publisher = {This is the publisher},
    year = {2012},
    address = {Miami}
}

I am using the APA style in ConTeXT, setup as follows:

\setupbibtex[database={Bibliography}, sort=author]
\setuppublications[alternative=apa]

Whenever I place a citation, \cite{noname2012} it displays like this:

(noname2012, 2012)

How can I the bibliography display the title instead of the name, when the name and editor fields are empty?

  • 2
    You mention that the publications were produced by organizations. Could you list the organizations as "corporate" authors? E.g., author = "{Securities and Exchange Commission}". – Mico Mar 16 '13 at 23:43
1

Here's a minimum working example. It's a slight compromise because it requires you to add the title to your .tex file.

\setupbibtex[database={Bibliography}, sort=author]
\setuppublications[alternative=apa]

\def\citeTitle{\dosingleempty\dociteTitle}
\def\dociteTitle[#1]#2{%
 \iffirstargument\cite[inbetween=,left={(#1,\ },right=)][#2]\else
 \cite[inbetween=,left=(,right=)][#2]\fi}

\starttext

The Bib\TeX\ file needs to have the nameless author as a nested pair of
empty braces.
\starttyping
@Article{noname2012,
    author = {{}},
    title = {This is the title},
    publisher = {This is the publisher},
    year = {2012},
    address = {Miami}
}
\stoptyping

Now, whenever I place a citation, \type{\cite{noname2012}} it displays like
this: \cite{noname2012} which is still unsatisfactory.  If I add an
optional argument and put the label in square brackets,

\type{\cite[inbetween=][noname2012]}

it displays like this: \cite[inbetween=][noname2012]. Still not quite
right, but I can add the title manually,

\type{\cite[inbetween=,left={(This is the title,\ }][noname2012]}

so that it displays like this:
\cite[inbetween=,left={(This is the title,\ }][noname2012].

With the user||defined command \type{\citeTitle}, it looks like this
\citeTitle{noname2012} or like this
\citeTitle[This is the title]{noname2012}

\stoptext
1

You can always try to use the natbib package along with the \bibliographystyle defined as apalike or newapa. Thus, your code will look like:

\usepackage{natbib}

\bibliographystyle{apalike} % or newapa, depending on what you are using
\bibliography{bibliography} % your bibliography.bib file

And then you can use either \citep{authorlabel} (for getting the whole reference in parenthesis) or \citet{authorlabel} (to get the year in parenthesis and the author outside of them). I strongly recommend your to see Section 2.7 of the natbib documentation for more information on this.

  • 1
    Does that work in ConTeXt? – Village Apr 10 '13 at 11:03
0

For the citations, it's possible to define a new option for cases where you know there is no author:

% Define a new type of APA citation for title
\definebtx[apa:cite:noauthor][apa:cite:authoryear]
\startsetups btx:apa:cite:noauthor
    \btxcitereference
    \quotation{\btxflush{title}}
    \btxcomma
    \btxflush{year}
\stopsetups

So instead of \cite[noname2012], you would use \cite[noauthor][noname2012]. This solution is based on the example on page 52 of the publications manual.

As for the bibliography, you'd probably have to overwrite the basic article definition. For the following, I copy and pasted the standard definition from the source and added a switch to test if there is no author:

% Define a switch in bibliography entry
\startsetups btx:apa:list:article
    \doiftextelse{\btxdirect{author}} {
        \texdefinition{btx:apa:authoryear}
        \texdefinition{btx:apa:title-if-not-placed}
    } {
        %If no author, use title as first entry
        \btxflush{title}
        \btxperiod
        \btxleftparenthesis
        \btxflush{year}
        \btxrightparenthesis
        \btxperiod
    }
    \btxdoif {type} {
        \btxleftbracket
        \btxflush{type}
        \btxrightbracketperiod
    }
    \texdefinition{btx:apa:journal-volume-number-pages}
    \texdefinition{btx:apa:url-doi-note}
\stopsetups

If needed, a similar switch could be used in the citation to automatically handle the author/noauthor cases.

Combined together with demonstration:

\startbuffer[ref]
@article{solo,
  author = {Lastname, Firstname},
  title = {Title with author},
  journal = {Journal},
  year = {2000},
  month = {1},
  volume = {1}
}

@article{none,
  author = {},
  title = {Title with no author},
  journal = {Journal},
  month = {1},
  year = {2000},
  volume = {1}
}
\stopbuffer

% Boilerplate to set up references
\loadbtxdefinitionfile[apa]
\usebtxdataset[ref][ref.buffer]
\setupbtx[dataset=ref]

\definebtxrendering[ref]
    [dataset=ref, 
     specification=apa]
\setupbtx[apa:cite]
    [alternative=authoryear,
     etallimit=1] 

% Define a new type of APA citation for title
\definebtx[apa:cite:noauthor][apa:cite:authoryear]
\startsetups btx:apa:cite:noauthor
    \btxcitereference
    \quotation{\btxflush{title}}
    \btxcomma
    \btxflush{year}
\stopsetups

% Define a switch in bibliography entry
\startsetups btx:apa:list:article
    \doiftextelse{\btxdirect{author}} {
        \texdefinition{btx:apa:authoryear}
        \texdefinition{btx:apa:title-if-not-placed}
    } {
        %If no author, use title as first entry
        \btxflush{title}
        \btxperiod
        \btxleftparenthesis
        \btxflush{year}
        \btxrightparenthesis
        \btxperiod
    }
    \btxdoif {type} {
        \btxleftbracket
        \btxflush{type}
        \btxrightbracketperiod
    }
    \texdefinition{btx:apa:journal-volume-number-pages}
    \texdefinition{btx:apa:url-doi-note}
\stopsetups

% Testing
\starttext

Normal citations: \cite[solo] vs. \cite[none] \\
Noauthor citations: \cite[noauthor][solo] vs. \cite[noauthor][none]

\startsubject[title=Bibliography]
\placelistofpublications[ref][method=dataset]
\stopsection

\stoptext

With the result:

enter image description here

However, as Mico suggested in the comments, it's easier to simply make the organization an author:

\startbuffer[ref]
@article{solo,
  author = {Lastname, Firstname},
  title = {Title with author},
  journal = {Journal},
  year = {2000},
  month = {1},
  volume = {1}
}

@article{none,
  author = {{Professional organization XYZ}},
  title = {Title with no author},
  journal = {Journal},
  month = {1},
  year = {2000},
  volume = {1}
}
\stopbuffer

% Boilerplate to set up references
\loadbtxdefinitionfile[apa]
\usebtxdataset[ref][ref.buffer]
\setupbtx[dataset=ref]

\definebtxrendering[ref]
    [dataset=ref, 
     specification=apa]
\setupbtx[apa:cite]
    [alternative=authoryear,
     etallimit=1] 

% Testing
\starttext

Normal citations: \cite[solo] vs. \cite[none] \\

\startsubject[title=Bibliography]
\placelistofpublications[ref][method=dataset]
\stopsection

\stoptext

With the result:

enter image description here

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.