ActiveManage Docs ← Back to activemanage.co.uk

Document Indexing

Indexing Document Contents

Document indexing extracts the text from uploaded files (PDF, Word, Excel, slides, plain text) and stores it in the search index. After indexing, full-text search finds the document by its contents rather than just by filename.

Document record showing a status panel: indexed at 2026-02-14, text length 23k chars, OCR not required, extracted preview shown in collapsible section

How It Works

  1. File uploaded and stored.
  2. An index task is queued.
  3. Worker picks the file, runs the appropriate extractor:
    • PDF: pdftotext (Poppler) or pdfminer.
    • Word: docx / mammoth.
    • Excel: openpyxl / xlsx2csv.
    • PowerPoint: python-pptx.
    • Plain text / HTML: read directly with UTF-8 detection.
    • Scanned image / image PDF: Tesseract OCR (when enabled).
  4. Extracted text fed to the search engine (typically Elasticsearch or MeiliSearch).
  5. Document record updated with extraction status, length and a short preview.

OCR for Scanned Documents

Scanned PDFs and images contain no machine-readable text. With OCR enabled, the platform runs Tesseract over the rendered pages to recover text. This is slow (1-3 sec per page) so OCR is opt-in per upload field or per file type.

Worked Examples

  • Internal contracts library: Every PDF indexed; lawyers search by contract content (“force majeure”) rather than filename.
  • Public knowledge base: Index articles and embedded attachments so site search returns the right doc.
  • Compliance archives: Scanned policy docs OCR'd nightly; auditors search across decades of paperwork.
  • Resume database: Recruiters search CVs by keyword (“Python”, “team lead”).
Note: Don't index sensitive documents that shouldn't appear in general search results. Use the per-document “index = no” flag, or store sensitive material in a designated private path that the indexer skips.

Supported Document Types for Indexing

This article lists which document types the indexer can extract text from, plus notes on quality, speed and known limitations for each.

Table listing document types with three columns: Format, Extractor, Quality. Rows include PDF (Poppler/Tesseract), DOCX (mammoth), XLSX (xlsx2csv), PPTX, HTML, TXT, Markdown, EPUB

Native Text Extraction (Fast)

  • PDF (text-based): Excellent. Most PDFs created from Word/Pages/InDesign are text-based.
  • DOCX: Excellent. Includes headings, lists, and table contents.
  • XLSX: Good. Each sheet's cells extracted; formulas not evaluated.
  • PPTX: Good. Slide titles and body text; speaker notes optionally.
  • RTF: Good. Older Word-compatible format.
  • HTML: Excellent. Tags stripped, text retained.
  • Markdown / plain text: Trivial — read as UTF-8.
  • EPUB: Good. Book chapters extracted.
  • ODT / ODS / ODP: Good. OpenDocument equivalents handled.
  • CSV / TSV: Good. Each row indexed.

OCR Required (Slow)

  • Image PDFs: Scanned documents need OCR; Tesseract is reasonable for English print, less so for handwriting or low-resolution scans.
  • PNG / JPG with text: OCR on the image directly.
  • TIFF: Multi-page TIFF (common for fax archives) supported.

Not Supported (Skip with Warning)

  • Encrypted / password-protected files.
  • Proprietary formats without an open extractor (older AutoCAD, custom binary).
  • Audio/video transcripts (use the AV captioning pipeline instead).
  • Database backups, executable binaries.

Worked Examples

  • Modern contracts library: All PDFs Word-generated; native extraction works perfectly. No OCR needed.
  • 1990s archive: Many scanned PDFs from old fax machines; enable Tesseract, accept some misreads.
  • Engineering knowledge base: PPTX from training materials plus DOCX from procedures; both well-handled.
  • Mixed corporate file dump: Use the per-file status indicator to spot what failed and either re-index after enabling OCR or skip permanently.