![]() | This is a documentation subpage for Module:Parameter validation. It may contain usage information, categories and other content that is not part of the original module page. |
![]() | This Lua module is used on approximately 142,000 pages. To avoid major disruption and server load, any changes should be tested in the module's /sandbox or /testcases subpages, or in your own module sandbox. The tested changes can be added to this page in a single edit. Consider discussing changes on the talk page before implementing them. |
![]() | This module depends on the following other modules: |
This module helps you find problematic usages of a template's parameters. Compared to Module:Check for unknown parameters, you do not need to create long lists of parameters which should be categorised; it will automatically read them from the template's TemplateData. This means you don't need to define the parameter configuration in multiple places, which will inevitably lead to it being out of sync.
As well as that, it supports a few other types of errors, such as defining the same parameter multiple times, or using deprecated parameters (useful to do so you can replace usages before removing support for a parameter entirely).
Basic usage
editAdd this to the bottom of a template:
{{#invoke:Parameter validation|validateparams|module_options = Module:Parameter validation/default config}}
This will use the default config defined in Module:Parameter validation/default config. The module will begin to populate the following categories:
- Category:Pages using TEMPLATE_NAME with unknown parameters
- Category:Pages using TEMPLATE_NAME with deprecated parameters
- Category:Pages using TEMPLATE_NAME with duplicate parameters
For example, for {{Infobox station}}, it will populate:
- Category:Pages using infobox station with unknown parameters
- Category:Pages using infobox station with deprecated parameters
- Category:Pages using infobox station with duplicate parameters
Note that:
- Unknown parameters means a page calling the template used a parameter that does not exist in the template documentation's TemplateData section
- Deprecated parameters means a page calling the template used a parameter which, in the template's TemplateData, has the 'deprecated' option ticked
- Duplicate parameters means a page calling the template and set a value for a parameter and one or more of its aliases
Use in protected templates
editNote that because templates' TemplateData code typically lives in unprotected /doc pages, protected templates that invoke this module can be made to incorrectly categorize pages by editors who do not have user rights sufficient to edit the template page itself.
Full documentation
editThis module is based on idea and original code of User:IKhitron.
The source of this module, along with the original documentation, can be found at he:Module:ParamValidator.