skillfed

zope.index

Indices for using with catalog like text, field, etc.

zope-index v8.1 76.3K downloads/30d#14,636 on PyPI11
License unclear ZPL-2.1 Active released

What it is and what it does

zope.index is a collection of indexing data structures designed for use with Zope catalogs. It provides four main index types: field indices for orderable values, keyword indices, topic indices, and text indices with pluggable lexicon, splitter, and normalizer components. The package sits in the Zope ecosystem and depends on BTrees for tree storage, persistent for object persistence, and zope.interface for interface definitions.

Developers use zope.index when building catalog systems that need to efficiently search and retrieve objects by various criteria. It's primarily relevant for Zope-based applications or systems that adopt the Zope catalog pattern. The package is actively maintained, supports Python 3.10 through 3.14, and has no known security vulnerabilities.

Use it for:

  • Index orderable fields (dates, numbers, strings) in a Zope catalog for range queries and sorted retrieval
  • Build keyword-based search indices for tagging and multi-value attribute lookups
  • Create full-text search indices with custom tokenization, normalization, and lexicon handling
  • Implement topic indices for hierarchical or categorical object classification in catalog systems

Worth the install?

AI-flagged interpretation of the facts on this page — verify before relying

zope.index provides indexing structures for Zope catalogs, including field, keyword, topic, and text indices with support for lexicon, splitter, and normalizer customization.

Yes, if you are building a Zope-based application or adopting the Zope catalog pattern. The package is stable, actively maintained, and has no known vulnerabilities. However, verify the ZPL-2.1 license implications for your project first, as license treatment is marked unclear. Not recommended for general Python search/indexing needs outside the Zope ecosystem.

Install

zope-index on PyPI

pip

pip install zope-index

uv

uv add zope-index

poetry

poetry add zope-index

Installing zope.index

Before you install

Medium install friction due to compiled wheels across multiple platforms and Python versions. Active maintenance with recent commits; last release 269 days ago. Depends on BTrees, persistent, and zope.interface—all established Zope ecosystem packages.

License in practice

Licensed under ZPL-2.1 (Zope Public License), but license treatment is marked unclear in the fact sheet. Verify licensing implications for your use case before relying on this package in proprietary or restricted-license projects.

Quickstart

pip install zope.index

from zope.index.field import FieldIndex
index = FieldIndex('field_name')

Requires Python 3.10 or later; depends on BTrees, persistent, and zope.interface packages.

Verify before relying

  • Exact scope and performance characteristics of each index type (field, keyword, topic, text) for different data scales
  • Whether text index lexicon/splitter/normalizer customization is documented with examples
  • Integration patterns with Zope catalog systems outside the Zope framework itself

Package facts

License ZPL-2.1 (unclear)
Python support supports the current Python release (>=3.10)
Install friction medium — platform-specific wheel
Runtime dependencies 3 — BTrees, persistent, zope.interface
Maintenance actively maintained — 269 days since the last release
Last repo commit
First released
Downloads 76,309/month — #14,636 on PyPI (30-day window, as of 2026-08-14)
Known vulnerabilities none known (OSV.dev, checked 2026-08-14)

Evidence: zope_index-8.1-cp310-cp310-macosx_10_9_x86_64.whl; zope_index-8.1-cp310-cp310-macosx_11_0_arm64.whl; zope_index-8.1-cp310-cp310-manylinux1_i686.manylinux2014_i686.manylinux_2_17_i686.manylinux_2_5_i686.whl; zope_index-8.1-cp310-cp310-manylinux1_x86_64.manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_5_x86_64.whl; zope_index-8.1-cp310-cp310-manylinux2014_aarch64.manylinux_2_17_aarch64.whl; zope_index-8.1-cp310-cp310-win_amd64.whl; zope_index-8.1-cp311-cp311-macosx_10_9_x86_64.whl; zope_index-8.1-cp311-cp311-macosx_11_0_arm64.whl; zope_index-8.1-cp311-cp311-manylinux1_i686.manylinux2014_i686.manylinux_2_17_i686.manylinux_2_5_i686.whl; zope_index-8.1-cp311-cp311-manylinux1_x86_64.manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_5_x86_64.whl; zope_index-8.1-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.whl; zope_index-8.1-cp311-cp311-win_amd64.whl; zope_index-8.1-cp312-cp312-macosx_10_9_x86_64.whl; zope_index-8.1-cp312-cp312-macosx_11_0_arm64.whl; zope_index-8.1-cp312-cp312-manylinux1_i686.manylinux2014_i686.manylinux_2_17_i686.manylinux_2_5_i686.whl; zope_index-8.1-cp312-cp312-manylinux1_x86_64.manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_5_x86_64.whl; zope_index-8.1-cp312-cp312-manylinux2014_aarch64.manylinux_2_17_aarch64.whl; zope_index-8.1-cp312-cp312-win_amd64.whl; zope_index-8.1-cp313-cp313-macosx_10_9_x86_64.whl; zope_index-8.1-cp313-cp313-macosx_11_0_arm64.whl

Keywords: zope, index

Development Status :: 5 - Production/StableFramework :: Zope :: 3Intended Audience :: DevelopersOperating System :: OS IndependentProgramming Language :: PythonProgramming Language :: Python :: 3Programming Language :: Python :: 3 :: OnlyProgramming Language :: Python :: 3.10Programming Language :: Python :: 3.11Programming Language :: Python :: 3.12Programming Language :: Python :: 3.13Programming Language :: Python :: 3.14Programming Language :: Python :: Implementation :: CPythonProgramming Language :: Python :: Implementation :: PyPy

Tags

zope catalog indexingfield index keyword indextext index with lexiconzope search indicescatalog index structurestopic index zopeorderable value indexing
zope-ecosystemcatalog-indexing

More Database packages