Skip to main content

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

5.0 (2023-02-07)

  • Drop support for Python 2.7, 3.5, 3.6.

  • Add support for Python 3.7, 3.8, 3.9, 3.10, 3.11.

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.

Download files

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

Source Distribution

zope.app.schema-5.0.tar.gz (8.3 kB view details)

Uploaded Source

Built Distribution

zope.app.schema-5.0-py3-none-any.whl (8.5 kB view details)

Uploaded Python 3

File details

Details for the file zope.app.schema-5.0.tar.gz.

File metadata

  • Download URL: zope.app.schema-5.0.tar.gz
  • Upload date:
  • Size: 8.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.9.16

File hashes

Hashes for zope.app.schema-5.0.tar.gz
Algorithm Hash digest
SHA256 90a103760a2d7317c6c2a10b781fd78f2da4a96a4c8c7a18b9b7895a1417c2f9
MD5 2aff77eec0bd4d0245d56290022a1093
BLAKE2b-256 068a248ccc0bb28b214a96ae0db81d289aacf7e20a48c59c1d8f89591a8f2518

See more details on using hashes here.

File details

Details for the file zope.app.schema-5.0-py3-none-any.whl.

File metadata

File hashes

Hashes for zope.app.schema-5.0-py3-none-any.whl
Algorithm Hash digest
SHA256 d69d037d092b075f39cb68060a6cfe7b3bad57788b42138327191a4aeaf5b428
MD5 9d53b41b255c85a793aa5e2f94e8625b
BLAKE2b-256 f79463d14c7b7ee305107a2c883a211602e32da80e665fb04fbfb41b0845b588

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page