httk.optimade.backend.handlers ============================== .. py:module:: httk.optimade.backend.handlers .. autoapi-nested-parse:: Re-exports of the generic OPTIMADE filter handlers. The handler tables and generic handlers are implemented in :mod:`httk.data.optimade_query` and exposed here under the ``httk.optimade.backend.handlers`` namespace. The handlers raise :class:`~httk.data.optimade_query.FilterTranslationError` (which carries a neutral failure category instead of HTTP semantics); :func:`~httk.optimade.backend.translation.translate_filter` wraps it into :class:`~httk.optimade.model.errors.TranslatorError` with the appropriate HTTP status. :func:`~httk.data.optimade_query.simple_property_handlers` takes a plain property-name -> ``fulltype`` mapping as its third argument. A ``'HAS'`` handler is called as ``handler(property, ops, values, search_variable, has_type)`` and returns a plain :class:`~httk.data.query.SearchExpression`; the caller applies ``NOT`` as ``~``, and the backend determines whether the resulting expression also needs post-filter evaluation.