@cyanheads/pubmed-mcp-server 2.10.20 → 2.10.22

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (110) hide show
  1. package/AGENTS.md +3 -3
  2. package/CLAUDE.md +3 -3
  3. package/Dockerfile +3 -3
  4. package/README.md +14 -11
  5. package/changelog/2.10.x/2.10.21.md +42 -0
  6. package/changelog/2.10.x/2.10.22.md +44 -0
  7. package/dist/index.js +1 -1
  8. package/dist/index.js.map +1 -1
  9. package/dist/mcp-server/tools/definitions/_budget.d.ts +35 -6
  10. package/dist/mcp-server/tools/definitions/_budget.d.ts.map +1 -1
  11. package/dist/mcp-server/tools/definitions/_budget.js +26 -3
  12. package/dist/mcp-server/tools/definitions/_budget.js.map +1 -1
  13. package/dist/mcp-server/tools/definitions/_notices.d.ts +33 -0
  14. package/dist/mcp-server/tools/definitions/_notices.d.ts.map +1 -0
  15. package/dist/mcp-server/tools/definitions/_notices.js +35 -0
  16. package/dist/mcp-server/tools/definitions/_notices.js.map +1 -0
  17. package/dist/mcp-server/tools/definitions/_schemas.d.ts +14 -0
  18. package/dist/mcp-server/tools/definitions/_schemas.d.ts.map +1 -1
  19. package/dist/mcp-server/tools/definitions/_schemas.js +9 -0
  20. package/dist/mcp-server/tools/definitions/_schemas.js.map +1 -1
  21. package/dist/mcp-server/tools/definitions/fetch-articles.tool.d.ts +11 -0
  22. package/dist/mcp-server/tools/definitions/fetch-articles.tool.d.ts.map +1 -1
  23. package/dist/mcp-server/tools/definitions/fetch-articles.tool.js +64 -19
  24. package/dist/mcp-server/tools/definitions/fetch-articles.tool.js.map +1 -1
  25. package/dist/mcp-server/tools/definitions/fetch-fulltext.tool.d.ts +22 -4
  26. package/dist/mcp-server/tools/definitions/fetch-fulltext.tool.d.ts.map +1 -1
  27. package/dist/mcp-server/tools/definitions/fetch-fulltext.tool.js +386 -167
  28. package/dist/mcp-server/tools/definitions/fetch-fulltext.tool.js.map +1 -1
  29. package/dist/mcp-server/tools/definitions/format-citations.tool.d.ts +12 -0
  30. package/dist/mcp-server/tools/definitions/format-citations.tool.d.ts.map +1 -1
  31. package/dist/mcp-server/tools/definitions/format-citations.tool.js +41 -8
  32. package/dist/mcp-server/tools/definitions/format-citations.tool.js.map +1 -1
  33. package/dist/mcp-server/tools/definitions/lookup-citation.tool.d.ts.map +1 -1
  34. package/dist/mcp-server/tools/definitions/lookup-citation.tool.js +8 -6
  35. package/dist/mcp-server/tools/definitions/lookup-citation.tool.js.map +1 -1
  36. package/dist/mcp-server/tools/definitions/lookup-mesh.tool.d.ts +1 -1
  37. package/dist/mcp-server/tools/definitions/lookup-mesh.tool.d.ts.map +1 -1
  38. package/dist/mcp-server/tools/definitions/lookup-mesh.tool.js +66 -76
  39. package/dist/mcp-server/tools/definitions/lookup-mesh.tool.js.map +1 -1
  40. package/dist/mcp-server/tools/definitions/pubmed-europepmc-fetch.tool.d.ts +6 -5
  41. package/dist/mcp-server/tools/definitions/pubmed-europepmc-fetch.tool.d.ts.map +1 -1
  42. package/dist/mcp-server/tools/definitions/pubmed-europepmc-fetch.tool.js +11 -18
  43. package/dist/mcp-server/tools/definitions/pubmed-europepmc-fetch.tool.js.map +1 -1
  44. package/dist/mcp-server/tools/definitions/pubmed-europepmc-search.tool.d.ts +4 -4
  45. package/dist/mcp-server/tools/definitions/pubmed-europepmc-search.tool.d.ts.map +1 -1
  46. package/dist/mcp-server/tools/definitions/pubmed-europepmc-search.tool.js +9 -8
  47. package/dist/mcp-server/tools/definitions/pubmed-europepmc-search.tool.js.map +1 -1
  48. package/dist/mcp-server/tools/definitions/spell-check.tool.d.ts +4 -4
  49. package/dist/mcp-server/tools/definitions/spell-check.tool.d.ts.map +1 -1
  50. package/dist/mcp-server/tools/definitions/spell-check.tool.js +12 -8
  51. package/dist/mcp-server/tools/definitions/spell-check.tool.js.map +1 -1
  52. package/dist/services/error-contracts.d.ts +1 -1
  53. package/dist/services/error-contracts.d.ts.map +1 -1
  54. package/dist/services/error-contracts.js +1 -1
  55. package/dist/services/error-contracts.js.map +1 -1
  56. package/dist/services/europe-pmc/api-client.d.ts.map +1 -1
  57. package/dist/services/europe-pmc/api-client.js +4 -3
  58. package/dist/services/europe-pmc/api-client.js.map +1 -1
  59. package/dist/services/europe-pmc/europe-pmc-service.d.ts +31 -11
  60. package/dist/services/europe-pmc/europe-pmc-service.d.ts.map +1 -1
  61. package/dist/services/europe-pmc/europe-pmc-service.js +122 -47
  62. package/dist/services/europe-pmc/europe-pmc-service.js.map +1 -1
  63. package/dist/services/europe-pmc/types.d.ts +5 -1
  64. package/dist/services/europe-pmc/types.d.ts.map +1 -1
  65. package/dist/services/fetch-redaction.d.ts +23 -0
  66. package/dist/services/fetch-redaction.d.ts.map +1 -0
  67. package/dist/services/fetch-redaction.js +62 -0
  68. package/dist/services/fetch-redaction.js.map +1 -0
  69. package/dist/services/ncbi/api-client.d.ts +3 -0
  70. package/dist/services/ncbi/api-client.d.ts.map +1 -1
  71. package/dist/services/ncbi/api-client.js +21 -8
  72. package/dist/services/ncbi/api-client.js.map +1 -1
  73. package/dist/services/ncbi/formatting/citation-formatter.d.ts +19 -3
  74. package/dist/services/ncbi/formatting/citation-formatter.d.ts.map +1 -1
  75. package/dist/services/ncbi/formatting/citation-formatter.js +410 -138
  76. package/dist/services/ncbi/formatting/citation-formatter.js.map +1 -1
  77. package/dist/services/ncbi/ncbi-service.d.ts +22 -0
  78. package/dist/services/ncbi/ncbi-service.d.ts.map +1 -1
  79. package/dist/services/ncbi/ncbi-service.js +115 -18
  80. package/dist/services/ncbi/ncbi-service.js.map +1 -1
  81. package/dist/services/ncbi/parsing/article-parser.d.ts.map +1 -1
  82. package/dist/services/ncbi/parsing/article-parser.js +89 -36
  83. package/dist/services/ncbi/parsing/article-parser.js.map +1 -1
  84. package/dist/services/ncbi/parsing/pmc-article-parser.d.ts +13 -8
  85. package/dist/services/ncbi/parsing/pmc-article-parser.d.ts.map +1 -1
  86. package/dist/services/ncbi/parsing/pmc-article-parser.js +326 -72
  87. package/dist/services/ncbi/parsing/pmc-article-parser.js.map +1 -1
  88. package/dist/services/ncbi/parsing/pmc-xml-helpers.d.ts +42 -0
  89. package/dist/services/ncbi/parsing/pmc-xml-helpers.d.ts.map +1 -1
  90. package/dist/services/ncbi/parsing/pmc-xml-helpers.js +275 -12
  91. package/dist/services/ncbi/parsing/pmc-xml-helpers.js.map +1 -1
  92. package/dist/services/ncbi/parsing/text-helpers.d.ts +10 -0
  93. package/dist/services/ncbi/parsing/text-helpers.d.ts.map +1 -1
  94. package/dist/services/ncbi/parsing/text-helpers.js +19 -0
  95. package/dist/services/ncbi/parsing/text-helpers.js.map +1 -1
  96. package/dist/services/ncbi/response-handler.d.ts +0 -11
  97. package/dist/services/ncbi/response-handler.d.ts.map +1 -1
  98. package/dist/services/ncbi/response-handler.js +24 -33
  99. package/dist/services/ncbi/response-handler.js.map +1 -1
  100. package/dist/services/ncbi/types.d.ts +72 -32
  101. package/dist/services/ncbi/types.d.ts.map +1 -1
  102. package/dist/services/openalex/api-client.d.ts.map +1 -1
  103. package/dist/services/openalex/api-client.js +4 -3
  104. package/dist/services/openalex/api-client.js.map +1 -1
  105. package/dist/services/unpaywall/unpaywall-service.d.ts +3 -0
  106. package/dist/services/unpaywall/unpaywall-service.d.ts.map +1 -1
  107. package/dist/services/unpaywall/unpaywall-service.js +18 -8
  108. package/dist/services/unpaywall/unpaywall-service.js.map +1 -1
  109. package/package.json +7 -7
  110. package/server.json +3 -3
