Skip to content

Commit 5e74d91

Browse files
authored
Clarify RIS support before 1.4.2 release
1 parent 1a5df5b commit 5e74d91

5 files changed

Lines changed: 58 additions & 7 deletions

File tree

Lines changed: 49 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,49 @@
1+
---
2+
created: 2026-06-23T00:00:00Z
3+
title: Test more reference-manager exports (Mendeley, Zotero, EndNote, etc.)
4+
area: testing
5+
files:
6+
- /Users/danknauss/Developer/GitHub/wp-bibliography-block/src/lib/parser.js
7+
- /Users/danknauss/Developer/GitHub/wp-bibliography-block/src/lib/free-text-parser.js
8+
- /Users/danknauss/Developer/GitHub/wp-bibliography-block/docs/supported-input-style-matrix.md
9+
- /Users/danknauss/Developer/GitHub/wp-bibliography-block/docs/qa-matrix-checklist.md
10+
- /Users/danknauss/Developer/GitHub/wp-bibliography-block/docs/free-text-samples.md
11+
---
12+
13+
## Problem
14+
15+
Input parsing (DOI, PubMed/PMID, BibTeX, free text) is exercised mostly with
16+
hand-authored or single-source samples. Real users will paste exports straight
17+
out of reference managers — Mendeley, Zotero, EndNote, Papers, RefWorks,
18+
JabRef, etc. — and each tool has its own quirks in how it emits BibTeX (entry
19+
types, field naming, brace/escaping conventions, `month` formats, non-ASCII
20+
handling, abstracts/keywords/file fields) and RIS. We don't yet have a
21+
systematic test corpus of real exports, so we can't be confident the parser
22+
handles them gracefully.
23+
24+
## Solution
25+
26+
Build a small corpus of real export files captured from the major reference
27+
managers (start with Zotero and Mendeley, then EndNote/JabRef) covering common
28+
record types: journal article, book, book chapter, conference paper, report,
29+
webpage. Feed each through the parser and verify the resulting CSL-JSON and
30+
rendered citations are correct (or degrade cleanly with a clear notice when a
31+
field/format is unsupported). Capture findings in the supported-input-style
32+
matrix and QA checklist, and add regression fixtures/tests for any
33+
manager-specific quirks that currently break or silently drop data.
34+
35+
Decision: RIS input is explicitly out of scope for now. Borges supports RIS as
36+
an export format for citation-manager interoperability, but not as an import
37+
format. Reference-manager testing should focus first on BibTeX, CSL-JSON, DOI,
38+
PMID, and free-text export paths; revisit RIS import only as a separately scoped
39+
feature.
40+
41+
## Acceptance targets
42+
43+
- A fixtures set of real (anonymized) exports from at least Zotero and Mendeley
44+
across the common record types.
45+
- Parser behavior verified for each; regression tests added for any quirk that
46+
was mishandled.
47+
- `docs/supported-input-style-matrix.md` and `docs/qa-matrix-checklist.md`
48+
updated to reflect which reference-manager exports are supported.
49+
- An explicit in/out-of-scope decision recorded for RIS.

CHANGELOG.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
2222
### Fixed
2323

2424
- Stabilize numeric citation reorder E2E coverage against editor readiness races.
25+
- Clarify that RIS is supported for export, not import.
2526

2627
## [1.4.1] - 2026-06-20
2728

