# {py:mod}`arelle.utils.validate.Decorator` ```{py:module} arelle.utils.validate.Decorator ``` ```{autodoc2-docstring} arelle.utils.validate.Decorator :allowtitles: ``` ## Module Contents ### Classes ````{list-table} :class: autosummary longtable :align: left * - {py:obj}`ValidationAttributes ` - ```{autodoc2-docstring} arelle.utils.validate.Decorator.ValidationAttributes :summary: ``` ```` ### Functions ````{list-table} :class: autosummary longtable :align: left * - {py:obj}`validation ` - ```{autodoc2-docstring} arelle.utils.validate.Decorator.validation :summary: ``` * - {py:obj}`getValidationAttributes ` - ```{autodoc2-docstring} arelle.utils.validate.Decorator.getValidationAttributes :summary: ``` ```` ### Data ````{list-table} :class: autosummary longtable :align: left * - {py:obj}`ValidationFunction ` - ```{autodoc2-docstring} arelle.utils.validate.Decorator.ValidationFunction :summary: ``` ```` ### API ````{py:data} ValidationFunction :canonical: arelle.utils.validate.Decorator.ValidationFunction :type: typing_extensions.TypeAlias :value: > None ```{autodoc2-docstring} arelle.utils.validate.Decorator.ValidationFunction ``` ```` ````{py:function} validation(hook: arelle.utils.PluginHooks.ValidationHook, disclosureSystems: str | list[str] | None = None, excludeDisclosureSystems: str | list[str] | None = None) -> collections.abc.Callable[[arelle.utils.validate.Decorator.ValidationFunction], arelle.utils.validate.Decorator.ValidationFunction] :canonical: arelle.utils.validate.Decorator.validation ```{autodoc2-docstring} arelle.utils.validate.Decorator.validation ``` ```` `````{py:class} ValidationAttributes :canonical: arelle.utils.validate.Decorator.ValidationAttributes ```{autodoc2-docstring} arelle.utils.validate.Decorator.ValidationAttributes ``` ````{py:attribute} hook :canonical: arelle.utils.validate.Decorator.ValidationAttributes.hook :type: arelle.utils.PluginHooks.ValidationHook :value: > None ```{autodoc2-docstring} arelle.utils.validate.Decorator.ValidationAttributes.hook ``` ```` ````{py:attribute} disclosureSystems :canonical: arelle.utils.validate.Decorator.ValidationAttributes.disclosureSystems :type: list[str] | None :value: > None ```{autodoc2-docstring} arelle.utils.validate.Decorator.ValidationAttributes.disclosureSystems ``` ```` ````{py:attribute} excludeDisclosureSystems :canonical: arelle.utils.validate.Decorator.ValidationAttributes.excludeDisclosureSystems :type: list[str] :value: > None ```{autodoc2-docstring} arelle.utils.validate.Decorator.ValidationAttributes.excludeDisclosureSystems ``` ```` ````` ````{py:function} getValidationAttributes(func: collections.abc.Callable[..., typing.Any]) -> arelle.utils.validate.Decorator.ValidationAttributes | None :canonical: arelle.utils.validate.Decorator.getValidationAttributes ```{autodoc2-docstring} arelle.utils.validate.Decorator.getValidationAttributes ``` ````