Skip to content

Transformers reject 88 records: missing born-digital rights metadata, MeSH ids in LoC fields, TEI nodes without ids #6472

Description

@kenoir

What is happening

During the #6445 reindex, 88 records dead-lettered out of the 2026-07-03 transformers and stayed there on redrive. All three sets fail deterministically at transform with source-data problems, each hitting a deliberate strictness guard in the transformer. They are three separate problems with three likely owners, described together here because they were found together; split out as needed.

None of this blocks comparison (#6464): 88 known-absent works out of 3.04M, ids listed below.

1. Sierra: MeSH identifiers in Library of Congress fields, introduced by the FOLIO migration

10 bibs fail with Could not determine LoC scheme from id 'D002378' (and similar). Each carries a MeSH identifier (D-prefix) in a MARC field whose indicator claims an LoC scheme. The transformer guard is intentional (MarcHasRecordControlNumber.scala: "Common mistakes include MeSH ids marked as LoC ids... Guard against these by rejecting the identifier"), so these records are miscatalogued.

Two aggravations. All ten were updated on 2026-07-22 with a dl3 folio migration note, so the migration tooling probably introduced the pattern and further batches may add more. And this is live in production, not reindex-only: the production Sierra DLQ currently holds 7 of the same records.

Decisions needed: fix the records (cataloguing or migration tooling), and separately whether the transformer should drop an invalid identifier with a warning rather than rejecting the whole work. The guard is also what keeps miscatalogued ids from leaking into the API as false LCSH links, so softening it is a real trade-off rather than an obvious win.

Sierra bib numbers (10)
  • 2026566
  • 2111917
  • 2849020
  • 2870262
  • 3043181
  • 3048931
  • 3287382
  • 3320231
  • 3395873
  • 3396313

2. METS: born-digital packages without a premis rightsMD element

68 born-digital Archivematica packages fail with Archivematica Mets file must contain a premis-compatible rightsMD element, about 2.6% of born-digital. The strictness was provisional when written; the check in MetsXml.scala carries the comment "I don't yet know if this is strictly true, or whether we can define a default value for any missing ones", and these packages are the case it was unsure about.

Decision needed: either re-ingest the packages with rights metadata, or answer the code's own question by defining a default access condition (presumably closed) for born-digital packages without one. The second is a small transformer change once digital production confirms the default.

METS identifiers (68)
  • PPCNE/D/3/19
  • PPGRF/A/36/41
  • PPGRF/H/35/36A
  • PPJLE/A/30/3
  • PPKIN/A/2/21/2
  • PPKIN/B/2/9/5
  • PPKIN/B/2/9/6
  • PPKIN/H/5
  • PPKZR/E/52a
  • PPKZR/G/8
  • PPMDM/A/1/1a
  • PPMDM/A/1/2a
  • PPMDM/A/1/2b
  • PPMDM/A/2/10
  • PPMDM/A/3/1a
  • PPMDM/A/3/3/1a
  • PPMDM/A/3/4a
  • PPMDM/A/3/5/3
  • PPMDM/A/4/1a
  • PPMDM/A/4/4a
  • PPMDM/A/5a
  • PPMDM/B/20
  • PPMDM/C/1a
  • PPMDM/C/2a
  • PPMYG/A/4/19/4
  • PPROS/K/3/1
  • PPROS/K/3/2
  • SA/CER/A/7
  • SA/REN/B/21/1
  • SA/REN/T/1
  • SA/REN/T/2
  • SA/REN/T/3
  • SA/REN/T/4
  • SA/REN/T/5
  • SABIO/M/8
  • SAHEC/B/20/5
  • SAIPA/A/8/8a
  • SANNS/H/1
  • SAREN/N/3/2
  • SASRH/A/1/2
  • SASRH/A/3/2
  • SASRH/B/40/2
  • SASRH/B/40/3
  • SASRH/B/42
  • SASRH/C/2/3
  • SASRH/D/5
  • SAWFO/J/1
  • SAWFO/J/2/1
  • SAWFO/J/2/2
  • SAWFO/J/2/3
  • SAWFO/J/3
  • SAWFO/J/5
  • SAWFO/J/6
  • SAWFO/J/7
  • SAWFO/J/8
  • b1458606x
  • b20442117
  • b21705938
  • b2170594x
  • b24873342
  • b24875831
  • b31360051
  • b33014772
  • b33508082
  • b33511196
  • b33670912
  • b33671564
  • b33672520

3. TEI: manuscript nodes without an id

10 manuscripts fail with Could not find an id in node! (TeiOps.scala): nodes in the TEI XML missing the id attribute the transformer requires. The TEI files are hand-maintained in the wellcome-collection-tei repository, so this is markup to fix upstream rather than a transformer change; the strictness is guarding real malformation.

TEI manuscript ids (10)
  • manuscript_16057
  • manuscript_16082
  • manuscript_16094
  • manuscript_16417
  • manuscript_16441
  • manuscript_16460
  • manuscript_16464
  • manuscript_16475
  • manuscript_16514
  • manuscript_16530

Evidence

Diagnosis on #6445 (2026-08-03 comment): every id fails with an identical error across the original run, SQS retries and a redrive, so all three classes are deterministic. The DLQ messages age out after 14 days; the id lists above are the durable record.

Metadata

Metadata

Assignees

No one assigned

    Labels

    WC systems transformationWellcome Collection Systems Transformation Project

    Type

    No type

    Projects

    Status
    Q4 Sprint 3 29 Jul (34 est)

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions