changedOutput schema / properties / articles / items / properties / authors / description
Previous value: -"Author list"New value: +"Author list. On a `book-chapter` these are the chapter's own authors, never the book's editors, which are in `book.editors`. Empty on a Bookshelf record that credits neither."
addedOutput schema / properties / articles / items / properties / book
Added value: +{
+ "additionalProperties": false,
+ "description": "The containing book of a `book-chapter`, or the book itself on a `book` record. Present only on those two record types, and never a stand-in for `journalInfo`.",
+ "properties": {
+ "accession": {
+ "description": "NCBI Bookshelf accession from `ArticleIdList` (`bookaccession`), e.g. \"NBK1247\". The record is readable at `https://www.ncbi.nlm.nih.gov/books/<accession>/`.",
+ "type": "string"
+ },
+ "beginningDate": {
+ "description": "First year of a continuously-updated book, from `Book/BeginningDate` (GeneReviews runs from 1993). Absent on a book published once.",
+ "type": "string"
+ },
+ "collectionTitle": {
+ "description": "Series the book belongs to, from `Book/CollectionTitle` (e.g. \"ADA Clinical Compendia Series\"). Absent for a book outside a series.",
+ "type": "string"
+ },
+ "doi": {
+ "description": "The book's own DOI, from `Book/ELocationID` with `EIdType=\"doi\"`. Distinct from the record-level `doi`, which is the chapter's: a chapter does not inherit this one.",
+ "type": "string"
+ },
+ "edition": {
+ "description": "Edition statement from `Book/Edition`. Rare on Bookshelf titles — absent unless NCBI supplies one.",
+ "type": "string"
+ },
+ "editors": {
+ "description": "Editors of the containing book, from `Book/AuthorList` marked `Type=\"editors\"`. Kept out of `authors`, which carries the chapter's own writers. Absent when the book credits no editors.",
+ "items": {
+ "additionalProperties": false,
+ "description": "One editor of the containing book. Name parts only — editors are a citation credit, not a contributor record, so no affiliations or ORCID are reported for them.",
+ "properties": {
+ "collectiveName": {
+ "description": "Group or committee credited as editor, when the entry names an organization rather than a person. Mutually exclusive with the name-part fields.",
+ "type": "string"
+ },
+ "firstName": {
+ "description": "Editor given name as NCBI supplies it (`ForeName`, often \"Margaret P\"). Absent when NCBI carries initials only, or on a group editor.",
+ "type": "string"
+ },
+ "initials": {
+ "description": "Editor initials with no separators (e.g. \"MP\"). Absent when NCBI supplies none, or on a group editor.",
+ "type": "string"
+ },
+ "lastName": {
+ "description": "Editor surname, from the book's `Book/AuthorList Type=\"editors\"` entry. Absent on a group editor, which carries `collectiveName` instead.",
+ "type": "string"
+ }
+ },
+ "type": "object"
+ },
+ "type": "array"
+ },
+ "endingDate": {
+ "description": "Last year of a closed date range, from `Book/EndingDate`. Absent while a book is still being updated, which leaves the range open-ended.",
+ "type": "string"
+ },
+ "isbns": {
+ "description": "Every `Book/Isbn` on the record. A book commonly carries a print and an electronic ISBN, so this is a list. Absent for a Bookshelf title with no ISBN, which is most of them.",
+ "items": {
+ "description": "One ISBN, verbatim as NCBI reports it — leading zeros intact",
+ "type": "string"
+ },
+ "type": "array"
+ },
+ "medium": {
+ "description": "Medium the book is published in, from `Book/Medium` — \"Internet\" wherever NCBI supplies it. Absent when NCBI supplies none; it is never defaulted.",
+ "type": "string"
+ },
+ "pubDate": {
+ "description": "Publication year from `Book/PubDate`. Year only — NCBI's month and day are not reported, since no citation style uses them for a book.",
+ "type": "string"
+ },
+ "publisher": {
+ "description": "Publisher of the book, from `Book/Publisher/PublisherName`.",
+ "type": "string"
+ },
+ "publisherLocation": {
+ "description": "Place of publication, from `Book/Publisher/PublisherLocation` (e.g. \"Seattle (WA)\"). Absent when NCBI supplies no place.",
+ "type": "string"
+ },
+ "title": {
+ "description": "Title of the containing book, from `Book/BookTitle` (e.g. \"GeneReviews®\"). On a `book` record this is the same value as the record's own `title`.",
+ "type": "string"
+ }
+ },
+ "type": "object"
+}
changedOutput schema / properties / articles / items / properties / journalInfo / description
Previous value: -"Journal information"New value: +"Journal information. Present on `journal-article` records only — absent on `book-chapter` and `book` records, because a Bookshelf record has no journal and its book title is never reported as one; read `book` for those. (#114)"
addedOutput schema / properties / articles / items / properties / journalInfo / properties / elocationId
Added value: +{
+ "description": "Electronic article locator from NCBI `ELocationID` — the publisher-assigned article number (e.g. \"2400512\"). Journals that assign article numbers instead of pages often omit pagination entirely, leaving this the only locator. Never a substitute for `pages`, and never the DOI: a DOI-typed `ELocationID` is reported in `doi` instead. Absent when the only locator NCBI supplies is marked invalid.",
+ "type": "string"
+}
addedOutput schema / properties / articles / items / properties / journalInfo / properties / elocationIdType
Added value: +{
+ "description": "Type of `elocationId`, from NCBI's `EIdType` attribute — \"pii\" in practice. Free-form: NCBI does not close the set, so treat an unfamiliar value as opaque.",
+ "type": "string"
+}
addedOutput schema / properties / articles / items / properties / recordType
Added value: +{
+ "description": "Which kind of PubMed record this is, set from the XML element it arrived in: `journal-article` for an ordinary article, `book-chapter` for an NCBI Bookshelf chapter, `book` for a whole Bookshelf book. Read this to tell the three apart — `publicationTypes` cannot, because PubMed labels a Bookshelf record \"Review\" or \"Study Guide\". `journalInfo` is present only on `journal-article`; `book` only on the other two.",
+ "enum": [
+ "journal-article",
+ "book-chapter",
+ "book"
+ ],
+ "type": "string"
+}
changedOutput schema / properties / articles / items / properties / title / description
Previous value: -"Article title"New value: +"Article title — the chapter title on a `book-chapter`, and the book title on a `book` record, where it repeats `book.title`."
addedOutput schema / properties / articles / items / required
Added value: +[
+ "recordType"
+]
changedOutput schema / properties / unavailablePmids / description
Previous value: -"PMIDs that returned no article data. Reported in full regardless of where a `maxResponseCharacters` cutoff lands — these are misses, not deferrals, and re-requesting them returns nothing."New value: +"PMIDs PubMed returned no record for. That is all this reports: PubMed omits an unknown PMID silently, with no error and no reason, so the absence says nothing about whether the PMID exists. Reported in full regardless of where a `maxResponseCharacters` cutoff lands — these are misses, not deferrals. Use `pubmed_search_articles` to find PMIDs that do resolve."