Skip to main content
This is a pre-production deployment of Warehouse. Changes made here affect the production instance of PyPI (pypi.python.org).
Help us improve Python packaging - Donate today!

Component Architecture based Vocabulary Registry

Project Description

This package provides a component architecture based vocabulary registry.

Component-based Vocabulary Registry

This package provides a vocabulary registry for zope.schema, based on the component architecture.

NOTE: This functionality has been replaced with zope.vocabularyregistry. These imports continue to work for backwards compatibility.

It replaces the zope.schema’s simple vocabulary registry when zope.app.schema package is imported, so it’s done automatically. All we need is provide vocabulary factory utilities:

>>> import zope.app.schema
>>> from zope.component import provideUtility
>>> from zope.schema.interfaces import IVocabularyFactory
>>> from zope.schema.vocabulary import SimpleTerm
>>> from zope.schema.vocabulary import SimpleVocabulary
>>> def SomeVocabulary(context=None):
...     terms = [SimpleTerm(1), SimpleTerm(2)]
...     return SimpleVocabulary(terms)
>>> provideUtility(SomeVocabulary, IVocabularyFactory,
...                name='SomeVocabulary')

Now we can get the vocabulary using standard zope.schema way:

>>> from zope.schema.vocabulary import getVocabularyRegistry
>>> vr = getVocabularyRegistry()
>>> voc = vr.get(None, 'SomeVocabulary')
>>> [term.value for term in voc]
[1, 2]

Configuration

This package provides configuration that sets security permissions and factories for the objects provided in zope.schema. The zope.security package must be installed to use it.

>>> from zope.configuration import xmlconfig
>>> _ = xmlconfig.string(r"""
... <configure xmlns="http://namespaces.zope.org/zope" i18n_domain="zope">
...   <include package="zope.app.schema" />
... </configure>
... """)

CHANGES

4.1.0 (2017-05-10)

  • Replaced the local implementation of ZopeVocabularyRegistry with one imported from zope.vocabularyregistry. Backwards compatibility imports remain.

4.0.1 (2017-05-10)

  • Packaging: Add the Python version and implementation classifiers.

4.0.0 (2017-04-17)

  • Support for Python 3.5, 3.6 and PyPy has been added.
  • Added support for tox.
  • Drop dependency on zope.app.testing, since it was not needed.

3.6.0 (2017-04-17)

  • Package modernization including manifest.

3.5.0 (2008-12-16)

  • Remove deprecated vocabulary directive.
  • Add test for component-based vocabulary registry.

3.4.0 (2007-10-27)

  • Initial release independent of the main Zope tree.
Release History

Release History

This version
History Node

4.1.0

History Node

4.0.1

History Node

4.0.0

History Node

3.6.0

History Node

3.5.0

History Node

3.4.0

History Node

3.4.0a1

Download Files

Download Files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

File Name & Checksum SHA256 Checksum Help Version File Type Upload Date
zope.app.schema-4.1.0-py2.py3-none-any.whl (9.7 kB) Copy SHA256 Checksum SHA256 py2.py3 Wheel May 10, 2017
zope.app.schema-4.1.0.tar.gz (9.7 kB) Copy SHA256 Checksum SHA256 Source May 10, 2017

Supported By

WebFaction WebFaction Technical Writing Elastic Elastic Search Pingdom Pingdom Monitoring Dyn Dyn DNS Sentry Sentry Error Logging CloudAMQP CloudAMQP RabbitMQ Heroku Heroku PaaS Kabu Creative Kabu Creative UX & Design Fastly Fastly CDN DigiCert DigiCert EV Certificate Rackspace Rackspace Cloud Servers DreamHost DreamHost Log Hosting