Skip to content

Fix CITATION.cff: author as entity, not person (fixes Zenodo archival failure) - #10

Merged
erxxc merged 1 commit into
mainfrom
docs/fix-citation-entity-type
Aug 12, 2026
Merged

erxxc merged 1 commit into
mainfrom
docs/fix-citation-entity-type

Conversation

@erxxc

@erxxc erxxc commented Aug 12, 2026

Copy link
Copy Markdown
Owner

Summary

The first Zenodo archival attempt on v0.1.0 failed:

{'metadata': {'creators': {0: {'person_or_org': {'family_name': ['Family name cannot be blank.']}}}}}

alias (used in #9) is a field on CFF's personal author type, which Zenodo's schema still requires a family_name for even when only an alias is given — CFF 1.2.0 schema validation doesn't catch this, but Zenodo's own metadata converter does.

CFF has a distinct entity author type (name field, no personal-name fields at all) built for exactly this case — handle/org/collective attribution with no real name. Switching alias: erxxc → name: erxxc fixes it. Re-validated with cffconvert; renders identically.

🤖 Generated with Claude Code

The v0.1.0 Zenodo archival attempt failed with:

  {'metadata': {'creators': {0: {'person_or_org': {'family_name':
  ['Family name cannot be blank.']}}}}}

CFF's `alias` field (used previously) is a sub-field of a *personal*
author — Zenodo's ingestion still requires a family_name for that type,
even with an alias present, and CITATION.cff schema 1.2.0 doesn't reject
an alias-only person at the schema level even though Zenodo's own
converter does downstream.

CFF has a separate *entity* author type for exactly this case (handle,
org, or collective attribution with no personal name) — its only required
field is `name`. Switching `alias: erxxc` to `name: erxxc` models the
author correctly as an entity instead of an incomplete person, which
Zenodo's schema accepts without a family name. Re-validated against CFF
1.2.0 via cffconvert; BibTeX/APA-like rendering unchanged.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
@erxxc
erxxc merged commit 46a8f3a into main Aug 12, 2026
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant