# {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}`_wrapStrWithList ` - ```{autodoc2-docstring} arelle.utils.validate.Decorator._wrapStrWithList :summary: ``` * - {py:obj}`getValidationAttributes ` - ```{autodoc2-docstring} arelle.utils.validate.Decorator.getValidationAttributes :summary: ``` * - {py:obj}`_setValidationAttributes ` - ```{autodoc2-docstring} arelle.utils.validate.Decorator._setValidationAttributes :summary: ``` ```` ### Data ````{list-table} :class: autosummary longtable :align: left * - {py:obj}`ValidationFunction ` - ```{autodoc2-docstring} arelle.utils.validate.Decorator.ValidationFunction :summary: ``` * - {py:obj}`_VALIDATION_RULE_ATTRIBUTES_KEY ` - ```{autodoc2-docstring} arelle.utils.validate.Decorator._VALIDATION_RULE_ATTRIBUTES_KEY :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:data} _VALIDATION_RULE_ATTRIBUTES_KEY :canonical: arelle.utils.validate.Decorator._VALIDATION_RULE_ATTRIBUTES_KEY :value: > '_ARELLE_VALIDATION_ATTRIBUTES' ```{autodoc2-docstring} arelle.utils.validate.Decorator._VALIDATION_RULE_ATTRIBUTES_KEY ``` ```` ````{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:function} _wrapStrWithList(items: list[str] | str | None) -> list[str] | None :canonical: arelle.utils.validate.Decorator._wrapStrWithList ```{autodoc2-docstring} arelle.utils.validate.Decorator._wrapStrWithList ``` ```` `````{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:method} __post_init__() -> None :canonical: arelle.utils.validate.Decorator.ValidationAttributes.__post_init__ ```{autodoc2-docstring} arelle.utils.validate.Decorator.ValidationAttributes.__post_init__ ``` ```` ````` ````{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 ``` ```` ````{py:function} _setValidationAttributes(func: collections.abc.Callable[..., typing.Any], attributes: arelle.utils.validate.Decorator.ValidationAttributes) -> None :canonical: arelle.utils.validate.Decorator._setValidationAttributes ```{autodoc2-docstring} arelle.utils.validate.Decorator._setValidationAttributes ``` ````