bibliography-builder.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
/**
33
* Plugin Name: Borges Bibliography Builder
44
* Plugin URI: https://github.com/dknauss/Borges/
5-
* Description: Create accessible bibliographies from DOI, PubMed, BibTeX, RIS, CSL-JSON, and manual citations.
5+
* Description: Create accessible bibliographies from DOI, PubMed, BibTeX, CSL-JSON, and free text; export RIS.
66
* Version: 1.4.2
77
* Requires at least: 6.4
88
* Tested up to: 7.0

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
{
22
"name": "borges-bibliography-builder",
33
"version": "1.4.2",
4-
"description": "A WordPress block plugin that creates accessible, structured bibliographies from DOI, PubMed, BibTeX, RIS, CSL-JSON, and manual citation entries.",
4+
"description": "A WordPress block plugin that creates accessible, structured bibliographies from DOI, PubMed, BibTeX, CSL-JSON, free text, and manual entries with RIS export.",
55
"author": "Dan Knauss",
66
"license": "GPL-2.0-or-later",
77
"main": "build/index.js",

readme.txt

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -9,13 +9,13 @@ Requires PHP: 7.4
99
License: GPLv2 or later
1010
License URI: https://www.gnu.org/licenses/gpl-2.0.html
1111

12-
Create accessible, structured bibliographies from DOI, PubMed, BibTeX, RIS, CSL-JSON, and manual citation entries.
12+
Create accessible, structured bibliographies from DOI, PubMed, BibTeX, CSL-JSON, free text, and manual entries — with RIS export.
1313

1414
== Description ==
1515

1616
Named for Jorge Luis Borges (1899–1986), the Argentine writer and librarian known for stories about infinite libraries, imaginary books, and labyrinths of knowledge, Borges Bibliography Builder brings order to scholarly references in WordPress.
1717

18-
The **Borges Bibliography Builder** transforms DOI(s), PubMed/PMID records, BibTeX, RIS, CSL-JSON, manual entries, and supported free-text citations into a semantically rich, deduplicated, auto-sorted reference list.
18+
The **Borges Bibliography Builder** transforms DOI(s), PubMed/PMID records, BibTeX, CSL-JSON, manual entries, and supported free-text citations into a semantically rich, deduplicated, auto-sorted reference list with RIS export for citation managers.
1919

2020
**One-click import.** Paste a DOI and Crossref resolves the metadata instantly. Paste a PubMed/PMID identifier and Borges resolves it through an authenticated WordPress REST proxy to NCBI/PMC citation metadata. Paste BibTeX or formatted citations for books, articles, chapters, webpages, reviews, and theses.
2121

@@ -40,7 +40,7 @@ The **Borges Bibliography Builder** transforms DOI(s), PubMed/PMID records, BibT
4040
1. Upload the plugin files to `/wp-content/plugins/borges-bibliography-builder/`, or install directly through the WordPress plugin screen.
4141
2. Activate the plugin through the 'Plugins' screen in WordPress.
4242
3. Add the "Bibliography" block to any post or page.
43-
4. Paste DOI(s), PubMed/PMID identifiers, BibTeX, RIS, CSL-JSON, or supported citations for books, articles, chapters, and webpages — or add citations manually.
43+
4. Paste DOI(s), PubMed/PMID identifiers, BibTeX, CSL-JSON, or supported citations for books, articles, chapters, and webpages — or add citations manually.
4444

4545
== Frequently Asked Questions ==
4646

@@ -52,7 +52,7 @@ The package includes seed PO/MO files for translator review and import in French
5252

5353
= What citation input formats does the Borges Bibliography Builder support? =
5454

55-
Bare DOIs, DOI URLs, PubMed/PMID identifiers, BibTeX, RIS, CSL-JSON, manual citation entries, and supported formatted citations for books, articles, chapters, webpages, reviews, and theses/dissertations. Free-text citations that include an inline DOI or labeled PMID are routed through the DOI/PubMed resolvers before falling back to the heuristic parser. You can paste multiple entries at once, up to 50 per paste, and each bibliography holds up to 200 citations in total.
55+
Bare DOIs, DOI URLs, PubMed/PMID identifiers, BibTeX, CSL-JSON, manual citation entries, and supported formatted citations for books, articles, chapters, webpages, reviews, and theses/dissertations. Free-text citations that include an inline DOI or labeled PMID are routed through the DOI/PubMed resolvers before falling back to the heuristic parser. RIS is supported as an export format, not as an import format. You can paste multiple entries at once, up to 50 per paste, and each bibliography holds up to 200 citations in total.
5656

5757
= Does the ABNT style implement NBR 6023:2018? =
5858

@@ -94,7 +94,7 @@ PHP 7.4+ and WordPress 6.4+. Borges Bibliography Builder is tested up to WordPre
9494

9595
1. Front-end bibliography output with hanging indents, italic titles, and linked DOIs, styled by the active theme.
9696
2. Discover the Bibliography block in the block inserter by searching for "Bibliography."
97-
3. Paste DOIs, PubMed/PMID identifiers, BibTeX, RIS, CSL-JSON, or free-text citations into the import form; hover any entry to reveal copy, edit, and delete actions.
97+
3. Paste DOIs, PubMed/PMID identifiers, BibTeX, CSL-JSON, or free-text citations into the import form; hover any entry to reveal copy, edit, and delete actions.
9898
4. Switch to Manual Entry to build a citation field by field — Publication Type, Author, Title, Container, Publisher, Year, Pages, DOI, and URL.
9999
5. Correct imported or free-text citations in place with the structured field editor — fix individual fields without retyping the whole entry.
100100
6. For numbered styles such as IEEE and Vancouver, reorder entries with the up and down controls (or Alt+Arrow keys) to set citation numbering.
@@ -142,6 +142,7 @@ PubMed/PMID input connects through the plugin's authenticated WordPress REST pro
142142
* Fall back from embedded-identifier resolution to the heuristic free-text parser before showing unsupported-input guidance.
143143
* Add free-text sample documentation for supported embedded DOI/PMID citation inputs.
144144
* Stabilize numeric citation reorder E2E coverage against editor readiness races.
145+
* Clarify that RIS is supported for export, not import.
145146

146147
= 1.4.1 =
147148
* Clean up after the plugin when it is deleted: uninstalling now removes the plugin's cached data — the formatter and PubMed/PMID transients (across all sites on multisite) and its object-cache groups where the host supports it. Bibliography blocks already saved in your posts are left untouched.

0 commit comments

Comments
 (0)