bibtex con inbook y book crossref: ¿por qué falta crossref$ = Verdadero, aunque se reconoce crossref?

bibtex con inbook y book crossref: ¿por qué falta crossref$ = Verdadero, aunque se reconoce crossref?

Estoy usando bibtex para organizar mi bibliografía. Quiero citar un capítulo de un libro. La mejor manera de leer cuando uno tiene autor y editores es usar referencia cruzada y una entrada de libro y de libro, por ejemplo: (bib_test.bib)

@inbook{inbook,
  author = {A. Inbook-Author},
  title = {The title of the inbook entry},
  pages = {1--5},
  chapter = {1},
  crossref = "book",
}

@book{book,
  title = {A title of the book entry},
  booktitle = {A title of the book entry},
  year = 2013,
  editor = {E. Book-Editor},
  publisher = {Book Publishing Inc.},
}

Sin embargo, si ejecuto bibtex, en un archivo de látex

\documentclass{scrartcl}

\begin{document}
\cite{inbook}
\bibliographystyle{style}
\bibliography{bib_test}
\end{document}

siempre me da la advertencia:

Warning--can't use both author and editor fields in inbook

No entiendo esto, ya que esa fue la razón por la que lo dividí en inbook y book, pero sigo recibiendo este error. En el archivo bibstyle encontré

FUNCTION {inbook}
{ output.bibitem
  author empty$
    { format.editors "author and editor" output.check
    } 
    { format.authors output.nonnull
      crossref missing$
        { "author and editor" editor either.or.check }
        'skip$
      if$
    }
  if$
  title empty$ 'skip$ 'setup.inlinelink if$ % urlbst
  format.btitle "title" output.check
  format.edition output 
  crossref missing$
    {
      format.publisher.address output
      format.bvolume output
      format.chapter.pages "chapter and pages" output.check
      format.number.series output
    }
    {
      format.chapter.pages "chapter and pages" output.check
      format.book.crossref output.nonnull
    }
  if$

  format.date "year" output.check
  date.block
  format.pages "pages" output.check
  format.doi output
  format.note output
  fin.entry
} 

Probé algunas cosas y parece que crossref Missing$ siempre da Verdadero como respuesta. NO debe probar que los campos de autor y editor estén presentes si se proporciona una referencia cruzada. Esto es extraño, ya que definitivamente reconoce la referencia cruzada, de lo contrario mostraría un error...

Respuesta1

La solución es cambiar el tipo de entrada de la primera entrada de @inbooka @inproceedings.

ingrese la descripción de la imagen aquí

\RequirePackage{filecontents}
\begin{filecontents}{mybib.bib}
@inproceedings{inbook,
  author = {A. Inbook-Author},
  title = {The title of the inbook entry},
  pages = {1--5},
  chapter = {1},
  crossref = "book",
}
@book{book,
  title = {A title of the book entry},
  booktitle = {A title of the book entry},
  year = 2013,
  editor = {E. Book-Editor},
  publisher = {Book Publishing Inc.},
  address   = "Anytown",
}
\end{filecontents}

\documentclass{article}
\bibliographystyle{style} % downloaded from site indicated by OP

\begin{document}
\cite{inbook}
\bibliography{mybib}
\end{document}

información relacionada