Toggle menu
Toggle personal menu
Not logged in
Your IP address will be publicly visible if you make any edits.

Module:Parameter validation/doc

From 1F616EMO Survival Server Wiki
Revision as of 01:40, 9 May 2023 by wikipedia>Jonesey95 (→‎Basic usage: a template can't call the same parameter twice; that puts the page in a different category)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

This is the documentation page for Module:Parameter validation

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

Add 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:

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

Note 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

This 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.