@@ -1 +1 @@
1
- {"version":3,"file":"pmc-xml-helpers.js","sourceRoot":"","sources":["../../../../src/services/ncbi/parsing/pmc-xml-helpers.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"pmc-xml-helpers.js","sourceRoot":"","sources":["../../../../src/services/ncbi/parsing/pmc-xml-helpers.ts"],"names":[],"mappings":"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"}
@@ -28,4 +28,14 @@ export declare function decodeHtmlEntities(text: string): string;
28
28
  * character budget is spent on text rather than markup.
29
29
  */
30
30
  export declare function toDisplayText(text: string): string;
31
+ /**
32
+ * Drop {@link INVISIBLE_FORMAT_CHARS_RE} from a raw XML body before it is
33
+ * parsed, once for every reader of the tree. JavaScript's `\s` matches U+FEFF,
34
+ * so each whitespace collapse downstream turned one inside a word into a space
35
+ * that split it (`hepatopulmonary s yndrome`); U+00AD and U+200B survive every
36
+ * collapse and break a search for the word (`employ` + U+00AD + `ment`). The
37
+ * characters never stand for spacing, so a real space beside one stays one
38
+ * space. (#224)
39
+ */
40
+ export declare function stripInvisibleFormatChars(xml: string): string;
31
41
  //# sourceMappingURL=text-helpers.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"text-helpers.d.ts","sourceRoot":"","sources":["../../../../src/services/ncbi/parsing/text-helpers.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAsHH;;;;;;;GAOG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAcvD;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAKlD"}
1
+ {"version":3,"file":"text-helpers.d.ts","sourceRoot":"","sources":["../../../../src/services/ncbi/parsing/text-helpers.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAsHH;;;;;;;GAOG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAcvD;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAKlD;AAUD;;;;;;;;GAQG;AACH,wBAAgB,yBAAyB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAE7D"}
@@ -152,4 +152,23 @@ export function toDisplayText(text) {
152
152
  .replace(WHITESPACE_RE, ' ')
153
153
  .trim();
154
154
  }
155
+ /**
156
+ * U+FEFF (zero width no-break space), U+00AD (soft hyphen) and U+200B (zero
157
+ * width space): invisible characters PMC deposits carry inside words. U+200C
158
+ * and U+200D, joiners that carry meaning in some scripts, are left alone, and so
159
+ * is U+2060, which no deposit sampled carries.
160
+ */
161
+ const INVISIBLE_FORMAT_CHARS_RE = /[\uFEFF\u00AD\u200B]/g;
162
+ /**
163
+ * Drop {@link INVISIBLE_FORMAT_CHARS_RE} from a raw XML body before it is
164
+ * parsed, once for every reader of the tree. JavaScript's `\s` matches U+FEFF,
165
+ * so each whitespace collapse downstream turned one inside a word into a space
166
+ * that split it (`hepatopulmonary s yndrome`); U+00AD and U+200B survive every
167
+ * collapse and break a search for the word (`employ` + U+00AD + `ment`). The
168
+ * characters never stand for spacing, so a real space beside one stays one
169
+ * space. (#224)
170
+ */
171
+ export function stripInvisibleFormatChars(xml) {
172
+ return xml.replace(INVISIBLE_FORMAT_CHARS_RE, '');
173
+ }
155
174
  //# sourceMappingURL=text-helpers.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"text-helpers.js","sourceRoot":"","sources":["../../../../src/services/ncbi/parsing/text-helpers.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"text-helpers.js","sourceRoot":"","sources":["../../../../src/services/ncbi/parsing/text-helpers.ts"],"names":[],"mappings":"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"}
@@ -65,17 +65,6 @@ export declare class NcbiResponseHandler {
65
65
  * uses, so the two JATS paths cannot drift apart. (#69, #127)
66
66
  */
67
67
  private readonly orderedXmlParser;
68
- /**
69
- * Flat, named-key parser with `parseTagValue: false`. Same shape as
70
- * `xmlParser` — `response.eSpellResult.Query` still resolves — but tag text
71
- * arrives verbatim. Used where a response echoes an arbitrary caller-supplied
72
- * token: ESpell's `<Query>` is the only such field today, and coercion there
73
- * destroys the text before application code runs (`007` → `7`, `1e5` →
74
- * `100000`), which no read-site `String()` can undo. `orderedXmlParser` is
75
- * not a substitute — it also sets `preserveOrder`, returning a node array
76
- * rather than the property access the ESpell read depends on. (#108)
77
- */
78
- private readonly verbatimXmlParser;
79
68
  constructor();
80
69
  /**
81
70
  * Extract a structured error from a parsed NCBI XML body and throw it as
@@ -1 +1 @@
1
- {"version":3,"file":"response-handler.d.ts","sourceRoot":"","sources":["../../../src/services/ncbi/response-handler.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AA0BH,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AA6IrD;;;;;;;;GAQG;AACH,wBAAgB,oBAAoB,CAClC,KAAK,EAAE,OAAO,EACd,QAAQ,EAAE,MAAM,EAChB,EAAE,EAAE,OAAO,GACV,MAAM,GAAG,SAAS,CAKpB;AAED;;;;;;;GAOG;AACH,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAmBjF;AA+MD;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAmDvD;AA+BD;;;GAGG;AACH,qBAAa,mBAAmB;IAC9B,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAgB;IAC1C;;;;OAIG;IACH,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAgB;IACjD;;;;;;;;;OASG;IACH,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAgB;IAElD,cAkBC;IAED;;;;;;;;OAQG;IACH,OAAO,CAAC,cAAc;IAyBtB,wBAAwB,CAAC,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,EAAE,CAoBrE;IAED,sBAAsB,CAAC,CAAC,EACtB,YAAY,EAAE,MAAM,EACpB,QAAQ,EAAE,MAAM,EAChB,OAAO,CAAC,EAAE,kBAAkB,GAC3B,CAAC,CAiOH;CACF"}
1
+ {"version":3,"file":"response-handler.d.ts","sourceRoot":"","sources":["../../../src/services/ncbi/response-handler.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AA0BH,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAqJrD;;;;;;;;GAQG;AACH,wBAAgB,oBAAoB,CAClC,KAAK,EAAE,OAAO,EACd,QAAQ,EAAE,MAAM,EAChB,EAAE,EAAE,OAAO,GACV,MAAM,GAAG,SAAS,CAKpB;AAED;;;;;;;GAOG;AACH,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAmBjF;AA+MD;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAmDvD;AA+BD;;;GAGG;AACH,qBAAa,mBAAmB;IAC9B,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAgB;IAC1C;;;;OAIG;IACH,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAgB;IAEjD,cAeC;IAED;;;;;;;;OAQG;IACH,OAAO,CAAC,cAAc;IAyBtB,wBAAwB,CAAC,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,EAAE,CAoBrE;IAED,sBAAsB,CAAC,CAAC,EACtB,YAAY,EAAE,MAAM,EACpB,QAAQ,EAAE,MAAM,EAChB,OAAO,CAAC,EAAE,kBAAkB,GAC3B,CAAC,CA6NH;CACF"}
@@ -21,7 +21,7 @@ import { logger, requestContextService } from '@cyanheads/mcp-ts-core/utils';
21
21
  // biome-ignore lint/suspicious/noDeprecatedImports: staying on in-tree XMLValidator — see block comment above
22
22
  import { XMLParser as FastXmlParser, XMLValidator } from 'fast-xml-parser';
23
23
  import { ORDERED_XML_PARSER_OPTIONS, XML_PROCESS_ENTITIES_OPTIONS, } from './parsing/ordered-xml-parser-options.js';
24
- import { decodeHtmlEntities } from './parsing/text-helpers.js';
24
+ import { decodeHtmlEntities, stripInvisibleFormatChars } from './parsing/text-helpers.js';
25
25
  /**
26
26
  * jpaths that NCBI may return as either a single value or an array.
27
27
  * The `isArray` callback forces these to always parse as arrays for consistency.
@@ -52,6 +52,9 @@ const NCBI_ARRAY_JPATHS = new Set([
52
52
  'PubmedArticleSet.PubmedArticle.MedlineCitation.Article.GrantList.Grant',
53
53
  'PubmedArticleSet.PubmedArticle.MedlineCitation.Article.PublicationTypeList.PublicationType',
54
54
  'PubmedArticleSet.PubmedArticle.MedlineCitation.CommentsCorrectionsList.CommentsCorrections',
55
+ 'PubmedArticleSet.PubmedArticle.MedlineCitation.InvestigatorList',
56
+ 'PubmedArticleSet.PubmedArticle.MedlineCitation.InvestigatorList.Investigator',
57
+ 'PubmedArticleSet.PubmedArticle.MedlineCitation.InvestigatorList.Investigator.AffiliationInfo',
55
58
  'PubmedArticleSet.PubmedArticle.MedlineCitation.KeywordList.Keyword',
56
59
  'PubmedArticleSet.PubmedArticle.MedlineCitation.MeshHeadingList.MeshHeading',
57
60
  'PubmedArticleSet.PubmedArticle.MedlineCitation.MeshHeadingList.MeshHeading.QualifierName',
@@ -87,10 +90,11 @@ const NCBI_ARRAY_JPATHS = new Set([
87
90
  * ESummary version-1 `<Item>` elements, at any nesting depth.
88
91
  *
89
92
  * A `DocSum` item of `Type="List"` or `Type="Structure"` holds further `<Item>`
90
- * children, and `lookup-mesh` walks three levels of them to reach a tree number.
91
- * The nesting is open-ended, so one anchored pattern covers it where a fixed
92
- * list of paths would silently cap the depth. Anchored at the root for the same
93
- * reason the set is: a suffix match would catch an unrelated `Item` elsewhere.
93
+ * children — the version-1 fallback in `esummary-parser` reads an `AuthorList`
94
+ * and `ArticleIds` this way. The nesting is open-ended, so one anchored pattern
95
+ * covers it where a fixed list of paths would silently cap the depth. Anchored
96
+ * at the root for the same reason the set is: a suffix match would catch an
97
+ * unrelated `Item` elsewhere.
94
98
  * (#138)
95
99
  */
96
100
  const ESUMMARY_ITEM_JPATH = /^eSummaryResult\.DocSum(?:\.Item)+$/;
@@ -103,6 +107,10 @@ const ERROR_PATHS = [
103
107
  'eSearchResult.ERROR',
104
108
  'eSummaryResult.ERROR',
105
109
  'eFetchResult.ERROR',
110
+ // ESpell is parsed on the ordered path, which reaches this list only for a
111
+ // non-empty `<ERROR>`. The empty `<ERROR/>` it sends with every answer would
112
+ // read as an error on the flat path. (#241)
113
+ 'eSpellResult.ERROR',
106
114
  'PubmedArticleSet.ErrorList.CannotRetrievePMID',
107
115
  'ERROR',
108
116
  ];
@@ -463,7 +471,7 @@ const VERBATIM_TEXT_JPATHS = new Set([
463
471
  * `007` → `7`, `0x1A` → `26` (#178). The processor's contract does the work:
464
472
  * returning `undefined` leaves the raw text alone, while returning the value
465
473
  * unchanged for every other tag keeps the existing coercion exactly as it was.
466
- * The flat parsers keep the default `jPath: true`, so the path arrives as a string.
474
+ * The flat parser keeps the default `jPath: true`, so the path arrives as a string.
467
475
  */
468
476
  const preserveVerbatimText = (tagName, tagValue, jPath) => tagName === 'Isbn' || VERBATIM_TEXT_JPATHS.has(jPath) ? undefined : tagValue;
469
477
  /**
@@ -478,33 +486,20 @@ export class NcbiResponseHandler {
478
486
  * uses, so the two JATS paths cannot drift apart. (#69, #127)
479
487
  */
480
488
  orderedXmlParser;
481
- /**
482
- * Flat, named-key parser with `parseTagValue: false`. Same shape as
483
- * `xmlParser` — `response.eSpellResult.Query` still resolves — but tag text
484
- * arrives verbatim. Used where a response echoes an arbitrary caller-supplied
485
- * token: ESpell's `<Query>` is the only such field today, and coercion there
486
- * destroys the text before application code runs (`007` → `7`, `1e5` →
487
- * `100000`), which no read-site `String()` can undo. `orderedXmlParser` is
488
- * not a substitute — it also sets `preserveOrder`, returning a node array
489
- * rather than the property access the ESpell read depends on. (#108)
490
- */
491
- verbatimXmlParser;
492
489
  constructor() {
493
- // The two flat, named-key parsers differ only in `parseTagValue`.
494
- const flatOptions = {
490
+ this.xmlParser = new FastXmlParser({
495
491
  ignoreAttributes: false,
496
492
  attributeNamePrefix: '@_',
497
493
  processEntities: XML_PROCESS_ENTITIES_OPTIONS,
498
494
  htmlEntities: true,
495
+ parseTagValue: true,
499
496
  isArray: (_name, jpath) => {
500
497
  // `jPathOrMatcher` is a string unless `jPath: false` is set, which it is not.
501
498
  const path = jpath;
502
499
  return NCBI_ARRAY_JPATHS.has(path) || ESUMMARY_ITEM_JPATH.test(path);
503
500
  },
504
501
  tagValueProcessor: preserveVerbatimText,
505
- };
506
- this.xmlParser = new FastXmlParser({ ...flatOptions, parseTagValue: true });
507
- this.verbatimXmlParser = new FastXmlParser({ ...flatOptions, parseTagValue: false });
502
+ });
508
503
  this.orderedXmlParser = new FastXmlParser(ORDERED_XML_PARSER_OPTIONS);
509
504
  }
510
505
  /**
@@ -616,17 +611,13 @@ export class NcbiResponseHandler {
616
611
  const errorParsed = this.xmlParser.parse(responseText);
617
612
  this.throwNcbiError(errorParsed, endpoint);
618
613
  }
619
- // Ordered wins when both are set: it is the JATS mixed-content path, and
620
- // it already parses tag values verbatim.
621
- const parser = useOrdered
622
- ? this.orderedXmlParser
623
- : options?.useVerbatimParser
624
- ? this.verbatimXmlParser
625
- : this.xmlParser;
626
- // Pre-flatten inline markup (scripts, emphasis, MathML) on the regular
627
- // parser path. The ordered parser walks mixed content correctly via
628
- // preserveOrder; the regular parser does not.
629
- const xmlForParse = useOrdered ? responseText : flattenInlineMarkup(responseText);
614
+ const parser = useOrdered ? this.orderedXmlParser : this.xmlParser;
615
+ // Invisible characters a deposit carries inside words go before either
616
+ // parser sees them (#224). Then pre-flatten inline markup (scripts,
617
+ // emphasis, MathML) on the regular parser path. The ordered parser walks
618
+ // mixed content correctly via preserveOrder; the regular parser does not.
619
+ const visibleXml = stripInvisibleFormatChars(responseText);
620
+ const xmlForParse = useOrdered ? visibleXml : flattenInlineMarkup(visibleXml);
630
621
  let parsedXml;
631
622
  try {
632
623
  parsedXml = parser.parse(xmlForParse);
@@ -1 +1 @@
1
- {"version":3,"file":"response-handler.js","sourceRoot":"","sources":["../../../src/services/ncbi/response-handler.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"response-handler.js","sourceRoot":"","sources":["../../../src/services/ncbi/response-handler.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EACL,QAAQ,EACR,QAAQ,EACR,kBAAkB,EAClB,kBAAkB,GACnB,MAAM,+BAA+B,CAAC;AACvC,OAAO,EAAE,MAAM,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAC;AAC7E;;;;;;;;GAQG;AACH,8GAA8G;AAC9G,OAAO,EAAE,SAAS,IAAI,aAAa,EAAmB,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAE5F,OAAO,EACL,0BAA0B,EAC1B,4BAA4B,GAC7B,MAAM,yCAAyC,CAAC;AACjD,OAAO,EAAE,kBAAkB,EAAE,yBAAyB,EAAE,MAAM,2BAA2B,CAAC;AAG1F;;;;;;;;;;;;;;;;;;;GAmBG;AACH,MAAM,iBAAiB,GAAG,IAAI,GAAG,CAAC;IAChC,UAAU;IACV,yBAAyB;IACzB,4BAA4B;IAC5B,gCAAgC;IAChC,0EAA0E;IAC1E,0FAA0F;IAC1F,wEAAwE;IACxE,4FAA4F;IAC5F,4FAA4F;IAC5F,iEAAiE;IACjE,8EAA8E;IAC9E,8FAA8F;IAC9F,oEAAoE;IACpE,4EAA4E;IAC5E,0FAA0F;IAC1F,iEAAiE;IACjE,6BAA6B;IAC7B,oCAAoC;IACpC,4DAA4D;IAC5D,mEAAmE;IACnE,mFAAmF;IACnF,qEAAqE;IACrE,iEAAiE;IACjE,iEAAiE;IACjE,wEAAwE;IACxE,kEAAkE;IAClE,2DAA2D;IAC3D,yEAAyE;IACzE,sCAAsC;IACtC,QAAQ;IACR,+BAA+B;IAC/B,oCAAoC;IACpC,QAAQ;IACR,oCAAoC;IACpC,kCAAkC;IAClC,WAAW;IACX,uBAAuB;IACvB,mCAAmC;IACnC,sCAAsC;IACtC,0DAA0D;IAC1D,wEAAwE;IACxE,gEAAgE;CACjE,CAAC,CAAC;AAEH;;;;;;;;;;GAUG;AACH,MAAM,mBAAmB,GAAG,qCAAqC,CAAC;AAElE;;;GAGG;AACH,MAAM,WAAW,GAAG;IAClB,mBAAmB;IACnB,qBAAqB;IACrB,sBAAsB;IACtB,oBAAoB;IACpB,2EAA2E;IAC3E,6EAA6E;IAC7E,4CAA4C;IAC5C,oBAAoB;IACpB,+CAA+C;IAC/C,OAAO;CACR,CAAC;AAEF;;;;;;;;GAQG;AACH,MAAM,6BAA6B,GAAa;IAC9C,wBAAwB;IACxB,oBAAoB;IACpB,kBAAkB;CACnB,CAAC;AAEF;;;;;GAKG;AACH,MAAM,gBAAgB,GAAG,+CAA+C,CAAC;AAEzE,iFAAiF;AACjF,MAAM,qBAAqB,GAAG,sBAAsB,CAAC;AAErD;;;;GAIG;AACH,MAAM,oBAAoB,GAAqC;IAC7D,MAAM,EACJ,mNAAmN;IACrN,GAAG,EAAE,sMAAsM;CAC5M,CAAC;AAEF;;;;GAIG;AACH,SAAS,cAAc,CAAC,KAAc;IACpC,IAAI,CAAC,CAAC,KAAK,YAAY,QAAQ,CAAC,IAAI,OAAO,KAAK,CAAC,IAAI,EAAE,IAAI,KAAK,QAAQ;QAAE,OAAO;IACjF,OAAO,CAAC,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CACnE,kBAAkB,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;SAC/B,OAAO,CAAC,0BAA0B,EAAE,GAAG,CAAC;SACxC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC;SACpB,IAAI,EAAE,CACV,CAAC;AACJ,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,oBAAoB,CAClC,KAAc,EACd,QAAgB,EAChB,EAAW;IAEX,IAAI,QAAQ,KAAK,QAAQ,IAAI,OAAO,EAAE,KAAK,QAAQ;QAAE,OAAO;IAC5D,MAAM,KAAK,GAAG,oBAAoB,CAAC,EAAE,CAAC,CAAC;IACvC,IAAI,KAAK,KAAK,SAAS;QAAE,OAAO;IAChC,OAAO,cAAc,CAAC,KAAK,CAAC,EAAE,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,qBAAqB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC;AACnG,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,uBAAuB,CAAC,KAAc,EAAE,QAAgB;IACtE,MAAM,UAAU,GAAG,cAAc,CAAC,KAAK,CAAC,CAAC;IACzC,IACE,CAAC,CAAC,KAAK,YAAY,QAAQ,CAAC;QAC5B,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,6BAA6B,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAClF,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IAED,OAAO,kBAAkB,CACvB,mBAAmB,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,EAC1C;QACE,MAAM,EAAE,kBAAkB;QAC1B,QAAQ;QACR,MAAM,EAAE,KAAK,CAAC,IAAI,EAAE,MAAM;QAC1B,UAAU;KACX,EACD,EAAE,KAAK,EAAE,KAAK,EAAE,CACjB,CAAC;AACJ,CAAC;AAED;;;;GAIG;AACH,MAAM,uBAAuB,GAAa;IACxC,8BAA8B;IAC9B,uBAAuB;IACvB,gBAAgB;CACjB,CAAC;AAEF,MAAM,aAAa,GAAG;IACpB,wCAAwC;IACxC,uCAAuC;IACvC,gDAAgD;IAChD,yCAAyC;CAC1C,CAAC;AAEF,SAAS,WAAW,CAAC,GAAY,EAAE,IAAY;IAC7C,IAAI,OAAO,GAAY,GAAG,CAAC;IAC3B,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC;QACnC,IAAI,OAAO,IAAI,OAAO,OAAO,KAAK,QAAQ,IAAI,IAAI,IAAK,OAAmC,EAAE,CAAC;YAC3F,OAAO,GAAI,OAAmC,CAAC,IAAI,CAAC,CAAC;QACvD,CAAC;aAAM,CAAC;YACN,OAAO;QACT,CAAC;IACH,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,SAAS,iBAAiB,CAAC,MAAe,EAAE,MAAM,GAAG,EAAE;IACrD,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;IACxD,MAAM,QAAQ,GAAa,EAAE,CAAC;IAC9B,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,OAAO,IAAI,KAAK,SAAS,EAAE,CAAC;YACtF,QAAQ,CAAC,IAAI,CAAC,GAAG,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAC5C,CAAC;aAAM,IAAI,IAAI,IAAI,OAAQ,IAAgC,CAAC,OAAO,CAAC,KAAK,QAAQ,EAAE,CAAC;YAClF,QAAQ,CAAC,IAAI,CAAC,GAAG,MAAM,GAAI,IAAgC,CAAC,OAAO,CAAW,EAAE,CAAC,CAAC;QACpF,CAAC;IACH,CAAC;IACD,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED;;;GAGG;AACH,SAAS,iBAAiB,CAAC,OAAe;IACxC,IAAI,+CAA+C,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;QAClE,IAAI,oCAAoC,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;YACvD,OAAO,mFAAmF,CAAC;QAC7F,CAAC;QACD,OAAO,mEAAmE,CAAC;IAC7E,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,eAAe,GAAG,qBAAqB,CAAC;AAE9C;;;;;;;;;GASG;AACH,MAAM,eAAe,GAAqC;IACxD,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,CAAC,EAAE,GAAG;IACN,CAAC,EAAE,GAAG;IACN,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;CACT,CAAC;AAEF;;;;GAIG;AACH,MAAM,aAAa,GAAqC;IACtD,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;IACR,GAAG,EAAE,GAAG;CACT,CAAC;AAEF;;;;;;;;;GASG;AACH,SAAS,gBAAgB,CACvB,OAAe,EACf,KAAuC,EACvC,WAAmB;IAEnB,IAAI,GAAG,GAAG,EAAE,CAAC;IACb,KAAK,MAAM,EAAE,IAAI,kBAAkB,CAAC,OAAO,CAAC,EAAE,CAAC;QAC7C,MAAM,MAAM,GAAG,KAAK,CAAC,EAAE,CAAC,CAAC;QACzB,IAAI,MAAM,KAAK,SAAS;YAAE,OAAO,GAAG,WAAW,GAAG,OAAO,EAAE,CAAC;QAC5D,GAAG,IAAI,MAAM,CAAC;IAChB,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAED,qFAAqF;AACrF,MAAM,WAAW,GAAG,EAAE,KAAK,EAAE,eAAe,EAAE,MAAM,EAAE,GAAG,EAAW,CAAC;AACrE,MAAM,SAAS,GAAG,EAAE,KAAK,EAAE,aAAa,EAAE,MAAM,EAAE,GAAG,EAAW,CAAC;AAsBjE;;;;;;GAMG;AACH,MAAM,eAAe,GACnB,oHAAoH,CAAC;AAEvH;;;GAGG;AACH,SAAS,kBAAkB,CACzB,MAA6B;IAE7B,IAAI,CAAC,MAAM;QAAE,OAAO;IACpB,MAAM,KAAK,GAAG,MAAM,CAAC,QAAQ,EAAE,CAAC;IAChC,QAAQ,MAAM,CAAC,IAAI,EAAE,CAAC;QACpB,KAAK,UAAU;YACb,OAAO,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC;QAC7C,KAAK,UAAU;YACb,OAAO,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS,CAAC;QAC/C,KAAK,aAAa;YAChB,OAAO,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS,CAAC;QACzE,KAAK,WAAW;YACd,OAAO,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,SAAS,CAAC;QACjD;YACE,OAAO;IACX,CAAC;AACH,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,MAAM,UAAU,mBAAmB,CAAC,GAAW;IAC7C,MAAM,GAAG,GAAa,EAAE,CAAC;IACzB,MAAM,OAAO,GAAkB,EAAE,CAAC;IAClC,MAAM,IAAI,GAAgB,EAAE,CAAC;IAE7B,MAAM,KAAK,GAAG,CAAC,IAAY,EAAE,EAAE;QAC7B,IAAI,IAAI,KAAK,EAAE,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,IAAI,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE,CAAC;YAAE,OAAO;QACnE,MAAM,GAAG,GAAG,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;QAC3B,IAAI,GAAG,EAAE,KAAK;YAAE,GAAG,CAAC,IAAI,IAAI,IAAI,CAAC;;YAC5B,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACtB,CAAC,CAAC;IACF,MAAM,UAAU,GAAG,CAAC,KAAkB,EAAE,EAAE;QACxC,MAAM,GAAG,GAAG,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;QAC3B,IAAI,GAAG,EAAE,KAAK,EAAE,CAAC;YACf,GAAG,CAAC,KAAK,GAAG,KAAK,CAAC;YAClB,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,GAAG,GAAG,CAAC,IAAI,CAAC,CAAC;QACxC,CAAC;QACD,OAAO,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,CAAC;IACjD,CAAC,CAAC;IACF,MAAM,WAAW,GAAG,GAAG,EAAE;QACvB,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;QAC5B,IAAI,KAAK,EAAE,KAAK,EAAE,CAAC;YACjB,GAAG,CAAC,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;QAChF,CAAC;IACH,CAAC,CAAC;IAEF,IAAI,IAAI,GAAG,CAAC,CAAC;IACb,KAAK,MAAM,KAAK,IAAI,GAAG,CAAC,QAAQ,CAAC,eAAe,CAAC,EAAE,CAAC;QAClD,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC;QACpC,IAAI,GAAG,KAAK,CAAC,KAAK,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;QACrC,MAAM,CAAC,EAAE,WAAW,EAAE,UAAU,EAAE,UAAU,EAAE,SAAS,EAAE,WAAW,CAAC,GAAG,KAAK,CAAC;QAE9E,IAAI,UAAU,KAAK,KAAK,IAAI,UAAU,KAAK,KAAK,IAAI,UAAU,KAAK,KAAK,EAAE,CAAC;YACzE,IAAI,WAAW;gBAAE,WAAW,EAAE,CAAC;;gBAC1B,UAAU,CAAC,UAAU,KAAK,KAAK,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;QAClE,CAAC;aAAM,IAAI,SAAS,EAAE,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC;YACzC,IAAI,UAAU,EAAE,CAAC;gBACf,IAAI,IAAI,CAAC,GAAG,EAAE,EAAE,WAAW;oBAAE,WAAW,EAAE,CAAC;gBAC3C,SAAS;YACX,CAAC;YACD,MAAM,IAAI,GAAG,kBAAkB,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YAC7C,IAAI,IAAI,KAAK,aAAa;gBAAE,KAAK,CAAC,GAAG,CAAC,CAAC;YACvC,MAAM,WAAW,GAAG,IAAI,KAAK,SAAS,IAAI,IAAI,KAAK,aAAa,CAAC;YACjE,IAAI,WAAW;gBAAE,UAAU,CAAC,IAAI,CAAC,CAAC;YAClC,IAAI,CAAC,WAAW;gBAAE,IAAI,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,WAAW,EAAE,CAAC,CAAC;iBACtE,IAAI,WAAW;gBAAE,WAAW,EAAE,CAAC;QACtC,CAAC;QACD,oEAAoE;IACtE,CAAC;IACD,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;IACvB,OAAO,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AACtB,CAAC;AAED;;;GAGG;AACH,MAAM,oBAAoB,GAAG,IAAI,GAAG,CAAC;IACnC,sGAAsG;IACtG,iGAAiG;CAClG,CAAC,CAAC;AAEH;;;;;;;;;;;;GAYG;AACH,MAAM,oBAAoB,GAAG,CAC3B,OAAe,EACf,QAAgB,EAChB,KAAc,EACM,EAAE,CACtB,OAAO,KAAK,MAAM,IAAI,oBAAoB,CAAC,GAAG,CAAC,KAAe,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC;AAEzF;;;GAGG;AACH,MAAM,OAAO,mBAAmB;IACb,SAAS,CAAgB;IAC1C;;;;OAIG;IACc,gBAAgB,CAAgB;IAEjD;QACE,IAAI,CAAC,SAAS,GAAG,IAAI,aAAa,CAAC;YACjC,gBAAgB,EAAE,KAAK;YACvB,mBAAmB,EAAE,IAAI;YACzB,eAAe,EAAE,4BAA4B;YAC7C,YAAY,EAAE,IAAI;YAClB,aAAa,EAAE,IAAI;YACnB,OAAO,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE;gBACxB,8EAA8E;gBAC9E,MAAM,IAAI,GAAG,KAAe,CAAC;gBAC7B,OAAO,iBAAiB,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,mBAAmB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACvE,CAAC;YACD,iBAAiB,EAAE,oBAAoB;SACnB,CAAC,CAAC;QACxB,IAAI,CAAC,gBAAgB,GAAG,IAAI,aAAa,CAAC,0BAA0B,CAAC,CAAC;IACxE,CAAC;IAED;;;;;;;;OAQG;IACK,cAAc,CAAC,SAAkC,EAAE,QAAgB;QACzE,MAAM,aAAa,GAAG,IAAI,CAAC,wBAAwB,CAAC,SAAS,CAAC,CAAC;QAC/D,MAAM,CAAC,KAAK,CACV,6CAA6C,EAC7C,qBAAqB,CAAC,oBAAoB,CAAC;YACzC,SAAS,EAAE,cAAc;YACzB,iBAAiB,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,aAAa,EAAE;SACvD,CAAC,CACH,CAAC;QAEF,IAAI,aAAa,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,uBAAuB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;YAClF,MAAM,QAAQ,CAAC,mBAAmB,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE;gBAC5D,MAAM,EAAE,yBAAyB;gBACjC,QAAQ;gBACR,UAAU,EAAE,aAAa;aAC1B,CAAC,CAAC;QACL,CAAC;QAED,MAAM,kBAAkB,CAAC,mBAAmB,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE;YACtE,MAAM,EAAE,kBAAkB;YAC1B,QAAQ;YACR,UAAU,EAAE,aAAa;SAC1B,CAAC,CAAC;IACL,CAAC;IAED,wBAAwB,CAAC,SAAkC;QACzD,MAAM,QAAQ,GAAa,EAAE,CAAC;QAE9B,KAAK,MAAM,IAAI,IAAI,WAAW,EAAE,CAAC;YAC/B,MAAM,KAAK,GAAG,WAAW,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;YAC3C,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;gBACxB,QAAQ,CAAC,IAAI,CAAC,GAAG,iBAAiB,CAAC,KAAK,CAAC,CAAC,CAAC;YAC7C,CAAC;QACH,CAAC;QAED,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC1B,KAAK,MAAM,IAAI,IAAI,aAAa,EAAE,CAAC;gBACjC,MAAM,KAAK,GAAG,WAAW,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;gBAC3C,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;oBACxB,QAAQ,CAAC,IAAI,CAAC,GAAG,iBAAiB,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC,CAAC;gBAC1D,CAAC;YACH,CAAC;QACH,CAAC;QAED,OAAO,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC,CAAC,yBAAyB,CAAC,CAAC;IAC7F,CAAC;IAED,sBAAsB,CACpB,YAAoB,EACpB,QAAgB,EAChB,OAA4B;QAE5B,MAAM,OAAO,GAAG,OAAO,EAAE,OAAO,IAAI,KAAK,CAAC;QAE1C,IAAI,OAAO,KAAK,MAAM,EAAE,CAAC;YACvB,MAAM,CAAC,KAAK,CACV,mCAAmC,EACnC,qBAAqB,CAAC,oBAAoB,CAAC;gBACzC,SAAS,EAAE,eAAe;gBAC1B,iBAAiB,EAAE,EAAE,QAAQ,EAAE,OAAO,EAAE;aACzC,CAAC,CACH,CAAC;YACF,OAAO,YAAiB,CAAC;QAC3B,CAAC;QAED,IAAI,OAAO,KAAK,KAAK,EAAE,CAAC;YACtB,MAAM,CAAC,KAAK,CACV,iCAAiC,EACjC,qBAAqB,CAAC,oBAAoB,CAAC;gBACzC,SAAS,EAAE,cAAc;gBACzB,iBAAiB,EAAE,EAAE,QAAQ,EAAE,OAAO,EAAE;aACzC,CAAC,CACH,CAAC;YAEF,MAAM,MAAM,GAAG,mCAAmC,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;YACtE,IAAI,MAAM,EAAE,CAAC;gBACX,MAAM,CAAC,OAAO,CACZ,0DAA0D,EAC1D,qBAAqB,CAAC,oBAAoB,CAAC;oBACzC,SAAS,EAAE,kBAAkB;oBAC7B,iBAAiB,EAAE,EAAE,QAAQ,EAAE;iBAChC,CAAC,CACH,CAAC;gBACF,MAAM,kBAAkB,CACtB,0EAA0E,EAC1E,EAAE,MAAM,EAAE,kBAAkB,EAAE,QAAQ,EAAE,CACzC,CAAC;YACJ,CAAC;YAED,yEAAyE;YACzE,yEAAyE;YACzE,uEAAuE;YACvE,qEAAqE;YACrE,0EAA0E;YAC1E,+DAA+D;YAC/D,MAAM,eAAe,GAAG,YAAY;iBACjC,OAAO,CAAC,kBAAkB,EAAE,EAAE,CAAC;iBAC/B,OAAO,CAAC,mBAAmB,EAAE,EAAE,CAAC;iBAChC,IAAI,EAAE,CAAC;YACV,IAAI,eAAe,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBACjC,MAAM,CAAC,OAAO,CACZ,sEAAsE,EACtE,qBAAqB,CAAC,oBAAoB,CAAC;oBACzC,SAAS,EAAE,mBAAmB;oBAC9B,iBAAiB,EAAE,EAAE,QAAQ,EAAE,cAAc,EAAE,YAAY,CAAC,MAAM,EAAE;iBACrE,CAAC,CACH,CAAC;gBACF,MAAM,kBAAkB,CACtB,wFAAwF,EACxF,EAAE,MAAM,EAAE,kBAAkB,EAAE,QAAQ,EAAE,CACzC,CAAC;YACJ,CAAC;YAED,MAAM,gBAAgB,GAAG,YAAY,CAAC,OAAO,CAAC,mBAAmB,EAAE,EAAE,CAAC,CAAC;YACvE,MAAM,gBAAgB,GAAG,YAAY,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAC;YACjE,IAAI,gBAAgB,KAAK,IAAI,EAAE,CAAC;gBAC9B,MAAM,CAAC,KAAK,CACV,iCAAiC,EACjC,qBAAqB,CAAC,oBAAoB,CAAC;oBACzC,SAAS,EAAE,gBAAgB;oBAC3B,iBAAiB,EAAE;wBACjB,QAAQ;wBACR,eAAe,EAAE,YAAY,CAAC,SAAS,CAAC,CAAC,EAAE,GAAG,CAAC;qBAChD;iBACF,CAAC,CACH,CAAC;gBACF,MAAM,kBAAkB,CAAC,iCAAiC,EAAE;oBAC1D,MAAM,EAAE,uBAAuB;oBAC/B,QAAQ;oBACR,eAAe,EAAE,YAAY,CAAC,SAAS,CAAC,CAAC,EAAE,GAAG,CAAC;iBAChD,CAAC,CAAC;YACL,CAAC;YAED,MAAM,UAAU,GAAG,OAAO,EAAE,gBAAgB,IAAI,KAAK,CAAC;YAEtD,IAAI,UAAU,IAAI,eAAe,CAAC,IAAI,CAAC,YAAY,CAAC,EAAE,CAAC;gBACrD,uEAAuE;gBACvE,wEAAwE;gBACxE,sBAAsB;gBACtB,MAAM,WAAW,GAAG,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,YAAY,CAA4B,CAAC;gBAClF,IAAI,CAAC,cAAc,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC;YAC7C,CAAC;YAED,MAAM,MAAM,GAAG,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC;YACnE,uEAAuE;YACvE,oEAAoE;YACpE,yEAAyE;YACzE,0EAA0E;YAC1E,MAAM,UAAU,GAAG,yBAAyB,CAAC,YAAY,CAAC,CAAC;YAC3D,MAAM,WAAW,GAAG,UAAU,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,mBAAmB,CAAC,UAAU,CAAC,CAAC;YAC9E,IAAI,SAAkB,CAAC;YACvB,IAAI,CAAC;gBACH,SAAS,GAAG,MAAM,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;YACxC,CAAC;YAAC,OAAO,KAAc,EAAE,CAAC;gBACxB,MAAM,WAAW,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;gBAC3E,MAAM,CAAC,KAAK,CACV,mDAAmD,EACnD,qBAAqB,CAAC,oBAAoB,CAAC;oBACzC,SAAS,EAAE,mBAAmB;oBAC9B,iBAAiB,EAAE;wBACjB,QAAQ;wBACR,WAAW;wBACX,eAAe,EAAE,YAAY,CAAC,SAAS,CAAC,CAAC,EAAE,GAAG,CAAC;qBAChD;iBACF,CAAC,CACH,CAAC;gBACF,MAAM,kBAAkB,CACtB,2CAA2C,WAAW,EAAE,EACxD;oBACE,MAAM,EAAE,uBAAuB;oBAC/B,QAAQ;oBACR,WAAW;oBACX,eAAe,EAAE,YAAY,CAAC,SAAS,CAAC,CAAC,EAAE,GAAG,CAAC;iBAChD,EACD,EAAE,KAAK,EAAE,KAAK,EAAE,CACjB,CAAC;YACJ,CAAC;YAED,IAAI,CAAC,UAAU,EAAE,CAAC;gBAChB,MAAM,SAAS,GAAG,SAAoC,CAAC;gBACvD,MAAM,QAAQ,GAAG,WAAW,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,WAAW,CAAC,SAAS,EAAE,IAAI,CAAC,KAAK,SAAS,CAAC,CAAC;gBACxF,IAAI,QAAQ,EAAE,CAAC;oBACb,IAAI,CAAC,cAAc,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;gBAC3C,CAAC;YACH,CAAC;YAED,IAAI,OAAO,EAAE,YAAY,EAAE,CAAC;gBAC1B,MAAM,CAAC,KAAK,CACV,4CAA4C,EAC5C,qBAAqB,CAAC,oBAAoB,CAAC;oBACzC,SAAS,EAAE,YAAY;oBACvB,iBAAiB,EAAE,EAAE,QAAQ,EAAE;iBAChC,CAAC,CACH,CAAC;gBACF,OAAO,YAAiB,CAAC;YAC3B,CAAC;YAED,MAAM,CAAC,KAAK,CACV,mCAAmC,EACnC,qBAAqB,CAAC,oBAAoB,CAAC;gBACzC,SAAS,EAAE,gBAAgB;gBAC3B,iBAAiB,EAAE,EAAE,QAAQ,EAAE;aAChC,CAAC,CACH,CAAC;YACF,OAAO,SAAc,CAAC;QACxB,CAAC;QAED,IAAI,OAAO,KAAK,MAAM,EAAE,CAAC;YACvB,MAAM,CAAC,KAAK,CACV,kCAAkC,EAClC,qBAAqB,CAAC,oBAAoB,CAAC;gBACzC,SAAS,EAAE,eAAe;gBAC1B,iBAAiB,EAAE,EAAE,QAAQ,EAAE,OAAO,EAAE;aACzC,CAAC,CACH,CAAC;YAEF,IAAI,MAAe,CAAC;YACpB,IAAI,CAAC;gBACH,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;YACpC,CAAC;YAAC,OAAO,KAAc,EAAE,CAAC;gBACxB,MAAM,kBAAkB,CACtB,qCAAqC,EACrC;oBACE,MAAM,EAAE,uBAAuB;oBAC/B,QAAQ;oBACR,eAAe,EAAE,YAAY,CAAC,SAAS,CAAC,CAAC,EAAE,GAAG,CAAC;iBAChD,EACD,EAAE,KAAK,EAAE,KAAK,EAAE,CACjB,CAAC;YACJ,CAAC;YAED,IAAI,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,OAAO,IAAI,MAAM,EAAE,CAAC;gBAC9D,MAAM,YAAY,GAAG,MAAM,CAAE,MAAkC,CAAC,KAAK,CAAC,CAAC;gBACvE,MAAM,CAAC,KAAK,CACV,8CAA8C,EAC9C,qBAAqB,CAAC,oBAAoB,CAAC;oBACzC,SAAS,EAAE,eAAe;oBAC1B,iBAAiB,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE,YAAY,EAAE;iBACrD,CAAC,CACH,CAAC;gBACF,IAAI,uBAAuB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,EAAE,CAAC;oBAC9D,MAAM,QAAQ,CAAC,mBAAmB,YAAY,EAAE,EAAE;wBAChD,MAAM,EAAE,yBAAyB;wBACjC,QAAQ;wBACR,UAAU,EAAE,CAAC,YAAY,CAAC;qBAC3B,CAAC,CAAC;gBACL,CAAC;gBACD,MAAM,kBAAkB,CAAC,mBAAmB,YAAY,EAAE,EAAE;oBAC1D,MAAM,EAAE,kBAAkB;oBAC1B,QAAQ;oBACR,UAAU,EAAE,CAAC,YAAY,CAAC;iBAC3B,CAAC,CAAC;YACL,CAAC;YAED,MAAM,CAAC,KAAK,CACV,oCAAoC,EACpC,qBAAqB,CAAC,oBAAoB,CAAC;gBACzC,SAAS,EAAE,iBAAiB;gBAC5B,iBAAiB,EAAE,EAAE,QAAQ,EAAE;aAChC,CAAC,CACH,CAAC;YACF,OAAO,MAAW,CAAC;QACrB,CAAC;QAED,MAAM,CAAC,OAAO,CACZ,sBAAsB,OAAO,iCAAiC,EAC9D,qBAAqB,CAAC,oBAAoB,CAAC;YACzC,SAAS,EAAE,oBAAoB;YAC/B,iBAAiB,EAAE,EAAE,QAAQ,EAAE,OAAO,EAAE;SACzC,CAAC,CACH,CAAC;QACF,OAAO,YAAiB,CAAC;IAC3B,CAAC;CACF"}
@@ -33,24 +33,17 @@ export interface NcbiRequestOptions {
33
33
  */
34
34
  signal?: AbortSignal;
35
35
  /**
36
- * Parse XML in `preserveOrder: true` mode (returns `JatsNodeList`). Required
37
- * for JATS mixed-content responses (PMC full-text) where inline element order
38
- * must be preserved in the output. Leave false for all other E-utilities.
36
+ * Parse XML in `preserveOrder: true` mode (returns `JatsNodeList`), with tag
37
+ * values kept as text and whitespace untrimmed. Required for JATS
38
+ * mixed-content responses (PMC full-text), where inline element order must
39
+ * be preserved, and for ESpell, whose `<SpelledQuery>` segments are read in
40
+ * document order with their spacing and whose echoed `<Query>` must not be
41
+ * coerced to a number (`007`, `1e5`). Leave false for all other E-utilities.
42
+ * (#108, #241)
39
43
  */
40
44
  useOrderedParser?: boolean;
41
45
  /** Force HTTP POST (for large payloads). */
42
46
  usePost?: boolean;
43
- /**
44
- * Parse XML with `parseTagValue: false` while keeping the flat, named-key
45
- * object shape (`response.eSpellResult.Query`). Required wherever a response
46
- * echoes an arbitrary caller-supplied token that must survive verbatim: the
47
- * coercing default turns `007` into `7` and `1e5` into `100000` before any
48
- * application code runs, so a read-site `String()` cannot recover the text.
49
- * Distinct from `useOrderedParser`, which also sets `preserveOrder` and hands
50
- * back a document-ordered node array. Ignored when `useOrderedParser` is set.
51
- * (#108)
52
- */
53
- useVerbatimParser?: boolean;
54
47
  }
55
48
  /**
56
49
  * Runtime options accepted by public NCBI service methods.
@@ -65,6 +58,8 @@ export interface NcbiCallOptions {
65
58
  */
66
59
  export interface ParseFullArticleOptions {
67
60
  includeGrants?: boolean;
61
+ /** Read `MedlineCitation/InvestigatorList` into `investigators`. (#216) */
62
+ includeInvestigators?: boolean;
68
63
  includeMesh?: boolean;
69
64
  }
70
65
  export interface XmlTextElement {
@@ -90,6 +85,18 @@ export interface XmlAuthor {
90
85
  Identifier?: XmlIdentifier[] | XmlIdentifier;
91
86
  Initials?: XmlTextElement;
92
87
  LastName?: XmlTextElement;
88
+ /** Generational suffix as NCBI writes it — `Jr`, `2nd`, `3rd`, `4th` — never normalized. */
89
+ Suffix?: XmlTextElement;
90
+ }
91
+ /**
92
+ * One member of a collective author, from `InvestigatorList`. The DTD gives an
93
+ * investigator an author's person fields but no `CollectiveName`:
94
+ * `(LastName, ForeName?, Initials?, Suffix?, Identifier*, AffiliationInfo*)`. (#216)
95
+ */
96
+ export type XmlInvestigator = Omit<XmlAuthor, 'CollectiveName'>;
97
+ /** `MedlineCitation/InvestigatorList` — repeatable, one or more `Investigator` each. */
98
+ export interface XmlInvestigatorList {
99
+ Investigator?: XmlInvestigator[] | XmlInvestigator;
93
100
  }
94
101
  export interface XmlAuthorList {
95
102
  '@_CompleteYN'?: 'Y' | 'N';
@@ -225,6 +232,7 @@ export interface XmlMedlineCitation {
225
232
  GeneralNote?: (XmlTextElement & {
226
233
  '@_Owner'?: string;
227
234
  })[];
235
+ InvestigatorList?: XmlInvestigatorList[] | XmlInvestigatorList;
228
236
  KeywordList?: XmlKeywordList[] | XmlKeywordList;
229
237
  MeshHeadingList?: XmlMeshHeadingList;
230
238
  PMID: XmlPMID;
@@ -319,6 +327,23 @@ export interface ParsedArticleAuthor {
319
327
  initials?: string;
320
328
  lastName?: string;
321
329
  orcid?: string;
330
+ /** Generational suffix verbatim from NCBI `Suffix` (`Jr`, `2nd`). Absent when NCBI gives none. (#226) */
331
+ suffix?: string;
332
+ }
333
+ /**
334
+ * A member of a collective author, from `InvestigatorList`. Not an author: kept
335
+ * apart from {@link ParsedArticleAuthor}, and no citation style lists one. A name
336
+ * part the record lacks is omitted, never `""`. `affiliationIndices` point into
337
+ * the article's `affiliations`, where investigator affiliations follow the
338
+ * authors' own. (#216)
339
+ */
340
+ export interface ParsedInvestigator {
341
+ affiliationIndices?: number[];
342
+ firstName?: string;
343
+ initials?: string;
344
+ lastName?: string;
345
+ orcid?: string;
346
+ suffix?: string;
322
347
  }
323
348
  export interface ParsedArticleDate {
324
349
  dateType?: string;
@@ -394,6 +419,7 @@ export interface ParsedBookEditor {
394
419
  firstName?: string;
395
420
  initials?: string;
396
421
  lastName?: string;
422
+ suffix?: string;
397
423
  }
398
424
  /**
399
425
  * The containing book of a `book-chapter`, or the book itself for a `book`
@@ -448,6 +474,12 @@ export interface ParsedArticle {
448
474
  commentsCorrections?: ParsedCommentsCorrection[];
449
475
  doi?: string;
450
476
  grantList?: ParsedGrant[];
477
+ /**
478
+ * Every `InvestigatorList` entry, lists flattened in upstream order, uncapped.
479
+ * Set only when requested and the record carries at least one; journal
480
+ * articles only, as a Bookshelf record's list is never read. (#216)
481
+ */
482
+ investigators?: ParsedInvestigator[];
451
483
  /**
452
484
  * Absent on `book-chapter` and `book` records — a Bookshelf record has no
453
485
  * journal, and the book title is never promoted into one.
@@ -652,25 +684,18 @@ export interface ESearchResult {
652
684
  warningList?: ESearchWarningList;
653
685
  webEnv?: string;
654
686
  }
655
- /** Normalized ESpell result. */
687
+ /**
688
+ * Normalized ESpell result. The response is read with the ordered parser (a
689
+ * `JatsNodeList`), so no raw container type is declared for it.
690
+ */
656
691
  export interface ESpellResult {
692
+ /** The caller's query with ESpell's accepted replacements applied; `original` when none was. */
657
693
  corrected: string;
694
+ /** Whether at least one replacement was applied. */
658
695
  hasSuggestion: boolean;
696
+ /** The query as ESpell echoed it. */
659
697
  original: string;
660
698
  }
661
- /**
662
- * Raw parsed XML container for eSpellResult. `Query` and `CorrectedQuery` are
663
- * strings at runtime as well as in this declaration: the ESpell request opts
664
- * into `useVerbatimParser`, so the coercing default parser never sees the
665
- * echoed term. (#108)
666
- */
667
- export interface ESpellResponseContainer {
668
- eSpellResult: {
669
- Query?: string;
670
- CorrectedQuery?: string;
671
- SpelledQuery?: unknown;
672
- };
673
- }
674
699
  export interface EFetchArticleSet {
675
700
  articles: ParsedArticle[];
676
701
  }
@@ -682,6 +707,13 @@ export interface ParsedPmcArticle {
682
707
  /** Figures and supplementary material, in document order. Absent when the article carries none. */
683
708
  assets?: ParsedPmcAsset[];
684
709
  authors?: ParsedPmcAuthor[];
710
+ /**
711
+ * Back-matter sections — every `<back>` child but `<ref-list>`, in source
712
+ * order. Kept apart from `sections` so a record with back matter and no body
713
+ * still reads as bodyless; the tool appends them after the body. Absent when
714
+ * `<back>` carries none. (#206)
715
+ */
716
+ backSections?: ParsedPmcSection[];
685
717
  doi?: string;
686
718
  journal?: ParsedPmcJournal;
687
719
  keywords?: string[];
@@ -731,10 +763,13 @@ export interface ParsedPmcAsset {
731
763
  href?: string;
732
764
  /** The `id` attribute, when the deposit carries one. */
733
765
  id?: string;
734
- /** Display label, e.g. `Fig. 1`. */
766
+ /**
767
+ * Display label, e.g. `Fig. 1`, without the one trailing ` |`, `.` or `:` some
768
+ * deposits print after it (`Figure 1.` reads `Figure 1`).
769
+ */
735
770
  label?: string;
736
771
  /**
737
- * Title of the innermost enclosing `<sec>` wherever it sits — body, back
772
+ * Title of the innermost enclosing section wherever it sits — body, back
738
773
  * matter, or appendix. Absent for a `<floats-group>` deposit, which sits in no
739
774
  * section at all.
740
775
  */
@@ -745,6 +780,8 @@ export interface ParsedPmcAuthor {
745
780
  collectiveName?: string;
746
781
  givenNames?: string;
747
782
  lastName?: string;
783
+ /** JATS `<name>/<suffix>` verbatim (`IV`, `Jr`). Absent when the deposit gives none. (#226) */
784
+ suffix?: string;
748
785
  }
749
786
  /** Parsed PMC journal info. */
750
787
  export interface ParsedPmcJournal {
@@ -798,12 +835,15 @@ export interface ParsedPmcTable {
798
835
  headerRowCount: number;
799
836
  /** The `id` attribute, when the deposit carries one. */
800
837
  id?: string;
801
- /** Display label, e.g. `TABLE 1`. */
838
+ /**
839
+ * Display label, e.g. `TABLE 1`, without the one trailing ` |`, `.` or `:`
840
+ * some deposits print after it (`Table 1.` reads `Table 1`).
841
+ */
802
842
  label?: string;
803
843
  /** Cell text by grid column, spans expanded. Empty when unextractable. */
804
844
  rows: string[][];
805
845
  /**
806
- * Title of the innermost enclosing `<sec>` wherever it sits — body, back
846
+ * Title of the innermost enclosing section wherever it sits — body, back
807
847
  * matter, or appendix. Absent only for a table inside no section at all.
808
848
  */
809
849
  sectionTitle?: string;