Guide

PDF Extraction user guide

How editors and researchers work with topline survey PDF extractions in WordPress admin.

What this does

The feature reads topline survey PDFs attached to report articles and converts them to structured text. Each extraction is a web page so content is:

  • Searchable by researchers and the public
  • Accessible to AI assistants via Markdown and plain-text endpoints
  • Discoverable through structured data and /llms.txt

How extraction works

Extraction runs when a topline PDF is attached to a report via reportMaterials (manual trigger from the editor, or ops via WP-CLI):

  1. OCR runs through Claude (Gemini fallback).
  2. Text is stored as a pdf_extraction child post of the report.
  3. Public URLs expose Markdown and plain text.

Trigger from the block editor

  1. Open the report that has a topline PDF in reportMaterials.
  2. Open the PDF Extraction sidebar panel.
  3. Click Extract Topline to queue the job.
  4. Refresh in 1–2 minutes. Status shows pending, complete, or failure.
  5. Use Extraction Status for none / pending / complete and the extraction ID link when complete.

Read results in wp-admin

Open PDF Extractions (or navigate from the parent report). Meta boxes show:

AreaContents
PDF Source InformationAttachment ID, source URL, reportMaterials label
OCR ResultsProvider, confidence (0–1), character count, plain text, Markdown
Validation Resultspassed / warning / failed and issue list
Processing MetadataProvider, date, estimated cost, duration

Public URLs

FormatPatternUse
Markdown/{report-slug}/extractionResearchers, AI tools
Plain text/{report-slug}/textSimple text / citation tools

Example for a politics report slug path: append /extraction or /text to the report permalink.

Quality guide

ConfidenceMeaningAction
0.85–1.0ExcellentNone
0.70–0.85GoodSpot-check a few questions
0.50–0.70FairReview against the PDF
Below 0.50PoorRe-trigger via engineering; escalate if repeated

Validation statuses: passed (thresholds met), warning (usable but review Issues), failed (unreliable).

Discovery

Extractions are listed in /llms.txt, included in the XML sitemap path for the CPT, emit JSON-LD DigitalDocument on the parent report, and expose <link rel="alternate"> tags to the extraction endpoints.

Was this helpful?