This is the structure that brings all the others together, and forms the main component of a metadata file. It is a key-value map.
..describe:: name
``string``
**Required.** Can be an exact plugin filename or a regular expression plugin filename. If the filename contains any of the characters ``:\*?|``, the string will be treated as a regular expression, otherwise it will be treated as an exact filename. For example, ``Example\.esm`` will be treated as a regular expression, as it contains a ``\`` character.
Plugins that this plugin must load after, but which are not dependencies. Used to resolve specific compatibility issues. If undefined, the set is empty.
Files that this plugin requires to be present. This plugin will load after any plugins listed. If any of these files are missing, an error message will be displayed. Intended for use specifying implicit dependencies, as LOOT will detect a plugin's explicit masters itself. If undefined, the set is empty.
**Note:** if a ``condition`` is used in a ``req`` entry, a requirement message will only be displayed if the file isn't present *and* the ``condition`` is true.
Files that this plugin is incompatible with. If any of these files are present, an error message will be displayed. If undefined, the set is empty.
..describe:: msg
``message list``
The messages attached to this plugin. The messages will be displayed in the order that they are listed. If undefined, the list is empty.
..describe:: tag
``tag set``
Bash Tags suggested for this plugin. If a Bash Tag is suggested for both addition and removal, the latter will override the former when the list is evaluated. If undefined, the set is empty.
..describe:: url
``location set``
An unordered set of locations for this plugin. If the same version can be found at multiple locations, only one location should be recorded. If undefined, the set is empty. This metadata is not currently used by LOOT.
An unordered set of cleaning data structures for this plugin, identifying clean plugins. The ``itm``, ``udr`` and ``nav`` fields are unused in this context, as they're assumed to be zero.