Skip to content

Add type field to additional item types#11

Open
adunning wants to merge 2 commits into
zotero:masterfrom
adunning:type
Open

Add type field to additional item types#11
adunning wants to merge 2 commits into
zotero:masterfrom
adunning:type

Conversation

@adunning
Copy link
Copy Markdown
Contributor

@adunning adunning commented Jan 14, 2026

Ensure the CSL genre variable is available as a descriptive alternative to the title where needed, and that the field is consistently positioned after the item creators. Examples:

Ensure the CSL `genre` variable is available as a descriptive alternative to the title where needed, and that the field is consistently positioned after the item creators. Examples:

- Artwork: <https://www.zotero.org/groups/2205533/items/K6XB9LVX>, <https://www.zotero.org/groups/2205533/items/RR2RS99S>
- Audio recording: <https://www.zotero.org/groups/2205533/items/NN2HAC8N>
- Bill: <https://www.zotero.org/groups/2205533/items/Y6BIFHFV>
- Blog post: <https://www.zotero.org/groups/2205533/items/IJBGS4BQ>
- Book: <https://www.zotero.org/groups/2205533/items/Z5GA4MZ6>
- Book section: <https://www.zotero.org/groups/2205533/items/3DSWRCV5>, <https://www.zotero.org/groups/2205533/items/8KXQGYJ9>, <https://www.zotero.org/groups/2205533/items/GPHC7CD9>
- Document: <https://www.zotero.org/groups/2205533/items/ESNIH8AM>, <https://www.zotero.org/groups/2205533/items/YKHDNKZH>
- Email: <https://www.zotero.org/groups/2205533/items/YKM3U3E2>
- Instant message: <https://www.zotero.org/groups/2205533/items/KREBYCDI>, <https://www.zotero.org/groups/2205533/items/Y9QHDW9F>
- Interview: <https://www.zotero.org/groups/2205533/items/TMF724TM>, <https://www.zotero.org/groups/2205533/items/GQ46F8B6>, <https://www.zotero.org/groups/2205533/items/YUZC7EYX>
- Journal article: <https://www.zotero.org/groups/2205533/items/QDNCCZW2>, <https://www.zotero.org/groups/2205533/items/KV6EQJIX>, <https://www.zotero.org/groups/2205533/items/NY723H2C>, <https://www.zotero.org/groups/2205533/items/AUQ2KKYH>
- Magazine article: <https://www.zotero.org/groups/2205533/items/ZR4SY786>
- Newspaper article: <https://www.zotero.org/groups/2205533/items/MAWJL9U8>, <https://www.zotero.org/groups/2205533/items/B3MIM6N2>
- Podcast: <https://www.zotero.org/groups/2205533/items/MINIEB3W>
- Radio broadcast: <https://www.zotero.org/groups/2205533/items/CTN4WQCJ>
- TV broadcast: <https://www.zotero.org/groups/2205533/items/W8PBB829>
- Video recording: <https://www.zotero.org/groups/2205533/items/MLUMWEEC>
- Web page: <https://www.zotero.org/groups/2205533/items/CRHZHS6Z>, <https://www.zotero.org/groups/2205533/items/5SDSKT2D>, <https://www.zotero.org/groups/2205533/items/MWHM3SMK>
Copilot AI review requested due to automatic review settings January 14, 2026 06:47
Copy link
Copy Markdown

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR adds a type field to multiple Zotero item types to ensure the CSL genre variable is consistently available as a descriptive alternative to titles. The changes position the type field immediately after abstractNote for all item types, and reorder some existing type-related fields for consistency.

Changes:

  • Added plain type field to 18 item types that previously lacked any type designation
  • Reordered existing type-related fields (genre, postType, reportType, websiteType) to appear immediately after abstractNote in 5 item types
  • Moved type field before related fields (identifier, reportNumber, websiteTitle, forumTitle) for better field organization
Comments suppressed due to low confidence (1)

schema.json:296

  • The blogPost item type now has both a plain type field and a websiteType field with baseField: "type". This creates a conflict where two fields map to the same base field. Item types should have either a plain type field OR a specialized type field (like websiteType) with baseField type, but not both. Consider removing the plain type field added on line 287 since websiteType already provides the type functionality for blog posts.
				{
					"field": "type"
				},
				{
					"field": "blogTitle",
					"baseField": "publicationTitle"
				},
				{
					"field": "websiteType",
					"baseField": "type"
				},

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread schema.json
},
{
"field": "genre",
"baseField": "type"
Copy link
Copy Markdown
Contributor Author

@adunning adunning Jan 14, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It is misleading to call this field 'genre' with a film: this makes it sound as if one should be filling in something like 'action/adventure'. The field is also named 'genre' with a dataset, and I think that 'type' would be clearer there as well. If this were changed simply to "field": "type", would Zotero correctly retain/migrate the data?

Comment thread schema.json
"baseField": "publicationTitle"
},
{
"field": "websiteType",
Copy link
Copy Markdown
Contributor Author

@adunning adunning Jan 14, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The CSL genre variable is meant to contain a title-level description, but calling the field 'website title' makes it sound as if it is a description of the container-title. This also applies to blog posts. See https://www.zotero.org/groups/2205533/items/MWHM3SMK and https://www.zotero.org/groups/2205533/items/CRHZHS6Z for usage examples; it is also especially necessary for citing AI output as Chicago models it, e.g. https://www.zotero.org/groups/2205533/items/4YST9PCI and https://www.zotero.org/groups/2205533/items/KUTRD58P. It would be simplest to change this to a simple type field if that is possible.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Development

Successfully merging this pull request may close these issues.

2 participants