CrossRef/rest-api-doc

CSL-JSON content negotiation still returns invalid data

jblachly opened this issue · 1 comments

Issue from 2017: #222

When negotiating content type as CSL-JSON (application/vnd.citationstyles.csl+json), CrossRef instead returns "extended citeproc", as it is called in the Cayenne codebase. This mostly consists of many extra fields, but also a fields with wrong types (principally arrays when CSL-JSON spec says string).

Fundamentally, most citeproc parsers can ignore extra fields, but wrong field types will crash some processors including Pandoc and citeproc-rs.

References:

Additional differences include the entry types. I encountered a new one: dissertation. That should be "type": "thesis", optionally with "genre": "Doctoral dissertation".