CrossRef / rest-api-doc

Documentation for Crossref's REST API. For questions or suggestions, see https://community.crossref.org/
Other
721 stars 270 forks source link

CSL-JSON content negotiation still returns invalid data #580

Open jblachly opened 1 year ago

jblachly commented 1 year ago

Issue from 2017: https://github.com/CrossRef/rest-api-doc/issues/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:

larsgw commented 5 months ago

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