MultiMapping
Special MultiMapping objects used in Zope.
What it is and what it does
MultiMapping is a specialized data structure from the Zope ecosystem that implements multi-level dictionary-like objects. It allows you to stack multiple mappings and look up keys across them in order, with fallback to the next layer if a key is not found. The package is mature (first released in 2010) and is primarily used internally by Zope components like ZRDB for managing layered configuration or request-scoped data.
The package depends only on ExtensionClass and is available as a pure-Python wheel, making installation straightforward. It supports modern Python versions (3.10–3.14) and both CPython and PyPy. Unless you are working directly with Zope internals or ZRDB, you are unlikely to need this package directly—it is typically pulled in as a transitive dependency of larger Zope applications.
Use it for:
- Building layered configuration systems where keys resolve through multiple fallback dictionaries.
- Implementing request-scoped variable lookup in Zope web applications.
- Supporting ZRDB database query parameter resolution with multiple scopes.
- Creating namespace hierarchies where inner scopes shadow outer ones.
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
MultiMapping provides special mapping objects used internally by Zope, particularly in ZRDB, that support multiple layers of key lookups with fallback behavior.
Yes, if you are working with Zope or ZRDB and need its multi-level mapping behavior. No, if you are not already in the Zope ecosystem—standard Python dictionaries or ChainMap cover most use cases. The package is actively maintained, has no known vulnerabilities, and installs cleanly, but its utility is narrow and domain-specific.
Install
multimapping on PyPI
pip
pip install multimappinguv
uv add multimappingpoetry
poetry add multimappingInstalling MultiMapping
Before you install
Low install friction with a pure-Python wheel. Actively maintained as of 2026-01-23 with recent Python version support (3.10–3.14). Single dependency on ExtensionClass.
License in practice
Licensed under ZPL-2.1 with unclear treatment classification. Review the license terms if you have specific compliance requirements before adopting.
Quickstart
pip install MultiMapping
from MultiMapping import MultiMapping
mm = MultiMapping([{'a': 1}, {'b': 2}])
print(mm['a']) # accesses first mapping
Requires Python 3.10 or later.
Verify before relying
- Whether MultiMapping is necessary for typical Zope applications or only for advanced ZRDB use cases.
- Performance characteristics when layering many mappings or with large dictionaries.
- Real-world usage patterns outside the Zope framework ecosystem.
Package facts
| License | ZPL-2.1 (unclear) |
| Python support | supports the current Python release (>=3.10) |
| Install friction | low — pure-Python wheel |
| Runtime dependencies | 1 — ExtensionClass |
| Maintenance | actively maintained — 203 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 130,367/month — #11,644 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: multimapping-5.1-py3-none-any.whl
Tags
More Application Frameworks packages
FastAPI is a Python web framework for building…
permissive · top 100 on PyPI
annotated-docProvides a way to document function parameters,…
permissive · top 100 on PyPI
textualTextual is a Python framework for building…
permissive · top 100 on PyPI
typerTyper builds command-line applications from…
permissive · top 1,000 on PyPI
mcpBuild and connect to Model Context Protocol…
permissive · top 1,000 on PyPI
WerkzeugWerkzeug is a WSGI utility library providing…
permissive · top 1,000 on PyPI
zope.browsermenuProvides browser menu implementation and ZCML…
unclear · top 15,000 on PyPI
zExceptionszExceptions provides a collection of exception…
unclear · top 15,000 on PyPI
zope.proxyzope.proxy provides transparent wrapper objects…
unclear · top 15,000 on PyPI
zope.configurationZope.configuration provides an extensible…
unclear · top 5,000 on PyPI
zope.sequencesortSorts sequences by multiple keys with support…
unclear · top 15,000 on PyPI
zope.annotationStores additional metadata on objects without…
unclear · top 15,000 on PyPI
ZODBZODB is an object-oriented database for Python…
unclear · top 15,000 on PyPI
zope.traversingResolves object paths by traversing an object…
unclear · top 15,000 on PyPI
zope.schemaDefines structured data schemas for Python…
unclear · top 5,000 on PyPI
zope.indexzope.index provides indexing structures for…
unclear · top 15,000 on PyPI